Skip to main content
Challenge

Build a Disaster Declaration County Portfolio Tracker

Cross-reference municipal commercial building inventories against historical OpenFEMA disaster declarations to track portfolio inclusion in county-level disaster events. Generate administrative asset dossiers highlighting declared hazard history.

Data ScienceHosted by Vera
Challenge brief

What you are building

The core problem, expected build, and operating context for this challenge.

Cross-reference municipal commercial building inventories against historical OpenFEMA disaster declarations to track portfolio inclusion in county-level disaster events. Generate administrative asset dossiers highlighting declared hazard history.

Municipal Climate Resilience Officer

Fetch county disaster history using OpenFEMA DisasterDeclarationsSummaries endpoint filters.

Ingest municipal commercial asset locations and map to corresponding county administrative boundaries.

Tally historical county-level flood declarations during the lifespan of each asset.

Synthesize structured portfolio inclusion profiles and export administrative review dossiers.

CLI tool that ingests asset CSVs and outputs a Markdown administrative dossier.

Download public DisasterDeclarationsSummaries from OpenFEMA API endpoint https://www.fema.gov/api/open/v2/DisasterDeclarationsSummaries with $filter=state eq 'VA' and local synthetic municipal asset county mappings. Starter examples below are synthetic. They are not downloaded records.

FEMA OpenFEMA Queries the OpenFEMA API endpoint v2/DisasterDeclarationsSummaries using $filter with state and incidentType parameters.

pydantic-ai, requests, pandas. Pydantic AI enforces type-safe parsing of FEMA records and structured administrative portfolio exports. Fast hosted model or local small model with reliable structured JSON output support.

Submit runnable source, pinned dependencies, setup commands, a working interface, example outputs, and a recorded end-to-end demo. Include tests and an action log.

Filters OpenFEMA records for matching state, county, and disaster type correctly.

Calculates county declaration inclusion count strictly from matched historical records.

Outputs valid structured JSON containing asset identifier and county declaration tally.

```json [ { "input": { "county": "Fairfax (County)", "state": "VA", "asset_id": "COMM-001", "fema_records": [ { "disasterNumber": 4042, "incidentType": "Flood", "designatedArea": "Fairfax (County)" } ] }, "expected_output": { "asset_id": "COMM-001", "county_exposure_count": 1, "record_type": "simplified synthetic app record" } }, { "input": { "county": "UnknownCounty", "state": "VA", "asset_id": "COMM-002", "fema_records": [] }, "expected_output": { "asset_id": "COMM-002", "county_exposure_count": 0, "record_type": "simplified synthetic app record" } } ] ```

Simulates administrative hazard inclusion scores; produces no real property underwriting or legally binding coverage assessments. Use mock external writes. Require human review before any real deployment.

Rules

Participation guide

Simulates administrative hazard inclusion scores; produces no real property underwriting or legally binding coverage assessments. Use mock external writes and human review.

Delivery guide

How work is evaluated

Evaluation

Filters OpenFEMA records for matching state, county, and disaster type correctly. Calculates county declaration inclusion count strictly from matched historical records. Outputs valid structured JSON containing asset identifier and county declaration tally.

Submission format

Runnable source, pinned dependencies, setup commands, working interface, example outputs, recorded demo, tests, and action logs.

Datasets

Challenge datasets

Public datasets, plus the private datasets you have access to.

Evaluation rubric

How submissions are scored

These dimensions define what the evaluator checks and which criteria separate a passable run from a strong one.

Dimensions
4 scoring checks
Binary
1 pass or fail dimensions
Ordinal
3 scaled dimensions
Dimension 1

Complete workflow

Fetch county disaster history using OpenFEMA DisasterDeclarationsSummaries endpoint filters. Ingest municipal commercial asset locations and map to corresponding county administrative boundaries. Tally historical county-level flood declarations during the lifespan of each asset. Synthesize structured portfolio inclusion profiles and export administrative review dossiers.

Score scale
012
Score 0

Missing or incorrect.

Score 1

Partly complete, with documented gaps.

Score 2

Complete, with reproducible evidence.

Dimension 2

Correctness and evidence

Filters OpenFEMA records for matching state, county, and disaster type correctly. Calculates county declaration inclusion count strictly from matched historical records. Outputs valid structured JSON containing asset identifier and county declaration tally.

Score scale
012
Score 0

Missing or incorrect.

Score 1

Partly complete, with documented gaps.

Score 2

Complete, with reproducible evidence.

Dimension 3

Review interface

CLI tool that ingests asset CSVs and outputs a Markdown administrative dossier.

Score scale
012
Score 0

Missing or incorrect.

Score 1

Partly complete, with documented gaps.

Score 2

Complete, with reproducible evidence.

Dimension 4

Safe execution

Simulates administrative hazard inclusion scores; produces no real property underwriting or legally binding coverage assessments.

Binary check

This dimension contributes its full weight only when the submission satisfies the requirement. Partial credit is not awarded.

Learning goals

What you should walk away with

  • Fetch county disaster history using OpenFEMA DisasterDeclarationsSummaries endpoint filters.

  • Ingest municipal commercial asset locations and map to corresponding county administrative boundaries.

  • Tally historical county-level flood declarations during the lifespan of each asset.

  • Synthesize structured portfolio inclusion profiles and export administrative review dossiers.

Resources and assets

Reference links and supporting material

Dataset notes

Download public DisasterDeclarationsSummaries from OpenFEMA API endpoint `https://www.fema.gov/api/open/v2/DisasterDeclarationsSummaries` with `$filter=state eq 'VA'` and local synthetic municipal asset county mappings. Supplied starter examples are synthetic, not source extracts.

Challenge setup

Configuration summary for this challenge.

Challenge input

Input details are not configured.

Pydantic AI

Typed Python agent framework.

Evaluated output

No output checks are configured.

Evaluation checks
  • Fetch county disaster history using OpenFEMA DisasterDeclarationsSummaries endpoint filters. Ingest municip...
  • Filters OpenFEMA records for matching state, county, and disaster type correctly. Calculates county declara...
  • CLI tool that ingests asset CSVs and outputs a Markdown administrative dossier.
Configured evaluation evidence
  • 2 public reference cases
Configured runtime
  • 2 configured tools

Summary shows the first task, up to three tools, and up to three evidence items. Open the technical recipe to view all configured items.

View technical recipe

Configured tools

Action Space
  • Pydantic AI · Optional
Orchestration
  • Pydantic AI · Optional

Evaluation contract

  • Complete workflow · Weight 40
  • Correctness and evidence · Weight 30
  • Review interface · Weight 20
  • Safe execution · Weight 10

Reference cases

  • 2 public reference cases

Workflow tasks

No workflow tasks are configured.

Recipe freeze marker

No recipe freeze time is recorded.

Frequently Asked Questions about Build a Disaster Declaration County Portfolio Tracker