Skip to content

Verify ACP relay events before prompt routing - #7010

Open
jmecom wants to merge 1 commit into
mainfrom
jm/verify-acp-relay-events
Open

Verify ACP relay events before prompt routing#7010
jmecom wants to merge 1 commit into
mainfrom
jm/verify-acp-relay-events

Conversation

@jmecom

@jmecom jmecom commented Aug 28, 2026

Copy link
Copy Markdown
Collaborator

What changed

Verify every Nostr EVENT received by buzz-acp immediately after deserialization. Events with an invalid NIP-01 ID or Schnorr signature are dropped before subscription routing, deduplication, replay-watermark updates, membership handling, or either harness queue.

Safety

Signature verification runs on the blocking pool so cryptographic work does not block the relay task. A verification failure drops only that event and keeps the connection available for subsequent valid traffic. The existing observer-control verification remains as defense in depth.

Regression tests cover valid delivery; changed content, ID, signature, pubkey, tags, and timestamp; a forged owner shutdown command with a recomputed ID; forged membership notifications; and forged observer-control events.

Testing

cargo test -p buzz-acp

cargo clippy -p buzz-acp --all-targets -- -D warnings

just ci

Signed-off-by: Jordan Mecom <jm@squareup.com>
@github-actions

Copy link
Copy Markdown

🔐 Codex Security Review

Status: review required for the current range.

The current range is 2c99ee7af5a20d239e95ec5368407887449795c9...0a05ea3e86a5cde4ffd56ee08a4f6a95ec40bc59.
A new review must complete for this exact range. When manual authorization
is required, a Block organization member must comment exactly
@buzz-security-review 0a05ea3e86a5cde4ffd56ee08a4f6a95ec40bc59 to authorize a new review.
Any previous review applies only to its recorded range.

@jmecom
jmecom marked this pull request as ready for review August 28, 2026 23:11
@jmecom
jmecom requested a review from a team as a code owner August 28, 2026 23:11
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.

1 participant