<?xml version="1.0" encoding="UTF-8"?>
<!--
  The sitemap lists only the SPA routes that `src/App.tsx` actually renders.
  The legacy `/privacy.html` and `/terms.html` static pages were removed in
  favour of the React routes `/privacy` and `/terms`, so keeping them in the
  sitemap would cause Google to index two canonicals for the same content.

  `lastmod` is stamped at build time by the `stampSitemapLastmod` Vite
  plugin in `vite.config.ts`: every occurrence of `2026-04-22`
  below is replaced with today's UTC date during `vite build`. A
  defence-in-depth sweep in `assertNoBuildPlaceholders` fails the build
  if the placeholder ever survives into `dist/sitemap.xml`, so a stale
  signal cannot silently ship to crawlers. See issue #106.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://khatwa.app/</loc>
    <lastmod>2026-04-22</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://khatwa.app/privacy</loc>
    <lastmod>2026-04-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://khatwa.app/terms</loc>
    <lastmod>2026-04-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
</urlset>
