Skip to content

Assistant: surface JOIN + Work areas/SET RELATION (needs catalog work-area state) #34

Description

@DDecoene

Follow-up split out of #33.

#33 brought the Assistant catalog up to date for the post-v0.6 commands that map onto existing catalog data (CSV, SORT, SUM/AVERAGE, REINDEX, PACK). Two items were deferred because they need work-area state the catalog does not currently expose:

  • JOINJOIN WITH <alias> TO <file> FOR <cond> [FIELDS <list>] (Add JOIN ... TO <file> to materialize a combined table from two related areas #10). A Join wizard needs to offer the user another open work area (alias), plus FOR/FIELDS inputs.
  • Work areas / SET RELATIONSELECT <alias>, SET RELATION TO … INTO …, clear relation. A new "Work areas" category; the relation wizard needs the list of open areas.

Required plumbing

The catalog WebSocket message (Catalog in src/shared/types.ts) carries databases, tables, columns, indexes, reports, programs — but no list of open work areas / aliases. Add an areas list (alias, table, relation target) to the Catalog message and populate it server-side (server/Session.ts catalog handler) so the JOIN/relation wizards can offer real dropdowns.

Scope

  • Add areas to the Catalog type + server catalog builder.
  • Join wizard (alias picker, target table, FOR condition, optional FIELDS) → JOIN WITH … TO … FOR … [FIELDS …].
  • "Work areas" category: SELECT <alias>, SET RELATION TO … INTO …, clear relation.
  • Playwright e2e for each new Assistant action (per the DoD Assistant-parity step).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions