Skip to content

DESCRIBE WORKFLOW output is not re-executable: missing activity configs and unexecutable comments #5

@engalar

Description

@engalar

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:

  1. Have full MDL syntax with all configuration, or
  2. 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-test skill workflow cannot validate workflow fidelity

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions