Skip to content

Retry transient Forge cold-bootstrap downloads - #277

Merged
SkyBlade1978 merged 1 commit into
MinecraftModDevelopmentMods:master-1.21.1from
SkyBlade1978:master-1.21.1
Sep 1, 2026
Merged

Retry transient Forge cold-bootstrap downloads#277
SkyBlade1978 merged 1 commit into
MinecraftModDevelopmentMods:master-1.21.1from
SkyBlade1978:master-1.21.1

Conversation

@SkyBlade1978

Copy link
Copy Markdown
Contributor

Summary

  • retry the deliberately cold Forge/Mavenizer bootstrap up to three times
  • discard partial Forge and project Mavenizer state before each retry
  • preserve the downloaded Gradle/tool dependencies and the successful cache for the existing idempotence check
  • retain a hard failure after the third unsuccessful attempt
  • add a workflow contract test for the bounded retry and cleanup behavior

Why

The post-merge 1.21.1 CI run completed the full build, all tests and release artifact audits successfully. Only the empty-cache bootstrap failed when the Forge Mavenizer's mapping download received a transient java.net.SocketException: Connection reset during mergeMappings.

Failed run: https://github.com/MinecraftModDevelopmentMods/OreSpawn/actions/runs/33540896454

Validation

  • actionlint 1.7.12 passes for ci.yml
  • focused ReleaseWorkflowContractTest passes under the pinned Java 21/8/25 toolchains
  • retry preserves the exact Gradle argument vector and log output
  • partial Forge/Mavenizer state is removed before retrying
  • persistent failures remain fatal after three attempts
  • no production source, gameplay, API, schema or release artifact changed

This PR does not create a tag or publish a release.

@SkyBlade1978
SkyBlade1978 merged commit 57ecd25 into MinecraftModDevelopmentMods:master-1.21.1 Sep 1, 2026
5 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.

1 participant