mirror of
https://github.com/jhd3197/ServerKit.git
synced 2026-11-09 05:24:49 +09:00
A managed-sites base domain that contains the panel's own hostname is a wildcard footgun: *.<base> also matches the panel host, so it keeps resolving only while the panel's explicit DNS record out-specifies the wildcard (or, when base == panel domain, the wildcard setup's apex record repoints the panel itself). Add a fourth publishing gap that detects this and nudges admins. base_domain_overlaps_panel() flags panel host == base and panel host as a direct single-label child of base; a deeper descendant (a.b.<base>) is safe because a wildcard is single-label. It reads the panel's genuinely-configured domain (canonical_domain / PUBLIC_URL), not panel_origin's base-domain fallback — that fallback would equate panel with base and both mask real overlaps and break the subdomain-vs-apex suggestion. Proven in test_sites_publishing_gaps.py: equal-domain and direct-child overlap, deep-descendant and scoped-label (apps.<domain>) non-overlap. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>