Create the Game Session Backend Module
Priority
P0 — Critical
Labels
backend game-engine feature priority: p0 help wanted
Description
Game sessions are a core part of Mind Block's gameplay experience.
A dedicated backend abstraction is required to represent an active gameplay session instead of relying on individual puzzle/progress records.
Objective
Create a dedicated NestJS game-sessions module.
Suggested Structure
backend/src/game-sessions/
├── game-sessions.module.ts
├── game-sessions.controller.ts
├── game-sessions.service.ts
├── entities/
├── dto/
├── interfaces/
└── tests/
Session States
The session should support:
- CREATED
- ACTIVE
- PAUSED
- COMPLETED
- EXPIRED
- ABANDONED
Suggested Fields
id
userId
guestId
status
difficulty
selectedCategories
challengeCount
currentChallenge
score
xpEarned
startedAt
completedAt
Requirements
Implement:
Session creation
Session retrieval
Session ownership
Session status management
Session state transitions
Session completion
Session expiration
Validation of invalid state transitions
Acceptance Criteria
Create the Game Session Backend Module
Priority
P0 — Critical
Labels
backendgame-enginefeaturepriority: p0help wantedDescription
Game sessions are a core part of Mind Block's gameplay experience.
A dedicated backend abstraction is required to represent an active gameplay session instead of relying on individual puzzle/progress records.
Objective
Create a dedicated NestJS
game-sessionsmodule.Suggested Structure
Session States
The session should support:
Suggested Fields
Requirements
Implement:
Session creation
Session retrieval
Session ownership
Session status management
Session state transitions
Session completion
Session expiration
Validation of invalid state transitions
Acceptance Criteria