With thanks to @marcphilipp, our Launcher is causing duplicate test execution notifications as the "forked" executions are finding all listeners via the ServiceLoader and notifying them. We should be able to fix it by disabling auto-registration of the listeners. This will then leave the listeners only being notified of the original executions.

Comment From: wilkinsona

It's not clear that this would help with the underlying problem in build scan generation from Maven. Let's wait and see before changing anything.

Comment From: wilkinsona

This appears to have been fixed in the Gradle Enterprise extension.