Skip to content

Product-Level Modules

Last reviewed: 2026-06-30

Product-level modules are cross-platform. They should not depend on a single platform implementation unless a specific operation requires app-scoped data.

Customers represent product users. They can have multiple identities and operational records. Current APIs are app-scoped, but the product model should preserve a path to cross-platform customer views.

Identity links anonymous installs, Firebase identifiers, app account tokens and explicit provider identities. Better Auth is a dependency in the repo, but the current implemented customer identity stack is the custom Product OS identity/auth experience code, not a completed Better Auth product surface.

Entitlements are the durable access layer across purchase providers. Store-specific claims should normalize into entitlement state instead of becoming separate product truths.

Usage and analytics events are normalized with tenant/app/customer context. The queue/R2 path is intended to feed ClickHouse analytics.

Tickets can originate from admin-created records, runtime submissions or inbound email. Replies and status updates stay tenant/app scoped.