From 8314bd184321eda4f65b3fed148a542c13a654a3 Mon Sep 17 00:00:00 2001 From: codex Date: Wed, 5 Aug 2026 17:17:52 -0300 Subject: [PATCH] fix(hermes-autotriage): pin repair Job to Longhorn-ready worker nodes Non-worker nodes (titan-2x lane) are not Longhorn-ready; volume attach fails there. Same constraint as the demo test-runner. Co-Authored-By: Claude Fable 5 --- ariadne/services/hermes_autotriage_repair.py | 1 + tests/test_hermes_autotriage_repair.py | 1 + 2 files changed, 2 insertions(+) diff --git a/ariadne/services/hermes_autotriage_repair.py b/ariadne/services/hermes_autotriage_repair.py index 9e9c200..6207c11 100644 --- a/ariadne/services/hermes_autotriage_repair.py +++ b/ariadne/services/hermes_autotriage_repair.py @@ -99,6 +99,7 @@ def _job_payload(cfg: dict, job_name: str, incident_id: str) -> dict[str, Any]: "metadata": {"labels": {"app.kubernetes.io/part-of": "hermes-triage-demo"}}, "spec": { "restartPolicy": "Never", + "nodeSelector": {"node-role.kubernetes.io/worker": "true"}, "containers": [ { "name": "repair", diff --git a/tests/test_hermes_autotriage_repair.py b/tests/test_hermes_autotriage_repair.py index bda8c3c..2e210a0 100644 --- a/tests/test_hermes_autotriage_repair.py +++ b/tests/test_hermes_autotriage_repair.py @@ -92,6 +92,7 @@ def test_repair_job_payload_contract(monkeypatch) -> None: assert spec["ttlSecondsAfterFinished"] == 3600 pod = spec["template"]["spec"] assert pod["restartPolicy"] == "Never" + assert pod["nodeSelector"] == {"node-role.kubernetes.io/worker": "true"} container = pod["containers"][0] assert container["image"] == "busybox:1.37" assert container["command"][:2] == ["sh", "-c"]