The GitHub Actions job "Required Checks" on texera.git/main has failed. Run started by GitHub user github-merge-queue[bot] (triggered by github-merge-queue[bot]).
Head commit for run: b6c434e56cfd97446f176f42cadff4343f53eaa4 / Meng Wang <[email protected]> feat(frontend): add the per-user warehouse API client (#7820) ### What changes were proposed in this PR? The client half of the warehouse dashboard tab: the HTTP client for the warehouse endpoints and the actions service that owns create and delete on top of it. No UI renders any of this yet — it is the first of three parts of #6933, split so each lands as one reviewable change. - **`DashboardWarehouse` / `WarehouseStatus`** — the wire types, mirroring what `WarehouseResource` returns: the display name, the id-derived Lakekeeper catalog name (#7753), flavor, creation time, and the owner fields (#7743), which are nullable because a user need not have set a name or an avatar. - **`WarehouseService`** — `GET /warehouse/status`, `POST /warehouse`, `DELETE /warehouse/{whid}`. The status call answers both questions the UI has in one round trip: whether the deployment enables the feature, and which warehouses the caller owns. - **`WarehouseActionsService`** — mirrors `ComputingUnitActionsService`: create and delete sit behind one service so the confirm dialog and its wording live in one place, shared by the dashboard tab and, later, the workspace picker (#7817). Its delete keeps the dialog busy until the request settles, because deleting a warehouse that holds data waits out Lakekeeper's asynchronous purge (#7742) — seconds, not milliseconds — and closing the dialog eagerly would read as a frozen row. With the per-user warehouse flag off, which is every deployment today, nothing calls any of this. ### Any related issues, documentation, discussions? Part of #6933 (first of three: API client, then the dialogs and row card, then the page that assembles them). Part of #6870, and consumes the merged backend: the endpoints (#6932), the owner fields (#7743), the id-derived catalog name (#7753) and the purge-aware delete (#7742). ### How was this PR tested? - Vitest specs for both services: the three endpoints and their URLs, the confirm dialog's shape, that nothing is deleted before confirmation, that the dialog stays busy until the request settles, and that a failure is reported without running the caller's refresh callback. 7 tests across 2 files. - Whole suite as CI runs it: `yarn test:ci` - Just this change: `ng test --watch=false --include "src/app/common/service/warehouse/*.spec.ts"` - Failure paths verified rather than assumed: each behaviour was broken on purpose and the suite confirmed to fail for the expected reason before being restored. - Exercised end to end against a local deployment with the flag on, backed by live Lakekeeper and MinIO: create, list, and delete, including a warehouse holding execution data. ### 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/33010118947 With regards, GitHub Actions via GitBox
