Summary
DESCRIBE on a page/snippet emits widget actions as action: call_microflow X / action: call_nanoflow X, but the MDL parser only accepts action: microflow X / action: nanoflow X (no call_ prefix). The emitted MDL fails to re-parse, breaking the "DESCRIBE roundtrip" guarantee for any page/snippet containing an action button (or other action-bearing widget).
Reproduction
create module RT;
create snippet RT.S ( params: { $C: ConversationalUI.ChatContext } ) {
container c1 { actionbutton b (caption: 'X', action: call_nanoflow RT.N) } -- as emitted by DESCRIBE
}
$ mxcli check repro.mdl
- line 3:69 extraneous input 'RT' expecting {',', ')'}
Same failure with action: call_microflow RT.N.
The accepted forms pass:
actionbutton b (caption: 'X', action: nanoflow RT.N) -- ✓ Syntax OK
actionbutton b (caption: 'X', action: microflow RT.N) -- ✓ Syntax OK
Real-world trigger
describe snippet OntologyViewer.Snippet_ChatContext_Interaction emits:
actionbutton btnUseSuggestedUserPrompt (
...
Action: call_nanoflow ConversationalUI.ACT_ChatContext_ExecuteSuggestedUserPrompt,
...
)
which fails mxcli check. The same applies to the FullScreenChat page and any artifact with call_microflow/call_nanoflow button actions.
Expected
Either (a) DESCRIBE should emit action: microflow X / action: nanoflow X (matching the parser), or (b) the grammar should also accept the call_ prefix. (a) is the lower-risk fix.
Environment
mxcli built from current main; reproduced via mxcli check (syntax only, no project needed).
Summary
DESCRIBEon a page/snippet emits widget actions asaction: call_microflow X/action: call_nanoflow X, but the MDL parser only acceptsaction: microflow X/action: nanoflow X(nocall_prefix). The emitted MDL fails to re-parse, breaking the "DESCRIBE roundtrip" guarantee for any page/snippet containing an action button (or other action-bearing widget).Reproduction
Same failure with
action: call_microflow RT.N.The accepted forms pass:
Real-world trigger
describe snippet OntologyViewer.Snippet_ChatContext_Interactionemits:which fails
mxcli check. The same applies to the FullScreenChat page and any artifact withcall_microflow/call_nanoflowbutton actions.Expected
Either (a)
DESCRIBEshould emitaction: microflow X/action: nanoflow X(matching the parser), or (b) the grammar should also accept thecall_prefix. (a) is the lower-risk fix.Environment
mxcli built from current
main; reproduced viamxcli check(syntax only, no project needed).