Pipeline Lab split, part 1: the page looks the same

The Temporal signal banner moved out of the 3,300-line Pipeline Lab page into its own file. This is a move only; the page should render exactly as it did on main.

6 Oct 2026 · branch refactor/pipeline-lab-split-p1 · captured against propflow-stage · at 322895d791a

Data note. Every name and balance below comes from propflow-stage, which is anonymized by construction (ADR-0097/0110 — phones in the impossible +1000 NPA, emails @example.test). The identical capture against prod would carry real tenants' names and balances and is not safe to attach anywhere, which is why the generator refuses to run against one.

1 · Before: Pipeline Lab on main

The page on origin/main at 022cfc1502b, the commit this branch was cut from, captured from a dev server running that commit. The capture tool flags this section because that commit is also the current tip of main; that is expected here, since the branch adds one commit on top of it. The options and conversation requests are held open in both captures so that no test phone numbers render.

Asserted in the captured DOM — Pipeline Lab · Tenant · Handyman · No run yet. The title, both chat threads and the empty run pane are on screen.

Before: Pipeline Lab on main
⚠ Provenance. Captured from commit 022cfc1502b, read from the worktree the server was started from (/Users/miniclaw/code/PropFlow/propflowai/.claude-worktrees/pipeline-lab-base) — the server could not report its own commit, so this is the weaker of the two sources. ⚠ That is the current tip of origin/main. If this section is labelled a BEFORE, it is not one — it is showing today's main, which already carries the change.
Sections 2–2 and notes

2 · After: Pipeline Lab on this branch

The same page from this branch's own dev server. Nothing should differ from the capture above: the only change is where the code for the Temporal banner lives. That banner appears only after a run that creates or updates a work order, so it is not on this fresh page; its output is pinned instead by src/__tests__/pipeline-lab-temporal-signal-banner.test.tsx, which renders it and checks the workflow id and the Temporal Cloud link.

Asserted in the captured DOM — Pipeline Lab · Tenant · Handyman · No run yet. The same four strings as on main.

After: Pipeline Lab on this branch

Why this is enough for a move

The two captures were compared pixel by pixel: the only differing region is the animated Clara orb in the bottom-right corner (a 51 by 51 pixel box), which moves on its own. Everything else is identical. The moved code was also compared line by line with the old block: the only difference is the word export on the two functions the page and the new test import.

PropFlow Docs