Add :mode parameter to defslot with three behaviors: - :stack (default) — accumulate all registrations, render in order - :replace — each registration replaces previous entries - :single-winner — first registration wins, rest ignored Mode is set on first defslot call and frozen for subsequent calls to prevent conflicting mode specifications from different plugins. Store slot data as plist (:mode <keyword> :entries <list>) instead of bare entries list. Add 5 new tests covering mode-specific behavior. All 9 slot tests pass. All 13 suites pass at 100%.
2.0 KiB
2.0 KiB