Skip to main content
Challenge

Build a Financial Crime Investigation Workload Prioritization Dispatcher

Score and prioritize financial crime investigative queues using configurable fictional business rules. Map case attributes to investigator specialization and capacity to produce transparent operational rosters.

CybersecurityHosted by Vera
Challenge brief

What you are building

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

Score and prioritize financial crime investigative queues using configurable fictional business rules. Map case attributes to investigator specialization and capacity to produce transparent operational rosters.

AML Investigation Team Lead

Ingest batches of pending fictional financial crime case files containing entity risk, value, and alert types.

Calculate deterministic priority scores using weighted factors for corporate exposure, cross-border tags, and statutory SLA limits.

Evaluate investigator roster metrics including active load, jurisdiction certifications, and current backlog.

Generate a balanced investigation dispatch roster with explicit routing rationales and escalation markers.

Investigative operations dispatch console showing backlog queues, investigator capacity gauges, and assignment logs.

Construct a synthetic JSON fixture of fictional alert records and investigator profiles. Starter examples below are synthetic. They are not downloaded records.

OpenSanctions data toolkit Employ FollowTheMoney entity property types (jurisdiction, amount, currency, entity schema) for uniform alert attributes.

langgraph, pydantic, fastapi. LangGraph manages stateful queue routing loops and conditional dispatcher nodes efficiently. Local or hosted LLM with tool-calling capabilities for routing decisions.

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.

Calculates deterministic priority rank adhering to SLA deadline and multi-factor risk weighting.

Respects investigator caseload caps during automated assignment passes.

Provides clear reason codes explaining why a case was routed to a specific analyst.

Returns full priority queue JSON payload with valid ISO timestamps and routing keys.

```json [ { "input": { "cases": [ { "case_id": "CASE-901", "entity_type": "Company", "jurisdiction": "ky", "aggregate_amount": 750000, "days_to_sla": 2 }, { "case_id": "CASE-902", "entity_type": "Person", "jurisdiction": "us", "aggregate_amount": 12000, "days_to_sla": 14 } ], "investigators": [ { "id": "inv_1", "name": "Elena Vance", "active_cases": 2, "max_capacity": 5, "specialties": [ "offshore", "corporate" ] }, { "id": "inv_2", "name": "Marcus Reid", "active_cases": 4, "max_capacity": 5, "specialties": [ "retail", "structuring" ] } ] }, "expected_output": { "dispatches": [ { "case_id": "CASE-901", "assigned_to": "inv_1", "priority_tier": "critical", "score": 95, "routing_reason": "SLA expiring in 2 days and offshore corporate jurisdiction match." }, { "case_id": "CASE-902", "assigned_to": "inv_2", "priority_tier": "low", "score": 30, "routing_reason": "Low value domestic person alert within safe SLA threshold." } ], "unassigned_cases": [] } }, { "input": { "cases": [ { "case_id": "CASE-903", "entity_type": "Company", "jurisdiction": "pa", "aggregate_amount": 1500000, "days_to_sla": 1 } ], "investigators": [ { "id": "inv_3", "name": "Sarah Chen", "active_cases": 5, "max_capacity": 5, "specialties": [ "offshore" ] } ] }, "expected_output": { "dispatches": [], "unassigned_cases": [ { "case_id": "CASE-903", "priority_tier": "critical", "score": 98, "status": "queued_capacity_exceeded", "routing_reason": "Investigator capacity full; requires supervisor rebalancing." } ] } } ] ```

Utilizes purely synthetic scenarios with no real names, simulated routing only, and no automated regulatory reporting. Use mock external writes. Require human review before any real deployment.

Rules

Participation guide

Utilizes purely synthetic scenarios with no real names, simulated routing only, and no automated regulatory reporting. Use mock external writes and human review.

Delivery guide

How work is evaluated

Evaluation

Calculates deterministic priority rank adhering to SLA deadline and multi-factor risk weighting. Respects investigator caseload caps during automated assignment passes. Provides clear reason codes explaining why a case was routed to a specific analyst. Returns full priority queue JSON payload with valid ISO timestamps and routing keys.

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

Ingest batches of pending fictional financial crime case files containing entity risk, value, and alert types. Calculate deterministic priority scores using weighted factors for corporate exposure, cross-border tags, and statutory SLA limits. Evaluate investigator roster metrics including active load, jurisdiction certifications, and current backlog. Generate a balanced investigation dispatch roster with explicit routing rationales and escalation markers.

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

Calculates deterministic priority rank adhering to SLA deadline and multi-factor risk weighting. Respects investigator caseload caps during automated assignment passes. Provides clear reason codes explaining why a case was routed to a specific analyst. Returns full priority queue JSON payload with valid ISO timestamps and routing keys.

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

Investigative operations dispatch console showing backlog queues, investigator capacity gauges, and assignment logs.

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

Utilizes purely synthetic scenarios with no real names, simulated routing only, and no automated regulatory reporting.

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

  • Ingest batches of pending fictional financial crime case files containing entity risk, value, and alert types.

  • Calculate deterministic priority scores using weighted factors for corporate exposure, cross-border tags, and statutory SLA limits.

  • Evaluate investigator roster metrics including active load, jurisdiction certifications, and current backlog.

  • Generate a balanced investigation dispatch roster with explicit routing rationales and escalation markers.

Resources and assets

Reference links and supporting material

Dataset notes

Construct a synthetic JSON fixture of fictional alert records and investigator profiles. Supplied starter examples are synthetic, not source extracts.

Challenge setup

Configuration summary for this challenge.

Challenge input

Input details are not configured.

LangGraph

Runtime for stateful agent workflows.

Evaluated output

No output checks are configured.

Evaluation checks
  • Ingest batches of pending fictional financial crime case files containing entity risk, value, and alert typ...
  • Calculates deterministic priority rank adhering to SLA deadline and multi-factor risk weighting. Respects i...
  • Investigative operations dispatch console showing backlog queues, investigator capacity gauges, and assignm...
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
  • LangGraph · Optional
Orchestration
  • LangGraph · 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 Financial Crime Investigation Workload Prioritization Dispatcher