






















@@ -23,6 +23,7 @@ import { defaultRuntime, type RuntimeEnv } from "../runtime.js";
2323import { applyVerboseOverride } from "../sessions/level-overrides.js";
2424import { applyModelOverrideToSessionEntry } from "../sessions/model-overrides.js";
2525import { resolveSendPolicy } from "../sessions/send-policy.js";
26+import { createLazyImportLoader } from "../shared/lazy-promise.js";
2627import { normalizeOptionalString } from "../shared/string-coerce.js";
2728import { sanitizeForLog } from "../terminal/ansi.js";
2829import { createTrajectoryRuntimeRecorder } from "../trajectory/runtime.js";
@@ -87,95 +88,106 @@ type SkillsFilterRuntime = typeof import("./skills/filter.js");
8788type SkillsRefreshStateRuntime = typeof import("./skills/refresh-state.js");
8889type SkillsRemoteRuntime = typeof import("../infra/skills-remote.js");
899090-let attemptExecutionRuntimePromise: Promise<AttemptExecutionRuntime> | undefined;
91-let acpManagerRuntimePromise: Promise<AcpManagerRuntime> | undefined;
92-let acpPolicyRuntimePromise: Promise<AcpPolicyRuntime> | undefined;
93-let acpRuntimeErrorsRuntimePromise: Promise<AcpRuntimeErrorsRuntime> | undefined;
94-let acpSessionIdentifiersRuntimePromise: Promise<AcpSessionIdentifiersRuntime> | undefined;
95-let deliveryRuntimePromise: Promise<DeliveryRuntime> | undefined;
96-let sessionStoreRuntimePromise: Promise<SessionStoreRuntime> | undefined;
97-let cliCompactionRuntimePromise: Promise<CliCompactionRuntime> | undefined;
98-let transcriptResolveRuntimePromise: Promise<TranscriptResolveRuntime> | undefined;
99-let cliDepsRuntimePromise: Promise<CliDepsRuntime> | undefined;
100-let execDefaultsRuntimePromise: Promise<ExecDefaultsRuntime> | undefined;
101-let skillsRuntimePromise: Promise<SkillsRuntime> | undefined;
102-let skillsFilterRuntimePromise: Promise<SkillsFilterRuntime> | undefined;
103-let skillsRefreshStateRuntimePromise: Promise<SkillsRefreshStateRuntime> | undefined;
104-let skillsRemoteRuntimePromise: Promise<SkillsRemoteRuntime> | undefined;
91+const attemptExecutionRuntimeLoader = createLazyImportLoader<AttemptExecutionRuntime>(
92+() => import("./command/attempt-execution.runtime.js"),
93+);
94+const acpManagerRuntimeLoader = createLazyImportLoader<AcpManagerRuntime>(
95+() => import("../acp/control-plane/manager.js"),
96+);
97+const acpPolicyRuntimeLoader = createLazyImportLoader<AcpPolicyRuntime>(
98+() => import("../acp/policy.js"),
99+);
100+const acpRuntimeErrorsRuntimeLoader = createLazyImportLoader<AcpRuntimeErrorsRuntime>(
101+() => import("../acp/runtime/errors.js"),
102+);
103+const acpSessionIdentifiersRuntimeLoader = createLazyImportLoader<AcpSessionIdentifiersRuntime>(
104+() => import("../acp/runtime/session-identifiers.js"),
105+);
106+const deliveryRuntimeLoader = createLazyImportLoader<DeliveryRuntime>(
107+() => import("./command/delivery.runtime.js"),
108+);
109+const sessionStoreRuntimeLoader = createLazyImportLoader<SessionStoreRuntime>(
110+() => import("./command/session-store.runtime.js"),
111+);
112+const cliCompactionRuntimeLoader = createLazyImportLoader<CliCompactionRuntime>(
113+() => import("./command/cli-compaction.js"),
114+);
115+const transcriptResolveRuntimeLoader = createLazyImportLoader<TranscriptResolveRuntime>(
116+() => import("../config/sessions/transcript-resolve.runtime.js"),
117+);
118+const cliDepsRuntimeLoader = createLazyImportLoader<CliDepsRuntime>(() => import("../cli/deps.js"));
119+const execDefaultsRuntimeLoader = createLazyImportLoader<ExecDefaultsRuntime>(
120+() => import("./exec-defaults.js"),
121+);
122+const skillsRuntimeLoader = createLazyImportLoader<SkillsRuntime>(() => import("./skills.js"));
123+const skillsFilterRuntimeLoader = createLazyImportLoader<SkillsFilterRuntime>(
124+() => import("./skills/filter.js"),
125+);
126+const skillsRefreshStateRuntimeLoader = createLazyImportLoader<SkillsRefreshStateRuntime>(
127+() => import("./skills/refresh-state.js"),
128+);
129+const skillsRemoteRuntimeLoader = createLazyImportLoader<SkillsRemoteRuntime>(
130+() => import("../infra/skills-remote.js"),
131+);
105132106133function loadAttemptExecutionRuntime(): Promise<AttemptExecutionRuntime> {
107-attemptExecutionRuntimePromise ??= import("./command/attempt-execution.runtime.js");
108-return attemptExecutionRuntimePromise;
134+return attemptExecutionRuntimeLoader.load();
109135}
110136111137function loadAcpManagerRuntime(): Promise<AcpManagerRuntime> {
112-acpManagerRuntimePromise ??= import("../acp/control-plane/manager.js");
113-return acpManagerRuntimePromise;
138+return acpManagerRuntimeLoader.load();
114139}
115140116141function loadAcpPolicyRuntime(): Promise<AcpPolicyRuntime> {
117-acpPolicyRuntimePromise ??= import("../acp/policy.js");
118-return acpPolicyRuntimePromise;
142+return acpPolicyRuntimeLoader.load();
119143}
120144121145function loadAcpRuntimeErrorsRuntime(): Promise<AcpRuntimeErrorsRuntime> {
122-acpRuntimeErrorsRuntimePromise ??= import("../acp/runtime/errors.js");
123-return acpRuntimeErrorsRuntimePromise;
146+return acpRuntimeErrorsRuntimeLoader.load();
124147}
125148126149function loadAcpSessionIdentifiersRuntime(): Promise<AcpSessionIdentifiersRuntime> {
127-acpSessionIdentifiersRuntimePromise ??= import("../acp/runtime/session-identifiers.js");
128-return acpSessionIdentifiersRuntimePromise;
150+return acpSessionIdentifiersRuntimeLoader.load();
129151}
130152131153function loadDeliveryRuntime(): Promise<DeliveryRuntime> {
132-deliveryRuntimePromise ??= import("./command/delivery.runtime.js");
133-return deliveryRuntimePromise;
154+return deliveryRuntimeLoader.load();
134155}
135156136157function loadSessionStoreRuntime(): Promise<SessionStoreRuntime> {
137-sessionStoreRuntimePromise ??= import("./command/session-store.runtime.js");
138-return sessionStoreRuntimePromise;
158+return sessionStoreRuntimeLoader.load();
139159}
140160141161function loadCliCompactionRuntime(): Promise<CliCompactionRuntime> {
142-cliCompactionRuntimePromise ??= import("./command/cli-compaction.js");
143-return cliCompactionRuntimePromise;
162+return cliCompactionRuntimeLoader.load();
144163}
145164146165function loadTranscriptResolveRuntime(): Promise<TranscriptResolveRuntime> {
147-transcriptResolveRuntimePromise ??= import("../config/sessions/transcript-resolve.runtime.js");
148-return transcriptResolveRuntimePromise;
166+return transcriptResolveRuntimeLoader.load();
149167}
150168151169function loadCliDepsRuntime(): Promise<CliDepsRuntime> {
152-cliDepsRuntimePromise ??= import("../cli/deps.js");
153-return cliDepsRuntimePromise;
170+return cliDepsRuntimeLoader.load();
154171}
155172156173function loadExecDefaultsRuntime(): Promise<ExecDefaultsRuntime> {
157-execDefaultsRuntimePromise ??= import("./exec-defaults.js");
158-return execDefaultsRuntimePromise;
174+return execDefaultsRuntimeLoader.load();
159175}
160176161177function loadSkillsRuntime(): Promise<SkillsRuntime> {
162-skillsRuntimePromise ??= import("./skills.js");
163-return skillsRuntimePromise;
178+return skillsRuntimeLoader.load();
164179}
165180166181function loadSkillsFilterRuntime(): Promise<SkillsFilterRuntime> {
167-skillsFilterRuntimePromise ??= import("./skills/filter.js");
168-return skillsFilterRuntimePromise;
182+return skillsFilterRuntimeLoader.load();
169183}
170184171185function loadSkillsRefreshStateRuntime(): Promise<SkillsRefreshStateRuntime> {
172-skillsRefreshStateRuntimePromise ??= import("./skills/refresh-state.js");
173-return skillsRefreshStateRuntimePromise;
186+return skillsRefreshStateRuntimeLoader.load();
174187}
175188176189function loadSkillsRemoteRuntime(): Promise<SkillsRemoteRuntime> {
177-skillsRemoteRuntimePromise ??= import("../infra/skills-remote.js");
178-return skillsRemoteRuntimePromise;
190+return skillsRemoteRuntimeLoader.load();
179191}
180192181193async function resolveAgentCommandDeps(deps: CliDeps | undefined): Promise<CliDeps> {
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。