Steer-console geometry round O: upward Send tower, state-invariant console, bottom-anchored modal, family-edge precedence #41

Merged
ClaudiuSchuster merged 2 commits from oss-oo/observatory-geometry-o-nkyo20260925 into main 2026-09-25 12:41:23 +00:00
Owner

Owner backlog (Pinky O) + validation-N ride-along.

Console geometry (owner items 1–3)

  • Send button spans UPWARD (grid-row 1/3) into the target line’s free right side, right of the ⧢ expand control — never into the status/response row below (round M spanned downward into a row that barely exists before any steer). Status/tail row spans the full console width.
  • State-invariant by construction: the tower’s height comes only from target line + prompt; the one-column label keeps its width constant. CDP evidence: identical button rect (24×138 px) for tail open / collapsed / absent, ×10 toggle loop 0.00 px delta, button inside the panel, at 1920/950/500 px window widths.

Button label (item 4)

  • “Send to session” → Send; accessible context on aria-label/title (“Send to ⟨session title⟩ — queues as the next sequential turn”), refreshed from the target line’s session data.

Modal position + dock gap (items 5–6)

  • Response modal bottom-anchored, ~14 px above the favorites dock (docked paddings 96 → 58 px, matching the measured 45 px dock), horizontally centered in every console state; drawer + table ride the same clearance system.

Validation-N ride-along

  • F1: family_maps now declares edge precedence native > bell-ledger/live-spawn > delivered doorbell, and the children map is derived from parent_of — a conflicting weaker edge can no longer count toward both parents. New tests/ unit suite covers each precedence pair, prefix ambiguity, self-edges, derived-children consistency; CI grows a unit-test lane.
  • F2: README parent-column bullet + family sections document all three edge sources and the precedence.

Verification

  • CDP geometry regression (fixture server, fresh profiles): baseline captured (old layout: button 367/169/133 px across states) vs new (constant 138 px, 0.00 px deltas), modal centered 180/180 px gaps, dock gap 12.9 px.
  • Super-Linter (station recipe, pinned slim v8.7.0, keep-id, .github/ excluded): pylint 10.00/10, ruff, markdown, bash, yaml green.
  • tests/ 7/7 green; compile + boot check green. Glamour shot regenerated.
Owner backlog (Pinky O) + validation-N ride-along. ## Console geometry (owner items 1–3) - Send button spans **UPWARD** (`grid-row 1/3`) into the target line’s free right side, right of the ⧢ expand control — never into the status/response row below (round M spanned downward into a row that barely exists before any steer). Status/tail row spans the full console width. - **State-invariant by construction**: the tower’s height comes only from target line + prompt; the one-column label keeps its width constant. CDP evidence: identical button rect (24×138 px) for tail open / collapsed / absent, ×10 toggle loop 0.00 px delta, button inside the panel, at 1920/950/500 px window widths. ## Button label (item 4) - “Send to session” → **Send**; accessible context on aria-label/title (“Send to ⟨session title⟩ — queues as the next sequential turn”), refreshed from the target line’s session data. ## Modal position + dock gap (items 5–6) - Response modal bottom-anchored, ~14 px above the favorites dock (docked paddings 96 → 58 px, matching the measured 45 px dock), horizontally centered in every console state; drawer + table ride the same clearance system. ## Validation-N ride-along - **F1**: `family_maps` now declares edge precedence **native > bell-ledger/live-spawn > delivered doorbell**, and the `children` map is derived from `parent_of` — a conflicting weaker edge can no longer count toward both parents. New `tests/` unit suite covers each precedence pair, prefix ambiguity, self-edges, derived-children consistency; CI grows a unit-test lane. - **F2**: README parent-column bullet + family sections document all three edge sources and the precedence. ## Verification - CDP geometry regression (fixture server, fresh profiles): baseline captured (old layout: button 367/169/133 px across states) vs new (constant 138 px, 0.00 px deltas), modal centered 180/180 px gaps, dock gap 12.9 px. - Super-Linter (station recipe, pinned slim v8.7.0, keep-id, `.github/` excluded): pylint 10.00/10, ruff, markdown, bash, yaml green. - `tests/` 7/7 green; compile + boot check green. Glamour shot regenerated.
Owner backlog (Pinky O) + validation-N ride-along:

- Send button spans UPWARD (grid-row 1/3) into the target line's free
  right side, right of the ⤢ expand control — never into the status/
  response row below (round M spanned downward into a row that barely
  exists before any steer). The status/tail row now spans the full
  console width.
- Geometry is state-invariant: the tower's height comes only from the
  target line + prompt, its one-column label keeps the width constant —
  verified by CDP probes (button rect identical for tail open/collapsed/
  absent, x10 toggle loop 0.00 px delta, at 1920/950/500 px widths) so
  the button can no longer drift with — or escape the panel through —
  the tail state (owner items 2+3).
- Label 'Send to session' -> 'Send'; the accessible context lives on
  aria-label/title ('Send to <session title> — queues as the next
  sequential turn'), refreshed from the target line's session data.
- Response modal: bottom-anchored flush-ish over the dock (~14 px
  clearance, body.docked paddings 96 -> 58 px matching the real dock
  height), horizontally centered by construction in every console
  state; drawer/table dock clearances ride the same system.
- family_maps: declared edge precedence native > bell-ledger/live-spawn
  > delivered doorbell; children map derived from parent_of so a
  conflicting weaker edge can no longer count toward BOTH parents
  (validation-N F1). Unit tests (tests/) cover each precedence pair,
  prefix ambiguity and self-edges; CI grows a unit-test lane.
- README: parent column + family sections document all three edge
  sources and the precedence; steer console + modal sections describe
  the new geometry; steer-console.png regenerated (new tower layout,
  fixture target line with ctx/cache segments).
Sign in to join this conversation.
No reviewers
No labels
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
OSS-Singularity/zcode-dispatch-observatory!41
No description provided.