146 lines
4.2 KiB
Markdown
146 lines
4.2 KiB
Markdown
---
|
|
id: TASK-final-maintenance-and-copy-validation
|
|
title: Final maintenance and copy validation
|
|
status: pending
|
|
type: platform
|
|
team: PM
|
|
supporting_teams: [Backend Senior, Frontend Senior, Arquitecto de Base de Datos]
|
|
roadmap_item: validation
|
|
priority: high
|
|
---
|
|
|
|
# TASK-final-maintenance-and-copy-validation - Final maintenance and copy validation
|
|
|
|
## Goal
|
|
|
|
Validate the database maintenance implementation, historical-runner integration, documentation and home copy update together before merge to main.
|
|
|
|
## Context
|
|
|
|
This task is a final validation task. It should not expand scope. It should verify that previous tasks work together and that the branch is safe to push/merge.
|
|
|
|
## Steps
|
|
|
|
1. Inspect the listed files first.
|
|
2. Run backend validations.
|
|
3. Run frontend validations.
|
|
4. Run Docker/local smoke checks where available.
|
|
5. Verify no unexpected files changed.
|
|
6. Commit/push only if this task produces documentation or small validation notes. Otherwise report validation results.
|
|
|
|
## Files to Read First
|
|
|
|
- `AGENTS.md`
|
|
- `ai/tasks/done/`
|
|
- `backend/app/database_maintenance.py`
|
|
- `backend/app/historical_runner.py`
|
|
- `docs/database-maintenance.md`
|
|
- `frontend/index.html`
|
|
|
|
## Expected Files to Modify
|
|
|
|
Normally none.
|
|
|
|
Optional only if the project convention requires a validation note:
|
|
|
|
- `ai/tasks/review/TASK-final-maintenance-and-copy-validation-report.md`
|
|
|
|
Do not modify runtime code unless a blocking validation issue is discovered. If a bug is discovered, create a follow-up task instead of expanding this validation task.
|
|
|
|
## Required Validation Commands
|
|
|
|
Run:
|
|
|
|
```powershell
|
|
python -m compileall backend/app
|
|
PYTHONPATH=backend python -m unittest backend.tests.test_database_maintenance
|
|
PYTHONPATH=backend python -m unittest backend.tests.test_historical_runner_maintenance
|
|
PYTHONPATH=backend python -m unittest discover -s backend/tests -p "*historical*"
|
|
node --check frontend/assets/js/main.js
|
|
node --check frontend/assets/js/historico.js
|
|
node --check frontend/assets/js/partida-actual.js
|
|
git diff --check
|
|
```
|
|
|
|
If a known unrelated test fails, document:
|
|
|
|
- exact failing test;
|
|
- why it is unrelated;
|
|
- whether this task introduced it.
|
|
|
|
Docker/local smoke checks:
|
|
|
|
```powershell
|
|
docker compose up -d --build backend frontend postgres
|
|
docker compose --profile advanced up -d --build historical-runner rcon-historical-worker
|
|
docker compose --profile advanced ps
|
|
docker compose logs --tail=200 historical-runner
|
|
```
|
|
|
|
Endpoint checks:
|
|
|
|
```powershell
|
|
Invoke-RestMethod "http://127.0.0.1:8000/api/historical/snapshots/recent-matches?server=all-servers&limit=10" | ConvertTo-Json -Depth 10
|
|
Invoke-RestMethod "http://127.0.0.1:8000/api/historical/snapshots/leaderboard?server=all-servers&timeframe=weekly&metric=kills&limit=10" | ConvertTo-Json -Depth 10
|
|
Invoke-RestMethod "http://127.0.0.1:8000/api/historical/snapshots/leaderboard?server=all-servers&timeframe=monthly&metric=kills&limit=10" | ConvertTo-Json -Depth 10
|
|
```
|
|
|
|
Maintenance dry-run:
|
|
|
|
```powershell
|
|
docker compose exec backend python -m app.database_maintenance cleanup --dry-run
|
|
```
|
|
|
|
Do not run destructive production apply during this validation unless the user explicitly asks.
|
|
|
|
Frontend visual checks:
|
|
|
|
`http://localhost:8080/?v=maintenance-copy-validation`
|
|
|
|
`http://localhost:8080/historico.html?v=maintenance-copy-validation`
|
|
|
|
`http://localhost:8080/partida-actual.html?server=comunidad-hispana-01&v=maintenance-copy-validation`
|
|
|
|
Expected frontend result:
|
|
|
|
- home does not show “HLL Vietnam” in the main hero;
|
|
- trailer still says “HLL Vietnam”;
|
|
- historical page loads;
|
|
- current match page loads.
|
|
|
|
## Constraints
|
|
|
|
- Do not add new services.
|
|
- Do not touch main directly.
|
|
- Do not run production destructive cleanup.
|
|
- Do not expand scope.
|
|
- Do not reintroduce RCON server #03.
|
|
- Do not modify unrelated UI.
|
|
|
|
## Outcome
|
|
|
|
Document:
|
|
|
|
- validation commands run;
|
|
- pass/fail result;
|
|
- Docker status;
|
|
- maintenance dry-run summary;
|
|
- endpoint summaries;
|
|
- any unrelated failures;
|
|
- whether branch was pushed.
|
|
|
|
Codex CLI must push the completed validation branch if any files changed.
|
|
|
|
Suggested implementation branch:
|
|
|
|
`task/final-maintenance-and-copy-validation`
|
|
|
|
Suggested commit message if a validation note is created:
|
|
|
|
`test: validate database maintenance and home copy`
|
|
|
|
## Change Budget
|
|
|
|
- Prefer no code changes.
|
|
- Validation/report only.
|