Skip to content

[Data Source] Ingest Missouri SOS current-cycle candidates, ballot measures, and results #186

Description

@ThatXliner

Goal

Add a current-cycle-only Missouri election scraper and API reader using official Missouri Secretary of State sources.

Official sources

Scope

  • Discover the active primary/general election rather than hard-coding archival URLs.
  • Parse certified candidates in ballot order: office, district, party, name, and withdrawal status.
  • Parse only certified 2026 measures: official title, fair ballot language, fiscal statement, election date, full-text/certificate URLs, and provenance.
  • Ingest official results when published; before election night, fail soft with a clear unavailable diagnostic.
  • Persist through the provider-neutral election model from Add North Carolina and Texas civic data scrapers #181 with checksums, source versions, certification status, and citations.
  • Exclude candidate addresses/contact information and all voter-level data. Do not expose historical-cycle browsing.

Acceptance criteria

  • Deterministic fixtures/tests cover ballot order, withdrawals, parties/districts, certified measures, and unavailable/updated results.
  • Shared retry/backoff, respectful concurrency, idempotent upserts, max-items env contract, API reader, and documentation.
  • Scraper/API/DB tests and typechecks pass.

No API key is required.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: businessFunding, legal, partnerships, opsarea: scrapersapps/scraper (data source scrapers)enhancementNew feature or requestsourceRelated to news/information sources e.g. scrapers

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions