fix(status): show plugin-registered platforms in hermes status#44124
Open
AIalliAI wants to merge 1 commit into
Open
fix(status): show plugin-registered platforms in hermes status#44124AIalliAI wants to merge 1 commit into
AIalliAI wants to merge 1 commit into
Conversation
…s status show_status() read platform_registry.plugin_entries() without ever running plugin discovery on the 'hermes status' code path, so the registry was always empty and plugin-registered messaging platforms were silently omitted. Apply the same idempotent discover_plugins() pattern used by the other registry consumers (hermes_cli/gateway.py, gateway/config.py, cron/scheduler.py). Fixes NousResearch#44119 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
12 tasks
Contributor
Author
|
Requesting maintainer review — this is ready to land from my side. Standalone fork CI is pending first-run approval here; the rollup branch in #44061 carrying this session's batch is fully green on upstream CI (all test shards, typecheck, e2e). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
hermes statusnever showed plugin-registered messaging platforms (Google Chat, IRC, LINE, Mattermost, ntfy, etc.) — the Messaging Platforms section only listed built-ins.Root cause:
show_status()inhermes_cli/status.pyreadsplatform_registry.plugin_entries(), but nothing on thehermes statuscode path ever runs plugin discovery, so the registry is always empty and the plugin loop prints nothing. Every other consumer of the registry (hermes_cli/gateway.pyplatform enumeration,gateway/config.py,cron/scheduler.py) calls the idempotentdiscover_plugins()before reading it.Fix: apply the same pattern in
status.py— calldiscover_plugins()(wrapped in try/except like the existing block) right before readingplugin_entries().Before / after
Before (plugin platforms silently omitted):
After:
Testing
test_show_status_discovers_plugin_platforms— stubsdiscover_pluginsto register a fakePlatformEntryand asserts it shows up with(plugin). Fails on main, passes with the fix.tests/hermes_cli/test_status.py: 18 passed.hermes statuson a machine with bundled platform plugins: 10 plugin platforms now listed (0 before).Fixes #44119
🤖 Generated with Claude Code