[package] name = "jouleclaw-otel-authz" version.workspace = true edition.workspace = true license.workspace = true repository.workspace = true authors.workspace = true description = "Agentic-authorization span projection — the OTel semconv-proposal shape (identity + capability + trust/drift score on a parent span, one child span per fine-grained authorization decision step). Projects jouleclaw-attest::AgentIdentity, jouleclaw-trust::TrustSnapshot and jouleclaw-policy::TracedDecision into jouleclaw-otel SpanData. Pure projection — deterministic, no I/O, no opentelemetry runtime dep; transport stays downstream. Gives security teams the authorization layer today's GenAI telemetry is blind to: who acted (did:key + public key), what they were allowed to do, which step denied them, and how their trust score is drifting." [dependencies] jouleclaw-otel = { path = "../jouleclaw-otel" } jouleclaw-policy = { path = "../jouleclaw-policy" } jouleclaw-attest = { path = "../jouleclaw-attest" } jouleclaw-trust = { path = "../jouleclaw-trust" } serde = { workspace = true } thiserror = { workspace = true } [dev-dependencies] serde_json = { workspace = true }