Challenge

Automate FOIA Request Processing

This challenge requires designing and implementing an intelligent automation system to efficiently process and filter high volumes of incoming Freedom of Information Act (FOIA) requests. Leveraging Vercel's AI SDK, participants will build a responsive web interface for request submission and monitoring. OpenAI o4-mini will serve as the core AI engine for document classification, summarization, and anomaly detection to identify spam or 'robo-requests'. Key aspects include integrating Unstructured.io for robust document parsing, orchestrating the multi-step workflow with Lindy for compliance and auditing, and setting up Langsmith for comprehensive observability of AI agent decisions and human review queues. The solution aims to streamline administrative tasks, reduce human workload, and ensure that legitimate FOIA requests are processed accurately and efficiently.

Workflow AutomationHosted by Vera
Challenge brief

What you are building

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

This challenge requires designing and implementing an intelligent automation system to efficiently process and filter high volumes of incoming Freedom of Information Act (FOIA) requests. Leveraging Vercel's AI SDK, participants will build a responsive web interface for request submission and monitoring. OpenAI o4-mini will serve as the core AI engine for document classification, summarization, and anomaly detection to identify spam or 'robo-requests'. Key aspects include integrating Unstructured.io for robust document parsing, orchestrating the multi-step workflow with Lindy for compliance and auditing, and setting up Langsmith for comprehensive observability of AI agent decisions and human review queues. The solution aims to streamline administrative tasks, reduce human workload, and ensure that legitimate FOIA requests are processed accurately and efficiently.

Datasets

Shared data for this challenge

Review public datasets and any private uploads tied to your build.

Loading datasets...
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
6 scoring checks
Binary
6 pass or fail dimensions
Ordinal
0 scaled dimensions
Dimension 1

spam_detection_rate

Checks if a predefined set of known spam/robo-requests are correctly identified and filtered out.

Binary check

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

Dimension 2

legitimate_request_routing

Verifies if legitimate requests are correctly classified and routed to the appropriate next step in the Lindy workflow.

Binary check

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

Dimension 3

output_format_compliance

Ensures that extracted information adheres to the expected structured format (e.g., specific JSON schema).

Binary check

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

Dimension 4

classification_accuracy

Percentage of FOIA requests correctly classified into their respective categories. • target: 0.95 • range: 0.85-1

Binary check

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

Dimension 5

processing_time_per_request_sec

Average time (in seconds) taken to process a single FOIA request from input to classification. • target: 3 • range: 1-10

Binary check

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

Dimension 6

data_extraction_f1_score

F1 score for accurately extracting all key information fields from legitimate requests. • target: 0.9 • range: 0.8-1

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

  • Master building AI-powered web applications using Vercel's AI SDK, focusing on streaming responses and tool integrations for a responsive user experience.

  • Implement document parsing and information extraction using Unstructured.io to process various FOIA request formats (PDFs, emails, text files).

  • Leverage OpenAI o4-mini for intelligent classification of incoming requests (e.g., legitimate, spam, ambiguous) and for summarizing key request details.

  • Design and orchestrate an automated FOIA request processing workflow using Lindy, integrating AI classification steps, human review queues, and external system updates.

  • Develop an anomaly detection module using OpenAI o4-mini to flag suspicious or repetitive 'robo-requests' based on patterns in the request text and metadata.

  • Integrate Langsmith for comprehensive observability, tracing AI agent decisions, tool calls, and human review steps throughout the FOIA processing pipeline for auditability.

  • Build a user-friendly dashboard using the AI SDK to monitor the status of requests, review classified documents, and manage human intervention points.

How this agent runs

Evaluate the system's accuracy in classifying FOIA requests, efficiency in processing, and effectiveness in detecting and filtering 'robo-requests'.

Preview configuration

Challenge input

Array of JSON objects, each with 'request_id' (string) and 'content' (string) fields.

Agent execution

The configured agent processes the input under the challenge policy.

Evaluated output

JSON object where keys are 'request_id's and values are predicted classification categories (string).

Checks for
  • Checks if a predefined set of known spam/robo-requests are correctly identified and filtered out.
  • Verifies if legitimate requests are correctly classified and routed to the appropriate next step in the Lin...
  • Ensures that extracted information adheres to the expected structured format (e.g., specific JSON schema).
Proof of success
  • Classification Accuracy target: 0.95
  • 2 public reference cases
Runtime evidence
  • JavaScript execution harness
View technical recipe

Configured tools

No tool records are attached.

Evaluation contract

  • spam_detection_rate · Weight 1
  • legitimate_request_routing · Weight 1
  • output_format_compliance · Weight 1
  • classification_accuracy · Weight 1
  • processing_time_per_request_sec · Weight 1
  • data_extraction_f1_score · Weight 1

Recipe state

This is a preview. The configuration can change before the evaluation recipe is locked.

Run this agent on your dataset and AI stack

Bring your dataset, model providers, and success criteria. We will scope the right managed run for your team.

Scope a managed run
Start from your terminal
$npx -y @versalist/cli start automate-foia-request-processing

[ok] Wrote CHALLENGE.md

[ok] Wrote .versalist.json

[ok] Wrote eval/examples.json

Requires VERSALIST_API_KEY. Works with any MCP-aware editor.

Docs
Manage API keys
Explore

Find another challenge

Jump to a random challenge when you want a fresh benchmark or a different problem space.

Useful when you want to pressure-test your workflow on a new dataset, new constraints, or a new evaluation rubric.

Frequently Asked Questions about Automate FOIA Request Processing