hermes-agent/gateway
Shannon Sands d83ea4883b fix(gateway): inject keystore secrets without config.yaml and on refresh
Addresses final gateway keystore gap:
- move keystore injection outside the config.yaml existence branch so
  gateway/headless installs with only a keystore (and a stubbed .env)
  still receive credentials on import/startup
- re-run keystore injection in the long-lived gateway credential refresh
  path so rotated keystore secrets can take effect without restart
- fix keystore store methods to use short-lived sqlite connections instead
  of a persistent connection, avoiding database-locked failures during
  injectable secret reads from fresh processes
- add gateway regression tests for startup without config.yaml and refresh-
  path reinjection of keystore-backed secrets

Validation: targeted suite now 136 passing
2026-03-29 08:38:29 +10:00
..
platforms refactor: consolidate ~/.hermes directory layout with backward compat (#3610) 2026-03-28 15:22:19 -07:00
__init__.py Enhance CLI with multi-platform messaging integration and configuration management 2026-02-02 19:01:51 -08:00
channel_directory.py chore: remove ~100 unused imports across 55 files (#3016) 2026-03-25 15:02:03 -07:00
config.py feat(telegram): auto-discover fallback IPs via DoH when api.telegram.org is unreachable (#3376) 2026-03-27 04:03:13 -07:00
delivery.py chore: remove ~100 unused imports across 55 files (#3016) 2026-03-25 15:02:03 -07:00
hooks.py chore: remove ~100 unused imports across 55 files (#3016) 2026-03-25 15:02:03 -07:00
mirror.py chore: remove ~100 unused imports across 55 files (#3016) 2026-03-25 15:02:03 -07:00
pairing.py refactor: consolidate ~/.hermes directory layout with backward compat (#3610) 2026-03-28 15:22:19 -07:00
run.py fix(gateway): inject keystore secrets without config.yaml and on refresh 2026-03-29 08:38:29 +10:00
session.py fix: gateway token double-counting — use absolute set instead of increment (#3317) 2026-03-26 19:13:07 -07:00
status.py refactor: consolidate get_hermes_home() and parse_reasoning_effort() (#3062) 2026-03-25 15:54:28 -07:00
sticker_cache.py chore: remove ~100 unused imports across 55 files (#3016) 2026-03-25 15:02:03 -07:00
stream_consumer.py fix: handle message length overflow in streaming mode (#1783) 2026-03-17 11:00:52 -07:00