DOMAIN:PROJECT_MANAGEMENT:DELIVERY_SWIMLANES¶
OWNER: faye (Team Alfa PM), sytske (Team Bravo PM) UPDATED: 2026-03-28 SCOPE: complete quality enforcement across all agents, all phases, all lanes PREREQUISITE: delivery-lifecycle.md (phases), client-interaction-framework.md (client lane) STATUS: MASTER ENFORCEMENT DOCUMENT — the single source of truth for "who checks what, when"
PURPOSE¶
This document defines the complete swimlane model for GE project delivery. Four parallel lanes run across 11 phases. Every checkpoint, every handoff, every gate is defined here.
A project can only move forward when ALL lanes for that phase are clear. One blocked lane = entire project blocked at that phase.
THE FOUR LANES¶
┌─────────────────────────────────────────────────────────────────────┐
│ LANE 1: CLIENT What the client sees, approves, decides │
│ LANE 2: AGENT Internal quality checks per agent │
│ LANE 3: AUTOMATED Machine-verified checks, scans, scores │
│ LANE 4: GATE CONTROL PM enforcement, orchestrator blocks │
└─────────────────────────────────────────────────────────────────────┘
LANE 1 (CLIENT) — Governed by client-interaction-framework.md. Stop/go markers SG-01 through SG-10. The client sees only this lane. It must feel seamless, senior, and predictable.
LANE 2 (AGENT) — Internal quality enforcement per agent. Each agent has a checklist they must complete before their output is accepted. Self-check + peer review where applicable. The client never sees this lane.
LANE 3 (AUTOMATED) — Machine-verifiable checks: template completeness validation, contradiction scans, lint, mutation testing, coverage thresholds, scoring rubrics, traceability verification. Zero human judgment required. Pass/fail.
LANE 4 (GATE CONTROL) — PM (Faye/Sytske) and orchestrator enforcement. The PM verifies all three lanes are clear before opening the gate to the next phase. The orchestrator enforces this programmatically — it literally will not dispatch work if the gate isn't passed.
MASTER SWIMLANE DIAGRAM¶
PHASE │ LANE 1: CLIENT │ LANE 2: AGENT │ LANE 3: AUTOMATED │ LANE 4: GATE
─────────┼──────────────────────┼────────────────────────────┼───────────────────────────┼──────────────────
│ │ │ │
1 INTAKE │ SG-01 Requirements │ DIMA │ AV-01 Brief template │ G1 Scope Brief
│ ·Confirm brief │ ·6-phase methodology │ ·All 10 sections filled │ ·Client confirmed
│ ·Provide materials │ ·Anti-pattern guard (6) │ ·No empty required fields│ ·Brief complete
│ ·State preferences │ ·Summary read-back │ ·Attachments referenced │ ·Auto-check pass
│ │ ·Max 3 follow-ups │ │
─────────┼──────────────────────┼────────────────────────────┼───────────────────────────┼──────────────────
│ │ │ │
2 CONTRT │ SG-02 Commercial │ ERIC │ AV-02 Contract validation │ G2 Contract Signed
│ ·Review contract │ ·KYC verification │ ·KYC checklist complete │ ·Contract signed
│ ·Accept terms │ ·Pricing calculation │ ·Pricing within policy │ ·Payment received
│ ·Confirm payment │ ·Risk assessment │ ·Legal terms present │ ·KYC passed
│ │ ·Payment processing │ ·Payment confirmed │
─────────┼──────────────────────┼────────────────────────────┼───────────────────────────┼──────────────────
│ │ │ │
3 SCOPE │ SG-03 Design prefs │ AIMEE │ AV-03 Spec validation │ G3 Scope Approved
│ ·Answer checklist │ ·Gap identification (7) │ ·All features have AC │ ·SG-03 complete
│ ·Confirm extracts │ ·Feature decomposition │ ·No "should"/"might" │ ·SG-04 complete
│ │ ·Cross-cutting concerns │ ·MoSCoW categories set │ ·AV-03 pass
│ SG-04 Scope signoff │ ·Quality checklist (20) │ ·Design prefs complete │ ·Spec frozen
│ ·Review func spec │ ·Max 2 Dima round-trips │ ·Traceability seeds │
│ ·Confirm decisions │ ·Pricing inputs to Eric │ │
│ ·Approve scope │ │ │
│ │ JULIAN (parallel) │ AV-03b Compliance check │
│ │ ·Accessibility review │ ·WCAG level confirmed │
│ │ ·Compliance classification│ ·Industry regs flagged │
│ │ ·Legal requirements ID │ │
─────────┼──────────────────────┼────────────────────────────┼───────────────────────────┼──────────────────
│ │ │ │
4 SPEC │ (no client contact) │ ANNA │ AV-04 Formal spec valid │ G4 Spec Approved
│ │ ·Functional → formal YAML │ ·Valid YAML syntax │ ·AV-04 pass
│ │ ·Invariants (≥3 per fn) │ ·≥3 invariants per fn │ ·Anna quality
│ │ ·State machines │ ·Edge cases enumerated │ checklist pass
│ │ ·API contracts │ ·Token budget ≤15K │ ·Constitution
│ │ ·Edge case enumeration │ ·Constitution compliance │ compliance
│ │ ·Requirement IDs (REQ-nn) │ ·REQ-nn assigned to all │
│ │ ·Max 3 rounds with Aimee │ │
─────────┼──────────────────────┼────────────────────────────┼───────────────────────────┼──────────────────
│ │ │ │
5 DESIGN │ SG-05 Design signoff │ ALEXANDER │ AV-05 Design validation │ G5 Design Approved
│ ·Review all screens │ ·DESIGN.md creation │ ·Contradiction scan: │ ·SG-05 complete
│ ·Confirm color mode │ ·Component selection │ B1→palette match │ ·AV-05 pass
│ ·Confirm brand │ ·Design token definition │ A2→color match │ ·Alexander
│ ·Approve or revise │ ·Responsive specs │ D1→platform match │ checklist pass
│ ·Max 3 rounds │ ·Accessibility check │ F1→contrast pass │ ·Felice QA pass
│ │ ·Pre-submission (8 items) │ ·All priority screens │ ·Julian a11y pass
│ │ │ present │
│ │ FELICE (visual QA) │ ·Tab/nav consistency │
│ │ ·Implementation vs design │ across screens │
│ │ ·BLOCKER/SHOULD_FIX/NITPK│ ·Traceability: │
│ │ │ SG-03 → DESIGN.md │
│ │ JULIAN (a11y signoff) │ │
│ │ ·WCAG compliance verify │ │
│ │ ·Touch targets, contrast │ │
─────────┼──────────────────────┼────────────────────────────┼───────────────────────────┼──────────────────
│ │ │ │
PRE- │ │ │ │ G5.5 PRE-PLANNING
PLAN │ │ │ │ ·G1-G5 all passed
GATE │ │ │ │ ·All SG mandatory
│ │ │ │ markers complete
│ │ │ │ ·Zero contradictions
│ │ │ │ ·PM EXPLICIT PASS
│ │ │ │ ·BLOCKS ALL DEV
─────────┼──────────────────────┼────────────────────────────┼───────────────────────────┼──────────────────
│ │ │ │
6 PLAN │ SG-06 Plan summary │ FAYE / SYTSKE │ AV-06 WP validation │ G6 WP Set Approved
│ ·Timeline estimate │ ·WP decomposition │ ·Every REQ has ≥1 WP │ ·AV-06 pass
│ ·Cost estimate │ ·DAG construction │ ·Every WP has 1 assignee│ ·DAG valid
│ ·(adaptive: may │ ·Swimming lane assignment │ ·No WP > 60 min est │ ·Traceability 100%
│ skip for returning │ ·Traceability matrix │ ·DAG has no cycles │ ·Complexity tier
│ clients) │ ·Pre-dispatch (13 items) │ ·Critical path identified│ assigned
│ │ ·Complexity tier assign │ ·Parallel groups ≤5 │
─────────┼──────────────────────┼────────────────────────────┼───────────────────────────┼──────────────────
│ │ │ │
7 DEV │ SG-07 Progress │ ANTJE (TDD — before dev) │ AV-07a TDD validation │ G7 All WPs Done
│ ·Updates per cadence│ ·Spec → test translation │ ·Tests run (all red) │ ·All WPs COMPLETE
│ ·(adaptive freq) │ ·Oracle independence │ ·No impl imports │ ·No BLOCKED/FAILED
│ │ ·Property-based tests │ ·Coverage seeds present │ ·Antje TDD pass
│ │ ·Boundary value analysis │ │ ·All agent checks
│ │ │ │ pass
│ │ DEV TEAM (per WP) │ AV-07b WP completion │
│ │ ·Follow DESIGN.md │ ·Antje tests pass (green)│
│ │ ·Make TDD tests green │ ·Build succeeds │
│ │ ·Domain primitives │ ·No type errors │
│ │ ·Secure coding practices │ ·WP deliverables present │
│ │ ·Contract-check gate │ │
─────────┼──────────────────────┼────────────────────────────┼───────────────────────────┼──────────────────
│ │ │ │
8 INTEG │ (no client contact) │ KOEN (lint + mutation) │ AV-08a Lint │ G8 Integration Pass
│ │ ·ESLint + tsc │ ·Zero lint errors │ ·All AV-08 pass
│ │ ·Mutation testing │ ·Mutation ≥80% new code │ ·No contradictions
│ │ ·Scaffolding detection │ ·Mutation ≥60% existing │ ·Code on main
│ │ ·Test weakening detection │ ·No test weakening │
│ │ │ ·No scaffolding │
│ │ MARIJE / JUDITH (testing) │ │
│ │ ·Integration test suite │ AV-08b Test quality │
│ │ ·E2E critical paths │ ·Coverage ≥80% line │
│ │ ·Test quality rubric (6) │ ·Quality score ≥6/10 │
│ │ ·Test pyramid compliance │ ·Pyramid ratio met │
│ │ │ │
│ │ JASPER (reconciliation) │ AV-08c Reconciliation │
│ │ ·Coverage mapping │ ·Zero UNTESTED reqs │
│ │ ·Gap analysis │ ·Zero CONTRADICTION │
│ │ ·Contradiction detection │ ·Test theater score OK │
│ │ ·Test theater detection │ │
│ │ │ │
│ │ MARCO (conflict resolution)│ │
│ │ ·Complex contradictions │ │
│ │ ·Merge conflicts │ │
│ │ │ │
│ │ ASHLEY (adversarial) │ AV-08d Adversarial │
│ │ ·3 personas (malicious, │ ·Zero CRITICAL findings │
│ │ confused, impatient) │ ·Zero HIGH unresolved │
│ │ ·Input/flow/timing/env │ │
│ │ ·10-step workflow │ │
│ │ │ │
│ │ VICTORIA (threat model) │ AV-08e Security │
│ │ ·STRIDE analysis │ ·Threat model complete │
│ │ ·OWASP Top 10 │ ·Zero unmitigated HIGH+ │
│ │ │ │
│ │ POL (penetration testing) │ AV-08f Pentest │
│ │ ·OWASP testing procedures │ ·Zero CRITICAL vulns │
│ │ │ │
│ │ JAAP (SSOT verification) │ AV-08g SSOT │
│ │ ·Code ↔ spec alignment │ ·Zero spec drift │
│ │ ·No duplicate logic │ ·No duplicate files │
│ │ ·No orphan code │ │
│ │ │ │
│ │ MARTA / IWONA (merge gate) │ AV-08h Release readiness │
│ │ ·Release readiness rubric │ ·Score ≥70/100 │
│ │ ·7 weighted criteria │ ·No hard-block triggers │
│ │ ·Hard-block overrides │ ·SOC 2 evidence logged │
│ │ ·SOC 2 evidence │ ·PR size ≤1000 lines │
│ │ ·Merge to main │ │
─────────┼──────────────────────┼────────────────────────────┼───────────────────────────┼──────────────────
│ │ │ │
9 UAT │ SG-08 UAT │ FAYE / SYTSKE │ AV-09 UAT tracking │ G9 Client Signoff
│ ·Test on staging │ ·Deploy to staging │ ·All CRITICAL resolved │ ·Client signed off
│ ·Submit feedback │ ·Track BUG/ENH/OOS │ ·All HIGH resolved │ ·AV-09 pass
│ ·Approve/reject │ ·Route bugs back to dev │ ·Deferred items logged │
│ ·Time-boxed │ ·Manage scope boundary │ │
─────────┼──────────────────────┼────────────────────────────┼───────────────────────────┼──────────────────
│ │ │ │
10 DEPLY │ SG-09 Go-live │ JORRIT │ AV-10 Deploy checks │ G10 Prod Healthy
│ ·Approve deployment │ ·Environment provisioning │ ·Health checks passing │ ·SG-09 approved
│ │ ·DB migration │ ·SSL working │ ·AV-10 pass
│ │ ·Secrets configuration │ ·Error rate < 0.1% │ ·30 min stable
│ │ ·Monitoring setup │ ·Core flows working │
│ │ ·Rollback plan │ ·Performance baseline │
│ │ ·Pre/during/post checklist│ │
─────────┼──────────────────────┼────────────────────────────┼───────────────────────────┼──────────────────
│ │ │ │
11 HAND │ SG-10 Delivery │ JOOST │ AV-11 Docs validation │ G11 Handoff Done
│ ·Receive deliverables│ ·Operations docs │ ·All doc sections filled │ ·SG-10 complete
│ ·Satisfaction survey │ ·Deployment runbook │ ·API docs generated │ ·AV-11 pass
│ ·Confirm handoff │ ·User guide (if applic) │ ·Satisfaction recorded │ ·Project archived
│ │ ·Content PR checklist (10)│ │
│ │ ·Archive project │ │
─────────┴──────────────────────┴────────────────────────────┴───────────────────────────┴──────────────────
GATE DEFINITIONS¶
Every gate is a synchronization point. ALL four lanes must be clear for the gate to open.
G1: SCOPE BRIEF APPROVED¶
LANE 1 (CLIENT): SG-01 complete — client confirmed brief
LANE 2 (AGENT): Dima methodology complete, no anti-patterns triggered
LANE 3 (AUTOMATED): AV-01 — all 10 template sections filled, attachments referenced
LANE 4 (GATE): PM receives brief, verifies all three lanes → OPEN
G2: CONTRACT SIGNED¶
LANE 1 (CLIENT): SG-02 complete — contract signed, payment confirmed
LANE 2 (AGENT): Eric KYC passed, pricing calculated, risk assessed
LANE 3 (AUTOMATED): AV-02 — KYC checklist complete, pricing within policy, legal terms present
LANE 4 (GATE): PM verifies payment received, KYC clean → OPEN
G3: SCOPE APPROVED¶
LANE 1 (CLIENT): SG-03 complete — design preferences answered
SG-04 complete — scope signed off (timestamp + hash recorded)
LANE 2 (AGENT): Aimee quality checklist (20 items) passed
Julian accessibility + compliance review done
LANE 3 (AUTOMATED): AV-03 — all features have AC, no ambiguous language, prefs complete
AV-03b — WCAG level confirmed, industry regs flagged
LANE 4 (GATE): PM verifies scope freeze, signoff recorded → OPEN
G4: FORMAL SPEC APPROVED¶
LANE 1 (CLIENT): (no client contact this phase)
LANE 2 (AGENT): Anna formal spec complete, quality checklist passed
LANE 3 (AUTOMATED): AV-04 — valid YAML, ≥3 invariants/fn, edge cases, token budget, constitution
LANE 4 (GATE): PM verifies spec complete, PM confirms decomposable → OPEN
G5: DESIGN APPROVED¶
LANE 1 (CLIENT): SG-05 complete — design signed off (timestamp + hash recorded)
LANE 2 (AGENT): Alexander pre-submission checklist (8 items) passed
Felice visual QA — zero BLOCKERs
Julian accessibility signoff — WCAG compliance verified
LANE 3 (AUTOMATED): AV-05 — contradiction scan passed (prefs → design token match)
All priority screens present, tab/nav consistent
LANE 4 (GATE): PM verifies all three lanes → OPEN
G5.5: PRE-PLANNING GATE (THE MASTER GATE)¶
PURPOSE: This is the point of no return. After this gate, agents start executing
work packages at token cost. Everything before this is planning at minimal cost.
Everything after this is expensive. This gate must be bulletproof.
REQUIRED:
G1 passed ✓
G2 passed ✓
G3 passed (with client signoff) ✓
G4 passed ✓
G5 passed (with client signoff) ✓
Design traceability: zero contradictions between SG-03 answers and DESIGN.md ✓
All mandatory SG markers complete ✓
PM (Faye/Sytske) EXPLICIT PASS ✓
ENFORCEMENT: ge-orchestrator refuses to dispatch work type "planning" or "development"
without pre_planning_gate: passed in project metadata.
Admin UI shows gate status dashboard. PM clicks "PASS" only when all clear.
IF THIS GATE IS NOT PASSED: project is BLOCKED. No work packages. No token spend.
No exceptions. No "we'll sort it out during development."
G6: WP SET APPROVED¶
LANE 1 (CLIENT): SG-06 complete (or skipped if adaptive threshold met)
LANE 2 (AGENT): Faye/Sytske pre-dispatch checklist (13 items) passed
LANE 3 (AUTOMATED): AV-06 — traceability 100%, DAG valid, no oversized WPs
LANE 4 (GATE): PM approves WP set, dispatches to orchestrator → OPEN
G7: ALL WPs COMPLETE¶
LANE 1 (CLIENT): SG-07 progress updates sent per cadence
LANE 2 (AGENT): Antje TDD pass, all devs contract-check pass per WP
LANE 3 (AUTOMATED): AV-07a — TDD tests all red initially
AV-07b — all tests green, build succeeds, deliverables present
LANE 4 (GATE): PM verifies all WPs COMPLETE, no BLOCKED/FAILED → OPEN
G8: INTEGRATION PASS¶
LANE 1 (CLIENT): (no client contact this phase)
LANE 2 (AGENT): Full anti-LLM pipeline:
Koen → Marije/Judith → Jasper → Marco → Ashley →
Victoria → Pol → Jaap → Marta/Iwona
LANE 3 (AUTOMATED): AV-08a through AV-08h — all pass (see detail above)
LANE 4 (GATE): PM verifies code on main, all checks green → OPEN
G9: CLIENT SIGNOFF (UAT)¶
LANE 1 (CLIENT): SG-08 complete — client tested and approved
LANE 2 (AGENT): PM tracked all feedback, bugs resolved
LANE 3 (AUTOMATED): AV-09 — all CRITICAL/HIGH resolved, deferred items logged
LANE 4 (GATE): PM records client signoff → OPEN
G10: PRODUCTION HEALTHY¶
LANE 1 (CLIENT): SG-09 complete — client approved go-live
LANE 2 (AGENT): Jorrit deployment complete, monitoring active
LANE 3 (AUTOMATED): AV-10 — health checks, SSL, error rate, performance
LANE 4 (GATE): PM verifies 30 min stability → OPEN
G11: HANDOFF COMPLETE¶
LANE 1 (CLIENT): SG-10 complete — client confirmed receipt, survey submitted
LANE 2 (AGENT): Joost docs complete, project archived
LANE 3 (AUTOMATED): AV-11 — all doc sections filled, API docs generated
LANE 4 (GATE): PM closes project → DONE
AUTOMATED VALIDATIONS (AV) REGISTRY¶
Every AV check must be machine-executable. No human judgment. Pass or fail.
| ID | Phase | What it checks | Implementation |
|---|---|---|---|
| AV-01 | 1 | Brief template completeness (10 sections, attachments) | JSON schema validation against CB template |
| AV-02 | 2 | Contract completeness (KYC, pricing policy, legal terms, payment) | Checklist fields in project record |
| AV-03 | 3 | Spec quality (AC on all features, no ambiguous language, prefs filled) | Regex scan for banned words + field completeness |
| AV-03b | 3 | Compliance classification (WCAG level set, industry regs flagged) | Field completeness check |
| AV-04 | 4 | Formal spec validity (YAML, invariants, edge cases, token budget) | YAML parser + counter + token estimator |
| AV-05 | 5 | Design contradiction scan (SG-03 answers vs DESIGN.md tokens) | Token extractor + comparator script |
| AV-06 | 6 | WP set validity (traceability, DAG, sizing, assignees) | Graph validator + coverage checker |
| AV-07a | 7 | TDD test validity (all red, no impl imports) | Test runner + import scanner |
| AV-07b | 7 | WP completion (tests green, build, deliverables) | CI pipeline |
| AV-08a | 8 | Lint + mutation (zero errors, mutation thresholds) | ESLint + Stryker |
| AV-08b | 8 | Test quality (coverage thresholds, pyramid ratio) | Coverage reporter |
| AV-08c | 8 | Reconciliation (zero UNTESTED, zero CONTRADICTION) | Jasper's automated tooling |
| AV-08d | 8 | Adversarial (zero CRITICAL, zero unresolved HIGH) | Finding report parser |
| AV-08e | 8 | Threat model (complete, zero unmitigated HIGH+) | Threat model parser |
| AV-08f | 8 | Pentest (zero CRITICAL vulns) | Finding report parser |
| AV-08g | 8 | SSOT (zero spec drift, zero duplicates) | Diff tool: spec vs code |
| AV-08h | 8 | Release readiness (score ≥70, no hard-blocks, SOC 2 evidence) | Marta's scoring engine |
| AV-09 | 9 | UAT tracking (all CRITICAL/HIGH resolved) | Bug tracker query |
| AV-10 | 10 | Deploy health (health checks, SSL, error rate, perf) | Monitoring API checks |
| AV-11 | 11 | Docs completeness (all sections, API docs) | Template field check |
AGENT INTERNAL CHECKLISTS (LANE 2 DETAIL)¶
DIMA — Intake Quality¶
PRE-HANDOFF SELF-CHECK:
[ ] All 6 intake phases completed (opening → summary)
[ ] None of the 6 anti-patterns triggered
[ ] Client confirmed summary read-back
[ ] Scope Brief has all 10 sections filled
[ ] Problem statement is "why" not "what"
[ ] Features linked to business problems (not wish list)
[ ] Attachments collected and referenced
[ ] Budget ballpark captured (or "to be discussed with Eric")
[ ] Timeline expectation captured
[ ] Inspirations / anti-inspirations captured
ERIC — Contract Quality¶
PRE-HANDOFF SELF-CHECK:
[ ] Client identity verified (KYC for business clients)
[ ] Company registration checked (EU business registry)
[ ] Pricing calculated from Aimee's complexity assessment
[ ] Pricing within policy bounds (10% of human equivalent, 5x token margin)
[ ] Contract generated from approved template
[ ] Legal terms present (liability, IP, data processing, termination)
[ ] GDPR Data Processing Agreement included (if handling personal data)
[ ] Payment method verified and first payment received
[ ] Risk assessment completed (client size, project complexity, payment risk)
[ ] Contract PDF stored in client record
wiki/docs/domains/commercial/contract-quality.md
AIMEE — Scope Quality¶
PRE-HANDOFF SELF-CHECK (from scope-architecture.md):
COMPLETENESS:
[ ] Every feature has acceptance criteria (Given-When-Then)
[ ] Cross-cutting concerns addressed (auth, i18n, a11y, perf, SEO)
[ ] Non-functional requirements defined
[ ] Integration points documented
[ ] Data model sketched
[ ] Error conditions specified for every feature
[ ] MoSCoW priorities assigned to all features
CLARITY:
[ ] No "should" / "might" / "usually" / "probably"
[ ] All numeric values are exact (not "about" or "around")
[ ] All user roles defined with permissions
[ ] All API endpoints specified with methods and payloads
[ ] All state transitions documented
CONSISTENCY:
[ ] No contradictions between features
[ ] No contradictions between spec and design preferences
[ ] Terminology consistent throughout
[ ] Feature names match across all documents
CLIENT-READINESS:
[ ] Plain language (no jargon without definitions)
[ ] Decision log complete (every choice extracted or made)
[ ] Out of scope section defined
[ ] Design Preferences Checklist (SG-03) complete and attached
JULIAN — Compliance Quality¶
PRE-SIGNOFF SELF-CHECK:
[ ] WCAG compliance level confirmed with client (default: AA)
[ ] Color contrast ratios verified (≥4.5:1 text, ≥3:1 large text)
[ ] Touch targets verified (≥44px, prefer 48px)
[ ] Focus indicators present on all interactive elements
[ ] Screen reader compatibility verified
[ ] Reduce motion support specified
[ ] Dynamic type / text scaling support specified
[ ] Industry-specific compliance requirements identified
[ ] Legal text requirements identified (ToS, privacy, cookie policy)
[ ] EU Accessibility Act compliance confirmed (mandatory from June 2025)
ALEXANDER — Design Quality¶
PRE-SUBMISSION SELF-CHECK (before showing client):
[ ] DESIGN.md covers all screens from formal spec
[ ] Every screen uses color mode from SG-03 item B1
[ ] Brand colors match SG-03 item A2 (hex comparison)
[ ] Typography matches SG-03 items C1/C2
[ ] Platform matches SG-03 items D1/D2
[ ] All priority screens represented
[ ] Tab bars / navigation consistent across ALL screens
[ ] Accessibility contrast ratios pass WCAG level from SG-03 item F1
[ ] No element contradicts approved functional spec
[ ] All design tokens defined (colors, spacing, typography, radius, shadows)
[ ] Component selections are valid shadcn/ui components (or justified custom)
[ ] Responsive breakpoints defined
[ ] Design traceability document produced (SG-03 item → design choice)
[ ] Deviations from client preferences documented with rationale
ANNA — Specification Quality¶
PRE-HANDOFF SELF-CHECK:
[ ] Valid YAML syntax (machine-parseable)
[ ] ≥3 invariants per function
[ ] Complete edge case enumeration per requirement
[ ] All state machines have entry, exit, and error states
[ ] API contracts complete (endpoints, methods, payloads, errors)
[ ] Constitution compliance verified
[ ] Token budget ≤15,000 per spec
[ ] REQ-nn ID assigned to every requirement
[ ] Lineage tracking (source: Aimee spec section → formal spec section)
[ ] No ambiguous language (no "should"/"might"/"usually")
ANTJE — TDD Quality¶
PRE-HANDOFF SELF-CHECK:
[ ] All acceptance criteria have corresponding tests
[ ] Tests are oracle-independent (no implementation imports)
[ ] Property-based tests for all invariants
[ ] Boundary value tests for all numeric constraints
[ ] Equivalence partitioning applied
[ ] All tests run and FAIL (red phase confirmed)
[ ] Test naming follows Given-When-Then pattern
[ ] No test references implementation internals
[ ] Spec ambiguities documented with both interpretations tested
FAYE / SYTSKE — Planning Quality¶
PRE-DISPATCH SELF-CHECK (from work-package-design.md):
[ ] Every requirement has ≥1 work package
[ ] Every WP has exactly 1 assignee
[ ] No WP exceeds 45 min estimated (hard limit: 60 min)
[ ] Dependency graph has no cycles
[ ] Critical path identified
[ ] Parallel execution groups defined (max 5 concurrent)
[ ] No parallel WPs modify same files
[ ] Swimming lanes assigned correctly (per matrix)
[ ] Complexity tier assigned (simple/normal/complex/critical)
[ ] Contract-check gates in every WP template
[ ] Traceability matrix shows 100% REQ coverage
[ ] Budget estimate calculated (WP count × avg cost)
[ ] Timeline estimate calculated (critical path × avg WP time)
KOEN — Lint + Mutation Quality¶
TOOLING: code-review plugin (automated review framework), pyright-lsp plugin (Python type checking), code-simplifier plugin (refactoring + 300-line file limit enforcement)
PRE-HANDOFF SELF-CHECK:
[ ] Zero ESLint errors
[ ] Zero TypeScript type errors
[ ] Zero scaffolding detected (TODO, FIXME, console.log)
[ ] No test weakening (deleted assertions, .skip, loosened matchers)
[ ] Mutation score ≥80% for new code
[ ] Mutation score ≥60% for modified existing code
[ ] Mutation score ≥90% for critical path code
[ ] Surviving mutants classified (real gap / equivalent / low value)
[ ] Real gaps reported to Marije/Judith with location
MARIJE / JUDITH — Test Quality¶
TOOLING: webapp-testing skill (Playwright-based web app testing patterns)
PRE-HANDOFF SELF-CHECK:
[ ] Test quality rubric score ≥6/10 across all 6 criteria
[ ] Coverage ≥80% line, ≥75% branch, ≥85% function, ≥80% statement
[ ] Test pyramid: ~70% unit, ~20% integration, ~10% E2E
[ ] E2E suite runs in <5 minutes
[ ] No flaky tests (flaky = disabled + bug filed)
[ ] Integration tests cover all API endpoints
[ ] E2E tests cover all critical user journeys
[ ] Structured test report produced
JASPER — Reconciliation Quality¶
PRE-HANDOFF SELF-CHECK:
[ ] Coverage matrix complete for all requirements
[ ] Zero UNTESTED requirements
[ ] Zero CONTRADICTION between TDD and post-impl tests
[ ] Test theater score acceptable (no false confidence)
[ ] All gaps have root cause + specific action
[ ] Escalations sent where needed (Anna, PM, Koen, Ashley)
MARCO — Conflict Resolution Quality¶
PRE-HANDOFF SELF-CHECK:
[ ] All complex contradictions from Jasper resolved
[ ] All merge conflicts resolved
[ ] Resolution rationale documented (spec always wins over code)
[ ] No resolution involves changing spec without PM approval
[ ] Resolution doesn't introduce new contradictions
wiki/docs/domains/testing/conflict-resolution.md
ASHLEY — Adversarial Quality¶
PRE-HANDOFF SELF-CHECK:
[ ] All 3 personas exercised (malicious, confused, impatient)
[ ] All 4 chaos categories tested (input, flow, timing, environment)
[ ] All findings categorized by severity (CRITICAL/HIGH/MEDIUM/LOW)
[ ] All findings have reproduction steps
[ ] Zero CRITICAL findings remain unresolved
[ ] Zero HIGH findings remain unresolved
[ ] 10-step workflow completed in full
VICTORIA — Threat Model Quality¶
TOOLING: security-guidance plugin (security warnings when editing sensitive files — auth, crypto, secrets, config)
PRE-HANDOFF SELF-CHECK:
[ ] STRIDE threat model complete for all components
[ ] OWASP Top 10 reviewed against implementation
[ ] Zero unmitigated HIGH+ severity threats
[ ] Threat model covers auth, data flow, and trust boundaries
[ ] Security-guidance plugin active during all security-sensitive file edits
JAAP — SSOT Quality¶
PRE-HANDOFF SELF-CHECK:
[ ] Code implements every requirement in formal spec (zero drift)
[ ] No duplicate logic across files
[ ] No orphan code (code without spec reference)
[ ] No orphan specs (spec without implementation)
[ ] File structure follows project conventions
[ ] No contradictions between code modules
wiki/docs/domains/testing/ssot-verification.md
MARTA / IWONA — Merge Gate Quality¶
TOOLING: pr-review-toolkit plugin (PR review agents for comments, tests, error handling)
PRE-MERGE SELF-CHECK:
[ ] Release readiness score ≥70/100
[ ] No hard-block triggers (TW-1, TW-2, SEC-1, DATA-1, FAIL-1)
[ ] PR size ≤1000 lines
[ ] SOC 2 evidence collected (CC8.1, CC8.2, CC8.3)
[ ] All upstream agent checks passed
[ ] Merge queue position assigned (max 5 entries)
[ ] Squash merge configured
JORRIT — Deployment Quality¶
PRE-DEPLOY SELF-CHECK:
[ ] Production environment provisioned
[ ] Secrets configured (DB, API keys, auth)
[ ] DNS records created and propagated
[ ] SSL certificates provisioned and valid
[ ] Rollback plan documented and tested
[ ] Monitoring alerts configured
[ ] Database migration tested on staging first
[ ] Health check endpoints responding
[ ] Resource limits set (CPU, memory)
[ ] Network policies configured
wiki/docs/domains/infrastructure/deployment-quality.md
JOOST — Handoff Quality¶
PRE-HANDOFF SELF-CHECK:
[ ] Operations guide complete (deployment, monitoring, troubleshooting)
[ ] Environment configuration documented
[ ] API documentation auto-generated from OpenAPI spec
[ ] User guide complete (if applicable)
[ ] i18n JSON files valid (10-item checklist from content-handoff.md)
[ ] All locales have complete translations
[ ] Maintenance SLA documented (if applicable)
[ ] Client access credentials prepared
DOCUMENTATION GAPS (RED — MUST BE CREATED)¶
The following wiki documents do not exist and must be created to make this swimlane enforceable:
| Priority | Document | Owner | Purpose |
|---|---|---|---|
| P0 | domains/commercial/contract-quality.md |
Eric | KYC checklist, pricing rules, contract template validation |
| P0 | domains/testing/conflict-resolution.md |
Marco | Contradiction resolution methodology, decision framework |
| P0 | domains/testing/ssot-verification.md |
Jaap | SSOT verification methodology, drift detection, orphan detection |
| P1 | domains/infrastructure/deployment-quality.md |
Jorrit | Pre/during/post deployment checklist, rollback procedures |
| P1 | domains/compliance/julian-gate.md |
Julian | Consolidated compliance gate across all Julian's domains |
| P2 | domains/design/visual-qa.md |
Felice | Visual QA scoring rubric (beyond BLOCKER/SHOULD_FIX/NITPICK) |
ORCHESTRATOR ENFORCEMENT¶
The ge-orchestrator must enforce gates programmatically. No advisory-only gates.
PROJECT STATE MACHINE¶
┌──────────┐
│ INTAKE │ ← project created
└────┬─────┘
│ G1 pass
┌────▼─────┐
│ CONTRACT │
└────┬─────┘
│ G2 pass
┌────▼─────┐
│ SCOPING │
└────┬─────┘
│ G3 pass
┌────▼─────┐
│ SPEC │
└────┬─────┘
│ G4 pass
┌────▼─────┐
│ DESIGN │
└────┬─────┘
│ G5 pass
┌────▼─────┐
│ PRE-PLAN │ ← G5.5: THE MASTER GATE
└────┬─────┘
│ G5.5 pass (PM explicit)
┌────▼─────┐
│ PLANNING │
└────┬─────┘
│ G6 pass
┌────▼─────┐
│ DEV │
└────┬─────┘
│ G7 pass
┌────▼─────┐
│ INTEGR │
└────┬─────┘
│ G8 pass
┌────▼─────┐
│ UAT │
└────┬─────┘
│ G9 pass
┌────▼─────┐
│ DEPLOY │
└────┬─────┘
│ G10 pass
┌────▼─────┐
│ HANDOFF │
└────┬─────┘
│ G11 pass
┌────▼─────┐
│ DONE │
└──────────┘
ORCHESTRATOR RULES¶
# Pseudocode for gate enforcement in ge-orchestrator
def can_dispatch_work(project_id, work_type):
project = get_project(project_id)
# Map work types to required gates
required_gates = {
"intake": [], # always allowed
"contract": ["G1"],
"scoping": ["G1", "G2"],
"specification":["G1", "G2", "G3"],
"design": ["G1", "G2", "G3", "G4"],
"planning": ["G1", "G2", "G3", "G4", "G5", "G5.5"],
"development": ["G1", "G2", "G3", "G4", "G5", "G5.5", "G6"],
"integration": ["G1", "G2", "G3", "G4", "G5", "G5.5", "G6", "G7"],
"uat": ["G1", "G2", "G3", "G4", "G5", "G5.5", "G6", "G7", "G8"],
"deployment": ["G1", "G2", "G3", "G4", "G5", "G5.5", "G6", "G7", "G8", "G9"],
"handoff": ["G1", "G2", "G3", "G4", "G5", "G5.5", "G6", "G7", "G8", "G9", "G10"],
}
for gate in required_gates.get(work_type, []):
if not project.gate_passed(gate):
log.warning(f"BLOCKED: {project_id} cannot dispatch {work_type} — gate {gate} not passed")
return False
return True
DATABASE SCHEMA¶
New tables required:¶
-- Project gate tracking
CREATE TABLE project_gates (
id SERIAL PRIMARY KEY,
project_id INTEGER NOT NULL REFERENCES projects(id),
gate_id VARCHAR(10) NOT NULL, -- G1, G2, ..., G11
status VARCHAR(20) NOT NULL DEFAULT 'pending', -- pending, passed, failed, blocked
passed_at TIMESTAMP,
passed_by VARCHAR(100), -- agent or human who passed the gate
evidence JSONB, -- what was checked, scores, hashes
created_at TIMESTAMP DEFAULT NOW(),
UNIQUE(project_id, gate_id)
);
-- Client signoff records
CREATE TABLE client_signoffs (
id SERIAL PRIMARY KEY,
project_id INTEGER NOT NULL REFERENCES projects(id),
marker_id VARCHAR(10) NOT NULL, -- SG-04, SG-05, SG-08, SG-09, SG-10
client_id INTEGER NOT NULL REFERENCES clients(id),
status VARCHAR(20) NOT NULL, -- approved, changes_requested, rejected
version_hash VARCHAR(64), -- SHA-256 of the deliverable they approved
feedback TEXT, -- client's comments
signed_at TIMESTAMP DEFAULT NOW(),
round INTEGER DEFAULT 1 -- which revision round
);
-- Design preferences checklist (SG-03)
CREATE TABLE design_preferences (
id SERIAL PRIMARY KEY,
project_id INTEGER NOT NULL REFERENCES projects(id),
item_id VARCHAR(10) NOT NULL, -- A1, A2, B1, B2, etc.
question TEXT NOT NULL,
answer TEXT,
source VARCHAR(50), -- 'client_direct', 'extracted_from_brief', 'auto_filled'
confidence DECIMAL(3,2) DEFAULT 0.00, -- 0.00 to 1.00
confirmed BOOLEAN DEFAULT FALSE, -- client confirmed extracted/auto-filled answer
created_at TIMESTAMP DEFAULT NOW(),
UNIQUE(project_id, item_id)
);
-- Automated validation results
CREATE TABLE automated_validations (
id SERIAL PRIMARY KEY,
project_id INTEGER NOT NULL REFERENCES projects(id),
validation_id VARCHAR(10) NOT NULL, -- AV-01, AV-02, etc.
status VARCHAR(10) NOT NULL, -- pass, fail
details JSONB, -- what was checked, what failed
run_at TIMESTAMP DEFAULT NOW()
);
-- Agent checklist completions
CREATE TABLE agent_checklists (
id SERIAL PRIMARY KEY,
project_id INTEGER NOT NULL REFERENCES projects(id),
agent_id VARCHAR(50) NOT NULL, -- dima, eric, aimee, etc.
phase INTEGER NOT NULL, -- 1-11
checklist JSONB NOT NULL, -- {items: [{id, text, checked, note}]}
all_passed BOOLEAN DEFAULT FALSE,
completed_at TIMESTAMP,
created_at TIMESTAMP DEFAULT NOW()
);
-- Client interaction history (for adaptive gating)
CREATE TABLE client_interaction_history (
id SERIAL PRIMARY KEY,
client_id INTEGER NOT NULL REFERENCES clients(id),
project_id INTEGER NOT NULL REFERENCES projects(id),
marker_id VARCHAR(10) NOT NULL, -- SG-nn
item_id VARCHAR(10), -- checklist item (e.g., B1) if applicable
asked BOOLEAN DEFAULT TRUE,
answer TEXT,
confidence DECIMAL(3,2) DEFAULT 0.00,
auto_filled BOOLEAN DEFAULT FALSE,
corrected BOOLEAN DEFAULT FALSE,
created_at TIMESTAMP DEFAULT NOW()
);
-- Client communication preferences (for adaptive cadence)
CREATE TABLE client_preferences (
id SERIAL PRIMARY KEY,
client_id INTEGER NOT NULL REFERENCES clients(id),
preferred_channel VARCHAR(50) DEFAULT 'email',
update_frequency VARCHAR(50) DEFAULT 'standard',
detail_level VARCHAR(50) DEFAULT 'standard',
satisfaction_avg DECIMAL(3,1),
updated_at TIMESTAMP DEFAULT NOW()
);
MONITORING LANE (CONTINUOUS — NOT PHASE-BOUND)¶
These agents run continuously across all phases, not at specific gates:
| Agent | Function | Scope |
|---|---|---|
| Annegreet | Knowledge extraction → wiki brain | Every agent session |
| Ron | Constitution enforcement | Every agent action |
| Mira | Incident correlation + escalation | System-wide health |
| Eltjo | Log analysis + pattern detection | All agent logs |
| Nessa | Performance monitoring + load testing | Staging + production |
| Amber | Participation audit (no dead code) | Every PR |
Every line in this document is a gate that prevents waste. Every gate that isn't enforced in code is just a suggestion. — Growing Europe Delivery Swimlanes v1.0