Skip to content

demo: a raw factory-edge demo in one short script - #5523

Open
auser wants to merge 1 commit into
mainfrom
test/factory-edge-simple-demo
Open

auser wants to merge 1 commit into
mainfrom
test/factory-edge-simple-demo

Conversation

@auser

@auser auser commented Nov 15, 2026

Copy link
Copy Markdown
Collaborator

The factory-edge demo as the proposal describes it, and nothing more: three workloads run side by side, each allowed one destination; the maintenance workload asks for one it was not given; the host refuses and records it; mvmctl explain shows it; the two inspection workloads carry on. Beats 1 to 4 and 6 of 'Proposed factory-edge presentation' in specs/contracts/host-interface-distributed-execution.md. Stop and replace (beat 5) is not included.

scripts/factory-edge-demo.sh is about 25 lines of logic that print the demo, with a --down to remove the workloads. No assertions, staging, teardown machinery or tests of its own; it was verified by running it on the demo Mac against the v0.28.0-rc.2 release (16 seconds, output pasted in the guide's description of what it prints). scripts/factory-edge-demo.md is half a page: how to run it, how each step maps to the mvm-client call the Studio UI would use, a one-time setup, and known limits.

The library table is from reading the code, not from running it, and says so. It records one gap found on the way: the library cannot report what a machine is allowed to reach (#5521), which beat 2 needs.

Known limit: the workloads are started one after another, because starting them together failed once with another local volume lifecycle operation is already in progress (a launch lock). That is a product behaviour worth its own issue.

This supersedes the staging, demo-live and one-command scripts (#5495, #5504, #5519), which are a verification harness rather than a demo. Removing the merged ones is a separate decision and not part of this PR.

Three workloads run side by side, each allowed one destination. The maintenance
workload asks for one it was not given; the host refuses and records it, mvmctl
explain shows it, and the two inspection workloads carry on. This is beats 1 to 4
and 6 of the proposed factory-edge presentation, with no assertions, staging or
teardown machinery: about 25 lines of logic that print the demo.

The workloads are started one after another, because starting them together can
fail with 'another local volume lifecycle operation is already in progress'.

The guide is half a page and maps each step to the mvm-client call the Studio UI
would use. That table is from reading the library, not from running it, and it
records one gap found on the way: the library cannot report what a machine is
allowed to reach (#5521).
@auser
auser enabled auto-merge November 15, 2026 01:16

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant