Inspiration
Companies rely on legacy software that contains years of business decisions, often buried in code and poorly documented. When that software is rewritten, a small change in behavior can have real consequences. But not every old behavior deserves to be preserved.
What it does
LegacyDiff is a project in progress that aims to compare a legacy system and its rewrite on the same inputs, surface meaningful behavior differences, and connect them to code and policy evidence. A human reviewer decides what the intended behavior should be, and that decision becomes an executable acceptance test.
How we built it
We’re planning a multi-agent workflow using NVIDIA Nemotron, with specialist agents investigating behavior and policy evidence. The proposed stack includes Next.js, TypeScript and Python. We’ll update this section to reflect what we actually implement.
Challenges we ran into
A central challenge we’re designing around is distinguishing a real behavior difference from an error, then deciding whether the old or new behavior is actually correct. We’re also planning how to execute the example safely and keep evidence traceable.
Accomplishments that we're proud of
So far, we’ve defined the product’s core workflow and a scoped synthetic example. Implementation is in progress.
What we learned
We learned that matching an old system isn’t automatically the same as being correct. A migration also needs a way for people to resolve ambiguous or conflicting business rules.
What's next for LegacyDiff
Build and validate the end-to-end prototype: execute both versions, investigate a difference, let a human record a decision, and run the resulting acceptance test. Then update this submission with the working implementation and demo.
Built With
- docker
- nemotron
- next.js
- python
- typescript