GroupedDecisionPoint: Construct a grouped decision point

View source: R/grouped_decisions.R

GroupedDecisionPointR Documentation

Construct a grouped decision point

Description

Declares one shared trigger that opens a coordinated policy consultation across existing leaf DecisionPoint() objects. Group members are references to ids in schema$decision_points; a grouped declaration does not copy leaf action contracts or own pending-action slots.

When the group trigger fires, the Engine applies the triggering event's transition once and then evaluates each member's DecisionPoint() condition against the post-transition Entity. Members with no condition, or a condition returning TRUE, are eligible and are presented together in declared member order to policy$propose_plan(). An empty eligible set skips the policy call.

Usage

GroupedDecisionPoint(id, trigger, members, label = NULL)

Arguments

id

Non-empty character scalar. Group and leaf ids share one schema-wide namespace.

trigger

Non-empty character vector of event types or a predicate function ⁠function(event)⁠. Unlike a group-only leaf, a grouped decision point must own a trigger.

members

Character vector containing at least two distinct leaf decision-point ids. Declaration order is preserved and is the canonical member order.

label

Optional human-readable character scalar.

Value

A list of class "GroupedDecisionPoint".


fluxCore documentation built on Sept. 22, 2026, 5:07 p.m.