$ sprite checkpoint list -s …
Error: failed to list checkpoints: failed to make request: Get “https://api.sprites.dev/v1/sprites/…/checkpoints”: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
this is happening for some commands, like checkpoint listing, but working for another sprite that’s located on the same FRA region.
That’s your location actually (the client making the HTTP request). Your request gets routed first to the nearest Fly.io edge node (which is what that suffix shows) and then onward within the internal network to the Sprite or organization-wide metadata node, etc., which could be arbitrarily far away.
With normal Machines, you can set flyio-debug: doit as a request header and get back a JSON blob, in the response header, which includes information about the actual Machine that ultimately did serve the request. Look in the sr and sdc fields in particular. I’m not 100% sure those are still valid for Sprites, but it’s probably a better indicator…
i had a sprite with a bunch of checkpoints suddenly report no checkpoints at all, so i am not trusting that feature anymore. once i have something that i care about it goes into git and i try to push often.
i really like the idea of the sprites service, but it seems to be more of a side project than something one can trust to be there when needed.
do you have any tips on actions one can take to keep the sprite “healthy”. i have this sprite i need to have available from other sprites, it hosts an app where agents can post/get text blobs. it holds some “knowledge” i like to transfer around. it’s really annoying to pass the link to another sprite and have claude lose cycles because it can’t connect to the other sprite.