Science1 distinct publisher3 min readPublished
MigrationBench and Poly-MigrationBench hand outside teams real repositories to check agentic migration claims against, though the filters that assembled them also decide which migrations a pass rate can speak for.
The Scientist · Science desk

Compiled by The ScientistSomething wrong?How this is made
Tests are what make any of this scoreable. Amazon discarded every repository with no unit or integration tests, calling them essential to validate migration correctness in a robust way [8], and that is the right instinct: preserving original functionality [10] is a claim you can only settle by executing something, and the framework shipped with the Java set validates Maven upgrades against exactly those suites [5].
The migration task as Amazon defines it includes test framework optimization alongside runtime upgrade, deprecated API replacement and syntax modernization [10], and that inclusion creates a wrinkle worth naming before anyone reports a number: an agent permitted to modernise a project's test framework is editing the instrument it is graded by. The harness has to decide which test artifacts are frozen, and a pass rate means different things depending on that answer.
Then the denominators, which are uneven. Add the three Poly-MigrationBench ecosystems together and you get 257 repositories, from 100 .NET Framework, 74 Node.js and 83 Python [6][1]. Divide 5,102 by 257 and the Java collection is roughly twenty times the size of everything else combined [2]. That reflects where the curation effort went, not a defect in the collection, and it changes how a cross-language table should be read: a Java result on 5,102 repositories is a measurement, while a Python result on 83 is closer to a pilot that happens to be expressible as a percentage.
The 300-repository subset is where most academic work will land, since it exists for groups without the compute to run the full set, and Amazon describes it as representative [4]. That is a testable claim, and whether subset results track full-set results is what would make two labs' numbers comparable at all.
One further property of the collection deserves naming. The Java pipeline kept repositories under MIT or Apache 2.0 licences with at least three GitHub stars [7], and Poly-MigrationBench used a similar curation process [11]. That curation approach makes sense for a public benchmark. It also roughly describes the code large models were trained on. A pass rate on permissively licensed, starred GitHub projects carries a contamination question the dataset cannot answer about itself, and whoever reports the score should be the one to address it.
What none of this measures is the price of the attempt. A pass rate over 5,102 repositories [4] says nothing about tokens spent per repository, how many retries the agent was allowed, or the hours an engineer spends reviewing a diff that compiles and passes. Those are the figures that decide whether a migration agent is worth deploying, and they sit outside the data. A leaderboard on public Maven projects and a win on an internal monolith with a hand-built dependency tree are separate measurements; the first one is what just became cheap for anyone to reproduce.
Ranked by verification strength, evidence, and original report placement.
Amazon introduced two benchmark datasets for repository-level code migration: MigrationBench, focused on Java, and Poly-MigrationBench as an extension to other programming languages.
Amazon's stated rationale: as agentic solutions for code migration are built, the community needs a standardized benchmark dataset and an evaluation framework to measure how well these systems actually perform.
MigrationBench evaluates the ability of LLMs and other tools to migrate code from Java 8 to newer Long-Term Support versions such as Java 17 and Java 21.
The full MigrationBench dataset includes 5,102 open-source Java 8 Maven repositories collected from GitHub, alongside a representative subset of 300 repositories curated for research requiring fewer compute resources.
MigrationBench also provides an evaluation framework for validating Java Maven repository upgrades.
Poly-MigrationBench adds 100 .NET Framework repositories to be migrated to .NET Core, 74 Node.js repositories with versions below Node.js 22 to be migrated to Node.js 22, and 83 Python repositories below Python 3.13 to be migrated to Python 3.13.
Distinct publishers with included, body-backed reporting in this cluster.
Follow any of these and your For You feed starts watching them — no settings page required.
build
The nightly shutdown Lambda earns its postmortem on the morning restart1 distinct publisher
build
Partial batch failures: the handler is fine, the mapping decides1 distinct publisher
build
EventBridge Pipes as agent glue: the retries move to config, the three-step Lambda stays1 distinct publisher
build
Shared memory in Java: the mmap is the easy half, the descriptor handoff is the work1 distinct publisher
Evidence-backed comparisons of source perspectives and observed adoption signals. Read the methodology
Which Builder, Operator, and Investor concerns the observed source mix emphasized—not a truth score.
Evidence, demonstrated adoption, hype gap, incentives, and confidence are assessed independently, each on its own current evidence. How these are measured.
Precise, checkable, unchecked
The numbers are specific enough to be falsified — 5,102 repositories, a 300-repository subset, 100/74/83 across .NET, Node.js and Python — and they sit behind a public GitHub link and a cited paper. That is well above the usual standard for a vendor announcement. What holds the score down is that Amazon is describing its own artifact and no one else has opened it: the buildability of the Java 8 commits, the star and license filters, and the test-presence exclusion are all asserted by the party with an interest in the result.
Shipped to the public, used by no one yet
Publication is the whole of the adoption record. The datasets are downloadable and the harness exists, but nothing in this reporting shows a model scored, a leaderboard populated, a paper citing the sets, or a team outside Amazon running them. A benchmark's value is entirely in who adopts it, and on that question the story is still empty.
The word doing the overreaching is 'standardized'
Amazon is notably restrained about performance — it claims no scores, so there is nothing inflated to deflate. The stretch is in the framing: a dataset becomes standard when other people grade against it, and this one has been public for as long as it takes to read the post. Calling the multi-language extension a benchmark for cross-ecosystem migration while Java outweighs the other three ecosystems roughly twenty to one adds a little more air.
The referee also fields a team
Two of the three non-Java sets are built around AWS Lambda runtime deadlines, and the vendor writing the migration agents is the vendor defining what a successful migration looks like — tests that already exist continuing to pass on repositories that were required to have tests. None of that makes the data wrong, and Amazon's decision to publish the filters openly cuts against the worst version of this. But the pass criteria and the ecosystem selection both point toward migrations AWS has commercial reason to be good at.
Confident on facts, blank on consequences
We can say with real confidence what Amazon released and how it was assembled; the description is internally consistent and independently inspectable. We can say almost nothing about whether these datasets become the way migration agents are judged, because a single self-published post on the day of release cannot answer that. The truncated Python section is a small additional gap.