G.5:4.4b - Declared selected-set result and closure rule
When the current question is selector-facing result declaration, state one explicit selected-set result rather than leave it implicit in a selector trace, comparison note, or local choice.
For method dispatch, that result closes selector work over grounded rows. For a JointUseSet, it records already identified members that are all included for one named use. It does not replace registry maintenance, comparison rules, the upstream choice or inclusion basis, or the patterns that identify the members and their relations.
The admissible selector outcome families here are:
SelectorOutcomeKind = SetResultOutcome, whose closedSetResultFamilyvalue set isShortlistwhen alternatives are retained for later choice and the result does not order them,RankedShortlistwhen the result orders those retained alternatives, andJointUseSetwhen every named member is included for one named use;SelectorOutcomeKind = HandoffOutcome, withHandoffKind = SpecialistHandoffor one other narrowed handoff plan when heterogeneity is the truthful downstream result;SelectorOutcomeKind = AbstainOutcomewhen no admissible candidate exists and the truthful result is one abstain; andSelectorOutcomeKind = EscalationOutcomewhen no admissible candidate exists and the truthful result is one escalation.
G.5-3 Select may emit one of these outcome kinds only over the exact Method candidates admitted through its kernel; G.5-6 DeclareSetResult emits SetResultOutcome from exact already identified members and a current inclusion basis. Neither branch performs an upstream choice, makes a member relation obtain, or proves actual selection Work.
A JointUseSet uses this bounded representation:
namedUsestates the one joint use;memberEntriescontains one keyed entry per included member;- every entry has one exact
memberRef; the membership result adds no per-member contribution or basis field; - each exact
memberRefoccurs at most once, and entry order has no semantic effect; - if a serialization also emits top-level
members, it is only the unique set projection ofmemberRefvalues frommemberEntries, never a second maintained list; ordering, inclusion conditions, and sufficient top-levelbasisPinsremain explicit; and- candidate-pool membership and excluded candidates stay separate from emitted joint-use membership.
Exact content, claims about a member’s use or contribution, and direct relations keep their own governed records. When one supports the membership result, cite that existing record among basisPins; memberEntries creates neither the cited content nor a new contribution relation.
For framework use, memberRef may name an exact already identified edition under its existing identity rules. Do not populate MethodRef, create a registry row, or classify that edition as a Method merely to emit the result.
Every outcome still states its SelectorOutcomeKind, public result kind when applicable, members, keyed entries, handoff content, or blocking condition, ordering, and sufficient basis pins. A handoff also states its next downstream use boundary.
A compact retained-alternative result may look like:
SelectorOutcome(
selectorOutcomeKind = SetResultOutcome,
setResultFamily = Shortlist,
members = [family_A, family_C],
shortlistId = shortlist_17,
ordering = unordered,
basisPins = [pathSlice_41, scr_22],
nextUse = downstream_comparison
)
A compact joint-use result may look like:
SelectorOutcome(
selectorOutcomeKind = SetResultOutcome,
setResultFamily = JointUseSet,
namedUse = cohort_review,
memberEntries = [
{ memberRef = FPF@C },
{ memberRef = Domain@D },
{ memberRef = Local@L }
],
ordering = unordered,
inclusionConditions = [all_three_editions_required_for_cohort_review],
basisPins = [choice_result_12, edition_basis_7]
)
Close with Shortlist or RankedShortlist when the result retains alternatives. Close with JointUseSet only when every member is included for the named use and its keyed membership can be stated truthfully. Close with a handoff, abstain, or escalation outcome when that is the actual result. If the result omits its result family, members or member entries, ordering, named use where required, or basis pins, it is not a complete G.5 result.