[package] name = "jouleclaw-oracle" version.workspace = true edition.workspace = true license.workspace = true repository.workspace = true authors.workspace = true description = "The Oracle — closure-gate Verdict { Pass | Fail(reasons) } over a Candidate. Datum's loop-closer; the third leg of the JouleClaw triangle. Distinct from existing scoring primitives (jouleclaw-calibration, -critic, -verification-tier) because those produce SCORES; the Oracle produces a GATE DECISION — nothing ships without Pass. Trait surface + CompositeOracle for first-failure-short-circuit; pure verdict types, no compile/test runtime here (those live in downstream crates that impl Oracle)." [dependencies] serde = { workspace = true } serde_json = { workspace = true } thiserror = { workspace = true } async-trait = { workspace = true } [dev-dependencies] tokio = { workspace = true, features = ["macros", "rt"] }