Compute the weakest (intersected) capability set across one or
more participating sources / descriptors. This is the canonical helper
for cross-protocol capability negotiation in a mixed-source
composition (#22): a composition supports a capability only when
every participating source supports it.
Promising a capability the weakest source lacks is the worst possible
mixed-source failure mode (silent wrong result), so consumers should
always intersect before fanning a query out to a heterogeneous set.
Accepts anything with a capabilities field (live Source instances
or plain SourceDescriptors). Empty input returns an empty set.
For per-operation reasoning across a heterogeneous mix, partition
sources first (e.g., feature sources only) and intersect on the
partition; intersecting a render-only source with a feature source
yields the empty set, which is honest but rarely actionable on its
own.
Compute the weakest (intersected) capability set across one or more participating sources / descriptors. This is the canonical helper for cross-protocol capability negotiation in a mixed-source composition (
#22): a composition supports a capability only when every participating source supports it.Promising a capability the weakest source lacks is the worst possible mixed-source failure mode (silent wrong result), so consumers should always intersect before fanning a query out to a heterogeneous set.
Accepts anything with a
capabilitiesfield (liveSourceinstances or plainSourceDescriptors). Empty input returns an empty set.For per-operation reasoning across a heterogeneous mix, partition sources first (e.g., feature sources only) and intersect on the partition; intersecting a render-only source with a feature source yields the empty set, which is honest but rarely actionable on its own.