Teknium
adf23550f5
fix(tools): profile-scoped checkpoint/snapshot paths, tool caches, TZ and schema paths under multiplex
...
Under `gateway.multiplex_profiles` one gateway process serves every profile
under ~/.hermes/profiles/NAME/; each routed turn runs with a context-local
HERMES_HOME override while `os.environ` still holds the DEFAULT profile's
values. Anything evaluated once at import, or memoised in a single unkeyed
module slot, therefore freezes the LAUNCH profile's value and leaks it into
every other profile's turns. This lands the tools-side half of that class:
- tools/process_registry.py, tools/environments/{modal,singularity}.py:
`_checkpoint_path()` / `_snapshot_store()` resolve `get_hermes_home()` at
call time (same seam as `tools/skills_tool._skills_dir`, so the existing
`monkeypatch.setattr(CHECKPOINT_PATH)` test sites keep working). Completes
the checkpoint_manager / sticker_cache half cherry-picked from #56315 .
- plugins/platforms/feishu/feishu_comment_rules.py: `_MtimeCache` is now
path-keyed (accepts a Path or a zero-arg resolver, one (mtime, data) slot
per resolved path) with `invalidate()`; `_rules_file()` / `_pairing_file()`
resolve the routed profile's files. Proposed in #63962 .
- tools/tool_output_limits.py, tools/browser_tool.py, tools/browser_camofox.py:
the process-lifetime config caches are dicts keyed by `hermes_home_key()`;
the `_X_resolved` flags and the lifecycle reset keep their shape.
tools/file_tools.py drops its private `file_read_max_chars` memo and reads
the already mtime+path-cached `load_config_readonly()`.
- hermes_time.py: `get_timezone_name()`; when `is_multiplex_active()` the
env `HERMES_TIMEZONE` (bridged from the default profile's config at gateway
startup) is ignored in favour of the routed profile's config.yaml. Both
sandbox TZ sites (code_execution_env/_tool) now use it.
- tools/cronjob_tools.py, tools/tts_tool.py, tools/skill_manager_tool.py:
the static schema text is profile-neutral and `dynamic_schema_overrides=`
rebuilds the `display_hermes_home()` / create-dir hint per
`get_definitions()`, so a routed profile's model sees its own paths.
Refs #95685 .
Co-authored-by: Nathan Shan <nathanielcrush51@gmail.com >
(cherry picked from commit 6d3fc6b07b3155c6196b1fd61a829283f1d7855c)
2026-09-11 15:44:00 -07:00
..
2026-09-03 13:12:50 -07:00
2026-09-11 14:02:08 +10:00
2026-09-03 02:17:01 +05:30
2026-08-31 11:47:16 -07:00
2026-09-10 23:45:03 +05:30
2026-09-02 16:26:11 -07:00
2026-09-07 22:47:33 +05:30
2026-09-02 16:26:11 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 17:06:54 -07:00
2026-09-07 06:10:54 -07:00
2026-09-11 15:28:00 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-11 02:24:55 -07:00
2026-09-11 15:26:46 -07:00
2026-09-10 10:27:07 -07:00
2026-09-09 10:55:32 -07:00
2026-09-03 19:33:28 -07:00
2026-08-21 21:53:11 +05:30
2026-09-01 02:14:35 -07:00
2026-08-27 20:53:02 -07:00
2026-08-23 03:57:47 -07:00
2026-08-19 22:56:14 -07:00
2026-08-31 01:04:11 -07:00
2026-08-31 01:04:11 -07:00
2026-09-03 13:12:50 -07:00
2026-08-31 01:04:11 -07:00
2026-09-10 10:27:07 -07:00
2026-08-29 18:23:07 -07:00
2026-09-10 13:23:24 -07:00
2026-09-07 06:00:05 -07:00
2026-08-27 07:33:36 -07:00
2026-09-02 16:11:50 -07:00
2026-08-20 19:56:01 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-03 01:58:56 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-11 15:26:09 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-03 01:58:56 +05:30
2026-09-10 10:27:07 -07:00
2026-09-07 22:47:33 +05:30
2026-08-21 22:33:45 +05:30
2026-08-21 22:54:04 +05:30
2026-09-02 13:30:50 -07:00
2026-08-21 22:33:45 +05:30
2026-09-03 14:21:52 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-11 15:28:00 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 14:16:57 -07:00
2026-09-10 12:08:51 +10:00
2026-08-31 07:28:30 -07:00
2026-08-31 09:05:41 -07:00
2026-08-31 09:05:41 -07:00
2026-08-31 07:30:44 -07:00
2026-08-31 20:57:30 +05:30
2026-08-31 09:49:30 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 06:10:54 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-08-20 19:56:01 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 06:10:54 -07:00
2026-09-02 15:32:49 -07:00
2026-09-07 22:47:33 +05:30
2026-09-03 11:27:55 +05:30
2026-09-07 14:16:57 -07:00
2026-09-07 14:16:57 -07:00
2026-09-07 14:16:57 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 16:26:11 -07:00
2026-08-31 09:57:13 -07:00
2026-09-07 22:47:33 +05:30
2026-08-27 12:42:38 +05:30
2026-09-02 16:26:11 -07:00
2026-08-31 12:21:01 -07:00
2026-09-07 06:10:54 -07:00
2026-09-07 22:47:33 +05:30
2026-08-26 09:59:17 -07:00
2026-08-22 16:45:00 -07:00
2026-08-22 18:05:26 -07:00
2026-09-03 19:33:28 -07:00
2026-09-03 13:38:36 -07:00
2026-08-27 20:39:11 +05:30
2026-09-03 14:18:25 -07:00
2026-09-03 13:12:50 -07:00
2026-09-07 22:47:33 +05:30
2026-09-08 17:51:35 +10:00
2026-09-07 04:46:20 -07:00
2026-09-02 13:30:50 -07:00
2026-09-07 22:47:33 +05:30
2026-09-02 13:30:50 -07:00
2026-09-02 00:56:52 -07:00
2026-09-07 06:00:05 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-11 15:29:15 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 07:06:29 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-03 02:17:01 +05:30
2026-09-07 22:47:33 +05:30
2026-08-22 14:55:04 +05:30
2026-09-02 14:06:32 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-03 17:45:53 -07:00
2026-09-03 17:00:26 -07:00
2026-08-31 06:28:25 -07:00
2026-09-02 14:06:32 -07:00
2026-08-27 07:33:36 -07:00
2026-09-09 12:16:56 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-08-20 15:31:21 +10:00
2026-09-07 22:47:33 +05:30
2026-09-06 21:38:34 +05:30
2026-09-02 05:32:31 -07:00
2026-09-07 22:47:33 +05:30
2026-09-02 15:38:08 -07:00
2026-09-07 22:47:33 +05:30
2026-09-03 13:12:50 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 14:11:18 -07:00
2026-09-02 16:11:50 -07:00
2026-09-07 22:47:33 +05:30
2026-08-31 10:54:58 -07:00
2026-09-02 06:47:30 -07:00
2026-09-11 15:44:00 -07:00
2026-09-07 22:47:33 +05:30
2026-09-10 18:12:02 -07:00
2026-09-07 22:47:33 +05:30
2026-09-02 06:47:30 -07:00
2026-09-07 22:47:33 +05:30
2026-09-03 09:32:38 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-11 03:45:33 +05:30
2026-09-11 03:45:33 +05:30
2026-09-11 11:54:49 -07:00
2026-09-07 22:47:33 +05:30
2026-08-29 20:57:55 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 04:13:02 -07:00
2026-09-07 22:47:33 +05:30
2026-09-02 10:55:57 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-11 11:54:49 -07:00
2026-09-07 22:47:33 +05:30
2026-09-03 13:12:50 -07:00
2026-09-02 05:55:36 -07:00
2026-09-02 05:55:36 -07:00
2026-09-07 14:16:57 -07:00
2026-09-07 14:16:57 -07:00
2026-09-07 14:16:57 -07:00
2026-09-07 14:16:57 -07:00
2026-09-07 14:16:57 -07:00
2026-09-07 14:16:57 -07:00
2026-08-31 01:04:11 -07:00
2026-08-31 01:04:11 -07:00
2026-09-03 13:49:57 -07:00
2026-09-01 10:52:42 -07:00
2026-08-31 01:04:11 -07:00
2026-09-02 13:30:50 -07:00
2026-08-30 20:39:58 -07:00
2026-08-30 22:19:06 -07:00
2026-09-11 06:21:48 -07:00
2026-09-03 14:18:25 -07:00
2026-08-31 09:57:13 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-08-20 15:31:21 +10:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 07:01:23 -07:00
2026-09-03 13:12:50 -07:00
2026-09-07 14:16:57 -07:00
2026-09-03 13:48:14 -07:00
2026-09-07 14:16:57 -07:00
2026-09-03 13:48:14 -07:00
2026-09-07 14:16:57 -07:00
2026-09-03 13:48:14 -07:00
2026-09-07 14:16:57 -07:00
2026-09-07 14:16:57 -07:00
2026-09-07 14:16:57 -07:00
2026-09-07 14:16:57 -07:00
2026-08-31 09:56:54 -07:00
2026-09-09 11:47:55 -07:00
2026-09-11 03:45:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-03 13:12:50 -07:00
2026-09-02 07:01:23 -07:00
2026-09-09 10:43:58 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-08-25 13:25:48 +05:30
2026-09-09 09:45:54 -07:00
2026-09-03 13:46:50 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-11 03:45:33 +05:30
2026-09-02 07:01:23 -07:00
2026-09-11 15:28:00 -07:00
2026-08-29 07:25:17 -07:00
2026-09-07 22:47:33 +05:30
2026-09-03 13:29:55 -07:00
2026-09-10 18:13:53 -07:00
2026-09-11 15:28:00 -07:00
2026-09-11 15:28:37 -07:00
2026-09-02 06:48:31 -07:00
2026-09-09 12:20:21 +05:30
2026-09-10 18:17:22 -07:00
2026-09-02 06:19:03 -07:00
2026-09-11 15:28:37 -07:00
2026-09-11 15:29:15 -07:00
2026-09-11 15:44:00 -07:00
2026-09-02 06:48:31 -07:00
2026-09-11 15:28:00 -07:00
2026-09-11 15:27:23 -07:00
2026-09-11 15:26:09 -07:00
2026-08-23 03:57:47 -07:00
2026-09-11 15:29:15 -07:00
2026-09-07 22:47:33 +05:30
2026-09-10 23:45:03 +05:30
2026-08-20 15:31:21 +10:00
2026-09-02 07:01:23 -07:00
2026-09-03 13:46:50 -07:00
2026-09-07 06:15:43 -07:00
2026-08-24 03:20:46 -07:00
2026-09-09 09:21:46 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-08-27 07:33:36 -07:00
2026-09-02 06:36:16 -07:00
2026-09-07 22:47:33 +05:30
2026-08-24 03:20:06 -07:00
2026-09-10 18:10:48 -07:00
2026-09-02 13:31:44 -07:00
2026-09-03 13:12:50 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 06:59:11 -07:00
2026-09-08 17:51:35 +10:00
2026-08-23 20:00:30 -07:00
2026-09-11 15:26:09 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-09 13:06:23 +05:30
2026-09-09 12:20:51 +05:30
2026-09-02 06:48:31 -07:00
2026-08-23 18:25:12 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 14:16:57 -07:00
2026-09-07 14:16:57 -07:00
2026-08-20 15:31:21 +10:00
2026-09-07 22:47:33 +05:30
2026-09-03 17:00:26 -07:00
2026-09-05 16:09:46 +05:30
2026-08-24 15:37:22 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 16:11:50 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-08 04:38:47 -07:00
2026-08-31 14:54:18 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 00:17:54 -07:00
2026-09-07 22:47:33 +05:30
2026-09-02 14:36:11 +10:00
2026-09-04 15:41:27 -03:00
2026-09-10 12:08:51 +10:00
2026-09-03 14:18:25 -07:00
2026-08-21 16:25:24 +05:30
2026-09-06 20:49:30 +05:30
2026-09-07 22:47:33 +05:30
2026-09-10 10:27:07 -07:00
2026-09-07 22:47:33 +05:30
2026-09-03 13:12:50 -07:00
2026-09-02 16:57:21 +05:30
2026-08-31 11:23:48 -07:00
2026-09-03 13:46:50 -07:00
2026-08-31 14:02:55 -07:00
2026-09-11 06:23:23 -07:00
2026-08-31 12:32:33 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-03 14:00:59 -07:00
2026-09-07 06:10:54 -07:00
2026-08-30 05:16:10 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 06:10:54 -07:00
2026-09-07 22:47:33 +05:30
2026-08-31 12:21:01 -07:00
2026-09-07 06:10:54 -07:00
2026-09-07 06:10:54 -07:00
2026-09-07 06:10:54 -07:00
2026-09-07 06:10:54 -07:00
2026-09-07 06:10:54 -07:00
2026-09-03 13:12:50 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 20:43:06 +05:30
2026-09-03 13:46:50 -07:00
2026-09-10 12:08:51 +10:00
2026-09-02 00:03:36 -07:00
2026-09-09 11:05:15 -07:00
2026-09-07 22:47:33 +05:30
2026-09-01 10:51:37 -07:00
2026-09-02 14:06:48 -07:00
2026-09-02 05:34:11 -07:00
2026-09-07 06:10:54 -07:00
2026-08-27 15:33:32 +10:00
2026-09-07 22:47:33 +05:30
2026-08-26 15:54:53 -07:00
2026-09-07 22:47:33 +05:30
2026-08-27 15:33:32 +10:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-08-27 15:33:32 +10:00
2026-08-20 15:31:21 +10:00
2026-08-26 15:54:53 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 06:36:16 -07:00
2026-09-02 06:36:16 -07:00
2026-09-10 18:13:53 -07:00
2026-08-20 15:31:21 +10:00
2026-09-07 22:47:33 +05:30
2026-09-01 10:51:37 -07:00
2026-09-09 11:14:36 -07:00
2026-09-07 06:10:54 -07:00
2026-09-03 13:46:50 -07:00
2026-09-07 22:47:33 +05:30
2026-09-11 03:45:33 +05:30
2026-09-09 09:55:52 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-11 15:26:09 -07:00
2026-08-20 15:31:21 +10:00
2026-08-20 15:31:21 +10:00
2026-08-27 07:33:36 -07:00
2026-08-27 07:33:36 -07:00
2026-09-02 16:24:25 -07:00
2026-08-20 15:31:21 +10:00
2026-09-09 10:59:52 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-03 13:12:50 -07:00
2026-09-07 22:47:33 +05:30
2026-09-10 12:08:51 +10:00
2026-09-03 13:04:17 -07:00
2026-09-07 22:47:33 +05:30
2026-09-11 11:54:49 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 06:08:09 -07:00
2026-09-07 22:47:33 +05:30
2026-08-21 16:25:24 +05:30
2026-08-31 12:28:49 -07:00
2026-08-31 12:28:49 -07:00
2026-08-21 16:25:24 +05:30
2026-09-01 08:24:25 -07:00
2026-08-21 16:25:24 +05:30
2026-09-07 22:47:33 +05:30
2026-09-01 12:08:34 -07:00
2026-08-21 16:25:24 +05:30
2026-09-03 17:00:26 -07:00
2026-09-09 10:37:37 -07:00
2026-08-24 17:04:55 +05:30
2026-08-29 20:57:55 -07:00
2026-08-29 20:57:55 -07:00
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-09-07 22:47:33 +05:30
2026-08-21 16:25:24 +05:30
2026-08-31 12:28:49 -07:00
2026-08-31 12:28:49 -07:00
2026-08-21 16:25:24 +05:30
2026-09-07 22:47:33 +05:30
2026-08-21 16:25:24 +05:30
2026-08-23 19:26:41 -07:00
2026-09-03 01:29:35 -07:00
2026-09-07 22:47:33 +05:30
2026-08-21 16:25:24 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-08-21 16:25:24 +05:30
2026-09-03 03:47:38 +05:30
2026-08-25 12:07:36 +05:30
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-08-29 20:57:55 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 05:59:24 -07:00
2026-09-02 05:59:24 -07:00
2026-08-21 16:25:24 +05:30
2026-09-02 14:06:32 -07:00
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 15:41:11 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 00:53:06 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-08-23 17:45:47 -05:00
2026-09-03 13:12:50 -07:00
2026-09-03 13:12:50 -07:00
2026-09-02 05:33:13 -07:00
2026-09-07 22:47:33 +05:30
2026-09-10 10:27:07 -07:00
2026-09-11 15:26:09 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-02 16:25:35 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-08-29 05:57:13 -07:00
2026-09-01 10:11:07 -07:00
2026-09-03 13:46:50 -07:00
2026-09-10 18:16:43 -07:00
2026-09-10 18:16:43 -07:00
2026-09-10 18:16:43 -07:00
2026-08-28 07:50:51 -07:00
2026-09-10 18:16:43 -07:00
2026-09-07 22:47:33 +05:30
2026-09-10 12:08:51 +10:00
2026-08-27 07:33:36 -07:00
2026-09-03 13:04:17 -07:00
2026-09-03 13:04:17 -07:00
2026-09-07 22:47:33 +05:30
2026-08-24 03:20:06 -07:00
2026-09-07 22:47:33 +05:30
2026-08-31 10:41:54 -07:00
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-09-07 22:47:33 +05:30
2026-08-24 03:20:06 -07:00