Skip to content

feat(peer): converge Mesh reachability leases - #4568

Open
M4n5ter wants to merge 13 commits into
feat/peer-relay-anchor-recoveryfrom
feat/peer-mesh-reachability-convergence
Open

feat(peer): converge Mesh reachability leases#4568
M4n5ter wants to merge 13 commits into
feat/peer-relay-anchor-recoveryfrom
feat/peer-mesh-reachability-convergence

Conversation

@M4n5ter

@M4n5ter M4n5ter commented Sep 2, 2026

Copy link
Copy Markdown
Member

Summary

  • separate Mesh membership presentation from generic, peer-signed reachability leases
  • carry signed authority reachability in invitations and exchange independently versioned leases and member advertisements through bounded symmetric reconciliation
  • retain bounded locator history for active members while projecting honest connecting, reachable, reconnecting, and needs_repair states
  • serialize native transit-policy application so concurrent evidence updates cannot let an older snapshot win
  • intentionally replace the unpublished Mesh wire and store shape instead of maintaining a dual protocol

Refs #4554

Verification

Verified on the complete stacked head after rebasing from main at eacfb46aa7ec93273bf468335f4270bba62d35a5:

  • npm run typecheck

  • npm run lint

  • npm run format:check

  • npm run rebuild

  • npm run test:dist - all workspace tests passed

  • npm run check:renderer-architecture - 71 passed

  • npm run check:release - 192 passed

  • git diff --check

  • cargo fmt --manifest-path native/runtime-host-peer/Cargo.toml -- --check

  • cargo clippy --locked --all-targets --manifest-path native/runtime-host-peer/Cargo.toml -- -D warnings

  • cargo test --locked --manifest-path native/runtime-host-peer/Cargo.toml - 28 passed

  • immutable installed-CLI tarball smoke

  • focused Peer Mesh and reachability suites - 27 passed, including 23 Peer Mesh cases

Review focus

The convergence protocol is bounded: one rotating non-authority peer per active Mesh per pass, two evidence records per response page, one retained lease per peer, and a 24-hour recovery horizon. Receipts and completed sweeps are retained only for active remote roster members.

AI use

  • No generative tool made a substantive contribution
  • Generative tooling made a substantive contribution

Tool(s) and scope: Codex implemented and verified the change under maintainer direction.

Checklist

  • Tests cover the change and fail without it
  • Lint, format, typecheck and the affected suites pass locally

Does this PR entail a change in behavior?

  • Yes - described under Summary above
  • No

@M4n5ter
M4n5ter force-pushed the feat/peer-mesh-reachability-convergence branch from 484fe6e to 3627604 Compare September 2, 2026 16:27
@M4n5ter
M4n5ter marked this pull request as ready for review September 2, 2026 16:27
@github-actions github-actions Bot added the effort/XL Over 1000 readable lines label Sep 2, 2026
@M4n5ter
M4n5ter force-pushed the feat/peer-mesh-reachability-convergence branch from 3627604 to 19edc5d Compare September 2, 2026 17:29
@M4n5ter
M4n5ter force-pushed the feat/peer-mesh-reachability-convergence branch from 19edc5d to 549a5bc Compare September 2, 2026 18:16
@M4n5ter
M4n5ter force-pushed the feat/peer-mesh-reachability-convergence branch from 549a5bc to c372473 Compare September 2, 2026 18:47
@M4n5ter
M4n5ter force-pushed the feat/peer-mesh-reachability-convergence branch from c372473 to 9277728 Compare September 2, 2026 19:35
@M4n5ter
M4n5ter force-pushed the feat/peer-mesh-reachability-convergence branch from 9277728 to d2241bc Compare September 2, 2026 20:01
@M4n5ter
M4n5ter force-pushed the feat/peer-mesh-reachability-convergence branch from d2241bc to a2d2042 Compare September 2, 2026 20:49
@M4n5ter
M4n5ter force-pushed the feat/peer-mesh-reachability-convergence branch from f63c1c7 to 30ab6ff Compare September 2, 2026 21:53
Generated-by: Codex (gpt-5.6-sol)
Generated-by: Codex (gpt-5.6-sol)
Generated-by: Codex (gpt-5.6-sol)
Generated-by: Codex (gpt-5.6-sol)
Generated-by: Codex (gpt-5.6-sol)
Generated-by: Codex (gpt-5.6-sol)
Generated-by: Codex (gpt-5.6-sol)
Generated-by: Codex (gpt-5.6-sol)
Generated-by: Codex (gpt-5.6-sol)
Generated-by: Codex (gpt-5.6-sol)
@M4n5ter
M4n5ter force-pushed the feat/peer-mesh-reachability-convergence branch from 7d2da11 to a8f119a Compare September 2, 2026 23:56

@jackwener jackwener left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved at exact head a8f119a9ceb293763163d6a70f044db80f6f69a9 at the explicit direction of M4n5ter. No technical review was performed as part of this action; M4n5ter requested the approval and accepts responsibility for subsequent handling.


Review notice: This approval was submitted by an automated review agent operated by WAWQAQ and is published at the direction of M4n5ter, who requested this action and is the human accountable for it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

effort/XL Over 1000 readable lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants