mqd-core
Shared types, Arrow schemas, StatusReporter trait, and the numbered non-claims constant for the multimodal-query-demo workspace.
Pure types and traits. No tokio, no I/O, no dependency on the engine. This keeps the engine crate fully async without contaminating the testability of the type layer, and lets downstream consumers depend on the vocabulary without pulling in the runtime.
What's here
EntityPath— validated slash-delimited hierarchical path ("/agent/0").ComponentKind— the five typed event kinds:Transform3D,Points3D,Scalar,ImageRef,Annotation.Event— the ingest unit carrying(t_ns, entity_path, kind-specific payload).schema::schema_for(kind)— canonicalarrow::datatypes::Schemaper kind; every row has the non-null prefixt_ns: Int64, entity_path: Utf8.StatusReportertrait withTerminalReporter,JsonReporter,NullReporter— threaded through engine calls so phase/counter/summary output is decoupled from the caller's preferred format.NON_CLAIMS: [&str; 6]— the numbered non-claims charter. Locked to the paper by a workspace-level integration test.
Example
use ;
let path = new.unwrap;
let schema = schema_for;
assert_eq!;
assert_eq!;
License
Apache-2.0.