{"repo":"NousResearch/hermes-agent","public_id":"80026","display_label":"Multiplex gateway auth allowlist cross-profile leak fix","summary":"A bug where the Discord multiplex gateway's second auth gate could incorrectly apply another profile's allowlist, and the corresponding fix to isolate auth environment under multiplex to prevent this cross-profile leak.","subsystem":"gateway","counts":{"members":4,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":1,"attempt_prs":2},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":93446,"merged_at":"2026-08-24T03:00:31+00:00"},"resolution":{"state":"unresolved","by":null},"freshness":{"state":"verified","last_verified_at":"2026-08-24T03:00:31+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.5},"fix_edges":[{"issue_number":72348,"pr_number":93446,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false,"pr_merged_at":"2026-08-24T03:00:31+00:00"},{"issue_number":80026,"pr_number":93446,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false,"pr_merged_at":"2026-08-24T03:00:31+00:00"},{"issue_number":93157,"pr_number":93446,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-08-24T03:00:31+00:00"}],"members":[{"kind":"issue","number":80026,"title":"[Bug]: Discord multiplex gateway second auth gate can apply another     profile’s allowlist after #75970","url":null,"state":"closed"},{"kind":"pr","number":80238,"title":"fix(gateway): isolate _auth_env under multiplex to prevent cross-profile allowlist leak (#80026)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"2912c36aa","number":0},{"kind":"pr","value":"#93446","number":93446}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false},{"kind":"pr","number":80360,"title":"fix(gateway): stop multiplex second auth gate from leaking allowlists…","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"2912c36aa","number":0},{"kind":"pr","value":"#93446","number":93446}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false},{"kind":"pr","number":93446,"title":"fix(gateway): multiplex profiles no longer inherit another profile's allowlist; bot_relay stops running roster fields as code (#93157)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["gateway/authz_mixin.py","tests/agent/test_secret_scope_tier1_migration.py","tests/gateway/test_qqbot_scope_paths.py","tests/tools/test_bot_relay.py","tools/bot_relay.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}