fix: stabilize code queue runtime and trace flow

This commit is contained in:
Codex
2026-05-14 17:11:45 +00:00
parent 9f483b002c
commit cbbed004a6
30 changed files with 1655 additions and 250 deletions
@@ -643,13 +643,13 @@ async function applyTraceSnapshot(executor: SqlExecutor, event: OaEventRecord, s
subject_kind = EXCLUDED.subject_kind,
subject_id = EXCLUDED.subject_id,
stats_revision = oa_trace_stats.stats_revision + 1,
step_count = GREATEST(oa_trace_stats.step_count, EXCLUDED.step_count),
llm_step_count = GREATEST(oa_trace_stats.llm_step_count, EXCLUDED.llm_step_count),
read_count = GREATEST(oa_trace_stats.read_count, EXCLUDED.read_count),
edit_count = GREATEST(oa_trace_stats.edit_count, EXCLUDED.edit_count),
run_count = GREATEST(oa_trace_stats.run_count, EXCLUDED.run_count),
error_count = GREATEST(oa_trace_stats.error_count, EXCLUDED.error_count),
trace_line_count = GREATEST(oa_trace_stats.trace_line_count, EXCLUDED.trace_line_count),
step_count = EXCLUDED.step_count,
llm_step_count = EXCLUDED.llm_step_count,
read_count = EXCLUDED.read_count,
edit_count = EXCLUDED.edit_count,
run_count = EXCLUDED.run_count,
error_count = EXCLUDED.error_count,
trace_line_count = EXCLUDED.trace_line_count,
output_max_seq = GREATEST(oa_trace_stats.output_max_seq, EXCLUDED.output_max_seq),
attempt_stats_json = EXCLUDED.attempt_stats_json,
last_event_sequence = GREATEST(COALESCE(oa_trace_stats.last_event_sequence, 0), EXCLUDED.last_event_sequence),
@@ -688,7 +688,7 @@ async function applyTraceStep(executor: SqlExecutor, event: OaEventRecord, scope
error_count: string | number;
}[]>`
SELECT
COUNT(*) AS step_count,
COUNT(*) FILTER (WHERE kind <> 'system') AS step_count,
COUNT(*) FILTER (WHERE kind = 'read') AS read_count,
COUNT(*) FILTER (WHERE kind = 'edit') AS edit_count,
COUNT(*) FILTER (WHERE kind = 'run') AS run_count,
@@ -718,13 +718,13 @@ async function applyTraceStep(executor: SqlExecutor, event: OaEventRecord, scope
subject_kind = EXCLUDED.subject_kind,
subject_id = EXCLUDED.subject_id,
stats_revision = oa_trace_stats.stats_revision + 1,
step_count = GREATEST(oa_trace_stats.step_count, EXCLUDED.step_count),
llm_step_count = GREATEST(oa_trace_stats.llm_step_count, EXCLUDED.llm_step_count),
read_count = GREATEST(oa_trace_stats.read_count, EXCLUDED.read_count),
edit_count = GREATEST(oa_trace_stats.edit_count, EXCLUDED.edit_count),
run_count = GREATEST(oa_trace_stats.run_count, EXCLUDED.run_count),
error_count = GREATEST(oa_trace_stats.error_count, EXCLUDED.error_count),
trace_line_count = GREATEST(oa_trace_stats.trace_line_count, EXCLUDED.trace_line_count),
step_count = EXCLUDED.step_count,
llm_step_count = EXCLUDED.llm_step_count,
read_count = EXCLUDED.read_count,
edit_count = EXCLUDED.edit_count,
run_count = EXCLUDED.run_count,
error_count = EXCLUDED.error_count,
trace_line_count = EXCLUDED.trace_line_count,
output_max_seq = GREATEST(oa_trace_stats.output_max_seq, EXCLUDED.output_max_seq),
attempt_stats_json = oa_trace_stats.attempt_stats_json,
last_event_sequence = GREATEST(COALESCE(oa_trace_stats.last_event_sequence, 0), EXCLUDED.last_event_sequence),