commits
the response almost matches but dropshot uses "error_code: string" instead of "error: string" in its error responses
safari might be a lost cause
who-am-i may have been a mistake
so that later jose knows which key to try (it will not just try them all)
saw some spurious double-requests that led to taking the expiring task map key early
which is maybe an indication that the fragility of only having once chance to retrieve it by key is kind of a problem, but hey we can paper over that by POSTing for now for a slightly higher chance that nothing in the stack will try to re-request somehow.
not actually sure if this is needed for the raspi but initially i thought metrics weren't working. (they are fine)
bumps the allowed fp error on harmonic sum to be 1.0 instead of 0.5
do we need csrf here or...
do as much per-event work as possible in the consumer, so subscribers can filter as cheaply as possible and have a pre-rendered message ready for them to send to connected clients.
sometimes the socket gets disrupted and we otherwise just wait forever
this *could* (and maybe should) be done by detecting missed pongs instead.
this catches some amount of spurious notifications (accidental like + quick unlike) and also possibly some cases of bsky moderation actions? or maybe would need to listen to labellers for that (and prob should)
saw some spurious double-requests that led to taking the expiring task map key early
which is maybe an indication that the fragility of only having once chance to retrieve it by key is kind of a problem, but hey we can paper over that by POSTing for now for a slightly higher chance that nothing in the stack will try to re-request somehow.