Latency telemetry: retain evidence-grade p99.9 samples - #466
Conversation
|
Warning Review limit reached
Next review available in: 25 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (4)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4e05e15612
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…e-retention-398 # Conflicts: # rust_hft/infra-services/core/metrics/src/lib.rs
Change contract
Add benchmark-grade Binance local-stage latency evidence with explicit p99.9 sample sufficiency and exclusions, while keeping the 200-sample operational window non-evidentiary.
Issue relationship
Closes #398
Acceptance evidence
--latency-report-outwrites count, p50, p95, p99, p99.9, max, capture provenance, capture exclusions, and per-stage record exclusions after a configured message/runtime bound completes.insufficient-samplewithbenchmark_gate_eligible=false.Out of scope
Dependency / merge order
PRs #438, #440, and #464 are merged. This branch includes exact
mainmerge commit0d11a012c7dd7befc1d9d1ff5db910e111e5ec45; the metrics conflict retained both #464 execution-span coverage and this PR's finite latency-tail bucket test.Focused validation
cargo test -p hft-binance-md(14 passed)cargo test -p hft-infra-metrics(5 passed)cargo test -p hft-engine latency_monitor::tests(4 passed)cargo check -p hft-binance-md -p hft-infra-metrics -p hft-engine --all-targetscargo fmton changed Rust filesgit diff --check935d972f11ad42314cf9f643fd5cfa3025af0223Review-size exception
The final diff is 5 files, 830 insertions, and 54 deletions. Named standards reviewer
/root/pr466_standardsapproved the atomic exception: bounded capture, exclusions/sample sufficiency, atomic artifact, the non-evidentiary operational-window label, and finite histogram range form one evidence-integrity contract and must land or roll back together to avoid a partially truthful artifact. The 765-line binary change includes its focused tests; splitting it would leave a dead or unverified evidence schema.Rollout / rollback impact
No deployment or live enablement. The new artifact is opt-in through
--latency-report-out; rollback is a single PR revert. Live trading remains disabled.