





















11/**
22 * Manages active embedded-agent run handles, queues, aborts, and waiters.
33 */
4-import { normalizeOptionalString } from "@openclaw/normalization-core/string-coerce";
54import {
65abortActiveReplyRuns,
76abortReplyRunBySessionId,
@@ -31,14 +30,12 @@ import {
3130ABANDONED_EMBEDDED_RUNS_BY_SESSION_ID,
3231ABANDONED_EMBEDDED_RUN_SESSION_IDS_BY_FILE,
3332ABANDONED_EMBEDDED_RUN_SESSION_IDS_BY_KEY,
34-EMBEDDED_RUN_MODEL_SWITCH_REQUESTS,
3533EMBEDDED_RUN_WAITERS,
3634getActiveEmbeddedRunCount,
3735type ActiveEmbeddedRunSnapshot,
3836type AbandonedEmbeddedRun,
3937type EmbeddedAgentQueueHandle,
4038type EmbeddedAgentQueueMessageOptions,
41-type EmbeddedRunModelSwitchRequest,
4239type EmbeddedRunWaiter,
4340} from "./run-state.js";
4441import { resolveEmbeddedSessionFileKey } from "./session-file-key.js";
@@ -51,7 +48,6 @@ export {
5148type ActiveEmbeddedRunSnapshot,
5249type EmbeddedAgentQueueHandle,
5350type EmbeddedAgentQueueMessageOptions,
54-type EmbeddedRunModelSwitchRequest,
5551} from "./run-state.js";
56525753export type EmbeddedAgentQueueFailureReason =
@@ -569,44 +565,6 @@ export function getActiveEmbeddedRunSnapshot(
569565return ACTIVE_EMBEDDED_RUN_SNAPSHOTS.get(sessionId);
570566}
571567572-export function requestEmbeddedRunModelSwitch(
573-sessionId: string,
574-request: EmbeddedRunModelSwitchRequest,
575-): boolean {
576-const normalizedSessionId = sessionId.trim();
577-const provider = request.provider.trim();
578-const model = request.model.trim();
579-if (!normalizedSessionId || !provider || !model) {
580-return false;
581-}
582-EMBEDDED_RUN_MODEL_SWITCH_REQUESTS.set(normalizedSessionId, {
583- provider,
584- model,
585-authProfileId: normalizeOptionalString(request.authProfileId),
586-authProfileIdSource: normalizeOptionalString(request.authProfileId)
587- ? request.authProfileIdSource
588- : undefined,
589-});
590-diag.debug(
591-`model switch requested: sessionId=${normalizedSessionId} provider=${provider} model=${model}`,
592-);
593-return true;
594-}
595-596-export function consumeEmbeddedRunModelSwitch(
597-sessionId: string,
598-): EmbeddedRunModelSwitchRequest | undefined {
599-const normalizedSessionId = sessionId.trim();
600-if (!normalizedSessionId) {
601-return undefined;
602-}
603-const request = EMBEDDED_RUN_MODEL_SWITCH_REQUESTS.get(normalizedSessionId);
604-if (request) {
605-EMBEDDED_RUN_MODEL_SWITCH_REQUESTS.delete(normalizedSessionId);
606-}
607-return request;
608-}
609-610568/**
611569 * Wait for active embedded runs to drain.
612570 *
@@ -781,7 +739,6 @@ export function clearActiveEmbeddedRun(
781739if (activeHandle === handle) {
782740ACTIVE_EMBEDDED_RUNS.delete(sessionId);
783741ACTIVE_EMBEDDED_RUN_SNAPSHOTS.delete(sessionId);
784-EMBEDDED_RUN_MODEL_SWITCH_REQUESTS.delete(sessionId);
785742clearActiveRunSessionKeys(sessionId, sessionKey);
786743clearActiveRunSessionFiles(sessionId, sessionFile);
787744logSessionStateChange({
@@ -810,7 +767,6 @@ export function forceClearEmbeddedAgentRun(
810767if (ACTIVE_EMBEDDED_RUNS.has(sessionId)) {
811768ACTIVE_EMBEDDED_RUNS.delete(sessionId);
812769ACTIVE_EMBEDDED_RUN_SNAPSHOTS.delete(sessionId);
813-EMBEDDED_RUN_MODEL_SWITCH_REQUESTS.delete(sessionId);
814770clearActiveRunSessionKeys(sessionId, sessionKey);
815771clearActiveRunSessionFiles(sessionId);
816772logSessionStateChange({ sessionId, sessionKey, state: "idle", reason });
@@ -838,7 +794,6 @@ export const testing = {
838794ABANDONED_EMBEDDED_RUNS_BY_SESSION_ID.clear();
839795ABANDONED_EMBEDDED_RUN_SESSION_IDS_BY_KEY.clear();
840796ABANDONED_EMBEDDED_RUN_SESSION_IDS_BY_FILE.clear();
841-EMBEDDED_RUN_MODEL_SWITCH_REQUESTS.clear();
842797},
843798};
844799export { testing as __testing };
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。