Skip to content

feat(tools/e2e): limits harness saturation probe (verdict from an observation window) - #397

Merged
Minipada merged 2 commits into
jazzyfrom
feature/377-limits-harness-saturation-probe-verdict
Aug 19, 2026
Merged

feat(tools/e2e): limits harness saturation probe (verdict from an observation window)#397
Minipada merged 2 commits into
jazzyfrom
feature/377-limits-harness-saturation-probe-verdict

Conversation

@Minipada

Copy link
Copy Markdown
Owner

Summary

  • Adds tools/e2e/scripts/saturation_probe.py, a pure verdict function for Limits harness: measure where the pipeline saturates, on four axes #323's limits harness: given a chronologically ordered window of ack-latency / unacked-window-depth / disk-buffer / outage-declared observations, decides saturated / not-saturated / insufficient-data and names the binding signal.
  • Signal priority matches the PRD exactly: acknowledgement latency crossing its bound and staying there (primary) → unacked-window depth trending upward (secondary) → disk-buffer growth at steady state, i.e. only when no outage is declared in the window (tertiary). Buffer utilisation alone is never a signal — only its growth trend, told apart from a declared outage by the outage_declared flag, matching the PRD's explicit rejection of a level threshold.
  • A window shorter than min_observations returns an explicit INSUFFICIENT_DATA verdict, never a default healthy/saturated one.
  • Pure function: no containers, no I/O, no network — runs entirely as unit tests.

Closes #377

Test plan

  • uv run pytest tools/e2e/test/test_saturation_probe.py -v — 13/13 passing, covering all six acceptance criteria plus signal-priority ordering and the utilisation-vs-trend distinction
  • uv run pytest tools/e2e/test/ — full suite (37 tests) still green
  • uv run ruff check / ruff format --diff clean
  • prek run on the changed files — all hooks pass

🤖 Generated with Claude Code

https://claude.ai/code/session_011iv7L8vX7KgrAukeeXKfa6

Minipada and others added 2 commits August 19, 2026 16:54
… observation window)

A pure function over a chronologically ordered window of ack-latency,
unacked-window-depth, disk-buffer, and outage-declared observations, deciding
saturated/not-saturated/insufficient-data and naming the binding signal in the
PRD's stated priority order: latency crossing its bound and staying there,
then unacked-window growth, then disk-buffer growth at steady state — buffer
growth during a declared outage never trips it, matching the PRD's explicit
rejection of buffer utilisation as a signal. No container, no ramp controller
yet — this issue is the verdict function alone, unit-tested in isolation.

Closes #377

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011iv7L8vX7KgrAukeeXKfa6
Signed-off-by: David Bensoussan <d.bensoussan@proton.me>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011iv7L8vX7KgrAukeeXKfa6
Signed-off-by: David Bensoussan <d.bensoussan@proton.me>
@codecov

codecov Bot commented Aug 19, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 68.09%. Comparing base (c1391db) to head (3d238a7).

Additional details and impacted files
@@           Coverage Diff           @@
##            jazzy     #397   +/-   ##
=======================================
  Coverage   68.09%   68.09%           
=======================================
  Files         102      102           
  Lines        6320     6320           
=======================================
  Hits         4303     4303           
  Misses       2017     2017           
Flag Coverage Δ
cpp-jazzy 68.09% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@Minipada
Minipada merged commit 21adcdb into jazzy Aug 19, 2026
9 checks passed
@Minipada
Minipada deleted the feature/377-limits-harness-saturation-probe-verdict branch September 2, 2026 12:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant