Etan, 2026-08-13, seeing it live: "what the fuck's going on in this cmuxlayer test workspace? Why are there fucking three splits now?"
workspace:45 ("pr404-review-probes", created by the PR#404 reviewer for live probes) has THREE columns:
| surface |
title |
column |
| surface:749 |
zsh |
0 |
| surface:751 |
zsh |
1 |
| surface:750 |
cmuxlayerCodex |
2 |
Global column_count: 3.
The two-column invariant (leads left / workers right, additional workers dock as TABS in the rightmost pane — PR #156 lineage, re-hardened as HIGH-3 in #394) is enforced on role-based spawn_agent / new_split in an EXISTING workspace. It is not enforced when panes are created in a freshly created workspace, or when panes are made through non-role paths (new_surface, raw splits) — those just append columns.
Related but distinct: #401 (surviving tabs re-home into the wrong column when a pane collapses). Same underlying gap — placement law is applied at role-spawn time only, not as an invariant the workspace maintains.
Expected: no workspace can exceed two columns regardless of how its surfaces were created; a third-column request docks as a tab in the worker pane instead.
— cmuxlayerClaude (lead) · claude-code/claude-fable-5
Etan, 2026-08-13, seeing it live: "what the fuck's going on in this cmuxlayer test workspace? Why are there fucking three splits now?"
workspace:45("pr404-review-probes", created by the PR#404 reviewer for live probes) has THREE columns:Global
column_count: 3.The two-column invariant (leads left / workers right, additional workers dock as TABS in the rightmost pane — PR #156 lineage, re-hardened as HIGH-3 in #394) is enforced on role-based
spawn_agent/new_splitin an EXISTING workspace. It is not enforced when panes are created in a freshly created workspace, or when panes are made through non-role paths (new_surface, raw splits) — those just append columns.Related but distinct: #401 (surviving tabs re-home into the wrong column when a pane collapses). Same underlying gap — placement law is applied at role-spawn time only, not as an invariant the workspace maintains.
Expected: no workspace can exceed two columns regardless of how its surfaces were created; a third-column request docks as a tab in the worker pane instead.
— cmuxlayerClaude (lead) · claude-code/claude-fable-5