<?xml version="1.0" encoding="UTF-8"?>
<!--
  One URL, because the site is one document. The six sections are fragments, and
  fragments do not belong in a sitemap: a crawler told about `#work` will either
  ignore it or treat it as a duplicate of `/`.

  No `hreflang` alternates, deliberately. The site is genuinely bilingual, but the
  language is a client-side preference held in `localStorage` with no URL of its
  own, so there is no second address to point at. Declaring `?lang=en` here would
  advertise a URL that serves the French document and switches nothing. Real
  bilingual indexing needs language-specific routes, which is a change to the site
  model rather than a metadata fix, and is the owner's call.

  The origin must match `SITE_URL` in `src/data/site.ts` and the canonical link in
  `index.html`. It was an assumption until v0.9.1 and is now confirmed; `seo.test.ts`
  asserts the three agree.

  No `lastmod`, and that is a decision rather than an omission. Google uses it only
  where it has learned to trust it and discounts it entirely where it has not, so an
  inaccurate one is worse than none — and every cheap way to produce it here is
  inaccurate. The build date says the content changed when only a rebuild happened;
  file mtimes are the clone time on a fresh checkout, which is every CI run. A single
  URL that changes a few times a month gains nothing from the field that would justify
  publishing a date this site cannot stand behind.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://leo-gregori.dev/</loc>
    <changefreq>monthly</changefreq>
    <priority>1.0</priority>
  </url>
</urlset>
