Skip to content

[consensus/simplex] Supply selected commitments to applications - #4875

Draft
patrick-ogrady wants to merge 1 commit into
revamped-marshal-block-rangesfrom
revamped-marshal-selected-commitments
Draft

patrick-ogrady wants to merge 1 commit into
revamped-marshal-block-rangesfrom
revamped-marshal-selected-commitments

Conversation

@patrick-ogrady

@patrick-ogrady patrick-ogrady commented Sep 21, 2026

Copy link
Copy Markdown
Contributor

Simplex now supplies shared selected commitments to proposal, verification and certification requests. It validates the selected path, collapses consecutive reproposals, and repairs missing certified ancestry before consuming a request. Certification receives its own ancestry even when there was no prior local verification.

All Automaton implementations and existing test callers accept the expanded interface. Marshal's adapters begin consuming the new parameter in the application migration layer. The Simplex implementation and its regression tests include the follow-up corrections from the original PR.

The existing Marshal tests need ancestry arguments at this boundary. Of their 130 migrated calls, 77 use the final argument expression and 53 use valid selected-chain expressions until the corresponding legacy tests are rewritten or removed in the exact-acquisition layer. This adds no temporary production helper or test.

Stack (2/7): #4874 -> #4875 -> #4876 -> #4878 -> #4879 -> #4880 -> #4722.

Extracted from #4722 at 4735c16d0; each PR is compared with the preceding branch. Follow-up corrections are folded into the layer that owns the mechanism.

Validation: All 1,417 default-profile Consensus/Glue tests and formatting passed on current main (365 tests skipped).

Changed lines Added Deleted
Production 225 35
Tests / test infrastructure 1,595 183

Counts are gross added/deleted lines against this PR's base, including comments and blank lines. Test infrastructure includes test/mock/benchmark files and inline test-only items; remaining lines are production.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Sep 21, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
✅ Deployment successful!
View logs
commonware-mcp 13343b2 Sep 21 2026, 05:59 AM

@patrick-ogrady
patrick-ogrady added this pull request to stack #4877 September 21, 2026 04:55
@github-actions

github-actions Bot commented Sep 21, 2026

Copy link
Copy Markdown

Benchmark results

Regressions: 0.

✅ `qmdb::merkleize/v=any::unordered::fixed::mmr k=10000 ch=false s=true cc=true` (2/2 gates passed)
Field Value
Package commonware-storage
Benchmark target qmdb_gungraun
Variant qmdb::merkleize/v=any::unordered::fixed::mmr k=10000 ch=false s=true cc=true
Filter *::bench_merkleize::any_unordered_fixed_mmr
Baseline suite commonware-storage
Gates EstimatedCycles should decrease; tolerance 10.00%; blob_reads should decrease; tolerance 10.00%
Cargo flags --features test-traits
Metric Baseline Current Delta Gate
Ir 13,417,110 13,395,394 -0.16% -
L1hits 17,209,109 17,187,000 -0.13% -
LLhits 113,231 104,140 -8.03% -
RamHits 5,038 4,985 -1.05% -
TotalRW 17,327,378 17,296,125 -0.18% -
EstimatedCycles 17,951,594 17,882,175 -0.39% EstimatedCycles should decrease; tolerance 10.00%
blob_reads 158 158 +0.00% blob_reads should decrease; tolerance 10.00%
✅ `qmdb::merkleize/v=current::ordered::fixed::mmb chunk=256 k=10000 ch=false s=true cc=true` (2/2 gates passed)
Field Value
Package commonware-storage
Benchmark target qmdb_gungraun
Variant qmdb::merkleize/v=current::ordered::fixed::mmb chunk=256 k=10000 ch=false s=true cc=true
Filter *::bench_merkleize::current_ordered_fixed_mmb_chunk_256
Baseline suite commonware-storage
Gates EstimatedCycles should decrease; tolerance 10.00%; blob_reads should decrease; tolerance 10.00%
Cargo flags --features test-traits
Metric Baseline Current Delta Gate
Ir 15,721,105 15,701,917 -0.12% -
L1hits 20,739,147 20,659,713 -0.38% -
LLhits 152,842 139,558 -8.69% -
RamHits 17,875 18,316 +2.47% -
TotalRW 20,909,864 20,817,587 -0.44% -
EstimatedCycles 22,128,982 21,998,563 -0.59% EstimatedCycles should decrease; tolerance 10.00%
blob_reads 235 235 +0.00% blob_reads should decrease; tolerance 10.00%

Baseline commit(s): 90a8b32888b1

@patrick-ogrady
patrick-ogrady force-pushed the revamped-marshal-selected-commitments branch from 50b0650 to 13343b2 Compare September 21, 2026 05:58
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Sep 21, 2026

Copy link
Copy Markdown

Deploying monorepo with  Cloudflare Pages  Cloudflare Pages

Latest commit: 13343b2
Status: ✅  Deploy successful!
Preview URL: https://d92e0071.monorepo-eu0.pages.dev
Branch Preview URL: https://revamped-marshal-selected-co.monorepo-eu0.pages.dev

View logs

@codecov

codecov Bot commented Sep 21, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 97.83930% with 32 lines in your changes missing coverage. Please review.
✅ Project coverage is 95.77%. Comparing base (3f6592b) to head (13343b2).

Files with missing lines Patch % Lines
consensus/src/simplex/actors/voter/state.rs 97.45% 5 Missing and 11 partials ⚠️
consensus/src/marshal/standard/mod.rs 95.97% 6 Missing ⚠️
consensus/src/simplex/actors/voter/actor.rs 95.32% 4 Missing and 1 partial ⚠️
consensus/src/simplex/actors/voter/mod.rs 96.15% 2 Missing and 2 partials ⚠️
consensus/src/aggregation/mocks/application.rs 83.33% 1 Missing ⚠️
@@                       Coverage Diff                        @@
##           revamped-marshal-block-ranges    #4875     +/-   ##
================================================================
  Coverage                          95.77%   95.77%             
================================================================
  Files                                639      639             
  Lines                             299331   300623   +1292     
  Branches                            7369     7401     +32     
================================================================
+ Hits                              286680   287935   +1255     
- Misses                             10297    10315     +18     
- Partials                            2354     2373     +19     
Files with missing lines Coverage Δ
consensus/src/aggregation/engine.rs 81.46% <100.00%> (ø)
consensus/src/lib.rs 100.00% <100.00%> (ø)
consensus/src/marshal/coding/marshaled.rs 85.93% <100.00%> (+0.26%) ⬆️
consensus/src/marshal/coding/mod.rs 97.75% <100.00%> (+0.17%) ⬆️
consensus/src/marshal/standard/deferred.rs 97.44% <100.00%> (+0.15%) ⬆️
consensus/src/marshal/standard/inline.rs 93.84% <100.00%> (+0.27%) ⬆️
consensus/src/simplex/mocks/application.rs 93.41% <100.00%> (+0.40%) ⬆️
consensus/src/aggregation/mocks/application.rs 67.56% <83.33%> (+1.94%) ⬆️
consensus/src/simplex/actors/voter/mod.rs 92.07% <96.15%> (+0.02%) ⬆️
consensus/src/simplex/actors/voter/actor.rs 97.64% <95.32%> (-0.36%) ⬇️
... and 2 more

... and 12 files with indirect coverage changes


Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3f6592b...13343b2. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

This branch has not been deployed

No deployments
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