33 lines
1.4 KiB
Markdown
33 lines
1.4 KiB
Markdown
# LNM Backfill Plan (DEVOPS-LNM-22-001)
|
|
|
|
## Goal
|
|
Run staging backfill for advisory observations/linksets, validate counts/conflicts, and document rollout steps for production.
|
|
|
|
## Prereqs
|
|
- Concelier API CCLN0102 available (advisory/linkset endpoints stable).
|
|
- Staging Mongo snapshot taken (pre-backfill) and stored at `s3://staging-backups/concelier-pre-lnmbf.gz`.
|
|
- NATS/Redis staging brokers reachable.
|
|
|
|
## Steps
|
|
1) Seed snapshot
|
|
- Restore staging Mongo from pre-backfill snapshot.
|
|
2) Run backfill job
|
|
- `dotnet run --project src/Concelier/StellaOps.Concelier.Backfill -- --mode=observations --batch-size=500 --max-conflicts=0`
|
|
- `dotnet run --project src/Concelier/StellaOps.Concelier.Backfill -- --mode=linksets --batch-size=500 --max-conflicts=0`
|
|
3) Validate counts
|
|
- Compare `advisory_observations_total` and `linksets_total` vs expected inventory; export to `.artifacts/lnm-counts.json`.
|
|
- Check conflict log `.artifacts/lnm-conflicts.ndjson` (must be empty).
|
|
4) Events/NATS smoke
|
|
- Ensure `concelier.lnm.backfill.completed` emitted; verify Redis/NATS queues drained.
|
|
5) Roll-forward checklist
|
|
- Promote batch size to 2000 for prod, keep `--max-conflicts=0`.
|
|
- Schedule maintenance window, ensure snapshot available for rollback.
|
|
|
|
## Outputs
|
|
- `.artifacts/lnm-counts.json`
|
|
- `.artifacts/lnm-conflicts.ndjson` (empty)
|
|
- Log of job runtime + throughput.
|
|
|
|
## Acceptance
|
|
- Zero conflicts; counts match expected; events emitted; rollback plan documented.
|