feat: overview dynamic height for multi-agent sessions (+ #114 grip pill)#125
Merged
Conversation
… legibility 6-lane sessions rendered 2-3px per-lane slivers in the fixed 28px overview canvas — per-agent activity distribution was unreadable. Canvas height is now clamp(28, lanes*7+6, 48): single-lane sessions stay compact, 4-6 lane sessions get ~6px bars. Also raises unselected-lane alpha 0.5 -> 0.65 (sank into the dark bg), min bar width 0.5 -> 1px, bar height cap 6 -> 8px. All overview interactions (brush-zoom, viewport pan/resize, click-select, selection cursor) read MW/MH from the live canvas and are unaffected. Covers the minimap-height item of #114. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Handle was 4px with hover-only affordance — invisible until discovered. Now 8px with an always-visible centered grip pill. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…clips Codex R1: barH floor 2 + fixed 1px gap meant laneCount*3 could exceed canvas height (18 lanes at 48px drew 54px, clipping the last two lanes; pre-existing at 28px too, where 9+ lanes clipped). Geometry extracted to wfOverviewBarGeom(MH, laneCount): the 1px gap compresses away and barH shrinks toward 1px when slots get tight, keeping startY + n*laneStep <= MH. Also syncs stale doc values codex flagged (4px resize handle, 32px overview) with the new dynamic sizes. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…eight (codex R3) Lane count is a session-level property; the stability test (rapid agent/turn clicks never resize containers) still holds. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Owner
Author
Codex review trail
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
繁體中文摘要
多 agent session(4–6 lanes)時,overview 固定 28px canvas 讓每條 lane 只剩 2–3px,活動分布幾乎不可見。本 PR:
clamp(28, lanes×7+6, 48)。單 lane session 維持 28px 不浪費垂直空間;4–6 lanes 升到 34–48px,每條 lane 得到 ~6px bar(原本 3px)#wf-resize4→8px + 永久顯示的 grip pill(原本 hover 才有回饋)否決的方向:sub-agent 聚合活動帶(直接消滅使用者要觀察的 per-agent 分布)、per-lane 對齊左側 lane 標籤(等於把 swimlane 複製進 overview,P13 同款職責重疊)。>10 lanes 時 bar 回到 2px floor——接受,per-lane 分析是泳道的職責,overview 只管全局定位。
Zone 三色、brush-zoom / viewport 拖移 / 邊緣 resize / click 選 turn / accent cursor 全部保留(互動程式碼讀 live canvas 的 MW/MH,自動適應)。
Overview height
Details (EN)
wfOverviewHeight(laneCount)=min(48, max(28, laneCount*7+6)); applied viacanvas.style.heightat the top ofwfRenderOverview, so it re-adapts on every render (session switch, streaming lane additions) with no extra plumbing#161b22); selected stays 0.9 so the selected-lane emphasis survivesMW/MHread from the live canvas#wf-resize: 8px tall, permanent centered grip pill (::after, 32×3px,var(--border)→var(--dim)on hover)docs/workflow-view-design.md(Overview Bar section + P12 form table),prototype/swimlane/DESIGN-DECISIONS.mddecision 23Verification
wfOverviewHeightclamp cases intest/workflow-timeline.test.js(14/14 pass); full suite 979/980 — the 1 fail is the known flaky test: codex-adapter rate_limits fixture fails intermittently (expected 1, got 0) #119 codex-adapter fixture time bomb, unrelatedCCXRAY_HOME, port 5602, real logs incl. session157c0faa482 turns / 6 lanes):#wf-resizewithout hoverCloses #114