Repository navigation
Conversation
zihaoyu
marked this pull request as ready for review
October 15, 2026 20:31
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?:
Route Java dependency resolution through Depot in GitLab CI only, covering the main Gradle build, included
build-logicbuild, and JFR validation tooling. External contributors retain the existing repository and launcher behavior whenGITLAB_CIis unset or is not exactlytrue.MAVEN_REPOSITORY_PROXYandGRADLE_PLUGIN_PROXY, with explicitmavenRepositoryProxy/gradlePluginProxyGradle properties taking precedence. Configured proxies replace the explicit public repository fallbacks.6.7.6marker require that separate mirror.0.26.2, resolves bothio.btrace:jafar-shelland its matchingio.btrace:jfr-shell-jafarbackend through the configured repository, and ignores repositories declared by transitive dependencies. Supplying the backend prevents its separate embedded resolver from contacting public Maven repositories.Contributor compatibility:
Shared Gradle and validation files are changed, but the strict Depot configuration and pinned Jafar/backend path are guarded by
GITLAB_CI=true.-PmavenRepositoryProxy=...remains supported with its original public fallbacks.jbang --java 25 jfr-shell@btraceio, including its existing optionalMAVEN_REPOSITORY_PROXYoverride. It does not force the CI version pin, backend dependency, or transitive-repository restriction.Motivation:
The CI execution external network traffic dashboard, filtered to repo1.maven.org identified direct Maven Central traffic from java-profiler, including
main. This follows the Dependency Management Slack discussion about migrating JVM downloads to Depot.The existing CI configuration left public repository fallbacks enabled, some included-build declarations consumed only Gradle properties rather than the CI environment, and JBang/Jafar had additional catalog and backend resolution paths. This PR closes those gaps for current
main; older branches are outside its scope.Additional Notes:
main; the other four are not claimed to be pre-existing.How to test the change?:
Validated locally on macOS / JDK 25:
git diff --checkhelp: main plugins, project dependencies, included-build plugins, convention dependencies.GITLAB_CIunset,GITHUB_ACTIONS=true, deliberately invalid proxy environment URLs. All four original public repository lists verified.GITLAB_CI=false, explicit Maven proxy property, deliberately invalid proxy environment URLs. All four lists retain the custom proxy followed by original public fallbacks.spotlessApply helpthrough the repository wrappertestDebugVtableReceiverFrameTestreproduces the same assertion on unchangedmainatb302ee4169070dc9bf59f90959191787fe406f61. Other failures were not baseline-tested.Latest native failures in
:ddprof-test:testDebug:NativeThreadTest [3]: nodatadog.ExecutionSamplefor CPU profiling.DynamicNativeThread [3]: nodatadog.ExecutionSamplewith DWARF stacks.ThreadEntryDetectionTest [3]: nodatadog.ExecutionSamplefor CPU profiling.VirtualThreadWallClockTest,cstack=vmx: no sample containing carrier-thread frames.VtableReceiverFrameTest [5]: no expected vtable stub/receiver frames; also reproduced on unchangedmain.The local native run uses an uncommitted init script with
-Djdk.attach.allowAttachSelf=true,-Djol.tryWithSudo=false, and-XX:+EnableDynamicAgentLoadingto avoid JOL's local sudo-attach stall. Google Test was unavailable, so gtest tasks were skipped. A full GitLab pipeline has not been run as part of local validation.Local evidence retained in the working checkout:
build/reports/claude/gradle-summary.mdandgradle-summary.jsonbuild/logs/20261015-160437-help.log— GitLab Depot configurationbuild/logs/20261015-160619-help.log— GitHub Actions/public configurationbuild/logs/20261015-160642-help.log— external custom proxybuild/logs/20261015-162158-spotlessApply.log— final formatting/helpbuild/logs/20261015-160745-testDebug.log— latest native runbuild/logs/20261015-133604-testDebug.log— earlier patched native runbuild/logs/baseline-20261015-134200-testDebug.log— targeted unchanged-main baselineTo repeat configuration assertions, use
./.claude/commands/build-and-summarize help -I .gitlab/scripts/tests/depot-repositories.init.gradle. SelectDEPOT_EXPECTED_MODE=depot,public, orcustom-proxy; provide expected proxy URLs independently of the inputs being tested. The README documents the modes. RuntestDebugthrough the same wrapper on supported CI environments to investigate the remaining native failures.For Datadog employees: