Skip to content

fix(gateway): guard Teams multiplex listener ownership - #80825

Closed
JoelMTaylor wants to merge 1 commit into
NousResearch:mainfrom
JoelMTaylor:fix/teams-multiplex-listener-ownership
Closed

fix(gateway): guard Teams multiplex listener ownership#80825
JoelMTaylor wants to merge 1 commit into
NousResearch:mainfrom
JoelMTaylor:fix/teams-multiplex-listener-ownership

Conversation

@JoelMTaylor

Copy link
Copy Markdown
Contributor

Summary

  • classify Microsoft Teams as a host-port-binding gateway platform
  • expose the Teams default listener port in gateway topology reporting
  • reject Teams on secondary multiplex profiles with the existing degradable configuration error

Why

The Teams adapter always starts an HTTP listener on its configured port (3978 by default), but Teams was missing from the shared port-binding registry. In multiplex mode, secondary profiles could therefore attempt to start additional Teams listeners on the same host port, producing address-in-use failures and unreliable inbound delivery.

The default profile should own the shared listener and route profile-specific traffic through the existing multiplex URL prefixes.

Impact

Misconfigured secondary Teams profiles are skipped with an actionable warning instead of attempting a conflicting socket bind. Single-profile Teams gateways are unchanged.

Validation

scripts/run_tests.sh tests/gateway/test_multiplex_adapter_registry.py --file-timeout 60 -- -q

Result: 16 passed.

@alt-glitch alt-glitch added type/bug Something isn't working comp/gateway Gateway runner, session dispatch, delivery comp/cli CLI entry point, hermes_cli/, setup wizard area/config Config system, migrations, profiles P3 Low — cosmetic, nice to have sweeper:risk-message-delivery Sweeper risk: may drop, duplicate, misroute, or suppress messages sweeper:risk-compatibility Sweeper risk: may break existing users, config, migrations, defaults, or upgrades labels Aug 7, 2026
teknium1 added a commit that referenced this pull request Sep 2, 2026
teknium1 added a commit that referenced this pull request Sep 2, 2026
teknium1 added a commit that referenced this pull request Sep 2, 2026
teknium1 added a commit that referenced this pull request Sep 2, 2026
teknium1 added a commit that referenced this pull request Sep 2, 2026
teknium1 added a commit that referenced this pull request Sep 2, 2026
teknium1 added a commit that referenced this pull request Sep 2, 2026
@teknium1

teknium1 commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Thanks @JoelMTaylor — Merged via #101252 (2e25b47) on current main.

Your commits from this PR were cherry-picked onto the salvage branch with your git authorship preserved, so the credit is yours in git log.

Closing this PR since the work is now on main.

@teknium1 teknium1 closed this Sep 2, 2026
melon-xf added a commit to melon-xf/hermes-agent that referenced this pull request Sep 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/config Config system, migrations, profiles comp/cli CLI entry point, hermes_cli/, setup wizard comp/gateway Gateway runner, session dispatch, delivery P3 Low — cosmetic, nice to have sweeper:risk-compatibility Sweeper risk: may break existing users, config, migrations, defaults, or upgrades sweeper:risk-message-delivery Sweeper risk: may drop, duplicate, misroute, or suppress messages type/bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants