# 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 60436
# self = https://watcher.sour.is?uri=https://twtxt.net/user/prologic/twtxt.txt&offset=57591
# next = https://watcher.sour.is?uri=https://twtxt.net/user/prologic/twtxt.txt&offset=57691
# prev = https://watcher.sour.is?uri=https://twtxt.net/user/prologic/twtxt.txt&offset=57491
e.g:


$ printf "%s\t%s\t%s" "https://example.com/twtxt.txt" "2024-09-29T13:30:00Z" "Hello World!" | sha256sum | awk '{ print $1 }' | xxd -r -p | base64 | head -c 12
UWVFdUXtvoLS
e.g:


$ printf "%s\t%s\t%s" "https://example.com/twtxt.txt" "2024-09-29T13:30:00Z" "Hello World!" | sha256sum | awk '{ print $1 }' | xxd -r -p | base64 | head -c 12
UWVFdUXtvoLS
@bender I'm inclined to agree. @xuu needs a bit of convincing maybe? πŸ€”
@bender I'm inclined to agree. @xuu needs a bit of convincing maybe? πŸ€”
@movq Curious, is our goal to have readily available tools on every possible system? πŸ€”
@movq Curious, is our goal to have readily available tools on every possible system? πŸ€”
@bender To be fair it _really_ isn't sha256sum vs. b2sum. Neither is more complicated than the other.
@bender To be fair it _really_ isn't sha256sum vs. b2sum. Neither is more complicated than the other.
@bender So it should be possible to install man pages in one's home directoryπŸ‘Œ
@bender So it should be possible to install man pages in one's home directoryπŸ‘Œ
@bender Yea but what about non-root?
@bender Yea but what about non-root?
@bender Hmmm πŸ€” Where do you put man pages outside of the contest of a package manager? πŸ€”
@bender Hmmm πŸ€” Where do you put man pages outside of the contest of a package manager? πŸ€”
@bender Not sure. It might be a slight variant. I'll find out πŸ™ƒ
@bender Not sure. It might be a slight variant. I'll find out πŸ™ƒ
@bender Oh I hope that is true 🀣
@bender Oh I hope that is true 🀣
@movq sorry to hear about your personal things going on. πŸ€—
@movq sorry to hear about your personal things going on. πŸ€—
@movq I don't think that matters a great deal. I think you should publish your client anyway because I think the direction that will end up taking will hopefully be one that we collectively agree on. 🀞
@movq I don't think that matters a great deal. I think you should publish your client anyway because I think the direction that will end up taking will hopefully be one that we collectively agree on. 🀞
@movq is that the only system is not available on? Are there alternative packages for OpenBSD?
@movq is that the only system is not available on? Are there alternative packages for OpenBSD?
If we stuck with Blake2b for Twt Hash(es); what do we think we need to reasonably go to in bit length/size?

=> https://gist.mills.io/prologic/194993e7db04498fa0e8d00a528f7be6

e.g: (_turns out @xuu is right about Blak2b being easy/simple too!_):


$ printf "%s\\t%s\\t%s" "https://example.com/twtxt.txt" "2024-09-29T13:30:00Z" "Hello World!" | b2sum -l 32 -t | awk '{ print $1 }'
7b8b79dd
=
If we stuck with Blake2b for Twt Hash(es); what do we think we need to reasonably go to in bit length/size?

=> https://gist.mills.io/prologic/194993e7db04498fa0e8d00a528f7be6

e.g: (_turns out @xuu is right about Blak2b being easy/simple too!_):


$ printf "%s\t%s\t%s" "https://example.com/twtxt.txt" "2024-09-29T13:30:00Z" "Hello World!" | b2sum -l 32 -t | awk '{ print $1 }'
7b8b79dd
=
If we stuck with Blake2b for Twt Hash(es); what do we think we need to reasonably go to in bit length/size?

=> https://gist.mills.io/prologic/194993e7db04498fa0e8d00a528f7be6

e.g: (_turns out @xuu is right about Blak2b being easy/simple too!_):


$ printf "%s\t%s\t%s" "https://example.com/twtxt.txt" "2024-09-29T13:30:00Z" "Hello World!" | b2sum -l 32 -t | awk '{ print $1 }'
7b8b79dd
=
I am told through various sources that Iran decided last night to attack Israel with over 200 missile strikes in response to Israel attacking Lebanon. πŸ€”
I am told through various sources that Iran decided last night to attack Israel with over 200 missile strikes in response to Israel attacking Lebanon. πŸ€”
@bender sorry wat?! 🀣
@bender sorry wat?! 🀣
@bender at this point, I wouldn't use anything but Signal or Apple messages πŸ˜….
@bender at this point, I wouldn't use anything but Signal or Apple messages πŸ˜….
@xuu did we ever spec this up?
@xuu did we ever spec this up?
@quark hmm?
@quark hmm?
I'm not really sure that is any better hmmm, please help πŸ™
I'm not really sure that is any better hmmm, please help πŸ™
Let's try that... Pushed a new commit... Give it ~5m to update...~
Let's try that... Pushed a new commit... Give it ~5m to update...~
@bender I have no idea what I want to be perfectly honest. This is CSS done from scratch πŸ˜…
@bender I have no idea what I want to be perfectly honest. This is CSS done from scratch πŸ˜…
@bender I'm open to suggestions. What would you prefer the color scheme to be? πŸ€”
@bender I'm open to suggestions. What would you prefer the color scheme to be? πŸ€”
Still playing with the style/template and what to include, just keeping it simple for now.
Still playing with the style/template and what to include, just keeping it simple for now.
@movq I'd love it if you write up a page for jenny πŸ™ at https://twtxt.dev 🀞
@movq I'd love it if you write up a page for jenny πŸ™ at https://twtxt.dev 🀞
πŸ€£πŸ€£πŸ€£πŸ˜‚πŸ€£πŸ˜‚πŸ€£
πŸ€£πŸ€£πŸ€£πŸ˜‚πŸ€£πŸ˜‚πŸ€£
@bender Yup!
@bender Yup!
Btw anyone can put up PR(s) πŸ™ƒ
Btw anyone can put up PR(s) πŸ™ƒ
@falsifian Agreed
@falsifian Agreed
@sorenpeter I think this is a rype will fix!
@sorenpeter I think this is a rype will fix!
@lyse Maybe you're right: Let's pause this while edit/delete discussions.
@lyse Maybe you're right: Let's pause this while edit/delete discussions.
@doesnm πŸ‘Œ
@doesnm πŸ‘Œ
@bender Good point! πŸ‘Œ I'll make it so πŸ‘Œ
@bender Good point! πŸ‘Œ I'll make it so πŸ‘Œ
@doesnm No.

> iirc in twtxt v2 it starts prohibited

This is not true. There are no issues supporting fetching feeds via Gemini/Gopher. This is totally fine. What will likely happen is "recommendations" and "drawbacks of using Gemini/Gopher"
@doesnm No.

> iirc in twtxt v2 it starts prohibited

This is not true. There are no issues supporting fetching feeds via Gemini/Gopher. This is totally fine. What will likely happen is "recommendations" and "drawbacks of using Gemini/Gopher"
Really you stopped 22hrs ago? https://twtxt.net/twt/iaautmq
Really you stopped 22hrs ago? https://twtxt.net/twt/iaautmq
Hmm da fuq?! @tiktok ?
Hmm da fuq?! @tiktok ?
@bender I see it here hmm πŸ€” Dis you accidentally mute your own Twt?
@bender I see it here hmm πŸ€” Dis you accidentally mute your own Twt?
@movq Hmmm πŸ€” Intuitively I say "No they're not the same"; but let me sleep on it πŸ™πŸ˜΄
@movq Hmmm πŸ€” Intuitively I say "No they're not the same"; but let me sleep on it πŸ™πŸ˜΄
@bender Just once I tell ya:

> Ah, 16Β°C… what dreams are made of! 😍

I'd like it to be a nice cool 16°C here 🀣
@bender Just once I tell ya:

> Ah, 16Β°C… what dreams are made of! 😍

I'd like it to be a nice cool 16°C here 🀣
Personally I don't see it as a problem. I didn't even really see edits as a problem either tbh, but this is just an incremental improvement I think.
Personally I don't see it as a problem. I didn't even really see edits as a problem either tbh, but this is just an incremental improvement I think.
It's no worse than what we have now, it's better. But yes caveats still apply.
It's no worse than what we have now, it's better. But yes caveats still apply.
@movq Yup.
@movq Yup.
@slashdot No πŸ˜…
@slashdot No πŸ˜…
@doesnm I think it's a good idea to fork twet and continue to improve it. It's an "okay" Twtxt cli client, but it needs a bit more work πŸ‘Œ
@doesnm I think it's a good idea to fork twet and continue to improve it. It's an "okay" Twtxt cli client, but it needs a bit more work πŸ‘Œ
@doesnm Sorry I meant twet πŸ€¦β€β™‚οΈ
@doesnm Sorry I meant twet πŸ€¦β€β™‚οΈ
@lyse See @movq 's undersanding. Now this had some edge cases that we agreed probably aren't worth solving for.
@lyse See @movq 's undersanding. Now this had some edge cases that we agreed probably aren't worth solving for.
@movq Yes πŸ‘
@movq Yes πŸ‘
@lyse Pretty nice views πŸ‘Œ I enjoyed reading this. It was though I were there in the morning walking with you guys up to the summit man those mushrooms really are quite some aren't they? πŸ™ƒ
@lyse Pretty nice views πŸ‘Œ I enjoyed reading this. It was though I were there in the morning walking with you guys up to the summit man those mushrooms really are quite some aren't they? πŸ™ƒ
@movq Yes! Basically @david points out that if we mandate that authors should retain the original timestamp in their feed when adjusting content, making fixes, etc, that they retain the original timestamp and leave it unaltered. We already do this anyway, we just need to say so.

Now we have a situation where folks participating in a "conversation" (thread) with appropriate clients can automatically detect edits with almost 100% accuracy by mere fact that the next time they fetch a feed that contains an edit, they now see two versions of the Twt with two different hashes, but identical timestamps.

You can use the fetch time to approximate a "version number" and deal with the display (UX) appropriately.

I can't believe I didn't think of this before πŸ€¦β€β™‚οΈ
@movq Yes! Basically @david points out that if we mandate that authors should retain the original timestamp in their feed when adjusting content, making fixes, etc, that they retain the original timestamp and leave it unaltered. We already do this anyway, we just need to say so.

Now we have a situation where folks participating in a "conversation" (thread) with appropriate clients can automatically detect edits with almost 100% accuracy by mere fact that the next time they fetch a feed that contains an edit, they now see two versions of the Twt with two different hashes, but identical timestamps.

You can use the fetch time to approximate a "version number" and deal with the display (UX) appropriately.

I can't believe I didn't think of this before πŸ€¦β€β™‚οΈ
There we go!

=> twtxt.dev

πŸ₯³=