Skip to main content
← Back to list
01Issue
FeatureShippedExtensionsPublic
Assigneesskunk-ape

Relationships

⊘ blocks #2819⊘ blocks #2820⊘ blocks #2839

#2808 gatorwalk-factory studio: Simulate mode

Opened by skunk-ape · 9/30/2026· Shipped 10/1/2026

Part of the gatorwalk-factory studio (gatorwalk-factory/ in swamp-extensions). Read gatorwalk-factory/README.md and DESIGN.md first. Design proposal (decisions recorded 2026-09-30): https://claude.ai/artifact/BNCKp7w3G3Q8VdmnCDDWHP. Prototype, with its source under source/ (read it with the Artifact tool): https://claude.ai/artifact/1wAxrpUqZ47FAjE4fU9idD. Both links are private to the maintainer.

Updated 2026-10-01 for #2884: a factory's saved scenarios are no longer files. They are the scenarios: list under globalArguments: in the factory's model definition (models/@swamp/gatorwalk-factory/factory/<factory>.yaml), beside definition:. Design mode (#2807) already loads them from that file, and a definition event covers them; Simulate reads them only through that source and watch path. A scenario has no factory: key.

Goal

The studio's Simulate mode (required for launch): step saved scenarios through the factory on the real engine in the browser, and walk a work item through by hand to explore. You see where a walk stalls or is refused, with the engine's own messages, and the scenarios re-run whenever the factory's model definition changes on disk.

The page does not write scenarios (decided 2026-09-30): the agent writes them into the factory's scenarios: list. The page can show a walk as a scenario entry and copy it, and the agent saves it.

Scope

  • Simulate replaces the read-only Scenarios mode: the studio's modes are Design and Simulate.
  • Pick among the factory's saved scenarios, as Design mode's source loads them. No scenario editor and no save.
  • Run the scenario runner (#2805) in the page on load and after every definition event for the factory. Show a pass/fail summary naming each unexpected step.
  • Walk from here: from any frame, take the next step yourself instead of the scenario's: move along an exit (READY, or PERSON as a manual move), approve or decline, override a cycle limit, or wait. The runner applies it on the real engine and the walk continues from there. At launch, record offers only payloads that the factory's saved scenarios already use for that product; #2809 adds generated ones. A walk survives a definition change: its steps replay against the new definition.
  • Copy as scenario: show the current walk (the scenario's steps up to the branch, then yours) as one scenario entry for the scenarios: list that parses with #2805's schema, with an expect for each refusal seen and the final stage, in a read-only view with a Copy button. You hand it to the agent, which names it, adjusts it and saves it.
  • Graph overlay:
    • the current stage glows, and visited stages show their entry count;
    • exits taken show their count;
    • the current stage's exits show READY, PERSON or BLOCKED, with the engine's failure messages;
    • a refused move flashes red;
    • a token runs along each transition taken, with no motion under reduced motion;
    • the camera follows the current stage.
  • Panel: the step result; the status packet (stage, cycle, work mode, exit readiness); the journal; and metrics from computeMetrics (time in stage, re-entries, waits on a person, overrides) on the simulated clock.
  • Dock: transport (first, back, play/pause, step, last, speed), a timeline tick per step coloured by kind, and a ribbon of the stages over the steps. Keyboard: Space plays, arrow keys step.
  • Start from the prototype's source/src/app.ts (the simulate parts).
  • One PR for the whole scope.

Acceptance

  • Every example factory's saved scenarios play end to end in the page's runner; changing a factory's model definition on disk so a step is no longer refused shows that step failing in the summary and on the timeline, without a manual reload.
  • A walk branched from build-swamp-extension's plan-churn scenario copies an entry that, added to the factory's scenarios: list, passes validate.

Needs: #2805, #2807, #2884.

02Bog Flow
✓OPEN✓TRIAGED✓IN PROGRESS✓SHIPPED+ 1 MOREASSIGNED+ 5 MOREREVIEW+ 20 MOREPR_MERGED+ 2 MORESESSION_SUMMARIZED

Shipped

10/1/2026, 4:34:21 PM

Click a lifecycle step above to view its details.

03Sludge Pulse
skunk-ape assigned skunk-ape10/1/2026, 2:33:43 PM
skunk-ape linked blocks #28199/30/2026, 4:49:53 PM
skunk-ape linked blocks #28209/30/2026, 4:49:53 PM
skunk-ape linked blocks #283910/1/2026, 1:00:30 AM
Editable. Press Enter to edit.

system commented 9/30/2026, 3:48:20 PM

Classified automatically when this issue was filed.

  • Source: Extensions

If you feel this classification is incorrect, add a ripple to tell us so.

skunk-ape commented 9/30/2026, 4:04:49 PM

Re-scoped. Seth decided on 2026-09-30 that the studio views and simulates but never edits: "Edits should come from the agent... I just don't think we should go down the road of having users create or edit by hand." The agent writes lifecycles and scenarios as files, and the local page reloads them. Dropped: the in-page scenario editor and saving scenarios. Kept: playing saved scenarios, readiness with gate messages, the journal, metrics, the timeline and the dock. The scenarios now re-run on file events. Choice: the agent writes scenario files. You can branch off from any frame and step an issue through by hand ('walk from here'). 'Copy as scenario' then shows that walk as scenario YAML to copy, and the agent saves it. The page never writes.

Sign in to post a ripple.