{
"path": "/3m5o5tbr3qk2l",
"site": "at://did:plc:xg2vq45muivyy3xwatcehspu/site.standard.publication/3m3zpxhfl3c2s",
"$type": "site.standard.document",
"title": "Dev Log 17: 2025-11-15",
"content": {
"$type": "pub.leaflet.content",
"pages": [
{
"$type": "pub.leaflet.pages.linearDocument",
"blocks": [
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 2,
"facets": [
{
"index": {
"byteEnd": 12,
"byteStart": 8
},
"features": [
{
"uri": "https://stormlightlabs.github.io/beacon/",
"$type": "pub.leaflet.richtext.facet#link"
}
]
},
{
"index": {
"byteEnd": 17,
"byteStart": 13
},
"features": [
{
"uri": "https://github.com/stormlightlabs/beacon",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "Beacon (docs/code)"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.unorderedList",
"children": [
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "Working on LRU cache invalidation"
},
"children": []
},
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "Reorganized planning docs"
},
"children": [
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "These are TODO & ROADMAP (markdown) files I tend to toss in every project I work on"
},
"children": []
}
]
},
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 214,
"byteStart": 210
},
"features": [
{
"uri": "https://stormlightlabs.github.io/beacon/learn/hm.html",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "My goal with this project for the next week or so is to cut v0.3.0 and focus entirely on solidifying the type checker. I was still learning about the mechanics of hindley-milner when I started it (my notes are here) and the implementation has a few sets of edge cases and false positives to be rooted out."
},
"children": [
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "This is a loosening of my personal deadlines (which are usually way too conservative) to account for...life? and some other big projects."
},
"children": []
}
]
}
]
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 2,
"facets": [
{
"index": {
"byteEnd": 11,
"byteStart": 7
},
"features": [
{
"uri": "https://stormlightlabs.github.io/volt/",
"$type": "pub.leaflet.richtext.facet#link"
}
]
},
{
"index": {
"byteEnd": 16,
"byteStart": 12
},
"features": [
{
"uri": "https://github.com/stormlightlabs/volt",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "VoltX (docs/code)"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.unorderedList",
"children": [
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "This is the other big project. I've been away from this for so long (it's only really been a couple of weeks) that it was hard to reorient myself to its idiosyncrasies. "
},
"children": []
},
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "Currently I'm working on error handling, messaging, and ergonomics (think the overlays you see in vite projects)."
},
"children": []
}
]
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 2,
"facets": [
{
"index": {
"byteEnd": 14,
"byteStart": 10
},
"features": [
{
"uri": "https://tangled.org/@desertthunder.dev/noteleaf",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "Noteleaf (code)"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.unorderedList",
"children": [
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "This is a project a lot of folks seem interested in so I have to be careful not to let it be another VoltX situation."
},
"children": [
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "Luckily the last thing I worked on was the documentation site and manual."
},
"children": []
}
]
}
]
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 2,
"facets": [
{
"index": {
"byteEnd": 15,
"byteStart": 11
},
"features": [
{
"uri": "https://stormlightlabs.github.io/git-storm/",
"$type": "pub.leaflet.richtext.facet#link"
}
]
},
{
"index": {
"byteEnd": 20,
"byteStart": 16
},
"features": [
{
"uri": "https://github.com/stormlightlabs/git-storm",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "Git-Storm (docs/code)"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.unorderedList",
"children": [
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "I'm integrating this into my Beacon workflow so basically, we're in QA mode."
},
"children": []
}
]
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 2,
"facets": [],
"plaintext": "Nix Config"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.unorderedList",
"children": [
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 193,
"byteStart": 189
},
"features": [
{
"uri": "https://nixos-and-flakes.thiscute.world/",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "This will be a weekend project for me. I see a TON of Nix configuration repos and a lot about Omarchy out there. It makes me want to scrap my current Hyprland + Endeavour setup and hit the books."
},
"children": []
}
]
}
}
]
}
]
},
"bskyPostRef": {
"cid": "bafyreihb6myx2lbringgv5gnlu3xv2rqmd2tkem3rqpn3q7u77ybwrzg74",
"uri": "at://did:plc:xg2vq45muivyy3xwatcehspu/app.bsky.feed.post/3m5o5tfztps2l",
"commit": {
"cid": "bafyreigvu4dzcsar2dsdmeyhrdbphqpdzvtdfcza6mcarhvw6rbkvfe3ki",
"rev": "3m5o5tg3yhe2r"
},
"validationStatus": "valid"
},
"description": "Easing my own expectations of myself with better planning",
"publishedAt": "2025-11-15T12:06:42.274Z"
}