Status: Accepted
Date: 2026-05-12
Decision#
Cross-product grants use signed entitlement claims issued by @oshun/identity.
V2 consumes claims, never raw source-product activity. The executable V2 adapter
is apps/v2/cross-product-entitlement; the shared claim evaluator is
libs/shared/identity/src/v2-entitlement-claims.ts.
Claim Shape#
Required fields:
claim_idsubject_account_idissuergrant_typegrant_payloadsource_sensitivityregion_constraintsissued_atexpires_atrevocation_urisignature
Privacy Rule#
Sensitive products must require explicit per-grant opt-in before any visible V2 title, badge, cosmetic, or lobby signal is shown. Aphrodite is the launch sensitive adult source. Aphrodite-derived grants require opt-in per individual grant plus an out-of-context warning, and V2 blocks implicit lobby / title / badge surfacing even after the grant is accepted.