Isolate concurrent craftability GameTests before the alpha.7 release #84

Merged
vyxs merged 3 commits from fix/alpha7-intermittent-gametests into develop 2026-10-05 09:41:50 +00:00
Owner

The mixed-furnace test made two Max calculations in the default parallel batch while a terminal test could make a third calculation in the same dimension/tick. The production runtime correctly rejected that third request, causing an intermittent null-result assertion.

Give the mixed-furnace scenario its own batch and strengthen it to verify that a third request is still rejected, the next tick admits a new calculation, and stock stays unchanged. Keep the production rate limit, recipe assertions, timeouts and installable JAR unchanged. A manual diagnostic workflow runs six isolated KotlinForForge 5.9 worlds and stops at the first failure.

Evidence: the third pre-fix Linux world failed (run 117); a deliberately competing local query reproduced the exact 716-deficit null error, 413/414. The corrected local suite passes 414/414 with the new rate-limit assertions. Raw logs, reports, status snapshot and hashes are retained. Post-fix Linux repetition and the full five-configuration matrix must pass before release.

The user explicitly authorizes the subsequent alpha.7 tag and site distribution. Publication notes and the platform dossier are prepared; no CurseForge/Modrinth upload or public repository is created.

Final validation: Linux repetition campaign 118 passed all six fresh KotlinForForge 5.9 worlds (2,484 GameTests). Exact PR head full workflow 119 passed build, all five 414-test profiles and packaging (2,070 GameTests). Deterministic collision reproduction: 413/414 before; isolated batch: 414/414 after, including unchanged budget and next-tick reset assertions. Installable alpha.7 remains byte-identical to the native multiplayer and four-modpack tested artifact, SHA-256 9e08c618a9b59977b37501893e1bd6960fbf07ca20118ced7a52b82293e477cd.

The mixed-furnace test made two Max calculations in the default parallel batch while a terminal test could make a third calculation in the same dimension/tick. The production runtime correctly rejected that third request, causing an intermittent null-result assertion. Give the mixed-furnace scenario its own batch and strengthen it to verify that a third request is still rejected, the next tick admits a new calculation, and stock stays unchanged. Keep the production rate limit, recipe assertions, timeouts and installable JAR unchanged. A manual diagnostic workflow runs six isolated KotlinForForge 5.9 worlds and stops at the first failure. Evidence: the third pre-fix Linux world failed (run 117); a deliberately competing local query reproduced the exact 716-deficit null error, 413/414. The corrected local suite passes 414/414 with the new rate-limit assertions. Raw logs, reports, status snapshot and hashes are retained. Post-fix Linux repetition and the full five-configuration matrix must pass before release. The user explicitly authorizes the subsequent alpha.7 tag and site distribution. Publication notes and the platform dossier are prepared; no CurseForge/Modrinth upload or public repository is created. Final validation: Linux repetition campaign 118 passed all six fresh KotlinForForge 5.9 worlds (2,484 GameTests). Exact PR head full workflow 119 passed build, all five 414-test profiles and packaging (2,070 GameTests). Deterministic collision reproduction: 413/414 before; isolated batch: 414/414 after, including unchanged budget and next-tick reset assertions. Installable alpha.7 remains byte-identical to the native multiplayer and four-modpack tested artifact, SHA-256 9e08c618a9b59977b37501893e1bd6960fbf07ca20118ced7a52b82293e477cd.
ci: reproduce intermittent packaged tests in isolated worlds
Some checks failed
CI detail / stress-build Passed
CI detail / stress-older-kotlin-1 Passed
CI detail / stress-older-kotlin-2 Passed
CI detail / stress-older-kotlin-3 Exit 1: BUILD FAILED in 2m 20s
CI detail / stress-older-kotlin-3 / test-failure-1 [09:00:56] [Server thread/ERROR] [minecraft/LogTestReporter]: realfurnacerecipescombinerawironandoreandexcludealreadystoredingots failed at -8697498, -60, 2104634! The full production deficit is 716, not one dust: null
CI detail / stress-older-kotlin-3 / test-failure-2 [09:01:19] [Server thread/INFO] [minecraft/GameTestServer]: 1 required tests failed :(
CI detail / stress-older-kotlin-3 / 1 [09:00:37] [Server thread/ERROR] [de.ne.in.pe.CoreStorageData$Companion/]: Nebula production data quarantined: Failed requirement.
CI detail / stress-older-kotlin-3 / 2 [09:00:37] [Server thread/ERROR] [de.ne.in.pe.CoreStorageData$Companion/]: Nebula production data quarantined: Failed requirement.
CI detail / stress-older-kotlin-3 / 3 [09:00:37] [Server thread/ERROR] [de.ne.in.pe.CoreStorageData$Companion/]: Nebula production data quarantined: Failed requirement.
CI detail / stress-older-kotlin-3 / 4 [09:00:37] [Server thread/ERROR] [de.ne.in.pe.CoreStorageData$Companion/]: Nebula production data quarantined: Failed requirement.
CI detail / stress-older-kotlin-3 / 5 [09:00:40] [Server thread/ERROR] [de.ne.in.pe.CoreStorageData$Companion/]: Nebula production data quarantined: Failed requirement.
CI detail / stress-older-kotlin-3 / 6 [09:00:41] [Server thread/ERROR] [de.ne.in.pe.CoreStorageData$Companion/]: Nebula production data quarantined: Failed requirement.
CI detail / stress-older-kotlin-3 / 7 [09:01:13] [Server thread/WARN] [de.ne.in.ex.WorldExternalNetworks/]: Nebula external network 387dfb3e-a897-441b-b88f-89dc7e4eecac has 1 compatibility problems: [ExternalIssue(address=minecraft:overworld|-2390740691419906107, reason=invento
CI detail / stress-older-kotlin-3 / 8 [09:01:13] [Server thread/WARN] [de.ne.in.ex.WorldExternalNetworks/]: Nebula external network 387dfb3e-a897-441b-b88f-89dc7e4eecac has 1 compatibility problems: [ExternalIssue(address=minecraft:overworld|-2390740691419906107, reason=invento
CI detail / stress-older-kotlin-3 / 9 [09:01:13] [Server thread/ERROR] [de.ne.in.pe.CoreStorageData$Companion/]: Nebula production data quarantined: Failed requirement.
CI detail / stress-older-kotlin-3 / 10 > Task :runPackagedTestServer FAILED
CI detail / stress-older-kotlin-3 / 11 > Process 'command '/home/ubuntu/.cache/act/tool_cache/Java_Temurin-Hotspot_jdk/21.0.12-101.0.LTS/x64/bin/java'' finished with non-zero exit value 1
CI detail / stress-older-kotlin-3 / 12 > Run with --stacktrace option to get the stack trace.
CI detail / stress-older-kotlin-3 / 13 > Run with --info or --debug option to get more log output.
CI detail / stress-older-kotlin-3 / 14 > Run with --scan to get full insights.
CI detail / stress-older-kotlin-3 / 15 > Get more help at https://help.gradle.org.
CI detail / stress-older-kotlin-3 / 16 BUILD FAILED in 2m 20s
4fa6c81c2e
test: isolate mixed-furnace calculations from the shared tick budget
All checks were successful
CI detail / stress-build Passed
CI detail / stress-older-kotlin-1 Passed
CI detail / stress-older-kotlin-2 Passed
CI detail / stress-older-kotlin-3 Passed
CI detail / stress-older-kotlin-4 Passed
CI detail / stress-older-kotlin-5 Passed
CI detail / stress-older-kotlin-6 Passed
a595b614ff
docs: prepare the authorized alpha.7 publication dossier
All checks were successful
CI detail / build Passed
CI detail / vanilla Passed
CI detail / mekanism Passed
CI detail / industrial Passed
CI detail / older-kotlin Passed
CI detail / newer-kotlin Passed
CI detail / package Passed
Build Nebula Storage / Build and packaged GameTests (pull_request) Successful in 15m11s
6d2694dbb0
vyxs merged commit eea8fde872 into develop 2026-10-05 09:41:50 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
vyxs/nebula-storage!84
No description provided.