0xMiden / 0xMiden/note-transport-service

Server errors exit with code 0 — restart-on-failure never triggers

Open
#126 1 comment 0 reactions 0 assignees View on GitHub
bug production-readiness
Dominant language
Rust
Stars
3
Forks
10
Avg merge
2h 23m
Merged PRs (30d)
4

Description

Severity: high (bug).

### Summary

`entrypoint()` swallows the server error: `if let Err(e) = self.grpc.serve().await { error!("Server error: {e}"); }` (`crates/node/src/node/mod.rs:59-61`), and `main` then returns `Ok(())` (`bin/node/src/main.rs:83`).

### Impact

A bind failure, transport error, or any fatal server error produces a clean `exit(0)`. Docker `restart: on-failure` and systemd `Restart=on-failure` treat this as success and leave the service down.

### Recommendation

Propagate the error from `entrypoint()` to `main` so the process exits non-zero on fatal error.

---
Part of #114.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.