You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 72be1b3
Browse filesBrowse the repository at this point in the historyBrowse files
~250 lines of near-identical callback/login/session/store/lock twins
across codex and xai collapse onto seven shared helpers, each taking a
small provider spec of explicit hooks. Deliberate provider differences
stay hooks, not knobs: the codex inter-process refresh lock is a
serializeRefresh hook (xai has none by design), accountId merge and
token expiry stay per-provider, the divergent stale horizons carry
must-not-unify comments, and exact-code vs substring error matching is
untouched. Lock contention still never surfaces as credential_failure.
One deliberate delta: the unified file lock propagates non-ENOENT fs
errors where the codex refresh lock used to swallow every fs error;
the store contract was the stronger one. The propagation is pinned at
both levels — this suite exercises the refresh path and file-lock.test
pins the primitive.
0 commit comments