v2.0.0
Major bump because the MCP tool surface changed: hosts that call setup or the old talking-stick tools need an update.
Breaking
- The five talking-stick tools (
take_floor,pass_floor,drop_floor,raise_hand,floor_status) are now onefloor(action, scope="all", reason=None), withactionbeingtake|pass|drop|raise|status. Per-action behaviour and return shapes are unchanged, so migrating is a rename. - The
setuptool is gone. A session arms itself on its first tool call and fetches the protocol from the hub;joinhands the protocol back. Read-only tools (list_peers,ping,list_channels,list_forms,floor(action="status")) still work before joining, so you can scout a room before committing to it. - Tool docstrings are trimmed of prose the hub-served protocol already carries. The bridge's tool-description footprint drops from roughly 4300 to 2300 tokens.
- The operating
PROTOCOL_VERSIONmoves to 16.
Fixed
- The bridge no longer serves a superseded protocol under a fresh version label. When
joinfound the session behind, it handed the new text to the caller but left the old text cached while still advancing the revision counter, so the nextjoinbelieved itself current and served the stale protocol under the new label. A session arms only once, so nothing refreshed the cache and only a restart cleared it. That is exactly the drift the mandatoryPROTOCOL_VERSIONbump exists to prevent. - Armed-but-unjoined MCP HTTP sessions no longer leak. A session that armed on a first tool call but never joined owns no hub client, so the sweep (which only inspected joined sessions) could never see it and it lived for the process lifetime. Those records now age out against the same
client_ttlidle window a joined peer gets, while joined records keep following the hub's client verdict, because a listening peer's liveness comes from its watcher polls rather than its tool calls. Records left behind byleaveget reaped too.
Full changelog: v1.5.0...v2.0.0
What's Changed
- docs: add a testimonial to the README by @obeone in #53
- refactor: slim the MCP tool surface (floor fusion, setup removal, docstring trim) by @obeone in #54
- docs(changelog): cut 2.0.0 by @obeone in #56
Full Changelog: v1.5.0...v2.0.0