Stellar stealth-announcer #41
Conversation
Add security audit report and reproducer tests for stellar/stealth-announcer
Stellar: add announcer v2 topics with view-tag bucket and metadata-kind
|
@gloskull Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
|
The v2 implementation is exactly what the design doc in #26 prescribed: Blocker is conflicts. Your earlier audit PR #34 landed first and the audit doc and git fetch origin
git rebase origin/develop
# resolve in stellar/stealth-announcer/tests/audit.rs and audits/2026-05-gpt-5-3-codex.md
# keep #34's v1 audit content AND your new v2 entries side by side
git push --force-with-leaseAfter the rebase, the audit doc should have both: the four v1 findings (WA-ANN-01 through WA-ANN-04 documenting the historical contract) and a new section documenting the v2 redesign. Thanks @gloskull, this is a meaningful piece of the rollout. |
fix(stellar): reconcile announcer v2 audit coverage
Description of Changes
|
|
@truthixify please review and merge |
|
Verified locally that the merge keeps #46's reproducible build pipeline and #13's property tests intact. The v2 announcer schema ( |
Motivation
metadata_kindconvention to future-proof metadata encoding evolution.scheme_id = 2for v2 and documenting the v1→v2 migration expectations in contract comments.Description
STELLAR_V2_SCHEME_ID = 2,METADATA_KIND_VIEW_TAG = 1, andview_tag_bucket(metadata) -> metadata[0] as u32tostellar/stealth-announcer/src/lib.rs.announceto assertscheme_id == 2, publish topics as("announce", scheme_id, view_tag_bucket, metadata_kind), and publish data as(stealth_address, ephemeral_pub_key, metadata).Testing
cargo fmt --allsuccessfully.git diff --checkwith no issues reported.cargo test -p stealth-announcerand all tests passed (unit + audit tests for the crate).Closes #24