You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Context.stellar/EVENT_INDEXING_AUDIT.md still flags Issues #62 (splitter) and #63 (batch-sender) as emitting single-topic ("ANNOUNCE",) events. The splitter verdict is stale: stellar/stealth-splitter/src/lib.rs line 292 (fund_split) already routes announcements through the announcer contract via the announcer_client::announce client imported at lines 78-103, so splitter output goes out with the full 4-topic v2 layout ("announce", scheme_id, view_tag_bucket, metadata_kind). Batch-sender genuinely lags: stellar/stealth-batch-sender/src/lib.rs lines 80-88 still emit (symbol_short!("ANNOUNCE"),) inline, breaking server-side topic-3 view-tag filtering for anything sent through it and forcing indexers to full-scan its output.
Scope.
Change batch-sender's per-transfer emission to route through the announcer contract (same pattern splitter uses via announcer_client::announce), or emit inline with the identical 4-topic layout including view_tag_bucket = metadata[0] as u32.
Add an integration test verifying topic-3 filter returns the correct subset across all three sources (announcer, splitter, batch-sender).
Tier: M (2-4 days) | Type: bug + feature
Context.
stellar/EVENT_INDEXING_AUDIT.mdstill flags Issues #62 (splitter) and #63 (batch-sender) as emitting single-topic("ANNOUNCE",)events. The splitter verdict is stale:stellar/stealth-splitter/src/lib.rsline 292 (fund_split) already routes announcements through the announcer contract via theannouncer_client::announceclient imported at lines 78-103, so splitter output goes out with the full 4-topic v2 layout("announce", scheme_id, view_tag_bucket, metadata_kind). Batch-sender genuinely lags:stellar/stealth-batch-sender/src/lib.rslines 80-88 still emit(symbol_short!("ANNOUNCE"),)inline, breaking server-side topic-3 view-tag filtering for anything sent through it and forcing indexers to full-scan its output.Scope.
announcer_client::announce), or emit inline with the identical 4-topic layout includingview_tag_bucket = metadata[0] as u32.EVENT_INDEXING_AUDIT.mdto mark Issue Per-network deployment config validation #63 resolved and correct the splitter verdict for Issue Independent third-party audit preparation pack #62 (audit-doc-only, no splitter code change needed).stellar/examples/indexer/src/processor.tsto remove any batch-sender-specific handling that only existed because of the single-topic emission.Acceptance.
stellar/integration-tests/tests/verifies topic-3 filter returns only matching view-tag entries across all three sourcesEVENT_INDEXING_AUDIT.mdcloses Per-network deployment config validation #63 with the merging PR link and closes Independent third-party audit preparation pack #62 as an audit-doc correction (splitter already routes through announcer)Files.
stellar/stealth-batch-sender/src/lib.rs,stellar/integration-tests/tests/topic_filter.rs(new),stellar/EVENT_INDEXING_AUDIT.md,stellar/examples/indexer/src/processor.ts.