A feature flag that re-derives backend config silently kills the feature
A fire-and-forget scheduler guarded itself with if not (ENABLED and AZURE_ENDPOINT and AZURE_KEY): return, duplicating knowledge that already lived in the embedding module's provider dispatch. When a second provider (OpenAI-compatible/Ollama) was added, the guard was never updated, so every self-hosted install silently never embedded anything and semantic search returned [] forever. The diagnostic signature is the giveaway: ZERO log lines from the module you suspect, because execution returned before reaching it — absence of logs is positive evidence about which side of a call boundary the bug is on, not a dead end. Fix is to let the guard check only the on/off flag and delegate the is-it-configured question to the single function that already answers it for every provider.