Skip to content

feat(web-ui): refine conversation annotation experience - #3089

Merged
kev1n77 merged 1 commit into
GCWing:mainfrom
kev1n77:fmy/bugfix
Sep 17, 2026
Merged

kev1n77 merged 1 commit into
GCWing:mainfrom
kev1n77:fmy/bugfix

Conversation

@kev1n77

@kev1n77 kev1n77 commented Sep 17, 2026

Copy link
Copy Markdown
Collaborator

Summary

Improve the conversation annotation experience across transcript selections and composer attachments.

  • Keep annotated source text highlighted after it is added to the conversation.
  • Apply the UIKit cyan accent consistently through an Appearance-owned token.
  • Show solid numbered markers at the upper-right corner of annotated selections.
  • Group composer annotations into a single capsule with hover, focus, and click details.
  • Support editing, removing, and clearing annotations from the detail panel.
  • Refine the selection toolbar while retaining the existing Lucide icons.

Type and Areas

Type:

UI/UX, feature, test, docs

Areas:

Web UI, Flow Chat, Appearance/theme

Motivation / Impact

Annotations previously lost their visible selection state and appeared as separate composer attachments. Marker placement could also become detached from the selected text or disappear in dense content.

Annotated text now remains visibly selected, numbered markers stay attached to the selection corner, and composer annotations are presented as a compact grouped capsule with accessible detail controls.

Legacy Appearance packages receive the annotation accent token without replacing their configured global accent.

Verification

  • pnpm --dir src/web-ui exec vitest run src/flow_chat/components/ChatInputAttachments.test.tsx src/flow_chat/selection/FlowChatSelectionBar.test.tsx src/flow_chat/selection/ConversationExcerptMarkers.test.tsx src/flow_chat/selection/conversationExcerptMarkerPosition.test.ts src/infrastructure/appearance/builtins/composeAppearancePackage.test.ts --maxWorkers=50%
    • Passed: 5 test files, 28 tests.
  • pnpm run check:web
    • Passed typography, Appearance contracts, theme color audits, visual contracts, and Web UI type checking.
  • git diff --check
    • Passed.

Manual UI interaction verification remains pending per the Flow Chat verification guide. Remote workspace, remote control, Peer Device Mode, and Detached Dispatch scenarios were not exercised; this change is limited to shared Web UI presentation and interaction state.

Reviewer Notes

The annotation accent is owned by --openbitfun-component-conversation-excerpt-accent and resolves to #059cb0 across built-in themes. Selection backgrounds use 30% opacity, while source number markers use a solid accent fill with inverse text.

Persistent highlights are owned per mounted transcript row so sibling panes do not clear each other during cleanup.

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.

@kev1n77
kev1n77 merged commit 80aebb7 into GCWing:main Sep 17, 2026
9 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