Typed Workflow IR and validation for CodeWhale.
This crate deliberately stops at the Rust-owned IR boundary. Runtime tool exposure, worktree application, replay, and model execution are layered on top only after their cancellation and evidence semantics are proven.