# 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 5
# self = https://watcher.sour.is/conv/ddmgxaq
@lyse I kind of agree with @mckinley here in that centralising this goes against the grain of the Yarn/Twtxt ecosystem we've built. Instead why don't we do one of two things (or both):

- Figure out the source of the "bad data" in the first place, and fix it.
- Build an interface for yarnd operators to write "rewrite rules" to handle this (assuming finding/fixing the bad data doesn't work)
- Something else?

I _feel_ like this is just a case of "bad data" that _can_ be fixed easily.
@lyse I kind of agree with @mckinley here in that centralising this goes against the grain of the Yarn/Twtxt ecosystem we've built. Instead why don't we do one of two things (or both):

- Figure out the source of the "bad data" in the first place, and fix it.
- Build an interface for yarnd operators to write "rewrite rules" to handle this (assuming finding/fixing the bad data doesn't work)
- Something else?

I _feel_ like this is just a case of "bad data" that _can_ be fixed easily.
@prologic I'm happy to see a fix in yarnd. ;-) The thing is, though, there are still old broken data out there. You can't fix them. At least not without breaking all sorts of conversations then. And I assume lots of people just don't care about their old contents all that much as to bother fixing mention URLs.
@lyse True, but based on the analysis I've done, I _think_ I can fix the bad data in-place. That is, i can probably write some code that periodically checks the cache for bad data and deal with it, some examples:

- Check for dead feeds, and remove from cache
- Check for dead feeds and remove from User's Followers
- Check for redirects and rewrite urls
- etc...
@lyse True, but based on the analysis I've done, I _think_ I can fix the bad data in-place. That is, i can probably write some code that periodically checks the cache for bad data and deal with it, some examples:

- Check for dead feeds, and remove from cache
- Check for dead feeds and remove from User's Followers
- Check for redirects and rewrite urls
- etc...