[package]
edition = "2021"
rust-version = "1.75"
name = "kitt_score"
version = "0.1.0"
description = "Decision engine at the core of Project KITT — in-memory stateful matching with pluggable scoring backends."
readme = "README.md"
keywords = [
"decision-engine",
"matching",
"ad-tech",
"real-time",
"vector-search",
]
categories = [
"algorithms",
"data-structures",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/Project-Ellie/kitt_score"
[profile.bench]
lto = "fat"
codegen-units = 1
[profile.release]
lto = "fat"
codegen-units = 1
panic = "abort"
[lib]
name = "kitt_score"
path = "src/lib.rs"
[[example]]
name = "axum_host"
required-features = ["serde"]
[[test]]
name = "loom_concurrency"
path = "tests/loom_concurrency.rs"
[[bench]]
name = "predicate"
harness = false
[[bench]]
name = "vector"
harness = false
[[bench]]
name = "engine"
harness = false
[dependencies.ahash]
version = "0.8"
[dependencies.arc-swap]
version = "1.7"
[dependencies.hdrhistogram]
version = "7.5"
[dependencies.parking_lot]
version = "0.12"
[dependencies.pulp]
version = "0.18"
[dependencies.serde]
version = "1"
features = ["derive"]
optional = true
[dependencies.smallvec]
version = "1.13"
features = [
"union",
"const_generics",
]
[dependencies.thiserror]
version = "1.0"
[dev-dependencies.axum]
version = "0.7"
[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]
[dev-dependencies.loom]
version = "0.7"
[dev-dependencies.proptest]
version = "1.4"
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.tokio]
version = "1"
features = ["full"]
[features]
default = []
serde = ["dep:serde"]
[lints.clippy]
all = "warn"
expect_used = "warn"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
must_use_candidate = "allow"
nursery = "warn"
panic = "warn"
pedantic = "warn"
unwrap_used = "warn"
[lints.rust]
missing_docs = "warn"
unsafe_op_in_unsafe_fn = "forbid"