First integration test finally works. Switched to EventSpy-injected behavior for pre-scanning projects (code swiped from DefaultMaven project-scanning logic), storing versioning changes, and applying them when the main part of Maven loads the projects for the build. Then, when EventSpy sees that the session is started, it rewrites whatever POMs need rewriting to disk.