"View Thread" often doesn't work properly with relay's feed #991

Open
opened 2025-04-09 06:51:48 +12:00 by phormio · 2 comments
phormio commented 2025-04-09 06:51:48 +12:00 (Migrated from github.com)

How to reproduce

  1. In the sidebar, click on "Active Relays".

  2. Select a relay that you know has high traffic, e.g. relay.primal.net. Click on this relay.

  3. Click on "View Feed".

  4. Wait until you see a message that is a reply. Click on the "View Thread" icon for this message.

    What happens then is variable. The following are distinct possibilities that I have seen today with Gossip 0.15.0-unstable-c7e92933:

    1. The thread appears. It doesn't contain the original message but does contain its parent.
    2. The thread appears and does contain the original message. In the case that I remember, the author of the original message happened to be in one of my person lists.
    3. "CLIMBING THREAD" takes so long that I give up.
## How to reproduce 1. In the sidebar, click on "Active Relays". 1. Select a relay that you know has high traffic, e.g. relay.primal.net. Click on this relay. 1. Click on "View Feed". 1. Wait until you see a message that is a reply. Click on the "View Thread" icon for this message. What happens then is variable. The following are distinct possibilities that I have seen today with Gossip 0.15.0-unstable-c7e92933: 1. The thread appears. It doesn't contain the original message but does contain its parent. 1. The thread appears and does contain the original message. In the case that I remember, the author of the original message happened to be in one of my person lists. 1. "CLIMBING THREAD" takes so long that I give up.
mikedilger commented 2025-04-12 07:58:12 +12:00 (Migrated from github.com)

In these cases, please take note of the nevent and the relay you are viewing.

Once you click through into the thread view, gossip isn't constrained by that relay scope anymore. If the data allows for it then gossip should be able to load the thread. Otherwise it's a bug. To fix the bug I need to see the data and trace through what gossip is doing. I have fixed a handful of situations in the past similar to this, and I'm amazed how now matter how many I fix there crop up even more. At this point, it is slightly more likely that the nostr data is insufficient to build the thread.

In these cases, please take note of the nevent and the relay you are viewing. Once you click through into the thread view, gossip isn't constrained by that relay scope anymore. If the data allows for it then gossip should be able to load the thread. Otherwise it's a bug. To fix the bug I need to see the data and trace through what gossip is doing. I have fixed a handful of situations in the past similar to this, and I'm amazed how now matter how many I fix there crop up even more. At this point, it is slightly more likely that the nostr data is insufficient to build the thread.
phormio commented 2025-04-14 07:46:01 +12:00 (Migrated from github.com)

At this point, it is slightly more likely that the nostr data is insufficient to build the thread.

You may well be right about that. I tried to find suitable events, but many of the events that produce the 4(i) behavior from my first comment appear to be corrupt.

However, I have found 2 events that may not be corrupt (I found them both on relay.primal.net)

Event 1
{
  "id": "02aec17f8616b7dd69c192f39863b535c356c5a9912f20859d4ee597c9e8d052",
  "pubkey": "296842eaaed9be5ae0668da09fe48aac0521c4af859ad547d93145e5ac34c17e",
  "created_at": 1744571996,
  "kind": 1,
  "sig": "b9faae5b1dea52eb0376620feb7da2e73f38eef7bc5bc1e83bf227b9f54127441e58c45319edac33c729c05850dcd4a52f91e45805bba8d0cb4868597b61df37",
  "content": "happy birthday nostr:npub17nd4yu9anyd3004pumgrtazaacujjxwzj36thtqsxskjy0r5urgqf6950x !! 🥳",
  "tags": [
    [
      "e",
      "ba5bf912658eaa17918dc4cb90134a900c4058661f7d6c1715ea090a319deedd",
      "",
      "root"
    ],
    [
      "p",
      "f4db5270bd991b17bea1e6d035f45dee392919c29474bbac10342d223c74e0d0"
    ],
    [
      "p",
      "590e15b38be0560309d02cf9dd203cb2d61d87272dd708af3d5a10526f29feb9"
    ],
    [
      "p",
      "f4db5270bd991b17bea1e6d035f45dee392919c29474bbac10342d223c74e0d0"
    ]
  ]
}
Event 2
{
  "id": "c4ad12a9c8d604309dae5ca3c2c64d6ecbe1f84f60cb543fa30c50f97a220d1f",
  "pubkey": "624d01ef570a3730afa1ebedc3ed95d57259ac5f37a9f0eac9c2a0d2f122bf4a",
  "created_at": 1744572358,
  "kind": 1,
  "sig": "33e0bfbe3a59fea995c744e7116ed1b9b10d85a18673cf7111923d88cc54bf8437bba08ebc11e4f4c67d582d1816d94eeb2a80a4f2fa4913db05fd4ff0dc9d21",
  "content": "What’s it supposed to do?",
  "tags": [
    [
      "e",
      "3b1126ba9f5b18a8bebc1872d4da2761d5b97a5a2ec02b3b5b3aceef8a35748e",
      "",
      "root"
    ],
    [
      "e",
      "6d07185ee5a5c7bd75b0ee11342b76c5ed5b111b891e80751148f941ebee8a66",
      "",
      "reply"
    ],
    [
      "p",
      "a80fc4a78634ee26aabcac951b4cfd7b56ae18babd33c5afdcf6bed6dc80ebd1"
    ]
  ]
}
Event Behavior when I clicked on the "View Thread" icon
Event 1 Event 1 was visible for about a second, then disappeared as soon as its parent appeared.
Event 2 I clicked "View Thread" at least twice. Each time, the thread showed a single message, but it was not Event 2.
> At this point, it is slightly more likely that the nostr data is insufficient to build the thread. You may well be right about that. I tried to find suitable events, but many of the events that produce the 4(i) behavior from my first comment appear to be corrupt. However, I have found 2 events that may not be corrupt (I found them both on relay.primal.net) <details><summary><b>Event 1</b></summary> ```json { "id": "02aec17f8616b7dd69c192f39863b535c356c5a9912f20859d4ee597c9e8d052", "pubkey": "296842eaaed9be5ae0668da09fe48aac0521c4af859ad547d93145e5ac34c17e", "created_at": 1744571996, "kind": 1, "sig": "b9faae5b1dea52eb0376620feb7da2e73f38eef7bc5bc1e83bf227b9f54127441e58c45319edac33c729c05850dcd4a52f91e45805bba8d0cb4868597b61df37", "content": "happy birthday nostr:npub17nd4yu9anyd3004pumgrtazaacujjxwzj36thtqsxskjy0r5urgqf6950x !! 🥳", "tags": [ [ "e", "ba5bf912658eaa17918dc4cb90134a900c4058661f7d6c1715ea090a319deedd", "", "root" ], [ "p", "f4db5270bd991b17bea1e6d035f45dee392919c29474bbac10342d223c74e0d0" ], [ "p", "590e15b38be0560309d02cf9dd203cb2d61d87272dd708af3d5a10526f29feb9" ], [ "p", "f4db5270bd991b17bea1e6d035f45dee392919c29474bbac10342d223c74e0d0" ] ] } ``` </details> <details><summary><b>Event 2</b></summary> ```json { "id": "c4ad12a9c8d604309dae5ca3c2c64d6ecbe1f84f60cb543fa30c50f97a220d1f", "pubkey": "624d01ef570a3730afa1ebedc3ed95d57259ac5f37a9f0eac9c2a0d2f122bf4a", "created_at": 1744572358, "kind": 1, "sig": "33e0bfbe3a59fea995c744e7116ed1b9b10d85a18673cf7111923d88cc54bf8437bba08ebc11e4f4c67d582d1816d94eeb2a80a4f2fa4913db05fd4ff0dc9d21", "content": "What’s it supposed to do?", "tags": [ [ "e", "3b1126ba9f5b18a8bebc1872d4da2761d5b97a5a2ec02b3b5b3aceef8a35748e", "", "root" ], [ "e", "6d07185ee5a5c7bd75b0ee11342b76c5ed5b111b891e80751148f941ebee8a66", "", "reply" ], [ "p", "a80fc4a78634ee26aabcac951b4cfd7b56ae18babd33c5afdcf6bed6dc80ebd1" ] ] } ``` </details> | Event | Behavior when I clicked on the "View Thread" icon| | --- | --- | | Event 1 | Event 1 was visible for about a second, then disappeared as soon as its parent appeared. | | Event 2 | I clicked "View Thread" at least twice. Each time, the thread showed a single message, but it was not Event 2. |
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nostr/gossip#991
No description provided.