# I am the Watcher. I am your guide through this vast new twtiverse.
# 
# Usage:
#     https://watcher.sour.is/api/plain/users              View list of users and latest twt date.
#     https://watcher.sour.is/api/plain/twt                View all twts.
#     https://watcher.sour.is/api/plain/mentions?uri=:uri  View all mentions for uri.
#     https://watcher.sour.is/api/plain/conv/:hash         View all twts for a conversation subject.
# 
# Options:
#     uri     Filter to show a specific users twts.
#     offset  Start index for quey.
#     limit   Count of items to return (going back in time).
# 
# twt range = 1 37
# self = https://watcher.sour.is/conv/iztis3a
Definitely something going on here. Cloudflare is my main suspect.
@mckinley I also see repeated Lyse twtxts, and I can’t even mention him on this twtxt. When I type @Lyse the pop up shows up, but when I tap on it, it just autocompletes as @lyse@, nothing else.

I am on mobile.
Hmm like @lyse
Hmm like @lyse
Yeah okay I can reproduce that weird auto-complete bug
Yeah okay I can reproduce that weird auto-complete bug
See:

https://twtxt.net/twt/7hraijq
https://twtxt.net/twt/ta6uu5q
@bender Shy are those seem like dupes with different hashes?
@bender Shy are those seem like dupes with different hashes?
Hm mm these are identical in content:


$ diff -Ndru <(bat https://twtxt.net/twt/7hraijq | jq -r '.text') <(bat https://twtxt.net/twt/ta6uu5q | jq -r '.text') | wc -l
0
Hm mm these are identical in content:


$ diff -Ndru <(bat https://twtxt.net/twt/7hraijq | jq -r '.text') <(bat https://twtxt.net/twt/ta6uu5q | jq -r '.text') | wc -l
0
What da actual fuq?! They have the same timestamp too!


$ bat https://twtxt.net/twt/7hraijq | jq '.created'
"2024-08-03T19:30:00+02:00"
$ bat https://twtxt.net/twt/ta6uu5q | jq '.created'
"2024-08-03T19:30:00+02:00"


And the same Twter (URI)
What da actual fuq?! They have the same timestamp too!


$ bat https://twtxt.net/twt/7hraijq | jq '.created'
"2024-08-03T19:30:00+02:00"
$ bat https://twtxt.net/twt/ta6uu5q | jq '.created'
"2024-08-03T19:30:00+02:00"


And the same Twter (URI)
@lyse (_ahh auto-complete is broken only on Mobile?_) @xuu is our hashing reached a point where it's broken and needs to be dumped? 🤔_
@lyse (_ahh auto-complete is broken only on Mobile?_) @xuu is our hashing reached a point where it's broken and needs to be dumped? 🤔_
Yeah, this looks like a hash collision to me right? Same twt, same timestamp, same twter, produces two different hashes? I'm not even sure how da fuq this is even possible?


$ diff <(bat https://twtxt.net/twt/7hraijq | jq '.') <(bat https://twtxt.net/twt/ta6uu5q | jq '.')
10c10
<   "hash": "7hraijq",
---
>   "hash": "ta6uu5q",
Yeah, this looks like a hash collision to me right? Same twt, same timestamp, same twter, produces two different hashes? I'm not even sure how da fuq this is even possible?


$ diff <(bat https://twtxt.net/twt/7hraijq | jq '.') <(bat https://twtxt.net/twt/ta6uu5q | jq '.')
10c10
<   "hash": "7hraijq",
---
>   "hash": "ta6uu5q",
In fact I cannot produce eitehr of these hashes:


$ pbpaste | ./yarnc hash -u https://lyse.isobeef.org/twtxt.txt -t 2024-08-03T19:30:00+02:00 -
bsormva


What da fuq?!


$ bat https://twtxt.net/twt/7hraijq | jq -r '.text' | ./yarnc hash -u https://lyse.isobeef.org/twtxt.txt -t 2024-08-03T19:30:00+02:00 -
bsormva
In fact I cannot produce eitehr of these hashes:


$ pbpaste | ./yarnc hash -u https://lyse.isobeef.org/twtxt.txt -t 2024-08-03T19:30:00+02:00 -
bsormva


What da fuq?!


$ bat https://twtxt.net/twt/7hraijq | jq -r '.text' | ./yarnc hash -u https://lyse.isobeef.org/twtxt.txt -t 2024-08-03T19:30:00+02:00 -
bsormva
@movq / @lyse / @xuu any ideas wut da fuq is going on here?! 🤣
@movq / @lyse / @xuu any ideas wut da fuq is going on here?! 🤣
Computers aren't meant to give me three different answers 🤣
Computers aren't meant to give me three different answers 🤣
A equivalent yarnc debug <url> only sees the 2nd hash
A equivalent yarnc debug <url> only sees the 2nd hash
That is this one:


ta6uu5q 2024-08-03T19:30:00+02:00\t(#puxvjcq) Hmmm, what is going on here? ...
That is this one:


ta6uu5q 2024-08-03T19:30:00+02:00	(#puxvjcq) Hmmm, what is going on here? ...
That is this one:


ta6uu5q 2024-08-03T19:30:00+02:00	(#puxvjcq) Hmmm, what is going on here? ...
bsormva is not a hash found in @lyse 's feed at all according to yarnc debug which is printing the hash and corresponding Twt per line.
bsormva is not a hash found in @lyse 's feed at all according to yarnc debug which is printing the hash and corresponding Twt per line.
I can't explain this. I'm leaning towards a peering pod being responsible for producing a different hash, and twtxt.net pulling that in from a peer. But that would only happen if my pod doesn't have the Root Twt ans asked its peers for it. And that implies other pods are producing incorrect/different hashes "somehow". So all of that seems highly unlikely tbh.
I can't explain this. I'm leaning towards a peering pod being responsible for producing a different hash, and twtxt.net pulling that in from a peer. But that would only happen if my pod doesn't have the Root Twt ans asked its peers for it. And that implies other pods are producing incorrect/different hashes "somehow". So all of that seems highly unlikely tbh.
I don't think I'm smart enough to figure this out 😅
I don't think I'm smart enough to figure this out 😅
@prologic ah, fuck it, don’t worry. I consider one the original (I flip a coin to pick which), and the other’s a backup, just in case. 😂
@bender LOL 🤣
@bender LOL 🤣