Skip to content

fix(desktop): fit History filter tabs - #49

Draft
santosli wants to merge 2 commits into
mainfrom
codex/history-filter-layout
Draft

fix(desktop): fit History filter tabs#49
santosli wants to merge 2 commits into
mainfrom
codex/history-filter-layout

Conversation

@santosli

@santosli santosli commented Aug 3, 2026

Copy link
Copy Markdown
Owner

Summary

  • Keep All, Calls, References, and Operations in one four-column segmented row on standard desktop widths.
  • Switch the History filter to a contained 2x2 grid below 1180px, with automatic container height so a second row cannot overlap the history list.
  • Query the selected History kind from Rust instead of filtering a bounded mixed response in React, so older References remain discoverable and title/list counts agree.
  • Guard tab and refresh requests with a monotonic request generation; stale responses and errors cannot overwrite a newer filter, and loading shows an explicit status.

Root cause

The History-specific override still used three columns while the UI rendered four tabs. Separately, App always requested the newest mixed 200 rows, then filtered locally, so aggregate Reference counts could be non-zero while older Reference rows were absent from the loaded page.

Verification

  • node --test apps/desktop/src/historyEntries.test.js apps/desktop/src/previewData.test.js apps/desktop/src/cardLayout.test.js (103/103)
  • npm test (260/260)
  • cargo fmt --check
  • cargo test --offline (CLI 29, core 324, desktop Rust 10, git 41, github 8)
  • cargo clippy --workspace --all-targets --all-features --locked -- -D warnings
  • npm --workspace apps/desktop run build
  • npm audit --audit-level=high (0 vulnerabilities)
  • cargo audit (18 existing allowed warnings)
  • git diff --check
  • Browser preview visual QA at 1600 and 1000px: References selected shows title count 1 and one Reference row; no horizontal overflow. At 1600px tabs are 580x46 with four 142.5px tracks; at 1000px tabs are 236.67x82 with a contained 2x2 grid.

Screenshots were inspected through the Chrome DevTools preview connector; its file sandbox did not allow saving to /tmp, so the visual evidence is available as inline connector captures and geometry read-back.

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