• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

prisma-risk / tsoracle / 26389078618
95%

Build:
DEFAULT BRANCH: main
Ran 25 May 2026 07:38AM UTC
Jobs 1
Files 65
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

25 May 2026 07:33AM UTC coverage: 95.516% (-0.1%) from 95.644%
26389078618

push

github

web-flow
feat(server): add public shutdown_signal() and wire the cluster examples to it (#406)

Adds `tsoracle_server::shutdown_signal()`, a graceful-shutdown future that
resolves on SIGTERM or SIGINT (Ctrl-C only on non-unix), and routes every
caller through it.

The stock `tsoracle serve` binary has handled SIGTERM since #245, but the
multi-node example binaries a real cluster actually runs —
openraft-standalone and paxos-standalone — fed serve_with_shutdown a bare
ctrl_c() future. Under Kubernetes / docker stop / systemd, which terminate
with SIGTERM, those nodes ignored the signal, rode out the termination
grace period, and got SIGKILLed mid-flight, so tonic never drained and the
cooperative-cancel / WatchGuard machinery never ran.

Lifting the helper into the embedder-facing crate gives one source of
truth: both examples and the stock binary (which drops its private copy)
consume it, and embedders writing their own main() get correct graceful
shutdown for free. Tracing calls are gated behind the `tracing` feature to
match the rest of the crate; tsoracle-server's tokio gains the `signal`
feature.

Regression coverage: a new subprocess test spawns openraft-standalone,
waits for the tso listener to accept, sends SIGTERM, and asserts a clean
exit 0 within the grace period (mirrors the stock binary's smoke test).
paxos-standalone takes the identical one-line wiring change and shares the
same helper, so it is not separately spawned.

0 of 13 new or added lines in 1 file covered. (0.0%)

9309 of 9746 relevant lines covered (95.52%)

558635.82 hits per line

Uncovered Changes

Lines Coverage ∆ File
13
0.0
crates/tsoracle-server/src/signal.rs
Jobs
ID Job ID Ran Files Coverage
1 26389078618.1 25 May 2026 07:38AM UTC 65
95.52
GitHub Action Run
Source Files on build 26389078618
  • Tree
  • List 65
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26389078618
  • 03d16a1a on github
  • Prev Build on main (#26388776776)
  • Next Build on main (#26389789658)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc