jonnifyagile agents
jonnify / Agile Agent Workflow / A4 · The spec layer / A4.7 · Workshop: specifying Portal's engine

A4.7 · The spec layer · capstone

Specifying Portal's engine

Six modules taught one move each. The capstone runs all of them on one real target and produces an artifact you can read — the engine chapter's first spec, closed and acceptable.

A4.1 through A4.6 each taught one part of the spec layer. Here they land on the Portal's engine, planned in the companion course as F5.1 — Portal's engine-facade rung — the engine chapter's first rung, the seed of the F6 master invariant. By-example, the triad, the anatomy, the stories, the invariants, and the traceability chain run in sequence over its seven deliverables. The worked output reproduces the real f5.1.md and f5.1.stories.md — including a Coverage line that closes. Step the sequence on the right.

The workshop sequence · pick a stage

F5.1 deliverables → a closed spec · six A4 moves 1 · By-example 3 worked cases 2 · The triad md / stories / llms 3 · The anatomy Goal … DoD 4 · The stories US1…US5 5 · The invariants INV1…INV5 6 · Traceability Coverage closes output reproduces the real f5.1.md + f5.1.stories.md
Stage 1 · by-example — produces: F5.1-US1's three worked cases (boot on port 4000, POST /enroll returns 422, an unknown path returns 404), each doubling as the executable check. · 0 of 7 deliverables covered yet; coverage closes at stage 6.

Six moves, one spec

The spec layer defines what we build and prove for each rung the roadmap orders. The workshop is that layer applied once, end to end, on the Portal's engine — F5.1 — Portal's engine-facade rung, the engine chapter's first rung and the seed of the F6 master invariant. It runs in six moves, and each produces a named part of the spec.

By-example replaces an abstract requirement with worked cases — F5.1-US1's three: the app boots on port 4000, POST /enroll returns 422 from the stubbed boundary, an unknown path returns 404. The triad splits the work across f5.1.md, f5.1.stories.md, and f5.1.llms.md. The anatomy fills the six sections of the spec — Goal, Rationale, Scope, Deliverables (D1–D7), Invariants, Definition of Done. The stories derives five Connextra stories (US1–US5) from the deliverables. The invariants states the five (INV1–INV5). Traceability closes the chain with a Coverage line that maps every deliverable to a story.

Over the sequence sits F5.1-INV1, the master-invariant seed, quoted verbatim: “the web layer holds no domain logic … so F6 can replace Bandit with Phoenix untouched.” The output is not invented — it reproduces the real f5.1.md and f5.1.stories.md, including the Coverage line that closes them.

the principle

The full spec-layer sequence run once on a chapter reproduces a closed, acceptable spec: examples become checks, the triad splits the work, the anatomy is filled, stories derive from deliverables, invariants are stated, and the chain closes.

on the Portal

The workshop reproduces the real f5.1.md and f5.1.stories.md. Its Coverage line — D1→US1 · D2→US2 · … — closes, so the engine chapter's first rung is acceptable as written.

The workshop is the spec layer applied once on the Portal's engine — the contracts Part V then hands an Author to build.

The three dives

Each dive carries one pass of the workshop on the real F5.1 rung, in the arc read the deliverables → run the sequence → check the spec closes: first read F5.1's seven deliverables and the replaceable-seam invariant; then step the six A4 moves over the triad and watch the spec take shape; then check the produced Coverage line against the real one and confirm it closes. Read them in order — A4.7.1 starts.

A4.7 is the chapter capstone: it runs A4.1–A4.6 on the Portal, reproducing the real f5.1.md and f5.1.stories.md. It runs one layer below the roadmap capstone A3.8 · Workshop: roadmapping Portal, which planned the delivery this layer now defines. Return to the A4 chapter navigation to continue.

References

The specification tradition the workshop runs on, and the chapter it applies in sequence.

Sources

Related in this course