fix: preserve code queue prompt observation fields

This commit is contained in:
Codex
2026-05-18 13:18:21 +00:00
parent 60f991f826
commit bd74492bb9
9 changed files with 513 additions and 35 deletions
+18 -3
View File
@@ -535,7 +535,17 @@ function promptLineCount(text: string): number {
return text.length > 0 ? text.split(/\r\n|\r|\n/u).length : 0;
}
function taskDisplayPrompt(task: any): string {
function previewTextField(value: any): string {
if (typeof value === "string") return value;
if (value && typeof value === "object" && !Array.isArray(value) && typeof value.text === "string") return value.text;
return "";
}
function taskDisplayPrompt(task: any, options: AnyRecord = {}): string {
if (options.preview === true) {
const preview = previewTextField(task?.displayPromptPreview || task?.basePromptPreview || task?.promptPreview);
if (preview.length > 0) return preview;
}
const explicit = String(task?.displayPrompt || "");
if (explicit.length > 0) return explicit;
const prompt = String(task?.prompt || "");
@@ -640,7 +650,9 @@ function traceSummaryIsCurrent(task: any): boolean {
function taskBasePromptText(task: any): string {
const summaryPrompt = taskPromptSummary(task);
const basePrompt = String(summaryPrompt.basePrompt || "");
return basePrompt.length > 0 ? basePrompt : taskDisplayPrompt(task);
if (basePrompt.length > 0) return basePrompt;
const direct = String(task?.basePrompt || "");
return direct.length > 0 ? direct : taskDisplayPrompt(task);
}
function taskFinalResponseText(task: any): string {
@@ -1473,7 +1485,7 @@ function TaskCard({ task, selected, onSelect, onCopy, onReference, onMarkRead, c
}, markingRead ? "标记中" : "标为已读") : null,
),
),
h("strong", null, shortText(taskDisplayPrompt(task), 120) || "空任务"),
h("strong", null, shortText(taskDisplayPrompt(task, { preview: true }), 120) || "空任务"),
h("div", { className: "codex-task-meta" },
h("span", null, `queue=${taskQueueLabel(task)}`),
h("span", null, `provider=${task?.providerId || "D601"}`),
@@ -2232,6 +2244,9 @@ export function CodeQueuePage({ microservices, onRaw, apiBaseUrl = "/api", initi
task?.displayPrompt,
task?.basePrompt,
task?.prompt,
previewTextField(task?.displayPromptPreview),
previewTextField(task?.basePromptPreview),
previewTextField(task?.promptPreview),
task?.finalResponse,
task?.lastError?.message,
].map((value) => String(value || "").toLowerCase()).join("\n");