Skip to content

Harden CI against flaky maven downloads#35

Merged
dsnsgithub merged 1 commit into
mainfrom
claude/gradle-10-flaky-workflows-unp3sa
Jul 18, 2026
Merged

Harden CI against flaky maven downloads#35
dsnsgithub merged 1 commit into
mainfrom
claude/gradle-10-flaky-workflows-unp3sa

Conversation

@dsnsgithub

Copy link
Copy Markdown
Owner

Transient TerraformersMC maven failures ("Premature end of chunk coded message body" while downloading modmenu) were killing whole workflow runs. Three layers of defense:

  • Retry: .github/scripts/retry.sh reruns a failed command with a growing pause (3 attempts by default, 2 for the slow launch tests); every Gradle step in build.yml and publish.yml now goes through it.
  • Modrinth maven fallback: gradle/modrinth-fallback.gradle adds the Modrinth maven (filtered to maven.modrinth) and a modmenuDependency() helper that probes the TerraformersMC coordinate and falls back to the identical maven.modrinth:modmenu jar when that maven is unreachable. Used by the variant builds and the launch-test harness.
  • Dependency caching: gradle/actions/setup-gradle in every Gradle job caches dependencies between runs (written on the default branch, read everywhere), so warm runs barely touch the mod mavens at all.

Claude-Session: https://claude.ai/code/session_013C85CXhFr5fz7ifGHCN1Z7

Transient TerraformersMC maven failures ("Premature end of chunk coded
message body" while downloading modmenu) were killing whole workflow runs.
Three layers of defense:

- Retry: .github/scripts/retry.sh reruns a failed command with a growing
  pause (3 attempts by default, 2 for the slow launch tests); every Gradle
  step in build.yml and publish.yml now goes through it.
- Modrinth maven fallback: gradle/modrinth-fallback.gradle adds the
  Modrinth maven (filtered to maven.modrinth) and a modmenuDependency()
  helper that probes the TerraformersMC coordinate and falls back to the
  identical maven.modrinth:modmenu jar when that maven is unreachable.
  Used by the variant builds and the launch-test harness.
- Dependency caching: gradle/actions/setup-gradle in every Gradle job
  caches dependencies between runs (written on the default branch, read
  everywhere), so warm runs barely touch the mod mavens at all.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013C85CXhFr5fz7ifGHCN1Z7
@github-actions

Copy link
Copy Markdown

The game launched and entered a survival singleplayer world with the HUD active, on every supported Minecraft version, for f4cd83f. A ❌ means that version's launch test did not produce a screenshot — check its job. Title-screen screenshots and game logs are in the run artifacts.

1.21
BetterHUD on Minecraft 1.21
1.21.1
BetterHUD on Minecraft 1.21.1
1.21.2
BetterHUD on Minecraft 1.21.2
1.21.3
BetterHUD on Minecraft 1.21.3
1.21.4
BetterHUD on Minecraft 1.21.4
1.21.5
BetterHUD on Minecraft 1.21.5
1.21.6
BetterHUD on Minecraft 1.21.6
1.21.7
BetterHUD on Minecraft 1.21.7
1.21.8
BetterHUD on Minecraft 1.21.8
1.21.9
BetterHUD on Minecraft 1.21.9
1.21.10
BetterHUD on Minecraft 1.21.10
1.21.11
BetterHUD on Minecraft 1.21.11
26.1
BetterHUD on Minecraft 26.1
26.1.1
BetterHUD on Minecraft 26.1.1
26.1.2
BetterHUD on Minecraft 26.1.2
26.2
BetterHUD on Minecraft 26.2

@dsnsgithub
dsnsgithub merged commit d5705b4 into main Jul 18, 2026
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants