Matched cohort comparisons
Use the shared contract and
filters/units.
Fix the outcome definition/provenance, metric, aggregation, units, timezone and one selector S.
Freeze the user's agreed baseline F, separately from current exploratory filters.
Reuse metadata versions and exact typed cohort values. Use the
investigation method for findings/status.
Ordered trace
- Copy baseline F twice. For attribute cohorts append
{attributeName:A,dataType:T,attributeValues:[X],isInclusive:true} to
attributeValueFilters for A's cohort value, and the same shape with Y for B.
Preserve other agreed baseline conditions; retain rework restrictions only if part of that
baseline. Do not leak an exploratory/outcome-only subset into a full-population comparison.
Change only the intended cohort condition. If values are unknown, request
get_attribute_values_v2 {S,attributeName:A,itemsPerPage:20,itemsToSkip:0,filterOptions:F};
it returns values, not frequencies.
get_process_overall_metrics_v2 {S,filterOptions:F_A} ->
get_process_overall_metrics_v2 {S,filterOptions:F_B}.
No metrics, groupBy or aggregation parameter exists. Use the same returned metric definitions;
native CaseDuration/CaseWaitingTime are means.
- Only if a grouped explanation is needed and statistics is advertised, make a matched pair:
get_attribute_statistics {S,attributeName:A,filterOptions:F_A,itemsPerPage:5,itemsToSkip:0,metricToSortBy:"TotalDuration",sortOrder:"Descending"},
then exactly the same call with F_B. Do not treat independent top-five pages as a complete aligned population.
Continue relevant value/group pages or matched follow-ups when needed, without fixed call quotas.
Stop at sufficient evidence, no new information or a capability/error boundary; no blind sweeps.
Do not create views or use two inclusive timeframes in one query as an A/B comparison.
Time and reproducibility
For periods, change only one explicit timeframeFilters start/end pair in each copied F.
Case windows mean Contained, not cases Started/Completed/Intersecting or all events during the period.
If completed-only membership including earlier starts is essential, stop/reframe or route
to derive-metric/a user-confirmed existing matching view. Never invent a date-mode field
or promise unknown end-boundary behavior.
If refresh is reported or reproducibility is at risk, recheck details.
Changed PV/PMV invalidates the pair: mark inconclusive, stop or deliberately rerun both,
not just the second.
Process selection resolves latest; no direct version selector or atomic comparison snapshot exists.
Views pin version context but their configuration is mutable/cached.
Report A/B counts, mean metrics, absolute delta and relative change only for a nonzero baseline.
Empty cohorts mean insufficient evidence, not zero duration/infinite improvement.
State scope/version and unmatched-group coverage; at most five headline rows.
Recorded means do not establish closure, equal maturity or complete lifecycles. Report those
as unknown unless supported; qualify the comparison, not an assumed causal improvement.
Retain baseline/cohort filters, evidence references, status and alternatives. Overlapping groups
cannot be added as unique-case totals.
Object-centric comparisons belong in analyze-objects, not case-filter fallbacks.