trace-to-skill 0.1.78 → 0.1.80
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -7
- package/dist/src/benchmark.js +6 -0
- package/dist/src/benchmark.js.map +1 -1
- package/dist/src/demo.js +8 -0
- package/dist/src/demo.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/rules.js +18 -0
- package/dist/src/rules.js.map +1 -1
- package/dist/src/types.d.ts +1 -1
- package/dist/src/usageEvidence.d.ts +31 -1
- package/dist/src/usageEvidence.js +192 -4
- package/dist/src/usageEvidence.js.map +1 -1
- package/docs/BENCHMARK.md +2 -1
- package/docs/CODEX_ISSUE_MAP.md +6 -3
- package/docs/DEMO.md +2 -0
- package/docs/DISCOVERY.md +4 -3
- package/docs/FAILURE_TAXONOMY.md +11 -3
- package/docs/OPENAI_OSS_BRIEF.md +6 -6
- package/docs/SCORECARD.md +3 -2
- package/docs/USE_CASES.md +29 -13
- package/fixtures/codex-mcp-streamable-http.md +29 -0
- package/fixtures/codex-token-burn.md +9 -1
- package/llms.txt +6 -3
- package/package.json +8 -1
- package/schemas/analysis-result.schema.json +1 -0
- package/schemas/usage-evidence-result.schema.json +110 -3
|
@@ -5,6 +5,7 @@ export async function buildUsageEvidence(targets) {
|
|
|
5
5
|
export function buildUsageEvidenceFromInputs(inputs) {
|
|
6
6
|
const snapshots = [];
|
|
7
7
|
const tokenUsage = [];
|
|
8
|
+
const cacheRecords = [];
|
|
8
9
|
const usageLimitSignals = [];
|
|
9
10
|
const overheadSignals = [];
|
|
10
11
|
const drainExperiments = [];
|
|
@@ -27,6 +28,10 @@ export function buildUsageEvidenceFromInputs(inputs) {
|
|
|
27
28
|
if (tokenRecord) {
|
|
28
29
|
tokenUsage.push(tokenRecord);
|
|
29
30
|
}
|
|
31
|
+
const cacheRecord = parsePromptCacheRecord(input.path, lineNumber, excerpt);
|
|
32
|
+
if (cacheRecord) {
|
|
33
|
+
cacheRecords.push(cacheRecord);
|
|
34
|
+
}
|
|
30
35
|
const overheadSignal = parseOverheadSignal(input.path, lineNumber, excerpt);
|
|
31
36
|
if (overheadSignal) {
|
|
32
37
|
overheadSignals.push(overheadSignal);
|
|
@@ -40,8 +45,9 @@ export function buildUsageEvidenceFromInputs(inputs) {
|
|
|
40
45
|
}
|
|
41
46
|
});
|
|
42
47
|
}
|
|
43
|
-
const
|
|
44
|
-
const
|
|
48
|
+
const cacheCollapseEvents = findPromptCacheCollapseEvents(cacheRecords);
|
|
49
|
+
const findings = buildFindings(snapshots, tokenUsage, cacheCollapseEvents, usageLimitSignals, overheadSignals, drainExperiments);
|
|
50
|
+
const receipt = buildReceipt(snapshots, tokenUsage, cacheCollapseEvents, overheadSignals, usageLimitSignals, drainExperiments);
|
|
45
51
|
return {
|
|
46
52
|
generatedAt: new Date().toISOString(),
|
|
47
53
|
status: findings.length > 0 ? "warn" : "pass",
|
|
@@ -52,11 +58,15 @@ export function buildUsageEvidenceFromInputs(inputs) {
|
|
|
52
58
|
usageLimitSignals: usageLimitSignals.length,
|
|
53
59
|
resetDriftWindows: findings.filter((finding) => finding.kind === "reset_timestamp_drift").length,
|
|
54
60
|
highCachedInputRecords: findings.filter((finding) => finding.kind === "high_cached_input").length,
|
|
61
|
+
cacheRecords: cacheRecords.length,
|
|
62
|
+
cacheCollapseEvents: cacheCollapseEvents.length,
|
|
55
63
|
drainExperiments: drainExperiments.length,
|
|
56
64
|
overheadSignals: overheadSignals.length
|
|
57
65
|
},
|
|
58
66
|
snapshots,
|
|
59
67
|
tokenUsage,
|
|
68
|
+
cacheRecords,
|
|
69
|
+
cacheCollapseEvents,
|
|
60
70
|
drainExperiments,
|
|
61
71
|
receipt,
|
|
62
72
|
findings,
|
|
@@ -66,6 +76,7 @@ export function buildUsageEvidenceFromInputs(inputs) {
|
|
|
66
76
|
"Capture before/after `/status` output, usage dashboard timestamp, and timezone for every reset value.",
|
|
67
77
|
"Note whether a prompt was running during reset and whether an outage or compensation reset was announced.",
|
|
68
78
|
"Include token totals when available: total, input, cached input, output, and reasoning.",
|
|
79
|
+
"For prompt-cache reports, include adjacent request rows with input_tokens, cached_input_tokens or cached_tokens, prompt_cache_key, response id, transport, and reconnect/outcome notes.",
|
|
69
80
|
"If reporting a sudden burn regression, add a tiny experiment row with model, plan, prompt count, elapsed time, percent or credits consumed, and before/after usage state.",
|
|
70
81
|
"Separate quota-window percentage changes from local token totals and orchestration overhead signals.",
|
|
71
82
|
"Add one minimal reproduction or polling table that shows the percentage and reset timestamp changing."
|
|
@@ -83,6 +94,8 @@ export function renderUsageEvidenceMarkdown(result) {
|
|
|
83
94
|
`- Inputs: ${result.inputs.length}`,
|
|
84
95
|
`- Usage snapshots: ${result.summary.snapshots}`,
|
|
85
96
|
`- Token usage records: ${result.summary.tokenUsageRecords}`,
|
|
97
|
+
`- Prompt cache records: ${result.summary.cacheRecords}`,
|
|
98
|
+
`- Prompt cache collapse events: ${result.summary.cacheCollapseEvents}`,
|
|
86
99
|
`- Usage limit signals: ${result.summary.usageLimitSignals}`,
|
|
87
100
|
`- Reset drift windows: ${result.summary.resetDriftWindows}`,
|
|
88
101
|
`- High cached-input records: ${result.summary.highCachedInputRecords}`,
|
|
@@ -169,6 +182,28 @@ export function renderUsageEvidenceMarkdown(result) {
|
|
|
169
182
|
}
|
|
170
183
|
lines.push("");
|
|
171
184
|
}
|
|
185
|
+
lines.push("### Cache Collapse Events", "");
|
|
186
|
+
if (result.receipt.cacheCollapseEvents.length === 0) {
|
|
187
|
+
lines.push("_No adjacent prompt-cache collapse events found._", "");
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
lines.push("| Source | Line | Previous Line | Prompt Cache Key | Cached Input | Previous Cached Input | Drop | Response | Previous Response |");
|
|
191
|
+
lines.push("| --- | ---: | ---: | --- | ---: | ---: | ---: | --- | --- |");
|
|
192
|
+
for (const event of result.receipt.cacheCollapseEvents.slice(0, 12)) {
|
|
193
|
+
lines.push([
|
|
194
|
+
escapeCell(event.source),
|
|
195
|
+
String(event.line),
|
|
196
|
+
String(event.previousLine),
|
|
197
|
+
escapeCell(event.promptCacheKey ?? ""),
|
|
198
|
+
formatNumber(event.cachedInputTokens),
|
|
199
|
+
formatNumber(event.previousCachedInputTokens),
|
|
200
|
+
`${event.dropPercent}%`,
|
|
201
|
+
escapeCell(event.responseId ?? ""),
|
|
202
|
+
escapeCell(event.previousResponseId ?? "")
|
|
203
|
+
].join(" | ").replace(/^/, "| ").replace(/$/, " |"));
|
|
204
|
+
}
|
|
205
|
+
lines.push("");
|
|
206
|
+
}
|
|
172
207
|
lines.push("### Suspected Cause Buckets", "");
|
|
173
208
|
if (result.receipt.suspectedCauses.length === 0) {
|
|
174
209
|
lines.push("_No cause bucket inferred from the supplied evidence._", "");
|
|
@@ -198,6 +233,28 @@ export function renderUsageEvidenceMarkdown(result) {
|
|
|
198
233
|
}
|
|
199
234
|
lines.push("");
|
|
200
235
|
}
|
|
236
|
+
lines.push("## Prompt Cache Evidence", "");
|
|
237
|
+
if (result.cacheRecords.length === 0) {
|
|
238
|
+
lines.push("_No prompt-cache request records found._", "");
|
|
239
|
+
}
|
|
240
|
+
else {
|
|
241
|
+
lines.push("| Source | Line | Input Tokens | Cached Input Tokens | Cache Hit | Prompt Cache Key | Response | Transport | Outcome |");
|
|
242
|
+
lines.push("| --- | ---: | ---: | ---: | ---: | --- | --- | --- | --- |");
|
|
243
|
+
for (const record of result.cacheRecords.slice(0, 30)) {
|
|
244
|
+
lines.push([
|
|
245
|
+
escapeCell(record.source),
|
|
246
|
+
String(record.line),
|
|
247
|
+
formatNumber(record.inputTokens),
|
|
248
|
+
formatNumber(record.cachedInputTokens),
|
|
249
|
+
record.cacheHitPercent === undefined ? "" : `${record.cacheHitPercent}%`,
|
|
250
|
+
escapeCell(record.promptCacheKey ?? ""),
|
|
251
|
+
escapeCell(record.responseId ?? ""),
|
|
252
|
+
escapeCell(record.transport ?? ""),
|
|
253
|
+
escapeCell(record.outcome ?? "")
|
|
254
|
+
].join(" | ").replace(/^/, "| ").replace(/$/, " |"));
|
|
255
|
+
}
|
|
256
|
+
lines.push("");
|
|
257
|
+
}
|
|
201
258
|
lines.push("## Token Usage", "");
|
|
202
259
|
if (result.tokenUsage.length === 0) {
|
|
203
260
|
lines.push("_No token usage totals found._", "");
|
|
@@ -343,6 +400,76 @@ function parseTokenUsage(source, line, excerpt) {
|
|
|
343
400
|
}
|
|
344
401
|
return { source, line, total, input, cachedInput, output, reasoning, excerpt };
|
|
345
402
|
}
|
|
403
|
+
function parsePromptCacheRecord(source, line, excerpt) {
|
|
404
|
+
const json = parsePromptCacheJson(source, line, excerpt);
|
|
405
|
+
if (json) {
|
|
406
|
+
return json;
|
|
407
|
+
}
|
|
408
|
+
if (!/\b(input_tokens|cached_input_tokens|cached_tokens|prompt_cache_key|cache hit|cached token)/i.test(excerpt)) {
|
|
409
|
+
return undefined;
|
|
410
|
+
}
|
|
411
|
+
const inputTokens = numberAfter(excerpt, /\binput_tokens\s*[:=]?\s*([0-9][0-9,]*)/i) ??
|
|
412
|
+
numberAfter(excerpt, /\binput tokens\s*[:=]?\s*([0-9][0-9,]*)/i);
|
|
413
|
+
const cachedInputTokens = numberAfter(excerpt, /\bcached_input_tokens\s*[:=]?\s*([0-9][0-9,]*)/i) ??
|
|
414
|
+
numberAfter(excerpt, /\bcached_tokens\s*[:=]?\s*([0-9][0-9,]*)/i) ??
|
|
415
|
+
numberAfter(excerpt, /\bcached input tokens\s*[:=]?\s*([0-9][0-9,]*)/i) ??
|
|
416
|
+
numberAfter(excerpt, /\bcached tokens\s*[:=]?\s*([0-9][0-9,]*)/i);
|
|
417
|
+
const promptCacheKey = stringAfter(excerpt, /\bprompt_cache_key\s*[:=]\s*"?([A-Za-z0-9._:-]+)"?/i);
|
|
418
|
+
const responseId = stringAfter(excerpt, /\b(?:response_)?id\s*[:=]\s*"?([A-Za-z0-9._:-]+)"?/i);
|
|
419
|
+
const outcome = stringAfter(excerpt, /\boutcome\s*[:=]\s*"?([A-Za-z0-9._:-]+)"?/i);
|
|
420
|
+
const transport = /\bwebsocket\b/i.test(excerpt) ? "websocket" :
|
|
421
|
+
/\bsse\b/i.test(excerpt) ? "sse" :
|
|
422
|
+
/\bhttps?\b/i.test(excerpt) ? "http" :
|
|
423
|
+
undefined;
|
|
424
|
+
if (inputTokens === undefined && cachedInputTokens === undefined && !promptCacheKey) {
|
|
425
|
+
return undefined;
|
|
426
|
+
}
|
|
427
|
+
return {
|
|
428
|
+
source,
|
|
429
|
+
line,
|
|
430
|
+
inputTokens,
|
|
431
|
+
cachedInputTokens,
|
|
432
|
+
cacheHitPercent: computeCacheHitPercent(inputTokens, cachedInputTokens),
|
|
433
|
+
promptCacheKey,
|
|
434
|
+
responseId,
|
|
435
|
+
transport,
|
|
436
|
+
outcome,
|
|
437
|
+
excerpt
|
|
438
|
+
};
|
|
439
|
+
}
|
|
440
|
+
function parsePromptCacheJson(source, line, excerpt) {
|
|
441
|
+
if (!excerpt.startsWith("{")) {
|
|
442
|
+
return undefined;
|
|
443
|
+
}
|
|
444
|
+
try {
|
|
445
|
+
const value = JSON.parse(excerpt);
|
|
446
|
+
const usage = value.usage && typeof value.usage === "object" ? value.usage : {};
|
|
447
|
+
const inputTokens = numberValue(value.input_tokens ?? value.inputTokens ?? usage.input_tokens ?? usage.inputTokens);
|
|
448
|
+
const cachedInputTokens = numberValue(value.cached_input_tokens ?? value.cachedInputTokens ?? value.cached_tokens ?? value.cachedTokens ?? usage.cached_input_tokens ?? usage.cachedInputTokens ?? usage.cached_tokens ?? usage.cachedTokens);
|
|
449
|
+
const promptCacheKey = stringValue(value.prompt_cache_key ?? value.promptCacheKey ?? usage.prompt_cache_key ?? usage.promptCacheKey);
|
|
450
|
+
const responseId = stringValue(value.response_id ?? value.responseId ?? value.id);
|
|
451
|
+
const transport = stringValue(value.transport ?? value.protocol);
|
|
452
|
+
const outcome = stringValue(value.outcome ?? value.result);
|
|
453
|
+
if (inputTokens === undefined && cachedInputTokens === undefined && !promptCacheKey) {
|
|
454
|
+
return undefined;
|
|
455
|
+
}
|
|
456
|
+
return {
|
|
457
|
+
source,
|
|
458
|
+
line,
|
|
459
|
+
inputTokens,
|
|
460
|
+
cachedInputTokens,
|
|
461
|
+
cacheHitPercent: computeCacheHitPercent(inputTokens, cachedInputTokens),
|
|
462
|
+
promptCacheKey,
|
|
463
|
+
responseId,
|
|
464
|
+
transport,
|
|
465
|
+
outcome,
|
|
466
|
+
excerpt
|
|
467
|
+
};
|
|
468
|
+
}
|
|
469
|
+
catch {
|
|
470
|
+
return undefined;
|
|
471
|
+
}
|
|
472
|
+
}
|
|
346
473
|
function parseOverheadSignal(source, line, excerpt) {
|
|
347
474
|
const kind = /\bwrite_stdin\b|\b(empty|idle).{0,30}\bpoll/i.test(excerpt) ? "background_polling" :
|
|
348
475
|
/\b(compaction|compact).{0,80}\b(loop|again|repeat|relaunch|75%|context window)\b/i.test(excerpt) ? "compaction_loop" :
|
|
@@ -380,7 +507,7 @@ function parseDrainExperiment(source, line, excerpt) {
|
|
|
380
507
|
excerpt
|
|
381
508
|
};
|
|
382
509
|
}
|
|
383
|
-
function buildFindings(snapshots, tokenUsage, usageLimitSignals, overheadSignals, drainExperiments) {
|
|
510
|
+
function buildFindings(snapshots, tokenUsage, cacheCollapseEvents, usageLimitSignals, overheadSignals, drainExperiments) {
|
|
384
511
|
const findings = [];
|
|
385
512
|
const byWindow = new Map();
|
|
386
513
|
for (const snapshot of snapshots) {
|
|
@@ -433,6 +560,16 @@ function buildFindings(snapshots, tokenUsage, usageLimitSignals, overheadSignals
|
|
|
433
560
|
});
|
|
434
561
|
}
|
|
435
562
|
}
|
|
563
|
+
for (const event of cacheCollapseEvents) {
|
|
564
|
+
findings.push({
|
|
565
|
+
kind: "prompt_cache_collapse",
|
|
566
|
+
severity: event.dropPercent >= 50 ? "high" : "medium",
|
|
567
|
+
title: "Prompt cache collapse between adjacent requests",
|
|
568
|
+
why: "The evidence shows cached input tokens dropping sharply while the same prompt cache key or request chain continues, which helps separate backend prompt-cache instability from ordinary high-token turns.",
|
|
569
|
+
evidence: [{ file: event.source, line: event.line, excerpt: event.excerpt }],
|
|
570
|
+
nextStep: "Attach the adjacent previous/current request rows with response ids, prompt_cache_key, transport, reconnect timing, and local token totals so maintainers can check routing or cache-retention behavior."
|
|
571
|
+
});
|
|
572
|
+
}
|
|
436
573
|
for (const signal of usageLimitSignals) {
|
|
437
574
|
const nearby = snapshots.find((snapshot) => snapshot.source === signal.source && Math.abs(snapshot.line - signal.line) <= 8 && (snapshot.percent ?? 0) > 0);
|
|
438
575
|
if (nearby) {
|
|
@@ -477,7 +614,7 @@ function buildFindings(snapshots, tokenUsage, usageLimitSignals, overheadSignals
|
|
|
477
614
|
}
|
|
478
615
|
return dedupeFindings(findings);
|
|
479
616
|
}
|
|
480
|
-
function buildReceipt(snapshots, tokenUsage, overheadSignals, usageLimitSignals, drainExperiments) {
|
|
617
|
+
function buildReceipt(snapshots, tokenUsage, cacheCollapseEvents, overheadSignals, usageLimitSignals, drainExperiments) {
|
|
481
618
|
const byWindow = new Map();
|
|
482
619
|
for (const snapshot of snapshots) {
|
|
483
620
|
const window = snapshot.window || "unknown";
|
|
@@ -510,6 +647,9 @@ function buildReceipt(snapshots, tokenUsage, overheadSignals, usageLimitSignals,
|
|
|
510
647
|
if (tokenUsage.some((record) => record.cachedInput !== undefined && record.cachedInput >= 1_000_000)) {
|
|
511
648
|
suspectedCauses.add("large cached-context replay");
|
|
512
649
|
}
|
|
650
|
+
if (cacheCollapseEvents.length > 0) {
|
|
651
|
+
suspectedCauses.add("prompt-cache collapse");
|
|
652
|
+
}
|
|
513
653
|
for (const signal of overheadSignals) {
|
|
514
654
|
if (signal.kind === "background_polling") {
|
|
515
655
|
suspectedCauses.add("background polling");
|
|
@@ -532,9 +672,39 @@ function buildReceipt(snapshots, tokenUsage, overheadSignals, usageLimitSignals,
|
|
|
532
672
|
localTokenTotals,
|
|
533
673
|
drainExperiments,
|
|
534
674
|
overheadSignals,
|
|
675
|
+
cacheCollapseEvents,
|
|
535
676
|
suspectedCauses: [...suspectedCauses].sort((a, b) => a.localeCompare(b))
|
|
536
677
|
};
|
|
537
678
|
}
|
|
679
|
+
function findPromptCacheCollapseEvents(records) {
|
|
680
|
+
const events = [];
|
|
681
|
+
const previousByKey = new Map();
|
|
682
|
+
for (const record of records) {
|
|
683
|
+
const key = record.promptCacheKey ?? `${record.source}:unknown-cache-key`;
|
|
684
|
+
const previous = previousByKey.get(key);
|
|
685
|
+
if (previous?.cachedInputTokens !== undefined &&
|
|
686
|
+
record.cachedInputTokens !== undefined &&
|
|
687
|
+
previous.cachedInputTokens >= 10_000 &&
|
|
688
|
+
record.cachedInputTokens < previous.cachedInputTokens * 0.7 &&
|
|
689
|
+
comparableInputSize(previous.inputTokens, record.inputTokens)) {
|
|
690
|
+
events.push({
|
|
691
|
+
source: record.source,
|
|
692
|
+
line: record.line,
|
|
693
|
+
previousLine: previous.line,
|
|
694
|
+
inputTokens: record.inputTokens,
|
|
695
|
+
cachedInputTokens: record.cachedInputTokens,
|
|
696
|
+
previousCachedInputTokens: previous.cachedInputTokens,
|
|
697
|
+
dropPercent: round2(((previous.cachedInputTokens - record.cachedInputTokens) / previous.cachedInputTokens) * 100),
|
|
698
|
+
promptCacheKey: record.promptCacheKey,
|
|
699
|
+
responseId: record.responseId,
|
|
700
|
+
previousResponseId: previous.responseId,
|
|
701
|
+
excerpt: record.excerpt
|
|
702
|
+
});
|
|
703
|
+
}
|
|
704
|
+
previousByKey.set(key, record);
|
|
705
|
+
}
|
|
706
|
+
return events;
|
|
707
|
+
}
|
|
538
708
|
function findPercentageJumps(items) {
|
|
539
709
|
const ordered = items.filter((item) => item.percent !== undefined);
|
|
540
710
|
const jumps = [];
|
|
@@ -653,6 +823,9 @@ function numberAfter(value, regex) {
|
|
|
653
823
|
const match = value.match(regex);
|
|
654
824
|
return match ? parseInteger(match[1]) : undefined;
|
|
655
825
|
}
|
|
826
|
+
function stringAfter(value, regex) {
|
|
827
|
+
return cleanValue(value.match(regex)?.[1]);
|
|
828
|
+
}
|
|
656
829
|
function numberValue(value) {
|
|
657
830
|
if (typeof value === "number" && Number.isFinite(value)) {
|
|
658
831
|
return value;
|
|
@@ -681,6 +854,21 @@ function addOptional(a, b) {
|
|
|
681
854
|
}
|
|
682
855
|
return a + b;
|
|
683
856
|
}
|
|
857
|
+
function computeCacheHitPercent(inputTokens, cachedInputTokens) {
|
|
858
|
+
if (!inputTokens || cachedInputTokens === undefined || inputTokens <= 0) {
|
|
859
|
+
return undefined;
|
|
860
|
+
}
|
|
861
|
+
return round2((cachedInputTokens / inputTokens) * 100);
|
|
862
|
+
}
|
|
863
|
+
function comparableInputSize(previous, current) {
|
|
864
|
+
if (previous === undefined || current === undefined || previous <= 0) {
|
|
865
|
+
return true;
|
|
866
|
+
}
|
|
867
|
+
return current >= previous * 0.75;
|
|
868
|
+
}
|
|
869
|
+
function round2(value) {
|
|
870
|
+
return Math.round(value * 100) / 100;
|
|
871
|
+
}
|
|
684
872
|
function cleanValue(value) {
|
|
685
873
|
return (value ?? "").replace(/\*\*/g, "").replace(/`/g, "").trim();
|
|
686
874
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usageEvidence.js","sourceRoot":"","sources":["../../src/usageEvidence.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"usageEvidence.js","sourceRoot":"","sources":["../../src/usageEvidence.ts"],"names":[],"mappings":"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"}
|
package/docs/BENCHMARK.md
CHANGED
|
@@ -28,11 +28,12 @@ This benchmark runs the public fixture pack that ships with the repository and p
|
|
|
28
28
|
| MCP config with secret exposure | `fixtures/mcp-risk.json` | 59 | 2 | 1 | `mcp_risk`, `secret_exposure` | pass |
|
|
29
29
|
| Sensitive file access in agent context | `fixtures/sensitive-file-access.md` | 75 | 2 | 0 | `sensitive_file_access`, `weak_evidence` | pass |
|
|
30
30
|
| Codex MCP runtime failure | `fixtures/codex-mcp-runtime.md` | 75 | 2 | 0 | `codex_mcp_runtime`, `weak_evidence` | pass |
|
|
31
|
+
| Codex Streamable HTTP MCP parse and handshake failure | `fixtures/codex-mcp-streamable-http.md` | 75 | 2 | 0 | `codex_mcp_streamable_http`, `weak_evidence` | pass |
|
|
31
32
|
| Codex MCP discovery and config-scope mismatch | `fixtures/codex-mcp-discovery-mismatch.md` | 75 | 2 | 0 | `codex_mcp_discovery_mismatch`, `weak_evidence` | pass |
|
|
32
33
|
| Codex plugin runtime and bundled capability failure | `fixtures/codex-plugin-runtime.md` | 59 | 3 | 0 | `codex_plugin_runtime`, `codex_windows_helper_path`, `weak_evidence` | pass |
|
|
33
34
|
| Codex file tree and workspace navigation UI failure | `fixtures/codex-file-tree-ui.md` | 75 | 2 | 0 | `codex_file_tree_ui`, `weak_evidence` | pass |
|
|
34
35
|
| Codex session resume and state failure | `fixtures/codex-session-state.md` | 59 | 3 | 0 | `codex_resource_leak`, `codex_session_state`, `weak_evidence` | pass |
|
|
35
|
-
| Codex token burn and usage-drain loop | `fixtures/codex-token-burn.md` |
|
|
36
|
+
| Codex token burn and usage-drain loop | `fixtures/codex-token-burn.md` | 75 | 2 | 0 | `codex_token_burn`, `weak_evidence` | pass |
|
|
36
37
|
| Codex resource leak and runaway process | `fixtures/codex-resource-leak.md` | 75 | 2 | 0 | `codex_resource_leak`, `weak_evidence` | pass |
|
|
37
38
|
| Codex tool-call integrity and rollback failure | `fixtures/codex-tool-call-integrity.md` | 43 | 4 | 0 | `codex_resource_leak`, `codex_subagent_lifecycle`, `codex_tool_call_integrity`, `weak_evidence` | pass |
|
|
38
39
|
| Codex apply_patch Add File overwrite safety | `fixtures/codex-apply-patch-overwrite.md` | 75 | 2 | 0 | `codex_tool_call_integrity`, `weak_evidence` | pass |
|
package/docs/CODEX_ISSUE_MAP.md
CHANGED
|
@@ -23,7 +23,7 @@ npx trace-to-skill lsp-audit . --format json
|
|
|
23
23
|
|
|
24
24
|
| OpenAI/Codex issue cluster | Common signals | Finding kind | Best command |
|
|
25
25
|
| --- | --- | --- | --- |
|
|
26
|
-
| Token burn and usage drain | `tokens burning very fast`, `1% in 4 minutes`, `22 credits`, large cached input totals, `write_stdin` empty polls, idle app usage, compaction tax, retry loops, subagent fan-out | `codex_token_burn` plus usage receipt | `trace-to-skill usage-evidence ./usage-notes.md` first, then `trace-to-skill codex-report ./runs` for trace reports |
|
|
26
|
+
| Token burn, prompt-cache collapse, and usage drain | `tokens burning very fast`, `1% in 4 minutes`, `22 credits`, large cached input totals, `input_tokens` / `cached_input_tokens` / `cached_tokens` / `prompt_cache_key` rows, websocket reconnect cache drops, `write_stdin` empty polls, idle app usage, compaction tax, retry loops, subagent fan-out | `codex_token_burn` plus usage receipt and `prompt_cache_collapse` | `trace-to-skill usage-evidence ./usage-notes.md` first, then `trace-to-skill codex-report ./runs` for trace reports |
|
|
27
27
|
| Usage reset schedule drift | weekly reset time changes, `reset_at` jumps, saved quota is wiped or pushed into the next window, outage compensation reset changes the anchor | `codex_usage_reset_drift` | `trace-to-skill usage-evidence ./usage-notes.md` or `trace-to-skill codex-report ./runs` |
|
|
28
28
|
| Remote compact task failures | `/compact` or auto-compact fails, `responses/compact` stream disconnects, `timeout waiting for child process to exit`, `tcp_user_timeout` or `stream_idle_timeout_ms` workarounds, provider-id timeout drift | `codex_remote_compact` | `trace-to-skill codex-report ./runs` |
|
|
29
29
|
| Windows helper and bundled tool path failures | bundled `rg.exe`, `node_repl.exe`, `codex-command-runner.exe`, Browser, Chrome, or Computer Use helpers resolve through `WindowsApps`, missing `%LOCALAPPDATA%\OpenAI\Codex\bin`, broken LocalCache helper bins, `CodexSandboxUsers` ACL gaps, EFS/copyfile failures | `codex_windows_helper_path` | `trace-to-skill codex-report ./runs` |
|
|
@@ -37,6 +37,7 @@ npx trace-to-skill lsp-audit . --format json
|
|
|
37
37
|
| Deeplink, OAuth callback, and external launch regressions | `codex://oauth_callback?code=...` fails, `Unable to find Electron app`, `app\oauth_callback?code=...`, notification `type=click&tag=...` becomes an app path, AppX/MSIX protocol evidence, `codex app .` only focuses | `codex_deeplink_launch` | `trace-to-skill codex-report ./runs` or `trace-to-skill demo deeplink-launch` |
|
|
38
38
|
| App connector auth cache and stale link regressions | `401 Reauthentication required`, `refresh token was revoked`, stale `link_*`, `isAccessible: false`, `codex_apps_tools` or `codex_app_directory` cache regeneration keeps broken connector state | `codex_connector_auth_cache` | `trace-to-skill codex-report ./runs` or `trace-to-skill demo connector-auth-cache` |
|
|
39
39
|
| MCP discovery and config-scope mismatches | CLI `/mcp` works but VS Code/Desktop has no `mcp__*` tools, project `.codex/config.toml` ignored, `codex mcp get` says `No MCP server named`, WSL opens Windows `config.toml`, `CODEX_HOME` differs | `codex_mcp_discovery_mismatch` | `trace-to-skill codex-report ./runs` or `trace-to-skill demo mcp-discovery-mismatch` |
|
|
40
|
+
| Streamable HTTP MCP parse, handshake, auth, and reconnect failures | Penpot `JsonRpcMessage deserialize`, `Content-Type: text/event-stream` parse failures, n8n initialize then `Transport closed`, DingTalk OAuth/login gating, stale `streamable-http` session ids after server restart, missing header/User-Agent requirements | `codex_mcp_streamable_http` | `trace-to-skill codex-report ./runs` or `trace-to-skill demo mcp-streamable-http` |
|
|
40
41
|
| Terminal output and scrollback integrity failures | scrollback lines disappear, streaming output overwrites older visible transcript, complete numbered lines are missing, `missing_count`, `tmux_scrollback_repro.sh`, viewport snaps to bottom, transcript mode cannot recover output | `codex_terminal_output_integrity` | `trace-to-skill codex-report ./runs` or `trace-to-skill demo terminal-output-integrity` |
|
|
41
42
|
| Subagent lifecycle and state reconciliation failures | completed/closed subagents remain visible, stale `thread_spawn_edges`, `agent thread limit reached`, `close_agent` hangs or returns `not_found`, child threads crowd recent conversations, compaction loses prior subagent IDs, forked review inherits parent context | `codex_subagent_lifecycle` plus session subagent signals | `trace-to-skill session-audit ~/.codex --format json` for local history signals, then `trace-to-skill codex-report ./runs` for redacted traces |
|
|
42
43
|
| Approval persistence and MCP approval friction | `Approve for this session` is not remembered, command approval cache misses, repeated file-change approvals, `approval_policy = "never"` still prompts for MCP tools, per-tool approval configs explode | `codex_approval_friction` | `trace-to-skill codex-report ./runs` |
|
|
@@ -79,6 +80,7 @@ npx trace-to-skill lsp-audit . --format json
|
|
|
79
80
|
- Include exact redacted `codex://` URI shape, connector/plugin, browser, error dialog text, app running state, AppX/MSIX protocol registration evidence such as AppUserModelID and DelegateExecute, HKCU/HKCR `codex` keys, command-line arguments, `Start-Process "codex://test"` repro, and repair/reinstall/re-register attempts for deeplink/OAuth launch regressions.
|
|
80
81
|
- Include connector/plugin name and id, installed plugin root, exact Codex Apps tool name, 401/reauth text, `link_*` id before and after reconnect/cache regeneration, `isAccessible` state, redacted `codex_apps_tools`/`codex_app_directory` metadata, ChatGPT app page state, and external MCP workaround result for connector auth-cache regressions.
|
|
81
82
|
- Include effective `CODEX_HOME`, config files considered, redacted MCP sections, trust/profile/default-permissions state, `codex mcp list/get`, CLI-versus-Desktop/VS Code comparison, loaded config path/log lines, WSL/remote/SSH state, and restart/reload/new-conversation results for MCP discovery mismatches.
|
|
83
|
+
- Include Codex version, MCP server name, transport URL without secrets, initialize/tools/list/tools/call results, HTTP status, `Content-Type`, SSE event framing, JSON-RPC message shape, session id before/after restart, auth/OAuth expectations, User-Agent/header requirements, parse/deserialize error, another-client comparison, and reconnect/reinitialize behavior for Streamable HTTP MCP reports.
|
|
82
84
|
- Include terminal emulator/version, shell, WSL/SSH/tmux/Zellij state, streaming state, exact scroll action, viewport snap behavior, first missing or duplicated line id, raw log/transcript proof, terminal capture, numbered-line harness/control output, terminal dimensions/scrollback settings, and `/resume` or transcript recovery behavior for terminal-output integrity reports.
|
|
83
85
|
- Include root thread id, subagent ids/nicknames/roles, spawn/close/list commands, `close_agent` results, `list_agents` or `/agents` output, `thread_spawn_edges` status counts, `agents.max_threads` or registry quota evidence, recent-list/sidebar behavior, child-thread archive/top-level status, last-progress or halt reason, MCP server state for subagents, compaction/resume timing, redacted UI evidence, restart/reload behavior, and whether stale agents are UI-only or still block spawns for subagent-lifecycle reports. Attach `session-audit` when local rollout JSONL can summarize those signals without posting transcripts.
|
|
84
86
|
- Include selected approval scope, displayed vs executed command, MCP server/tool names, visible args, repeated prompt count, and config snippets for approval-friction reports.
|
|
@@ -91,11 +93,11 @@ npx trace-to-skill lsp-audit . --format json
|
|
|
91
93
|
- For sensitive-file reports, attach only redacted excerpts and the file path/class, not the original credential material.
|
|
92
94
|
- For preflight exclusion reports, attach `sensitive-audit` output and recommended exclude globs; use `--format ignore --ignore-target codexignore` when maintainers want a reviewable `.codexignore` candidate. It does not read file contents or follow symlink targets.
|
|
93
95
|
- For LSP readiness reports, attach `lsp-audit` output so maintainers can see detected languages, evidence files, missing server commands, and install hints without auto-installing tools.
|
|
94
|
-
- For token-burn reports, attach `usage-evidence` output so quota-window percentages, rapid drain experiments, local token totals, cached input, and orchestration-overhead signals are not collapsed into one ambiguous symptom.
|
|
96
|
+
- For token-burn reports, attach `usage-evidence` output so quota-window percentages, rapid drain experiments, local token totals, prompt-cache collapse events, cached input, and orchestration-overhead signals are not collapsed into one ambiguous symptom.
|
|
95
97
|
|
|
96
98
|
## Related OpenAI/Codex Threads Used For Fixtures
|
|
97
99
|
|
|
98
|
-
- Token burn and usage drain: https://github.com/openai/codex/issues/14593, https://github.com/openai/codex/issues/13733, https://github.com/openai/codex/issues/25420, https://github.com/openai/codex/issues/19585
|
|
100
|
+
- Token burn, prompt-cache collapse, and usage drain: https://github.com/openai/codex/issues/14593, https://github.com/openai/codex/issues/20301, https://github.com/openai/codex/issues/13733, https://github.com/openai/codex/issues/25420, https://github.com/openai/codex/issues/19585
|
|
99
101
|
- Usage reset schedule drift: https://github.com/openai/codex/issues/9508, https://github.com/openai/codex/issues/5999
|
|
100
102
|
- Remote compact task failures: https://github.com/openai/codex/issues/14860, https://github.com/openai/codex/issues/19009
|
|
101
103
|
- Windows helper and bundled tool path failures: https://github.com/openai/codex/issues/13542, https://github.com/openai/codex/issues/25357, https://github.com/openai/codex/issues/25220
|
|
@@ -106,6 +108,7 @@ npx trace-to-skill lsp-audit . --format json
|
|
|
106
108
|
- Deeplink, OAuth callback, and external launch regressions: https://github.com/openai/codex/issues/25203, https://github.com/openai/codex/issues/25231, https://github.com/openai/codex/issues/25368, https://github.com/openai/codex/issues/25333
|
|
107
109
|
- App connector auth cache and stale link regressions: https://github.com/openai/codex/issues/24675, https://github.com/openai/codex/issues/25443
|
|
108
110
|
- MCP discovery and config-scope mismatches: https://github.com/openai/codex/issues/6465, https://github.com/openai/codex/issues/13025, https://github.com/openai/codex/issues/13549
|
|
111
|
+
- Streamable HTTP MCP parse, handshake, auth, and reconnect failures: https://github.com/openai/codex/issues/25451, https://github.com/openai/codex/issues/24439, https://github.com/openai/codex/issues/21532, https://github.com/openai/codex/issues/21903, https://github.com/openai/codex/issues/13920, https://github.com/openai/codex/issues/12869, https://github.com/openai/codex/issues/22571, https://github.com/openai/codex/issues/16485
|
|
109
112
|
- Terminal output and scrollback integrity failures: https://github.com/openai/codex/issues/15380, https://github.com/openai/codex/issues/24849, https://github.com/openai/codex/issues/10726
|
|
110
113
|
- Subagent lifecycle and state reconciliation failures: https://github.com/openai/codex/issues/23930, https://github.com/openai/codex/issues/23700, https://github.com/openai/codex/issues/25341, https://github.com/openai/codex/issues/25179, https://github.com/openai/codex/issues/22779, https://github.com/openai/codex/issues/24281, https://github.com/openai/codex/issues/25426, https://github.com/openai/codex/issues/22099
|
|
111
114
|
- Approval persistence and MCP approval friction: https://github.com/openai/codex/issues/4212, https://github.com/openai/codex/issues/13476, https://github.com/openai/codex/issues/2998
|
package/docs/DEMO.md
CHANGED
|
@@ -90,6 +90,7 @@ Suggested rule:
|
|
|
90
90
|
- `deeplink-launch`: OAuth callbacks, notification clicks, mobile links, or `codex app <path>` external activation fail to route into Codex.
|
|
91
91
|
- `connector-auth-cache`: App connectors keep stale `link_*` auth or discovery metadata after reauth-required responses.
|
|
92
92
|
- `mcp-discovery-mismatch`: MCP servers work in CLI or one config scope but are absent in Desktop, VS Code, WSL, or project-local sessions.
|
|
93
|
+
- `mcp-streamable-http`: Streamable HTTP or SSE MCP servers pass initialize or tools/list but fail parsing, handshakes, auth gating, stale sessions, or reconnects.
|
|
93
94
|
- `terminal-output-integrity`: Terminal scrollback, streamed output, or transcript rendering drops, overwrites, truncates, or makes lines inaccessible.
|
|
94
95
|
- `token-burn`: Usage drains from background polling, idle activity, compaction loops, retries, or cached-heavy turns.
|
|
95
96
|
- `patch-overwrite`: `apply_patch` accepts `*** Add File` for an existing path, turning a create operation into a silent overwrite.
|
|
@@ -108,6 +109,7 @@ trace-to-skill demo clipboard-attachment
|
|
|
108
109
|
trace-to-skill demo deeplink-launch
|
|
109
110
|
trace-to-skill demo connector-auth-cache
|
|
110
111
|
trace-to-skill demo mcp-discovery-mismatch
|
|
112
|
+
trace-to-skill demo mcp-streamable-http
|
|
111
113
|
trace-to-skill demo terminal-output-integrity
|
|
112
114
|
trace-to-skill demo subagent-lifecycle
|
|
113
115
|
trace-to-skill demo file-tree-ui
|
package/docs/DISCOVERY.md
CHANGED
|
@@ -41,8 +41,8 @@ This page is written for maintainers, search engines, package indexes, and AI re
|
|
|
41
41
|
- Codex app connectors keep stale `link_*` authorization or discovery metadata after `401 Reauthentication required`, plugin reinstall, app restart, or cache regeneration.
|
|
42
42
|
- Codex usage drains unexpectedly because of rapid drain experiments (`1% in 4 minutes`, `22 credits`, `70% weekly in a day`), background `write_stdin` polling, idle app activity, compaction/replay overhead, retry loops, subagent fan-out, fast-mode drift, or cached-token-heavy turns.
|
|
43
43
|
- Codex weekly or 5-hour reset anchors move unexpectedly, saved usage is lost, or `/status` and the dashboard disagree about reset timing or enforcement.
|
|
44
|
-
- Codex usage evidence is scattered across `/status`, dashboard notes, reset tables, usage-limit messages, token totals, cached input, and overhead clues, making high-signal reports hard to file.
|
|
45
|
-
- Codex token-burn reports need a receipt that separates backend quota-window percentages, bounded drain experiments, local token totals, and orchestration overhead such as background polling, compaction loops, retry/tool loops, subagent fan-out, or idle drain.
|
|
44
|
+
- Codex usage evidence is scattered across `/status`, dashboard notes, reset tables, usage-limit messages, token totals, prompt-cache rows, cached input, and overhead clues, making high-signal reports hard to file.
|
|
45
|
+
- Codex token-burn reports need a receipt that separates backend quota-window percentages, prompt-cache collapse events, bounded drain experiments, local token totals, and orchestration overhead such as background polling, compaction loops, retry/tool loops, subagent fan-out, or idle drain.
|
|
46
46
|
- Codex users need a local checkpoint before agent edits because conversation rewind does not protect untracked dirty workspace files.
|
|
47
47
|
- Codex `/compact` or auto-compaction fails against the remote `responses/compact` endpoint with stream disconnects, child-process timeout messages, provider timeout workarounds, or long-thread recovery loss.
|
|
48
48
|
- Codex Desktop, app-server, VS Code extension, renderer, GPU, shell snapshot, or helper processes leak local resources or keep burning CPU/GPU/RAM after the useful work should be idle.
|
|
@@ -76,6 +76,7 @@ npx trace-to-skill demo clipboard-attachment
|
|
|
76
76
|
npx trace-to-skill demo deeplink-launch
|
|
77
77
|
npx trace-to-skill demo connector-auth-cache
|
|
78
78
|
npx trace-to-skill demo mcp-discovery-mismatch
|
|
79
|
+
npx trace-to-skill demo mcp-streamable-http
|
|
79
80
|
npx trace-to-skill demo terminal-output-integrity
|
|
80
81
|
npx trace-to-skill demo subagent-lifecycle
|
|
81
82
|
npx trace-to-skill scorecard .
|
|
@@ -143,7 +144,7 @@ npx trace-to-skill suggest ./runs --target agents-md
|
|
|
143
144
|
|
|
144
145
|
## Related Keywords
|
|
145
146
|
|
|
146
|
-
Codex, OpenAI Codex, Codex issue report, OpenAI triage, Codex LSP, Codex language server, lsp-audit, language-server readiness, typescript-language-server, pyright-langserver, gopls, rust-analyzer, sourcekit-lsp, clangd, Codex diagnostics bundle, privacy-preserving support bundle, workspace checkpoint, pre-agent checkpoint, Codex undo, Codex rewind, untracked file restore, sensitive path audit, sensitive-audit, agentignore, .agentignore, agentignore generator, codexignore, .codexignore, codexignore generator, aiexclude, .aiexclude, .gitignore candidates, exclude sensitive files, Codex plugin audit, Computer Use unavailable, Codex Browser plugin unavailable, bundled marketplace mismatch, generated runtime marketplace, plugin manifest missing, CODEX_HOME mismatch, Codex CLI, Codex sandbox, Windows sandbox, Codex config audit, Codex config.toml, Codex global state, .codex-global-state.json, Codex Speed reset, Codex Fast resets to Standard, service_tier fast, default-service-tier priority, has-user-changed-service-tier, Codex Preferences unable to save, configVersionConflict, default_permissions missing profile, Codex Windows helper path, Codex WindowsApps, Codex rg Access Denied, Codex ripgrep, CodexSandboxUsers, LocalCache Local OpenAI Codex bin, node_repl spawn setup refresh, Codex approval friction, Approve for this session, Allow for this session, approval_policy never, MCP approval prompts, default_tools_approval_mode, Playwright MCP approvals, Chrome DevTools MCP approvals, Codex auth, token_exchange_failed, Codex connectivity, stream disconnected, Codex connector auth cache, Codex Apps stale link, codex_apps_tools, codex_app_directory, Reauthentication required, refresh token revoked, isAccessible false, link_ connector, Codex deeplink, Codex OAuth callback, codex://oauth_callback, Unable to find Electron app, Error launching app, type=click&tag, AppUserModelID, DelegateExecute, codex app path, Codex remote compact, responses/compact, /compact timeout, tcp_user_timeout, stream_idle_timeout_ms, Codex remote control, Codex mobile, Waiting for desktop, Directory Unavailable, stale listener, Codex terminal output, Codex scrollback, Codex terminal history, terminal output integrity, missing_count, missing_examples, tmux_scrollback_repro.sh, line_truncation_repro.md, Windows Terminal scrollback, transcript mode, Codex subagent lifecycle, Codex subagent audit, stale subagents, close_agent, wait_agent, spawn_agent, thread_spawn_edges, agent thread limit reached, agents.max_threads, list_agents, /agents, subagent child threads, fork_context, unbiased review, subagent recent conversations, Codex MCP runtime, MCP unsupported call, mcp__node_repl__js, MCP namespace serverName, MCP Transport closed, StdioServerTransport, Codex plugin runtime, Computer Use native pipe path unavailable, SKY_CUA_NATIVE_PIPE_DIRECTORY, Plugin loading failed, plugin/list unknown variant vertical, Codex Browser plugin, Codex Computer Use, Codex Chrome plugin, stale plugin cache, codex plugin add, Codex file tree, Toggle File Tree, missing folder icon, floating file panel stale, file preview fails, workspace navigation, Codex project history disappeared, Codex project threads hidden, Codex session index repair, unindexed rollout thread, codex resume thread id, Codex latest-turn drift, Codex replies to earlier messages, stale prompt response, ignoring latest message, previous prompt, auto compaction forgets edits, raw tool payload leak, write_stdin session_id, Codex latency regression, GPT-5.5 Fast slow, Codex too slow, thinking stalls, Codex thinking hang, Codex stuck thinking, Codex Working stuck, no streamed follow-up, first response_item delayed, responses_http time.idle, model_client.stream_responses_api, turn/start, task_started, Codex Copy as Markdown missing, Codex Pasted text.txt, Codex long pasted prompt attachment, Codex clipboard export, Codex paste as text, Codex generated attachment preview edit, Codex goal ignores attachment, pasted-text-attachments.json, fileAttachments promptRaw composer.getText, pre-first-token latency, search/read latency, runtime scheduling latency, Codex resume, Codex session audit, Codex history audit, Codex history map, Codex session index, session_index.jsonl, Codex session state, rollout JSONL, logs_2.sqlite, codex-tui.log, sandbox.log, thread_goals, state_5.sqlite, goals_1.sqlite, archived chats, Codex token burn, Codex usage evidence, Codex rate-limit evidence, Codex usage drain, Codex usage reset, Codex weekly reset drift, reset_at changed, deterministic reset, rate limit reset, write_stdin polling, cached input tokens, compaction tax, background process polling, Codex process audit, PowerShell polling, powershell.exe Get-CimInstance Win32_Process, Win32_PerfFormattedData_PerfProc_Process, chat_processes.json stale entries, Codex resource leak, Codex performance, high CPU, high GPU, shell-snapshot, Code Helper Renderer, Codex tool-call integrity, apply_patch, apply_patch Add File overwrite, patch guard, guard-patch, Add File symlink, tool_call_id, failed revert changes, patch safety, Codex quota, usage limit, rate limits, sensitive files, Codex privacy, .env, private keys, credential files, AGENTS.md, SKILL.md, Claude Code, Cursor, Copilot coding agent, Gemini CLI, MCP, Model Context Protocol, prompt injection, agent evals, AI code review, open-source maintainers, trace redaction, SARIF, GitHub Actions.
|
|
147
|
+
Codex, OpenAI Codex, Codex issue report, OpenAI triage, Codex LSP, Codex language server, lsp-audit, language-server readiness, typescript-language-server, pyright-langserver, gopls, rust-analyzer, sourcekit-lsp, clangd, Codex diagnostics bundle, privacy-preserving support bundle, workspace checkpoint, pre-agent checkpoint, Codex undo, Codex rewind, untracked file restore, sensitive path audit, sensitive-audit, agentignore, .agentignore, agentignore generator, codexignore, .codexignore, codexignore generator, aiexclude, .aiexclude, .gitignore candidates, exclude sensitive files, Codex plugin audit, Computer Use unavailable, Codex Browser plugin unavailable, bundled marketplace mismatch, generated runtime marketplace, plugin manifest missing, CODEX_HOME mismatch, Codex CLI, Codex sandbox, Windows sandbox, Codex config audit, Codex config.toml, Codex global state, .codex-global-state.json, Codex Speed reset, Codex Fast resets to Standard, service_tier fast, default-service-tier priority, has-user-changed-service-tier, Codex Preferences unable to save, configVersionConflict, default_permissions missing profile, Codex Windows helper path, Codex WindowsApps, Codex rg Access Denied, Codex ripgrep, CodexSandboxUsers, LocalCache Local OpenAI Codex bin, node_repl spawn setup refresh, Codex approval friction, Approve for this session, Allow for this session, approval_policy never, MCP approval prompts, default_tools_approval_mode, Playwright MCP approvals, Chrome DevTools MCP approvals, Codex auth, token_exchange_failed, Codex connectivity, stream disconnected, Codex connector auth cache, Codex Apps stale link, codex_apps_tools, codex_app_directory, Reauthentication required, refresh token revoked, isAccessible false, link_ connector, Codex deeplink, Codex OAuth callback, codex://oauth_callback, Unable to find Electron app, Error launching app, type=click&tag, AppUserModelID, DelegateExecute, codex app path, Codex remote compact, responses/compact, /compact timeout, tcp_user_timeout, stream_idle_timeout_ms, Codex remote control, Codex mobile, Waiting for desktop, Directory Unavailable, stale listener, Codex terminal output, Codex scrollback, Codex terminal history, terminal output integrity, missing_count, missing_examples, tmux_scrollback_repro.sh, line_truncation_repro.md, Windows Terminal scrollback, transcript mode, Codex subagent lifecycle, Codex subagent audit, stale subagents, close_agent, wait_agent, spawn_agent, thread_spawn_edges, agent thread limit reached, agents.max_threads, list_agents, /agents, subagent child threads, fork_context, unbiased review, subagent recent conversations, Codex MCP runtime, MCP unsupported call, mcp__node_repl__js, MCP namespace serverName, MCP Transport closed, StdioServerTransport, Codex Streamable HTTP MCP, streamable-http MCP, HTTP/SSE MCP, MCP SSE, Content-Type text/event-stream, JsonRpcMessage deserialize, MCP handshake initialize, stale MCP session id, MCP reconnect, Penpot MCP, n8n MCP, DingTalk MCP, Codex plugin runtime, Computer Use native pipe path unavailable, SKY_CUA_NATIVE_PIPE_DIRECTORY, Plugin loading failed, plugin/list unknown variant vertical, Codex Browser plugin, Codex Computer Use, Codex Chrome plugin, stale plugin cache, codex plugin add, Codex file tree, Toggle File Tree, missing folder icon, floating file panel stale, file preview fails, workspace navigation, Codex project history disappeared, Codex project threads hidden, Codex session index repair, unindexed rollout thread, codex resume thread id, Codex latest-turn drift, Codex replies to earlier messages, stale prompt response, ignoring latest message, previous prompt, auto compaction forgets edits, raw tool payload leak, write_stdin session_id, Codex latency regression, GPT-5.5 Fast slow, Codex too slow, thinking stalls, Codex thinking hang, Codex stuck thinking, Codex Working stuck, no streamed follow-up, first response_item delayed, responses_http time.idle, model_client.stream_responses_api, turn/start, task_started, Codex Copy as Markdown missing, Codex Pasted text.txt, Codex long pasted prompt attachment, Codex clipboard export, Codex paste as text, Codex generated attachment preview edit, Codex goal ignores attachment, pasted-text-attachments.json, fileAttachments promptRaw composer.getText, pre-first-token latency, search/read latency, runtime scheduling latency, Codex resume, Codex session audit, Codex history audit, Codex history map, Codex session index, session_index.jsonl, Codex session state, rollout JSONL, logs_2.sqlite, codex-tui.log, sandbox.log, thread_goals, state_5.sqlite, goals_1.sqlite, archived chats, Codex token burn, Codex usage evidence, Codex rate-limit evidence, Codex usage drain, prompt cache collapse, prompt_cache_key, cached_input_tokens, cached_tokens, low cache hit rate, websocket reconnect cache drop, Codex usage reset, Codex weekly reset drift, reset_at changed, deterministic reset, rate limit reset, write_stdin polling, cached input tokens, compaction tax, background process polling, Codex process audit, PowerShell polling, powershell.exe Get-CimInstance Win32_Process, Win32_PerfFormattedData_PerfProc_Process, chat_processes.json stale entries, Codex resource leak, Codex performance, high CPU, high GPU, shell-snapshot, Code Helper Renderer, Codex tool-call integrity, apply_patch, apply_patch Add File overwrite, patch guard, guard-patch, Add File symlink, tool_call_id, failed revert changes, patch safety, Codex quota, usage limit, rate limits, sensitive files, Codex privacy, .env, private keys, credential files, AGENTS.md, SKILL.md, Claude Code, Cursor, Copilot coding agent, Gemini CLI, MCP, Model Context Protocol, prompt injection, agent evals, AI code review, open-source maintainers, trace redaction, SARIF, GitHub Actions.
|
|
147
148
|
|
|
148
149
|
## Non-Goals
|
|
149
150
|
|