Antoine Khater
c096a6935f
fix(auth): mirror Nous OAuth credentials to providers.nous on CLI login
...
`hermes auth add nous --type oauth` only wrote credential_pool.nous,
leaving providers.nous empty. When the Nous agent_key's 24h TTL expired,
run_agent.py's 401-recovery path called resolve_nous_runtime_credentials
(which reads providers.nous), got AuthError "Hermes is not logged into
Nous Portal", caught it as logger.debug (suppressed at INFO level), and
the agent died with "Non-retryable client error" — no signal to the
user that recovery even tried.
Introduce persist_nous_credentials() as the single source of truth for
Nous device-code login persistence. Both auth_commands (CLI) and
web_server (dashboard) now route through it, so pool and providers
stay in sync at write time.
Why: CLI-provisioned profiles couldn't recover from agent_key expiry,
producing silent daily outages 24h after first login. PR #6856/#6869
addressed adjacent issues but assumed providers.nous was populated;
this one wasn't being written.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-17 19:13:40 -07:00
..
2026-02-26 03:20:08 +03:00
2026-04-07 17:19:07 -07:00
2026-04-07 17:19:07 -07:00
2026-04-17 13:47:46 -07:00
2026-04-17 06:09:09 -07:00
2026-04-17 01:05:09 -07:00
2026-04-07 17:19:07 -07:00
2026-04-07 17:19:07 -07:00
2026-04-12 02:05:20 -07:00
2026-04-17 19:13:40 -07:00
2026-04-17 19:13:40 -07:00
2026-04-14 01:43:45 -07:00
2026-04-08 13:46:30 -07:00
2026-04-17 19:02:06 -07:00
2026-04-13 04:46:13 -07:00
2026-04-07 17:59:42 -07:00
2026-03-18 03:17:37 -07:00
2026-03-18 03:22:58 -07:00
2026-04-09 16:24:53 -07:00
2026-04-12 16:40:37 -07:00
2026-04-11 01:52:58 -07:00
2026-04-11 18:29:18 -05:00
2026-03-09 21:36:29 -07:00
2026-04-12 00:33:42 -07:00
2026-04-10 05:52:45 -07:00
2026-04-15 17:43:41 -05:00
2026-04-14 10:45:42 -07:00
2026-04-07 17:19:07 -07:00
2026-04-17 19:03:26 -07:00
2026-04-05 23:31:20 -07:00
2026-04-15 16:31:28 -07:00
2026-04-12 16:36:11 -07:00
2026-04-10 03:44:43 -07:00
2026-03-14 19:18:10 -07:00
2026-04-12 01:44:18 -07:00
2026-04-17 18:46:30 -07:00
2026-04-16 06:48:33 -07:00
2026-04-17 05:08:07 -07:00
2026-04-14 23:13:11 -07:00
2026-04-15 15:05:32 -07:00
2026-03-15 06:46:28 -07:00
2026-04-13 04:35:37 -07:00
2026-04-09 16:24:53 -07:00
2026-03-14 12:11:23 -07:00
2026-04-17 18:58:29 -07:00
2026-04-10 21:15:47 -07:00
2026-04-17 18:58:29 -07:00
2026-04-17 15:34:12 -07:00
2026-03-29 21:54:36 -07:00
2026-04-11 17:23:36 -07:00
2026-03-30 17:34:43 -07:00
2026-04-16 21:57:10 -07:00
2026-03-17 03:48:44 -07:00
2026-04-16 06:48:33 -07:00
2026-04-17 04:19:36 -07:00
2026-04-17 06:33:21 -07:00
2026-04-12 01:51:57 -07:00
2026-04-16 01:16:14 -07:00
2026-04-13 16:41:30 -07:00
2026-04-16 19:41:41 -07:00
2026-04-08 19:58:16 -07:00
2026-04-16 19:07:49 -05:00
2026-04-13 16:32:04 -07:00
2026-04-14 20:20:31 -07:00
2026-04-13 04:33:52 -07:00
2026-04-16 12:36:49 -07:00
2026-04-07 17:19:07 -07:00
2026-04-16 07:17:45 -07:00
2026-04-17 12:32:03 -07:00
2026-04-10 14:46:57 -07:00
2026-03-16 06:07:45 -07:00
2026-03-14 10:35:14 -07:00
2026-04-17 01:05:09 -07:00
2026-04-17 01:05:09 -07:00
2026-04-17 00:20:40 -07:00
2026-04-01 11:20:33 -07:00
2026-04-17 18:58:29 -07:00
2026-04-09 14:20:16 -07:00
2026-04-13 10:50:52 -07:00
2026-03-08 17:42:50 -07:00
2026-03-25 18:06:04 -07:00
2026-03-31 11:41:12 -07:00
2026-04-09 16:24:53 -07:00
2026-04-10 21:15:59 -07:00
2026-04-10 03:44:43 -07:00
2026-04-10 02:57:39 -07:00
2026-04-09 12:15:06 -07:00
2026-04-16 20:43:41 -07:00
2026-04-16 12:36:49 -07:00
2026-04-03 10:10:53 -07:00
2026-04-11 15:38:43 -07:00
2026-03-17 01:59:07 -07:00
2026-03-28 14:32:23 -07:00
2026-03-11 00:50:39 -07:00
2026-04-16 06:35:31 -07:00
2026-04-16 12:36:49 -07:00
2026-04-09 16:24:53 -07:00
2026-04-17 01:05:09 -07:00
2026-03-30 11:17:15 -07:00
2026-04-10 02:57:39 -07:00
2026-04-13 16:32:04 -07:00
2026-03-29 20:05:59 -07:00
2026-04-17 06:26:18 -07:00
2026-03-26 13:39:41 -07:00
2026-04-15 10:23:15 -05:00
2026-04-16 19:14:05 -05:00
2026-04-10 00:32:20 -07:00
2026-04-10 05:53:10 -07:00
2026-04-17 14:21:22 -07:00
2026-04-13 05:16:21 -07:00
2026-04-16 16:48:14 -07:00
2026-03-28 14:33:35 -07:00
2026-04-17 06:09:09 -07:00