Choosing Default Implementations for Services with Multiple Implementations

Most of my services are going to have multiple implementations (e.g. Transcribe will have Whisper, Deepgram, ...) and it is expected that there won't be any single default for most of the cases. Sometimes I even need to pick at runtime (based on context provided like what type of transcription is it?).

Is it wise to have default implementation to be Test? Or even empty with Effect.die?

I use
Effect.Service
and for consistency I try to use it everywhere.
Was this page helpful?