TenantAtlas/specs/058-tenant-ui-polish/contracts/ui.md
2026-01-21 08:12:46 +01:00

1.3 KiB

UI Contracts — Tenant UI Polish

This feature does not introduce HTTP APIs. These contracts describe UI routing, filters, and definitions that must remain stable.

Routes (tenant-scoped)

  • Dashboard: tenant dashboard page (new custom page; replaces default dashboard entry).
  • Inventory hub: Inventory cluster root (routes to first page/resource in cluster).
  • Inventory items: Inventory items resource index, under cluster prefix.
  • Inventory sync runs: Inventory sync runs resource index, under cluster prefix.
  • Inventory coverage: Inventory coverage page, under cluster prefix.
  • Operations index: OperationRunResource index (/operations).
  • Operation run detail: OperationRunResource view page.

Operations Tabs (FR-009)

Tabs filter the Operations table by:

  • All: no extra constraints.
  • Active: status IN ('queued','running')
  • Succeeded: status = 'completed' AND outcome = 'succeeded'
  • Partial: status = 'completed' AND outcome = 'partial'
  • Failed: status = 'completed' AND outcome = 'failed'

KPI Definitions

  • Inventory coverage % = Restorable / Total (Partial is separate, does not inflate %).
  • Drift stale threshold = 7 days.
  • “Recent” lists default size = 10.
  • “Active operations” shows two counts:
    • All active runs (queued + running)
    • Inventory-active runs (type = inventory.sync, queued + running)