feat: handle min-size failures in layout-aware new-pane paths #117

Closed
opened 2026-04-28 01:58:04 +00:00 by barrettruth · 0 comments
barrettruth commented 2026-04-28 01:58:04 +00:00

Problem

Even with correct layout-aware birth targeting, some states eventually run out of splittable space. The intended target leaf can become too small in the required axis, especially in recursive layouts or small windows. Right now the fallback behavior is not clearly specified.

Blocked by: #101, #102

Proposed solution

Define fallback behavior when the intended target leaf cannot be split in the required axis. Cover at least:

  • spiral
  • dwindle
  • stack-heavy master/column layouts on small windows

The outcome should include both implementation behavior and tests.

Context

The current matrix treats this as a distinct residual class rather than a layout-specific bug. It should be resolved after the normal-path work is clear.

Acceptance notes

  • Do not let tmux errors or silent clamping remain the only behavior contract.
  • Make the fallback explicit and testable.
  • Feed the residual limitation into the final documentation issue.

Alternatives considered

  • Leave behavior to whatever tmux does on undersized panes.
  • Solve min-size handling piecemeal inside each layout issue.
## Problem Even with correct layout-aware birth targeting, some states eventually run out of splittable space. The intended target leaf can become too small in the required axis, especially in recursive layouts or small windows. Right now the fallback behavior is not clearly specified. Blocked by: #101, #102 ## Proposed solution Define fallback behavior when the intended target leaf cannot be split in the required axis. Cover at least: - `spiral` - `dwindle` - stack-heavy master/column layouts on small windows The outcome should include both implementation behavior and tests. ## Context The current matrix treats this as a distinct residual class rather than a layout-specific bug. It should be resolved after the normal-path work is clear. ## Acceptance notes - Do not let tmux errors or silent clamping remain the only behavior contract. - Make the fallback explicit and testable. - Feed the residual limitation into the final documentation issue. ## Alternatives considered - Leave behavior to whatever tmux does on undersized panes. - Solve min-size handling piecemeal inside each layout issue.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
barrettruth/tmux-mosaic#117
No description provided.