[package]
name = "dirigent_protocol"
version = "0.2.0"
edition = "2021"

[dependencies]
async-trait = "0.1"
chrono = { version = "0.4", features = ["serde"] }
opencode_client = { workspace = true, optional = true }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
thiserror = "2.0"
tokio = { version = "1", features = ["sync"] }
tracing = "0.1"
uuid = { version = "1.18", features = ["js", "serde", "v4", "v7"] }

[dev-dependencies]
tokio = { version = "1", features = ["macros", "rt", "sync"] }

[features]
default = []
adapters = ["dep:opencode_client"]

[[test]]
name = "opencode_session_update_tests"
required-features = ["adapters"]

[[test]]
name = "protocol_tests"
required-features = ["adapters"]

[[test]]
name = "session_list_tests"
required-features = ["adapters"]

[[test]]
name = "deduplication_tests"
required-features = ["adapters"]
