<?xml version="1.0" encoding="UTF-8"?>
<!--
  Prose here uses an em dash, never a double hyphen: XML forbids that sequence inside a comment
  (XML 1.0 §2.5), and a parser rejects the whole document rather than just the comment. That
  shipped once. A sitemap that does not parse is not a worse sitemap, it is no sitemap, and the
  only place it reports as broken is inside Search Console. SitemapIsWellFormedTests catches it now.

  The only way Google finds an app here.

  The landing page has no links out, on purpose (frontend/src/Landing.jsx, PLAN.md §14 task 12),
  so every /{slug} is an orphan URL: nothing on the web points at it and a crawler has no path to
  walk. This file is that path. Without it, publishing an app and waiting is waiting forever.

  Hand-maintained, and that has a shelf life. The registry already knows which apps exist, which
  are enabled and which are public-scope, so the honest version of this file is generated from it
  alongside the `Indexable` flag of PLAN.md §16.4 — at which point an app is indexed because its
  owner said so, not because somebody remembered to edit XML. One app in, one line here; at three
  or four, generate it.

  The site root is deliberately absent: frontend/index.html carries `noindex, nofollow`, and
  listing a noindexed URL only earns a "Excluded by 'noindex' tag" warning in Search Console.
  Drop that meta tag first, then add / here.

  Trailing slash on /settlers/ because that is the app's canonical spelling: its server 301s
  /settlers to /settlers/ (colonist_clone server/src/app.ts), and a sitemap that lists the
  redirecting form asks every crawler to take two requests to learn what this file could have
  told it.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://www.stuffbyjason.com/settlers/</loc>
    <changefreq>weekly</changefreq>
  </url>
</urlset>
