Repository navigation
fix(alert-handler): adopt Node 24 and await user mail delivery - #5836
fan yang (fanyangCS) wants to merge 2 commits into
Conversation
Preserve dependency selections and service interfaces; cover HTTP, Kubernetes and mail behavior with isolated local regressions. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Propagate delivery rejection into the existing HTTP error handler and cover process survival and subsequent delivery under strict rejection handling. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
🔵 Needs a closer look
The Docker image was not built or run, and CI and live deployment validations remain unverified.
Pull request overview
Updates alert-handler to Node.js 24.20.0 and ensures user mail failures reach the existing HTTP 500 handler without terminating the service.
Changes:
- Migrates the runtime and Docker base image to Node 24.20.0.
- Awaits user mail delivery.
- Adds runtime regression coverage and documentation.
File summaries
| File | Description |
|---|---|
tests/alert-handler-runtime.js |
Adds runtime integration regression tests. |
src/alert-manager/src/alert-handler/README.md |
Documents runtime and validation requirements. |
src/alert-manager/src/alert-handler/package.json |
Declares Node 24 and the test script. |
src/alert-manager/src/alert-handler/controllers/mail.js |
Awaits user mail delivery. |
src/alert-manager/build/alert-handler.common.dockerfile |
Uses the Node 24.20.0 image and frozen installs. |
Review details
- Files reviewed: 5/5 changed files
- Comments generated: 0
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
Following up on review 5243958295 and review 5244024286: the validation limitations are real and remain explicit; this is not a claim that Docker or CI passed. For the unchanged head c8ca2fc, I reran local validation on Node 24.20.0 in an isolated checkout and a separate frozen-source copy, reusing copies of the previously validated full and production dependency installations (no fresh install claimed):
Still unverified: Docker image build/run is blocked here by Neither review contains an inline finding or a resolvable review thread. No code amendment is justified by these summaries alone, so no source change or push was made, and I am not marking the outstanding validation gaps as resolved. Docker validation still needs an appropriately authorized Docker-capable environment; this reply does not establish merge readiness. |
Scope
Move only alert-handler to declared Node24.20.0 and
node:24.20.0-bookworm; retain all 612 locked dependency selectors. Await user-mail delivery so transport rejection reaches the existing HTTP500 handler instead of terminating the service. Add focused runtime integration regression and service documentation. This is a prerequisite for parser/nested-mail fixes, not an alert-closure claim.Validation and independent review
Exact head
c8ca2fc48064b2964b6f6cd4b04bbc7d3e0a2e88, based on current master97534b224fdb155fadde7f364fccb2d01b22c2c5, accepted by independent Argus round2 review. Candidate and separate frozen production copies each pass compilation, lint and ten test records (nine integration groups plus parent), including failed-mail HTTP500, process survival and subsequent successful delivery. Strict lifecycle/frozen installs succeeded with unchanged lock selectors. Source/final hashes reverified before publication.Explicit gaps
Docker socket permission denied: image has NOT been built/run; no workaround used. No live SMTP/TLS, deployed Kubernetes, GPU-repair or failed-job-cleanup certification. Node10 baseline install fails on compress-brotli requiring Node>=12, so no working Node10 service baseline. All dependency alerts remain open pending separate fixes.
CI intentionally not queried or verified. Normal protections and eligible independent GitHub review remain mandatory; local review is not GitHub approval.