RenderLabActivity

§RQ-IM-7 / §RQU-1 — the human face of the raybench harness.

In the namespace construct::ui. Declared in src/libs/libconstruct/construct/ui/RenderLabActivity.hpp.

Detailed description

Forked from MeshLabActivity the way MeshLab was forked from BanterLab. Everything here reads the same `lab::TestDB` the bench writes and the same artifact directory beside it — deliberately no IPC, so it works identically whether the campaign was run from inside the app or from the CLI on another machine and copied over. That also makes "live" nothing more than a poll: a running campaign commits rows as it goes.

What it is for, in the order the spec asks for it:

- **Live view** — a run ticker and the newest plates while a campaign is executing. Watching tests run is a first-class feature here, not log tailing. - **History browser** — sortable metrics, tag chips, a Pareto scatter over (error, evals/pixel), and click-through to the plates beside the ground truth. - **Inspect everything** — every artifact a run produces is viewable in the window; nothing needs a file manager.

Note: Record MANAGEMENT (§RQU-1's fourth bullet) is not here, and the reason is recorded rather than left as a gap: this tree's scenes are seed C++ plus lab JSON, not DB rows, so an editor would be writing source files from a GUI. The CI set is shown read-only, which is the part that was actually load-bearing — it is what the regression gate runs. See the spec's deferred-work ledger.

In this section