Expand description
Rich event contracts for aicx pipeline progress.
Vibecrafted. with AI Agents by VetCoders (c)2024-2026 LibraxisAI
This crate is the canonical source of truth for the indexing/embedding progress event stream emitted by aicx pipelines. It is intentionally a pure-types crate (no async, no I/O, no UI deps) so that:
- Producers (the
aicx indexscheduler, embedders, parsers) can emit into a single sink trait without dragging UI deps. - Consumers (FanOut, IndicatifSink, future TUI, JSON-line exporter, future SSE bridge) can subscribe to the same canonical stream.
- The on-wire representation (serde JSON) is stable across crates and binaries — agents and IPC peers can decode without linking the producer crate.
The shape is salvaged from rust-memex’s tui::indexer::contracts
(IndexEvent + IndexTelemetrySnapshot + IndexEventSink) and
generalized to aicx’s “item” vocabulary (entries / chunks / embeddings
depending on phase) rather than the file-only assumption rust-memex
makes.
Structs§
- Index
Telemetry Snapshot - Pull-friendly indexing telemetry snapshot.
- Rolling
Rate - Rolling-window rate tracker.
- Warning
Entry - Warning displayed in the dashboard / surfaced through the snapshot.
Enums§
- Index
Event - Events emitted by the aicx indexing / embedding pipeline.
Constants§
- MAX_
RECENT_ WARNINGS - Maximum number of recent warnings retained in the rolling snapshot.
Traits§
- Event
Sink - Event sinks must stay synchronous and infallible.