Content pfp
Content
@
0 reply
4 recasts
4 reactions

jtgi pfp
jtgi
@jtgi
In celebration of dynamic frames, I present the Farcaster Perpetual. A momentous achievement in onframe time keeping. - One generative edition for every second on the watch - Any mint proceeds fund my farcaster dev (/glass, /automod and beyond) https://perpetual.cx
16 replies
28 recasts
90 reactions

jtgi pfp
jtgi
@jtgi
@v or anyone, this frame looks cached even though it has `max-age` set. Is `/user-thread-casts` not being invalidated? The payload for this cast hash contains an old value for image url (fcperpetual.fly.dev....), it should be perpetual.cx/... Frame validator returns correct url perpetual.cx and api includes max-age.
2 replies
0 recast
2 reactions

jtgi pfp
jtgi
@jtgi
oops, attachments got lost. 1st one: shows /user-thread-casts returning old, cached url 2nd: frame validator showing expected values.
1 reply
0 recast
1 reaction

jtgi pfp
jtgi
@jtgi
@gt sorry for the ping, any idea why this frame isn't refreshing? Bit stumped and looking to codify the behaviour of max-age for some other projects i'm working on. Any help appreciated. Context above.
1 reply
0 recast
0 reaction

Goksu Toprak pfp
Goksu Toprak
@gt
Our image proxy has no caching. When you load the image from the URL if you are still seeing some max-age that is likely due to image itself having that cache set when served at some point. I will also check further and investigate later.
1 reply
0 recast
0 reaction

jtgi pfp
jtgi
@jtgi
Thanks. The image loads fine but the image url the frame is resolving is stale. The image url was fcperpetual.fly.dev/.. originally, then later changed to perpetual.cx/ but it’s cached as fcperpetual.fly.dev. I’ve had max age set from beginning, it should refetch the frame, correct?
1 reply
0 recast
0 reaction

Goksu Toprak pfp
Goksu Toprak
@gt
Yeah if it is still hitting the old URL for the image you should refetch the frame and that should update for casts moving forward.
1 reply
0 recast
0 reaction

jtgi pfp
jtgi
@jtgi
I thought that was the purpose of setting max-age on the frame response though, so existing frames can be updated without being recast. Did I misunderstand?
1 reply
0 recast
0 reaction

Goksu Toprak pfp
Goksu Toprak
@gt
The image itself is no longer cached. (Or rather will use the same image cache headers set on it for the proxy) However, the frame itself and its image target is still cached for the first frame. So if your frame now has a new image URL — you have to refresh the frame cache.
1 reply
0 recast
0 reaction