[package] name = "compliance-agent" version = "0.1.0" edition = "2021" [lints] workspace = true [dependencies] compliance-core = { workspace = true, features = ["mongodb", "telemetry", "axum"] } compliance-graph = { path = "../compliance-graph" } compliance-dast = { path = "../compliance-dast" } # Native firmware build/target detection for bare-metal & RTOS artifacts. # Same-company IP, used directly (not via CLI) so the whole tramiton suite is # available to the onboarding classifier. NOTE: CI must be able to fetch this # private repo (see the git-auth step in .gitea/workflows/ci.yml). tramiton-core = { git = "ssh://git@gitea.meghsakha.com:22222/sharang/tramiton.git", tag = "v0.4.1" } # tramiton-repro drives the reproducible build (NixBackend seal_and_build) that # yields a sealed lock; `libraries_from_inputs` is the analysis-only fallback. tramiton-repro = { git = "ssh://git@gitea.meghsakha.com:22222/sharang/tramiton.git", tag = "v0.4.1" } # tramiton-sbom renders the bill of materials from a sealed lock (+ binary SCA). tramiton-sbom = { git = "ssh://git@gitea.meghsakha.com:22222/sharang/tramiton.git", tag = "v0.4.1" } serde = { workspace = true } serde_json = { workspace = true } tokio = { workspace = true } tracing = { workspace = true } tracing-subscriber = { workspace = true } chrono = { workspace = true } mongodb = { workspace = true } reqwest = { workspace = true } thiserror = { workspace = true } sha2 = { workspace = true } hex = { workspace = true } uuid = { workspace = true } secrecy = { workspace = true } regex = { workspace = true } axum = "0.8" tower-http = { version = "0.6", features = ["cors", "trace", "set-header"] } git2 = "0.20" octocrab = "0.44" tokio-cron-scheduler = "0.13" dotenvy = "0.15" hmac = "0.12" walkdir = "2" # Read-only XML tree parsing for PLCopen project files (POU extraction). roxmltree = "0.20" base64 = "0.22" urlencoding = "2" futures-util = "0.3" jsonwebtoken = "9" zip = { workspace = true } aes-gcm = { workspace = true } tokio-tungstenite = { version = "0.26", features = ["rustls-tls-webpki-roots"] } futures-core = "0.3" dashmap = { workspace = true } tokio-stream = { workspace = true } rand = { workspace = true } [dev-dependencies] compliance-core = { workspace = true, features = ["mongodb", "axum"] } tower = { version = "0.5", features = ["util"] } reqwest = { workspace = true } serde_json = { workspace = true } tokio = { workspace = true } mongodb = { workspace = true } uuid = { workspace = true } secrecy = { workspace = true } axum = "0.8" tower-http = { version = "0.6", features = ["cors"] }