Summary
During end-to-end round-trip validation of mxcli MDL capabilities (create → describe → compare), the following issues were discovered.
Test Environment
- Mendix version: 11.6.4
- mxcli: latest
- Project: GenAIDemo (with WorkflowCommons module, workflows, demo users)
Issue 1: CALCULATED attribute lacks microflow binding → CE0026
Steps to reproduce:
CREATE PERSISTENT ENTITY RTTest.CalcEntity (
BaseValue: Integer DEFAULT 100,
Multiplier: Integer DEFAULT 2,
Result: Integer CALCULATED
);
Expected: Either syntax to specify the calculation microflow (e.g., CALCULATED BY RTTest.MF_CalcResult), or a clear error at MDL execution time.
Actual: Entity is created successfully, but Studio Pro reports:
CE0026 No microflow selected. Attribute 'RTTest.CalcEntity.Result' Domain model RTTest
The CALCULATED keyword creates a virtual/calculated attribute but provides no way to bind the required calculation microflow, making it unusable without manual Studio Pro intervention.
Suggestion: Add syntax like:
Result: Integer CALCULATED BY RTTest.MF_CalcResult
Issue 2: DESCRIBE DEMO USER does not round-trip ENTITY clause
Steps to reproduce:
-- Create with ENTITY clause (works correctly)
CREATE DEMO USER 'demo_tester' PASSWORD 'TestPassword1!' ENTITY Administration.Account (RTTestRole);
-- Read back
DESCRIBE DEMO USER 'demo_tester';
Expected output:
CREATE DEMO USER 'demo_tester' PASSWORD '***' ENTITY Administration.Account (RTTestRole);
Actual output:
CREATE DEMO USER 'demo_tester' PASSWORD '***' (RTTestRole);
The ENTITY Administration.Account clause is accepted during creation but lost on DESCRIBE, breaking round-trip fidelity.
Issue 3: CREATE WORKFLOW not supported
DESCRIBE WORKFLOW outputs a structured representation including USER TASK, PARALLEL SPLIT, DECISION, CALL MICROFLOW, CALL WORKFLOW, WAIT FOR NOTIFICATION, WAIT FOR TIMER, JUMP TO — but there is no corresponding CREATE WORKFLOW command.
Workflows can only be read, not created or modified via MDL.
Full Round-Trip Test Results
Passing
| Feature |
Create |
Describe |
Round-trip |
| String(length) — 200, 50, 2000, 20 |
✅ |
✅ |
✅ |
| DEFAULT (String, Decimal, Boolean, Integer) |
✅ |
✅ |
✅ (Decimal 0.0 → 0) |
| NOT NULL + ERROR message |
✅ |
✅ |
✅ |
| Empty microflow |
✅ |
✅ |
✅ |
| Microflow with RETRIEVE + RETURN |
✅ |
✅ |
✅ |
| Page (nested LAYOUTGRID/CONTAINER/DYNAMICTEXT) |
✅ |
✅ |
✅ |
| Module Role |
✅ |
✅ |
✅ |
| GRANT entity/microflow/page access |
✅ |
✅ |
✅ |
| GRANT/REVOKE EXECUTE ON WORKFLOW |
✅ |
✅ |
✅ |
| User Role (with System.User) |
✅ |
✅ |
✅ |
| Demo User (basic) |
✅ |
✅ |
✅ |
| Workflow DESCRIBE (read-only) |
— |
✅ |
— |
| Settings (UserEntity, TaskParallelism) |
— |
✅ |
unchanged |
Failing / Not Supported
| Feature |
Status |
Error |
| CALCULATED attribute |
❌ Creates but CE0026 in Studio Pro |
No microflow binding syntax |
| DEMO USER ENTITY clause |
⚠️ Partial |
DESCRIBE loses ENTITY info |
| CREATE WORKFLOW |
❌ Not supported |
Parse error |
| ALTER ENTITY |
❌ Not supported |
Not in grammar |
Test Scripts
Available at tests/roundtrip-create.mdl, tests/roundtrip-verify.mdl, tests/roundtrip-cleanup.mdl for reproduction.
Summary
During end-to-end round-trip validation of mxcli MDL capabilities (create → describe → compare), the following issues were discovered.
Test Environment
Issue 1: CALCULATED attribute lacks microflow binding → CE0026
Steps to reproduce:
Expected: Either syntax to specify the calculation microflow (e.g.,
CALCULATED BY RTTest.MF_CalcResult), or a clear error at MDL execution time.Actual: Entity is created successfully, but Studio Pro reports:
The
CALCULATEDkeyword creates a virtual/calculated attribute but provides no way to bind the required calculation microflow, making it unusable without manual Studio Pro intervention.Suggestion: Add syntax like:
Issue 2: DESCRIBE DEMO USER does not round-trip ENTITY clause
Steps to reproduce:
Expected output:
Actual output:
The
ENTITY Administration.Accountclause is accepted during creation but lost on DESCRIBE, breaking round-trip fidelity.Issue 3: CREATE WORKFLOW not supported
DESCRIBE WORKFLOWoutputs a structured representation including USER TASK, PARALLEL SPLIT, DECISION, CALL MICROFLOW, CALL WORKFLOW, WAIT FOR NOTIFICATION, WAIT FOR TIMER, JUMP TO — but there is no correspondingCREATE WORKFLOWcommand.Workflows can only be read, not created or modified via MDL.
Full Round-Trip Test Results
Passing
0.0→0)Failing / Not Supported
Test Scripts
Available at
tests/roundtrip-create.mdl,tests/roundtrip-verify.mdl,tests/roundtrip-cleanup.mdlfor reproduction.