[package]
name = "aphoria"
version = "0.1.0"
edition = "2021"
description = "A code-level truth linter powered by Episteme"
authors = ["Orchard9"]
license = "MIT"

# Standalone crate (not part of workspace)
[workspace]

[[bin]]
name = "aphoria"
path = "src/main.rs"

[lib]
name = "aphoria"
path = "src/lib.rs"

# Match workspace lint configuration
[lints.rust]
unsafe_code = "forbid"
missing_docs = "warn"

[lints.clippy]
unwrap_used = "deny"
expect_used = "deny"
panic = "deny"
print_stdout = "warn"  # CLI uses println for user output
print_stderr = "warn"

[dependencies]
# StemeDB dependencies (relative paths from applications/aphoria/)
stemedb-core = { path = "../../crates/stemedb-core" }
stemedb-storage = { path = "../../crates/stemedb-storage" }
stemedb-ingest = { path = "../../crates/stemedb-ingest" }
stemedb-query = { path = "../../crates/stemedb-query" }

# CLI
clap = { version = "4.5", features = ["derive"] }

# Async runtime
tokio = { version = "1", features = ["full"] }

# File walking
ignore = "0.4"

# Pattern matching
regex = "1.10"

# Serialization
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
toml = "0.8"

# Output formatting
comfy-table = "7.1"

# Cryptography
ed25519-dalek = { version = "2.1", features = ["rand_core"] }
blake3 = "1.5"
rand = "0.8"

# Error handling
thiserror = "1.0"

# Platform directories
dirs = "5.0"

# Logging
tracing = "0.1"
tracing-subscriber = "0.3"

# rkyv for zero-copy (consistent with stemedb)
rkyv = { version = "0.7", features = ["validation"] }
bytecheck = "0.6"

[dev-dependencies]
tempfile = "3.10"
