From bab620fb614162f67632e08360166cfc25a5d4bb Mon Sep 17 00:00:00 2001 From: jenkins Date: Fri, 7 Aug 2026 00:06:29 -0300 Subject: [PATCH] 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 --- .../maintenance/apps/ariadne-deployment.yaml | 23 ++++++++++++------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/services/maintenance/apps/ariadne-deployment.yaml b/services/maintenance/apps/ariadne-deployment.yaml index 536949942..7ed6165bb 100644 --- a/services/maintenance/apps/ariadne-deployment.yaml +++ b/services/maintenance/apps/ariadne-deployment.yaml @@ -560,22 +560,29 @@ spec: value: "true" - name: ARIADNE_HERMES_SONAR_URL value: http://sonarqube.quality.svc.cluster.local:9000 + # The browsable console, printed in each proposal so the finding + # that caused it is one click away. + - name: ARIADNE_HERMES_SONAR_UI_URL + value: https://quality.bstein.dev # sonar-project=jenkins-job. The job already carries the repository # mapping in ARIADNE_HERMES_CODE_REPOS, so there is no second place - # for the two to disagree. Scoped to one project to start: this opens - # pull requests nobody asked for, and that is worth widening - # deliberately rather than by default. + # for the two to disagree. Only projects whose job also has a write + # allowlist in ARIADNE_HERMES_CODE_PREFIXES are listed: without one + # nothing is patchable, so a sweep would spend a SonarQube call to + # discover it has nowhere to write. That excludes ananke, pegasus, + # atlasbot, data_prepper and titan_iac for now. - name: ARIADNE_HERMES_SONAR_PROJECTS - value: ariadne=ariadne + value: ariadne=ariadne,metis=metis,soteria=soteria,bstein_home=bstein-dev-home # Hotspots are absent by construction - they need human review, not a # patch - so only findings with a code fix are ever requested. - name: ARIADNE_HERMES_SONAR_TYPES value: CODE_SMELL,BUG - # One per sweep, hourly. A backlog of 139 findings turned into 139 - # pull requests would make the review gate theatre; the open-proposal - # ceiling above still applies on top of this. + # One per project per hourly sweep, four projects. A backlog of 139 + # findings turned into 139 pull requests would make the review gate + # theatre, so this stays far below what the backlog could produce; + # the 64-open-proposal ceiling above still applies on top. - name: ARIADNE_HERMES_SONAR_MAX_PER_SWEEP - value: "1" + value: "4" # SonarQube's own effort estimate is the filter, not severity: it is # the closest proxy for the single anchored change the patch # validator can check. Anything it calls longer than this is a