4798 Commits

Author SHA1 Message Date
flux-bot
2a75b6174a chore(maintenance): automated image update 2026-08-06 03:11:10 +00:00
flux-bot
a08815fb3f chore(maintenance): automated image update 2026-08-06 03:09:11 +00:00
flux-bot
2a297c962e chore(maintenance): automated image update 2026-08-06 03:07:10 +00:00
flux-bot
4ff140ac45 chore(maintenance): automated image update 2026-08-06 03:02:09 +00:00
flux-bot
ecd4d8c48d chore(bstein-dev-home): automated image update 2026-08-06 02:56:09 +00:00
flux-bot
c06cc8cbe0 chore(bstein-dev-home): automated image update 2026-08-06 02:52:08 +00:00
jenkins
88f05cfe37 docs: record the in-process repair timings and the classification-bleed fix
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-05 23:36:58 -03:00
jenkins
3bd8d249cc docs(runbook): record the faster in-process repair timings
Red-build to green-rebuild is 1m04s on Ariadne 0.1.0-402, down from 4m00s
armed-to-resolved when the repair spawned its own Kubernetes Job. Reframe the
timings around the red build, since the arming leg depends on the agent pool.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-05 23:34:09 -03:00
flux-bot
2a3b7c3727 chore(maintenance): automated image update 2026-08-06 02:25:00 +00:00
jenkins
2ce849c6d7 docs(runbook): warn that a full agent pool stalls the demo
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-05 23:20:30 -03:00
jenkins
ea206e98fc feat(demo): preflight the agent-pool cap and open code-demo PRs
Two conditions silently break a rehearsal. A saturated Kubernetes agent pool
leaves the demo build queued reporting that all nodes are offline, and an open
hermes-repair PR makes the duplicate guard refuse a new proposal. Report both
so the operator sees them before starting rather than mid-demo.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-05 23:19:37 -03:00
jenkins
97dfb1a844 feat(ariadne): allowlist the transient-infra retry action
The classification->action registry already mapped transient_infra_failure to
retry_transient_infra, but the action allowlist held only repair_demo_fixture,
so that route always died at the action_not_allowlisted gate. Add the action
and state the registry explicitly rather than relying on the code default.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-05 23:17:32 -03:00
flux-bot
56f5e5a123 chore(maintenance): automated image update 2026-08-06 02:10:50 +00:00
jenkins
af4d9db64c fix(vault-injector): run two replicas so restarts cannot skip injection
The webhook is failurePolicy: Ignore, so with one replica any pod created
during an injector restart is admitted without its Vault agent sidecar and
then crash-loops forever on a missing /vault/secrets file, with nothing to
indicate injection was skipped. Hit twice while rolling ariadne.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 22:56:49 -03:00
flux-bot
5df98f65f7 chore(maintenance): automated image update 2026-08-06 01:49:38 +00:00
jenkins
33085879b7 chore(hermes-triage-demo): retire repair Job service account and role
The fixture repair now runs in-process inside Ariadne, so the
hermes-demo-repair service account and its Role/RoleBinding have no
remaining user.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 22:31:11 -03:00
jenkins
f4d8b2c01d feat(hermes-triage-demo): least-privilege ConfigMap patch for in-process repair
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 22:25:52 -03:00
jenkins
1894078b62 fix(scripts): dashboard renderer wrote outside the repo after the layout move
ROOT still used parents[1], which resolved to scripts/ once the renderer
moved into scripts/render/. Every --build run wrote a phantom
scripts/services/monitoring tree and silently left the real dashboards
untouched. Points at the repo root again and removes the stray tree.

Also adds Hermes triage panels to the Atlas Testing dashboard: open
escalations awaiting a human, automated actions succeeded, Hermes
diagnosis latency, actions by result, and incident state by job.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 21:41:02 -03:00
flux-bot
b929e67692 chore(maintenance): automated image update 2026-08-06 00:39:46 +00:00
jenkins
84ff647898 fix(monitoring): Alertmanager must HELO with a FQDN for Mailu
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 21:33:11 -03:00
jenkins
664e436575 feat(hermes-triage): real-repo patch proposals + Alertmanager email escalation
- Ariadne: per-repo code config for metis, lesavka, soteria,
  bstein-dev-home and ariadne, each with its own base branch, source path
  prefixes and file suffixes so a proposal can only touch that repo's
  source tree
- Alertmanager: the only receiver was an empty "default", so every alert
  fired into a void. HermesTriageHumanRequired now routes to an email
  receiver via Mailu's in-cluster local-domain relay, with resolved
  notices; scoped to service=hermes-triage so nothing else mails yet.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 21:30:34 -03:00
flux-bot
72fc09783b chore(maintenance): automated image update 2026-08-06 00:15:26 +00:00
jenkins
46bd4daf88 docs(hermes-triage): delivery record + enable Gitea issue filing config
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 21:01:50 -03:00
flux-bot
e9f9daf782 chore(maintenance): automated image update 2026-08-05 23:52:50 +00:00
jenkins
639b43673e feat(hermes-triage): enable real-service triage across homegrown Jenkins jobs
Adds ariadne, lesavka, soteria, metis, ananke, pegasus, atlasbot,
bstein-dev-home and data-prepper to the autotriage allowlist. These get
detection, evidence, Hermes diagnosis and human-required escalation only:
no allowlisted repair action applies to them, so nothing is mutated.

Verified on lesavka #582 with the new console failure-region evidence:
classification coverage_quality_gate_failure, confidence 0.93, first
failed gate coverage (previously undetermined).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 20:31:44 -03:00
flux-bot
95317b5e9e chore(maintenance): automated image update 2026-08-05 23:28:21 +00:00
flux-bot
8fc6c1a157 chore(cassandra): automated image update 2026-08-05 23:22:31 +00:00
flux-bot
e83ee208b4 chore(cassandra): automated image update 2026-08-05 23:18:23 +00:00
flux-bot
f259ed5def chore(cassandra): automated image update 2026-08-05 23:14:21 +00:00
jenkins
1dc2872ebb fix(hermes-code): add branch discovery trait to multibranch source
Indexing succeeded but discovered no branches without an explicit
gitBranchDiscovery trait, so hermes-repair/* never got a validation build.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 20:14:01 -03:00
flux-bot
09b4fc1acf chore(cassandra): automated image update 2026-08-05 23:13:18 +00:00
jenkins
0731ab5d9d feat(hermes-code): multibranch validation for hermes-repair/* proposal branches
Adds demo driver script and branch-level test gate so a Hermes-proposed
pull request carries a green build before human merge.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 19:46:30 -03:00
flux-bot
fdf8a4f543 chore(maintenance): automated image update 2026-08-05 22:29:05 +00:00
jenkins
71e6357887 feat(hermes-code): demo repo Jenkins job + Ariadne code-path configuration
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 19:19:05 -03:00
jenkins
161834904f revert(hermes-triage): restore action allowlist after alert rehearsal
Rehearsal confirmed: emptied allowlist -> incident 14 human_required
(action_not_allowlisted) -> HermesTriageHumanRequired FIRING in vmalert and
active in Alertmanager.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 19:03:28 -03:00
jenkins
10ccf2e520 docs(comms): resync runbook mirror
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 18:53:37 -03:00
jenkins
9d34a9aa16 docs(hermes-triage): investigative-triage demonstration record + measured runbook timings
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 18:51:58 -03:00
jenkins
d23ee3f448 test(hermes-triage): temporarily empty action allowlist for alert-lifecycle rehearsal
Reverted immediately after the rehearsal confirms HermesTriageHumanRequired
fires and self-clears.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 18:51:58 -03:00
flux-bot
7f4797f24e chore(maintenance): automated image update 2026-08-05 21:31:02 +00:00
jenkins
2b8829b056 feat(hermes-triage): enable autoremediation for the demo loop
Observe-mode rehearsal passed: incident hermes-triage-demo/9 diagnosed
correctly (0.99 confidence, known_demo_fixture_failure) and stopped only
at this kill switch. Scope stays: allowlisted job, one allowlisted
action, one action per incident, isolated namespace.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 17:56:46 -03:00
flux-bot
14f66030ac chore(maintenance): automated image update 2026-08-05 20:52:22 +00:00
jenkins
9a264f981a fix(hermes-triage-demo): restore groovy escape depths lost in ConfigMap rewrite
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 17:45:40 -03:00
jenkins
6462561d02 refactor(hermes-triage-demo): ConfigMap fixture replaces Longhorn PVC
- Pipeline ensures the fixture ConfigMap and seeds unhealthy via patch-file
- Test-runner mounts the ConfigMap read-only; no storage attach involved
- New hermes-demo-repair SA + Role scoped to patching only the fixture CM
- Removes the fixture PVC (Flux prunes it)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 17:42:10 -03:00
jenkins
78d173126a fix(hermes-triage-demo): archive junit xml as artifact; junit plugin absent
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 17:32:32 -03:00
flux-bot
9b30b9cc66 chore(maintenance): automated image update 2026-08-05 20:32:12 +00:00
flux-bot
65b44f8b44 chore(maintenance): automated image update 2026-08-05 20:19:10 +00:00
jenkins
561edf41ef fix(hermes-triage-demo): pin test-runner to Longhorn-ready workers; add demo runbook
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 17:18:17 -03:00
flux-bot
63e1d8a957 chore(cassandra): automated image update 2026-08-05 20:05:00 +00:00
flux-bot
82d9d4f5f9 chore(cassandra): automated image update 2026-08-05 20:02:00 +00:00
jenkins
158c12317d fix(hermes-triage-demo): correct groovy escape depth for newline join and shell JSON quotes
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 16:59:32 -03:00