Pin to the repo rust-toolchain and refresh workspace/crate manifests across openpay, eoc, arl, smart-byte, and joule-ui, and update the jouleclaw omni/policy/sandbox crates accordingly. No wire-format or conformance-vector changes. Co-Authored-By: Claude Opus 4.8 <[email protected]>
54 lines
2.1 KiB
TOML
54 lines
2.1 KiB
TOML
[package]
|
|
name = "op-orchestrator"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
description = "OpenPay cross-rail orchestrator: idempotency-keyed payment intents, fraud-gated routing, retry/fallback across card and A2A rails."
|
|
publish = false
|
|
|
|
[dependencies]
|
|
# `pci-scope` is enabled because op-vault (transitive) turns it on and
|
|
# cargo unifies workspace features. The orchestrator only ever sees a
|
|
# tokenized method by design, but it MUST compile the match arm for
|
|
# `PaymentMethod::RawPan` because the variant exists in the unified
|
|
# `op-core`. The arm errors loudly if reached — it's a design violation.
|
|
op-core = { path = "../op-core", features = ["pci-scope"] }
|
|
op-vault = { path = "../op-vault", features = ["in-memory"] }
|
|
op-fraud = { path = "../op-fraud" }
|
|
op-rails-card = { path = "../op-rails-card" }
|
|
op-rails-a2a = { path = "../op-rails-a2a" }
|
|
op-rails-crypto = { path = "../op-rails-crypto" }
|
|
|
|
thiserror = { workspace = true }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
uuid = { workspace = true }
|
|
sha2 = "0.11"
|
|
tracing = { workspace = true }
|
|
|
|
# Optional OpenTelemetry export. Gated behind the `telemetry`
|
|
# feature so headless deployments that don't ship spans aren't
|
|
# forced to compile the OTel stack. When the feature is off
|
|
# `instrument_transition` still emits a plain `tracing::span!` —
|
|
# subscribers downstream pick it up via the standard
|
|
# `tracing-subscriber` layers.
|
|
tracing-opentelemetry = { version = "0.32", optional = true }
|
|
opentelemetry = { version = "0.31", optional = true }
|
|
opentelemetry-otlp = { version = "0.31", features = ["grpc-tonic"], optional = true }
|
|
opentelemetry_sdk = { version = "0.31", features = ["rt-tokio"], optional = true }
|
|
tracing-subscriber = { workspace = true, optional = true }
|
|
|
|
[features]
|
|
default = []
|
|
# Wires `init_telemetry` to push spans over OTLP to a collector
|
|
# (Jaeger, Tempo, Honeycomb, etc.). Off by default so the orchestrator
|
|
# stays a pure compute crate.
|
|
telemetry = [
|
|
"dep:tracing-opentelemetry",
|
|
"dep:opentelemetry",
|
|
"dep:opentelemetry-otlp",
|
|
"dep:opentelemetry_sdk",
|
|
"dep:tracing-subscriber",
|
|
]
|