Skip to main content
Challenge

Build a Disaster Declaration Administrative Frequency Indexer

Aggregate OpenFEMA severe storm administrative disaster declarations across rural municipalities. Rank local road and culvert infrastructure administrative declaration exposure for prioritized capital resilience dossiers and adaptation grant applications.

Data ScienceHosted by Vera
Challenge brief

What you are building

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

Aggregate OpenFEMA severe storm administrative disaster declarations across rural municipalities. Rank local road and culvert infrastructure administrative declaration exposure for prioritized capital resilience dossiers and adaptation grant applications.

Infrastructure Resilience Officer

Fetch OpenFEMA DisasterDeclarationsSummaries filtered by incidentType 'Severe Storm(s)'.

Cross-reference administrative disaster declarations with municipal GIS inventories of culverts and bridges.

Calculate historical administrative declaration frequency over 10-year rolling windows.

Generate prioritized capital resilience dossiers for community grant submissions based on declaration exposure.

Static HTML report generator producing municipality vulnerability scorecards with embedded CSV tables.

Query OpenFEMA API endpoint /v2/DisasterDeclarationsSummaries utilizing $filter on state and incidentType, or download bundled JSON datasets. Starter examples below are synthetic. They are not downloaded records.

FEMA OpenFEMA Leverages OpenFEMA query filters including $select, $filter, and $orderby to extract historical administrative storm events by county.

semantic-kernel, requests, pydantic. Semantic Kernel orchestrates data integration plugins with deterministic validation rules to generate structured grant narratives. Local Ollama model or hosted Claude model to draft structured infrastructure grant justifications.

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.

Correctly filters declarations matching incidentType 'Severe Storm(s)'.

Computes rolling 10-year administrative storm declaration count for designated county.

Outputs prioritized asset mitigation scores aligned with administrative disaster frequency.

```json [ { "input": { "_record_type": "simplified synthetic app record", "municipality": "Riverdale", "county_fips": "37183", "records": [ { "disasterNumber": 1901, "incidentType": "Severe Storm(s)", "year": 2012 }, { "disasterNumber": 2050, "incidentType": "Severe Storm(s)", "year": 2018 }, { "disasterNumber": 2210, "incidentType": "Severe Storm(s)", "year": 2021 } ], "culvert_count": 45 }, "expected_output": { "municipality": "Riverdale", "storm_declaration_count": 3, "adaptation_priority": "PRIORITY_LEVEL_1", "recommendation": "Submit culvert enlargement grant application" } }, { "input": { "_record_type": "simplified synthetic app record", "municipality": "Pinehill", "county_fips": "37001", "records": [], "culvert_count": 12 }, "expected_output": { "municipality": "Pinehill", "storm_declaration_count": 0, "adaptation_priority": "PRIORITY_LEVEL_3", "recommendation": "Maintain standard monitoring" } } ] ```

Grant priorities are non-binding planning recommendations and do not guarantee federal funding allocation. Use mock external writes. Require human review before any real deployment.

Rules

Participation guide

Grant priorities are non-binding planning recommendations and do not guarantee federal funding allocation. Use mock external writes and human review.

Delivery guide

How work is evaluated

Evaluation

Correctly filters declarations matching incidentType 'Severe Storm(s)'. Computes rolling 10-year administrative storm declaration count for designated county. Outputs prioritized asset mitigation scores aligned with administrative disaster frequency.

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 OpenFEMA DisasterDeclarationsSummaries filtered by incidentType 'Severe Storm(s)'. Cross-reference administrative disaster declarations with municipal GIS inventories of culverts and bridges. Calculate historical administrative declaration frequency over 10-year rolling windows. Generate prioritized capital resilience dossiers for community grant submissions based on declaration exposure.

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

Correctly filters declarations matching incidentType 'Severe Storm(s)'. Computes rolling 10-year administrative storm declaration count for designated county. Outputs prioritized asset mitigation scores aligned with administrative disaster frequency.

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

Static HTML report generator producing municipality vulnerability scorecards with embedded CSV tables.

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

Grant priorities are non-binding planning recommendations and do not guarantee federal funding allocation.

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 OpenFEMA DisasterDeclarationsSummaries filtered by incidentType 'Severe Storm(s)'.

  • Cross-reference administrative disaster declarations with municipal GIS inventories of culverts and bridges.

  • Calculate historical administrative declaration frequency over 10-year rolling windows.

  • Generate prioritized capital resilience dossiers for community grant submissions based on declaration exposure.

Resources and assets

Reference links and supporting material

Dataset notes

Query OpenFEMA API endpoint /v2/DisasterDeclarationsSummaries utilizing $filter on state and incidentType, or download bundled JSON datasets. Supplied starter examples are synthetic, not source extracts.

Challenge setup

Configuration summary for this challenge.

Challenge input

Input details are not configured.

Semantic Kernel

Agent Systems · Agent Frameworks

Evaluated output

No output checks are configured.

Evaluation checks
  • Fetch OpenFEMA DisasterDeclarationsSummaries filtered by incidentType 'Severe Storm(s)'. Cross-reference ad...
  • Correctly filters declarations matching incidentType 'Severe Storm(s)'. Computes rolling 10-year administra...
  • Static HTML report generator producing municipality vulnerability scorecards with embedded CSV tables.
Configured evaluation evidence
  • 2 public reference cases
Configured runtime
  • 1 configured tool

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
  • Semantic Kernel · 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 Administrative Frequency Indexer