Repository navigation
feat(flow-chat): add context usage previews and adjustable conversation width - #3614
Merged
Merged
Conversation
3 tasks done
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
Type and Areas
Type: Feature / UI/UX / bug fix
Areas: Rust runtime and contracts, desktop/CLI adapters, Web UI, shared Disclosure component, locales, and documentation.
Motivation / Impact
Users can inspect the context and tools behind the latest prepared model request directly from the usage report, and set a comfortable conversation width. Reports remain attached to their owning session across navigation; stale requests from a previous device activation cannot update the current surface.
Verification
Passed locally:
pnpm run fmt:rspnpm run check:web(Appearance, all 28 theme/color surfaces, visual governance, and TypeScript)pnpm run i18n:audit(0 warnings)pnpm --dir src/web-ui run test:run src/app/scenes/settings/pages/application/FlowChatWidthSettingsSection.test.tsx src/flow_chat/components/FlowChatWidthBoundary.test.tsx src/infrastructure/appearance/preferences/flowChatWidthStore.test.ts src/flow_chat/components/modern/flowChatScrollbarMask.test.ts src/flow_chat/components/modern/VirtualMessageList.session-boundary.test.tsx src/flow_chat/components/usage/SessionUsageComponents.test.tsx src/flow_chat/components/usage/ToolDefinitionsPreview.test.tsx src/flow_chat/services/openSessionContextPreview.test.ts src/flow_chat/services/usageReportService.test.ts src/infrastructure/api/service-api/SessionAPI.test.ts src/infrastructure/appearance/builtins/composeAppearancePackage.test.ts src/infrastructure/appearance/compiler/AppearanceCompiler.test.ts(251 tests)pnpm --dir design-system run build:uiandnode --test design-system/packages/ui/tests/disclosure.test.mjs(4 tests)cargo test --locked -p openbitfun-core --no-default-features --features agent-runtime,git --lib -- context_composition system_prompt_preview usage_context_preview account_attempt_ledger_keeps_failed_usage_actual_accounts_and_idempotent_events(8 tests)cargo test --locked -p openbitfun-core-types --test core_type_contracts session_usage_contracts(5 tests)cargo test --locked -p openbitfun-services-core --no-default-features --features local-storage --test session_usage_contracts token_usage_contracts(5 tests)cargo test --locked -p openbitfun-runtime-ports --no-default-features --features agent-api --lib(60 tests)pnpm --dir src/web-ui run test:run src/app/scenes/session/ChatPane.composer-layout.test.tsx src/flow_chat/components/FlowChatWidthBoundary.test.tsx(14 tests; regression check for the missing ResizeObserver fixture found by the first CI run)git diff --check origin/main...HEADandnode scripts/check-git-object-sizes.mjs --base origin/main --head HEADGitHub CI must pass before merging.
Reviewer Notes
AI-assisted; focused automated tests passed, broader CI pending. UI interaction and native visual checks were not performed per repository instructions. No live remote scenarios were exercised. Fixtures cover simulated SSH storage selection, device activation isolation, unsupported dispatch preview paths, and legacy payloads; these are not evidence of live remote behavior. Preview content is opt-in and separate from numeric report exports.
Checklist