[hermes] bstein-dev-home #446: SonarQube JS analysis cannot run node in quality-tools image #13

Open
opened 2026-08-06 01:56:34 +00:00 by bstein · 1 comment
Owner

Hermes auto-triage classified incident bstein-dev-home/446 as sonarqube_node_runtime_missing (confidence 0.99); first failed gate: sonarqube.

Why a human is needed

Facts

  • jenkins — Jenkins build bstein-dev-home #446 ended with result FAILURE after 887.486 seconds. (https://ci.bstein.dev/job/bstein-dev-home/446/; build timestamps 2026-08-06T01:40:28.945000+00:00 to 2026-08-06T01:55:16.431000+00:00)
  • jenkins — The earliest enforced failure evidence is in the SonarQube analysis: JavaScript analysis reported that 'node -v' could not run because Node.js was unavailable. (console_failures line 489, timestamp 01:53:24.542)
  • jenkins — The underlying process error was 'Cannot run program "node": error=2, No such file or directory'. (console_failures line 543, timestamp 01:53:24.545)
  • jenkins — The failing analysis ran in the quality-tools image registry.bstein.dev/bstein/quality-tools:sonar8.0.1-trivy0.70.0-db20260422-arm64. (console_failures line 314)
  • jenkins — Frontend and backend build-and-push stages were skipped due to an earlier failure, and the pipeline ended with exit code 1. (jenkins.console_tail)
  • opensearch — OpenSearch evidence collection failed with connection refused and returned no records. (log_evidence.error: opensearch request failed: [Errno 111] Connection refused)

Inferences

  • The OpenSearch connection refusal is a separate evidence-collection limitation and is not the first enforced Jenkins failure.

Filed automatically by Ariadne from a Hermes Agent diagnosis (run run_1df042caada946ffa271d170907a4cea). Hermes has no write access to this repository; no files or infrastructure were changed.

Hermes auto-triage classified incident `bstein-dev-home/446` as **sonarqube_node_runtime_missing** (confidence 0.99); first failed gate: `sonarqube`. ## Why a human is needed ## Facts - **jenkins** — Jenkins build bstein-dev-home #446 ended with result FAILURE after 887.486 seconds. (`https://ci.bstein.dev/job/bstein-dev-home/446/; build timestamps 2026-08-06T01:40:28.945000+00:00 to 2026-08-06T01:55:16.431000+00:00`) - **jenkins** — The earliest enforced failure evidence is in the SonarQube analysis: JavaScript analysis reported that 'node -v' could not run because Node.js was unavailable. (`console_failures line 489, timestamp 01:53:24.542`) - **jenkins** — The underlying process error was 'Cannot run program "node": error=2, No such file or directory'. (`console_failures line 543, timestamp 01:53:24.545`) - **jenkins** — The failing analysis ran in the quality-tools image registry.bstein.dev/bstein/quality-tools:sonar8.0.1-trivy0.70.0-db20260422-arm64. (`console_failures line 314`) - **jenkins** — Frontend and backend build-and-push stages were skipped due to an earlier failure, and the pipeline ended with exit code 1. (`jenkins.console_tail`) - **opensearch** — OpenSearch evidence collection failed with connection refused and returned no records. (`log_evidence.error: opensearch request failed: [Errno 111] Connection refused`) ## Inferences - The OpenSearch connection refusal is a separate evidence-collection limitation and is not the first enforced Jenkins failure. ## Links - Failed build: https://ci.bstein.dev/job/bstein-dev-home/446/ - Full evidence bundle and audit trail live in Ariadne at `/api/admin/audit/events`, event types `hermes_autotriage_incident` and `hermes_autotriage_diagnosis`. Filed automatically by Ariadne from a Hermes Agent diagnosis (run `run_1df042caada946ffa271d170907a4cea`). Hermes has no write access to this repository; no files or infrastructure were changed. <!-- hermes-triage job=bstein-dev-home classification=sonarqube_node_runtime_missing incident=bstein-dev-home/446 -->
bstein changed title from [hermes] bstein-dev-home #446: known_demo_fixture_failure to [hermes] bstein-dev-home #446: SonarQube JS analysis cannot run node in quality-tools image 2026-08-06 02:14:35 +00:00
Author
Owner

Classification corrected. Hermes labelled this known_demo_fixture_failure (0.99) because a missing binary in a container superficially matched the triage-demo fixture signature. That classification is only meaningful for the hermes-triage-demo job and was wrong here.

Ariadne refused to act on it — the deterministic evidence gate returned evidence_signature_missing, so no automated remediation ran. The safety boundary held; only the label was wrong.

The underlying diagnosis in the issue body is accurate and still stands: registry.bstein.dev/bstein/quality-tools:sonar8.0.1-trivy0.70.0-db20260422-arm64 has no node on PATH, so the SonarQube JavaScript sensor fails with Cannot run program "node": error=2. That is a real gap in the quality-tools image.

Fixed upstream in Ariadne: the triage prompt now interpolates the job under analysis and forbids the demo classification and repair_demo_fixture action on any job other than hermes-triage-demo.

**Classification corrected.** Hermes labelled this `known_demo_fixture_failure` (0.99) because a missing binary in a container superficially matched the triage-demo fixture signature. That classification is only meaningful for the `hermes-triage-demo` job and was wrong here. Ariadne refused to act on it — the deterministic evidence gate returned `evidence_signature_missing`, so no automated remediation ran. The safety boundary held; only the label was wrong. The underlying diagnosis in the issue body is accurate and still stands: `registry.bstein.dev/bstein/quality-tools:sonar8.0.1-trivy0.70.0-db20260422-arm64` has no `node` on PATH, so the SonarQube JavaScript sensor fails with `Cannot run program "node": error=2`. That is a real gap in the quality-tools image. Fixed upstream in Ariadne: the triage prompt now interpolates the job under analysis and forbids the demo classification and `repair_demo_fixture` action on any job other than `hermes-triage-demo`.
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: bstein/bstein-dev-home#13
No description provided.