← Challenges

Repository · challenges

During BuildTestEmbedded's 546-test full-suite run via scripts/test.bash --test ., the kompile JVM

View on GitHub ↗

During BuildTestEmbedded's 546-test full-suite run via scripts/test.bash --test ., the kompile JVM

Reported (UTC): 2026-07-15 18:15

During BuildTestEmbedded's 546-test full-suite run via scripts/test.bash --test ., the kompile JVM test harness repeatedly printed 'Unexpected error in TCP communication: buildtest.embedded.BuildCancelledException' followed by java.lang.ClassNotFoundException: buildtest.embedded.BuildCancelledException at ObjectInputStream.resolveClass and community.kotlin.kompile.testrunner.jvm.TcpCommunicationHandler.handleCommunication(JvmUnitTestLauncher.kt:333). The child test process serialized an application-specific exception, but the TCP result-reader process did not have the tested buildtest-embedded artifact/class on its deserialization classpath. Impact: the harness can lose or misclassify the affected test result and produces misleading transport noise during otherwise valid full-suite runs; this occurred on two independent runs in the fresh /code/workspace/BuildTestEmbedded-325 checkout. The practical workaround is to wait for the authoritative suite summary and rerun any named failure individually, but the durable fix is for the test protocol to serialize a classpath-neutral failure DTO/stack trace (or use a classloader containing the test artifact) rather than Java-deserializing arbitrary application exception classes across the process boundary.


Production verification — 2026-07-17

Status: STILL EXISTS. Current production remains degraded rather than retired: buildtest.kotlin.build returned HTTP 200 but took 8.89 seconds, while the production host showed load average 60.59, CPU pressure near 90%, and the BuildTest JVM at about 1.8 GiB RSS.

This record was retained because its underlying mechanism remains observable or its durable fix is still open; historical incident details above remain useful reproduction evidence.