[package] name = "jouleclaw-reason" version.workspace = true edition.workspace = true license.workspace = true repository.workspace = true authors.workspace = true description = "Reason primitive ported from RCE (joulesperbit/crates/rce/src/spec/primitives.rs) — first-class verifiable PURPOSE. A `Reason { why, author, validated_at, references }` carried on every artifact answers the half of verification the compiler can't: 'does this do what was intended?'. The Rust compiler verifies the type / memory / concurrency contract; this crate gives consumers a structural place to carry the intent contract. Pairs with jouleclaw-currency (toolchain freshness) + jouleclaw-adjudication (external check). Tiny primitive — sub-300 lines — because the value is in being POINTED AT, not in being clever." [dependencies] serde = { workspace = true } serde_json = { workspace = true } thiserror = { workspace = true } blake3 = { workspace = true } chrono = { workspace = true, features = ["serde"] }