From be57e1e2463ee81005b370ff5aeb4f63682e856f Mon Sep 17 00:00:00 2001 From: Paul O'Reilly Date: Wed, 9 Sep 2026 13:57:40 +1200 Subject: [PATCH] fix(bug-verify): fresh UUID Idempotency-Key so re-verification with a different verdict does not 409 Claude-Session: https://claude.ai/code/session_01U3biMxRhFGkwtf4jVTNjcj --- harnesses/capabilities/python-dev/v1/harness.yaml | 9 ++++++--- task-templates/workflow/bug-verify-sonnet@1.yaml | 4 ++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/harnesses/capabilities/python-dev/v1/harness.yaml b/harnesses/capabilities/python-dev/v1/harness.yaml index 60e928f..8a660d1 100644 --- a/harnesses/capabilities/python-dev/v1/harness.yaml +++ b/harnesses/capabilities/python-dev/v1/harness.yaml @@ -4,9 +4,12 @@ version: 1 description: "Python dev tools: pytest, ruff, mypy, uv" requires: [] -packages: - apt: [python3-venv] - pip: [pytest, ruff, mypy, hypothesis, uv] +# `packages:` removed 2026-09-06 — apt + pip runtime install caused +# 76h zombie pods (init hung mid apt-get install). python3-venv + uv +# are now pre-baked into the base image (agent-runtimes/images/base/Dockerfile). +# pytest/ruff/mypy/hypothesis are also pre-baked into the base image's +# test deps. If you need additional Python tooling, add it to the base +# image at build time rather than declaring it here. env: PIP_BREAK_SYSTEM_PACKAGES: "1" diff --git a/task-templates/workflow/bug-verify-sonnet@1.yaml b/task-templates/workflow/bug-verify-sonnet@1.yaml index fa80aa2..9300c00 100644 --- a/task-templates/workflow/bug-verify-sonnet@1.yaml +++ b/task-templates/workflow/bug-verify-sonnet@1.yaml @@ -74,7 +74,7 @@ nodes: ``` python3 - <<'PY' - import json, os, urllib.request + import json, os, urllib.request, uuid VERDICT = "verified" # or "rejected" — must match your ## Verdict ITEM_UUID = "${item.uuid}" @@ -88,7 +88,7 @@ nodes: req = urllib.request.Request(url, data=body, method="PATCH", headers={ "Authorization": f"Bearer {token}", "Content-Type": "application/json", - "Idempotency-Key": f"bug-verify-verdict-{ITEM_UUID}", + "Idempotency-Key": str(uuid.uuid4()), }) with urllib.request.urlopen(req, timeout=30) as resp: print(resp.status, resp.read().decode())