umari 0.2.1

SDK for building event-sourced WASM components for the Umari runtime
Documentation
package umari:effect@0.1.0;

interface effect {
    use umari:common/types@0.1.0.{event-query, stored-event};
    use umari:sqlite/types@0.1.0.{sqlite-error};

    variant error {
        sqlite(sqlite-error),
    }

    resource effect {
        constructor();
        /// Tags-based subscription - same as projector
        query: func() -> event-query;
        /// Extracts the partition key from an event for lane routing.
        /// None means the event falls into the global sequential lane.
        partition-key: func(event: stored-event) -> option<string>;
        /// Handle a single event. Returning an error triggers runtime retry.
        handle: func(event: stored-event);
    }
}