Skip to content

feat(explorer): preview tables on double-click and refresh rows - #775

Closed
2160039878-cyber wants to merge 2 commits into
libredb:mainfrom
2160039878-cyber:feat/table-data-preview-773
Closed

feat(explorer): preview tables on double-click and refresh rows#775
2160039878-cyber wants to merge 2 commits into
libredb:mainfrom
2160039878-cyber:feat/table-data-preview-773

Conversation

@2160039878-cyber

@2160039878-cyber 2160039878-cyber commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Description

Double-clicking an Explorer table now opens and runs the existing provider-specific preview query in a new tab, preserving the user's open queries. Previously, it only expanded and collapsed the table; previewing required the Select Top 50 menu action.

The preview has a Refresh rows action that reruns its original generated query on the same tab. Explorer has a separate Refresh schema action, including retry from empty/error states. Both standalone Studio and embedded StudioWorkspace connect these controls to their existing execution and schema-fetch paths.

Type of Change

  • New feature (backward compatible)
  • Documentation update
  • Test addition or update

Related Issue

Changes Made

  • Reuse the existing Select Top 50 handler for table double-clicks, with a discoverable tooltip. Single-click expansion and the existing menu action remain available.
  • Record the original preview query in an optional, session-only tab field. Refresh rows explicitly passes that query and tab ID, rather than the editor's selection, and replaces the result without opening another tab.
  • Hide row refresh after query edits and for stored agent results; disable it while executing, loading more rows, or holding pending cell edits.
  • Refresh the active connection's schema independently of queries, using a native button consistent with the platform integration rules. Wire standalone desktop/mobile Explorer and embedded Workspace, and document the behavior in the architecture guide.

Testing

  • Added regression tests first and observed failures before implementation.
  • bun run test:hooks --isolate --pass-with-no-tests -t '^useTabManager': 31 passed.
  • bun run test:components --pass-with-no-tests -t '^Studio|^StudioWorkspace|^Sidebar|^SchemaExplorer|^TableItem|^BottomPanel': 410 passed through the isolated component runner.
  • format, lint, typecheck, knip, readme:check, chart:check, channels:showcase:check, security:check.
  • bun run build, bun run build:lib, bun run attw.
  • Playwright in Microsoft Edge: actual Explorer/Sidebar/BottomPanel components and both production query execution hooks, with an isolated HTTP fixture. In both modes, double-click ran one bounded preview, row refresh retrieved changed data on the same tab, schema refresh discovered an externally added table without executing SQL, the original query survived, and editing the preview removed row refresh. The fixture also supplied a different editor selection to verify that refresh uses the explicit preview query.
  • Upstream CI on cd6732d: all 20 executed checks passed, including the full test suite, 100% line-coverage gate, browser E2E, PostgreSQL functional smoke, platform integration rules and channel E2E (2 conditional checks skipped).

Test Environment

Windows; Node.js 24; Bun 1.4.2; Microsoft Edge. The local browser fixture uses synthetic data and actual shared UI/query hooks; it is not a full application-shell or real-database E2E test. Full shell callback wiring is covered by component tests. The host lacks Helm/Docker; those checks and the full upstream E2E suite passed in Actions.

Checklist

  • Followed contribution guidelines and claimed the issue before coding.
  • Reviewed the final diff; no new dependencies or provider-specific branches.
  • Covered standalone and embedded wiring, edited queries, stored results, loading states, pending edits, and schema retry.
  • Local targeted tests, static checks, both distribution builds and browser acceptance pass.
  • Required CI test job passes the 100% line-coverage gate.

Additional Notes

AI-assisted with Codex. The implementation, regression failures, final diff, browser behavior and validation results were reviewed before submission.

@cevheri cevheri added the loop:needs-moderator-action Flagged by the maintainer loop: suspicious content or a decision only a human can make label Sep 10, 2026
@codecov

codecov Bot commented Sep 10, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@cevheri

cevheri commented Sep 10, 2026

Copy link
Copy Markdown
Member

Closing as an automated bulk submission that this project cannot absorb.

This account opened 35 pull requests here in under 25 hours, a median of 17 minutes apart and four inside the same 13 seconds. That is machine cadence, not a person working through a backlog, and 35 of its 41 pull requests across all of GitHub targeted this one repository. On the earlier ones I did review, the review threads were never answered and review was never re-requested, so nothing closed out.

This pull request never reached review, and the account is now blocked at the organization level, so it cannot move forward.

If a person wants to contribute here: open one issue, wait for assignment, and send one pull request at a time.

@cevheri cevheri closed this Sep 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

loop:needs-moderator-action Flagged by the maintainer loop: suspicious content or a decision only a human can make

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants