feat(gatorwalk-factory): a read-only studio server, started from swamp (swamp-club #2806) #394
Loading…
Reference in a new issue
No description provided.
Delete branch "cue/2806-gatorwalk-factory-studio"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes swamp-club #2806. Follow-ups: swamp-club #2841.
What
A new model type,
@swamp/gatorwalk-factory/studio, whoseservemethod runs a read-only local studio page on 127.0.0.1 until Ctrl-C:The page lists every factory in the repo (a picker) and shows its definition file and its scenario files (
scenarios/<factory>/, as #2805 settled). It reloads them over server-sent events as an agent edits them, and picks up factories created while it is open. It never writes: edits come from the agent (decided 2026-09-30). This is the shell that Design mode (#2807) and Simulate mode (#2808) build on; the page shows the raw YAML until then.Security
Hostmust be127.0.0.1:<port>orlocalhost:<port>, which blocks DNS rebinding.Originmust be the server's own.Sec-Fetch-Sitemust besame-originornone. The one exception is a top-level document navigation to/, so the page opens from a link in another app.default-src 'self'(plusframe-ancestors 'none'), CORPsame-originandnosniff.resolveDefinitionPath. Scenario names must matchNameSchema, and the real path must stay insidescenarios/<factory>/.Two departures from the issue text (DESIGN.md decision log)
.swamp/bundles/<hash>/(checked with a probe model), soimport.meta.urlcannot findstudio/dist/. Andctx.extensionFile()needs a manifest.deno task build:studiobundlesstudio/srcand writes a generated_lib/engine/studio_assets.ts, the way the starters are embedded, so go-live needs noadditionalFilesfor it.studio_assets_testrecomputes a digest of the build inputs, with LF line endings, and fails when the build is stale.Also
work_item_ops.ts:factoryPathArgumentis extracted fromreadFactoryPath, so both read the path the same way.@fontsource/*@5.3.0.verification/checks.yaml:studio/is added to the gatorwalk-factory check, lint and fmt paths.driving.md.Testing
d3894aa7-5866-402c-ac64-18a1a80fb9dc.🤖 Generated with Claude Code