jenkins
620f5b83d2
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
fdb2e8c411
chore(maintenance): automated image update
2026-08-05 23:28:21 +00:00
flux-bot
4b924b5033
chore(cassandra): automated image update
2026-08-05 23:22:31 +00:00
flux-bot
ed6077b2e4
chore(cassandra): automated image update
2026-08-05 23:18:23 +00:00
flux-bot
47569519a5
chore(cassandra): automated image update
2026-08-05 23:14:21 +00:00
jenkins
511e92ca60
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
0e0d749fd5
chore(cassandra): automated image update
2026-08-05 23:13:18 +00:00
jenkins
a555fc0c96
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
029779724c
chore(maintenance): automated image update
2026-08-05 22:29:05 +00:00
jenkins
b4a45f1382
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
9b379daf00
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
0e9ee04cc4
docs(comms): resync runbook mirror
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 18:53:37 -03:00
jenkins
70d8f5f35f
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
888819153c
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
aa36b06b2b
chore(maintenance): automated image update
2026-08-05 21:31:02 +00:00
jenkins
49aab8da32
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
f32980f606
chore(maintenance): automated image update
2026-08-05 20:52:22 +00:00
jenkins
4048ed1de5
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
167ab91b60
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
3e6783e44d
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
2068f3caba
chore(maintenance): automated image update
2026-08-05 20:32:12 +00:00
flux-bot
3cffe30993
chore(maintenance): automated image update
2026-08-05 20:19:10 +00:00
jenkins
3787095d3c
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
239a98c5c9
chore(cassandra): automated image update
2026-08-05 20:05:00 +00:00
flux-bot
f648b3c31b
chore(cassandra): automated image update
2026-08-05 20:02:00 +00:00
jenkins
8a5c93ac2f
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
flux-bot
48fff25915
chore(cassandra): automated image update
2026-08-05 19:57:05 +00:00
flux-bot
dc55fb79f8
chore(cassandra): automated image update
2026-08-05 19:56:58 +00:00
jenkins
3833e89545
fix(hermes-triage-demo): JCasC substitutes ${} at load; use concatenation-only pipeline
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 16:56:06 -03:00
jenkins
363adedd75
feat(hermes-triage): human-required alert rule + Ariadne autotriage config
...
- vmalert: hermes-triage.yaml alert group (HermesTriageHumanRequired on
ariadne_hermes_triage_incident{status="human_required"}, 1m interval),
wire Alertmanager notifier into vmalert-atlas-availability
- Ariadne deployment: hermes autotriage env (observe mode: autotriage on,
autoremediation OFF), 1m schedule, allowlist hermes-triage-demo only,
HERMES_API_KEY from optional hermes-api-server-key Secret
2026-08-05 16:51:48 -03:00
jenkins
b166f22830
fix(hermes-triage-demo): agent pod securityContext must match jnlp uid 1000
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 16:47:48 -03:00
jenkins
2bf90fa102
feat(hermes-triage-demo): isolated demo surface + Jenkins job + Hermes key seeding
...
- New hermes-triage-demo namespace with fixture PVC and RBAC scoped to
Jenkins agent Job creation only
- JCasC pipelineJob hermes-triage-demo: SEED_FAILURE-parameterized fixture
check running as a Kubernetes Job in the demo namespace, emitting the
incident ID to pod stdout (Fluent Bit -> OpenSearch kube-*) and JUnit to
Jenkins
- Hermes init container can seed API_SERVER_KEY in the persistent .env
from an optional hermes-api-server-key Secret (no-op until it exists)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 16:42:37 -03:00
flux-bot
2427580936
chore(cassandra): automated image update
2026-08-05 19:27:31 +00:00
jenkins
f4097c6e59
Merge origin/main into layout migration
...
Reconciles the services layout migration with ~991 upstream commits:
- Remote content wins for cassandra/cassandra-auth, monitoring dashboards,
vmalert availability rules, veles, vault auth script, dashboard render
script and tests (request-v4 availability definition)
- Layout paths win for structure: keycloak/bstein-dev-home job dirs use
bootstrap-jobs/validation-jobs; cassandra realm jobs live in
cassandra-auth (removed keycloak duplicates)
- Union: applications CR list gains hermes-chat and cassandra
image-automation
- Fixed post-migration paths in dashboard test module loader and
hermes-access job header
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 16:26:36 -03:00
jenkins
0da9e4c82d
refactor: restructure services layout, retire oceanus, add aether scaffolding
...
- Move flat service manifests into structured subdirs (apps/, bootstrap-jobs/,
repair-jobs/, migration-jobs/, validation-jobs/, node-ops/, networking/)
- Retire oneoffs/ directories across services
- Remove oceanus cluster and its host roles; add aether cluster + terraform scaffolding
- Reorganize scripts/ into ops/, render/, sync/, manual-tests/
- Add Makefile with render/validate/test/flux targets and repo-structure tests
- Update flux-system application CRs to the new paths
- Add hermes-automated-triage-24h-plan knowledge doc (+ comms mirror)
- Refresh knowledge catalogs, dashboards, vmalert rules, quality contract
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 16:21:36 -03:00
flux-bot
0586613e67
chore(cassandra): automated image update
2026-08-05 18:08:35 +00:00
flux-bot
f554fb174f
chore(cassandra): automated image update
2026-08-05 18:04:39 +00:00
flux-bot
cb9d00fc1b
chore(cassandra): automated image update
2026-08-05 18:00:33 +00:00
jenkins
7bb6c831f6
security(portal): disable outbound SMTP
2026-08-05 15:00:10 -03:00
flux-bot
b90c66e0fb
chore(cassandra): automated image update
2026-08-05 17:59:36 +00:00
flux-bot
456be51feb
chore(maintenance): automated image update
2026-08-05 17:15:26 +00:00
flux-bot
48c5365dae
chore(cassandra): automated image update
2026-08-05 15:33:40 +00:00
flux-bot
88881c5ad7
chore(cassandra): automated image update
2026-08-05 15:29:39 +00:00
flux-bot
719e4b40b4
chore(cassandra): automated image update
2026-08-05 15:25:40 +00:00
flux-bot
e2f7d7c16e
chore(cassandra): automated image update
2026-08-05 15:24:41 +00:00
jenkins
ede91ce69a
security(portal): disable public access requests
2026-08-05 12:12:49 -03:00
jenkins
9b8a29022d
Revert "monitoring(network): organize Traefik traffic lanes"
...
This reverts commit eeec8b72dc885950dd116d6dc2ad6574c1cbe6b1.
2026-08-05 12:06:23 -03:00
jenkins
eeec8b72dc
monitoring(network): organize Traefik traffic lanes
2026-08-05 12:02:51 -03:00
flux-bot
5b91159831
chore(cassandra): automated image update
2026-08-05 13:54:23 +00:00
flux-bot
faea58aa75
chore(cassandra): automated image update
2026-08-05 13:51:22 +00:00