All notable changes to aimdb-data-contracts will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Dependency update: Upgraded
randfrom 0.8 to 0.10.1.
Streamabletrait — capability marker for types crossing serialization boundaries (WebSocket, WASM, wire)Migratabletrait withMigrationChainandMigrationStepfor schema evolution- Explicit version pins for path dependencies (
aimdb-core = "1.0.0",aimdb-executor = "0.1.0")
- Breaking: Refocused as a pure trait-definition crate
- Removed concrete contracts (
Temperature,Humidity,GpsLocation) — moved to application-level crates (e.g.,weather-mesh-common) - Removed closed
StreamableVisitordispatcher andfor_each_streamable()— replaced by extensible registry pattern in connector/adapter crates - Removed
tsfeature andts-rsdependency - Version reset from 1.0.0 to 0.1.0 to reflect the reduced, stabilizing scope
- Removed concrete contracts (
- Initial release with shared data contract types
SchemaTypetrait for compile-time type identityLinkabletrait for wire format support in connector transportSimulatabletrait withSimulationConfigandSimulationParamsfor test data generationObservablemodule withlog_tapfunction for runtime observability- Built-in contracts:
Temperature,Humidity,GpsLocation - Feature flags:
linkable,simulatable,migratable,observable,ts