Preset Name Not Populated in Activity Instances Scheduled
Checked for duplicates
Yes - I've already checked
Alternatives considered
No - I haven't considered
Related problems
I'm frustrated when [...] happens as documented in issue-XYZ
Describe the feature request
Currently, when scheduling activity instances utilizing presets, the preset name is not populated for the activity instances in the plan. Instead, the goal populates the activity with all of the matching preset parameters without the preset name. When inspecting the scheduled activity, the parameter values have the orange circle signifying they were "Modified" but not the blue circle identifying they were an "Activity Preset Value".
Actual parameter list of activity instance scheduled with a preset:
Expected parameter list of activity instance scheduled with a preset:
For reference the goal was setup following aerie docs as follows:
var schedule_Mech_Maint_and_Outgas: Goal = Goal.ActivityRecurrenceGoal({
activityTemplate: ActivityTemplates.MASP_AD_Execute_RTS(ActivityPresets.MASP_AD_Execute_RTS["Mech_Maint_and_Outgas_Spec"]),
interval: Temporal.Duration.from({ days: 182}) // 2x/year (every 6 months)
}).applyWhen(Windows.And(
Real.Resource("/geometry/spacecraftBodyRange_SUN").greaterThan(0.9 * AU)
))
Some use cases where this implementation is not ideal:
- Use of linking activities to activity instances with certain presets via a Coexistence Goal (use in the forEach)
- Use of the activityFinder to identify if an activity instance with a preset setting contributes to goal satisfaction
Both of the above use cases cannot be setup if activity instances are not scheduled in a plan with their preset identifier. The workaround is to set the activityFinder/coexistence goal based on the concrete parameter values in the preset (rather than by reference to the preset directly). However this introduces a level of rigidity that is not ideal given preset parameter values may be altered by teams.