The GitHub Actions job "Direct Backport Push" on texera.git/main has succeeded.
Run started by GitHub user github-merge-queue[bot] (triggered by 
github-merge-queue[bot]).

Head commit for run:
9264975c2d05d2520593f84060b39db23ab8eae0 / Meng Wang <[email protected]>
feat(frontend): add the on-canvas per-execution warehouse picker (#8551)

### What changes were proposed in this PR?

The workspace-side half of per-user warehouses (#6870): a warehouse
picker on the canvas, beside the computing-unit selector it mirrors,
choosing which warehouse the next execution writes to.

- **The picker** (inside `ComputingUnitSelectionComponent`, like the
computing-unit dropdown it sits beside) — shown only while the
deployment enables the feature; each entry carries the owner avatar and
a per-row delete, plus a create entry opening the shared create dialog.
The list refreshes on every dropdown open, and preselection picks the
latest execution's warehouse, falling back to the user's first one — so
a run needs no explicit pick. A status failure clears the pick rather
than letting a stale id ride the next request.
- **Run gating** — with the feature enabled, every execution must have a
warehouse: while none is selected the Run button becomes "Create
Warehouse" and leads to the create dialog, the same shape as the Connect
flow. (The backend-side requirement follows separately — #7751 stays the
tracker.)
- **The request** — the picked `warehouseId` rides the execute request
(`ExecuteWorkflowService` reads the pick from `WarehouseService`, where
it lives); executions expose `whId` so the preselect can read the latest
run's warehouse.

Flag off (the default): the picker never renders, the Run button is
untouched, and requests carry no warehouseId — no user-visible change.

### demo


https://github.com/user-attachments/assets/20e81213-ba36-450c-861e-594112515b50

### Any related issues, documentation, discussions?

Closes #7817. Part of #6870, on top of the dashboard tab (#8005); the
backend enforcement (#7751) follows.

### How was this PR tested?

- 20 new Vitest tests: 15 on the picker (preselect from the latest
execution, first-warehouse fallback, disabled/failed states clearing the
pick, manual pick surviving refreshes, create/delete flows, dropdown
rendering), 3 on the Run gating, 1 pinning `warehouseId` on the execute
request, 1 on the selection state. One pre-existing assertion
modernized: the remembered-unit test asserted the latest-execution
lookup's absence, which the warehouse preselect now legitimately
performs — it asserts the unit choice directly instead.
- The affected suites pass in full: 5083 tests across the workspace and
dashboard trees.
- Failure paths verified rather than assumed: the preselect, the Run
gating, and the request field were each broken on purpose and the suite
confirmed to fail for the expected reason before being restored.
- Screenshots/video from a local flag-on deployment follow in the
comments.

### Was this PR authored or co-authored using generative AI tooling?

Generated-by: Claude Code (claude-opus-5, claude-fable-5)

Report URL: https://github.com/apache/texera/actions/runs/35307114157

With regards,
GitHub Actions via GitBox

Reply via email to