fix: 降低 session 和 queue CLI 默认输出噪声
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
import assert from "node:assert/strict";
|
||||
import type { JsonRecord } from "../../common/types.js";
|
||||
import { assertNoSecretLeak, type SelfTestContext, type SelfTestResult } from "../harness.js";
|
||||
import { renderRunEventSummaryTsv, summarizeRunEventPage } from "../../../scripts/src/cli.js";
|
||||
import { renderRunEventSummaryTsv, summarizeQueueDispatchResult, summarizeRunEventPage, summarizeSessionEventPage } from "../../../scripts/src/cli.js";
|
||||
|
||||
export default function selfTest(_context: SelfTestContext): SelfTestResult {
|
||||
const summary = summarizeRunEventPage({ items: [
|
||||
@@ -30,5 +30,49 @@ export default function selfTest(_context: SelfTestContext): SelfTestResult {
|
||||
assert.equal(tsv.includes("\n12\ttool_call\tshell\tcompleted\t0\t321\ttrue\t4096"), true);
|
||||
assert.equal(tsv.includes("test-token-material"), false);
|
||||
|
||||
return { name: "15-cli-events-summary", tests: ["runs-events-summary-tail", "runs-events-summary-tsv-redaction"] };
|
||||
const hugeRunnerTrace = "runner trace line with test-token-material\n".repeat(2_000);
|
||||
const sessionSummary = summarizeSessionEventPage({
|
||||
sessionId: "sess_noise",
|
||||
runId: "run_noise",
|
||||
items: [{
|
||||
seq: 266,
|
||||
type: "backend_status",
|
||||
payload: {
|
||||
phase: "turn/cancelled",
|
||||
status: "cancelled",
|
||||
commandId: "cmd_noise",
|
||||
runnerTrace: { raw: hugeRunnerTrace },
|
||||
rawEvent: { nested: hugeRunnerTrace },
|
||||
},
|
||||
}],
|
||||
count: 1,
|
||||
cursor: "266",
|
||||
}, { kind: "trace", sessionId: "sess_noise", afterSeq: 250, limit: 100, runId: null, tail: null, summaryChars: 80 });
|
||||
const sessionItems = sessionSummary.items as JsonRecord[];
|
||||
assert.equal(sessionSummary.action, "session-trace-summary");
|
||||
assert.equal(sessionSummary.nextAfterSeq, 266);
|
||||
assert.equal(sessionItems[0]?.hasRunnerTrace, true);
|
||||
assert.ok(Number(sessionItems[0]?.runnerTraceBytes) > 10_000);
|
||||
assert.equal(JSON.stringify(sessionSummary).includes("runner trace line"), false);
|
||||
assert.equal(String((sessionSummary.drillDownCommands as JsonRecord).full).includes("--full"), true);
|
||||
assert.equal(String((sessionSummary.drillDownCommands as JsonRecord).raw).includes("--raw"), true);
|
||||
assertNoSecretLeak(sessionSummary);
|
||||
|
||||
const queueSummary = summarizeQueueDispatchResult({
|
||||
action: "queue-dispatch",
|
||||
mutation: true,
|
||||
task: { id: "qt_noise", state: "running", queue: "dev", lane: "case", title: "large trace queue dispatch", version: 7, payload: { prompt: hugeRunnerTrace } },
|
||||
run: { id: "run_noise", status: "running", terminalStatus: null, backendProfile: "codex", providerId: "G14" },
|
||||
command: { id: "cmd_noise", runId: "run_noise", seq: 1, type: "turn", state: "acknowledged", payload: { prompt: hugeRunnerTrace } },
|
||||
runnerJob: { action: "create-kubernetes-job", runId: "run_noise", commandId: "cmd_noise", attemptId: "attempt_noise", runnerId: "runner_noise", namespace: "agentrun-v01", jobName: "job-noise", runner: { logPath: "kubectl logs job/job-noise", runnerTrace: hugeRunnerTrace } },
|
||||
latestAttempt: { attemptId: "attempt_noise", state: "running", runId: "run_noise", commandId: "cmd_noise", runnerJobId: "rj_noise", sessionId: "sess_noise", sessionPath: "/api/v1/sessions/sess_noise" },
|
||||
}, "qt_noise");
|
||||
assert.equal(queueSummary.action, "queue-dispatch-summary");
|
||||
assert.equal(((queueSummary.runnerJob as JsonRecord).attemptId), "attempt_noise");
|
||||
assert.equal(JSON.stringify(queueSummary).includes("runner trace line"), false);
|
||||
assert.equal(String(((queueSummary.pollCommands as JsonRecord).events)).includes("--tail-summary"), true);
|
||||
assert.equal(((queueSummary.expandedOutput as JsonRecord).fullFlag), "--full");
|
||||
assertNoSecretLeak(queueSummary);
|
||||
|
||||
return { name: "15-cli-events-summary", tests: ["runs-events-summary-tail", "runs-events-summary-tsv-redaction", "sessions-events-low-noise-summary", "queue-dispatch-low-noise-summary"] };
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user