Expand description
Owned engine boundary for library hosts (JOE-1782 / JOE-1654 / JOE-1784 / JOE-1787 / JOE-1938).
§Ownership model
AurumEngine owns:
- a
ValidatedConfig - an engine-local
ResourceGovernor - an engine-local
Metricssink - an engine-local STT context pool (
SttContextPool) - an engine-local TTS session pool (when the
ttsfeature is enabled) - an immutable
ProviderRegistry(builtin factories by default) - lifecycle bookkeeping for explicit shutdown
§Provider resolution (JOE-1938)
High-level [Self::transcribe] / [Self::synthesize] and
[Self::stt_provider] / [Self::tts_provider] route through the registry.
Concrete vendor construction stays inside factories; the engine assembles a
single-provider ProviderBuildContext (no multi-vendor secret bag).
§Isolation (JOE-1784)
Engines do not share whisper/TTS residency with each other or with the
process-global pools used by default LocalWhisperProvider::new /
LocalTtsProvider::new. Shutdown clears idle entries in this engine’s
pools only.
Process-global pools remain for CLI and callers that construct providers
without an engine. Call crate::providers::local::clear_context_cache at
process exit when using those paths with Metal.
Structs§
- Aurum
Engine - Library-facing engine: validated config + owned governor/metrics/model pools + registry.