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

prisma-risk / tsoracle / 26303906852
95%

Build:
DEFAULT BRANCH: main
Ran 22 May 2026 06:05PM UTC
Jobs 1
Files 54
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

22 May 2026 06:01PM UTC coverage: 95.896% (+0.003%) from 95.893%
26303906852

push

github

web-flow
fix(stress): unblock nightly under process and raft chaos (#128)

The first stress-nightly run surfaced two real failure modes and three
adjacent issues that masked or amplified them. All five are addressed
here so the next nightly is green and future failures are diagnosable.

process/random-{1,2,3} (83,456 Monotonicity violations):
`tsoracle serve` is single-node (file driver, no cluster protocol). The
shared --nodes default of 3 spawned three independent oracles with three
unrelated physical-clock baselines; under chaos the client failed over
between them and the supervisor's per-client monotonicity check flagged
the cross-oracle ts comparisons as regressions. Validation now rejects
nodes != 1 for process topology, the spawn-time check asserts the same,
the CI workflow passes --nodes 1, and the stale "monotonicity is global"
docstring is dropped.

raft/random-{1,2,3} + raft/fence-stress (30m job timeouts):
RaftController::{kill_leader,pause_leader} were
`isolate -> sleep -> heal`. When the harness's --duration timer won the
outer select!, the chaos future was dropped mid-sleep and the heal never
ran, stranding the cluster partitioned for the remainder of the run.
A HealOnDrop RAII guard restores reachability whether the future
completes or is cancelled. As defense in depth, issue_one's warmup
retry loop now honors the stop signal so a degraded cluster can never
again pin the job at its 30-minute hard cap.

Auto-issue dedup step:
The "Open new issue" step assumed area:stress / priority:investigate
labels existed; on a fresh repo it errored with "could not add label:
'area:stress' not found". A new idempotent label-bootstrap step now
runs first.

Diagnostic plumbing:
The supervisor was accumulating Applied chaos events but lib::run
overwrote them with Vec::new(), so artifacts always rendered
`chaos_events: 0` regardless of what fired. Supervisor now exposes the
list via SupervisorOutcome, the report carries it through, and the JSON
renderer emits a t... (continued)

173 of 183 new or added lines in 7 files covered. (94.54%)

7524 of 7846 relevant lines covered (95.9%)

652790.03 hits per line

Uncovered Changes

Lines Coverage ∆ File
4
93.63
-0.52% benchmarks/stress/src/topology/raft.rs
3
60.17
-0.51% benchmarks/stress/src/topology/process/mod.rs
1
99.15
-0.85% benchmarks/stress/src/config.rs
1
97.44
0.8% benchmarks/stress/src/loadgen.rs
1
99.49
-0.2% benchmarks/stress/src/report.rs
Jobs
ID Job ID Ran Files Coverage
1 26303906852.1 22 May 2026 06:05PM UTC 54
95.9
GitHub Action Run
Source Files on build 26303906852
  • Tree
  • List 54
  • Changed 7
  • Source Changed 7
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26303906852
  • 1a3f68cc on github
  • Prev Build on main (#26303375756)
  • Next Build on main (#26304573050)
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