1161 Commits

Author SHA1 Message Date
flux-bot
723079c715 chore(maintenance): automated image update 2026-08-11 01:58:14 +00:00
flux-bot
d1b7a2c0af chore(maintenance): automated image update 2026-08-11 01:53:13 +00:00
flux-bot
20ba75386f chore(maintenance): automated image update 2026-08-10 17:17:14 +00:00
flux-bot
2563eedc1b chore(maintenance): automated image update 2026-08-10 13:50:01 +00:00
flux-bot
88c377cbbc chore(maintenance): automated image update 2026-08-10 13:49:53 +00:00
flux-bot
7e5343e356 chore(maintenance): automated image update 2026-08-10 13:47:53 +00:00
flux-bot
95550a6334 chore(maintenance): automated image update 2026-08-10 13:42:59 +00:00
flux-bot
ac0f943ab1 chore(maintenance): automated image update 2026-08-10 05:18:00 +00:00
flux-bot
e931e5c193 chore(maintenance): automated image update 2026-08-10 01:50:57 +00:00
flux-bot
befc4b8557 chore(maintenance): automated image update 2026-08-10 01:50:01 +00:00
flux-bot
7433cb8ad9 chore(maintenance): automated image update 2026-08-10 01:46:56 +00:00
flux-bot
b860a95b01 chore(maintenance): automated image update 2026-08-10 01:42:58 +00:00
flux-bot
bdece8d50c chore(maintenance): automated image update 2026-08-09 17:17:00 +00:00
flux-bot
8e3179c1c1 chore(maintenance): automated image update 2026-08-09 13:33:09 +00:00
flux-bot
e069e95444 chore(maintenance): automated image update 2026-08-09 13:33:03 +00:00
flux-bot
344744b127 chore(maintenance): automated image update 2026-08-09 13:31:02 +00:00
flux-bot
2d42f153c8 chore(maintenance): automated image update 2026-08-09 13:29:00 +00:00
flux-bot
6793476b9a chore(maintenance): automated image update 2026-08-09 05:16:08 +00:00
flux-bot
dda9aab8b4 chore(maintenance): automated image update 2026-08-09 01:32:31 +00:00
flux-bot
a48704b77f chore(maintenance): automated image update 2026-08-09 01:32:25 +00:00
flux-bot
206a5625a1 chore(maintenance): automated image update 2026-08-09 01:30:25 +00:00
flux-bot
b2363a50d8 chore(maintenance): automated image update 2026-08-09 01:28:23 +00:00
jenkins
bb73efb285 feat(hermes): split chat agent and triage surfaces 2026-08-08 17:59:57 -03:00
flux-bot
bc939977d6 chore(maintenance): automated image update 2026-08-08 17:16:36 +00:00
flux-bot
336bbb586f chore(maintenance): automated image update 2026-08-08 13:38:09 +00:00
flux-bot
e2f4302861 chore(maintenance): automated image update 2026-08-08 13:36:58 +00:00
flux-bot
3d1fdf776c chore(maintenance): automated image update 2026-08-08 13:34:57 +00:00
flux-bot
ad211e2fa3 chore(maintenance): automated image update 2026-08-08 13:33:57 +00:00
flux-bot
433ddf1449 chore(maintenance): automated image update 2026-08-08 05:15:35 +00:00
flux-bot
5ffebba63a chore(maintenance): automated image update 2026-08-07 17:16:38 +00:00
flux-bot
1919326513 chore(maintenance): automated image update 2026-08-07 13:41:09 +00:00
flux-bot
0767822701 chore(maintenance): automated image update 2026-08-07 13:41:01 +00:00
flux-bot
361baa37ea chore(maintenance): automated image update 2026-08-07 13:39:01 +00:00
flux-bot
59173a3abf chore(maintenance): automated image update 2026-08-07 13:37:05 +00:00
flux-bot
785e9bcf7d chore(maintenance): automated image update 2026-08-07 08:32:54 +00:00
flux-bot
1b48914a9b chore(maintenance): automated image update 2026-08-07 08:11:31 +00:00
jenkins
0855e38c0f feat(ariadne): turn on suggested fixes for unpatchable findings
Most of the SonarQube backlog is refactors too diffuse for an anchored patch,
so without this the majority of what static analysis knows never reaches a
maintainer. Deduped on the rule like the pull requests, so one root cause
yields one issue.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-07 05:00:25 -03:00
jenkins
10a629d5a7 feat(ariadne): sweep seven projects, and stop advertising the wrong model
The sweep covered four projects because only four had a write allowlist.
ananke (Go, cmd/ and internal/), pegasus (Go backend, TS frontend) and
atlasbot (Python) all have SonarQube projects and mapped repositories; they
were excluded only for want of prefixes and suffixes, which are now set from
each repository's actual layout.

The per-sweep ceiling rises to seven, one per project. With rule-level dedupe
a project stops producing proposals once every rule it has is already under
review, so this is a ceiling rather than a rate - the backlog cannot become a
queue nobody drains.

The Hermes deployment annotation still advertised gpt-5.6-terra as primary.
The config has had claude-opus-5 as default and primary for some time, so the
annotation was telling operators the wrong thing about which model made a
decision.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-07 04:45:15 -03:00
flux-bot
01b2814889 chore(maintenance): automated image update 2026-08-07 05:15:42 +00:00
flux-bot
d429ab3c89 chore(maintenance): automated image update 2026-08-07 04:54:17 +00:00
flux-bot
8e6977adc2 chore(maintenance): automated image update 2026-08-07 03:52:04 +00:00
flux-bot
32f548a462 chore(maintenance): automated image update 2026-08-07 03:41:56 +00:00
flux-bot
770a7c05bc chore(maintenance): automated image update 2026-08-07 03:25:49 +00:00
flux-bot
17dd91814e chore(maintenance): automated image update 2026-08-07 03:16:02 +00:00
jenkins
8c47328b23 feat(ariadne): sweep four services, and link proposals to the finding
Only one pull request appeared because the sweep was scoped to one project at
one proposal per hour - a throttle I set deliberately while nothing had ever
run, not a limit of the mechanism. It has now run, so it widens to every
project whose job also has a write allowlist: ariadne, metis, soteria and
bstein-dev-home. The rest are left out because without allowed prefixes
nothing is patchable, and a sweep would spend a SonarQube call to discover it
has nowhere to write.

Still one proposal per project per hour. The backlog is 139 findings on
Ariadne alone; the constraint that matters is how many pull requests a person
will actually read, not how many the mechanism could open.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-07 00:06:33 -03:00
flux-bot
e1be7ef351 chore(maintenance): automated image update 2026-08-07 02:56:19 +00:00
flux-bot
15e04f75bb chore(maintenance): automated image update 2026-08-07 02:27:09 +00:00
jenkins
1bfb29388a feat(ariadne): link pull requests to the Hermes run that wrote them
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-06 23:17:06 -03:00
jenkins
00af41891c fix(ariadne): read the SonarQube token from a path Ariadne can already reach
The sweep's token was injected from kv/data/atlas/quality/sonarqube-oidc,
which the maintenance role cannot read. I granted that path on the live policy
and verified the read, but the grant was reverted by whatever manages Vault
policy, and the next rollout wedged: vault-agent-init retries a 403 forever, so
the pod never initializes and the Deployment cannot roll. The old replica kept
serving, which is the only reason this was not an outage.

A template block that depends on a grant outside this repository is the actual
defect. The token now lives beside Ariadne's other credentials in
kv/data/atlas/maintenance/ariadne-db - a path its role has always been able to
read - so no policy change is needed and nothing outside this repo can revoke
it. Existing keys at that path were merged, not replaced.

Guarded with an if, so a deployment whose secret predates the key renders an
empty value and starts normally instead of blocking on a missing field. The
sweep then reports an empty token and skips, which is the right failure: no
sweep is much better than no Ariadne.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-06 22:42:23 -03:00
flux-bot
542ccfae6c chore(maintenance): automated image update 2026-08-07 01:40:41 +00:00