◇ Could this help me?
Yes. The progression is real and well framed: naming a goal with an explicit verification and stopping condition is a genuine step up from task-by-task prompting, and having a second agent try to break the first agent's tests catches the failure mode where an agent writes tests that only assert what the code already does. Two cautions: an agent optimizes to whatever stopping condition you wrote, so a loose condition produces work that passes and is still wrong, and one agent per file on its own branch burns tokens and review time quickly. This is a general practice.
This project has files without matching tests. Set up the work as a goal rather than a list of tasks: state the goal as every source file having a matching test, define the verification command that must pass, and set an explicit stopping condition. Then, for each test you write, do a second pass acting as a reviewer that tries to break the implementation and reports any test that would still pass if the code were wrong. Report weak tests rather than silently rewriting them.