fix: recover Codex rotation auth failures

- mark Codex bearer/refresh failures as terminal auth-expired states

- sync refreshed session auth back to rotation slots and revive refreshed dead_auth slots

- stop paired arbiter retry loops when Codex accounts are unavailable

- add regression coverage for rotation leases, follow-up suppression, and arbiter closure
This commit is contained in:
ejclaw
2026-06-02 00:21:16 +09:00
parent 1ff6b3434f
commit 03d4c81192
21 changed files with 1082 additions and 52 deletions

View File

@@ -14,6 +14,7 @@ import {
shouldResetCodexSessionOnAgentFailure,
shouldResetSessionOnAgentFailure,
} from './session-recovery.js';
import { getErrorMessage } from './utils.js';
import type {
AgentType,
OutboundAttachment,
@@ -162,6 +163,9 @@ class MessageAgentAttemptRunner {
);
return this.buildAttempt({ output });
} catch (error) {
this.args.pairedExecutionLifecycle.updateSummary({
errorText: getErrorMessage(error),
});
return this.buildAttempt({ error });
}
}