package app import ( "log/slog" "gitea.maximumdirect.net/eric/narratio/internal/adapters/analyzer" "gitea.maximumdirect.net/eric/narratio/internal/adapters/audita" "gitea.maximumdirect.net/eric/narratio/internal/adapters/notify" "gitea.maximumdirect.net/eric/narratio/internal/adapters/seriatim" "gitea.maximumdirect.net/eric/narratio/internal/adapters/storage" "gitea.maximumdirect.net/eric/narratio/internal/adapters/whisperx" "gitea.maximumdirect.net/eric/narratio/internal/artifacts" "gitea.maximumdirect.net/eric/narratio/internal/config" "gitea.maximumdirect.net/eric/narratio/internal/manifest" "gitea.maximumdirect.net/eric/narratio/internal/stage" ) // Env is the shared dependency container passed to orchestrator components. type Env struct { Config *config.Config ArtifactStore artifacts.Store ManifestStore manifest.Store Logger *slog.Logger WhisperX whisperx.Client Seriatim seriatim.Runner Audita audita.Runner Analyzer analyzer.Runner Storage storage.Backend Notifier notify.Sender } func toStageEnv(env *Env) *stage.Env { if env == nil { return nil } return &stage.Env{ Config: env.Config, ArtifactStore: env.ArtifactStore, ManifestStore: env.ManifestStore, Logger: env.Logger, WhisperX: env.WhisperX, Seriatim: env.Seriatim, Audita: env.Audita, Analyzer: env.Analyzer, Storage: env.Storage, Notifier: env.Notifier, } }