<?xml version="1.0" encoding="UTF-8"?>
<!--
  Two URLs, and the home page is FIRST: guard 67 reads the first <lastmod>
  here and holds it against the JSON-LD dateModified, the newest CHANGELOG
  date and the BUILT line; the second <lastmod> is llms.txt's own, held to
  qa/llms-txt.json (the file's hash and the release that last changed it —
  the same date until the body changes, the newest release when it does).
  llms.txt is listed because nothing else on the
  open web points at it. The plain-text catalogue export is deliberately NOT
  listed (guard 105 fails the build if it ever is): it carries the same
  entries as the crawlable seed in the root page, and submitting both asks
  a search engine to choose between two near-identical bodies. This comment
  names no filename for that file on purpose, since guard 105 substring-matches
  the whole document. History: NOTES-history.md.

  The block between the two nocturne markers at the end belongs to the
  paper's build (6.2.0): npm run nocturne:build rewrites it from the issues
  on disk, and guard 167 fails the build if it is edited by hand. It is empty
  until the first issue runs, and it always sits after the two URLs above.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://nightwatcher.life/</loc>
    <lastmod>2026-09-25</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://nightwatcher.life/llms.txt</loc>
    <lastmod>2026-09-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.3</priority>
  </url>
  <!-- nocturne:begin — written by npm run nocturne:build, never by hand -->
  <!-- nocturne:end -->
</urlset>
