78 lines
3.0 KiB
Markdown
78 lines
3.0 KiB
Markdown
# TASK-077-player-kill-event-source-adapter
|
|
|
|
## Goal
|
|
Implementar una primera capa/adaptador de fuente de eventos centrada en eventos de kill/death para preparar la V2 del sistema de métricas de jugador.
|
|
|
|
## Context
|
|
Las auditorías previas concluyen que el cliente RCON live actual no basta por sí solo para obtener directamente todos los agregados avanzados visibles en ecosistemas tipo CRCON/HLL Records. Para construir métricas como:
|
|
- killer -> victim
|
|
- most_killed
|
|
- death_by
|
|
- kills por arma
|
|
- teamkills por evento
|
|
|
|
hace falta una fuente de eventos o una adaptación técnica que permita modelar esos datos en bruto antes de agregarlos.
|
|
|
|
La V2 debe empezar por una primera capa mínima centrada en eventos de kill/death, sin abarcar todavía todo el resto de acciones tácticas.
|
|
|
|
## Steps
|
|
1. Revisar las auditorías y documentos de diseño V2:
|
|
- docs/rcon-data-capability-audit.md
|
|
- docs/crcon-advanced-metrics-origin-audit.md
|
|
- docs/player-event-pipeline-v2-design.md
|
|
2. Identificar la fuente o punto técnico más viable dentro del proyecto actual para empezar a capturar eventos de kill/death.
|
|
3. Diseñar e implementar un adaptador/fuente mínima para eventos de jugador que, como mínimo, pueda producir un formato común con campos base como:
|
|
- server
|
|
- match
|
|
- timestamp
|
|
- killer
|
|
- victim
|
|
- weapon si existe
|
|
- teamkill si existe
|
|
4. Mantener esta capa desacoplada de la persistencia final.
|
|
5. Documentar claramente:
|
|
- qué datos se capturan realmente en esta fase
|
|
- qué datos siguen fuera de alcance
|
|
6. No implementar todavía snapshots/UI del MVP V2.
|
|
7. No romper live RCON ni el histórico actual.
|
|
8. Al completar la implementación:
|
|
- dejar el repositorio consistente
|
|
- hacer commit
|
|
- hacer push al remoto si el entorno lo permite
|
|
|
|
## Files to Read First
|
|
- AGENTS.md
|
|
- ai/repo-context.md
|
|
- ai/architecture-index.md
|
|
- docs/rcon-data-capability-audit.md
|
|
- docs/crcon-advanced-metrics-origin-audit.md
|
|
- docs/player-event-pipeline-v2-design.md
|
|
- backend/README.md
|
|
- backend/app/rcon_client.py
|
|
- backend/app/providers/rcon_provider.py
|
|
- backend/app/data_sources.py
|
|
|
|
## Expected Files to Modify
|
|
- backend/README.md
|
|
- opcionalmente nuevos módulos, por ejemplo:
|
|
- backend/app/player_event_source.py
|
|
- backend/app/providers/player_event_source_provider.py
|
|
- backend/app/event_sources/*.py
|
|
- opcionalmente ai/architecture-index.md si conviene enlazar la nueva pieza
|
|
|
|
## Constraints
|
|
- No implementar todavía agregados finales ni UI.
|
|
- No romper el proveedor RCON live actual.
|
|
- No hacer cambios destructivos.
|
|
- Mantener el trabajo centrado en una fuente mínima de eventos kill/death.
|
|
|
|
## Validation
|
|
- Existe una capa/adaptador clara para eventos de kill/death.
|
|
- Produce un formato mínimo reutilizable por la persistencia posterior.
|
|
- Queda documentado qué cubre y qué no cubre todavía.
|
|
- Los cambios quedan committeados y se hace push si el entorno lo permite.
|
|
|
|
## Change Budget
|
|
- Preferir menos de 6 archivos modificados o creados.
|
|
- Preferir menos de 240 líneas cambiadas.
|