<?xml version="1.0" encoding="UTF-8"?>
<!--
  Static RSS feed for kyren.app/blog.
  NOTE: this is hand-maintained. When you add a post in
  src/content/blog/*.md, add a matching <item> here (newest first) and update
  <lastBuildDate>. A generator script is a low-effort future improvement
  (see scripts/ — TODO: gen-rss from the same frontmatter).
-->
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Kyren — Writing</title>
    <link>https://kyren.app/blog</link>
    <description>Notes on RAG, evaluation, Postgres, and shipping small products well. By Masato.</description>
    <language>en</language>
    <atom:link href="https://kyren.app/blog/rss.xml" rel="self" type="application/rss+xml" />
    <lastBuildDate>Fri, 12 Jun 2026 00:00:00 GMT</lastBuildDate>
    <item>
      <title>A public demo without breaking per-user RLS</title>
      <link>https://kyren.app/blog/2026-06-12-public-demo-without-breaking-rls</link>
      <guid isPermaLink="true">https://kyren.app/blog/2026-06-12-public-demo-without-breaking-rls</guid>
      <description>Layering an anonymous demo route on top of strict per-user row-level security in Postgres — using additive permissive policies instead of a magic sentinel UUID. Trade-offs documented.</description>
      <pubDate>Fri, 12 Jun 2026 00:00:00 GMT</pubDate>
    </item>
  </channel>
</rss>
