{"service":"onboarding-service","aggregate":"PlayerOnboarding","topic":"onboarding.events","steps":["Player registers","Invitation is accepted","Team is assigned","Account is activated","Game can be started"],"commandEndpoints":["POST /api/onboarding/register","POST /api/onboarding/login","GET /api/onboarding/me","POST /api/onboarding/invites/{invite_id}/accept","POST /api/onboarding/teams/assign","POST /api/onboarding/players/{player_id}/activate","POST /api/onboarding/demo/complete","POST /api/onboarding/demo/kafka","GET /api/onboarding/observability","GET /api/onboarding/metrics"],"commands":["RegisterPlayer","AcceptInvite","AssignTeam","ActivatePlayer","PublishDegreeProgramSelection"],"events":["PlayerRegistered","InviteAccepted","TeamAssigned","PlayerActivated","DegreeProgramSelected"],"policies":["A player can only be assigned to a team after accepting an invitation.","A team can contain at most 5 members in the MVP.","Only active players are allowed to start the game."]}