[hermes] bstein-dev-home #555: test_metrics_publication_failure #476

Open
opened 2026-09-27 09:47:24 +00:00 by hermes-automation · 0 comments

Hermes auto-triage classified incident bstein-dev-home/555 as test_metrics_publication_failure (confidence 0.94); first failed gate: Publish test metrics.

Why a human is needed

The build first failed while publishing test metrics after the backend suite had passed and produced its JUnit and coverage reports. No failing test case was recorded. The retained excerpts omit the failed stage's command and error, so a maintainer must inspect the full Jenkins output around "Publish test metrics" to determine whether the publisher rejected a report, could not find an expected frontend or backend result file, or failed to reach its destination. The earlier SonarQube Node.js error should also be corrected by running analysis in an environment containing Node.js, but the supplied stage metadata does not identify it as the enforced failure that stopped this build.

Ariadne did not authorize automated remediation: human_required.

Facts

  • jenkins — Jenkins reported build 555 as FAILURE. (jenkins.result)
  • jenkins — Jenkins identified "Publish test metrics" as the first failed pipeline stage. (jenkins.first_failed_stage)
  • jenkins — The backend test suite completed successfully with 128 passing tests and generated JUnit and coverage XML files. (jenkins.console_failures[2])
  • jenkins — No structured failed tests were published for this build. (jenkins.failed_tests)
  • jenkins — SonarQube's JavaScript analyzer could not execute "node -v" because the node executable was absent, but Jenkins did not identify that analysis as the first failed stage. (jenkins.console_failures[0:2])
  • jenkins — The final console output reports exit code 1 and says subsequent image-build work was skipped because of an earlier failure, but it does not contain the output from the failed metrics stage. (jenkins.console_tail)
  • opensearch — No correlated OpenSearch records were retrieved because the OpenSearch request was refused. (log_evidence.error)

Evidence

The earliest failure region of the build console:

09:30:38.908 INFO  Sensor JaCoCo XML Report Importer [jacoco] (done) | time=9ms
09:30:38.909 INFO  Sensor IaC CloudFormation Sensor [iac]
09:30:39.401 INFO  0 source files to be analyzed
09:30:39.772 INFO  0/0 source files have been analyzed
09:30:39.773 INFO  Sensor IaC CloudFormation Sensor [iac] (done) | time=864ms
09:30:39.773 INFO  Sensor IaC Kubernetes Sensor [iac]
09:30:40.004 INFO  0 source files to be analyzed
09:30:40.204 INFO  0/0 source files have been analyzed
09:30:40.205 INFO  Sensor IaC Kubernetes Sensor [iac] (done) | time=432ms
09:30:40.205 INFO  Sensor JavaScript analysis [javascript]
09:30:48.662 ERROR Error when running: 'node -v'. Is Node.js available during analysis?
org.sonarsource.nodejs.NodeCommandException: Error when running: 'node -v'. Is Node.js available during analysis?
	at org.sonarsource.nodejs.NodeCommand.start(NodeCommand.java:79)
	at org.sonarsource.nodejs.NodeCommandBuilderImpl.getVersion(NodeCommandBuilderImpl.java:203)
	at org.sonarsource.nodejs.NodeCommandBuilderImpl.checkNodeCompatibility(NodeCommandBuilderImpl.java:169)
	at org.sonarsource.nodejs.NodeCommandBuilderImpl.build(NodeCommandBuilderImpl.java:143)
	at org.sonar.plugins.javascript
... (truncated; the full log is in the linked build)

Inferences

  • The first enforced failure was the Publish test metrics stage, not a recorded unit-test assertion failure.
  • The missing Node.js executable produced an earlier SonarQube analyzer error, but the pipeline-stage metadata indicates that it did not fail the build before Publish test metrics.
  • The available excerpts do not show which metrics-publication command returned nonzero, so they cannot distinguish malformed or missing report input from a failure contacting the metrics destination.

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

Hermes auto-triage classified incident `bstein-dev-home/555` as **test_metrics_publication_failure** (confidence 0.94); first failed gate: `Publish test metrics`. ## Why a human is needed The build first failed while publishing test metrics after the backend suite had passed and produced its JUnit and coverage reports. No failing test case was recorded. The retained excerpts omit the failed stage's command and error, so a maintainer must inspect the full Jenkins output around "Publish test metrics" to determine whether the publisher rejected a report, could not find an expected frontend or backend result file, or failed to reach its destination. The earlier SonarQube Node.js error should also be corrected by running analysis in an environment containing Node.js, but the supplied stage metadata does not identify it as the enforced failure that stopped this build. Ariadne did not authorize automated remediation: `human_required`. ## Facts - **jenkins** — Jenkins reported build 555 as FAILURE. (`jenkins.result`) - **jenkins** — Jenkins identified "Publish test metrics" as the first failed pipeline stage. (`jenkins.first_failed_stage`) - **jenkins** — The backend test suite completed successfully with 128 passing tests and generated JUnit and coverage XML files. (`jenkins.console_failures[2]`) - **jenkins** — No structured failed tests were published for this build. (`jenkins.failed_tests`) - **jenkins** — SonarQube's JavaScript analyzer could not execute "node -v" because the node executable was absent, but Jenkins did not identify that analysis as the first failed stage. (`jenkins.console_failures[0:2]`) - **jenkins** — The final console output reports exit code 1 and says subsequent image-build work was skipped because of an earlier failure, but it does not contain the output from the failed metrics stage. (`jenkins.console_tail`) - **opensearch** — No correlated OpenSearch records were retrieved because the OpenSearch request was refused. (`log_evidence.error`) ## Evidence The earliest failure region of the build console: ``` 09:30:38.908 INFO Sensor JaCoCo XML Report Importer [jacoco] (done) | time=9ms 09:30:38.909 INFO Sensor IaC CloudFormation Sensor [iac] 09:30:39.401 INFO 0 source files to be analyzed 09:30:39.772 INFO 0/0 source files have been analyzed 09:30:39.773 INFO Sensor IaC CloudFormation Sensor [iac] (done) | time=864ms 09:30:39.773 INFO Sensor IaC Kubernetes Sensor [iac] 09:30:40.004 INFO 0 source files to be analyzed 09:30:40.204 INFO 0/0 source files have been analyzed 09:30:40.205 INFO Sensor IaC Kubernetes Sensor [iac] (done) | time=432ms 09:30:40.205 INFO Sensor JavaScript analysis [javascript] 09:30:48.662 ERROR Error when running: 'node -v'. Is Node.js available during analysis? org.sonarsource.nodejs.NodeCommandException: Error when running: 'node -v'. Is Node.js available during analysis? at org.sonarsource.nodejs.NodeCommand.start(NodeCommand.java:79) at org.sonarsource.nodejs.NodeCommandBuilderImpl.getVersion(NodeCommandBuilderImpl.java:203) at org.sonarsource.nodejs.NodeCommandBuilderImpl.checkNodeCompatibility(NodeCommandBuilderImpl.java:169) at org.sonarsource.nodejs.NodeCommandBuilderImpl.build(NodeCommandBuilderImpl.java:143) at org.sonar.plugins.javascript ... (truncated; the full log is in the linked build) ``` ## Inferences - The first enforced failure was the Publish test metrics stage, not a recorded unit-test assertion failure. - The missing Node.js executable produced an earlier SonarQube analyzer error, but the pipeline-stage metadata indicates that it did not fail the build before Publish test metrics. - The available excerpts do not show which metrics-publication command returned nonzero, so they cannot distinguish malformed or missing report input from a failure contacting the metrics destination. ## Links - Failed build: https://ci.bstein.dev/job/bstein-dev-home/555/ - 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_bb7b6ea1dfa149dca1c1aa1db9c4ef32](https://triage.bstein.dev/chat?resume=run_bb7b6ea1dfa149dca1c1aa1db9c4ef32)). Hermes has no write access to this repository; no files or infrastructure were changed. <!-- hermes-triage job=bstein-dev-home classification=test_metrics_publication_failure incident=bstein-dev-home/555 -->
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#476
No description provided.