chore: Fix app

This commit is contained in:
2026-07-14 00:41:05 +02:00
parent 3e090933fd
commit edc4d935d8
98 changed files with 2878 additions and 155 deletions
@@ -0,0 +1,41 @@
# Game Activity Domain
Foreground-window-first game detection, RAWG matching, and P2P now-playing sync.
**Cross-context contract:** [`agents-docs/features/game-activity.md`](../../../../../agents-docs/features/game-activity.md)
## Module map
```
game-activity/
├── domain/
│ ├── game-activity.models.ts Shared-kernel types (re-exported)
│ └── game-activity-time.ts formatGameActivityElapsed()
├── application/
│ ├── game-activity.service.ts Scan loop, match cache, P2P broadcast
│ └── game-activity.service.spec.ts
└── index.ts
```
## Public entry points
| Export | Role |
|--------|------|
| `GameActivityService` | Started from `App` bootstrap; updates user store + broadcasts |
| `formatGameActivityElapsed()` | Profile card / sidebar elapsed time label |
## Dependencies
- `ElectronBridgeService` — process names and foreground candidate (desktop only)
- `ServerDirectoryFacade``POST /api/games/match` base URL
- `RealtimeSessionFacade` — P2P `game-activity` send/receive
## UI consumers
- Profile card components (`formatGameActivityElapsed`, `user.gameActivity`)
- Room side panel member list
## Boundaries
- Does not own RAWG API keys (server configuration).
- Browser/mobile shells do not scan processes locally.