Migrations & Modernizations
Move to Rust. Keep the behavior. Prove it.
The old code is not the test — the written contract is. Your AI AI coding agent ports to it; FalseGreen verifies the Rust against it.
The problem
Rewrites break what was never agreed to.
Developers never documented what the PHP or C actually did. Port it, and the undocumented rules quietly disappear.
An AI coding agent rewrites thousands of lines in a day. A ported edge case can look right and be wrong.
'The new suite passes' is not proof the port kept the meaning. The old tests never covered the old code's real edges.
Contract first, Rust second
Write down what the old code did — then hold Rust to it.
FalseGreen does not verify the old program. It freezes the behavior the old program had to honor, and judges only the new Rust against that written contract.
The behaviors that must survive — inputs, outputs, edge cases, money rules — are agreed to and frozen before the port starts.
It rewrites toward the frozen contract; the new Rust tree is verified with a full build, its suite, and five security checks.
Every new dependency is checked. Undeclared or swapped components fail the Job — the classic shape of a supply-chain hit.
Rules you can state formally get proven over all inputs — not sampled by test cases.
One FalseGreen Job