fix: reduce codex submit success noise

This commit is contained in:
Codex
2026-05-23 00:16:20 +00:00
parent 65ac76c235
commit 774c32515e
6 changed files with 132 additions and 11 deletions
@@ -2,6 +2,7 @@ import { spawnSync } from "node:child_process";
import { mkdtempSync, rmSync, writeFileSync } from "node:fs";
import { join } from "node:path";
import { tmpdir } from "node:os";
import { compactSubmitSuccessResponseForTest } from "./src/code-queue";
type JsonRecord = Record<string, unknown>;
@@ -91,6 +92,35 @@ export function runCodeQueueCliSubmitPromptContract(): JsonRecord {
const duplicateMessage = String(nestedRecord(duplicateSource.json, ["error"]).message || "");
assertCondition(duplicateMessage.includes("exactly one prompt source"), "duplicate prompt source error should be explicit", { duplicateMessage });
const longSubmittedPrompt = `${multilinePrompt}${"submitted prompt body must not be echoed\n".repeat(80)}`;
const submitSuccess = compactSubmitSuccessResponseForTest({
tasks: [{
id: "codex_submit_success_contract",
queueId: "prompt-contract",
status: "queued",
providerId: "D601",
model: "gpt-5.5",
cwd: "/workspace",
prompt: longSubmittedPrompt,
maxAttempts: 99,
createdAt: "2026-05-22T00:00:00.000Z",
updatedAt: "2026-05-22T00:00:00.000Z",
}],
queue: {
total: 1,
queueCount: 1,
counts: { queued: 1 },
queuedTaskIds: ["codex_submit_success_contract"],
},
}, { ok: true, status: 200 }, { mode: "local-atomic-directory-submit-serialization", acquiredAfterMs: 1, heldMs: 2, throttleMs: 2000 });
const submitSuccessJson = JSON.stringify(submitSuccess);
const submitted = nestedRecord(submitSuccess, ["submitted"]);
assertCondition(submitted.accepted === true, "submit success should confirm accepted write", submitSuccess);
assertCondition((submitted.taskIds as unknown[]).includes("codex_submit_success_contract"), "submit success should expose task id", submitSuccess);
assertCondition(submitSuccessJson.includes("promptOmitted"), "submit success should explicitly mark prompt omitted", submitSuccess);
assertCondition(!submitSuccessJson.includes("submitted prompt body must not be echoed"), "submit success must not echo prompt text", submitSuccess);
assertCondition(!submitSuccessJson.includes("promptPreview"), "submit success must not include promptPreview", submitSuccess);
const help = runCli(["codex", "submit", "--help"]);
assertCondition(help.status === 0 && help.json?.ok === true, "codex submit help should succeed", help.json ?? { stdout: help.stdout });
const data = nestedRecord(help.json?.data, []);
@@ -113,6 +143,7 @@ export function runCodeQueueCliSubmitPromptContract(): JsonRecord {
"submit --prompt-file preserves reviewed file contents",
"submit positional prompt is redacted from the outer command envelope",
"duplicate submit prompt source fails explicitly",
"submit success confirms write without echoing prompt",
"codex submit help documents stdin/file recommendations and copyable examples",
],
};