Story: Verify the compute-grid and tenant flows from the desktop UI

Table of Contents

This page documents a story in Sprint 25. It captures the goal, current status, acceptance criteria, and the tasks that compose it.

1. Goal

The post-merge system test of the compute and iam binds (the post-merge system-test report) ran with no desktop UI session available. By directive it exercised every flow through ores.shell. The shell covers the service surface but not the UI surface: the desktop client is a second, independent consumer of the same services, with its own rendering of tenants, grids, workunits and results, its own permission gating and its own error paths. This story closes that gap: when a UI session is available, drive the same compute-grid and iam/tenant flows through the desktop client, and record what passes, what fails and what the shell-only run could not see.

2. Status

Field Value
State ABANDONED
Parent sprint Sprint 25
Now Nothing.
Waiting on Nothing.
Next Nothing.
Last touched 2026-09-23

3. Acceptance

  • Tenant flows pass through the UI on a live environment: provisioning, lookup, RLS isolation and delete, with the F2 and F3 behaviours rendered as the UI intends (the change-reason picker shows the namespaced catalogue; the UI refuses to delete the system tenant).
  • Compute-grid flows pass through the UI: batch creation, dispatch, workunit and result lists, and output download, against the same brave_hopper environment the shell smoke exercised.
  • Each flow records UI-specific findings the shell cannot see: permission gating, error rendering, refresh behaviour, and any divergence between the UI's own protection and the service surface.
  • The verification record lands in this story's tasks with the same evidence discipline as the system-test report: findings, resolution state, and owning PR.

4. Notes

Follow-up of the post-merge system-test report, which records this story among its follow-ups: the report's S1 (iam/tenants) and S2 (compute) legs ran through ores.shell only, per the shell-only testing directive. The desktop UI is the delivery vehicle for the same flows; its verification needs a UI session, so this story stays BACKLOG until one is available. Findings F2 and F3 of the report are UI-visible first: F2 (the bare new_record change reason) will fail in the UI's change-reason picker against a strict catalogue before it fails anywhere else, and F3 (the unguarded system tenant delete) is today protected by the UI only — the UI run is the evidence that protection still holds.

5. Tasks

Task State Start End Description
Scaffold story: Verify the compute-grid and tenant flows from the desktop UI DONE 2026-09-06 2026-09-06 Story scaffolding rides this task: documents, sprint wiring, and the scaffold PR. Close it before merging that PR.

6. Decisions

7. Out of scope

  • Shell re-verification of the compute-grid and tenant flows: the Manage the compute grid from the shell story owns the shell side; the system-test report already recorded its evidence.
  • Service-side fixes the UI run may surface: findings land here with their owning fix PR, in the same style as the report.

8. Result

Abandoned at sprint 25 close. The Qt client that this story targets was removed in sprint 25 (Retire Qt and emit the UI metadata to TypeScript).

Emacs 29.3 (Org mode 9.6.15)