henhao
Sign in
EcologybioRxiv
Preprint

Scrub Data: A Framework for Reproducible Data Curation with AI Coding Agents

Justin Kay, Shir BariD, Sara BeeryiD

PDFDOICode

Abstract

Data curation-the process of collecting, cleaning, and joining raw datasets for unified analysis-is a time-consuming yet crucial part of any data science project. With the emergence of powerful agentic coding tools, it is tempting to "vibe curate"-i.e., to prompt AI agents to perform data curation operations and blindly trust their outputs in order to finish work more quickly. However, this can exacerbate two key challenges that already plague manual data curation workflows: reproducibility-the ability to trace the exact set of modifications applied to raw datasets-and verifiability-the ability to audit changes and confirm that data is processed properly. To address these issues, we introduce Scrub Data, a framework that enables the use of AI agents in data curation workflows while transparently maintaining both reproducibility and verifiability. The framework involves an interactive data curation loop between a user and an AI agent, backed by a data provenance graph that tracks and versions all dataset updates. The data graph requires that all updates are formatted as self-contained executable steps, allowing any version of a dataset to be reconstructed from raw data by playing forward the transformations stored in the graph. This workflow takes place within a lightweight web application that is designed to be modified by users and agents in real-time to create custom visualization tools for identifying data curation needs and verifying outcomes. We demonstrate the usefulness of the framework with a real data curation use case from animal movement ecology. Starting with 89M raw GPS coordinates, we use the framework to curate a benchmark dataset of 2.5M coordinates to be used for machine learning or statistical analysis. The framework is available for use and extension at https://github.com/justinkay/scrubdata.

02 /Specification & Classification

Click any tag to browse matching papers

In-depth summary

✦ Multi-agent verified full-text synthesis

Claude Opus 5.5 · xhigh effort · 8 Nov 2026 · from the full text of version 1 (23 Sept 2026) · CC BY 4.0

Scrub Data routes AI-agent data edits through an API-enforced provenance graph of executable Python steps; it curated 89M wildlife GPS points into the 2.6M-point MoveBench benchmark.

Coding agents used for data curation can rewrite raw files without leaving a log, so their edits cannot be traced or rolled back, and users may trust outputs they never checked. Scrub Data keeps the speed agents offer but records every change as a replayable, versioned step, and users build their own visual checks to confirm results.

Key results

  1. ShownThe framework took a large, mixed pool of wildlife GPS tracking studies all the way to MoveBench, a benchmark for probabilistic animal-movement forecasting. A small team did the work in a short time.

    Input: 89M raw GPS points from 234 studies (215 Creative Commons Movebank studies, fourteen from a literature review, five suggested by experts). Output: 2.6M points from 807 individuals, 110 species and 147 studies. Two curators took three days, using Codex with GPT-5.4. · 3 Case study: Creating MoveBench; 3.1 Raw data acquisition and ingestion; 3.5 Final results

  2. ClaimedEach dataset version is a node: a file manifest that reuses unchanged files by reference. Each edge stores an executable script with metadata on the request, the user and the affected files. In principle, any version can be rebuilt by replaying the steps from raw data.

    The graph is append-only. A script that fails creates no edge or node. Moving the current-dataset pointer gives undo and branching without deleting history. Default REST routes include steps, analyses, head and undo. The paper reports no test that rebuilds a dataset by replaying the graph. · DAG nodes; API specification; DAG nodes; DAG edges

  3. ShownIn a first cleaning pass run from the terminal, the agent wrote graph steps that thinned fixes to one per hour (GPS rows only), capped data per individual and individuals per study, and assigned a preliminary temporal train/test split.

    Thinning to at most one fix per hour, with ±30 minutes of tolerance, cut the pool to 14M points. Then each individual was capped at two full years of hourly data, fifteen individuals were sampled per study (six were later kept after manual review for anomalies), and each individual's timeline was split 50/50 into train and test. This left 5.9M points. · 3.3 Initial terminal-based data cleaning; 3.4 Iterative visualization and cleaning; C.1 Dataset thinning

  4. SuggestedAn interactive map and timeline viewer, built by the agent, exposed curation issues that shaped the benchmark design. These included uneven sampling rates, deployment lengths and study sizes, plus spatial overlap within subpopulations, which led to a shared train/test cutoff per subpopulation to prevent leakage.

    The viewer used deck.gl, Maplibre GL JS and CARTO basemaps. Some studies recorded at 1hz, deployments lasted from a few days to several years, and studies held anywhere from a single animal to hundreds. After consulting experts, the team set the shortest forecast horizon to one hour. · 3.2 Initial visualization development

  5. SuggestedWith the prompt scaffold in its context, the agent wrote each transformation as a complete Python file, passed as a string to the API. It also built UI buttons that generate step scripts and record a username and a reason for each change.

    This comes from the MoveBench case only (Codex, GPT-5.4). The thinning logic was bundled into one script string and posted as a graph step. UI operations covered keeping or deleting individuals, aligning train/test cutoffs, assigning held-out individuals, removing studies, undo and marking a study complete. · Prompt scaffold; 3.3 Initial terminal-based data cleaning; 3.4 Iterative visualization and cleaning

Methods, data and reproducibility

The framework is a FastAPI client-server scaffold plus instructions for the agent. Agents send standalone Python transformation scripts to a REST API. The server runs each script and adds the result as a new version in an append-only directed acyclic graph. Users also have agents build browser visualizations to inspect and check each change.

  • Animal movement studies with Creative Commons licences from the Movebank repository · multiple wildlife species · n = 215 studies
  • Further studies taken from a literature review of movement-methods papers that published their empirical data · multiple wildlife species · n = fourteen studies
  • Studies suggested by domain experts in the Move BON Working Group on AI · multiple wildlife species · n = five studies
  • Combined raw GPS pool, converted to Movebank's standard CSV format · multiple wildlife species · n = 234 studies; 89M raw GPS points
  • MoveBench, the final curated benchmark for probabilistic movement forecasting · 110 species (wildlife) · n = 2.6M GPS points; 807 individuals; 147 studies
Methods & tools
Scrub Data (framework), FastAPI, REST API, Python transformation scripts, Codex with GPT-5.4, Claude Code and opencode (supported agent CLIs), deck.gl, Maplibre GL JS, CARTO basemaps, Movebank (repository and standard CSV format)
Software & environment
FastAPI backend (a Python package) with an HTML/CSS/JavaScript frontend, launched with python server.py. Transformation steps are Python scripts. The case study used Codex with GPT-5.4 in March 2026. No package versions or container are given.
Reproducibility gaps
The MoveBench data and its provenance history are only promised for release with the benchmark. The Movebank source URL is not printed. No dependency versions, lockfile or container are specified.
Limitations (5)
  • The instructions to the agent cannot guarantee it will not bypass the API and edit data files directly. The authors advise using the tool only on securely backed-up data, and possibly removing the agent once a curation process is fully built into the UI. · stated by the authors
  • Using proprietary LLMs brings monetary cost, data-privacy concerns and environmental resource use. The authors say these must be weighed for each curation project. · stated by the authors
  • The authors present the MoveBench experience as one illustration only, because curation needs and workflows will differ between users and datasets. · stated by the authors
  • All evidence comes from one case study run by the framework's own developers. There is no comparison with manual or unscaffolded agent curation (for time or error rates), and no test showing that replaying the graph rebuilds the final dataset. · noted in this summary
  • The reported benchmark size is inconsistent: 2.5M coordinates in the Abstract versus 2.6M in Sections 1 and 3.5. The MoveBench provenance history has not been released yet. · noted in this summary

Who should read:Read this if you curate heterogeneous datasets with coding agents (Codex, Claude Code) and want a replayable workflow with provenance tracking, or want background on the MoveBench animal-movement benchmark.

Reproducibility ledger

Nobody has reported trying to reproduce this paper yet. Did you replicate an experiment or run the code? Your report saves the next lab a week.

Sign in to file a reproducibility report.