Vervangt de lange seed-prompt-loop door een Node-runner die per iteratie
precies één geclaimde job afhandelt. Eén Claude-invocation = één job met
de juiste per-kind config (model/permission-mode/effort/allowed_tools)
volgens PBI-67's resolveJobConfig.
- T-18/19/20/21: bin/run-one-job.ts (nieuw, ESM tsx). Imports direct uit
/opt/scrum4me-mcp/src/. Stappen: auth → quota-probe → claim met
LISTEN-fallback 270s → getFullJobContext → attachWorktreeToJob (TASK)
→ payload schrijven → CLI-args bouwen + mapBudgetToEffort → spawn claude
→ token-expiry detection → rollbackClaim bij exit≠0 zonder
update_job_status → cleanup. Logging met ISO-timestamps voor elke fase.
setInterval(60s) lease-renewal alleen voor SPRINT_IMPLEMENTATION.
- T-22: bin/run-agent.sh — SEED_PROMPT + ALLOWED_TOOLS verwijderd; claude
-p vervangen door `tsx /opt/agent/bin/run-one-job.ts`. TOKEN_EXPIRED
detectie uitgebreid met exit_code==3 trigger.
- T-23: CLAUDE.md herschreven — operationele loop weg, architectuur-
uitleg toegevoegd, hardstop-regels (geen wait_for_job, check_queue_empty,
job_heartbeat, git push).
T-24 smoke-test gedeferd tot na merge scrum4me-mcp PR (Dockerfile clone't
via MCP_GIT_REF, default 'main'); zie test_result-log voor verificatie-
commando's.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>