Skip to content

Highlight the tables a query references in the schema canvas #717

Description

@galshubeli

Group: Customer · Priority: P2 · Effort: M · Impact: Med

When a query came back, nothing connected the generated SQL to the schema on screen. The user had to read the SQL, find each table in the schema viewer by eye, and work out the joins themselves — the schema graph and the answer were two unrelated views.

Delivered

QueryWeaver#715 — SQL in chat now highlights the tables and relationships it references, in the schema canvas:

  • sqlTables.ts (new) — table detection across common query syntax and function expressions
  • QueryHighlightContext (new) — carries the highlight set so chat and the schema viewer stay in sync
  • SchemaCanvasControls (new, 472 lines) — search tables and columns, switch layouts, zoom, centre, pin nodes, focus mode
  • SchemaViewer — automatic navigation to highlighted tables, table selection, hover highlighting, clear-highlight action; layouts stay stable while highlights change, and highlights reset when the active database schema changes
  • ChatMessage — visual indicators and controls on a highlighted query
  • @falkordb/canvas ^0.0.45 → ^0.2.7

11 files, +995/−210.

Follow-ups worth tracking

  • Table detection is heuristic. It parses SQL text rather than using a real parser, so CTEs, subquery aliases and quoted identifiers are the places it will miss. Worth a test table of query shapes it must handle.
  • @falkordb/canvas 0.2.7 is still a pre-release. Both this app and GraphRAG-Server now sit on it — decide whether to track the 0.2.x pre-release line or wait for a stable tag.
  • This pairs naturally with query explainability (QueryWeaver#361), which asks for showing why a query produced its result. The highlight plumbing is now in place for it.

Refs: QueryWeaver#715 (merged 19 Aug) · @falkordb/canvas v0.2.7 · related QueryWeaver#361

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions