Electoral Analysis Project 2010–2026 · 4 November 2026

Review of v0.4

Rationale for decisions arising from earlier reviews, with a check of their implementation in the Rio de Janeiro municipal pilot.

Conclusion

Approve v0.4 as a record of the revised design, municipal reconciliation and exploratory test of a historical benchmark. The confirmatory stage requires calibration, simulations and documented validation rules. The supplied PDF summarises the v0.3 decisions and records how methodological feedback was incorporated.

The review compared the 21 decisions in v0.4 §14 with the original reviews, the four counter-analysis points and the supplied summary. Methodological decisions and implementation status appear in separate columns.

Clarifications on the PDF

  1. Choice of technique. Version 0.4 presents candidate models and sensitivity analyses. Compositions, BYM2, matching, ecological inference and multiple-testing correction remain in the protocol. The pilot ran a simple historical benchmark.
  2. Mandatory controls. The inventory must cover biometrics, electoral registration, state races and conditions affecting access. Quantitative inclusion depends on comparable data and enough variation to estimate an effect.
  3. Primary source and scale. Municipal ingestion uses official municipality and electoral zone packages. Section-level data are relevant to the local phase. The manifest and scripts are available. A container is a planned deliverable.
  4. Scope of the objection to municipal filtering. The Advisory Panel recommends restricting shrinkage and ecological inference to flagged units. Version 0.4 separates screening coverage from priorities for detailed investigation. This preserves the analysis of eligible locations outside flagged municipalities.
  5. Validation and blinding. Holding out data and recording access are operational requirements. Araruama, Resende and Volta Redonda were already exploratory cases. The pilot accessed 2022 outcomes and 2026 municipal data.

Methods and controls

Recommendation and sourceDecision and rationaleStatus in v0.4
M01 · Compositional modellingReport, §1 · PDF, p. 1 · v0.4, §09Adapted
Categories in a round form a composition when they are mutually exclusive and use the same electorate. The logistic-normal multinomial is the main candidate. The Dirichlet-multinomial provides a sensitivity alternative. ALR and ILR can be used for positive proportions. CLR requires care because of the sum constraint. Signed gains and structural zeros require separate treatment.
Planned. The pilot fitted no compositional model family.
M02 · R × C ecological inferenceBoth, p. 1 · Counter-analysis, point 2 · v0.4, §§09 and 15Adapted
Aggregate margins allow multiple transition matrices. The optional module can estimate matrices conditional on assumptions, with accounting bounds, intervals and sensitivity analyses. The proposal to recover individual flows was rejected. The distinction between observed, derived and estimated quantities is mandatory.
Planned and optional. The pilot calculated changes without estimating transitions.
M03 · Shrinkage and partial poolingReport, §2 · Advisory Panel, §3 · v0.4, §09Accepted with limits
Sharing information across comparable units can stabilise parameters in small locations and can also attenuate genuine signals. Compare estimates with raw rates and test sensitivity. The ratio ΔF/O₁ remains descriptive and is undefined when O₁ is zero.
Planned. The pilot did not apply shrinkage.
M04 · False discoveriesReport, §2 · v0.4, §11Adapted
The proposed municipal family has one two-sided joint test per eligible municipality. BY is the conservative default for a nominal 5% FDR with valid p-values. BH requires justified assumptions, and local FDR remains exploratory. Correction requires prior calibration.
Proposed rule. The pilot ran no confirmatory municipal test.
M05 · Municipality matchingReport, §3 · v0.4, §10Adapted
Regularised Mahalanobis matching or CEM allows an audit of the selection when combined with common support, a caliper, balance checks and pre-outcome covariates. The propensity score was set aside for this initial purpose because exposure was undefined.
Planned. No matching has been validated.
M06 · Spatial dependenceReport, §3 · v0.4, §09Accepted as a candidate
An adjacency matrix and BYM2 extension allow testing of the benefit of modelling spatial dependence. Smoothing can absorb collective signals. Compare with a model without a spatial component using holdout blocks.
Planned. Spatial matrix and BYM2 pending.
C01 · Biometrics and registrationBoth, pp. 1–2 · v0.4, §09Adapted
Inventory biometric coverage, registration reviews and cancellations separately. Quantitative use depends on coverage and quality. A lack of biometric registration alone does not establish that someone was unable to vote.
Inventory planned. Effects remain unestimated.
C02 · State run-offBoth, pp. 1–2 · v0.4, §09Accepted with a condition
This indicator is shared by all municipalities in a state in the same election. In Rio de Janeiro alone, its contribution may be confounded with the year effect. Estimation requires variation that can distinguish the two effects.
Inventory planned. Effect remains unestimated.
C03 · Weather, transport and accessReport, §4 · v0.4, §09Accepted with a condition
Start with documented records for both rounds. Inclusion in the model depends on comparable measures and sufficient coverage. A missing observation cannot establish that an event did not occur.
Checklist planned. The pilot did not incorporate these covariates.

Data, implementation and governance

Recommendation and sourceDecision and rationaleStatus in v0.4
S01 · Municipal pilot before local analysisAdvisory Panel, §§1 and 3 · v0.4, §§03, 13 and 17Accepted
The municipal pilot can use official aggregates and lets the first run proceed before historical polling places are reconstructed. The local and cross-state phase follows its own criteria.
Dataset covering the 92 municipalities delivered. Local and cross-state work pending.
D01 · Ingestion from official sourcesBoth · v0.4, §§04 and 17Accepted with a change in scale
The primary source is mandatory. The municipal phase used detalhe_votacao_munzona and votacao_candidato_munzona, filtered to the presidential race in Rio de Janeiro. The section-level packages suggested in the reviews will serve the phase that needs that level of detail.
Completed. The manifest lists ten packages, and the example counts were checked.
G01 · SHA-256 and execution environmentAdvisory Panel, §1 · v0.4, §§04 and 13Accepted
The hash helps verify whether the reproduced bytes match the recorded version. Environment configuration allows a rerun under the same conditions. The two measures address distinct aspects of traceability.
Partial. The package includes a manifest, scripts and Python and pandas versions. The planned container configuration is still pending.
D02 · Electoral universe and exceptionsReport, §5 · v0.4, §§04 and 17Adapted
Check eligible voters, turnout, votes and special categories by office and round. Distinguish out-of-district voting and temporary transfers from justifications of absence. Use the published universe until an adjustment has documentary support.
Partial. The counts reconcile and records marked as out-of-district are separated. The reason eligible voter totals differ between rounds and the location of the 39 duplicate origin records reported nationwide in 2026 remain open.
D03 · Historical polling place linksReport, §5 · Counter-analysis, point 3 · v0.4, §§04 and 15Adapted
Coordinates, names and addresses are supporting clues. Section composition and administrative records support Class A (documented), used in the main comparison. Class B (probable) is for sensitivity checks. Class C (unresolved) may enter cross-sectional screening if eligible.
Classification defined. Historical links and coverage by class remain pending.
S02 · Restrict polling places to flagged municipalitiesAdvisory Panel, §3 · Counter-analysis, point 1 · v0.4, §§03, 11, 13 and 15Rejected
Local deviations can cancel out or be diluted in the municipal aggregate. Screening covers all eligible polling places. Municipal results guide the priority for detailed investigation. Record exclusions and coverage also in municipalities with no aggregate signal.
Coverage rule defined. Local screening pending.
P01 · Protocol and blindingAdvisory Panel, §§1–2 · v0.4, §§11 and 17Adapted
Record hypotheses, rules, exclusions and holdout sets before the respective tests. The three examples were already known, and ingestion accessed 2026 data. Any adjustment prompted by 2022 makes that round part of development.
Prior exposure recorded in part. Freezing the protocol and operationally separating the sets remain pending.
P02 · ParsimonyAdvisory Panel, §§1–2 · v0.4, §§09–11Accepted
Start with comparable, low-cost variables. A small number of elections limits temporal validation even with many municipalities. Add groups of covariates according to performance, coverage and cost.
One historical benchmark was run. Comparison with the core model and extensions is pending.
P03 · Claim of over 90% powerAdvisory Panel, §1.5 · Counter-analysis, point 4 · v0.4, §§11 and 15Rejected
The review provides no operational definition of power, reference model, deviation scenario or experiment supporting the percentage. Parsimony remains a principle for implementation.
No comparative power estimate. Measurement requires simulations with known magnitudes and holdout data.

Communication and interpretation

Recommendation and sourceDecision and rationaleStatus in v0.4
V01 · Waterfall or SankeyAdvisory Panel, §1 · v0.4, §§08–09Accepted with a choice
The waterfall shows accounting contributions on a common basis. A Sankey diagram of transitions requires known or estimated flows, explicit labels and uncertainty.
Three SVG waterfall charts published. No chart of estimated transfers.
I01 · Abstention and gain ratioAdvisory Panel, §1 · v0.4, §§06 and 10Corrected
With the other components held constant, lower abstention increases the finalists' combined gain. The accounting identity leaves the distribution of the gain across candidates undetermined. The individual ratio also depends on O₁.
Identities checked in the pilot. Individual interpretation remains undetermined.
I02 · Statistical signal and evidenceBoth · v0.4, §§12 and 17Accepted
Reconciliation checks the consistency of records. A statistical deviation measures discrepancy against a model and can guide investigation. Attributing it to manipulation requires additional evidence about the mechanism.
Reconciliation completed for the pilot universe. Confirmatory flagging pending.

Pilot verification

I checked the package CSVs for the 920 municipality–round records, the 2,148 corresponding zone keys and the 460 pairs of rounds. All recorded residuals for the identities checked were zero. From the CSVs, I reran the 2022 benchmark and checked the 54 counts in the three examples. This review verifies the published outputs and reproduction from the processed panel. Fresh ingestion of the ten primary ZIP files was outside this check.

The exploratory band uses the 90th percentile of historical errors when one election is left out at a time. Applied to 2022, it covered 26.1% of municipalities for the change in valid votes, 34.8% for abstention and 23.9% for the gain of the other finalist, defined by the ranking of the two in the municipal first round. The benchmark has insufficient coverage for these indicators. These percentages measure observed coverage. The Panel's 90% claim concerned discriminatory power.

The Executive Note and Technical Documents I and II address independent evidence of the electronic system in a sample. The v0.4 panel uses TSE records. It documents consistency and guides investigations of deviations. Independently verifying voters' intent requires a source with the properties described in those documents.

Priorities for the next review

  1. State the status of each deliverable in §13. Separate the completed panel and benchmark from the pending full registration reconciliation, container environment and modelling.
  2. Set the primary statistic, exclusions and criteria for proceeding. Record access to outcomes and hold out suitable sets for the next round of work.
  3. Compare the benchmark, compositional core and spatial extension on the same splits. Measure coverage and false positives, and assess sensitivity in simulations with known deviations. Apply FDR to the 2026 assessment only with calibrated p-values.

The benchmark inspired by Mahlmeister appears in v0.4 as a proposal for future approval and reproduction in a separate session. The 2022 temporal test described here uses the historical municipal median.

Documents consulted

Some supporting documents are identified by title.