Disparate Activity Instance IDs

I’m attempting to aggregate some process variable instances from the historic API but I’m having an issue where the activityInstanceIds of the returned variable instances are not unique compared to how the process actually executed.

For example, in my main process model I have a single sub-process with an input variable named “X”. This subprocess is configured as parallel, multi-instance. When executed with a collection of 3 items, I do indeed see 3 instances of “X” in both /variable-instance and /history/variable-instance APIs.

The ones returns from /variable-instance will contain truly unique activityInstanceIds (e.g. Activity_1tacrln:96ec0e1e-875e-11eb-bd35-0242ac160004) however the results from /history/variable-instance all have the same activityInstanceId (e.g. 0ecf6372-875e-11eb-bd35-0242ac160004).

What am I missing here, or what’s the rationale for not retaining the unique activityInstanceId from runtime into history tables?