Repository navigation
Port trios-chat ring CR-CHAT-04 to .t27: tracking list (owner work, not a bee task) #8884
Description
This is an epic-style tracking list. It is not a task for an agent and it has no Boundary on purpose. Please do not shape or dispatch it.
Owner work: the files below are part of the Trinity Secure Chat rewrite (gHashTag/trios crates/trios-chat) into .t27. They will be ported by agents working as dmitrii-f-t27, from the fork dmitrii-f-t27/t27, ring by ring, and then swapped into gHashTag/trios with the generated Rust. Each fork PR says "Refs" to this issue and lists the targets it delivers.
- Parent epic: EPIC: Trinity Secure Chat (crates/trios-chat) written once in .t27 and generated by t27c gen-rust trios#1812
- Roadmap goal (stage 6): [roadmap] Stage 6: trios Rust rings and trios-railway #4548
- Original source: gHashTag/trios at
8b229e9489ee
Targets (36)
One line per target, in the form the stage-6 feeder reads. The note after each target gives the original file, the wave and the task type.
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/application_message_generation_skip_dos.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/application_message_generation_skip_dos.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/external_init_secret_pinning.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/external_init_secret_pinning.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/header_extension_order_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/header_extension_order_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/lib.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/lib.rs, W2, T-SPLIT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/mac_truncation.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/mac_truncation.rs, W5, T-CRYPTO-DECISION)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/mls_plaintext_framing_integrity.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/mls_plaintext_framing_integrity.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_alignment_boundary_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_alignment_boundary_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_block_alignment_uniformity_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_block_alignment_uniformity_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_block_cipher_mode_uniformity_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_block_cipher_mode_uniformity_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_block_size_alignment_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_block_size_alignment_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_byte_entropy_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_byte_entropy_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_byte_pattern_uniformity_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_byte_pattern_uniformity_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_ciphertext_length_class_balance_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_ciphertext_length_class_balance_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_ciphertext_length_consistency_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_ciphertext_length_consistency_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_class_collision_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_class_collision_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_class_oracle.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_class_oracle.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_class_selection_entropy_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_class_selection_entropy_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_class_transition_audit.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_class_transition_audit.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_class_transition_entropy_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_class_transition_entropy_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_class_transition_monotonicity_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_class_transition_monotonicity_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_crypto_binding_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_crypto_binding_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_fill_byte_randomness_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_fill_byte_randomness_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_key_derivation_domain_separation_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_key_derivation_domain_separation_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_key_derivation_uniqueness_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_key_derivation_uniqueness_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_key_rotation_uniformity_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_key_rotation_uniformity_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_length_class_transition_uniformity_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_length_class_transition_uniformity_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_length_distribution_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_length_distribution_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_nonce_reuse_detection_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_nonce_reuse_detection_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_oracle_chosen_ct.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_oracle_chosen_ct.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_oracle_timing_sidechannel.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_oracle_timing_sidechannel.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_payload_entropy_minimum_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_payload_entropy_minimum_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_response_timing_fingerprint_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_response_timing_fingerprint_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_timing_side_channel_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_timing_side_channel_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_timing_uniformity_guard.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/padding_timing_uniformity_guard.rs, W2, T-PORT)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/safety_number.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/safety_number.rs, W5, T-CRYPTO-DECISION)
- specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/welcome_path_secret_unmasking.t27 (from crates/trios-chat/rings/CR-CHAT-04/src/welcome_path_secret_unmasking.rs, W2, T-PORT)
Not in this list
In the Queen lane, left to the bees and not touched by this tracker: padding_class_downgrade_guard.rs - open PR 8455 (issue 8437); padding_metadata_leak_guard.rs - open PR 7582 (issue 7562); wire_frame_integrity_guard.rs - open PR 8673 (issue 8600).
How progress is reported
- Each fork PR from dmitrii-f-t27/t27 carries "Refs" to this issue in its body and in every commit, and lists the targets it delivers.
- A delivered target stays in the list with a note "merged in PR ". The feeder skips targets that exist on master anyway.
- If a target gains a bot or manual Port issue, a queen-N branch or a foreign PR before our PR, it joins the in-flight group and is removed from this list. We do not duplicate active work; a stalled item is finished by our own PR.
If the owner lane is withdrawn
The author edits this body and removes every target not yet delivered. Closing the issue alone does not release the files, because the stage-6 feeder also reads closed issues.
Dmitrii Fedorov (@dmitrii-f-t27)
Boundary
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/application_message_generation_skip_dos.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/external_init_secret_pinning.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/header_extension_order_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/lib.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/mac_truncation.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/mls_plaintext_framing_integrity.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_alignment_boundary_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_block_alignment_uniformity_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_block_cipher_mode_uniformity_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_block_size_alignment_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_byte_entropy_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_byte_pattern_uniformity_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_ciphertext_length_class_balance_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_ciphertext_length_consistency_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_class_collision_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_class_oracle.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_class_selection_entropy_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_class_transition_audit.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_class_transition_entropy_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_class_transition_monotonicity_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_crypto_binding_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_fill_byte_randomness_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_key_derivation_domain_separation_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_key_derivation_uniqueness_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_key_rotation_uniformity_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_length_class_transition_uniformity_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_length_distribution_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_nonce_reuse_detection_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_oracle_chosen_ct.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_oracle_timing_sidechannel.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_payload_entropy_minimum_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_response_timing_fingerprint_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_timing_side_channel_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_timing_uniformity_guard.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/safety_number.t27specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/welcome_path_secret_unmasking.t27rings/CR-CHAT-04/src/application_message_generation_skip_dos.rsrings/CR-CHAT-04/src/external_init_secret_pinning.rsrings/CR-CHAT-04/src/header_extension_order_guard.rsrings/CR-CHAT-04/src/lib.rsrings/CR-CHAT-04/src/mac_truncation.rsrings/CR-CHAT-04/src/mls_plaintext_framing_integrity.rsrings/CR-CHAT-04/src/padding_alignment_boundary_guard.rsrings/CR-CHAT-04/src/padding_block_alignment_uniformity_guard.rsrings/CR-CHAT-04/src/padding_block_cipher_mode_uniformity_guard.rsrings/CR-CHAT-04/src/padding_block_size_alignment_guard.rsrings/CR-CHAT-04/src/padding_byte_entropy_guard.rsrings/CR-CHAT-04/src/padding_byte_pattern_uniformity_guard.rsrings/CR-CHAT-04/src/padding_ciphertext_length_class_balance_guard.rsrings/CR-CHAT-04/src/padding_ciphertext_length_consistency_guard.rsrings/CR-CHAT-04/src/padding_class_collision_guard.rsrings/CR-CHAT-04/src/padding_class_oracle.rsrings/CR-CHAT-04/src/padding_class_selection_entropy_guard.rsrings/CR-CHAT-04/src/padding_class_transition_audit.rsrings/CR-CHAT-04/src/padding_class_transition_entropy_guard.rsrings/CR-CHAT-04/src/padding_class_transition_monotonicity_guard.rsrings/CR-CHAT-04/src/padding_crypto_binding_guard.rsrings/CR-CHAT-04/src/padding_fill_byte_randomness_guard.rsrings/CR-CHAT-04/src/padding_key_derivation_domain_separation_guard.rsrings/CR-CHAT-04/src/padding_key_derivation_uniqueness_guard.rsrings/CR-CHAT-04/src/padding_key_rotation_uniformity_guard.rsrings/CR-CHAT-04/src/padding_length_class_transition_uniformity_guard.rsrings/CR-CHAT-04/src/padding_length_distribution_guard.rsrings/CR-CHAT-04/src/padding_nonce_reuse_detection_guard.rsrings/CR-CHAT-04/src/padding_oracle_chosen_ct.rsrings/CR-CHAT-04/src/padding_oracle_timing_sidechannel.rsrings/CR-CHAT-04/src/padding_payload_entropy_minimum_guard.rsrings/CR-CHAT-04/src/padding_response_timing_fingerprint_guard.rsrings/CR-CHAT-04/src/padding_timing_side_channel_guard.rsrings/CR-CHAT-04/src/padding_timing_uniformity_guard.rsrings/CR-CHAT-04/src/safety_number.rsrings/CR-CHAT-04/src/welcome_path_secret_unmasking.rs
Activity
tri-claw commentedon Oct 11, 2026
The Queen cannot take this issue yet. A bee starts only on an issue whose body has every section below, and this one lacks:
- specs/x.t27); without it the Queen reserves nothing and no bee can take the issueFR-001: ... MUST ...exit 0, or a backticked commandShe tried to write them 2 times and could not (last: not a task: This issue is explicitly an epic-style tracking list with no actionable task for an agent; the body states "It is not a task for an agent and it has no Boundary on purpose."). Add them and the next round takes it. The rule is
specs/policy/issue_shape.t27.spec(port): port two CR-CHAT-04 padding guards to specs/port/trios/cr…
Merge pull request #9613 from dmitrii-f-t27/port/cr-chat-04-wave2
spec(port): type the const test arrays and drop the ID cast in the tw…
t27b: name the two new CR-CHAT-04 padding guards in the expectations …
dmitrii-f-t27 commentedon Oct 15, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9613 (merged 82c11df):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_alignment_boundary_guard.t27(from .../padding_alignment_boundary_guard.rs, W2, T-PORT)specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_block_size_alignment_guard.t27(from .../padding_block_size_alignment_guard.rs, W2, T-PORT)Follow-up PR #9614 (READY, waiting for the gHashTag merge): the ratchet run of #9613 named both specs UNLISTED - t27b blocked on ExprArrayLiteral (untyped const array literal) and ExprCall(@truncate). The specs are rewritten with the same tests and rule order: every const test array carries its type annotation, and the PBSA-06 fixture marks IDs with one non-zero byte (the batch-size rule fires before any ID is examined). Measured by the PR's own CI run: t27b pass for both (14/14 and 13/13 natively; reference gates 0 FAIL, 0 vacuous, coverage Untested 0, seals MATCH). The expectations ledger names both as pass rows; the non-pass count stays 28/28.
The steward gate on the final SHA answers READY (required: validate, check-linked-issue, parse-ratchet, t27b-native-linux, t27b-native-macos - all SUCCESS; the three red are non-required and red on master too).
@ gHashTag: please merge t27#9614 — it repairs the two t27b-native-ratchet rows the merged #9613 added.
t27b: name the header extension order guard in the expectations ledge…
dmitrii-f-t27 commentedon Oct 15, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9641 (READY, waiting for the gHashTag merge):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/header_extension_order_guard.t27(from .../header_extension_order_guard.rs, W2, T-PORT) — D5 verdict, original rule order, 12 tests (all 10 HEXO originals + rule-order + boundary), no narrowing casts anywhere (const u16 ID tables for the loop fixtures), t27b pass natively, coverage Untested 0, seal all hashes MATCH, ledger row included.Together with #9613/#9614 that is 3 of the 36 targets delivered in this lane's first day.
t27b: name the External Init secret pinning spec in the expectations …
dmitrii-f-t27 commentedon Oct 15, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9650 (READY, waiting for the gHashTag merge):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/external_init_secret_pinning.t27(from .../external_init_secret_pinning.rs, W2, T-PORT) — the MLS External Commit join gate (RFC 9420 12.2), D5 verdict, original rule order, 15 tests (all 10 EIP originals + helpers + accessors + rule order), by-value struct params (both backends lower them; the records carry lengths and probe bits, no secret bytes), t27b pass natively, coverage Untested 0, seal all hashes MATCH, ledger row included.Lane total after today: 4 of the 36 targets delivered (#9613 merged; #9614, #9641, #9650 READY and waiting for the gHashTag merge).
dmitrii-f-t27 commentedon Oct 15, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9651 (READY, waiting for the gHashTag merge):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/application_message_generation_skip_dos.t27(from .../application_message_generation_skip_dos.rs, W2, T-PORT) — the intra-epoch skip-distance cap of RFC 9420 9.3, D5 verdict, original rule order, 14 tests (all 10 AMGSD originals + helpers + rule order), known-sender table as a record array (2D fixed arrays are not lowered by the Rust backend), t27b pass natively, coverage Untested 0, seal all hashes MATCH, ledger row included.Lane total: 5 of the 36 targets delivered (#9613 merged; #9614, #9641, #9650, #9651 READY and waiting for the gHashTag merge).
dmitrii-f-t27 commentedon Oct 15, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9652 (READY, waiting for the gHashTag merge):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/mls_plaintext_framing_integrity.t27(from .../mls_plaintext_framing_integrity.rs, W2, T-PORT) — the RFC 9420 section 6 framing rules, D5 verdict, original nine-rule order, 15 tests (all 10 MLF originals + helpers + boundary + rule order), t27b pass natively, coverage Untested 0, seal all hashes MATCH, ledger row included.Lane total: 6 of the 36 targets delivered (#9613 merged; #9614, #9641, #9650, #9651, #9652 READY and waiting for the gHashTag merge).
dmitrii-f-t27 commentedon Oct 15, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9660 (READY, waiting for the gHashTag merge):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_byte_entropy_guard.t27(from .../padding_byte_entropy_guard.rs, W2, T-PORT) — the statistical indistinguishability rules, D5 verdict, original rule order, 14 tests (all 10 PBEG originals + helpers + branch + rule order), BTreeMap → fixed 256-slot table, t27b pass natively, coverage Untested 0, seal all hashes MATCH, ledger row included.Lane total: 7 of the 36 targets delivered (#9613 merged; #9614, #9641, #9650, #9651, #9652, #9660 READY and waiting for the gHashTag merge).
10 remaining items
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9700 (READY, waiting for the gHashTag merge):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_length_class_transition_uniformity_guard.t27(from .../padding_length_class_transition_uniformity_guard.rs, W2, T-PORT) — the transition uniformity rules, D5 verdict, original rule order, 12 tests (all 10 PLCT originals + chi-squared helper + rule order), usize count table → f64 accumulators (t27b rejects int-to-float cast; identical arithmetic for integer counts), t27b pass natively (t27b-native-linux and t27b-native-macos green on CI), coverage Untested 0, seal all hashes MATCH, ledger row included.Lane total: 18 of the 36 targets delivered (#9613 merged; seventeen READY PRs waiting for the gHashTag merge: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700).
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9708 (READY, waiting for the gHashTag merge):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_length_distribution_guard.t27(from .../padding_length_distribution_guard.rs, W2, T-PORT) — the padding length distribution rules, D5 verdict, original rule order, 12 tests (all 10 PLDG originals + helper + rule order), BTreeMap → first-occurrence scans, dominance as the original's integer cross-multiplication, t27b pass natively (t27b-native-linux and t27b-native-macos green on CI), coverage Untested 0, seal all hashes MATCH, ledger row included.Lane total: 19 of the 36 targets delivered (#9613 merged; eighteen READY PRs waiting for the gHashTag merge: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708).
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9709 (READY, waiting for the gHashTag merge):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_nonce_reuse_detection_guard.t27(from .../padding_nonce_reuse_detection_guard.rs, W2, T-PORT) — the nonce-reuse rules, D5 verdict, original rule order, 14 tests (all 10 PNRD originals + helpers + rule order), BTreeSet → visited-records scan, nonce value folded byte by byte through the int-widening cast, t27b pass natively (t27b-native-linux and t27b-native-macos green on CI), coverage Untested 0, seal all hashes MATCH, ledger row included.Lane total: 20 of the 36 targets delivered — over half the ring (#9613 merged; nineteen READY PRs waiting for the gHashTag merge: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709).
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9738 (READY, waiting for the gHashTag merge):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_oracle_chosen_ct.t27(from .../padding_oracle_chosen_ct.rs, W2, T-PORT) — the chosen-ciphertext oracle rules, D5 verdict carrying plaintext_len/rejects/session (the original's &mut VerdictLedger threading by value through the verdict), original rule order, 12 tests (all 10 CCT originals + helpers + rule order), class ladder = crate::CLASSES (256/1024/4096/16384), BE-u32 fold via int-widening, t27b pass natively (t27b-native-linux and t27b-native-macos green on CI), coverage Untested 0, seal all hashes MATCH, ledger row included.Lane total: 21 of the 36 targets delivered (#9613 merged; twenty READY PRs waiting for the gHashTag merge: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709, #9738).
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9739 (READY, waiting for the gHashTag merge):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_oracle_timing_sidechannel.t27(from .../padding_oracle_timing_sidechannel.rs, W2, T-PORT) — the constant-time unpadding rules (R-CHAT-9), D5 verdict, original rule order, 12 tests (all 10 POTC originals + helper + rule order), BE-u32 prefix fold, LengthPrefixOverflow kept declared-and-unreachable exactly as in the original, t27b pass natively (t27b-native-linux and t27b-native-macos green on CI), coverage Untested 0, seal all hashes MATCH, ledger row included.Lane total: 22 of the 36 targets delivered (#9613 merged; twenty-one READY PRs waiting: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709, #9738, #9739).
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9747 (READY, waiting for the gHashTag merge):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_payload_entropy_minimum_guard.t27(from .../padding_payload_entropy_minimum_guard.rs, W2, T-PORT) — the payload entropy rules, D5 verdict, original rule order, 13 tests (all 10 PPEM originals + helpers + rule order), Vec payload → length + caller-computed entropy (the fill-byte-rainness lane convention), BTreeSet → visited-scan, t27b pass natively (t27b-native-linux and t27b-native-macos green on CI), coverage Untested 0, seal all hashes MATCH, ledger row included.Lane total: 23 of the 36 targets delivered (#9613 merged; twenty-two READY PRs waiting: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709, #9738, #9739, #9747).
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9748 (READY, waiting for the gHashTag merge):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/padding_response_timing_fingerprint_guard.t27(from .../padding_response_timing_fingerprint_guard.rs, W2, T-PORT) — the response-timing uniformity rules, D5 verdict, original rule order, 13 tests (all 10 PRTF originals + helpers + isqrt + rule order), u64::isqrt → exact bisection over the whole answer range (33 halvings, no float), CV boundary 200 admitted, t27b pass natively (t27b-native-linux and t27b-native-macos green on CI), coverage Untested 0, seal all hashes MATCH, ledger row included.Lane total: 24 of the 36 targets delivered — two thirds of the ring (#9613 merged; twenty-three READY PRs waiting: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709, #9738, #9739, #9747, #9748).
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9749 (READY) and PR #9750 (CI running):
padding_timing_side_channel_guard.t27— constant-time padding rules, variance ceiling max−min ≤ 1000 (boundary admitted), u64 min/max tracking, 12 tests, t27b pass natively, steward READY.padding_timing_uniformity_guard.t27— inter-arrival uniformity, CV ceiling std/mean ×10000 ≤ 1500 (boundary 1500 admitted; PTU-01 measures 9999), approx_sqrt Newton → exact bisection, u128 accumulator → u64 (fixtures far below the ceiling, documented), 12 tests, t27b pass natively.Lane total: 26 of the 36 targets delivered (#9613 merged; twenty-five READY PRs waiting: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709, #9738, #9739, #9747, #9748, #9749, #9750).
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9751 (READY) and PR #9752 (CI running):
padding_block_alignment_uniformity_guard.t27— alignment uniformity (one alignment across blocks, power-of-two, floor 16), Option → sentinel zero, is_power_of_two → halving loop, 12 tests, t27b pass natively, steward READY.padding_block_cipher_mode_uniformity_guard.t27— ciphertext uniformity (size 16, zero-block, entropy floor, hash+index dedup scans), entropy caller-computed (gen-rust does not yet lower @log — E0061, probed and documented), 12 tests, t27b pass natively.Lane total: 28 of the 36 targets delivered (#9613 merged; twenty-seven READY PRs waiting: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709, #9738, #9739, #9747, #9748, #9749, #9750, #9751, #9752).
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9752 (READY) and PR #9753 (CI running):
padding_block_cipher_mode_uniformity_guard.t27— ciphertext uniformity (size 16, zero-block, entropy floor caller-computed — gen-rust does not yet lower @log — hash+index dedup scans), 12 tests, t27b pass natively, steward READY.padding_ciphertext_length_class_balance_guard.t27— class balance (chi-squared ceiling 15.0 over f64 class counts; exact boundary fixture 2/8/11 measures exactly 15.0 and passes; PCLB-01 measures 60.0), 12 tests, t27b pass natively.Lane total: 29 of the 36 targets delivered — eight targets remain (#9613 merged; twenty-eight READY PRs waiting: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709, #9738, #9739, #9747, #9748, #9749, #9750, #9751, #9752, #9753).
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9753 (READY) and PR #9754 (CI running):
padding_ciphertext_length_class_balance_guard.t27— chi-squared ceiling over f64 class counts, exact boundary 15.0 fixture passes, 12 tests, t27b pass natively, steward READY.padding_ciphertext_length_consistency_guard.t27— same-class length agreement (BTreeMap → four scalar slots, zero as unseen marker), 12 tests, t27b pass natively.Lane total: 30 of the 36 targets delivered — six remain (#9613 merged; twenty-nine READY PRs waiting: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709, #9738, #9739, #9747, #9748, #9749, #9750, #9751, #9752, #9753, #9754).
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9754 (READY) and PR #9755 (CI running):
padding_ciphertext_length_consistency_guard.t27— same-class length agreement, BTreeMap → four scalar slots, 12 tests, t27b pass natively, steward READY.padding_key_derivation_uniqueness_guard.t27— per-op unique derived keys (label-length, key-len 32, zero-key, strictly-increasing index, key dedup), boundary 65536 accepted with LE index bytes out of the identity table, 12 tests, t27b pass natively.Lane total: 31 of the 36 targets delivered — five remain: padding_key_rotation_uniformity_guard, padding_class_downgrade_guard, welcome_path_secret_unmasking, then the two W5 targets (mac_truncation, safety_number) (#9613 merged; thirty READY PRs waiting: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709, #9738, #9739, #9747, #9748, #9749, #9750, #9751, #9752, #9753, #9754, #9755).
dmitrii-f-t27 commentedon Oct 16, 2026
Progress report for the tracker, own lane (Refs #8884):
Delivered in PR #9755 (READY) and PR #9756 (CI running):
padding_key_derivation_uniqueness_guard.t27— unique derived keys per padding op (label-length, key-len 32, zero-key, strictly-increasing index, key dedup), 12 tests, t27b pass natively, steward READY.padding_key_rotation_uniformity_guard.t27— uniform key rotation (interval 100..10000, non-decreasing with equal passing, key dedup), 12 tests, t27b pass natively.Lane total: 32 of the 36 targets delivered — four remain: padding_class_downgrade_guard, welcome_path_secret_unmasking, then W5 mac_truncation and safety_number (#9613 merged; thirty-one READY PRs waiting: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709, #9738, #9739, #9747, #9748, #9749, #9750, #9751, #9752, #9753, #9754, #9755, #9756).
dmitrii-f-t27 commentedon Oct 16, 2026
W2 LANE COMPLETE — all 34 W2 targets of the CR-CHAT-04 ring delivered (Refs #8884).
Final delivery — PR #9758 (READY):
specs/port/trios/crates/trios-chat/rings/CR-CHAT-04/src/welcome_path_secret_unmasking.t27(from .../welcome_path_secret_unmasking.rs, Wave-30 Lane B, RFC 9420 §12.4.3.2/§7.6) — the Welcome path-secret rules: secret length 32, group id match, epoch freshness, no secret shared across positions (Welcome-collapse), joiner's own leaf never sent (off-leaf unmasking), every required ancestor present; the missing node index rides the verdict. 12 tests (all 10 WPS originals + helpers + rule order), t27b pass natively, steward READY.Lane tally: 34 of the 34 W2 targets delivered. #9613 merged; thirty-three READY PRs waiting for the gHashTag merge (in order): #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709, #9738, #9739, #9747, #9748, #9749, #9750, #9751, #9752, #9753, #9754, #9755, #9756, #9757, #9758.
The two W5 targets in the tracker (mac_truncation, safety_number) remain for a follow-up wave. Every W2 PR carries its one-line ledger row; later merges need one-line rebases, which I take on request.
dmitrii-f-t27 commentedon Oct 17, 2026
Progress report for the tracker, own lane (Refs #8884):
W5 delivered — the ring tracker is now complete, all 36 of 36 targets.
mac_truncation.t27— the AEAD/MAC tag truncation defence: sixteen the only tag length, checked before any byte; the constant-time compare folds absolute byte differences over all sixteen positions; split_frame treats the trailer as its own domain. 11 tests, steward READY.safety_number.t27— the OOB identity verification: commutative digest selection by canonical key ordering (proven), twelve five-digit display groups (exact fixtures), constant-time compare; SNV-03/06 (SHA-256 collision resistance) stay with the caller's hash, named and not carried. 6 tests.Lane totals: 36 of 36 targets delivered (#9613 merged; thirty-five READY PRs waiting for the gHashTag merge: #9614, #9641, #9650, #9651, #9652, #9660, #9661, #9669, #9670, #9678, #9679, #9687, #9695, #9697, #9698, #9699, #9700, #9708, #9709, #9738, #9739, #9747, #9748, #9749, #9750, #9751, #9752, #9753, #9754, #9755, #9756, #9757, #9758, #9794, #9802). Every PR carries its one-line ledger row; later merges need one-line rebases, which I take on request.