[package]
edition = "2024"
rust-version = "1.85"
name = "chaotic_semantic_memory"
version = "0.3.6"
build = false
include = [
"/src",
"/benches",
"/examples",
"/tests",
"README.md",
"LICENSE",
"CHANGELOG.md",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "AI memory systems with hyperdimensional vectors and chaotic reservoirs"
homepage = "https://github.com/d-o-hub/chaotic_semantic_memory"
documentation = "https://docs.rs/chaotic_semantic_memory"
readme = "README.md"
keywords = [
"ai",
"memory",
"hypervector",
"reservoir",
"wasm",
]
categories = [
"data-structures",
"algorithms",
"wasm",
]
license = "MIT"
repository = "https://github.com/d-o-hub/chaotic_semantic_memory"
[package.metadata.wasm-pack.profile.release]
wasm-opt = [
"-O",
"--enable-bulk-memory",
"--enable-sign-ext",
]
[features]
ann-hnsw = ["dep:hnsw_rs"]
ann-lsh = []
cli = [
"dep:clap",
"dep:clap_complete",
"dep:anyhow",
"dep:colored",
"dep:glob",
]
cloudevents = [
"dep:cloudevents-sdk",
"dep:uuid",
"uuid/js",
]
default = [
"cli",
"persistence",
"parallel",
]
embed-fastembed = ["dep:fastembed"]
embed-openai = ["dep:reqwest"]
embed-voyage = ["dep:reqwest"]
events-http = [
"cloudevents",
"cloudevents-sdk/http-binding",
"dep:reqwest",
]
mcp = [
"dep:rmcp",
"cli",
]
parallel = ["dep:rayon"]
persistence = ["dep:libsql"]
serde = []
signing = []
wasm = []
[lib]
name = "chaotic_semantic_memory"
crate-type = [
"lib",
"cdylib",
]
path = "src/lib.rs"
[[bin]]
name = "csm"
path = "src/bin/csm.rs"
required-features = ["cli"]
[[example]]
name = "basic_in_memory"
path = "examples/basic_in_memory.rs"
[[example]]
name = "chatbot_memory"
path = "examples/chatbot_memory.rs"
[[example]]
name = "cli_usage"
path = "examples/cli_usage.rs"
[[example]]
name = "document_rag"
path = "examples/document_rag.rs"
[[example]]
name = "hybrid_retrieval"
path = "examples/hybrid_retrieval.rs"
[[example]]
name = "knowledge_graph"
path = "examples/knowledge_graph.rs"
[[example]]
name = "proof_of_concept"
path = "examples/proof_of_concept.rs"
[[example]]
name = "streaming_temporal"
path = "examples/streaming_temporal.rs"
[[example]]
name = "verify_migration"
path = "examples/verify_migration.rs"
[[test]]
name = "ann_filter_bug"
path = "tests/ann_filter_bug.rs"
[[test]]
name = "ann_integration"
path = "tests/ann_integration.rs"
[[test]]
name = "ann_persistence"
path = "tests/ann_persistence.rs"
[[test]]
name = "api_completeness"
path = "tests/api_completeness.rs"
[[test]]
name = "batch_operations"
path = "tests/batch_operations.rs"
[[test]]
name = "batch_ops_coverage"
path = "tests/batch_ops_coverage.rs"
[[test]]
name = "batch_similarity"
path = "tests/batch_similarity.rs"
[[test]]
name = "builder_advanced"
path = "tests/builder_advanced.rs"
[[test]]
name = "builder_config"
path = "tests/builder_config.rs"
[[test]]
name = "builder_config_coverage"
path = "tests/builder_config_coverage.rs"
[[test]]
name = "cache_lru"
path = "tests/cache_lru.rs"
[[test]]
name = "cache_lru_coverage"
path = "tests/cache_lru_coverage.rs"
[[test]]
name = "cache_operations"
path = "tests/cache_operations.rs"
[[test]]
name = "cli_integration"
path = "tests/cli_integration.rs"
[[test]]
name = "cli_parity"
path = "tests/cli_parity.rs"
[[test]]
name = "critical_error_paths"
path = "tests/critical_error_paths.rs"
[[test]]
name = "edge_case_coverage"
path = "tests/edge_case_coverage.rs"
[[test]]
name = "encoder_tests"
path = "tests/encoder_tests.rs"
[[test]]
name = "eviction_cache"
path = "tests/eviction_cache.rs"
[[test]]
name = "export_import_coverage"
path = "tests/export_import_coverage.rs"
[[test]]
name = "framework_bridge_coverage"
path = "tests/framework_bridge_coverage.rs"
[[test]]
name = "framework_core"
path = "tests/framework_core.rs"
[[test]]
name = "framework_lifecycle"
path = "tests/framework_lifecycle.rs"
[[test]]
name = "framework_ops_coverage"
path = "tests/framework_ops_coverage.rs"
[[test]]
name = "framework_ttl_integration"
path = "tests/framework_ttl_integration.rs"
[[test]]
name = "framework_unit"
path = "tests/framework_unit.rs"
[[test]]
name = "graph_rag"
path = "tests/graph_rag.rs"
[[test]]
name = "hyperdim_coverage"
path = "tests/hyperdim_coverage.rs"
[[test]]
name = "import_adversarial"
path = "tests/import_adversarial.rs"
[[test]]
name = "import_error_paths"
path = "tests/import_error_paths.rs"
[[test]]
name = "import_export_coverage"
path = "tests/import_export_coverage.rs"
[[test]]
name = "metrics_cache"
path = "tests/metrics_cache.rs"
[[test]]
name = "migration_errors"
path = "tests/migration_errors.rs"
[[test]]
name = "open_issue_api"
path = "tests/open_issue_api.rs"
[[test]]
name = "path_validation"
path = "tests/path_validation.rs"
[[test]]
name = "path_validation_errors"
path = "tests/path_validation_errors.rs"
[[test]]
name = "performance_targets"
path = "tests/performance_targets.rs"
[[test]]
name = "persistence_crud"
path = "tests/persistence_crud.rs"
[[test]]
name = "persistence_ops_coverage"
path = "tests/persistence_ops_coverage.rs"
[[test]]
name = "persistence_roundtrip"
path = "tests/persistence_roundtrip.rs"
[[test]]
name = "persistence_versions_coverage"
path = "tests/persistence_versions_coverage.rs"
[[test]]
name = "property_based"
path = "tests/property_based.rs"
[[test]]
name = "reservoir_determinism"
path = "tests/reservoir_determinism.rs"
[[test]]
name = "reservoir_inertial_tests"
path = "tests/reservoir_inertial_tests.rs"
[[test]]
name = "retrieval_candidates"
path = "tests/retrieval_candidates.rs"
[[test]]
name = "retrieval_config"
path = "tests/retrieval_config.rs"
[[test]]
name = "retrieval_selectivity_tests"
path = "tests/retrieval_selectivity_tests.rs"
[[test]]
name = "skill_memory_integration"
path = "tests/skill_memory_integration.rs"
[[test]]
name = "ttl_lifecycle"
path = "tests/ttl_lifecycle.rs"
[[test]]
name = "turso_roundtrip"
path = "tests/turso_roundtrip.rs"
[[test]]
name = "validation_errors"
path = "tests/validation_errors.rs"
[[test]]
name = "wave16_features"
path = "tests/wave16_features.rs"
[[bench]]
name = "benchmark"
path = "benches/benchmark.rs"
harness = false
[[bench]]
name = "bm25_benchmark"
path = "benches/bm25_benchmark.rs"
harness = false
[[bench]]
name = "persistence_benchmark"
path = "benches/persistence_benchmark.rs"
harness = false
[dependencies.anyhow]
version = "1.0.102"
optional = true
[dependencies.async-trait]
version = "0.1.83"
[dependencies.base64]
version = "0.22.1"
[dependencies.bincode]
version = "1.3.3"
[dependencies.clap]
version = "4.5"
features = [
"derive",
"env",
"string",
]
optional = true
[dependencies.clap_complete]
version = "4.5.42"
optional = true
[dependencies.cloudevents-sdk]
version = "0.9.0"
optional = true
[dependencies.colored]
version = "2.2.0"
optional = true
[dependencies.fastembed]
version = "4"
optional = true
[dependencies.glob]
version = "0.3.2"
optional = true
[dependencies.hnsw_rs]
version = "0.3.4"
optional = true
[dependencies.rand]
version = "0.10.1"
[dependencies.rand_chacha]
version = "0.10.0"
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
optional = true
[dependencies.rmcp]
version = "1.7"
features = [
"server",
"macros",
"transport-io",
]
optional = true
[dependencies.serde]
version = "1.0.219"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.149"
[dependencies.thiserror]
version = "2.0.11"
[dependencies.tracing]
version = "0.1.41"
[dependencies.tracing-subscriber]
version = "0.3.19"
[dependencies.uuid]
version = "1.23.1"
features = [
"v4",
"serde",
]
optional = true
[dev-dependencies.assert_cmd]
version = "2.0.16"
[dev-dependencies.criterion]
version = "0.5.1"
features = ["html_reports"]
[dev-dependencies.predicates]
version = "3.1.3"
[dev-dependencies.proptest]
version = "1.6.0"
[dev-dependencies.tempfile]
version = "3.16.0"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.libsql]
version = "0.9.30"
features = [
"sync",
"hrana",
"remote",
]
optional = true
default-features = false
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.rayon]
version = "1.10.0"
optional = true
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio]
version = "1.43.0"
features = [
"rt-multi-thread",
"macros",
"sync",
"fs",
]
[target.'cfg(target_arch = "wasm32")'.dependencies.console_error_panic_hook]
version = "0.1"
optional = false
[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
version = "0.4.2"
features = ["wasm_js"]
[target.'cfg(target_arch = "wasm32")'.dependencies.js-sys]
version = "0.3.77"
[target.'cfg(target_arch = "wasm32")'.dependencies.tokio]
version = "1.43.0"
features = [
"rt",
"macros",
"sync",
]
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
version = "0.2.100"
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen-futures]
version = "0.4.64"
[lints.clippy]
cast_possible_truncation = "warn"
cast_precision_loss = "warn"
cognitive_complexity = "allow"
expect_used = "allow"
float_cmp = "warn"
many_single_char_names = "allow"
map_unwrap_or = "warn"
missing_const_for_fn = "warn"
missing_errors_doc = "allow"
must_use_candidate = "allow"
needless_range_loop = "allow"
panic = "allow"
print_stderr = "allow"
print_stdout = "allow"
redundant_clone = "warn"
significant_drop_tightening = "warn"
too_many_arguments = "allow"
type_complexity = "allow"
unnecessary_map_or = "warn"
unwrap_used = "allow"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.nursery]
level = "allow"
priority = -1
[lints.clippy.pedantic]
level = "allow"
priority = -1
[lints.rust]
dead_code = "allow"
missing_docs = "allow"
unsafe_code = "allow"
[profile.release]
opt-level = 3
lto = "fat"
codegen-units = 1
panic = "unwind"
strip = "symbols"