Skip to content

Attribute-based find/filter list operations can roundtrip as invalid expressions #343

@hjotha

Description

@hjotha

Summary

find($List, Attribute = expression) and filter($List, Attribute = expression) can be described correctly but rebuilt as expression-based list operations. The resulting MPR can then fail Studio Pro validation with CE0117 on the list operation activity.

Expected behavior

When the MDL condition is an equality comparison on a list member, mxcli exec should rebuild the same attribute-based list operation shape that Studio Pro stores as Microflows$Find or Microflows$Filter.

Actual behavior

The builder always creates FindByExpression / FilterByExpression, and the writer does not serialize the attribute-based variants. This loses the stored operation shape even when the text output looks equivalent.

Proposed fix

Detect Attribute = expression conditions during build, resolve the member as an attribute or association from the input list type, build FindByAttributeOperation / FilterByAttributeOperation, and serialize them as Microflows$Find / Microflows$Filter.

Related

Part of the broader microflow roundtrip validity tracker #332.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions