Repository navigation
spec(port): port the padding response timing fingerprint guard (Refs #8884) - #9748
Closed
dmitrii-f-t27 wants to merge 2 commits into
Closed
dmitrii-f-t27 wants to merge 2 commits into
dmitrii-f-t27 wants to merge 2 commits into
Conversation
…HashTag#8884) The twenty-fourth W2 target of the CR-CHAT-04 ring tracker: the response-timing uniformity rules - the batch ceiling, the empty batch accepted before the sample floor, the sample floor, the per-sample zero-id probe and repeated-id scan, then over the whole batch the mean floor and the CV ceiling (std over mean, x1000, integer cross-comparison) - as the D5 verdict with every payload field, the original's rule order, and all ten PRTF tests transcribed plus helper, isqrt and rule-order tests. The original's u64::isqrt becomes a bisection over the whole answer range - thirty-three halvings, exact for every u64, no float anywhere. The BTreeSet dedup becomes a scan over the visited samples; the mean, variance and CV stay the original's integer u64 arithmetic. Checks (conventions 0-14): t27b test 13 passed 0 failed; t27c test-report 13/13, 0 vacuous; gen-rust output compiles under rustc; coverage Untested 0; ASCII only; seal saved, all hashes MATCH;
Contributor
Author
|
Merge request for the gHashTag merger: steward READY (required all SUCCESS — validate, check-linked-issue, parse-ratchet, t27b-native-linux, t27b-native-macos; the red ones are non-required per Q16 and red on master too). Ledger row included; one-line rebase if the earlier lane PRs land first — I take it on request. |
This was referenced Oct 17, 2026
Merged
Merged
Merged
…ave2-w # Conflicts: # docs/reports/t27b_expectations.json
Contributor
Author
|
Superseded by #10175: the remaining CR-CHAT targets now land as one port-wave batch per specs/policy/pr_budget.t27 (#10067/#10074), which asks for one PR per ring batch instead of one per file. The spec body, seal and ledger row in this PR are unchanged there; the batch also carries one self-consistent duplicate-body bless. Closing this one-file PR keeps the merge queue and the Actions queue small. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #8884 (CR-CHAT-04 ring tracker). Parent epic: gHashTag/trios#1812 (W2, own lane, T-PORT). Twenty-fourth W2 target delivered: the response-timing uniformity rules — batch ceiling (512), empty batch accepted before the sample floor (as the original places it), sample floor (8), per-sample zero-id probe and repeated-id scan, then the mean floor (50 µs) and the CV ceiling (std/mean ×1000 ≤ 200, integer arithmetic) — D5 verdict carrying idx / got / bound / got64 / bound64 for every variant, original rule order, all ten PRTF tests transcribed plus helper, isqrt and rule-order tests (13 total, 0 vacuous). The original's u64::isqrt becomes a bisection over the whole answer range — 33 halvings, exact for every u64, no float anywhere; BTreeSet → visited-scan; mean/variance/CV stay the original's integer u64 arithmetic (usize→u64 via the int-widening cast). CV boundary 200 admitted (rule is strictly >). t27b 13/13 native; t27c 13/13; gen-rust compiles under rustc (0 errors, 0 &'static str, 0 Vec<const); coverage Untested 0; seal all hashes MATCH; ledger row included (pass, non-pass untouched). Dedup checked. Sequencing: one-line ledger rebase if the earlier lane PRs land first — I take it on request.