-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
enhancementNew feature or requestNew feature or requestroadmapPlanned for future developmentPlanned for future developmentsdkSDK-specific issueSDK-specific issue
Description
Context
Suggested by Grok during LLM evaluation. Rust is critical for: embedded systems, WebAssembly targets, and high-performance agent runtimes.
Proposed Structure
sdk/rust/
├── Cargo.toml
├── src/
│ ├── lib.rs # KCPNode public API
│ ├── models.rs # Artifact, Lineage, ACL structs
│ ├── crypto.rs # ed25519-dalek + sha2
│ ├── store.rs # rusqlite storage backend
│ └── error.rs # KCPError enum
└── tests/
└── integration.rs # Full test suite
Key Dependencies
| Crate | Purpose |
|---|---|
ed25519-dalek |
Ed25519 signing + verification |
sha2 |
SHA-256 content hashing |
rusqlite |
SQLite storage backend |
uuid |
UUIDv4 artifact IDs |
serde / serde_json |
Serialization |
chrono |
ISO 8601 timestamps |
Target: 50+ tests
Following the same test matrix as Go SDK (sdk/go/, 64 tests).
Stretch Goal: WASM target
[lib]
crate-type = ["cdylib", "rlib"] # enables wasm-packThis would allow KCP to run directly in the browser or in Cloudflare Workers.
Acceptance Criteria
-
sdk/rust/directory withCargo.toml -
KCPNodestruct withpublish,search,get,verify,lineage - Ed25519 + SHA-256 matching Python reference implementation
- SQLite backend (same schema as Python SDK)
- ≥ 50 tests passing with
cargo test -
sdk/rust/README.md
Related
- Python SDK reference:
sdk/python/kcp/ - Go SDK reference:
sdk/go/pkg/
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestroadmapPlanned for future developmentPlanned for future developmentsdkSDK-specific issueSDK-specific issue