SP slotplate
Pattern

Disposable

One cancellation primitive for everything.

Where: src/utils/Disposable.ts (Disposable, DisposableBag).

The rule: any class that allocates a resource (listener, ticker handle, reaction, Pixi object) implements Disposable. Parents dispose children in their own dispose().

Why: the resource-leak bug you don't catch in review is a day-of-launch support ticket. One primitive, one contract, no surprises.

See Disposables concept for patterns.