-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Summary
DESCRIBE WORKFLOW produces MDL that cannot be fed back into CREATE WORKFLOW (exec round-trip fails). Several activity types are either silently dropped or rendered as non-executable comments.
Discovered by reading all workflows from the GenAIDemo baseline app (WorkflowBaseline.Workflow and WorkflowBaseline.Sub_Workflow).
Affected Activity Types
1. End-of-path activities rendered as unparseable comments
-- [Workflows$EndOfParallelSplitPathActivity] End of parallel split path
-- [Workflows$EndOfBoundaryEventPathActivity] End of boundary path
These are real workflow activities (they appear in the BSON) but DESCRIBE outputs them as freeform comments that the parser cannot interpret. The CREATE WORKFLOW writer must handle or auto-generate them.
2. Annotation rendered as unparseable comment
-- [Annotation] I am a note
Annotations are first-class workflow elements stored in BSON. DESCRIBE drops their content into a comment. MDL should support ANNOTATION 'text'; or similar syntax so they survive round-trip.
3. WAIT FOR TIMER missing duration
-- current output (incomplete):
WAIT FOR TIMER;
-- expected output (with config):
WAIT FOR TIMER DURATION 'PT1H';
The timer duration/interval is not emitted by DESCRIBE. Writing back the bare WAIT FOR TIMER; loses the configured duration.
4. WAIT FOR NOTIFICATION missing target
-- current output (incomplete):
WAIT FOR NOTIFICATION
-- expected output:
WAIT FOR NOTIFICATION 'NotificationEntityQualifiedName';
No notification target is emitted. Re-executing produces an unconfigured activity.
5. Boundary event timer missing duration
-- current output (incomplete):
BOUNDARY EVENTS
NonInterruptingTimer -- AnTimerEvent
{ ... };
-- expected output:
BOUNDARY EVENTS
NonInterruptingTimer DURATION 'PT30M' -- AnTimerEvent
{ ... };
6. USER TASK missing rich properties
Only name and outcomes are emitted. Missing:
- Task page (
PAGE Module.PageName) - Allowed roles
- Assignment microflow
- Due date expression
Reproduction
./bin/mxcli -p /mnt/data_sdd/gh/mxproj-GenAIDemo/App.mpr -c "DESCRIBE WORKFLOW WorkflowBaseline.Workflow"Then attempt to exec the output into a test project — will fail or produce incomplete workflow.
Expected Behavior
DESCRIBE WORKFLOW should emit complete, re-executable MDL. Every activity type should either:
- Have full MDL syntax with all configuration, or
- Be explicitly listed as unsupported with a tracking issue
Impact
- Round-trip testing (write → check → describe → write) is broken for all non-trivial workflows
- Migration/copy workflows between projects via MDL is unreliable
- The
mdl-roundtrip-testskill workflow cannot validate workflow fidelity