kshitijk4poor
e87f673faa
fix(codex): send catalog/image credentials only to their own route
...
Follow-up to the two contributor commits for #121486 . The picker, the
image plugin and the auxiliary Codex client still composed a pooled
gateway key with a base re-read from ambient state (HERMES_CODEX_BASE_URL
or the chatgpt.com default), so a model.base_url-only gateway (env unset)
still sent its key to chatgpt.com.
- auth_codex: resolve_codex_runtime_credentials reports the host a pooled
credential actually routes to (runtime_provider._pool_entry_mode_and_url:
env > model.base_url while the row is canonical > row URL) instead of the
ambient default; get_codex_auth_status carries the same bound base_url.
- picker: get_codex_model_ids(access_token, base_url=) now receives the base
resolved with the token from hermes_cli/models.py, the CLI default-model
swap (self.base_url) and the `hermes model` Codex flow.
- aux/image: _resolve_codex_credential_and_base() returns (token, base) from
one pool selection; the image plugin, _build_codex_client and the raw
Codex client use it (profile-scoped override from #121497 still wins).
- model_metadata: the non-JWT refusal now applies only when the target is
chatgpt.com; a gateway key may probe its own gateway's /models.
Adversarial regressions: model.base_url with env unset, env/route mismatch,
opaque + JWT gateway keys, pool-selected credential, pool row with its own
gateway URL, direct-ChatGPT positive control.
Addresses @andrexibiza's review on #121508 .
2026-09-25 21:27:06 +05:30
..
2026-09-24 13:10:14 -04:00
2026-09-23 11:41:01 -04:00
2026-09-18 17:26:10 -04:00
2026-09-24 11:50:30 -04:00
2026-09-19 22:57:07 -04:00
2026-09-23 19:26:00 -07:00
2026-09-23 18:29:35 -05:00
2026-09-24 13:10:14 -04:00
2026-09-24 11:57:56 -05:00
2026-09-22 01:19:12 -07:00
2026-09-24 23:37:27 -04:00
2026-09-21 13:18:11 -04:00
2026-09-19 09:56:12 -07:00
2026-09-24 22:26:23 +05:30
2026-09-24 22:25:06 +05:30
2026-09-17 08:53:15 -07:00
2026-09-25 21:27:06 +05:30
2026-09-17 08:45:46 -07:00
2026-09-17 09:07:51 -07:00
2026-09-22 01:19:12 -07:00
2026-09-23 15:13:16 -07:00
2026-09-17 09:11:38 -07:00
2026-09-23 18:29:35 -05:00
2026-09-19 09:28:45 -07:00
2026-09-21 19:08:19 -04:00
2026-09-23 15:00:46 -05:00
2026-09-24 23:37:27 -04:00
2026-09-23 18:29:35 -05:00
2026-09-20 14:29:39 -07:00
2026-09-24 13:13:35 -04:00
2026-09-24 15:58:19 +05:30
2026-09-19 09:53:48 -07:00
2026-09-24 15:58:19 +05:30
2026-09-23 19:51:34 -04:00
2026-09-23 11:41:01 -04:00
2026-09-23 21:28:38 +05:30
2026-09-19 20:44:24 -07:00
2026-09-24 22:38:35 +05:30
2026-09-23 21:55:59 -04:00
2026-09-23 18:52:49 -05:00
2026-09-23 01:11:58 -07:00
2026-09-24 16:29:19 +05:30
2026-09-20 15:50:49 -07:00
2026-09-24 11:57:56 -05:00
2026-09-21 23:38:16 -07:00
2026-09-19 10:28:34 -07:00
2026-09-21 00:58:39 -04:00
2026-09-24 11:57:56 -05:00
2026-09-24 11:57:56 -05:00
2026-09-23 23:06:15 +05:30
2026-09-24 11:57:56 -05:00
2026-09-24 22:27:18 +05:30
2026-09-19 22:57:07 -04:00
2026-09-24 15:44:48 +05:30
2026-09-19 09:37:23 -07:00
2026-09-19 21:24:05 -07:00
2026-09-24 06:21:50 -04:00
2026-09-18 20:55:24 -07:00
2026-09-20 10:07:50 -04:00
2026-09-19 22:57:07 -04:00
2026-09-25 14:08:03 +05:30
2026-09-16 17:48:48 -07:00
2026-09-24 02:23:44 -04:00
2026-09-24 22:36:08 +05:30
2026-09-19 10:54:43 -07:00
2026-09-20 17:00:43 -07:00
2026-09-23 13:40:45 -04:00
2026-09-18 10:08:58 -07:00
2026-09-24 02:23:44 -04:00
2026-09-24 00:30:45 +00:00
2026-09-17 13:52:36 +05:30
2026-09-20 00:34:46 -04:00
2026-09-23 08:04:33 +05:30
2026-09-23 18:29:35 -05:00
2026-09-18 13:01:12 -04:00
2026-09-16 17:48:17 -07:00
2026-09-18 09:21:42 -07:00
2026-09-24 18:01:46 +05:30
2026-09-24 08:51:52 -04:00
2026-09-24 08:51:52 -04:00
2026-09-23 18:26:45 -07:00
2026-09-23 01:06:32 -07:00
2026-09-23 01:06:32 -07:00
2026-09-23 22:45:56 -07:00
2026-09-23 21:28:38 +05:30
2026-09-24 11:57:56 -05:00
2026-09-18 20:56:35 -07:00
2026-09-23 15:26:34 -04:00
2026-09-25 21:27:06 +05:30
2026-09-23 15:26:34 -04:00
2026-09-21 13:14:22 -07:00
2026-09-19 00:53:26 -07:00
2026-09-18 01:43:35 +05:30
2026-09-17 13:52:05 -04:00
2026-09-19 09:21:18 -07:00
2026-09-19 10:56:19 -07:00
2026-09-22 16:15:34 +05:30
2026-09-23 11:41:01 -04:00
2026-09-18 09:56:28 -07:00
2026-09-23 07:02:44 -04:00
2026-09-23 21:28:38 +05:30
2026-09-18 10:22:14 -07:00
2026-09-20 14:02:17 +05:30
2026-09-23 00:44:33 -07:00
2026-09-20 16:03:38 -07:00
2026-09-19 09:57:53 -07:00
2026-09-23 21:28:38 +05:30
2026-09-23 06:31:43 -07:00
2026-09-24 01:06:16 -04:00
2026-09-24 22:32:05 +05:30
2026-09-19 09:49:39 -07:00
2026-09-23 07:43:29 -04:00
2026-09-23 08:09:47 -07:00
2026-09-19 10:38:30 -07:00
2026-09-24 06:21:50 -04:00
2026-09-22 05:16:50 -04:00
2026-09-22 09:55:47 -04:00
2026-09-20 15:50:26 -07:00
2026-09-22 09:55:47 -04:00
2026-09-21 18:42:05 -04:00
2026-09-18 01:43:35 +05:30
2026-09-24 22:41:10 +05:30
2026-09-24 22:25:06 +05:30
2026-09-21 00:58:39 -04:00
2026-09-23 17:06:48 -07:00
2026-09-23 17:06:48 -07:00
2026-09-24 22:41:10 +05:30
2026-09-24 17:59:28 +05:30
2026-09-24 16:29:19 +05:30
2026-09-24 16:29:19 +05:30
2026-09-18 10:03:04 -07:00
2026-09-18 10:03:04 -07:00
2026-09-21 19:08:19 -04:00
2026-09-20 18:24:07 -07:00
2026-09-24 15:44:26 +05:30
2026-09-24 22:33:58 +05:30
2026-09-24 22:25:06 +05:30
2026-09-24 22:27:18 +05:30
2026-09-23 22:45:56 -07:00
2026-09-24 22:27:18 +05:30
2026-09-20 20:13:33 -07:00
2026-09-23 07:46:43 -04:00
2026-09-23 16:58:39 -07:00
2026-09-24 22:32:05 +05:30
2026-09-23 15:00:46 -05:00
2026-09-24 22:27:18 +05:30
2026-09-18 01:43:35 +05:30
2026-09-23 04:38:27 -07:00
2026-09-18 01:43:35 +05:30
2026-09-23 05:36:34 -07:00
2026-09-19 12:38:55 -07:00
2026-09-24 13:10:14 -04:00
2026-09-19 00:04:42 -07:00
2026-09-19 10:47:48 -07:00
2026-09-24 22:25:06 +05:30
2026-09-19 12:38:55 -07:00
2026-09-24 22:41:10 +05:30
2026-09-23 05:36:34 -07:00
2026-09-18 01:43:35 +05:30
2026-09-25 01:08:23 -05:00
2026-09-17 18:36:10 -07:00
2026-09-23 11:33:09 -07:00
2026-09-20 10:21:52 -07:00
2026-09-20 10:23:04 -07:00
2026-09-20 11:47:06 -04:00
2026-09-23 10:52:20 -04:00
2026-09-23 11:00:15 -04:00