{"repo":"NousResearch/hermes-agent","public_id":"139148","display_label":"Discord durable re-authorization role gate reading allowed_roles config","summary":"Most members concern Discord durable re-authorization not honoring platforms.discord.allowed_roles, with several PRs proposing to resolve the role gate from the platform block or gateway loader as ingress does. One member is broader, bundling this with A2A admission, refused Bot receipts, and headless peer Bot Chat.","subsystem":null,"counts":{"members":5,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":1,"attempt_prs":3},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":139471},"resolution":{"state":"resolved","by":"pr-139471"},"freshness":{"state":"verified","last_verified_at":"2026-10-16T03:59:48+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.4},"fix_edges":[{"issue_number":139148,"pr_number":139471,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":139199,"pr_number":139471,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true}],"members":[{"kind":"issue","number":139148,"title":"[Bug]: Discord durable re-authorization ignores platforms.discord.allowed_roles, dropping role-authorized messages with permission_denied","url":null,"state":"closed"},{"kind":"pr","number":139170,"title":"fix(discord): resolve the durable re-authorization role gate from the platform block","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#139471","number":139471},{"kind":"pr","value":"#139148","number":139148}],"category":"uncategorized","implication":"needs_llm"},"merged":false},{"kind":"pr","number":139171,"title":"fix(discord): durable re-authorization reads allowed_roles from the platforms block like ingress","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#139170","number":139170}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":139471,"title":"fix(gateway): Discord role re-auth, A2A admission, refused Bot receipts and headless peer Bot Chat","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["apps/desktop/src/plugins/hermes-bots/relay.test.ts","apps/desktop/src/plugins/hermes-bots/relay.ts","apps/shared/src/gateway-contract.generated.ts","apps/shared/src/gateway-contract.openrpc.json","contributors/emails/[redacted:email]","gateway/platforms/api_server.py","gateway/platforms/api_server_bot_chat.py","gateway/session_bot.py","gateway/session_bot_mailbox.py","gateway/session_envelope.py","plugins/platforms/discord/adapter.py","plugins/platforms/discord/adapter_authorization.py","tests/gateway/test_bot_receipt_refusal.py","tests/gateway/test_peer_dm_bot_chat_headless.py","tests/gateway/test_upstream_native_admission.py","tests/plugins/platforms/test_discord_reauthorize_allowed_roles.py","tui_gateway/contracts/canonical_projections.py"]},{"kind":"pr","number":139501,"title":"fix(discord): resolve durable role re-authorization through the gateway loader","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#139471","number":139471},{"kind":"pr","value":"#139148","number":139148}],"category":"superseded_by_pr","implication":"superseded"},"merged":false}],"trust":{"default_tier":"verified","includes_suggested":false}}