Skip to content

feat(client): apply witnessed quote policy locally#119

Merged
jacderida merged 3 commits into
rc-2026.6.2from
feat/witnessed-transcript-policy
Jun 15, 2026
Merged

feat(client): apply witnessed quote policy locally#119
jacderida merged 3 commits into
rc-2026.6.2from
feat/witnessed-transcript-policy

Conversation

@mickvandijke

Copy link
Copy Markdown
Contributor

Summary

  • consume witnessed close-group transcripts from the transport layer instead of precomputed core consensus
  • compute vote counts, quorum eligibility, diagnostics, and fallback quote candidates in ant-client
  • request quotes from all quorum-recognised candidates, then pay only the closest successful CLOSE_GROUP_SIZE responders
  • update ant-protocol and ant-node pins to the matching PR branches; no local path imports or patches are included

SemVer

Feature change in ant-client behavior. No public ant-client API break expected.

Dependency PRs

Merge order:

  1. feat(dht)!: return witnessed close-group transcripts saorsa-core#133
  2. feat(transport)!: expose witnessed transcript types ant-protocol#14
  3. chore(deps): track witnessed transcript dependency stack ant-node#145
  4. this PR

Verification

  • cargo test -p ant-core witnessed_quote_peers
  • cargo fmt --all -- --check
  • cargo clippy --all-targets --all-features -- -D warnings
  • cargo tree -i ant-protocol --all-features
  • cargo tree -i ant-node --all-features
  • cargo tree -i saorsa-core --all-features

Consume the witnessed close-group transcript from saorsa-core and compute quorum, vote counts, and fallback quote candidates in ant-client. Quote collection now keeps all quorum-recognised candidates available for reachability fallback, then pays the closest successful close group.

SemVer: feature change; no public ant-client API break expected.
Select the closest witnessed SNP quote set whose paid median issuer is recognised by a close-group majority of the selected peers. This keeps fallback quote candidates available without paying a median issuer that the PUT majority may reject.

SemVer: bug fix; no public ant-client API break expected.
Keep proof quote order stable while ordering PUT targets so the initial store wave favours peers that voted for the paid median issuer. Wire the in-process E2E protocol through AntProtocol::attach_p2p_node and use ant-node's test-only paid close-group override for the local client/storage-node topology.

SemVer: bug fix; no public ant-client API break expected.
@jacderida
jacderida merged commit bba96d5 into rc-2026.6.2 Jun 15, 2026
12 checks passed
jacderida added a commit that referenced this pull request Jun 15, 2026
Re-point ant-protocol + ant-node (runtime optional + test-utils dev-dep)
from feat/witnessed-transcript-policy -> canonical rc-2026.6.2, refresh lock
to saorsa-core 0.26.0-rc.1 / ant-protocol 2.2.0-rc.1 / ant-node 0.12.1-rc.7.
Includes #119 (apply witnessed quote policy locally).
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.

2 participants