You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
check -p and exec accept a navigation profile or menu whose home page or menu-item page/microflow does not exist #1569
Repro (v0.26.0, v0.27.0, current main, and #1564; Mendix 11.12.5)
create or replace navigation Responsive
home page Shop.NoSuchHome
menu (
menu 'G' (
menu item 'Bogus' page Shop.NoSuchPage;
menu item 'Bogus2' microflow Shop.ACT_NoSuchFlow;
);
menu item 'Bogus3' page Shop.NoSuchPage3;
);
The mdl 1 form behaves the same way:
create or modify navigation Responsive home page Shop.NoSuchHome {
menu item 'Bogus' ( OnClick: show page Shop.NoSuchPage )
menu 'G' { menu item 'Bogus2' ( OnClick: call microflow Shop.ACT_NoSuchFlow ) }
};
mxcli check nav.mdl -p app.mpr reports "Check passed!", with only deprecation warnings for the old form.
exec prints "Navigation profile 'Responsive' updated." and stores every item.
mx check is the first to object, with 4 × CE1613: "The selected page 'Shop.NoSuchHome' no longer exists." at the Navigation profile, and the same for each menu item's page or microflow.
show page and call microflow actions on a page are refused when their target doesn't exist, and so is an unknown icon. Navigation targets weren't among the reference kinds added for #1472. That includes the home page, which the original report didn't mention.
Why it matters
create or replace navigation replaces the menu it states (and, since #1522, keeps any clause it omits), and it is usually the last script of an apply. A renamed page or a typo in a menu target therefore passes per-file checks and lands in the model, and it only surfaces at the consistency check after everything has been applied. A run without mx check leaves a project that won't build.
Proposal
check -p reports an unresolved navigation or menu target, and exec refuses before writing, using the same resolution and wording as the existing page and flow reference checks. Targets created earlier in the same script, and targets in System or Marketplace modules, still resolve. I have a PR ready and will link it.
Summary
The issue reports that mxcli check -p and exec incorrectly allow navigation profiles or menu items that reference non‑existent pages or microflows, while the later mx check catches the problem.
Checklist for bug report completeness
Required info
Present?
Details
mxcli version
✅
v0.26.0, v0.27.0, current main, and #1564 mentioned
AI bug report (session log or mxcli diag --bundle)
❌
Not included
What’s missing
Could you please provide the session log or the output of mxcli diag --bundle for a run that reproduces the problem? This will help us diagnose the issue more precisely.
Thank you for the detailed report! Once we have the diagnostic information, we can move forward with investigating and fixing the behavior.
Activity
github-actions commentedon Oct 17, 2026
Issue Triage
Summary
The issue reports that
mxcli check -pandexecincorrectly allow navigation profiles or menu items that reference non‑existent pages or microflows, while the latermx checkcatches the problem.Checklist for bug report completeness
main, and #1564 mentionedmxcli check nav.mdl -p app.mpr,exec,mx checkcheck -pshould flag unresolved navigation/menu targets;execshould refuse before writingcheck -preports “Check passed!” (only deprecation warnings);execupdates navigation;mx checkyields CE1613 errorsmxcli diag --bundle)What’s missing
Could you please provide the session log or the output of
mxcli diag --bundlefor a run that reproduces the problem? This will help us diagnose the issue more precisely.Thank you for the detailed report! Once we have the diagnostic information, we can move forward with investigating and fixing the behavior.
Automated triage via OpenRouter — workflow source