Teknium
9d865810b6
fix(mcp-oauth): keep refresh_token when a refresh response omits it ( #62333 )
...
HermesProviderMixin._handle_refresh_response overrides the SDK's handler (to
accept any 2xx and keep token bodies out of logs) but dropped the SDK's RFC 6749
section 6 carry-forward. An authorization server that does not rotate refresh
tokens (TinyFish, Google, Zoho, Asana, Futu) answers the refresh grant without a
refresh_token; we then stored the response verbatim, erasing the only refresh
token we had, so the next expiry had nothing to refresh with and forced a
browser re-auth roughly one TTL after every login.
Carry the prior refresh_token (and scope, per section 5.1) forward on the
OAuthToken before _store_tokens, so both the live provider and the on-disk
token file keep it. A rotating AS still wins: only None fields are filled.
Tests: two invariants on the real HermesMCPOAuthProvider + HermesTokenStorage
(omitted -> preserved in memory and on disk; provided -> rotated). The
carry-forward test is red on main.
2026-09-08 17:44:51 -07:00
..
2026-09-08 17:03:01 -07:00
2026-09-08 02:26:39 +05:30
2026-09-02 22:36:16 -07:00
2026-09-07 12:50:29 -07:00
2026-09-02 22:36:16 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 13:49:57 -07:00
2026-09-07 14:30:41 -07:00
2026-09-07 14:30:41 -07:00
2026-09-03 13:49:57 -07:00
2026-09-03 13:49:57 -07:00
2026-09-03 13:49:57 -07:00
2026-09-03 13:49:57 -07:00
2026-09-07 08:13:38 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 14:16:57 -07:00
2026-09-02 22:36:16 -07:00
2026-09-02 22:36:16 -07:00
2026-09-02 22:36:15 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 16:48:29 -07:00
2026-09-07 16:48:29 -07:00
2026-09-06 13:08:31 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 14:16:54 -07:00
2026-09-03 14:16:54 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 13:49:57 -07:00
2026-09-03 14:16:54 -07:00
2026-09-02 22:47:50 -07:00
2026-09-02 22:47:50 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 14:16:54 -07:00
2026-09-03 14:25:33 -07:00
2026-09-03 14:16:54 -07:00
2026-09-03 14:16:54 -07:00
2026-09-06 23:31:05 +05:30
2026-09-03 14:16:54 -07:00
2026-09-03 14:16:54 -07:00
2026-09-06 23:31:05 +05:30
2026-09-03 14:16:54 -07:00
2026-09-05 18:46:16 +05:30
2026-09-03 14:16:54 -07:00
2026-09-04 00:15:16 -07:00
2026-09-04 08:30:32 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 06:00:46 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 09:44:26 -07:00
2026-09-04 00:15:16 -07:00
2026-09-02 22:36:16 -07:00
2026-09-07 07:10:28 -07:00
2026-09-02 23:08:22 -07:00
2026-09-07 06:12:24 -07:00
2026-09-05 18:46:53 +05:30
2026-09-03 13:24:04 -07:00
2026-09-02 22:36:16 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 08:18:56 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 16:48:29 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 00:10:18 -07:00
2026-09-07 12:50:29 -07:00
2026-09-08 02:26:05 +05:30
2026-09-07 12:50:29 -07:00
2026-09-06 05:03:20 -07:00
2026-09-08 03:06:30 -07:00
2026-09-06 12:02:43 -07:00
2026-09-03 09:44:26 -07:00
2026-09-02 19:43:56 -07:00
2026-09-08 13:38:18 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 00:10:18 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 13:24:04 -07:00
2026-09-03 17:13:22 -07:00
2026-09-02 22:30:06 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 17:13:22 -07:00
2026-09-02 22:48:08 -07:00
2026-09-03 03:31:03 -07:00
2026-09-03 13:33:47 -07:00
2026-09-07 00:28:46 +05:30
2026-09-07 00:28:46 +05:30
2026-09-03 13:28:22 -07:00
2026-09-03 13:10:52 -07:00
2026-09-03 13:30:27 -07:00
2026-09-03 13:30:27 -07:00
2026-09-06 12:05:53 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 13:53:03 -07:00
2026-09-02 22:50:57 -07:00
2026-09-08 14:57:15 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 13:24:04 -07:00
2026-09-02 22:06:11 -07:00
2026-09-05 13:51:06 -07:00
2026-09-07 04:46:54 -07:00
2026-09-07 14:16:57 -07:00
2026-09-07 06:35:14 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 00:11:01 -07:00
2026-09-03 02:24:06 +05:30
2026-09-07 08:22:35 -07:00
2026-09-03 09:44:26 -07:00
2026-09-08 17:44:51 -07:00
2026-09-07 08:22:35 -07:00
2026-09-03 17:13:22 -07:00
2026-09-06 23:11:12 +05:30
2026-09-02 23:56:55 -07:00
2026-09-07 07:10:28 -07:00
2026-09-03 13:28:47 -07:00
2026-09-06 13:18:19 -07:00
2026-09-06 13:18:19 -07:00
2026-09-03 13:28:47 -07:00
2026-09-03 13:28:47 -07:00
2026-09-06 13:18:19 -07:00
2026-09-03 13:28:47 -07:00
2026-09-03 13:28:47 -07:00
2026-09-07 22:47:33 +05:30
2026-09-03 09:44:26 -07:00
2026-09-07 22:47:33 +05:30
2026-09-03 13:28:47 -07:00
2026-09-07 07:04:52 -07:00
2026-09-06 14:53:13 +05:30
2026-09-04 00:15:16 -07:00
2026-09-03 01:43:42 -07:00
2026-09-04 00:15:16 -07:00
2026-09-02 22:59:19 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 22:47:33 +05:30
2026-09-04 00:15:16 -07:00
2026-09-02 23:56:07 -07:00
2026-09-03 17:13:22 -07:00
2026-09-07 08:25:33 -07:00
2026-09-07 12:50:29 -07:00
2026-09-07 08:25:33 -07:00
2026-09-08 22:35:39 +05:30
2026-09-03 09:44:26 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 17:13:22 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 17:13:22 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 08:14:51 -07:00
2026-09-03 13:49:57 -07:00
2026-09-03 13:12:50 -07:00
2026-09-03 01:36:04 -07:00
2026-09-08 17:51:35 +10:00
2026-09-03 13:46:50 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 01:41:16 -07:00
2026-09-03 17:13:22 -07:00
2026-09-04 08:15:22 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 13:33:47 -07:00
2026-09-04 08:15:22 -07:00
2026-09-03 00:55:09 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 00:55:09 -07:00
2026-09-03 17:13:22 -07:00
2026-09-07 07:05:59 -07:00
2026-09-03 09:44:26 -07:00
2026-09-07 05:59:43 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 13:22:48 -07:00
2026-09-03 13:22:48 -07:00
2026-09-02 21:42:18 -07:00
2026-09-02 21:42:18 -07:00
2026-09-04 00:15:16 -07:00
2026-09-06 07:17:03 -07:00
2026-09-03 00:05:14 -07:00
2026-09-02 23:53:08 -07:00
2026-09-04 00:15:16 -07:00
2026-09-06 07:17:03 -07:00
2026-09-06 07:17:03 -07:00
2026-09-03 01:09:55 -07:00
2026-09-03 13:27:01 -07:00
2026-09-03 01:09:55 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 01:09:12 -07:00
2026-09-03 09:44:26 -07:00
2026-09-02 22:37:39 -07:00
2026-09-05 18:04:00 +05:30
2026-09-06 13:32:51 +05:30
2026-09-07 12:50:29 -07:00
2026-09-05 19:01:22 +05:30
2026-09-07 06:05:51 -07:00
2026-09-03 13:24:04 -07:00
2026-09-03 13:24:04 -07:00
2026-09-07 07:09:30 -07:00
2026-09-06 12:06:04 -07:00
2026-09-02 22:37:39 -07:00
2026-09-07 08:09:20 -07:00
2026-09-03 01:13:51 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 01:13:51 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 01:13:51 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 13:17:25 -07:00
2026-09-03 13:17:25 -07:00
2026-09-03 13:17:25 -07:00
2026-09-03 13:30:31 -07:00
2026-09-03 13:17:25 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 13:20:22 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 01:23:19 -07:00
2026-09-03 13:20:22 -07:00
2026-09-03 01:17:43 -07:00
2026-09-03 13:20:22 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 13:20:22 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 09:44:26 -07:00
2026-09-02 23:28:33 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 13:17:25 -07:00
2026-09-03 13:30:31 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 13:24:36 -07:00
2026-09-03 13:24:36 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 13:08:53 -07:00
2026-09-03 13:08:53 -07:00
2026-09-05 18:46:16 +05:30
2026-09-04 07:17:00 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 00:10:38 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 09:44:26 -07:00
2026-09-03 00:27:38 -07:00
2026-09-03 17:13:22 -07:00