Files
buzz/crates
Max Lampert 0cd6819673 sdk: validate persona d-tags and delete-coordinate owners
The public builders could return relay-rejected events: build_persona_event
took any d-tag verbatim (the relay enforces ^[a-z0-9][a-z0-9_-]{0,63}$ on
persona slugs), and the delete builders interpolated an unvalidated owner
pubkey into the a-tag coordinate (the relay hex-decodes it).

build_persona_event now rejects a d-tag that is not a fixed point of
normalize_d_tag — validate, never rewrite, so an existing coordinate can't
silently move. The delete builders delegate to build_delete_addressable,
which enforces a 64-hex lowercase-normalized owner and a non-empty d-tag.
Team event d-tags stay verbatim: Desktop publishes raw UUIDs and ids like
builtin-team:welcome there.
2026-08-20 22:02:44 -07:00
..