mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-10-29 23:27:44 +00:00
Call sites that read an event's p/e/a/q tags through generic accessors now use the named accessors added in the previous commit: - EventCache: zap receipt/request and live-activity routing via zappedAddresses(), nutzaps via zappedEventId(), reactions via originalAddresses(), chat replies via ChatEvent.replyTargetIds(). - Cashu pending tokens (destroyedReferences), Marmot removals (TagArray.removedMessageIds), Buzz on-behalf-of authors (TagArray.buzzOnBehalfOf), batch unfollow (ContactListEvent.unfollowUsers), NIP-17 note mentions (mentionKeys). - Notifications: reaction/repost-to-me (originalAuthor / originalAuthorKeys), Buzz mentions and thread replies (mentionKeys, StreamMessageV2Event.mentions), mention checks in the notification summary (mentionKeys). - UI: emoji-pack membership (EmojiListEvent.hasEmojiPack), user status links (UserStatusEvent.referenced*), note/poll mention badges (mentionKeys), note composer draft loading (threadReferenceIds, mentionKeys), DVM job request (jobRequestId), desktop reaction and zap address lookups. Behavior is unchanged except that malformed ids and addresses (not 64-hex, not kind:pubkey:d — including an naddr1 string inside an `a` tag) no longer resolve. Left generic, with the reason: Cashu wallet nutzap check and DVM customer/response filters (the code matches ANY tag, the accessor reads the single one the NIP allows), Account's two calls on untyped Event receivers, the desktop NIP-17 template hints (unsigned template, no accessor), and the PollEvent draft's e/a read (PollEvent defines no e/a relationship). Tests: quartz jvmTest (6982), commons jvmTest (3234), commonsUI jvmTest (175), desktopApp test (371) green. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UrXSz9uRnNLVru3AvD3wSa