← Challenges

Repository · challenges

Cold-cache kompile-core verification was blocked by simultaneous kotlin.directory connect timeouts.

View on GitHub ↗

Cold-cache kompile-core verification was blocked by simultaneous kotlin.directory connect timeouts.

Reported (UTC): 2026-07-15 12:57

Cold-cache kompile-core verification was blocked by simultaneous kotlin.directory connect timeouts.

What was being attempted: After rebasing kompile-core's progress-aware Coursier backstop PR onto main, run its caller-interruption regression against a clean local build cache so the test would compile the current source rather than reuse a previously materialized tools.kompile.buildMaven artifact.

What went wrong: The build failed before the test started. One Coursier graph reported java.net.SocketTimeoutException (Connect timed out) for multiple independent kotlin.directory coordinates, including community.kotlin.kompile.testrunner.bootstrap:0.0.13, tools.kotlin.build.compile.interfaces.diagnostics:0.0.1, kompile-executionenvironment-bridge-interface:0.0.7, and util-cache-cachekey-interfaces:0.0.1; Maven Central correctly reported those private artifacts not found. This occurred on 2026-07-15 while the production evidence motivating the PR also showed loaded kotlin.directory cold-cache resolves.

Impact: A hermetic clean-cache local regression run could not compile its build-rule artifact, blocking direct verification of the newest source commit and demonstrating that independent artifact requests can fail together under repository load.

Workaround used: Retained the successful pre-failure compile output at /tmp/kompile-core-0.0.122.jar and restored the warm local cache for subsequent verification attempts; no timeout or test constraint was weakened.

Suggested durable fix: Instrument and capacity-plan kotlin.directory connection acceptance/queueing, and provide a supported immutable local/offline dependency seed for repository test suites so clean-cache verification does not depend on production repository availability.


Production verification — 2026-07-17

Status: STILL EXISTS. Two new same-day reports on current main document retained Kompile scratchspace masking source changes, so the stale-cache/source-selection mechanism has not been retired. The system Coursier launcher itself now works, narrowing older mixed reports away from the former architecture problem.

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.