This proposal covers pipeline step 7 — Iterate. Today build versions exist only as mock rows in builderMockData.ts with no config diff between builds, no validation delta, and no session history per version. A builder who wants to understand what changed between two sandbox runs — or why a validation check that passed in one version now fails — has nowhere to look. This stub captures the problem, sketches one wireframe, and lists the open questions that must be resolved before a full proposal can be written.
The versions arrays in apps/web/src/lib/builderMockData.ts represent a build history as an ordered list of version objects with id, number, and createdAt, but each version record carries no config snapshot, no validation run results, and no attached sandbox session identifiers. A builder who runs two sandbox sessions on the same build and gets different outcomes has no in-tool mechanism to trace the difference back to a config change.
The workspace in apps/web/src/components/builder/GameWorkspace.tsx renders version history as a list but provides no comparison mode — the builder cannot select two versions and see a side-by-side diff of their config values or validation outcomes. There is also no concept of a regression: if a validation check that passed in version 3 fails in version 4 due to a config change, the builder must manually reconstruct what changed by inspecting both versions' configs separately, and there is no tooling to surface this automatically.
The workspace gains a version timeline with per-version status chips (validation result, sandbox run count) and a compare drawer that opens when two versions are selected, showing a config diff and a validation delta side by side.
| File | Change |
|---|---|
apps/web/src/components/builder/GameWorkspace.tsx |
Add version timeline component with per-version validation chips and sandbox-run counts; add compare mode that enables selection of two versions and renders a config diff and validation delta drawer. |
apps/web/src/lib/builderMockData.ts |
Extend the versions arrays with config snapshots, validation run results, and sandbox session identifiers per version so the timeline and compare drawer have real structured data to display rather than bare metadata rows. |
Today step 7 is notional — the versions list exists in mock data but provides no diff or regression signal; after this proposal it becomes an active iteration workspace where a builder can compare any two versions, pinpoint the config change that introduced a validation failure, and make an informed decision about whether to revert, adjust, or accept the change before advancing to step 8.
builderMockData.ts and the UI affordances in the timeline.Once the open questions above are resolved, the version timeline and compare drawer can be specced in full. The next and final proposal in this reading order is Proposal 06 · Promote / Handoff, which covers pipeline step 8: the promotion stage ladder that takes a build from internal playable through to a certifiable package ready for operator distribution.