Adam Perry @ OpenAI
f574946960
[codex] Report unusable MCP OAuth credentials as logged out ( #26713 )
...
## Why
Persisted MCP OAuth credentials were reported as authenticated whenever
a credential record existed. An expired token without a usable refresh
token could therefore appear as `OAuth` even though startup could not
authenticate with it, leaving users with a misleading status instead of
a login prompt.
## What changed
- Classify stored OAuth credentials as missing, usable, or requiring
authorization.
- Reuse the existing refresh window so near-expiry credentials without a
refresh path are also treated as logged out.
- Validate required credential fields before reporting OAuth
authentication.
- Add unit coverage for credential usability and integration coverage
for expired, unexpired, and refreshable persisted credentials.
## Validation
- `just test -p codex-rmcp-client`
History
..
2026-06-08 11:39:08 +02:00
2026-06-09 12:48:04 -07:00
2026-05-26 20:59:47 -07:00
2026-05-07 15:44:17 -07:00
2026-04-28 12:35:00 -07:00
2026-06-09 12:27:10 -07:00
2026-05-07 15:44:17 -07:00
2026-06-09 22:44:16 +02:00
2026-06-09 13:26:00 -07:00
2026-05-25 09:41:12 -07:00
2026-06-09 12:27:10 -07:00
2026-05-28 14:54:39 -07:00
2026-06-05 22:54:57 -07:00
2026-06-01 18:45:07 +00:00
2026-06-03 19:08:19 -07:00
2026-05-07 15:44:17 -07:00
2026-05-08 04:07:59 +00:00
2026-06-05 14:43:44 +00:00
2026-05-05 22:22:01 -07:00
2026-06-09 22:44:16 +02:00
2026-06-08 15:43:08 -07:00
2026-06-02 16:41:48 -07:00
2026-05-07 15:44:17 -07:00
2026-05-07 15:44:17 -07:00
2026-05-07 15:44:17 -07:00
2026-06-04 09:39:20 -07:00
2026-06-07 23:18:23 -07:00
2026-06-01 21:25:42 -07:00
2026-05-26 20:59:47 -07:00
2026-05-07 15:44:17 -07:00
2026-06-09 22:44:16 +02:00
2026-05-07 15:44:17 -07:00
2026-06-08 18:59:50 +00:00
2026-05-28 22:08:05 -07:00
2026-06-03 13:32:55 +02:00
2026-06-09 20:51:57 +00:00
2026-06-09 00:38:35 +00:00
2026-06-09 12:52:05 -07:00
2026-06-09 19:51:54 +02:00
2026-06-05 15:41:13 -07:00
2026-06-09 12:27:10 -07:00
2026-06-04 22:36:25 -07:00
2026-06-07 17:35:33 -07:00
2026-06-07 17:35:33 -07:00
2026-06-09 22:44:16 +02:00
2026-06-04 14:16:03 -04:00
2026-06-08 14:16:32 -04:00
2026-06-05 17:23:45 -07:00
2026-05-26 15:59:25 -07:00
2026-05-07 15:44:17 -07:00
2026-06-01 11:53:31 -07:00
2026-05-28 23:09:55 -07:00
2026-06-08 21:32:46 -07:00
2026-06-02 13:18:59 -07:00
2026-06-03 19:08:19 -07:00
2026-05-07 15:44:17 -07:00
2026-06-05 09:34:36 -07:00
2026-05-07 15:44:17 -07:00
2026-06-05 17:36:18 -07:00
2026-06-09 12:14:48 +02:00
2026-06-09 19:51:54 +02:00
2026-06-04 09:53:08 -04:00
2026-06-05 17:36:18 -07:00
2026-06-05 17:36:18 -07:00
2026-06-05 17:36:18 -07:00
2026-06-09 13:08:01 -07:00
2026-06-04 09:53:08 -04:00
2026-06-08 22:29:51 +00:00
2026-05-21 16:11:59 -07:00
2026-05-25 17:26:10 -03:00
2026-06-03 13:32:55 +02:00
2026-06-09 12:27:10 -07:00
2026-05-07 15:44:17 -07:00
2026-04-22 22:24:12 -07:00
2026-05-07 15:44:17 -07:00
2026-06-09 14:18:24 -07:00
2026-06-09 12:14:48 +02:00
2026-06-09 12:14:48 +02:00
2026-06-08 14:03:37 -07:00
2026-05-26 20:59:47 -07:00
2026-05-07 15:44:17 -07:00
2026-06-05 09:38:26 -07:00
2026-05-07 15:44:17 -07:00
2026-05-28 15:11:11 +00:00
2026-06-09 13:23:31 -07:00
2026-05-07 15:44:17 -07:00
2026-05-13 21:23:19 +00:00
2026-05-07 15:44:17 -07:00
2026-06-09 12:14:48 +02:00
2026-06-09 12:27:10 -07:00
2026-06-08 23:07:56 +00:00
2026-06-09 13:26:00 -07:00
2026-05-07 15:44:17 -07:00
2026-06-08 16:33:41 -07:00
2026-05-18 21:33:05 -07:00
2026-05-06 18:10:30 +00:00
2026-06-04 16:52:10 -07:00
2025-10-19 20:41:55 -04:00
2026-04-24 17:49:29 -07:00
2026-06-09 22:44:16 +02:00
2026-06-09 22:44:16 +02:00
2026-04-20 22:41:54 -07:00
2025-10-17 14:58:27 -07:00
2026-02-20 19:32:15 -08:00
2026-06-08 11:39:08 +02:00
2026-06-04 09:16:03 -07:00
2026-05-26 20:59:47 -07:00
2025-05-07 08:37:48 -07:00