# Implementation status

Every row cites the code, test or decision it rests on. "Implemented" means
the behaviour exists in `services/*` with tests; it does not mean it has run in
production or against real partner traffic. Demo-only means it exists only as
simulated or in-browser code. See [Contributing to the docs](contributing/docs.md)
for how labels are assigned.

## Capabilities

| Capability | Status | Evidence |
|---|---|---|
| Player sign-in (passkey, password, social) through Nest and the IAM | Implemented | [ADR 0024](decisions/0024-nest-owned-portal-auth.md), [oidc.service.ts](../services/api/src/auth/oidc.service.ts) |
| No player email, name or phone held by PlayerPal | Implemented in code and tests; live social sign-in hop not yet captured | [ADR 0012](decisions/0012-never-receive-player-pii.md), [oidc.claims.spec.ts](../services/api/src/auth/oidc.claims.spec.ts), [Personal data](security-privacy/personal-data.md) |
| Linking and pairwise aliases | Implemented | [ADR 0027](decisions/0027-alias-provisioning-at-link.md), [linking.controller.ts](../services/api/src/linking/linking.controller.ts), [link-intent.service.spec.ts](../services/api/src/linking/link-intent.service.spec.ts) |
| Unlink and Delete Account | Implemented | [ADR 0030](decisions/0030-unlink-delete-on-playerpal-account.md), [identity-delete.spec.ts](../services/api/src/identity/identity-delete.spec.ts) |
| Activity batches and uploads | Implemented, behind the shared machine key (no per-partner credentials yet) | [activity.controller.ts](../services/api/src/activity/activity.controller.ts), [activity.controller.spec.ts](../services/api/src/activity/activity.controller.spec.ts) |
| Partner fact ingest (`/v1/ingest`, HMAC or partner OAuth) | Implemented | [ingest.controller.ts](../services/api/src/ingest/ingest.controller.ts), [Partner quickstart](developers/quickstart.mdx) |
| Points earning (ledger credits) | Implemented, credit only | [points-ledger.entity.ts](../services/api/src/db/entities/points-ledger.entity.ts) |
| Points redemption, debit and reversal in the API | Proposed | [Reward redemption lifecycle](shop/redemption-lifecycle.md) |
| Player shop, reward vault, store back office | In progress (demo only), unmerged branch `feat/player-shop` | [Reward redemption lifecycle](shop/redemption-lifecycle.md) |
| Partner KPIs through Cube | Implemented, over seeded and simulated data | [ADR 0033](decisions/0033-partner-kpi-platform.md), [kpi.catalogue.ts](../services/api/src/analytics/kpi/kpi.catalogue.ts), [Metric definitions](analytics/metrics.mdx) |
| Network comparison and benchmarks with anonymity floors | Implemented | [comparison.math.ts](../services/api/src/analytics/compare/comparison.math.ts) |
| AI insights and Ask | Implemented as deterministic rules; no language model | [detectors.ts](../services/api/src/analytics/intelligence/detectors.ts), [ask.service.ts](../services/api/src/analytics/intelligence/ask.service.ts) |
| Operator, provider, affiliate and staff portal sign-in | In progress (demo only): simulated sign-in | [portals.md](portals.md) |
| Workforce SSO for staff and partner staff | Proposed | [authentication.md](authentication.md) |
| Embeddable PlayerPal widget | In development: versioned releases are served by the API; the game-side integration exists only in demo code | [ADR 0025](decisions/0025-provider-launch-sessions-and-widget-distribution.md), [playerpal-widget](../demos/packages/playerpal-widget/src/index.ts) |
| Casino play continues when PlayerPal is unavailable | Decided; reference outbox implemented in the demo provider; no end-to-end test | [ADR 0015](decisions/0015-async-loyalty-sidecar.md), [Availability](developers/availability.mdx) |
| Reward-partner role and portal | Proposed (docs only) | [ADR 0001](decisions/0001-generic-party-model.md) |
| Go data-plane workers | Proposed | [services/worker](../services/worker/README.md) |
| Public documentation site | Proposed | [ADR 0034](decisions/0034-documentation-site.md) |

## Pages by status

Generated from each page's `status` front matter.

<StatusBoard />
