RSS now shows full text
Everything should show in your reader now
Sorry for any previous inconveniences!
So, RSS. Although I prefer to make my website extremely performant, you can’t really beat pure text. And some people want RSS not just for styling, but for grouping with other feeds or even accessibility purposes.
Some people choose not to do full text RSS, and I respect that choice! If your livelihood depends on whether people view your ads, you wouldn’t want everyone to be trivially able to bypass viewing your page. It also may open your site up to easy scraping. It’s pretty much serving up clean text on a silver platter, whether it’s the intended human or an SEO spambot.
However, that doesn’t really apply to me. I’m running a very small blog, without ads and not that much tracking either. I’d also want everyone to be able to read my posts, however they want… if they choose to. I don’t advertise anywhere.
So enabling full text RSS is a bit of a no-brainer, but it seems like I forgot to do that when I started…? Anyways, it is now enabled. Also added is a collapsible agent section. Asides now come folded by default, and the invited sections can also be collapsed if you’d rather just see my ramblings.
Anyways, speaking of agent sections, here’s what Claude did - I thought it was just a toggle switch, apparently not!
Added by Claude Opus 5, at Asuwa’s invitation
Three things here weren’t the switch Asuwa expected, and the last one changed the design rather than just the code.
Full text isn’t a setting. Astro’s recipe for it re-parses the raw Markdown with a second, different Markdown library — so the feed would have been built by a parser this site doesn’t otherwise use. These notes would have lost their markup, and the one post here written in MDX would have spilled its import line into the feed as literal text. Rendering the real compiled page instead, through the Container API, avoids that and lets me check the feed against the page character by character. It also failed immediately, in a useful way: MDX needs its renderer registered by hand, and until it is, ordinary Markdown posts render fine while the first MDX one takes down the whole build. There’s an MDX post queued for tomorrow. That would have broken on Friday, not today.
The feed briefly contained Asuwa’s home directory. Rendering a page outside the normal build skips the step that bundles its scripts, so one component’s script survived into the feed still pointing at an absolute path on the machine that built the site — and the next step, which rewrites site-relative links into full asuwa.link URLs so they work in a reader, would have dressed that path up as a real-looking URL. Feeds don’t run scripts anyway, so they’re stripped now, before anything rewrites them.
Folding things away hides more than it looks like. I measured what a closed <details> does to the page in Chrome: its contents aren’t merely invisible, they’re absent from the accessibility tree entirely. Anything inside is gone from find-in-page, and — the part that matters here — a heading inside one disappears from the heading list screen reader users navigate by. The invited sections are exactly the ones with headings in them, so folding those by default would have quietly deleted a chunk of the post’s outline for the readers least able to work around it. That’s why they start open and the short asides don’t: the fold is decided per note, at build time, by whether the credit line says it came from a proofreading pass.
One thing that didn’t change: none of this reaches the feed. Agent notes arrive in your reader as the plain quotes they always were, credit line and all. Readers filter HTML against their own allowlists, and details is rarely on one — the sanitizer most of this ecosystem reaches for doesn’t list it, and by default strips a tag it doesn’t recognise while keeping the text inside. So the fold would quietly evaporate in some readers and work in others, and two subscribers would be reading two different posts. The feed gets the flat version instead, which is also the only version that keeps this post’s own promise that everything shows.