[package]
name = "meerkat-runtime"
description = "v9 runtime control-plane for Meerkat agent lifecycle"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
authors.workspace = true
repository.workspace = true
homepage.workspace = true
documentation.workspace = true
keywords.workspace = true
categories.workspace = true

[dependencies]
meerkat-core = { workspace = true, features = ["__meerkat-generated-authority-bridge"] }
meerkat-live = { workspace = true, optional = true, features = ["__meerkat-generated-authority-bridge"] }
meerkat-machine-dsl = { workspace = true }
meerkat-machine-kernels = { workspace = true }
meerkat-machine-schema = { workspace = true }
meerkat-contracts = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
uuid = { workspace = true }
chrono = { workspace = true }
thiserror = { workspace = true }
async-trait = { workspace = true }
indexmap = { version = "2", features = ["serde"] }
meerkat-machine-derive = { workspace = true }
rusqlite = { workspace = true, optional = true }
tracing = { workspace = true }
meerkat-store = { workspace = true, optional = true }

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
meerkat-auth-core = { workspace = true, features = ["oauth"] }
tokio = { workspace = true }

[target.'cfg(target_arch = "wasm32")'.dependencies]
tokio_with_wasm = { workspace = true }

[features]
default = []
live = ["dep:meerkat-live"]
sqlite-store = ["dep:rusqlite", "dep:meerkat-store", "meerkat-store/sqlite"]
test-support = []

[dev-dependencies]
tokio = { workspace = true, features = ["test-util", "macros"] }
tempfile = { workspace = true }
meerkat-store = { workspace = true, features = ["memory"] }
meerkat-machine-schema = { workspace = true }
meerkat-machine-kernels = { workspace = true, features = ["test-oracle"] }
meerkat-comms = { workspace = true }

[lints]
workspace = true
