Skip to content

Commit cf0040e

Browse files
Gustav-SimonssonTheGreatAxios
authored andcommitted
refactor(tui): deepen comment compression in the shell layout module
1 parent c653e0c commit cf0040e

1 file changed

Lines changed: 19 additions & 25 deletions

File tree

‎src/tui/shell/layout.ts‎

Lines changed: 19 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/**
2-
* Terminal geometry: layout application, relayout, prompt-row sync, landing split.
2+
* Terminal geometry: layout application, relayout, prompt-row sync, landing
3+
* split.
34
*/
45
import {
56
FLEET_FLOOR_MIN_LANES,
@@ -32,16 +33,13 @@ export function terminalOf(
3233
}
3334

3435
/**
35-
* The version row is real chrome, not a float: it holds a reserved row at
36-
* the foot of the shell rather than painting into the optical bottom pad
37-
* (`BOTTOM_MARGIN_ROWS`), blank breathing room, not a content slot.
38-
*
39-
* This costs the rest of the shell a row: the geometry resolver is handed
40-
* `terminal.rows - 1`, so every height it derives — including
41-
* `PROMPT_CAP_FRACTION * terminal.rows`, which runs before collapse and
42-
* outside `COLLAPSE_ORDER` — is one row short of the real terminal. The
43-
* badge is not in the collapse order and does not give the row back under
44-
* prompt-growth pressure.
36+
* The version row reserves a real foot row instead of painting into the
37+
* optical bottom pad (`BOTTOM_MARGIN_ROWS`, blank breathing room, not a
38+
* content slot). So the resolver is handed `terminal.rows - 1`, and every
39+
* height it derives — including `PROMPT_CAP_FRACTION * terminal.rows`,
40+
* which runs before collapse and outside `COLLAPSE_ORDER` — is one row
41+
* short of the real terminal. The badge never gives that row back under
42+
* prompt-growth pressure (it is not in `COLLAPSE_ORDER`).
4543
*/
4644
export function terminalForGeometry(terminal: {
4745
readonly columns: number;
@@ -69,11 +67,9 @@ export function defaultVisibility(visibility?: ZoneVisibility): ZoneVisibility {
6967
}
7068

7169
/**
72-
* How the landing divides its rows around the prompt box.
73-
*
74-
* A floated overlay is clipped to the rows above the box so it never covers
75-
* the prompt. Losing a long body's tail to that clip is survivable; losing
76-
* every choice is not — the surface could not be answered. So the box
70+
* A floated overlay clips to the rows above the prompt box, so it never
71+
* covers the prompt. Losing a long body's tail to the clip is survivable;
72+
* losing every choice is not — the surface could not be answered. The box
7773
* slides down just far enough to keep the overlay's full, fraction-capped
7874
* height on screen; the starters below pay for the move.
7975
*/
@@ -96,20 +92,18 @@ export interface RelayoutOpts {
9692
readonly overlayMode?: OverlayMode;
9793
readonly overlayBodyRows?: number;
9894
/**
99-
* Rows the open overlay cannot render without: border + title + at least
100-
* one content row. Below this, the box paints past whatever height it was
101-
* assigned instead of shrinking, so the resolver must never starve it here.
95+
* Rows an open overlay cannot render without: border + title + one content
96+
* row. Below this, the box paints past its assigned height instead of
97+
* shrinking, so the resolver must never starve it.
10298
*/
10399
readonly overlayMinBodyRows?: number;
104100
}
105101

106102
/**
107-
* Rows the transcript holds back once a fleet is running.
108-
*
109-
* With several lanes live the operator manages a fleet rather than reads a
110-
* conversation, so the transcript gives up its idle floor to the board. It
111-
* keeps enough to stay a live tail — the orchestrator reporting back and
112-
* asking questions is still how the operator learns anything.
103+
* Rows the transcript gives up once a fleet is running: with several lanes
104+
* live the operator manages a fleet rather than reads a conversation. It
105+
* keeps only a live tail — the orchestrator reporting back and asking
106+
* questions is how the operator learns anything.
113107
*/
114108
export function fleetTranscriptFloor(shell: AppShell): {
115109
transcriptFloor?: number;

0 commit comments

Comments
 (0)