Like Node EventEmitter: duplicate on stacks; emit N times; off / dispose pops one.
Like DOM EventTarget: same (type, listener) is a no-op add; one invoke; remove clears it.
Shared handler, independent owners (e.g. modules A/B both on('foo', S.method)).
One invoke; dispose / off pops one owner’s frame.
Named presets for DuplicateSubscriptionStrategy. Knobs remain the source of truth; these are sugar aligned with familiar host APIs and common app patterns.