






















@@ -21,7 +21,10 @@ import { isCliRuntimeAlias, resolveCliRuntimeExecutionProvider } from "../model-
2121import { isCliProvider } from "../model-selection.js";
2222import { runEmbeddedPiAgent, type EmbeddedPiRunResult } from "../pi-embedded.js";
2323import { buildAgentRuntimeAuthPlan } from "../runtime-plan/auth.js";
24-import { acquireSessionWriteLock } from "../session-write-lock.js";
24+import {
25+acquireSessionWriteLock,
26+resolveSessionWriteLockAcquireTimeoutMs,
27+} from "../session-write-lock.js";
2528import { buildWorkspaceSkillSnapshot } from "../skills.js";
2629import { buildUsageWithNoCost } from "../stream-message-shared.js";
2730import {
@@ -76,6 +79,7 @@ type PersistTextTurnTranscriptParams = {
7679sessionAgentId: string;
7780threadId?: string | number;
7881sessionCwd: string;
82+config: OpenClawConfig;
7983assistant: {
8084api: string;
8185provider: string;
@@ -193,7 +197,7 @@ async function persistTextTurnTranscript(
193197});
194198const lock = await acquireSessionWriteLock({
195199 sessionFile,
196-timeoutMs: 10_000,
200+timeoutMs: resolveSessionWriteLockAcquireTimeoutMs(params.config),
197201allowReentrant: true,
198202});
199203try {
@@ -202,6 +206,7 @@ async function persistTextTurnTranscript(
202206transcriptPath: sessionFile,
203207sessionId: params.sessionId,
204208cwd: params.sessionCwd,
209+config: params.config,
205210message: {
206211role: "user",
207212content: promptText,
@@ -215,6 +220,7 @@ async function persistTextTurnTranscript(
215220transcriptPath: sessionFile,
216221sessionId: params.sessionId,
217222cwd: params.sessionCwd,
223+config: params.config,
218224message: {
219225role: "assistant",
220226content: [{ type: "text", text: replyText }],
@@ -264,6 +270,7 @@ export async function persistAcpTurnTranscript(params: {
264270sessionAgentId: string;
265271threadId?: string | number;
266272sessionCwd: string;
273+config: OpenClawConfig;
267274}): Promise<SessionEntry | undefined> {
268275return await persistTextTurnTranscript({
269276 ...params,
@@ -287,6 +294,7 @@ export async function persistCliTurnTranscript(params: {
287294sessionAgentId: string;
288295threadId?: string | number;
289296sessionCwd: string;
297+config: OpenClawConfig;
290298}): Promise<SessionEntry | undefined> {
291299const replyText = resolveCliTranscriptReplyText(params.result);
292300const provider = params.result.meta.agentMeta?.provider?.trim() ?? "cli";
@@ -304,6 +312,7 @@ export async function persistCliTurnTranscript(params: {
304312sessionAgentId: params.sessionAgentId,
305313threadId: params.threadId,
306314sessionCwd: params.sessionCwd,
315+config: params.config,
307316assistant: {
308317api: "cli",
309318 provider,
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。