mirror of
https://github.com/layer-systems/website.git
synced 2026-09-13 14:14:07 +02:00
* fix: exclude replies from the Feed and Profile timelines Per NIP-10 a kind-1 event with an `e` tag is a reply, but the Feed and Profile timelines rendered every kind-1 event with no such check, so replies showed up indistinguishable from root posts. `isReply()` was already written for this in nostrUtils but never used anywhere. Fixes #20 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BYiUtZMQeA5RHggQw73wto * fix: don't treat mention-only e tags as replies Per review: isReply() flagged any e tag as a reply, including one marked "mention" — a citation, not a thread reply per NIP-10. That would have hidden quote-notes from the Feed/Profile timelines they belong in. Also fixed rootReference()'s docstring, which claimed to fall back to the *last* positional e tag when the code (correctly) uses the first. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BYiUtZMQeA5RHggQw73wto * fix: rootReference() no longer treats a mention as the root Follow-up to the isReply() fix: rootReference()'s positional fallback still matched any e tag regardless of marker, so an event with only a mention-marked e tag would incorrectly return the mentioned id as the thread root. The fallback now only considers unmarked e tags, per the deprecated positional NIP-10 scheme. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BYiUtZMQeA5RHggQw73wto --------- Co-authored-by: highperfocused <highperfocused@pm.me> Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>