3.0 KiB
3.0 KiB
id, title, status, type, team, supporting_teams, roadmap_item, priority
| id | title | status | type | team | supporting_teams | roadmap_item | priority | |
|---|---|---|---|---|---|---|---|---|
| TASK-120 | Integrate AdminLog ingestion into RCON historical worker | pending | backend | Backend Senior |
|
rcon-full-data | high |
TASK-120 - Integrate AdminLog ingestion into RCON historical worker
Goal
Automatically ingest RCON AdminLog events during the periodic RCON historical worker capture flow.
Background
HLL Vietnam is moving to an RCON-first historical/live data platform. Manual AdminLog ingestion already exists and has been validated with duplicate-safe canonical message storage. The periodic worker should keep collecting this data automatically after or alongside existing session/gamestate capture.
Constraints
- Do not reactivate Elo/MMR.
- Do not reintroduce Comunidad Hispana #03.
- Do not store secrets, runtime DB files or
backend/runtime. - Do not modify Docker behavior.
- Do not change frontend files.
- Preserve existing writer lock behavior.
- If AdminLog ingestion fails for one target, normal session capture for other targets must continue.
- Public scoreboard remains optional enrichment/fallback only.
Allowed Changes
backend/app/rcon_historical_worker.py- tests only if needed for worker payload behavior
- this task file when moving it through the workflow
Implementation Requirements
- Work from a dedicated branch for this task.
- Read first:
AGENTS.mdai/architecture-index.mdai/repo-context.mdai/orchestrator/backend-senior.mdbackend/app/rcon_historical_worker.pybackend/app/rcon_admin_log_ingestion.pybackend/app/rcon_admin_log_storage.py
- Reuse existing AdminLog ingestion and storage modules.
- Add a configurable AdminLog lookback window, defaulting to 60 minutes.
- Prefer project-consistent naming such as
HLL_BACKEND_RCON_ADMIN_LOG_LOOKBACK_MINUTES=60. - Do not hardcode
1440for the periodic worker. - Keep the manual backfill command able to support
--minutes 1440. - Extend worker results with:
admin_log_events_seenadmin_log_events_insertedadmin_log_duplicate_eventsadmin_log_failed_targets
- Keep changes deterministic and idempotent.
Validation Commands
python -m compileall backend/appdocker compose up -d --build backend rcon-historical-workerdocker compose exec backend python -m app.rcon_historical_worker capture- Run AdminLog ingestion twice and confirm dedupe still reports duplicates on the second run.
Manual Verification Steps
- Confirm worker capture returns normal session/gamestate data plus AdminLog metrics.
- Confirm an AdminLog failure for one target is reported without breaking all target capture.
- Confirm
/healthstill works. - Confirm
git diff --name-onlymatches the allowed scope.
Git Requirements
- Create a dedicated branch for this task, for example
codex/task-120-adminlog-worker-ingestion. - Run relevant validation before committing.
- Stage only intended files.
- Commit the completed implementation.
- Push the branch to origin.