Skip to content

fix(ui): align menu spacing and restore intended text contrast #6283

fix(ui): align menu spacing and restore intended text contrast

fix(ui): align menu spacing and restore intended text contrast #6283

Triggered via pull request September 9, 2026 03:38
Status Cancelled
Total duration 19m 2s
Artifacts –

ci.yml

on: pull_request
Build Impact
52s
Build Impact
Shell Deploy Scripts
17s
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)
DSH Profile Packaging (windows-latest)
Frontend Build
7m 45s
Frontend Build
Rust / CLI Validation
8s
Rust / CLI Validation
Fit to window
Zoom out
Zoom in

Annotations

9 errors and 10 warnings
Frontend Build
Process completed with exit code 1.
src/app/components/AgentCompanionDesktopPet/AgentCompanionDesktopPetStyles.test.ts > AgentCompanionDesktopPet styles > delegates context-menu foregrounds and interaction states to the public menu item: src/web-ui/src/app/components/AgentCompanionDesktopPet/AgentCompanionDesktopPetStyles.test.ts#L88
AssertionError: expected '@layer openbitfun.components {\n .ro…' to contain 'background: var(--openbitfun-color-ac…' - Expected + Received - background: var(--openbitfun-color-action-neutral-surface); + @layer openbitfun.components { + .root { + display: inline-flex; + align-items: center; + min-inline-size: 0; + min-block-size: var(--openbitfun-control-height-sm); + gap: var(--openbitfun-space-1); + padding-inline: var(--openbitfun-space-2); + border-radius: var(--openbitfun-radius-base); + color: var(--openbitfun-color-action-neutral-content); + background: transparent; + transition: + color var(--openbitfun-motion-duration-fast) var(--openbitfun-motion-easing-standard), + background-color var(--openbitfun-motion-duration-fast) var(--openbitfun-motion-easing-standard); + } + + .root:not([data-disabled="true"]):hover, + .root:not([data-disabled="true"]):has(.trigger[data-openbitfun-preview-state="hover"]) { + background: var(--openbitfun-color-action-neutral-surface-hover); + } + + .root:not([data-disabled="true"]):has(.trigger:active), + .root:not([data-disabled="true"]):has(.trigger[data-openbitfun-preview-state="active"]) { + background: var(--openbitfun-color-action-neutral-surface-hover); + } + + .root:not([data-disabled="true"]):has(.trigger:active) .label, + .root:not([data-disabled="true"]):has(.trigger[data-openbitfun-preview-state="active"]) .label { + font-weight: var(--openbitfun-type-label-selected-font-weight); + } + + .root:has(.trigger:focus-visible) { + box-shadow: 0 0 0 var(--openbitfun-focus-width) var(--openbitfun-color-focus-ring); + } + + .root[data-disabled="true"] { + color: var(--openbitfun-color-action-neutral-content-disabled); + cursor: not-allowed; + } + + .root[data-openbitfun-tone="danger"]:not([data-disabled="true"]) { + color: var(--openbitfun-color-status-danger-content); + } + + .root[data-openbitfun-tone="danger"]:not([data-disabled="true"]):hover, + .root[data-openbitfun-tone="danger"]:not([data-disabled="true"]):has(.trigger[data-openbitfun-preview-state="hover"]) { + background: var(--openbitfun-color-status-danger-surface); + } + + .root[data-openbitfun-tone="danger"]:not([data-disabled="true"]):has(.trigger:active), + .root[data-openbitfun-tone="danger"]:not([data-disabled="true"]):has(.trigger[data-openbitfun-preview-state="active"]) { + background: var(--openbitfun-color-status-danger-surface); + } + + .trigger { + display: inline-flex; + flex: 1 1 auto; + align-items: center; + min-inline-size: 0; + min-block-size: inherit; + gap: var(--openbitfun-space-2); + margin: 0; + padding: 0; + border: 0; + outline: 0; + color: inherit; + background: transparent; + font: inherit; + text-align: start; + cursor: pointer; + } + + .trigger:disabled { + cursor: not-allowed; + } + + .leading { + --openbitfun-opacity-icon-artwork: 1; + display: inline-flex; + flex: 0 0 auto; + align-items: center; + justify-content: center; + inline-size: var(--openbitfun-font-size-sm); + block-size: var(--openbitfun-font-size-sm); + } + + .leading > :where(svg, img), + .leading > [data-openbitfun-component="icon"] { + display: block; + inline-size: 100%; + block-size: 100%; + } + + .label { + overflow: hidden; + flex: 1 1 auto; + min-inline-size: 0; + font-family: var(--openbitfun-type-label-md-font-family); + font-size: var(--openbitfun-type-label-md-font-size); + font-weight: var(--openbitfun-type-label-md-font-weight); + line-height: var(--openbitfun-type-action-row-line-height); + letter-spacing: var(--openbitfun-type-label-md-letter-spacing); + white-space: nowrap; + } + + .metadata, + .shortcut, + .actions { + display: inline-flex; + flex: 0 0 auto; + align-items: center; + } + + .metadata { + color: var(--openbitfun-color-content-muted); + font-family: var(--openbitfun-type-
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#L103
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": "aaffcfeca8795bff28e3f036f02a013f81aa325a53c03ef5d7d1d81aa20e8fa7", "last": "--openbitfun-shadow-xs", } ❯ src/tools/generative-widget/appearancePayload.test.ts:103:8
Rust Build Check (windows-latest)
Canceling since a higher priority waiting request for ci-refs/pull/2915/merge exists
Rust Build Check (windows-latest)
The operation was canceled.
CLI Tests (macos-15)
Canceling since a higher priority waiting request for ci-refs/pull/2915/merge exists
CLI Tests (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/2915/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