0.4.0 (June 13, 2026)¶
agora-etl-rs becomes Agora's optional
acceleration substrate for measured core hot paths while Python keeps runtime
semantics.
Added¶
agora.core.accelerationas the single optional acceleration boundary.DeliveryConfig(acceleration_mode=...)withauto,off, andrequired.- Declarative
[performance]config withaccelerationandprofile. - Acceleration status in
Pipeline.explain(), run summaries, tracing attributes,agora run --plan,agora doctor, andagora doctor --json. - Performance profiles that resolve to explicit runtime settings while keeping manual overrides authoritative.
- Benchmark matrix runner for 0.3.3 baseline, pure Python 0.4.0, and Rust-enabled 0.4.0 runs.
Changed¶
- Runtime modules no longer import
agora_rsdirectly. - Existing Rust primitives are selected through the acceleration facade.
- Direct flush, Rust prefetch, checkpoint state, metrics accumulator, and linear batch buffer decisions are visible in runtime metrics.
throughputprofile is the opt-in gate for Rust source prefetch outside buffered lanes until release benchmarks justify broader activation.
Removed¶
agora.core.runtime.RecordDeliveryCoordinatoragora.core.sink._WRITE_OKagora.core.contextcompatibility exports:_NOOP_SPAN_SCOPE,_BoundLogger,_NoopSpanScope,_PipelineSpanScope, and_normalize_trace_value- Legacy source/sink data-plane bool flag inference
BaseSource.runtime_counters()compatibility shim
Release Rule¶
Performance claims must be backed by benchmark JSON. Candidate Rust expansions, including JSONL batch encoding and Arrow IPC transport, remain benchmark-gated.