Portal gallery

A walk through the live TFactory portal at tfactory.freundcloud.org.uk, captured against real verify runs. These are authenticated screenshots of the running system — not mock-ups. Where a tab is empty or a run did not reach a level, the UI says so plainly; we kept those shots rather than staging green ones.

The front door

TFactory login — API-token or SSO

The login screen. Authenticate with an API token (or SSO); the SPA validates the token against the API before rendering the app.

The pipeline board

The TFactory pipeline board — Plan, Generate, Execute, Report columns with live tasks

The four-stage pipeline (Plan, Generate, Execute, Report) above columns of real tasks — including a triaged Report-column task and a failed run. This is the live state, in-pod verify path.

A task in the planning stage with lane chips and planner warnings

A task open on its Status tab — lane chips (unit · browser · api · integration · mutation), subtask counts, and any planner warnings.

A finished task, tab by tab

Task detail — overview

Task detail opens on Status. The tab strip — Status · Lanes · Verdicts · Report · Acceptance · Logs · Evidence — is enabled per tab as the run produces the data behind it.

The Verdicts tab — real reject verdicts with the five-signal breakdown

Verdicts. Each generated test gets a verdict (accept / flag / reject) backed by five signals: coverage, stability, mutation, lint-promotion, and semantic relevance.

The Report tab — VAL ladder above the triage buckets

The Report tab leads with the Verification Assurance Level — exactly how far the run was verified — above the Triager's dedup / commit / flag / reject buckets.

The Acceptance tab — per-criterion fidelity, honest UNVERIFIED labels

Acceptance-criteria fidelity. Each criterion is graded against a test that actually ran; criteria with no passing test are labelled UNVERIFIED rather than rounded up.

The Logs tab — phase-by-phase agent logs

Logs. The phase-by-phase record of the five agents running the pipeline.

The Evidence tab — honest about an absent browser lane

Evidence. For browser-lane runs this is a gallery of screenshots and recordings; for a task with no browser lane it says so plainly.

A failed run, shown honestly

A failed task — replan budget exhausted, with planner warnings

A failed run on the in-pod path: the planner exhausted its replan budget and the run is marked failed rather than looping forever. The warnings explain why.

Inside a project

The MCP server configuration and agent roster

MCP. Which MCP servers are available to the agents, plus the agent roster (Spec Gatherer, Researcher, Writer, Critic, …) and their models.

The Files browser

Files. Browse the task workspace — generated tests, contract, findings.

Visual Reports

Visual Reports — visual-inspection baselines and diffs.

The GitHub PRs view

GitHub PRs. The PR endgame, surfaced inside the project once a GitHub token and repo are configured.

Test Plans — GitHub-connected view

Test Plans. Connects to GitHub to organise plans against issues.

These screenshots were captured by scripts/capture-portal-gallery.ts driving the live portal with a real form login (Playwright + Chromium) and saved to docs/static/img/gallery/.