IRC channel logs

2025-06-04.log

back to list of logs

<dthompson>hi folks! been quiet here lately, but we've got a new blog post to share!
<dthompson> https://spritely.institute/news/goblinville-a-spring-lisp-game-jam-2025-retrospective.html
<dthompson>it's a little retrospective on the lisp game jam and the demo we made
<cwebber>:D
<encryptedwhisper>such a cool demo :)
<encryptedwhisper>i have returned :P
<encryptedwhisper>been working on using a persistence store with hoot, I'm close to having something set up with the prelay
<encryptedwhisper>just trying to figure out if i need to persist the mycapn or just the netlayer after getting it from the prelay account. it seems just persisting the prelay netlayer isn't quite working as I'm unable to register an actor and create a sturdyref from the deserialized netlayer, it just sits and does nothing when i try to register
<cwebber>it should be possible to persist the mycapn, which should persist everything else, iirc
<cwebber>tsyesika did a lot of work to make that possible
<cwebber>and dthompson
<cwebber>encryptedwhisper: does the equivalent code work in the guile vm?
<cwebber>before trying it with hoot
<cwebber>to persist/restore
<cwebber>hoot + aurie has not been well tested
<cwebber>so it could help narrow the problem
<dthompson>hey encryptedwhisper!
<dthompson>regarding persistence and the prelay, I think tsyesika could best answer that as she seems to have it working for pumpkin chat
<dthompson>or maybe she doesn't and I'm misremembering... we shall see :)
<dthompson>but in general, yes, you would persist the mycapn actor which would in turn persist the registry so that sturdyrefs are the same upon reboot
<dthompson>I just lack experience with the prelay specifically
<dthompson>very cool that you're trying persistence in the browser! tsyesika has done some work here, too
<cwebber>yes tsyesika has persisted the prelay on the backend of pumpkin chat
<cwebber>but not the frontend
<cwebber>iirc
<encryptedwhisper>cool, i will give that a shot.
<cwebber>💜
<encryptedwhisper>also i have a question about the prelay. internally when you use fetch-and-spawn-prelay-netlayer it creates a mycapn, but doesn't expose that. is it good/expected that there's an internal mycapn and also you have to create another one to wrap the netlayer? is the internal mycapn for prelay purposes and so needs to be separate?
<dthompson>encryptedwhisper: I think it's internal because the relay is doing ocapn-over-ocapn
<encryptedwhisper>interesting. that makes sense
<cwebber>encryptedwhisper: dthompson: that said, I was pretty nervous about the double mycapn when it was first established, and we may have determined it does have challenges, I forget. It does do something nice insofar as it "isolates" the internal ocapn from being something you can connect to directly but
<cwebber>I think tsyesika raised concerns about some sort of gc leak recently, I forget if it was because of this, and I can't remember how far she looked into it
<cwebber>that said, the mycapn infrastructure was built so you *could* have two.
<encryptedwhisper>ACTION nods
<encryptedwhisper>another possible bug i ran into was trying to use the example prelay server with websocket. i get an error "cannot save deltas until a whole graph has been stored first"
<encryptedwhisper>i can log a bug with repro for that later if you would like
<encryptedwhisper>The thing I'm currently stuck on is if i try to call 'register on a mycapn that has been restored, it gets stuck, internally on the netlayer 'our-location method
<encryptedwhisper>first register works, but trying to call it again on the thawed mycapn seems to be a problem
<encryptedwhisper>if i check ($ netlayer 'our-location) it returns a promise, for some reason. that seems wrong...
<encryptedwhisper>i will see if the same thing happens outside of hoot