1. Official Data Sources & Provenance

The monitoring system collects data exclusively from official, publicly published government sources:

Every collected raw HTML or CSV snapshot is cryptographically hashed (SHA-256) and archived in append-only storage. observed_at (when our collector fetched the data) is strictly distinguished from source_date (the official point-in-time timestamp assigned by MDULS).


2. Per-1,000 Normalization & Percentile Ranks

Serbian municipalities vary drastically in electorate size — from Crna Trava (~900 voters) to Novi Sad (~340,000 voters). Absolute counts cannot be compared directly.

All change categories are normalized per 1,000 registered voters using the municipality's baseline voter total:

Rate_per_1000 = (Event_Count / Baseline_Voters) × 1000.0

Municipalities are then ranked cross-sectionally to obtain national percentile ranks from 0.0% (lowest activity) to 100.0% (highest activity).


3. Provisional Anomaly Score V1 & Non-Overlapping Components

The Anomaly Score (0–100) measures how unusual a municipality's weekly roll activity is relative to national peers. In the current single-snapshot release, scores are strictly provisional cross-sectional indicators because historical voter delta, multi-snapshot deviation, and roll reconciliation cannot yet contribute.

Three Non-Overlapping Count Components & Derived Inflow Modifier: To prevent double-counting correlated activity, components are strictly partitioned:

The Small-Number Guard & Strong Evidence Rule: In small municipalities, tiny absolute counts (e.g. 2 residence registrations in Crna Trava) produce mathematically high per-1,000 rates. To prevent false alarms, our scoring engine applies an evidence dampening multiplier based on raw event count:

Evidence_Multiplier = min(1.0, max(0.20, Raw_Count / 12.0))

Furthermore, an EXTREME (80–100) score strictly requires substantial absolute scale (≥ 25 residence registrations or ≥ 40 total events) OR multiple independent strong components (≥ 18 pts each), preventing isolated small counts from breaching extreme bands.


4. Roll Reconciliation Mathematical Model

When multiple official voter snapshots exist, the system verifies internal arithmetic consistency:

Expected_Voters = Previous_Voters + Additions - Removals
Reconciliation_Gap = | Current_Voters - Expected_Voters |

Any non-zero reconciliation gap is flagged for audit, as it indicates additions or removals occurring outside standard published categories.


5. Address-Level Matching & Anomaly Signals

Aggregate address-voter data is deterministically matched against the complete 2.48M RGZ Address Register. Signals include:


6. Neutral Anomaly Terminology

All signals produced by this system represent statistical anomalies and data-quality indicators. They serve as objective pointers for public oversight and institutional verification. An anomaly flag does not automatically establish or infer fraudulent conduct.