[hermes] bstein-dev-home #466: sonarqube_analysis_interrupted #22

Open
opened 2026-08-14 22:02:38 +00:00 by bstein · 0 comments
Owner

Hermes auto-triage classified incident bstein-dev-home/466 as sonarqube_analysis_interrupted (confidence 0.86); first failed gate: Collect SonarQube evidence.

Why a human is needed

The build entered the SonarQube evidence stage and ended when its shell process was interrupted with exit code -2. The agent had been provisioned and was running, but Jenkins recorded repeated offline and online transitions while the scanner was active. The available console is truncated and does not show whether a pipeline timeout, agent loss, or another cancellation produced the final interruption, so the exact operational fix cannot be chosen from this bundle alone. The missing Node.js executable is a real quality-image defect, but it was not the first enforced failure because SonarScanner continued into later sensors after reporting it. A maintainer should inspect the complete console and agent/pod termination evidence around 21:57 UTC, then address the confirmed timeout or disconnect cause and add a compatible Node.js runtime to the quality-tools image.

Ariadne did not authorize automated remediation: human_required.

Facts

  • jenkins — Jenkins identified Collect SonarQube evidence as the first failed pipeline stage. (jenkins.first_failed_stage)
  • jenkins — The SonarScanner process reported that Node.js could not be executed because the node binary was absent, but analysis continued into the TypeScript sensor afterward; therefore this message was not itself shown to be the enforced pipeline failure. (jenkins.console_failures lines 361-397)
  • jenkins — During plugin loading, the Jenkins agent repeatedly went offline with java.lang.InterruptedException and subsequently came back online. (jenkins.console_failures line 259)
  • jenkins — The pipeline ultimately terminated with script exit code -2, and all subsequent image-build stages were skipped due to the earlier failure. (jenkins.console_tail)
  • opensearch — The agent was provisioned successfully, its pod reached Running, and its JNLP container began setting up the agent. (log_evidence.records at 2026-08-14T21:26:04.225Z through 2026-08-14T21:26:17.652Z)
  • jenkins — No structured failed tests were published for this build. (jenkins.failed_tests)

Evidence

The earliest failure region of the build console:

tty: true
    volumeMounts:
    - mountPath: "/home/jenkins/agent"
      name: "workspace-volume"
  - command:
    - "cat"
    image: "registry.bstein.dev/bstein/quality-tools:sonar8.0.1-trivy0.70.0-db20260422-arm64"
    name: "quality-tools"
    tty: true
    volumeMounts:
    - mountPath: "/home/jenkins/agent"
      name: "workspace-volume"
  - env:
    - name: "JENKINS_SECRET"
      value: "********"
    - name: "JENKINS_TUNNEL"
      value: "jenkins.jenkins.svc.cluster.local:50000"
    - name: "JENKINS_AGENT_NAME"
      value: "bstein-dev-home-466-w6x0m-3lhwk-bc908"

Inferences

  • The first enforced failure was the interrupted shell step in Collect SonarQube evidence, not a repository test assertion and not initial Jenkins agent provisioning.
  • Exit code -2 indicates that the SonarScanner shell process was interrupted rather than completing with an ordinary scanner failure. The repeated agent disconnects are the strongest available explanation, but the truncated console does not include the decisive interruption or timeout message.
  • The quality-tools image also lacks Node.js, preventing JavaScript analysis. That defect should be corrected, but the scanner continued after reporting it, so the supplied evidence does not establish it as the condition that failed this build.
  • A fix likely requires determining why the running Jenkins agent repeatedly disconnected or whether the stage hit a configured timeout, then stabilizing that execution path. Separately, the SonarQube tools image should include a Sonar-supported Node.js runtime so frontend analysis is complete.

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

Hermes auto-triage classified incident `bstein-dev-home/466` as **sonarqube_analysis_interrupted** (confidence 0.86); first failed gate: `Collect SonarQube evidence`. ## Why a human is needed The build entered the SonarQube evidence stage and ended when its shell process was interrupted with exit code -2. The agent had been provisioned and was running, but Jenkins recorded repeated offline and online transitions while the scanner was active. The available console is truncated and does not show whether a pipeline timeout, agent loss, or another cancellation produced the final interruption, so the exact operational fix cannot be chosen from this bundle alone. The missing Node.js executable is a real quality-image defect, but it was not the first enforced failure because SonarScanner continued into later sensors after reporting it. A maintainer should inspect the complete console and agent/pod termination evidence around 21:57 UTC, then address the confirmed timeout or disconnect cause and add a compatible Node.js runtime to the quality-tools image. Ariadne did not authorize automated remediation: `human_required`. ## Facts - **jenkins** — Jenkins identified Collect SonarQube evidence as the first failed pipeline stage. (`jenkins.first_failed_stage`) - **jenkins** — The SonarScanner process reported that Node.js could not be executed because the node binary was absent, but analysis continued into the TypeScript sensor afterward; therefore this message was not itself shown to be the enforced pipeline failure. (`jenkins.console_failures lines 361-397`) - **jenkins** — During plugin loading, the Jenkins agent repeatedly went offline with java.lang.InterruptedException and subsequently came back online. (`jenkins.console_failures line 259`) - **jenkins** — The pipeline ultimately terminated with script exit code -2, and all subsequent image-build stages were skipped due to the earlier failure. (`jenkins.console_tail`) - **opensearch** — The agent was provisioned successfully, its pod reached Running, and its JNLP container began setting up the agent. (`log_evidence.records at 2026-08-14T21:26:04.225Z through 2026-08-14T21:26:17.652Z`) - **jenkins** — No structured failed tests were published for this build. (`jenkins.failed_tests`) ## Evidence The earliest failure region of the build console: ``` tty: true volumeMounts: - mountPath: "/home/jenkins/agent" name: "workspace-volume" - command: - "cat" image: "registry.bstein.dev/bstein/quality-tools:sonar8.0.1-trivy0.70.0-db20260422-arm64" name: "quality-tools" tty: true volumeMounts: - mountPath: "/home/jenkins/agent" name: "workspace-volume" - env: - name: "JENKINS_SECRET" value: "********" - name: "JENKINS_TUNNEL" value: "jenkins.jenkins.svc.cluster.local:50000" - name: "JENKINS_AGENT_NAME" value: "bstein-dev-home-466-w6x0m-3lhwk-bc908" ``` ## Inferences - The first enforced failure was the interrupted shell step in Collect SonarQube evidence, not a repository test assertion and not initial Jenkins agent provisioning. - Exit code -2 indicates that the SonarScanner shell process was interrupted rather than completing with an ordinary scanner failure. The repeated agent disconnects are the strongest available explanation, but the truncated console does not include the decisive interruption or timeout message. - The quality-tools image also lacks Node.js, preventing JavaScript analysis. That defect should be corrected, but the scanner continued after reporting it, so the supplied evidence does not establish it as the condition that failed this build. - A fix likely requires determining why the running Jenkins agent repeatedly disconnected or whether the stage hit a configured timeout, then stabilizing that execution path. Separately, the SonarQube tools image should include a Sonar-supported Node.js runtime so frontend analysis is complete. ## Links - Failed build: https://ci.bstein.dev/job/bstein-dev-home/466/ - 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_d416b9cd6c7843ea9a46c1d417a838ac](https://triage.hermes.bstein.dev/chat?resume=run_d416b9cd6c7843ea9a46c1d417a838ac)). Hermes has no write access to this repository; no files or infrastructure were changed. <!-- hermes-triage job=bstein-dev-home classification=sonarqube_analysis_interrupted incident=bstein-dev-home/466 -->
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#22
No description provided.