feat(channels): add Channels.match() API and switch default to target mode
- Add Channels.match(name, ch) for dual-mode event filtering Returns true if ch matches any active channel for the logical name. In dual mode, matches both legacy and target channels. - Switch default channelMode from 'current' to 'target' RT channels now resolve to 4210-4213 instead of legacy 100-103. - Config default also updated so fresh installs start in target mode. - Rollback to 'current' mode still supported via setMode().
This commit is contained in:
@@ -52,15 +52,15 @@ Channels.registry = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
--- Channel mode controls which channel number is returned by get().
|
--- Channel mode controls which channel number is returned by get().
|
||||||
-- "current" — use legacy channel numbers (default, safe)
|
-- "current" — use legacy channel numbers (for rollback)
|
||||||
-- "target" — use new channel numbers (post-migration)
|
-- "target" — use new channel numbers (default, post-migration)
|
||||||
-- "dual" — listeners open both; senders use target
|
-- "dual" — listeners open both; senders use target
|
||||||
Channels.mode = 'current'
|
Channels.mode = 'target'
|
||||||
|
|
||||||
--- Load channel mode from persistent config if available.
|
--- Load channel mode from persistent config if available.
|
||||||
-- Called automatically on require; can be called again to reload.
|
-- Called automatically on require; can be called again to reload.
|
||||||
function Channels.loadConfig()
|
function Channels.loadConfig()
|
||||||
local cfg = Config.load('platform', { channelMode = 'current' })
|
local cfg = Config.load('platform', { channelMode = 'target' })
|
||||||
if cfg.channelMode then
|
if cfg.channelMode then
|
||||||
Channels.mode = cfg.channelMode
|
Channels.mode = cfg.channelMode
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user