walkerOS v3.3.1
Changes
Collector auto-generated destination keys now use lowercase letters only (a-z,
length 5) instead of base-36 (0-9a-z, length 4). getId gains an optional
charset parameter; default behavior is unchanged so session IDs and other
existing callers stay bit-for-bit identical.
Force collector.run=true during push and simulate so flows with run:false work
in CLI
Fix infinite recursion when registering on('consent', ...) handlers. The
collector's on() helper previously re-broadcast to all source on handlers,
causing self-re-registering consent handlers to recurse unbounded and crash the
tab. on() now fires only the newly-registered callback against current state.
Fix release pipeline to embed the correct __VERSION__ in published packages.
Fix race in source cache MISS wrapper: applyUpdate promise was
fire-and-forget, so a source fallback (e.g. express GIF default) could win
createRespond's first-call-wins race on the first request. wrappedPush now
awaits the pending update before returning.