Threads sometimes don't render in correct order #386
Labels
No Label
1000k
100k
10k
200k
20k
500k
50k
5k
75k
backend
blocked:design
bug
dependencies
documentation
duplicate
enhancement
good first issue
help wanted
invalid
P1
P2
P3
question
scope:intl
scope:nip
scope:query_tracing
scope:ux
wontfix
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: Kieran/snort#386
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Describe the bug
In this screenshot, the selected note is a response to my note below it, but it's being shown as a response to the note at the top.
The order of the tags in the debug json look correct
To Reproduce
Steps to reproduce the behavior:
This issue is very consistently experienced here, too. All the time. Bounty anybody?
So I think the issue is not with Snort actually.
https://snort.social/e/note1xm4je4emz8jklqra5h5zean79zqan76mtakwpg60wvh2yk69dsmswvxdvs
What appears to be happening is that some clients still work with positional e-tags but they copy over all e-tags of the replied to note with the markers.
["e",id1,,"reply"]
["e",id2]
, tag["e",id1,,"reply"]
Clients that ignore markers make sense of it correctly so it appears as a bug in Snort while it's actually a bug in these other clients. Or is it a bug in how we upgraded the nip?
Thanks a lot for looking into this, our thread logic looks for ANY marker (root/reply) to determine which thread kind it is, maybe we should look for root tag if reply tag exists to switch to marked mode?
Snort is not responsible for fixing buggy other clients. They also copy the "root" marker but promised to fix that copying with the next release.
That said, Snort is definitely doing something weird on top of this other client issue.
I just replied to a Note and my reply snug in between the replied-to Note and another old reply to that same Note.
note18zfehjtph8cesh0d42rdmp3y5mluydjcw4v7r9yeyy2tsh4sqm9ssf6s93
Look at these timestamps.
I think its correct no? New replies are always at top in the chain, you replied to Byrdman and Jeff also replied to Byrdman but earlier so its at the bottom?
No. The line running through our avatars implies that Jeff replied to me. In fact I assume it would look just the same if that were the case. Other clients have such a line but shift every level of reply a bit to the right. Amethyst for example.
There is clearly a bug here. Check out
https://snort.social/e/note1gd9dffjxc2xeraxmstadfxpxzyh5up27fjg4cl3ntvja73y3lyeqlyjpu2
I replied to Derek and he replied to me, yet Snort shows it as a reply to self.
The top three events as in the screenshot are:
According to https://github.com/nostr-protocol/nips/blob/master/10.md the last e-tag defines what the reply was to. Snort takes the second e-tag?
https://git.v0l.io/Kieran/snort/src/branch/main/packages/app/src/System/EventExt.ts#L92 is buggy.
Its possible that some clients were creating unmarked threads with root/reply tags first and thats why we did it like this
for n=2, it's right to do it that way but in all other cases it is wrong. Please fix it.