openclaw/ui
Peter Steinberger 2babe000b4
fix(reactions): worker-owned writes, final-dispatch route recheck, single-slot mirrors (#162434)
Follow-up to #161053 (shared-session emoji reactions).

Reaction writes now run through the SQLite worker admission the sibling
session stores use (runOpenClawAgentWorkerWrite); the native path stays
only for process-held incognito databases the worker cannot reopen by
path, and the handler revalidates live authority around the awaited
write.

The plugin action dispatch path awaits onPlatformSendDispatch right
before the synchronous handoff fence, exactly like the send path, so the
reaction mirror re-reads the conversation binding at the final handoff
and refuses a message whose conversation was rebound while the action
runner prepared delivery.

Channels with one bot reaction per message (Telegram bots, WhatsApp)
declare the new optional ChannelPlugin.capabilities.reactionSlots =
"single"; when a person removes one emoji while others remain, the
mirror re-sets the newest surviving emoji instead of clearing the slot.
Multi-slot channels are unchanged.

Also trims redundant scaffolding in the reaction handler, kernel, UI
component and worker.

Proof: 119 focused tests across store, handler, dispatch and UI; mocked
Gateway reactions e2e; typecheck lanes; database-worker inventory check;
live two-person Gateway proof with the qa-channel mirror reporting
delivered through the final-dispatch hook.
2026-10-01 01:42:29 -07:00
..
config improve(ui): chat opens faster on slow links by dropping empty boot requests (#161648) 2026-09-30 23:24:16 -07:00
docs/design-system refactor: delete unreferenced production code (#159847) 2026-09-29 21:47:06 -07:00
public improve(ui): soften GitHub reference backgrounds across themes (#160844) 2026-09-29 01:03:28 +00:00
scripts perf(ui): record only route-reachable modules in the boot manifest (#162382) 2026-09-30 22:00:49 -07:00
src fix(reactions): worker-owned writes, final-dispatch route recheck, single-slot mirrors (#162434) 2026-10-01 01:42:29 -07:00
test perf(test): reduce Bun UI test time and memory growth (#156220) 2026-09-24 19:51:28 +00:00
.gitignore
AGENTS.md perf(ui): record only route-reachable modules in the boot manifest (#162382) 2026-09-30 22:00:49 -07:00
index.html fix: soften login screens and unify native and web controls (#157251) 2026-09-24 13:01:53 +00:00
package.json chore(deps): update libterminal to 0.3.7 (#162520) 2026-10-01 15:40:49 +07:00
tsconfig.json fix(build): package preparation fails on unrelated test types (#157318) 2026-09-24 11:25:18 -07:00
vite.config.ts improve(ui): chat opens faster on slow links by dropping empty boot requests (#161648) 2026-09-30 23:24:16 -07:00
vitest.config.ts test(ui): prevent sidebar reloads during browser collection (#161772) 2026-09-30 03:42:32 -07:00
vitest.node.config.ts