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.