surrealism/REVIEW.md
Use this checklist when reviewing Surrealism-related changes (host runtime, guest SDK, WIT, package format, and integration points).
allow_arbitrary_queries before sql(), allow_functions before run()). Server capabilities are never exceeded.#[serde(default)]). Omitted allow_functions means no function calls. Explicit opt-in only... components. FS roots are canonicalised; module FS access is sandboxed.max_memory_bytes are respected.u64::MAX - current_epoch). Keep tick granularity appropriate for timeout accuracy.surrealdb_types::{encode, decode}. No ad hoc serialization.surrealdb/types/src/flatbuffers/ must stay in sync between host and guest. Changes require coordinated updates.tests/surrealism_integration.rs or equivalent.parking_lot::Mutex (not std::sync::Mutex) to avoid poisoning and reduce overhead. No panic recovery across lock boundaries.u64::MAX to set_epoch_deadline overflows when epoch > 0. Use epoch_deadline_max() which computes u64::MAX - epoch - 1.release_controller. Trapped instances may have inconsistent state; returning them to the pool risks cross-request leaks.surrealism.wit or sdk.wit changes the component model ABI. Bump version strings and ensure host/guest compatibility..surli layout (surrealism/mod.wasm, surrealism/surrealism.toml, surrealism/exports.toml, surrealism/fs/). If breaking, document migration and version clearly.