From 852015fe09b6f063a01238206ee6843533670d6f Mon Sep 17 00:00:00 2001 From: Alexey Kuznetsov Date: Sun, 1 Nov 2026 10:46:02 -0500 Subject: [PATCH] Attach modifiable-config agent alongside JaCoCo The JaCoCo coverage agent was treated as a foreign -javaagent, so the modifiable-config agent was never attached to tests with coverage enabled. Spock modules masked this through ConfigTransformSpockExtension. Co-Authored-By: Claude Opus 5.5 --- .../main/kotlin/dd-trace-java.modifiable-config.gradle.kts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/buildSrc/src/main/kotlin/dd-trace-java.modifiable-config.gradle.kts b/buildSrc/src/main/kotlin/dd-trace-java.modifiable-config.gradle.kts index 047b64d326d..98263e5d9d1 100644 --- a/buildSrc/src/main/kotlin/dd-trace-java.modifiable-config.gradle.kts +++ b/buildSrc/src/main/kotlin/dd-trace-java.modifiable-config.gradle.kts @@ -25,9 +25,12 @@ tasks.withType().configureEach { inputs.file(agentJar).withPathSensitivity(org.gradle.api.tasks.PathSensitivity.NONE) // Attach lazily so we can skip when the Test JVM already has another -javaagent. // doFirst prepends, so this runs after any -javaagent registered later via doFirst. + // The JaCoCo coverage agent coexists with this one, so it does not count as foreign. doFirst { val foreignAgent = allJvmArgs.firstOrNull { - it.startsWith("-javaagent:") && !it.contains("modifiable-config-agent") + it.startsWith("-javaagent:") && + !it.contains("modifiable-config-agent") && + !it.contains("jacocoagent") } if (foreignAgent != null) { logger.info(