[package]
name = "mockforge-foundation"
description = "Foundation types shared across the MockForge workspace (Error, Result, EncryptionError)"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
readme = "../../README.md"
keywords = ["mock", "foundation", "types"]
categories = ["development-tools::testing"]

[features]
default = []
schema = ["dep:schemars"]
scripting = ["dep:rquickjs"]

[dependencies]
async-trait = { workspace = true }
chrono = { workspace = true }
once_cell = { workspace = true }
parking_lot = { workspace = true }
rand = { workspace = true }
regex = { workspace = true }
serde = { workspace = true }
tokio = { workspace = true }
tracing = { workspace = true }
uuid = { workspace = true, features = ["serde", "v4"] }
reqwest = { workspace = true }
rquickjs = { version = "0.9", features = ["macro", "classes"], optional = true }
schemars = { version = "0.8", optional = true }
serde_json = { workspace = true }
serde_yaml = { workspace = true }
thiserror = { workspace = true }
url = { workspace = true }

[dev-dependencies]
# `ai_response` tests cross-validate against mockforge-template-expansion's
# prompt expander; dev-only so foundation itself has no mockforge-* deps.
mockforge-template-expansion = { version = "0.3.177", path = "../mockforge-template-expansion" }