Skip to content

Soften two over-precise claims from #209 (one is in a merged commit message) #238

Description

@monkopedia-coder

Two over-precise claims from #209 — both in the merged commit message, so they cannot be edited in place

Category: correctness of a durable claim (precision, not behaviour)
Found by: the #209 re-reviewer, raised non-blocking and approved around. Recorded here so the record is
correctable rather than lost.

PR #209 (merged 2cd2559) declined gradle/actions/setup-gradle — whose v6 moved caching into a
non-MIT component — and kept only gradle/actions/wrapper-validation@v6. That decision is correct and
was verified from Gradle's own artifacts
, five independent ways: the DISTRIBUTION.md component map
places wrapper validation inside the MIT "Action Runner"; LICENSE/NOTICE scope the carve-out to the
single gradle-actions-caching component; wrapper-validation/action.yml has no cache input at all
(3 inputs), so caching is structurally impossible rather than merely switched off; the bundle greps 0/0/0/0
against setup-gradle's 1/1/1/2; and — the strongest — setup-gradle reaches the component through a
runtime dynamic await import(".../sources/vendor/gradle-actions-caching/index.js") guarded by
isCacheDisabled() / provider==="basic" / else, a call site wrapper-validation does not have.

Nothing below disturbs that conclusion. Both items are wording that claims more than the evidence supports.

1. "No gradle.com Terms of Use are accepted anywhere in this repository" — overshoots

The proprietary blob (2,318,919 bytes) physically ships in the action checkout, and
licenses/gradle-actions-caching-license.txt binds on "downloading, installing, or using". So something
is downloaded even though nothing loads it.

This is not a defect in the decision: Gradle's own documented opt-out (cache-provider: basic) downloads
the identical blob, so "present but never loaded" is the vendor's own standard for declining, and #209
clears it by a wider margin — it removes the call site entirely rather than switching a flag.

Correct wording: "…accepted by anything this repository executes; the proprietary component is present
in the action checkout but is never loaded."

Appears in both the PR body and the merged commit message for 2cd2559. The commit message cannot be
amended on main, which is exactly why this is written down.

2. "A superset of gradle-home-cache-includes' default" — not a superset

caches + wrapper is described as a superset of that default. It is not: the default is
caches\nnotifications\n, so the new set drops notifications while adding wrapper. Immaterial in
effect — nothing depends on cached notifications — but "superset" is a false relation and will mislead
whoever next tunes the cache.

Also confirmed accurate, so nobody re-derives it

The capability audit against setup-gradle@v4's 41 parsed defaults is right on every row: validate-wrappers
was silently ON and is preserved; gradle-version, dependency-graph, build-scan-publish and
arguments were genuinely unused; add-job-summary and cache cleanup/dedup are lost and disclosed.
The release.yml worst case is clean — all four Gradle invocations use ./gradlew, with zero bare
gradle calls across all four workflows, so the lost Gradle-installation capability is inert on the publish
path.

Effort: trivial — two sentences. Suitable to ride along on any later CI touch rather than its own PR.

Refs #207, Refs #231.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    agent-workableClear, scoped, no user-judgment needed; triage dispatches work_on_issuebugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions