Skip to content

spec(port): port the padding ciphertext length class balance guard (Refs #8884) - #9753

Closed
dmitrii-f-t27 wants to merge 2 commits into
gHashTag:masterfrom
dmitrii-f-t27:port/cr-chat-04-wave2-ab
Closed

dmitrii-f-t27 wants to merge 2 commits into
gHashTag:masterfrom
dmitrii-f-t27:port/cr-chat-04-wave2-ab

Conversation

@dmitrii-f-t27

Copy link
Copy Markdown
Contributor

Refs #8884 (CR-CHAT-04 ring tracker). Parent epic: gHashTag/trios#1812 (W2, own lane, T-PORT). Twenty-ninth W2 target delivered: the class-balance rules — batch ceiling (4096), record floor (16), per-record zero-size probe, class-index ceiling (< 4), repeated-id scan ([32]u8), then the chi-squared ceiling over the class counts (≤ 15.0; counts accumulate in f64 from the start — the int-to-float cast the backends reject, arithmetic identical for integer counts) — D5 verdict carrying idx / got / bound / got_f / bound_f for every variant, original rule order, all ten PCLB tests transcribed plus helper and rule-order tests (12 total, 0 vacuous). Exact fixtures: PCLB-01 (twenty in one class) measures chi 60.0; the boundary probe (2/8/11 over the last three classes) measures exactly 15.0 and passes (rule is strictly >). BTreeSet → visited-scan. t27b 12/12 native; t27c 12/12; 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.

…efs gHashTag#8884)

The twenty-ninth W2 target of the CR-CHAT-04 ring tracker: the
class-balance rules - the batch ceiling, the record floor, then
per record the zero-size probe, the class-index ceiling and the
repeated-id scan, then over the whole batch the chi-squared
ceiling on the class counts - as the D5 verdict with every
payload field, the original's rule order, and all ten PCLB tests
transcribed plus helper and rule-order tests.

The class counts accumulate in f64 from the start (the
int-to-float cast the backends reject), the arithmetic identical
for integer counts; PCLB-01 measures exactly sixty, the exact
boundary fixture (two, eight, eleven over the last three
classes) measures exactly fifteen and passes. The BTreeSet dedup
becomes a scan over the visited records.

Checks (conventions 0-14): t27b test 12 passed 0 failed; t27c
test-report 12/12, 0 vacuous; gen-rust output compiles under rustc;
coverage Untested 0; ASCII only; seal saved, all hashes MATCH;
@dmitrii-f-t27

Copy link
Copy Markdown
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.

…ave2-ab

# Conflicts:
#	docs/reports/t27b_expectations.json
@dmitrii-f-t27

Copy link
Copy Markdown
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.

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