Bingo implementation structure

Client · Shared · Server(API, Matchmaking, Session, Play) — same layout and responsibilities in every language

Bingo implementation structure Client · Shared · Server(API, Matchmaking, Session, Play) — same layout and responsibilities in every language Bingo Sample · Architecture component Bingo Sample Client · Architecture component Client Program · Architecture component Program Scenario · Architecture component Scenario Shared · Architecture component Shared Configuration · Architecture component Configuration Protobuf · Contracts · Architecture component Protobuf Contracts Server · Architecture component Server API · Architecture component API Program · Architecture component Program Handlers · Architecture component Handlers Player Record · Store · Architecture component Player Record Store Matchmaking · Architecture component Matchmaking Program · Architecture component Program Application · Architecture component Application Infrastructure · Architecture component Infrastructure Redis Adapter · Architecture component Redis Adapter Instance Spot · Adapter · Architecture component Instance Spot Adapter Session · Architecture component Session Program · Architecture component Program STREAM Session · Architecture component STREAM Session Handlers · Architecture component Handlers Play · Architecture component Play Program · Architecture component Program Domain · Architecture component Domain Bingo Card · Architecture component Bingo Card Bingo Game · Architecture component Bingo Game Bingo Room · State · Architecture component Bingo Room State Infrastructure · Architecture component Infrastructure Player Actor · Architecture component Player Actor Actor Relocation · Adapter · Architecture component Actor Relocation Adapter Entry Spot · Architecture component Entry Spot Handlers · Architecture component Handlers Bingo Room Spot · Architecture component Bingo Room Spot Room Relocation · Adapter · Architecture component Room Relocation Adapter Handlers · Architecture component Handlers

Client and Shared

  • • Client/Program configures the STREAM connector and runs the scenario once; Client/Scenario owns the §9 assertion order from authentication through stopping observation.
  • • Shared/Configuration owns the role names, Channel/Mesh names, and sample configuration keys; Shared/Protobuf Contracts owns the same bingo_messages.proto schema and packet names.

Server / API and Matchmaking

  • • API → Program, Handlers, Player Record Store: owns authentication, player record, and matching-coordination handlers.
  • • Matchmaking → Program, Application (waiting-room reservation use case), Infrastructure → Redis Adapter, Instance Spot Adapter. The Redis client is placed only under Matchmaking's Infrastructure.

Server / Session and Play

  • • Session → Program, STREAM Session → Handlers: owns the STREAM session, pre-auth dispatch, and Actor binding/relay.
  • • Play → Program; Domain → Bingo Card, Bingo Game, Bingo Room State; Infrastructure → Player Actor (Actor Relocation Adapter), Entry Spot (Handlers), Bingo Room Spot (Room Relocation Adapter, Handlers).
  • • Domain has no Framework, Redis, STREAM, codec, or endpoint types. Merging roles or moving them to a different layer in only one language isn't allowed.