Skip to content

fix(ui): align page headers and action cards with the design system #6304

fix(ui): align page headers and action cards with the design system

fix(ui): align page headers and action cards with the design system #6304

Triggered via pull request September 9, 2026 07:54
Status Cancelled
Total duration 25m 39s
Artifacts –

ci.yml

on: pull_request
Build Impact
17s
Build Impact
Shell Deploy Scripts
18s
Shell Deploy Scripts
Matrix: cli-test
Matrix: Impact-selected Linux / Relay Contract / build
Waiting for pending jobs
Matrix: rust-build-check
DSH Profile Packaging (windows-latest)
0s
DSH Profile Packaging (windows-latest)
Frontend Build
7m 30s
Frontend Build
Rust / CLI Validation
5s
Rust / CLI Validation
Fit to window
Zoom out
Zoom in

Annotations

9 errors and 11 warnings
Frontend Build
Process completed with exit code 1.
src/app/scenes/settings/SettingsContentTypography.test.ts > Settings content typography > maps the shared settings hierarchy to canonical semantic type roles: src/web-ui/src/app/scenes/settings/SettingsContentTypography.test.ts#L20
AssertionError: expected '@use \'./config-page-layout.tokens\' …' to contain 'font-size: var(--openbitfun-type-head…' - Expected + Received - font-size: var(--openbitfun-type-heading-page-font-size); + @use './config-page-layout.tokens' as configLayout; + + + .openbitfun-config-page-header { + flex-shrink: 0; + padding: var(--openbitfun-space-5) 0 0; + margin-bottom: 36px; + } + + .openbitfun-config-page-header__inner { + width: min( + calc(100% - (2 * #{configLayout.$config-page-content-inline-padding})), + #{configLayout.$config-page-content-max-width} + ); + margin-inline: auto; + display: flex; + justify-content: space-between; + align-items: flex-start; + gap: var(--openbitfun-space-4); + } + + .openbitfun-config-page-header__left { + display: flex; + align-items: center; + gap: var(--openbitfun-space-4); + flex: 1; + min-width: 0; + } + + .openbitfun-config-page-header__info { + flex: 1; + min-width: 0; + } + + .openbitfun-config-page-header__title { + overflow-wrap: break-word; + } + + .openbitfun-config-page-header__subtitle { + display: block; + margin: 0; + max-width: 100%; + overflow-wrap: break-word; + } + + .openbitfun-config-page-header__extra { + flex-shrink: 0; + display: flex; + align-items: center; + gap: var(--openbitfun-space-2); + } + + @media (max-width: 768px) { + .openbitfun-config-page-header__inner { + flex-direction: column; + align-items: flex-start; + } + + .openbitfun-config-page-header__left { + width: 100%; + } + + .openbitfun-config-page-header__extra { + width: 100%; + justify-content: flex-end; + } + } + + @media (max-width: 600px) { + .openbitfun-config-page-header__left { + gap: var(--openbitfun-space-3); + } + } + + + .openbitfun-config-page-header-divider { + flex-shrink: 0; + height: 1px; + background: var(--openbitfun-color-border-subtle); + width: min( + calc(100% - (2 * #{configLayout.$config-page-content-inline-padding})), + #{configLayout.$config-page-content-max-width} + ); + margin: var(--openbitfun-space-4) auto; + display: none; + } + + @container config-panel (max-width: 900px) { + .openbitfun-config-page-header__inner, + .openbitfun-config-page-header-divider { + width: min( + calc(100% - (2 * #{configLayout.$config-page-content-inline-padding})), + #{configLayout.$config-page-content-max-width} + ); + } + } + + + + + @container config-panel (max-width: 520px) { + .openbitfun-config-page-header { + padding-top: var(--openbitfun-space-4); + margin-bottom: var(--openbitfun-space-8); + } + + .openbitfun-config-page-header__inner { + gap: var(--openbitfun-space-3); + flex-direction: column; + align-items: flex-start; + } + + .openbitfun-config-page-header__left { + gap: var(--openbitfun-space-3); + width: 100%; + } + + .openbitfun-config-page-header__subtitle { + max-width: 100%; + } + + .openbitfun-config-page-header__extra { + width: 100%; + justify-content: flex-start; + margin-top: var(--openbitfun-space-2); + } + + .openbitfun-config-page-header-divider { + margin: var(--openbitfun-space-3) auto; + } + } + + @media (prefers-reduced-transparency: reduce) { + .openbitfun-config-page-header { + background: var(--openbitfun-color-surface-scene); + backdrop-filter: none; + -webkit-backdrop-filter: none; + } + } + ❯ src/app/scenes/settings/SettingsContentTypography.test.ts:20:26
src/tools/generative-widget/appearancePayload.test.ts > generated widget appearance payload contract > derives its complete host payload allowlist from the canonical theme package: src/web-ui/src/tools/generative-widget/appearancePayload.test.ts#L108
AssertionError: expected { count: 128, …(3) } to deeply equal { count: 127, …(3) } - Expected + Received { - "count": 127, + "count": 128, "first": "--openbitfun-color-accent-border", - "hash": "e80ebcdf9452a0b5f8ab26d9b41cb81c4e74d75451e4402f99afc68af3c13f42", + "hash": "d14cf3c3d7c5c1ae40652a9ef4494bb60cc9397db9a313210a97b9d9d17c4499", "last": "--openbitfun-shadow-xs", } ❯ src/tools/generative-widget/appearancePayload.test.ts:108:8
Rust Build Check (windows-latest)
Canceling since a higher priority waiting request for ci-refs/pull/2924/merge exists
Rust Build Check (windows-latest)
The operation was canceled.
Rust Build Check (macos-15)
Canceling since a higher priority waiting request for ci-refs/pull/2924/merge exists
Rust Build Check (macos-15)
The operation was canceled.
Rust / CLI Validation
Process completed with exit code 1.
CI
Canceling since a higher priority waiting request for ci-refs/pull/2924/merge exists
Frontend Build: src/web-ui/src/shared/announcement-system/components/ReleaseLetterModal.tsx#L22
Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components
Frontend Build: src/web-ui/src/flow_chat/tool-cards/AgentWaitToolCard.tsx#L17
Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components
Frontend Build: src/web-ui/src/flow_chat/components/voice/RealtimeVoiceCallContext.tsx#L32
Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components
Frontend Build: src/web-ui/src/flow_chat/components/voice/RealtimeVoiceCallContext.tsx#L23
Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components
Frontend Build: src/web-ui/src/flow_chat/components/modern/MessageReferenceCapsule.tsx#L29
Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components
Frontend Build: src/web-ui/src/flow_chat/components/modern/MessageReferenceCapsule.tsx#L7
Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components
Frontend Build: src/web-ui/src/flow_chat/components/ReasoningPresetSelector.tsx#L112
Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components
Frontend Build: src/web-ui/src/flow_chat/components/ReasoningPresetSelector.tsx#L36
Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components
Frontend Build: src/web-ui/src/app/components/SceneTopBar/SceneChrome.tsx#L121
Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components
Frontend Build: src/web-ui/src/app/components/NavPanel/components/DeviceArtwork.tsx#L6
Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components
Tauri Windows test-loader limitation
The desktop test harness hit upstream Tauri issue #13419 before any Rust test ran. Compilation and the cross-platform product-control contracts remain blocking.