[package] name = "jouleclaw-jcs" version.workspace = true edition.workspace = true license.workspace = true repository.workspace = true authors.workspace = true description = "RFC 8785 JSON Canonicalization Scheme (JCS) for JouleClaw. Pure-Rust canonical-JSON encoder + BLAKE3 content hash. Adds a JSON track alongside JCR-1's CBOR track so receipts can be sealed in either canonical form: choose CBOR for binary-efficient interop with COSE_Sign1, choose JCS for JSON-native ecosystems (web, OpenTelemetry, transparency-log APIs that take JSON). Number serialization per ECMA-262, string escaping per RFC 8259, object keys sorted by UTF-16 code units, arrays preserve order, no insignificant whitespace, strict UTF-8 output." [dependencies] serde = { workspace = true } serde_json = { workspace = true, features = ["preserve_order"] } thiserror = { workspace = true } blake3 = { workspace = true }