Repository navigation
feat(ui): streamline chat actions and retire announcements - #3355
Merged
Merged
Conversation
added 3 commits
October 12, 2026 15:13
…nnouncement-cleanup # Conflicts: # src/web-ui/src/flow_chat/components/modern/UserMessageItem.tsx
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.
Summary
Streamline transcript actions: combine edit and rollback in the user-message menu, move image export into the response copy menu, and offer illustrated export choices that omit or expand thinking. Exported messages retain their full text and reference presentation and use the transcript reading column with minimal branding.
Retire built-in announcements, startup tips, and the release-letter UI, including their scheduler, service feature, desktop commands, appearance entries, and generated capability projections. Retain the saved startup-tip preference for legacy configuration round trips. Align custom Checkbox fills and marks with the existing Switch theme tokens and system forced colors.
Type and Areas
Type: UI/UX, refactor, compatibility tests.
Areas: Web UI, design-system UI, desktop/Tauri, Rust assembly/services/contracts, capability catalog, developer scripts.
Motivation / Impact
Transcript actions use fewer visible controls while keeping disabled reasons, keyboard dismissal, focus restoration, and export progress/error feedback. Startup no longer loads or displays retired promotional content. Existing notification preferences remain readable and survive serialization.
Verification
Passed locally:
pnpm run fmt:rsandgit diff --checkpnpm run check:web(includes Appearance, typography, theme color/visual contracts, and type checking)pnpm --dir src/web-ui run test:run src/flow_chat/components/modern/MessageExportControls.test.tsx src/flow_chat/components/modern/UserMessageItem.test.tsx src/flow_chat/components/modern/UserMessageItemActions.test.ts src/infrastructure/api/adapters/peer-device-adapter.test.ts src/infrastructure/appearance/runtime/AppearanceOverlayHost.test.ts src/infrastructure/appearance/registry/AppearanceRegistry.test.ts src/shared/ui/MenuComposition.contract.test.ts src/app/scenes/settings— 38 files, 295 testscargo test --locked -p openbitfun-config-contracts --lib— 96 tests, including the legacy startup-tip preference round tripcargo test --locked -p openbitfun-product-domains --no-default-features --lib remote_surface— 19 testspnpm run check:core-boundaries:testandpnpm run check:core-boundariespnpm run capabilities:checkandpnpm run capabilities:testpnpm run i18n:auditpnpm --dir design-system run build:uinode --test design-system/packages/ui/tests/checkbox.test.mjsnode --test scripts/dev-startup.test.mjsAfter synchronizing with the accepted-steering-message change on main, also passed:
pnpm run type-check:webpnpm --dir src/web-ui run test:run src/flow_chat/components/modern/MessageExportControls.test.tsx src/flow_chat/components/modern/UserMessageItem.test.tsx src/flow_chat/components/modern/UserMessageItemActions.test.ts src/flow_chat/timeline/hostQueueProjection.test.ts src/flow_chat/timeline/useHostQueueTimeline.test.tsx— 5 files, 60 tests, including queued-message action gatesCI passed on commit
78fb2e7523e8f50e18da7450bb8e1872bae4f45d: all 14 checks succeeded, including three-platform Rust/CLI coverage, Linux x64/ARM64 binary and installer validation, Relay image validation, and the final Rust/CLI result. CI run.Reviewer Notes
AI-assisted; testing level: focused automated checks. UI interaction and exported-image visual fidelity remain unverified; browser/computer-use verification was not requested.
Remote coverage: mocked Peer Device adapter behavior and compiled Product Operation Registry contracts only. Actual SSH remote workspace, relay/IM remote control, Peer Device connections, and Detached Dispatch were not exercised.
Announcement state files are left intact. The retired
enable_startup_tipsconfiguration field remains readable and writable for upgrade compatibility, with no runtime effect.Checklist