docs release evidence p29 t01 capacity - AlexandreZanata/Abastevo GitHub Wiki
P29-T01 โ Capacity, freshness and review-backlog campaign
Status: LOCAL_DONE on codex/phase-29-catalog-acceptance. Task: P29-T01.
Binds B-BR-D02/D03/D05/D10/D12 and BUC-D06/D08. Scaled synthetic
campaign with budgets frozen before measuring; simulation only โ no
live national SLA and no 30-day service claim.
Frozen budgets and measured results (real PostGIS, disposable DBs)
| workload | budget | measured | verdict |
|---|---|---|---|
| 10,000-row stage (batch 500) | complete < 120 s, zero drops | 5.3 s @ ~1,889 rows/s, 10,000/10,000 accounted, heap +1.2 MB | PASS |
| 4-way ร 1,000 burst + 64 concurrent reads | read p95 < 500 ms | p95 553 ยตs | PASS |
| 48 h outage โ 2 backfills (500 novel each) | complete, no loss | 500 + 500 accepted | PASS |
| identical replay | converge, no duplicates | same run, counts stable | PASS |
| review backlog: batch 25 over 1,000 pending | < 5 s | 1.2 ms | PASS |
| heap growth (10k stage) | < 512 MB | ~1.2 MB | PASS |
| required indexes present | 5/5 | GIST point, municipality, active-identifier unique, run snapshot unique, assertion replay unique | PASS |
Freshness is reported per run (LastCompleteRegistryRun: snapshot,
finished_at, counts) โ source lag and eligibility-to-publication lag
stay separately visible; the internal 24/48 h objective counts from
sufficient evidence with unresolved/quarantined rows reported apart.
Validation
- NEW:
capacity_integration_test.go(5 tests,-race): throughput/ heap, burst-with-reads, outage catch-up, backlog batch, index presence. One real failure fixed honestly (identical day-2 content correctly deduped 0/500 โ test data now uses novel days). go vetclean;gofmtclean.git diff --checkPASS;scan-secrets.shPASS (synthetic[P29-TEST]data only).
Limits and next
- Scaled hypotheses (100k/10k/1k from the plan) are NOT proven at full scale here; national calibration with production-shaped hardware is explicitly future work โ no SLA claimed.
- Next: P29-T02 source-to-app lifecycle and affected device reacceptance.