SubActivityHandler doesnt support loadType "load" correctly for CDM sub activities

In CDM sub activities, cddDataProvider.determineCase(…) can return loadType = “load” after initial creation.
In affected versions, SubActivityHandler.load(…) does not explicitly handle this case (or handles it inconsistently), which causes runtime failure / wrong behavior on reload of sub activities.

image

Affected Component
@com.mgmtp.a12.relationshipengine/relationshipengine-core

File(s):
•src/internal/extensions/cdm/dataProvider/internal/subactivity/SubActivityHandler.ts
•lib/internal/extensions/cdm/dataProvider/internal/subactivity/SubActivityHandler.js

When sub activity is reopened/reloaded, loadType is “load”, but SubActivityHandler.load(…) code path is not robust for this case in affected package version.
This leads to failing runtime flow in our app (we had to patch package post-install).
Expected Behavior
SubActivityHandler.load(loadType) should handle:
1.“create”: initialize CDD
2.“load”: delegate to standalone CDM load implementation
3.Any other value: throw explicit error
Expected logic:
if (“create” === loadType) {
yield* call(initializeCdd, this.activity, yield* call(() => this.modelsPromise));
} else if (“load” === loadType) {
yield* call(loadStandaloneCdd, this.activity, this.modelsPromise, this.requestSelectorMap);
} else {
throw new Error(Load type "${loadType}" is not supported for CDM sub activities.);
}

current dependencies:
"@com.mgmtp.a12.base/base-model-api": "29.2.0",
"@com.mgmtp.a12.client/client-core": "16.2.0",
"@com.mgmtp.a12.client/client-data": "16.2.0",
"@com.mgmtp.a12.contentengine/contentengine-core": "0.10.0",
"@com.mgmtp.a12.contentengine/contentengine-default-element-library": "0.10.0",
"@com.mgmtp.a12.crud/crud-core": "2.2.1",
"@com.mgmtp.a12.dataservices/dataservices-access": "38.3.4",
"@com.mgmtp.a12.expression/expression-core": "2.0.5",
"@com.mgmtp.a12.formengine/formengine-content-elements": "38.3.1",
"@com.mgmtp.a12.formengine/formengine-core": "38.3.1",
"@com.mgmtp.a12.kernel/kernel-core-runtime-api-ts": "30.7.1",
"@com.mgmtp.a12.kernel/kernel-md-facade": "30.7.1",
"@com.mgmtp.a12.overviewengine/overviewengine-core": "38.2.0",
"@com.mgmtp.a12.relationshipengine/relationshipengine-core": "2.2.1",
"@com.mgmtp.a12.treeengine/treeengine-core": "10.2.0",
"@com.mgmtp.a12.uaa/uaa-authentication-client": "9.3.1",
"@com.mgmtp.a12.utils/utils-collections": "6.1.0",
"@com.mgmtp.a12.utils/utils-connector": "8.1.0",
"@com.mgmtp.a12.utils/utils-localization": "7.1.0",
"@com.mgmtp.a12.utils/utils-localization-react": "7.1.0",
"@com.mgmtp.a12.utils/utils-logging": "6.1.0",
"@com.mgmtp.a12.widgets/widgets-core": "38.2.0",

@tulio-smooth-packet which version of relationship-engine are you on? If it is 2.2.0, then an upgrade to the recent patch 2.2.1 should resolve that issue :smiley:

hi im already on "@com.mgmtp.a12.relationshipengine/relationshipengine-core": "2.2.1"

Sorry, that was my bad, the fix is planned for 2025.06-ext5, which is 2.3.0, and now is on the way to be released soon. You could track the ticket status here in case you can access to A12-18585.

2025.06-ext5 fixed it :+1: