fix(prompt): DEPLOY-run.md op het echte ops-agent-contract (fase-4-bevindingen) #64

Merged
janpeter merged 1 commit from fix/deploy-prompt-ops-agent-contract into main 2026-07-04 16:48:09 +02:00
Owner

Context

De fase-4-server-rollout (T-1327) verifieerde het echte ops-agent-contract; drie aannames in de DEPLOY-kind-prompt weken af. Deze PR trekt src/prompts/deploy/run.md gelijk — vereist vóór de fase-5-E2E, want de runner-image bakt deze prompt mee.

Wijzigingen (alleen prompt-tekst)

  1. Sha-guard (stap 4): doel-sha via stdin i.p.v. tweede arg — de ops-agent args-whitelist is exact-match en kent geen sha-patronen. Respons gedocumenteerd als SSE (stdout-JSON {head_sha, contains} + exit-event; code 2 = ongeldige sha ⇒ failed).
  2. Flow-trigger (stap 5): body {"flow_key": …, "dry_run": false} en de respons is een SSE-stream (step_start/stdout/stderr/step_done + terminaal done{exit_code} of error{message}), geen enkel JSON-object.
  3. Statusbron: directe ops-agent-calls schrijven géén FlowRun-record — de SSE-stream is de statusbron (geen DB-poll); summary/error zonder flow-run-id, mét gefaalde step_index/command_key.

Verificatie

  • npx tsc --noEmit schoon; npm test 902/902 groen.
  • Prompt-asserts ($PAYLOAD_PATH, merge_sha_already_deployed) ongewijzigd geldig.
  • Contract-bron: rapportage server-Claude in s4m-taak 1a44a324, incl. live smoke-tests van beide endpoints.

Na merge

mcp-stable op de server bijwerken + runner-image opnieuw bakken (zelfde stappen als fase-4 T-1330) zodat de worker-deploy de gecorrigeerde prompt meekrijgt — kan meteen mee in de eerste E2E-voorbereiding.

🤖 Generated with Claude Code

## Context De fase-4-server-rollout (T-1327) verifieerde het echte ops-agent-contract; drie aannames in de DEPLOY-kind-prompt weken af. Deze PR trekt `src/prompts/deploy/run.md` gelijk — **vereist vóór de fase-5-E2E**, want de runner-image bakt deze prompt mee. ## Wijzigingen (alleen prompt-tekst) 1. **Sha-guard (stap 4):** doel-sha via `stdin` i.p.v. tweede arg — de ops-agent args-whitelist is exact-match en kent geen sha-patronen. Respons gedocumenteerd als SSE (`stdout`-JSON `{head_sha, contains}` + `exit`-event; code 2 = ongeldige sha ⇒ failed). 2. **Flow-trigger (stap 5):** body `{"flow_key": …, "dry_run": false}` en de respons is een **SSE-stream** (`step_start`/`stdout`/`stderr`/`step_done` + terminaal `done{exit_code}` of `error{message}`), geen enkel JSON-object. 3. **Statusbron:** directe ops-agent-calls schrijven géén FlowRun-record — de SSE-stream is de statusbron (geen DB-poll); summary/error zonder flow-run-id, mét gefaalde `step_index`/`command_key`. ## Verificatie - `npx tsc --noEmit` schoon; `npm test` 902/902 groen. - Prompt-asserts (`$PAYLOAD_PATH`, `merge_sha_already_deployed`) ongewijzigd geldig. - Contract-bron: rapportage server-Claude in s4m-taak `1a44a324`, incl. live smoke-tests van beide endpoints. ## Na merge mcp-stable op de server bijwerken + runner-image opnieuw bakken (zelfde stappen als fase-4 T-1330) zodat de worker-deploy de gecorrigeerde prompt meekrijgt — kan meteen mee in de eerste E2E-voorbereiding. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Drie contract-tweaks uit de fase-4-rollout (s4m-taak 1a44a324, T-1327):

- repo_contains_sha: doel-sha via stdin_from_body i.p.v. tweede arg — de
  ops-agent args-whitelist is exact-match en kent geen sha-patronen; respons
  is een SSE-stream (stdout-JSON {head_sha,contains} + exit-event, code 2 =
  ongeldige sha).
- POST /agent/v1/flow: body is {flow_key, dry_run}, respons is een
  SSE-stream (step_start/stdout/stderr/step_done + terminaal done{exit_code}
  of error{message}) — geen enkel JSON-object.
- Directe ops-agent-calls schrijven geen FlowRun-record; de SSE-stream is de
  statusbron (niet de DB pollen); summary/error-velden zonder flow-run-id.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
janpeter/scrum4me-mcp!64
No description provided.