Skip to content

Batch sender fixed2 - #181

Merged
truthixify merged 2 commits into
wraith-protocol:developfrom
stpatrickghost:Batch-sender-FIXED2
Aug 31, 2026
Merged

Batch sender fixed2#181
truthixify merged 2 commits into
wraith-protocol:developfrom
stpatrickghost:Batch-sender-FIXED2

Conversation

@stpatrickghost

Copy link
Copy Markdown
Contributor

Summary

Batch-sender was still emitting a single-topic ("ANNOUNCE",) event, so indexers could not apply server-side topic-3 view-tag filtering to anything sent through it.

This change routes each batch-sender transfer through the announcer contract, the same pattern stealth-splitter already uses. Announcements now use the v2 4-topic layout:

topics: ("announce", scheme_id, view_tag_bucket, metadata_kind)
data: (stealth_address, ephemeral_pub_key, metadata)

view_tag_bucket = metadata[0] as u32.

Issue #62 is an audit-doc correction only. Splitter fund_split already calls announcer_client::announce. No splitter code change.

Changes

  • stealth-batch-sender batch_send now invokes stealth-announcer per transfer
  • Transfer includes metadata; ephemeral_pub_key must be exactly 32 bytes
  • Unit + snapshot tests assert the 4-topic v2 layout
  • New integration test topic_filter.rs checks topic-3 filtering across announcer, splitter, and batch-sender
  • EVENT_INDEXING_AUDIT.md closes Per-network deployment config validation #63 and corrects the stale Independent third-party audit preparation pack #62 splitter verdict
  • Reference indexer processor.ts uses one announcement decoder for all three sources (no batch-sender-specific single-topic path)

Acceptance

Test plan

  • cargo test -p stealth-batch-sender
  • cargo test -p integration-tests --test topic_filter
  • cargo test -p integration-tests --test chaos
  • cargo fmt --all --check

Closes #159

@stpatrickghost

Copy link
Copy Markdown
Contributor Author

@truthixify, please review and merge.

@truthixify
truthixify merged commit 529ba39 into wraith-protocol:develop Aug 31, 2026
13 checks passed
@truthixify

Copy link
Copy Markdown
Contributor

Merged @stpatrickghost. Opening a fresh branch was the right call once #175 rewrote batch-sender underneath the old one; untangling that rebase would have cost more than starting clean. Thanks for sticking with it through three rounds.

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.

Batch-sender: adopt v2 ANNOUNCE topic layout (closes Issue #63; audit-doc correction for #62) Per-network deployment config validation

2 participants