The anonymous route resolved every registry item on each request with no
throttle and no cache.
- surf bucket sitemap-xml: 60 requests a minute per client IP.
- The generated XML is cached for golem15.sitemap.cache_seconds (default
60, 0 off), keyed by root URL, definition and settings so a save shows
at once; one generation runs at a time.
- generator in Definition::addItemToSet order: 50000 URL cap, lastmod from
the record or the updates manifest (regular file, 5 MiB cap, fail safe),
BeforeAddItem (skip) and AddItem (extra XML) festival events, tier or item
priority, per-alternate expansion of list type children
- priority tiers from golem15.sitemap.priority_tiers, compiled at boot,
defaults equal to the PHP getPriorityForUrl rules
- frontend_url rewrite of loc, xhtml:link href and the stylesheet href;
GET /sitemap.xsl serves the PHP stylesheet byte for byte
- golem15_sitemap_settings singleton and Settings model
- sitemap:import (PHP ImportCommand) and sitemap:import-winter with the
read-only Winter export SQL
- urlto and full goldens generated from PHP; TestSitemapImportSmoke
- golem15.sitemap plugin: golem15_sitemap_definitions migration, Definition
model (Fillable theme and data) with tolerant PHP-shaped item decoding and
PHP toArray item encoding
- Url::to and buildUrl port, libxml-format serializer, generator for url and
registry items
- GET /sitemap.xml serves the definition with theme default (404 without one,
empty body without items)
- tests/php/gen-goldens.php and the tracer golden; TestSitemapGolden and the
Postgres TestSitemapTracer