Step 17 · Hands-on lab · Hands-on lab · Lab: Build a feature end to end ENPT
Alembic Complete Visual Course

Lab: Build a feature end to end

Use Forge, VM, Swarm, Coda gates, and publish a course for one real feature.

Read the plain version, or open the technical layer on any section.
1

A full-cycle exercise


This lab connects every execution layer. Pick a real, bounded feature — for example "add a /health endpoint to the API" or "create a CLI subcommand that lists runs". You will:

  1. Run alembic doctor to verify the environment.
  2. Run alembic forge "<feature>" --offline to generate GOAL.md, validation-contract.md, and alembic.plan.ts.
  3. Inspect the scope artifacts and edit the plan if needed.
  4. Run alembic run --goal GOAL.md --plan alembic.plan.ts --yes --offline.
  5. Watch the run via alembic tui or the web cockpit.
  6. When the run finishes, check the four gates: proof, validator, course, publish.
  7. Inspect the generated course in the run directory.

Think of it like… cooking a meal from recipe writing to grocery shopping, cooking, tasting, photographing, and posting the result.

Under the hood

The exercise forces you to touch @alembic/forge (scope generation), @alembic/vm (plan execution), @alembic/swarm (task draining), @alembic/coda (gates), @alembic/loop-engineering (course generation), and apps/cli (the human interface). Offline mode keeps it deterministic and free; use --online only after you trust the flow.

2

In one picture


doctor forge run gates course gist
The feature lab walks the entire execution pipeline and ends with a published course.
3

In the code


# 1. verify
alembic doctor

# 2. plan + forge
alembic forge "Add a /health endpoint" --offline

# 3. run with gates
alembic run --goal GOAL.md --plan alembic.plan.ts --yes --offline

# 4. observe
alembic tui <run-id>

Implementation notes

The CLI validates the goal and plan paths, loads the scope, calls runPlan, drains the swarm, runs coda gates, and invokes the loop-engineering course generator. If the proof gate fails, the run directory contains proof-results.jsonl with exit codes and stdout/stderr for debugging.

4

Try it


Run the feature lab now. If it fails at a gate, read the failure file and re-run with --resume if supported, or start a new Forge scope after fixing the plan.

Debug: Which gate would catch a failing test in the proof command?
5

Quick check


Which command starts the full execution pipeline in this lab?