teknium1
3ed40556ce
fix(profiles): a child spawned for another profile no longer inherits the spawner's authorization gates
...
A `hermes -p B` child built from a process that loaded profile A's env (a gateway, the
dashboard, the post-update fleet restart) started with A's `DISCORD_ALLOWED_CHANNELS`,
`TELEGRAM_GROUP_ALLOWED_CHATS`, `GATEWAY_ALLOW_ALL_USERS`... and enforced them as its
own: gates are not credentials (no secret scrub sees them), a unit-file `Environment=`
or operator export is in no dotenv (no name-list strip sees them), and B's own `.env`
rarely defines the key (its dotenv load never overwrites the inherited value). Observed
as profile B's gateway rejecting every message in B's own channel after a per-profile
restart issued from A (#113270 ).
- `local_env_policy.is_profile_gate_env` / `strip_profile_gate_env`: gates matched by
shape (`_ALLOWED_`, `_ALLOW_ALL_`, `_ALLOW_FROM`, `_ALLOW_BOTS`, `_IGNORED_CHANNELS`,
...), never `HERMES_*`, so a gate added to any adapter is covered without a second edit.
- `strip_launch_profile_env` drops them on its existing routed-home branch: the seam
`served_profile_child_env`, the kanban dispatcher, cron workers and the dashboard
action env already funnel through (the dashboard site now calls it for its target).
Same-home children keep an operator export.
- `update_restart_recovery._child_environment(profile)`: the one site that bypassed
every helper (bare `os.environ.copy()` relaunching EVERY profile) strips gates when
the profile is not the one the updater runs as; the module stays stdlib-only at
import time.
Live: fresh-process `hermes_cli.update_restart_recovery --stdin` with three gates in
the updater env — base hands all three to profile b's relaunch, fixed hands none and
keeps them for the launch profile.
Refs #113270 ; supersedes #113308 (@yashraj4, static key list + always-strip; this keeps
same-profile children intact and covers the per-adapter gate set).
2026-09-18 15:11:47 -07:00
..
2026-09-16 17:09:50 -07:00
2026-09-18 09:24:54 -07:00
2026-09-18 15:11:47 -07:00
2026-09-17 09:02:55 -07:00
2026-09-03 17:13:22 -07:00
2026-09-15 04:12:13 -07:00
2026-09-17 20:38:43 +05:30
2026-09-11 19:39:12 -07:00
2026-09-17 09:04:38 -07:00
2026-09-03 13:49:57 -07:00
2026-09-15 21:46:37 -07:00
2026-09-03 13:49:57 -07:00
2026-09-17 09:04:38 -07:00
2026-09-17 00:34:50 -05:00
2026-09-17 21:17:26 +05:30
2026-09-18 10:44:29 -07:00
2026-09-18 09:19:04 -07:00
2026-09-18 10:44:29 -07:00
2026-09-16 22:25:33 -07:00
2026-09-18 09:19:04 -07:00
2026-09-03 17:13:22 -07:00
2026-09-12 01:35:05 -07:00
2026-09-16 16:59:03 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 13:49:57 -07:00
2026-09-18 09:19:04 -07:00
2026-09-18 10:28:40 -07:00
2026-09-15 06:16:38 -07:00
2026-09-11 19:39:12 -07:00
2026-09-03 14:16:54 -07:00
2026-09-13 12:35:36 -07:00
2026-09-16 16:57:03 -07:00
2026-09-03 14:16:54 -07:00
2026-09-03 14:16:54 -07:00
2026-09-15 06:16:38 -07:00
2026-09-18 10:29:47 -07:00
2026-09-10 10:35:07 -07:00
2026-09-17 09:02:55 -07:00
2026-09-18 10:29:47 -07:00
2026-09-17 09:02:55 -07:00
2026-09-15 04:56:01 -07:00
2026-09-13 05:09:43 -07:00
2026-09-16 14:34:22 -07:00
2026-09-18 10:38:08 -07:00
2026-09-03 17:13:22 -07:00
2026-09-16 17:47:50 -07:00
2026-09-04 00:15:16 -07:00
2026-09-18 10:04:57 -07:00
2026-09-18 12:49:13 -07:00
2026-09-15 03:45:41 -07:00
2026-09-15 03:45:41 -07:00
2026-09-11 19:39:12 -07:00
2026-09-15 04:13:47 -07:00
2026-09-18 11:07:56 -07:00
2026-09-15 18:41:46 -07:00
2026-09-16 16:56:46 -07:00
2026-09-08 02:26:05 +05:30
2026-09-15 04:12:13 -07:00
2026-09-18 09:52:36 -07:00
2026-09-10 10:23:12 -07:00
2026-09-06 12:02:43 -07:00
2026-09-13 21:05:42 -07:00
2026-09-15 18:40:52 -07:00
2026-09-18 09:29:44 -07:00
2026-09-03 17:13:22 -07:00
2026-09-15 03:45:41 -07:00
2026-09-03 17:13:22 -07:00
2026-09-03 17:13:22 -07:00
2026-09-18 10:04:57 -07:00
2026-09-03 17:13:22 -07:00
2026-09-09 11:46:36 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 17:13:22 -07:00
2026-09-18 09:54:45 -07:00
2026-09-03 13:33:47 -07:00
2026-09-19 01:46:29 +05:30
2026-09-18 09:54:45 -07:00
2026-09-18 10:10:40 -07:00
2026-09-18 10:38:08 -07:00
2026-09-15 03:57:24 -07:00
2026-09-17 21:17:26 +05:30
2026-09-19 00:33:58 +05:30
2026-09-03 17:13:22 -07:00
2026-09-12 21:55:07 -07:00
2026-09-16 16:59:03 -07:00
2026-09-13 21:03:11 -07:00
2026-09-16 16:42:47 -07:00
2026-09-16 16:42:47 -07:00
2026-09-11 19:39:12 -07:00
2026-09-16 17:21:14 -07:00
2026-09-18 09:29:44 -07:00
2026-09-18 12:46:28 -07:00
2026-09-12 12:32:55 -07:00
2026-09-17 00:11:27 -07:00
2026-09-10 02:21:16 +05:30
2026-09-16 14:34:59 -07:00
2026-09-18 09:20:07 -07:00
2026-09-15 19:00:42 -07:00
2026-09-18 12:47:49 -07:00
2026-09-18 12:47:49 -07:00
2026-09-18 12:47:49 -07:00
2026-09-03 17:13:22 -07:00
2026-09-10 02:21:16 +05:30
2026-09-18 09:58:12 -07:00
2026-09-15 19:04:29 -07:00
2026-09-13 05:09:43 -07:00
2026-09-18 10:25:46 -07:00
2026-09-18 12:48:42 -07:00
2026-09-15 04:12:13 -07:00
2026-09-17 19:06:29 -04:00
2026-09-16 21:15:37 +05:30
2026-09-12 01:35:05 -07:00
2026-09-13 15:41:01 -07:00
2026-09-07 22:47:33 +05:30
2026-09-15 04:55:14 -07:00
2026-09-11 15:27:23 -07:00
2026-09-18 09:45:32 -07:00
2026-09-18 12:48:42 -07:00
2026-09-18 12:48:42 -07:00
2026-09-16 00:32:15 -07:00
2026-09-09 12:19:13 +05:30
2026-09-04 00:15:16 -07:00
2026-09-04 00:15:16 -07:00
2026-09-03 17:13:22 -07:00
2026-09-13 20:46:22 -07:00
2026-09-12 21:13:40 -07:00
2026-09-04 00:15:16 -07:00
2026-09-16 17:01:30 -07:00
2026-09-03 17:13:22 -07:00
2026-09-11 19:58:07 -07:00
2026-09-18 01:43:35 +05:30
2026-09-16 00:32:15 -07:00
2026-09-18 12:49:13 -07:00
2026-09-12 22:09:19 -07:00
2026-09-04 00:15:16 -07:00
2026-09-18 09:23:48 -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-17 08:53:48 -07:00
2026-09-15 18:39:09 -07:00
2026-09-16 17:55:07 -07:00
2026-09-19 00:24:50 +05:30
2026-09-19 00:24:50 +05:30
2026-09-18 10:30:57 -07:00
2026-09-18 09:35:16 -07:00
2026-09-15 19:03:33 -07:00
2026-09-04 08:15:22 -07:00
2026-09-17 08:47:01 -07:00
2026-09-03 13:33:47 -07:00
2026-09-17 08:47:01 -07:00
2026-09-09 12:19:13 +05:30
2026-09-15 19:03:33 -07:00
2026-09-03 17:13:22 -07:00
2026-09-15 19:01:39 -07:00
2026-09-18 12:51:49 -07:00
2026-09-15 14:15:59 +05:30
2026-09-07 05:59:43 -07:00
2026-09-18 12:51:49 -07:00
2026-09-15 14:15:59 +05:30
2026-09-16 17:43:11 -07:00
2026-09-18 12:51:49 -07:00
2026-09-18 10:22:14 -07:00
2026-09-06 07:17:03 -07:00
2026-09-11 11:54:49 -07:00
2026-09-04 00:15:16 -07:00
2026-09-06 07:17:03 -07:00
2026-09-16 00:32:15 -07:00
2026-09-16 17:23:44 -07:00
2026-09-03 13:27:01 -07:00
2026-09-15 18:33:15 -07:00
2026-09-19 00:33:58 +05:30
2026-09-03 17:13:22 -07:00
2026-09-15 03:46:29 -07:00
2026-09-18 09:54:45 -07:00
2026-09-15 18:58:30 -07:00
2026-09-05 19:01:22 +05:30
2026-09-18 12:49:13 -07:00
2026-09-03 13:24:04 -07:00
2026-09-15 10:48:49 +05:30
2026-09-15 02:22:22 -05:00
2026-09-18 09:54:45 -07:00
2026-09-10 11:48:01 -07:00
2026-09-14 16:16:08 -07:00
2026-09-18 09:59:54 -07:00
2026-09-11 15:26:46 -07:00
2026-09-11 15:44:00 -07:00
2026-09-13 05:09:43 -07:00
2026-09-15 03:41:43 -07:00
2026-09-13 21:04:08 -07:00
2026-09-18 09:24:54 -07:00
2026-09-18 09:24:54 -07:00
2026-09-12 10:00:08 +05:30
2026-09-03 13:17:25 -07:00
2026-09-13 05:07:50 -07:00
2026-09-13 05:09:43 -07:00
2026-09-16 17:21:37 -07:00
2026-09-15 05:36:37 -07:00
2026-09-15 18:25:17 -07:00
2026-09-03 13:20:22 -07:00
2026-09-18 09:47:06 -07:00
2026-09-13 05:32:38 -07:00
2026-09-03 13:20:22 -07:00
2026-09-03 13:20:22 -07:00
2026-09-18 09:28:39 -07:00
2026-09-03 13:20:22 -07:00
2026-09-18 09:47:06 -07:00
2026-09-16 17:12:11 -07:00
2026-09-13 12:35:36 -07:00
2026-09-17 09:02:55 -07:00
2026-09-13 09:18:54 -07:00
2026-09-17 09:02:55 -07:00
2026-09-13 05:07:50 -07:00
2026-09-11 19:14:24 -07:00
2026-09-03 13:30:31 -07:00
2026-09-13 14:39:29 -07:00
2026-09-03 13:24:36 -07:00
2026-09-03 13:24:36 -07:00
2026-09-13 05:07:11 -07:00
2026-09-15 18:42:38 -07:00
2026-09-15 18:43:05 -07:00
2026-09-05 18:46:16 +05:30
2026-09-16 17:43:40 -07:00
2026-09-03 17:13:22 -07:00
2026-09-18 09:19:04 -07:00
2026-09-13 12:35:36 -07:00
2026-09-13 05:07:50 -07:00
2026-09-03 17:13:22 -07:00