Keeps old and new versions side by side (parse_date_v2, fooFixed, legacyFoo, app_new.py)
Code that already exists: one of the ways AI coding agents bloat software, from lessloc's pattern catalog. lessloc gives every session the rule: one implementation per rule.
What makes keeping old and new versions side by side a bad practice?
The standards that call it a bad practice: DRY; Clean Code G9 Dead Code.
What does lessloc do about keeping old and new versions side by side?
lessloc gives every session the rule: one implementation per rule. lessloc catches it as versioned-copy, and as junk-file for files.
versioned-copy(tier 1): A definition beside an older version of itself, such asparse_date_v2next toparse_date.junk-file(tier 0): A new backup, copy, scratch or report file (refused before it lands, unless the request names it), or cache files, build output or logs that would be committed.
Related patterns
The other patterns in Code that already exists:
- Reimplementing a helper the project already has: lessloc gives every session the rule: take what is already in the codebase before new code.
- Copying a rule another function owns: lessloc catches it as
repeated-literal. - Rebuilding what the standard library or framework has: lessloc gives every session a rule against it and catches it as
simplerandreinvented. - Copy-pasted test cases instead of one parametrized test: lessloc catches it as
copied-tests. - A second library for a job an installed one already does:
new-dependencynames the library that is already installed. - The same data shape in several layers (DTO, model, entity):
copycatches identical type bodies. - The same CSS declarations under another selector: lessloc catches it as
style-copy.

