perf(cron): lazy-load embedded runtime branch

This commit is contained in:
Vincent Koc
2026-04-13 16:40:54 +01:00
parent c441dcd47a
commit 21d850dd66
4 changed files with 18 additions and 6 deletions

View File

@@ -0,0 +1,3 @@
export { resolveFastModeState } from "../../agents/fast-mode.js";
export { resolveNestedAgentLane } from "../../agents/lanes.js";
export { runEmbeddedPiAgent } from "../../agents/pi-embedded.js";

View File

@@ -1,11 +1,8 @@
export { resolveEffectiveModelFallbacks } from "../../agents/agent-scope.js";
export { resolveBootstrapWarningSignaturesSeen } from "../../agents/bootstrap-budget.js";
export { resolveFastModeState } from "../../agents/fast-mode.js";
export { resolveNestedAgentLane } from "../../agents/lanes.js";
export { LiveSessionModelSwitchError } from "../../agents/live-model-switch.js";
export { runWithModelFallback } from "../../agents/model-fallback.js";
export { isCliProvider } from "../../agents/model-selection.js";
export { runEmbeddedPiAgent } from "../../agents/pi-embedded.js";
export { normalizeVerboseLevel } from "../../auto-reply/thinking.js";
export { resolveSessionTranscriptPath } from "../../config/sessions/paths.js";
export { registerAgentRunContext } from "../../infra/agent-events.js";

View File

@@ -12,11 +12,8 @@ import {
normalizeVerboseLevel,
registerAgentRunContext,
resolveBootstrapWarningSignaturesSeen,
resolveFastModeState,
resolveNestedAgentLane,
resolveSessionTranscriptPath,
runCliAgent,
runEmbeddedPiAgent,
runWithModelFallback,
} from "./run-execution.runtime.js";
import { resolveCronFallbacksOverride } from "./run-fallback-policy.js";
@@ -30,10 +27,17 @@ import { isLikelyInterimCronMessage } from "./subagent-followup-hints.js";
type AgentTurnPayload = Extract<CronJob["payload"], { kind: "agentTurn" }> | null;
type CronPromptRunResult = Awaited<ReturnType<typeof runCliAgent>>;
type CronEmbeddedRuntime = typeof import("./run-embedded.runtime.js");
type CronSubagentRegistryRuntime = typeof import("./run-subagent-registry.runtime.js");
let cronEmbeddedRuntimePromise: Promise<CronEmbeddedRuntime> | undefined;
let cronSubagentRegistryRuntimePromise: Promise<CronSubagentRegistryRuntime> | undefined;
async function loadCronEmbeddedRuntime() {
cronEmbeddedRuntimePromise ??= import("./run-embedded.runtime.js");
return await cronEmbeddedRuntimePromise;
}
async function loadCronSubagentRegistryRuntime() {
cronSubagentRegistryRuntimePromise ??= import("./run-subagent-registry.runtime.js");
return await cronSubagentRegistryRuntimePromise;
@@ -135,6 +139,8 @@ export function createCronPromptExecutor(params: {
);
return result;
}
const { resolveFastModeState, resolveNestedAgentLane, runEmbeddedPiAgent } =
await loadCronEmbeddedRuntime();
const result = await runEmbeddedPiAgent({
sessionId: params.cronSession.sessionEntry.sessionId,
sessionKey: params.agentSessionKey,

View File

@@ -160,6 +160,12 @@ vi.mock("./run-auth-profile.runtime.js", () => ({
resolveSessionAuthProfileOverride: resolveSessionAuthProfileOverrideMock,
}));
vi.mock("./run-embedded.runtime.js", () => ({
resolveFastModeState: resolveFastModeStateMock,
resolveNestedAgentLane: resolveNestedAgentLaneMock,
runEmbeddedPiAgent: runEmbeddedPiAgentMock,
}));
vi.mock("./run-subagent-registry.runtime.js", () => ({
countActiveDescendantRuns: countActiveDescendantRunsMock,
listDescendantRunsForRequester: listDescendantRunsForRequesterMock,