ParsedLab type represents a fully resolved lab configuration with services, workspace settings, and file scaffolding.
ParsedLab
Lab title
Markdown instructions rendered in the lab sidebar
Absolute path to scaffold files directory
Absolute path to solution directory, or undefined if no solution exists
Workspace lifecycle mode.
'fresh' resets to scaffold on each provision. 'continue' preserves previous state.Shell command to run tests (e.g.,
'npm test')List of file paths to open in editor on lab start
Docker/Podman services to provision
Shell commands to run after workspace provision
ResolvedService
A fully resolved container service (preset or custom).Service name (used as container name)
Docker image (e.g.,
'postgres:17-alpine')Container internal port
Host port to expose
Environment variables for the container
Healthcheck command (e.g.,
'pg_isready -U postgres')LabLifecycle
Discriminated union representing lab runtime state.TestRunState
Discriminated union representing test execution state.TestAssertion
Assertion index in test suite
Assertion description
Whether assertion passed
ContainerRuntime
Detected container runtime
Runtime version string