Repository navigation
fix(security): authenticate gossip membership and compaction proofs - #239
Merged
Merged
Conversation
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.
Summary
Closes #236
Closes #237
Validation
Latest follow-up commit:
10997ad(raises the Rust test job timeout to 240 minutes after Ubuntu hit the previous 120-minute ceiling during WAL compaction tests).cargo test --no-default-features --test sqlite_substrate_s0_tests— 8 passed oncc5cc5d.cargo build --no-default-features --features "mobile ffi android-jni"— passed oncc5cc5d(one existingunused_mutwarning insrc/jni.rs).cargo fmt --all -- --checkandgit diff --check— passed oncc5cc5d.5e8dda40-dc22-4c15-9914-bfd64bec84b5coverededb06f32189193d0f636707acd528b69e0dbb147→908ffe3996e643bed4fffbf6208710bcb781771b. It found no validated reportable vulnerabilities; semantic coverage is partial because a finite-CI-timeout candidate was deferred pending repository policy/quota evidence. The latestcc5cc5dchanges tests only..brain/rca/RCA--projection-snapshot-recovery-2026-10-17.md.Exact-head CI status
10997ad843faafb58d3e65e498365813d830ebc7; all 10 exact-head GitHub Actions workflows completed successfully, including Ubuntu/Windows/macOS Rust tests and mobile host build/tests.cc5cc5d1b4a0d315832da0d78eece940b45e10a3, all other workflows and Rust jobs passed; the Ubuntu Rust job was cancelled at its 120-minute timeout whilewal_compaction_testswas still running, with no assertion failure reported. Commit10997adraises that job's timeout to 240 minutes.908ffe3, macOS CI showed that a test changed the projection directly without journaling the change and then expected that cache-only value to survive recovery. The test is now split: equal-clock event writes check peer-ID LWW under both arrival orders, and a schema-6 unjournaled edit test verifies that WAL state wins recovery.283e52e6736daaa02c837f32d62b0893b78474e2, macOS CI showed that the migration test inserted a receipt directly into an unverified projection without a journal transaction and expected it to survive. It now verifies that recovery discards the cache-only receipt and creates the current projection schema.90e2f24failed the mobile-feature Rust suite because a rejected projection snapshot left the edge table empty. Commit275b8c0fixes projection recovery, including mixed-component rejection, skipped snapshots, and legacy snapshots without a projection digest.275b8c0found a metadata migration test that claimed to be schema 4 after generating schema-6 journal events. The test fixture now starts from schema 4; it no longer downgrades onlystate.json.90e2f24raised the mobile-feature host-test timeout to 240 minutes. Ubuntu/mobile-host skip onlyhnsw_capacity_tests::index_grows_past_initial_floor, which repeatedly caused Linux runner shutdowns without assertion failures; Windows and macOS retain the test.8f18eccpassed 47 checks with 5 skipped, including Ubuntu and Windows Rust suites and the macOS suite. That is historical evidence, not a result for the current head.Scope
Security implementation, protocol/specification documentation, regression tests, recovery RCA, and the CI timeout needed to finish the mobile-feature test suite. No reproduction steps or proof of concept are included.