Repository navigation
acpmux: _acpmux/sessions takes peer and status filters (paged), for the sidebar's Older row - #25054
Conversation
…e paging A machine group's Older row (closed chats of one peer, a page at a time) needs only that peer's closed sessions, not the whole multi-megabyte list (#24950 follow-up). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16f97-49ec-7ac0-8a7a-00dc57b9e443&host=cosmic-gray
… on base) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16f97-49ec-7ac0-8a7a-00dc57b9e443&host=cosmic-gray
|
cmux status (one comment, edited in place; each line is updated by the job that owns it) Review App of this head (app.zip, kept 1 day)
Gallery before/after for red: cmux-next checks (god files, concurrency, crash safety, l10n); no finished base run on 6cae8ed to compare; do not merge until green; see lane-rules Tour of Path-selected interactions
agent-pane-before: the media could not be published (refused 3 file(s) that show private names: 25054/fa77c018/next-agent-pane-before/shots/02-open-agent-chat.png (fleet Mac mini name); 25054/fa77c018/next-agent-pane-before/shots/03-queue-a-second-chat.)agent-pane-after: the media could not be published (refused 3 file(s) that show private names: 25054/fa77c018/next-agent-pane-after/shots/02-open-agent-chat.png (fleet Mac mini name); 25054/fa77c018/next-agent-pane-after/shots/03-queue-a-second-chat.pn)Tours are data in |
|
Owned by remote-sidebar-opus on cosmic-gray · session |
|
Found 16 test failures on Blacksmith runners: Failures
...and 6 more test failures. View all on Blacksmith: run 40156640198, run 40156640262
|
…sion); an empty filter is none Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a16f97-49ec-7ac0-8a7a-00dc57b9e443&host=cosmic-gray
|
Bead |
|
Shipped in:
|
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
Leo, 2026-10-24, word for word: "the whole ACP MUX thing, like that, it should just be able to show me, say on my sidebar, right? Like we already discussed this, like with the cloud icon, the group where, you know, on a different machine or whatever, there's the other agent sessions, the other workspaces running, but you guys aren't doing that yet."
Follow-up to #24950. The sidebar's machine groups count and list only live chats. The coordinator's note: "closed and archived ones go behind an 'Older' row, capped and paged". The peers hold about 1,175 closed sessions, and the only way to read them was the whole
_acpmux/sessionslist (about 9 MB here).Summary
_acpmux/sessions(and the page of_acpmux/watch, which sharessession_list_reply) takes two optional filters:peer(only that acpmux peer's sessions) andstatus(only that status, e.g.closed).limit/cursorpage through one machine's closed chats._acpmux/watchrefusespeerandstatuswith invalid params. Its events cover every session, so a filtered first page would promise a scope the events don't keep.SessionsParams(schema,deny_unknown_fields) gains both fields. The spec IR and the web types (acpmux-protocol:codegen) are regenerated.titleSourcefield (with itsdefault: null) that fix(cmux-next): persist first agent chat titles by default #24985 added to the schema without blessing the IR, soprotocol_ir_is_currentwas red on base for that reason too.The sidebar's Older row comes in a separate PR that uses this.
Testing
hub::session_pages::tests(unit, 4): filters before paging with a cursor; each filter alone; an empty filter is none; a watch refuses filters.fa77c01:cmux-tui-rust-check.sh all session_pages(fmt, clippy, 4/4 tests) andtest protocol_ir_is_currentboth passed.fa77c01.No capture: daemon protocol only, no UI.
Risk: normal. The change is additive and optional request parameters only, with the read path's behavior unchanged when they're absent. No socket or relay policy changes.
Changelog
Changed: acpmux's session list can be narrowed to one machine and one status.
Agent session: cosmic-gray
🤖 Generated with Claude Code