nostrability icon indicating copy to clipboard operation
nostrability copied to clipboard

Cannot find a note - notify user, and provide hint/suggested next steps

Open alltheseas opened this issue 1 year ago • 6 comments
trafficstars

client initiating action

client receiving or observing action (or lack thereof)

Gossip Damus or pretty near all other apps

timestamp

https://njump.me/nevent1qqsw4cycxsnl8xq5zwfw238slazpc8n4rvex58nrqevl8apcfsw92wgpzemhxue69uhhyetvv9ujumn0wd68ytnzv9hxgqgswaehxw309ahx7um5wgh8w6twv5q3kamnwvaz7tmrdpexjum5wp5kcmpwdehhxarjxyhxxmmdqy08wumn8ghj7en9v4j8xtnwdaehgu3wvfskuep0wphhqatvv9eqp68wj5

https://njump.me/nevent1qqsquyg3n8vtk77plrhmzhsu9wjm7kq36sxj33gzgf3nygjxhtuuggq47k2ww

what happens

  1. sometimes notes are not found due to lack of outbox, imperfect outbox implementation, and/or limitations of outbox
  2. various apps either a) don't display notes b) display stress inducing perpetually loading animations

suggestion/question

How might we design "note not found" "warning" message? What (manual) action might the user be prompted to take in order to find the said note?

related

Damus design request: note not found https://github.com/damus-io/damus/issues/2278

alltheseas avatar May 24 '24 21:05 alltheseas

@karnagebitcoin

alltheseas avatar May 24 '24 22:05 alltheseas

I am not sure on a technical level what the user can do at that point. In terms of design, I think the stress could be alleviated a bit with some lightly humorous copywriting and visual. One I had in mind:

"Oooof, it appears da moose could not find this elusive note"

This could be coupled with a cute / funny moose icon or small visual that fits to the left of the message.

In terms of what the user can do next: We could offer a link to open an area that explains why the note may not have been found. If we can't give users an action to take, perhaps just explaining it would help - and maybe within that area we can offer them to report this to developers. Despite not much that we can do, at least they can get a sense of doing something for a sense of "closure". TLDR; give them some info or something to do to feel useful.

karnagebitcoin avatar May 25 '24 15:05 karnagebitcoin

We need:

  • better loading screen
  • more algorithms for finding notes in different ways
  • damoose failure screen

jb55 avatar May 27 '24 17:05 jb55

This is distinct from the loaded note but unknown note screen. we should definitely have that as well.

jb55 avatar May 27 '24 17:05 jb55

Maybe it's helpful, here's what I came up with for Nosta so far. First there's a loader, represented by an emoji and a piece of text. It gets more and more impatient the longer it takes. It gives the user feedback and emphasizes with them. Then at some point it gives up and says that it couldn't find anything.

What I haven't implemented is the "search harder" part. By default, it tries to find any relays related to the profile it's looking for (like something baked into an nprofile). It falls back to a series of default relays that I have deemed worthy. "Search harder" would then expand that to more relays, and potentially third-party service APIs that may have a broader cached index. You could also automatically search harder instead of asking the user to request it.

image

GBKS avatar Jun 07 '24 09:06 GBKS

I recently added a "LOADING..." (I'll let the UI guys spruce that up), but what will be much harder (given how gossip is coded currently) is detecting if loading has failed (when all relays give back EOSE without the event being found).

https://github.com/mikedilger/gossip/issues/776

mikedilger avatar Jun 08 '24 12:06 mikedilger