Tide

Legacy state API

Migration notes for the deprecated StateHost integration.

state.*, the Argon-specific fetch facade, connectArgon, and defineWorkflow({ argon }) are no longer part of the supported workflow surface. Argon is installed as a namespaced plugin:

import { argon } from "tide:plugins/argon";

const employees = await argon.queries.all_employees.run({});
await argon.mutations.hire.run({ /* typed arguments */ });

Run tide install after declaring plugins.argon in tide.json. The generated module dispatches through the generic Rust plugin registry and journals plugin ID, exact version, operation, request, descriptor, and result.

The Rust StateHost trait and op_state_* journal handlers remain temporarily as an embedder compatibility layer so old journals can drain. New shipped workflows do not receive globalThis.state. A workflow migrated to op_plugin_call must use a new invocation ID rather than replaying an in-flight op_state_* journal with changed source.

See Driving Argon and the architecture reference.