Skip to content

test(docker): gate the MPRv2 Build guard on Mendix >= 11.6.1 (fixes the 10.24 nightly) - #73

Merged
ako merged 1 commit into
mainfrom
claude/fix-nightly-1024-build-test
Aug 1, 2026
Merged

test(docker): gate the MPRv2 Build guard on Mendix >= 11.6.1 (fixes the 10.24 nightly)#73
ako merged 1 commit into
mainfrom
claude/fix-nightly-1024-build-test

Conversation

@ako

@ako ako commented Aug 1, 2026

Copy link
Copy Markdown
Owner

Fixes the nightly failure on the Mendix 10.24.19.104498 matrix row (run 30685895419). My regression, introduced with the mendixlabs#808 fix.

What happened

The nightly matrix is ['10.24.19.104498', '11.6.6', '11.12.0']. TestBuild_PreservesMPRv2StorageFormat failed on the 10.24 row only:

Build failed: portable app distribution requires Mendix >= 11.6.1, found 10.24.19.104498
--- FAIL: TestBuild_PreservesMPRv2StorageFormat (13.65s)
--- PASS: TestCheck_PreservesMPRv2StorageFormat  (27.66s)

10.24 is MPRv2 — v2 storage arrived in 10.18 — so the test's storage-format precondition passed, and it went on to call Build, which refuses below 11.6.1 before ever reaching the update-widgets step the test is about. The failure is a property of the matrix row, not a regression in the mendixlabs#808 fix itself. Both 11.x rows clear the guard, which is why exactly one job went red.

The fix

Adds the missing precondition. This is a genuine capability gate, not a masked failure — there is no portable app distribution to protect on 10.x. And coverage is not lost: TestCheck_PreservesMPRv2StorageFormat has no version guard, runs on every matrix row, and passes on 10.24 today, so MPRv2 preservation is still verified there.

Verified against real MxBuild installs, not reasoned about

cache state result
only 10.24, before FAIL — the exact CI error
only 10.24, after SKIP, and Check still PASS
only 11.x, after PASS (39s — the test still genuinely runs)

The last row is the one that matters. A version gate that silently disabled the test on every row would be worse than the failure it fixes — and that exact trap (a skip reading as a pass) is what let mendixlabs#808's original test sit dormant in the first place.

I reproduced the failure by downloading MxBuild 10.24.19.104498 and hiding the 11.x caches so resolution matched the CI job, rather than inferring from the version guard.

Follow-up worth considering

The nightly's integration step gives no signal about skips. If a future test skips on every row for an unintended reason, the job stays green. Adding -v and surfacing the skip count would make that visible — happy to do it if you want, but it's a separate change from unbreaking the build.

🤖 Generated with Claude Code

https://claude.ai/code/session_012XR649rKk68z6gBpngu6MA


Generated by Claude Code

The nightly matrix runs integration tests against 10.24.19.104498, 11.6.6 and
11.12.0. TestBuild_PreservesMPRv2StorageFormat, added with the mendixlabs#808 fix, failed
on the 10.24 row only:

  Build failed: portable app distribution requires Mendix >= 11.6.1,
  found 10.24.19.104498

10.24 is MPRv2 (v2 storage arrived in 10.18), so the test's storage-format
precondition passed and it went on to call Build, which refuses below 11.6.1
before it ever reaches the update-widgets step the test is about. The failure is
a property of the matrix row, not a regression in the fix. The 11.x rows are
unaffected, which is why only one job went red.

Adds the missing precondition. This is a real capability gate rather than a
masked failure: there is no portable app distribution to protect on 10.x, and
TestCheck_PreservesMPRv2StorageFormat has no version guard, so MPRv2
preservation is still covered on every matrix row — it passes on 10.24 today.

Reproduced and verified against real MxBuild installs rather than reasoned about:

  only 10.24 cached, before  ->  FAIL (the exact CI error)
  only 10.24 cached, after   ->  SKIP, and Check still PASSes
  only 11.x cached, after    ->  PASS (39s — the test still genuinely runs)

The last of those matters most: a version gate that silently disabled the test
everywhere would be worse than the failure it fixes.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012XR649rKk68z6gBpngu6MA
@ako
ako merged commit d4bf786 into main Aug 1, 2026
3 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