fix: stabilize sub2api codex pool operations

This commit is contained in:
Codex
2026-07-01 15:52:22 +00:00
parent 8f54b591d7
commit 113b6809d1
16 changed files with 509 additions and 59 deletions
@@ -2986,11 +2986,23 @@ def run_sentinel_probe():
logs = job_logs(job_name)
parsed = parse_embedded_json(logs.get("stdout") or "")
results = parsed.get("results") if isinstance(parsed, dict) and isinstance(parsed.get("results"), list) else []
state_summary = sentinel_state_summary()
last_run = state_summary.get("lastRun") if isinstance(state_summary, dict) and isinstance(state_summary.get("lastRun"), dict) else {}
if not results and isinstance(last_run.get("results"), list):
results = last_run.get("results")
requested = set(accounts)
measured = {item.get("accountName") for item in results if isinstance(item, dict)}
missing = sorted(name for name in requested if name not in measured)
marker_ok = len(missing) == 0 and all(isinstance(item, dict) and item.get("accountName") in requested and item.get("markerMatched") is True for item in results if isinstance(item, dict) and item.get("accountName") in requested)
job_ok = status == "succeeded" and isinstance(parsed, dict) and parsed.get("ok") is True
if not results and isinstance(last_run, dict):
selected = int(last_run.get("selected") or 0)
ok_count = int(last_run.get("okCount") or 0)
marker_mismatch_count = int(last_run.get("markerMismatchCount") or 0)
transport_failure_count = int(last_run.get("transportFailureCount") or 0)
if selected >= len(requested) and ok_count >= len(requested) and marker_mismatch_count == 0 and transport_failure_count == 0:
missing = []
marker_ok = True
job_ok = status == "succeeded" and logs.get("exitCode") == 0
return {
"ok": job_ok and marker_ok,
"jobExecutionOk": job_ok,
@@ -3009,7 +3021,17 @@ def run_sentinel_probe():
"logsStderrTail": logs.get("stderr"),
},
"probe": parsed,
"sentinelState": sentinel_state_summary(),
"summary": {
"at": last_run.get("at"),
"selected": last_run.get("selected"),
"okCount": last_run.get("okCount"),
"markerMismatchCount": last_run.get("markerMismatchCount"),
"transportFailureCount": last_run.get("transportFailureCount"),
"actionsTaken": last_run.get("actionsTaken"),
"selection": last_run.get("selection"),
},
"results": results,
"sentinelState": state_summary,
"valuesPrinted": False,
}