openclaw: route testing triage through ariadne

This commit is contained in:
jenkins 2026-05-19 23:30:29 -03:00
parent 2c4b1b9cc9
commit dd20678c46
5 changed files with 67 additions and 3 deletions

View File

@ -132,6 +132,12 @@ items:
name: atlas-default-compute name: atlas-default-compute
namespace: outline namespace: outline
spec: *defaultCompute spec: *defaultCompute
- apiVersion: v1
kind: LimitRange
metadata:
name: atlas-default-compute
namespace: openclaw
spec: *defaultCompute
- apiVersion: v1 - apiVersion: v1
kind: LimitRange kind: LimitRange
metadata: metadata:

View File

@ -404,6 +404,8 @@ spec:
value: "10" value: "10"
- name: ARIADNE_SCHEDULE_JENKINS_WORKSPACE_CLEANUP - name: ARIADNE_SCHEDULE_JENKINS_WORKSPACE_CLEANUP
value: "45 */6 * * *" value: "45 */6 * * *"
- name: ARIADNE_SCHEDULE_TESTING_TRIAGE
value: "*/15 * * * *"
- name: JENKINS_WORKSPACE_NAMESPACE - name: JENKINS_WORKSPACE_NAMESPACE
value: jenkins value: jenkins
- name: JENKINS_WORKSPACE_PVC_PREFIX - name: JENKINS_WORKSPACE_PVC_PREFIX

View File

@ -15,7 +15,18 @@ rules:
- create - create
- apiGroups: [""] - apiGroups: [""]
resources: resources:
- events
- pods - pods
- pods/log
verbs:
- get
- list
- watch
- apiGroups: ["apps"]
resources:
- daemonsets
- deployments
- statefulsets
verbs: verbs:
- get - get
- list - list

View File

@ -86,6 +86,17 @@ data:
You are OpenClaw running inside the Titan Kubernetes cluster as a read-only You are OpenClaw running inside the Titan Kubernetes cluster as a read-only
testing and operations triage assistant. testing and operations triage assistant.
Ariadne owns deterministic evidence collection. Start every testing triage
by reading:
- `curl -sS "$ARIADNE_BASE_URL/api/internal/testing/triage/latest"`
- if that is missing or stale, ask a human to run:
`curl -sS -X POST "$ARIADNE_BASE_URL/api/internal/testing/triage/collect"`
Treat the Ariadne bundle as the source of truth. Your job is to explain the
evidence and propose small Flux/IaC changes, not to rediscover everything
from raw shell commands.
Your job is to explain failing or suspicious test runs without mutating the Your job is to explain failing or suspicious test runs without mutating the
cluster. Prefer concise incident summaries with: cluster. Prefer concise incident summaries with:
@ -97,6 +108,7 @@ data:
Useful read-only commands: Useful read-only commands:
- `curl -sS "$ARIADNE_BASE_URL/api/internal/testing/triage/latest"`
- `kubectl get nodes -o wide` - `kubectl get nodes -o wide`
- `kubectl get pods -A -o wide` - `kubectl get pods -A -o wide`
- `kubectl get pods -A --field-selector status.phase!=Running,status.phase!=Succeeded -o wide` - `kubectl get pods -A --field-selector status.phase!=Running,status.phase!=Succeeded -o wide`

View File

@ -22,7 +22,7 @@ spec:
ai.bstein.dev/model: qwen2.5:7b-instruct-q4_0 ai.bstein.dev/model: qwen2.5:7b-instruct-q4_0
ai.bstein.dev/instructions: kubectl-field-selectors ai.bstein.dev/instructions: kubectl-field-selectors
ai.bstein.dev/role: testing-triage ai.bstein.dev/role: testing-triage
ai.bstein.dev/placement: gateway lane (titan-20) ai.bstein.dev/placement: arm64 gateway lane (jetson preferred)
spec: spec:
serviceAccountName: openclaw-triage serviceAccountName: openclaw-triage
automountServiceAccountToken: true automountServiceAccountToken: true
@ -35,10 +35,41 @@ spec:
requiredDuringSchedulingIgnoredDuringExecution: requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms: nodeSelectorTerms:
- matchExpressions: - matchExpressions:
- key: kubernetes.io/hostname - key: kubernetes.io/arch
operator: In operator: In
values: values:
- titan-20 - arm64
- key: node-role.kubernetes.io/worker
operator: In
values:
- "true"
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 100
preference:
matchExpressions:
- key: atlas.bstein.dev/spillover
operator: DoesNotExist
- weight: 95
preference:
matchExpressions:
- key: jetson
operator: In
values:
- "true"
- weight: 70
preference:
matchExpressions:
- key: hardware
operator: In
values:
- rpi5
- weight: 35
preference:
matchExpressions:
- key: hardware
operator: In
values:
- rpi4
initContainers: initContainers:
- name: init-permissions - name: init-permissions
image: busybox:1.37 image: busybox:1.37
@ -136,6 +167,8 @@ spec:
value: /home/node/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin value: /home/node/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
- name: VICTORIA_METRICS_URL - name: VICTORIA_METRICS_URL
value: http://victoria-metrics-single-server.monitoring.svc.cluster.local:8428 value: http://victoria-metrics-single-server.monitoring.svc.cluster.local:8428
- name: ARIADNE_BASE_URL
value: http://ariadne.maintenance.svc.cluster.local
- name: JENKINS_BASE_URL - name: JENKINS_BASE_URL
value: http://jenkins.jenkins.svc.cluster.local:8080 value: http://jenkins.jenkins.svc.cluster.local:8080
- name: GITEA_BASE_URL - name: GITEA_BASE_URL