Skip to content

fix(flow-chat): align status columns and standardize transcript spacing - #2940

Merged
kev1n77 merged 2 commits into
GCWing:mainfrom
kev1n77:fmy/ui-main
Sep 10, 2026
Merged

fix(flow-chat): align status columns and standardize transcript spacing#2940
kev1n77 merged 2 commits into
GCWing:mainfrom
kev1n77:fmy/ui-main

Conversation

@kev1n77

@kev1n77 kev1n77 commented Sep 10, 2026

Copy link
Copy Markdown
Collaborator

Summary

Align icons, labels, and content across FlowChat thinking, exploration, ambient tools, and runtime status rows.

  • Share a 14px icon slot and 4px icon-to-text gap.
  • Remove transparent-border offsets and stacked opacity that caused inconsistent alignment and contrast.
  • Standardize ordinary item gaps to 8px, inline spacing to 4px, and compact disclosure minimum heights to 22px.
  • Move outer spacing into transcript compositions and remove duplicate margins and negative-margin compensation.
  • Add a Design Lab sequence using real Todo, AgentWait, Skill, and terminal cards with state and expansion controls.

Type and Areas

Type: Bug fix / UI/UX

Areas: Web UI, FlowChat, shared tool cards, design tokens, Design Lab, documentation.

Motivation / Impact

Mixed transcript rows previously used different icon slots, insets, opacity multipliers, and margins. This made text columns misalign and spacing vary between thinking, tool calls, and expanded content.

The updated layout keeps status columns consistent and gives each composition ownership of its spacing. Consecutive collapsed ambient tools remain compact, including across model-round boundaries, while expanded cards retain normal section spacing.

Verification

Previously recorded implementation checks passed; they were not rerun when preparing this PR description:

  • pnpm run design-system:check
  • pnpm run check:web
  • pnpm --dir src/web-ui run lint
  • pnpm run motion:audit — inventory reviewed; zero duplicate global keyframe names.

Horizontal alignment regressions: 4 files, 21 tests passed.

pnpm --dir src/web-ui run test:run src/flow_chat/tool-cards/ModelThinkingDisplay.test.tsx src/flow_chat/tool-cards/TodoWriteDisplay.test.tsx src/flow_chat/tool-cards/AgentWaitToolCard.test.tsx src/flow_chat/components/modern/RuntimeStatusSlot.test.tsx

Spacing, collapse, and measurement regressions: 7 files, 40 tests passed.

pnpm --dir src/web-ui run test:run src/flow_chat/tool-cards/useToolCardHeightContract.test.tsx src/flow_chat/components/modern/flowChatCollapseMotion.test.ts src/flow_chat/components/modern/useFlowChatVirtualizer.measurement.test.tsx src/flow_chat/components/modern/VirtualMessageList.layout.test.ts src/flow_chat/components/modern/FlowChatRhythm.test.ts src/flow_chat/components/subagent/SubagentProjectionView.test.tsx src/flow_chat/tool-cards/ModelThinkingDisplay.test.tsx

Native Windows desktop checks covered thinking expansion and collapse in an existing transcript, content alignment, and switching between sessions. Collapsing thinking preserved the position of earlier content in the checked transcript.

Live streaming, complete mixed-history scenarios, and theme/density combinations remain pending.

Reviewer Notes

The runtime status footer retains its 24px height. Existing footer reservation, virtual-item identity, measurement, collapse notifications, and viewport ownership are preserved. No scroll compensation or timer-based layout correction is added.

Lab entry: FlowChat tool gallery → mixed tool sequence.

No backend protocol or persisted-data changes are introduced. Remote workspace, remote control, Peer Device Mode, and Detached Dispatch were not verified end to end. Existing documented FlowChat scrolling gaps remain outside this PR.

Checklist

  • This PR is focused and does not include secrets, temporary prompts, generated scratch files, or unrelated artifacts.
  • Relevant verification is recorded above, or skipped checks are explained.
  • User-facing strings, docs, and locales are updated where applicable.

Share the 14px icon slot and 4px text gap across public ambient cards, thinking, exploration and the resident runtime row. Remove double opacity and transparent-border offsets. Lab uses real Todo, AgentWait, Skill and terminal cards with state and expansion controls.

Validation: design-system:check, check:web, motion inventory and 21 focused thinking/Todo/AgentWait/runtime tests pass. Native desktop existing transcript confirms thinking disclosure and body leading edge. Full mixed-state, theme/density and remote scenarios remain manual pending; no remote runtime tested.
Use 8px item gaps, 4px inline spacing and 22px compact disclosure minimums. Move outer spacing from leaf views to model-round, retry, exploration and subagent compositions; retain continuous collapsed ambient runs across virtual rows. Remove adjacent negative margins and expanded Task margin stacking. Preserve the 24px runtime footer and existing measurement, collapse and viewport owners.

Lab: real mixed tool sequence changes between compact runs and spaced expanded cards. Export wrappers retain their own spacing. Validation: design-system:check, check:web, ESLint, motion inventory (zero duplicate keyframes), and 40 tests across seven focused layout/measurement/collapse/rhythm/thinking/subagent files pass.

Native Windows existing transcript: thinking expansion/collapse and switching away/back inspected; collapse preserved earlier content position. Live streaming, full mixed history, theme/density and remote scenarios remain manual pending. No remote runtime scenario was exercised; existing scrolling Known Gaps remain outside this change.
@kev1n77
kev1n77 merged commit 44f5a0f into GCWing:main Sep 10, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant