Skip to main content

QA coverage map

This page is the declared QA map for Agent-Up's own user-facing surfaces. Each cell is covered, gap, blocked by #N, or n/a. A surface with no flow is a recorded gap, not an accident.

A pull request that adds a user-facing Desktop or Mobile surface updates this table in the same change. AgentUp.Architecture.Tests fails an incomplete table, an empty cell, or a first-suite flow that is missing from the runners.

The first suite runs from au-debug validate --surface desktop and au-debug validate --surface mobile. Each command writes <out>/<flow-id>/report.json, numbered step screenshots, and server.log. Fixtures register the repository-root agent-up.json workspace on an isolated real Server. They do not assume a developer's dirty tree or an enabled forge module.

SurfaceJourneyDesktopMobile
First run / connectEnter a server URL, connect, reach a workspacecoveredcovered
First run / DemoConnect to the built-in Demo servergapgap
Workspace listEmpty state, then a registered workspace appearscoveredcovered
Workspace lifecycleStart, applications reach Running, stopcoveredcovered
Application tabsSelect an application, see its port and statecoveredcovered
ConsoleOpen an application console, see real outputcoveredn/a
DiagnosticsSee entries for a failed applicationcoveredn/a
Git reviewWorking-tree changes and diffcoveredcovered
Git historyCommit historygapgap
CommitsCommit queue / proposal queuegapgap
AgentsAgent availability, remedies, start a session, transcriptcoveredcovered
Autonomous loop / checklistPrecondition checklistcoveredcovered
Autonomous loop / activateActivate after a satisfied checklist, typed terminalgapgap
Forge review / hostingHosting strip notInstalled with bootstrap remedycoveredcovered
Forge review / proposalOpen a proposal, checks, review threadsgapgap
CapabilitiesList modules, enable onegapgap
Validation panelList flows for an application, replay onecoveredn/a
Browser isolationTwo workspaces, two profiles, no shared sessiongapn/a
SettingsServer switch, sign-outgapgap
Example Web appThe existing recorded Application-surface flowcoveredn/a
Example APIAPI-backed page renders seeded rowsgapn/a
InstallerInstall, launch, uninstallblocked by #527n/a

n/a​

Every n/a is a surface that does not exist on that client:

  • Console (Mobile). Mobile has no application console tab. Output stays on Desktop.
  • Diagnostics (Mobile). Mobile has no Diagnostics / audit tab.
  • Validation panel (Mobile). The Validation sidebar is Desktop-only and appears once an application is selected.
  • Browser isolation (Mobile). The PWA does not host per-workspace Desktop-style WebView profiles.
  • Example Web app (Mobile). That journey is an Application-surface flow against a hosted HTTP app, not Mobile chrome.
  • Example API (Mobile). API-backed pages are Application-surface flows, not Mobile chrome.
  • Installer (Mobile). LocalInstaller is a desktop dashboard. It is not a Mobile surface. Desktop stays blocked by #527.

Workspace lifecycle is not n/a on Mobile: the Apps dashboard exposes Start workspace and Stop workspace.

First-suite flows​

JourneyDesktop flow idMobile flow id
First run / connectconnectconnect
Workspace listconnectconnect
Workspace lifecycleworkspace-lifecycleworkspace-lifecycle
Application tabsconsole-diagnosticsworkspace-lifecycle
Console and diagnosticsconsole-diagnosticsn/a
Git reviewgit-reviewgit-review
Validation panelvalidation-paneln/a
Agents (#529 merged)agentsagents
Autonomous loop / checklist (#526 merged)autonomous-loopautonomous-loop
Forge review / hosting (#525 merged)forge-hostinggit-review
Example Webb6e1c8a04f5d4e2f9a7c3d1e8b0f2468 (Application)n/a

Agents, autonomous loop, and forge are no longer blocked. The isolated Server has no forge module and no host credential, so those flows cover the shipping empty states: agent availability and remedies, the unattended-loop checklist, and the Git hosting strip's notInstalled copy with Run: agent-up capabilities bootstrap. Starting test-agent-scripted covers a live session on a Development Server. The isolated Server puts that executable on PATH through a fixture shim. Opening a forge proposal, activating a loop through a satisfied checklist, and Demo remain gaps.

Workspace start in this suite asserts the workspace leaves Stopped (Stop workspace is visible). Stop is disabled until Running or Degraded, and every application reaching Running is the Runtime capability E2E job; a cold start of this repository exceeds the validation wait. Console, diagnostics, and the Validation sidebar select Docs without starting processes.

Authoring​

A flow names a user's intent, not a click path. Each step has one action and at least one expectation of the visible consequence. Server save rejects Selector/X/Y on Desktop and Mobile surfaces, and rejects a click or fill whose only Visible/Enabled expectation is that the same control still exists. Visible or Enabled with value false is a hidden or disabled outcome, not that warning. Flows are independently runnable and start at the connect surface; they do not deep-link past chrome.

Next in this slice

Playwright generation

How Application, Desktop, and Mobile flows are stored and replayed.