Skip to content

Add persistent drag-and-drop column ordering to field tables - #47

Merged
VibeSWE merged 2 commits into
mainfrom
t3/ed2ea065
Oct 17, 2026
Merged

VibeSWE merged 2 commits into
mainfrom
t3/ed2ea065

Conversation

@VibeSWE

@VibeSWE VibeSWE commented Oct 16, 2026 •

Copy link
Copy Markdown

Field tables now support dragging column-header grips to change display order. Logs and SQL also provide draggable selected fields and earlier/later buttons in the column picker; arrow keys work on every grip. Sorting and row values stay aligned in both paginated and virtualized tables.

Column preferences persist per server and user: Logs remembers selections per dataset, Metrics remembers table order, and dashboards remember each tile independently. Explicit log views and shared links preserve their own order. SQL drafts and saved queries retain selections and order across reruns/reloads, while newly returned fields appear without revealing fields the user intentionally hid.

Validation:

  • Production build and formatting checks pass.
  • 2,411 unit tests pass (14 existing skips).
  • 167 selected browser tests pass across the regression run and targeted reruns, including the initial eight ordering/persistence tests. SQL and ordering tests were rerun after the final schema-handling fix.
  • Manually checked light and dark themes using the local preview.
  • Sol 6.1 and Opus 5.5 reviewed the change through the Swamp/gh-comment workflow. Their keyboard-focus and picker-stability findings are fixed; all 10 ordering/picker browser tests pass after the fixes.
  • Stabilized two preexisting CI test assumptions: metrics metadata counting and accessibility scans during entrance animations. The affected cases passed 10 metrics reruns and 40 accessibility checks.

Preferences are browser-local except when included in existing server-backed saved log views. This PR does not deploy the frontend.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

@blacksmith-sh

This comment has been minimized.

@comment-clanker comment-clanker Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed PR #47 at 18ec1e45 against 63a95b90 using Sol 6.1. One actionable accessibility issue found. Reviewed the full diff and surrounding persistence/table code; reproduced the issue in Chromium against the checkout with mocked API responses.

Comment thread frontend/src/components/explorer/VirtualLogTable.tsx Outdated

@comment-clanker comment-clanker Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Independent review: column ordering and preferences (PR #47)

Reviewer model: Claude Opus 5.5 (claude-opus-5-5)
Reviewed SHA: 18ec1e45 (base 63a95b90)

I read the full base..HEAD diff and the code around it: LogsPage view and dataset-reset flow, logViewReducer, VirtualLogTable windowing and keyboard handling, SQL run, draft and library persistence, DashboardTile/TileChart call sites, and ResultsCard. I checked the two findings below against a local Vite dev server (demo mode, port 5197) using throwaway Playwright scripts outside the repo. I did not change any tracked files.

Two actionable findings: one Medium (accessibility) and one Low (UX). I found no persistence or correctness regressions. The per-user, per-server and per-table key isolation, malformed-storage handling, explicit shared-view precedence, SQL draft and library round-tripping, and SQL schema reconciliation behave as their tests describe.


Comment thread frontend/src/components/explorer/VirtualLogTable.tsx Outdated
Comment thread frontend/src/components/explorer/ColumnPicker.tsx Outdated
@VibeSWE
VibeSWE merged commit 9747e2b into main Oct 17, 2026
14 checks passed
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