Open in Studio, download the editable project, or read the A/B/C design report. The project opens on C final; A, B and the superseded C draft remain saved. The A/B process report keeps the tested layouts, scenarios and results together.

This is a fictional change review on Calder Yards, the existing mixed-use example. We used Codex over Laydyne MCP to carry the work from the original layout through changes, comparison, drawing issue and saving, then checked the exported file in a fresh browser profile. It establishes that this workflow can be resumed with its inputs and evidence. It does not establish that it is cheaper or easier than an AI managing its own files.

The client asks for a café extension and two more residential floors

The designer starts with 20 floor areas: the CY building and the surrounding site G. The facilities team wants to discuss two changes: give the café the whole adjacent retail unit R3, with four baristas instead of two; and copy the top residential floor L18 twice, extending the residential and service lifts and both stairs.

The questions differ. A/B tests the combined café layout and staffing change under the same morning demand. C is a geometric addition, not a claim that the larger occupied building can handle its demand. Arrival assumptions are illustrative; no customer measurements were supplied.

The agent ran three separate sessions, each with a 20-minute limit: S1, café A/B, S2, extra floors, and S3, reopening and final handover. The same working folder carries their handoff, while the browser keeps the named project. The flow below separates what the person asks, what their AI calls and what Laydyne retains.

A and B retain exactly what was changed

The agent restored the published as-drawn layout and saved A with two baristas. For B it shortened wall-w19 from 20.07 to 12.07 m to open R3, changed that unit's zone to café, and added a counter, a queue zone and four tables. Café-tagged area went from 106.41 to 260.30 m². The building comparison reports six added and two changed parts, 2,418 unchanged; no floors or connections changed.

L1 with the six additions and two changes marked from A to B
L1 with the six additions and two changes marked from A to B

Laydyne's actual A-to-B drawing, compressed to WebP for this page. The vector drawing retains the full sheet. Some existing core and connection labels are crowded; use the full PDF or model when reviewing those details.

The scenario change was only the barista count, from two to four. The saved A/B record contains both complete input snapshots, so the comparison can still be read after the live editor moves on to C.

B is a candidate under this input, with wide uncertainty

Both options ran for 9,000 seconds on seeds 7, 8 and 9. These are means of three runs; the last column is the paired 95% interval for B minus A, not a range of field prediction errors. The standalone HTML's “Paired range” lists the observed minimum/maximum across seeds; this table uses the confidence intervals in the saved JSON.

MeasureA: original, 2 baristasB: extended, 4 baristasDifference, 95% interval
Mean café resource wait307.21 s6.16 s−301.06 s (−900.89 to +298.77)
Peak café queue, mean of runs20.333.33−17.00 (−49.30 to +15.30)
Mean completed-job cycle146.60 s94.59 s−52.01 s (−155.03 to +51.01)
Completed jobs, whole model8088080
Total travel, whole model62.74 km60.31 km−2.44 km (−3.44 to −1.44)

The café wait and queue means favour B, but their intervals include zero. B is a candidate to discuss under these inputs, not a confirmed improvement. Layout and staffing changed together, so this does not isolate the value of extra area. The 808 jobs include office workers, residents, couriers and concierge tasks; they are not café orders. Recorded playback is limited to the first 500 traces/entries, while the aggregate metrics cover all jobs.

The next decision needs measured arrivals and service times and the cost of staffing and fit-out. This run supplies neither an ROI nor a general capacity promise.

C adds geometry; the draft's floor numbers are corrected

Copying L18 twice adds 2,080 m² of floor plate, 198 parts, 12 home zones and eight lift/stair connections. Undo returned the model to B's 20 areas, 2,426 parts and 85 connections; Redo returned the additions before C was saved.

There was a preparation mistake. Our S2 prompt copied numeric levels 19/20 from an older verification script, without checking that L18 was level 17. The research script specified IDs L19/L20, not these numeric levels. The two new floors therefore displayed as L20/L21. This was our instruction error, not a product bug.

S3 retained those exact inputs as “C draft — incorrect floor numbers; superseded by C final”, then corrected only the new floors' level values from L18's metadata:

FloorNumeric levelElevationHeight
Existing L181763.9 m3.2 m
Final L191867.1 m3.2 m
Final L201970.3 m3.2 m

All parts and the eight new connections were retained. The final project has 22 areas, 2,624 parts and 93 connections. The 3D image's 21 floor areas refer to CY only; the project total includes site G. Default checks on every area and all connections found zero issues. They exclude 18 existing within-group narrow-gap advisories on L2 (0.60–0.61 m), which remain recorded.

C's scenario keeps B's demand; no C simulation was run. Extra home zones are geometric quantities. Structure, fire/escape, accessibility, utilities, lift dispatch with increased occupancy and financial feasibility remain unvalidated.

The saved model reopens with its evidence

After a browser reload and a blank workspace, the new S3 AI session opened saved version 2: the draft geometry fingerprint matched fnv1a-91735058. It corrected the numbering, restored A and B independently while keeping C final, and returned to C final in the building overview.

The agent issued an L1 drawing for comment and saved the same browser project as version 3. Opening version 3 again matched C final's fnv1a-229a03af, its counts and the unchanged saved A/B comparison. The issued PDF has a register page and plan; the standalone L1 sheet is A1 at 1:100. These are illustrative review drawings, not construction approval.

S3 reached its 20-minute limit before a completion signal. The save, final readback and native export had already completed; we kept the interrupted run and finished the article and mechanical checks without another AI run. It is not counted as a fully completed agent session.

The distributed JSON then opened once in a fresh browser profile. Building, active scene, saved view, design workspace, process workspace, drawing issue register and design lineage matched semantically. All 29 original history entries remained; importing added one entry. The file retains six design options, six process inputs and two complete saved comparisons, including the original sample records. Fingerprints check consistency; they do not authenticate imported data.

To reopen it yourself, download the project and use Studio's project-file Open action. Browser named saves stay in that browser profile; the exported file is the portable copy. Read the UC5 A/B names for this run's comparison and choose C final, rather than the clearly labelled old C draft, for the handover.

Time and recorded usage, including the interrupted session

All three sessions used Codex CLI 0.160.1, provider openai, model gpt-6.1-sol, reasoning effort max, verified in their logs. They used ChatGPT login against a local Studio on source 5ba13806. No built-in Laydyne AI calls were recorded. Other work ran on the same machine; this is one workflow, not a performance benchmark.

SessionTimeInput tokens (cached)Output (reasoning)Recorded MCP calls (refused)Standard API equivalent
S1: café A/B, completed536.378 s1,514,883 (1,400,832)16,686 (6,410)34 (0)$0.5350
S2: extra floors, completed850.385 s2,463,032 (2,321,536)27,199 (9,814)43 (2)$0.7871
S3: stopped at limit, lower bound1,200.038 s≥10,113,829 (9,931,776 recorded)≥31,139 (13,040 recorded)77 (1)≥$1.6687
Total, including partial usage2,586.801 s≥14,091,744 (13,654,144 recorded)≥75,024 (29,264 recorded)154 (3)≥$2.9908

Completed S1/S2 totals match their request records. S3 has 81 recorded requests and no task_complete; its tokens and cost are lower bounds, not zero and not a completed-run total. Recorded uncached input is 114,051 / 141,496 / 182,053 tokens respectively. S2's two refusals requested maxCharacters=800000 above the 750000 limit; S3 supplied expectedRevision to the display-only view tool. Both were corrected. The agent also recorded 117 shell commands, one unsuccessful empty-folder search.

Standard API equivalents use the saved 2026-10-07 pricing table and request usage, referenced to OpenAI API pricing: per million short-context tokens, $2 uncached input, $0.10 cached input and $10 output, with reasoning included in output. Each request is priced separately; none exceeded the recorded 272,000-token long-context threshold. Invoice spending and the client's actual service tier were not obtained. Preparation and collection, browser waiting and 280 mechanical MCP calls are outside the agent time/token table; they are separately recorded, including the portable import.

Files to keep and questions still to answer

The HTML reports are the exact files returned by MCP, 3.67/3.74 MB, and were opened directly at 1440 and 390 px. Wide process tables require horizontal scrolling on the narrow view. No model or evidence was removed from the distribution.

The demonstrated value here is a shared editable state with frozen alternatives, comparable inputs and a portable record that opens again. How much this saves a team, whether it predicts their building and whether B or C should be funded still require evidence from that team.