Skip to content

Ik wil een bug of feature implementeren ​

Van issue naar merge request. Spexso isoleert je werk in een worktree en dwingt TDD af.

Steps ​

  1. Start het issue (moet in stage::spec of later staan):

    /spexso-start 42

    WARNING

    Issues in stage::opportunity worden geblokkeerd. Gebruik eerst /spexso-brainstorm om een spec te maken.

    Open blockers?

    Als het issue een blocker heeft die nog open staat (niet gemerged, niet gesloten), waarschuwt /spexso-start:

    ⚠ Issue #42 is blocked by:
      #38 'XSUAA setup' (stage::build, state: opened)
    Suggestion: start a blocker first → /spexso-start 38

    In pilot/copilot kies je zelf of je doorgaat. In --yolo is dit een hard block (gelijk aan marathon-gedrag).

  2. Kies een modus:

    ModusWat gebeurt erWanneer gebruiken
    yoloVolledig autonoom, geen gatesSolide specs, greenfield
    pilotPlan-approval + test-review checkpointsAanbevolen default
    copilotElke stap vraagt goedkeuringNieuw in het team, complex
  3. Plan de taken (automatisch in yolo):

    /spexso-plan
  4. Bouw met TDD — tests eerst, dan implementatie. Onafhankelijke taken draaien in waves: npx spexso waves groepeert taken zonder gedeelde bestanden of onderlinge dependencies, en per wave worden alle testers tegelijk gestart (parallelle RED — parallel.red in .spexso/config.json, standaard aan), daarna alle builders (parallelle GREEN — parallel.green, ook standaard aan). Verificatie en commits blijven per taak sequentieel:

    /spexso-build

    Twee code-enforced safety rails

    Na 3 mislukte pogingen op een taak stopt de build en escaleert naar jou. Overschrijdt een taak zijn tijdsbudget (budgets.perTaskMinutes, standaard 30 min), dan stopt de build ook — check dan npx spexso observe report voor de latency-uitsplitsing (wall clock, subagent hops, testruns).

  5. Review de code:

    /spexso-review
  6. Finish — push, merge en post de test checklist:

    /spexso-finish

    Spexso pusht de branch, maakt een MR aan, en merget automatisch in de geconfigureerde target branch (targetBranch in .spexso/config.json). Na de merge krijgt het issue label stage::ship + needs::manual-test en wordt er een test checklist op het issue gepost.

    Merge conflict?

    Als de auto-merge faalt, probeert Spexso automatisch een rebase. Als dat ook mislukt, krijgt het issue label needs::conflict-resolution en moet je manueel resolven in GitLab.

WARNING

Elke stap werkt in een geïsoleerde git worktree. Je main branch blijft onaangeraakt.

Tips ​

  • Gebruik pilot als je twijfelt over de modus
  • Check npx spexso status om te zien wat er in progress is
  • /spexso-finish merget automatisch, ververst de debt ledger (.spexso/debt.md), post een test checklist op het issue, schrijft een learning card naar docs/learning/, schrijft CHANGELOG en ruimt de worktree op
  • Na de merge staat het issue in stage::ship met label needs::manual-test — verwijder dit label manueel in GitLab na je tests