Hardened sitemap delivery + canonicalized retired product URLs

The /sitemap.xml route now has per-source timeouts and fallback handling so a slow data source cannot drop indexable URLs. Legacy /products/* URLs that have moved to /agent-services/* canonicalize via 308 redirect.
Per-source timeout + fallback on static, product, and pSEO entries
Dedup pass keeps the sitemap stable when sources overlap
LEGACY_SEO_REDIRECTS maps retired slugs to current canonical URLs