You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Generic websocket transport bridge used by the guest's sync runtime
All host functions use the Extism string ABI (String -> String), so side-effect
functions should still return an empty string ("") from the host.
State access inside the guest uses non-panicking try_borrow/try_borrow_mut
paths for both binary hot-path handlers and JSON/lifecycle exports
(init/shutdown/handle_command/on_event/get_config/set_config), so
transient borrow conflicts are surfaced as warnings/errors instead of crashing
the plugin with RefCell borrow panics.
If browser loading fails with unresolved __wbindgen_* imports, the served
apps/web/public/plugins/diaryx_sync.wasm file is stale or incorrect. Re-run
./scripts/build-wasm.sh so the Extism guest artifact from this crate is copied
to public/plugins.
Binary Action Envelope
Binary exports return an action list encoded as:
[u16: num_actions]
for each action:
[u8: action_type] // 0=SendBinary, 1=SendText, 2=EmitEvent, 3=DownloadSnapshot
[u32: payload_len]
[payload_bytes]