Skip to content

feat(peer): recover accepted relay anchors - #4563

Open
M4n5ter wants to merge 2 commits into
refactor/peer-reachability-domainfrom
feat/peer-relay-anchor-recovery
Open

feat(peer): recover accepted relay anchors#4563
M4n5ter wants to merge 2 commits into
refactor/peer-reachability-domainfrom
feat/peer-relay-anchor-recovery

Conversation

@M4n5ter

@M4n5ter M4n5ter commented Sep 2, 2026

Copy link
Copy Markdown
Member

Summary

  • persist only identity-checked Circuit Relay v2 reservations that the relay actually accepted
  • reacquire those relay anchors after endpoint restart with bounded retries, demoting an anchor only after repeated failure
  • keep advertised coordination routes synchronized with the currently accepted reservation set
  • preserve manual relay configuration while making recovered public relay availability survive process churn

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

Review focus

A discovered HOP-capable peer is not an anchor. Only a successful Relay v2 reservation becomes advertised recovery evidence, and reference ownership is released when that evidence is replaced.

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

@github-actions github-actions Bot added the effort/L Under 1000 readable lines label Sep 2, 2026
@M4n5ter
M4n5ter force-pushed the feat/peer-relay-anchor-recovery branch from f98e1df to c1a25f7 Compare September 2, 2026 16:27
@M4n5ter
M4n5ter marked this pull request as ready for review September 2, 2026 16:27
@M4n5ter
M4n5ter force-pushed the feat/peer-relay-anchor-recovery branch 2 times, most recently from d7f7267 to 073f16a Compare September 2, 2026 18:16
@M4n5ter
M4n5ter force-pushed the feat/peer-relay-anchor-recovery branch 4 times, most recently from 85c5c60 to e18d266 Compare September 2, 2026 20:49
@M4n5ter
M4n5ter force-pushed the feat/peer-relay-anchor-recovery branch from e18d266 to acda82d Compare September 2, 2026 21:53
Generated-by: Codex (gpt-5.6-sol)
Generated-by: Codex (gpt-5.6-sol)
@M4n5ter
M4n5ter force-pushed the feat/peer-relay-anchor-recovery branch from acda82d to eea3454 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 eea3454a35a65ab8c5b6fedd532aefb6d91cf284 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/L Under 1000 readable lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants