Only real entitlement roots get the platform app rows

FixInitializerService
Shipped
August 9, 2026 at 2:06 AM UTC
Author
Kamo
Commit
6e67b6d

Owning subscription plans was treated as proof of being an entitlement root. It is not: a customer org runs its own commerce markets and sells its own plans while remaining a tenant, so the runner wrote the platform 21 app rows into that private catalog and made its Free plan the entitlement baseline for its own customers. Roots are now exactly what EntitlementRootResolver resolves to — the platform org, or one explicitly marked isPlatformProduct. A product org whose flag was never set is logged by name rather than seeded: marking it is a deliberate platform decision, not something to infer from the presence of plans.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing