From 3e99f5a75e14455aa75ca3a1dc7d08bd3e6f55fd Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Tue, 21 Apr 2026 23:12:52 +0300 Subject: u7: wire documented config knobs into runtime --- internal/comic/runner.go | 42 +++++++++++++++++++++++++++++------------- 1 file changed, 29 insertions(+), 13 deletions(-) (limited to 'internal/comic/runner.go') diff --git a/internal/comic/runner.go b/internal/comic/runner.go index 0b47a52..cc45e53 100644 --- a/internal/comic/runner.go +++ b/internal/comic/runner.go @@ -7,6 +7,7 @@ import ( "os" "path/filepath" "strings" + "time" "codeberg.org/snonux/comicforge/internal/provider" "codeberg.org/snonux/comicforge/internal/vocab" @@ -36,6 +37,14 @@ type RunnerConfig struct { Slug string NarrateEnabled bool UltraRealistic *bool + RealisticWeight float64 + ComicStyles []string + RealisticStyles []string + AspectRatio string + PromptMaxChars int + PageMaxRetries int + PageRetryBase time.Duration + ChunkWords int StoryPages int GalleryPages int PanelsPerPage int @@ -58,7 +67,7 @@ func NewRunner(cfg *RunnerConfig) *Runner { return r } - ultra := pickUltraRealistic() + ultra := pickUltraRealistic(cfg.RealisticWeight) if cfg.UltraRealistic != nil { ultra = *cfg.UltraRealistic } @@ -73,18 +82,24 @@ func NewRunner(cfg *RunnerConfig) *Runner { PanelsPerPage: cfg.PanelsPerPage, }) r.artist = NewArtist(&ArtistConfig{ - ImageProvider: cfg.ImageProvider, - TextProvider: cfg.TextProvider, - Prompts: cfg.Prompts, - OutputDir: cfg.OutputDir, - Style: cfg.Style, - Theme: cfg.Theme, - Language: cfg.Language, - Script: cfg.Script, - UltraRealistic: ultra, - StoryPages: cfg.StoryPages, - GalleryPages: cfg.GalleryPages, - PanelsPerPage: cfg.PanelsPerPage, + ImageProvider: cfg.ImageProvider, + TextProvider: cfg.TextProvider, + Prompts: cfg.Prompts, + OutputDir: cfg.OutputDir, + Style: cfg.Style, + ComicStyles: cfg.ComicStyles, + RealisticStyles: cfg.RealisticStyles, + Theme: cfg.Theme, + AspectRatio: cfg.AspectRatio, + Language: cfg.Language, + Script: cfg.Script, + UltraRealistic: ultra, + PromptMaxChars: cfg.PromptMaxChars, + PageMaxRetries: cfg.PageMaxRetries, + PageRetryBase: cfg.PageRetryBase, + StoryPages: cfg.StoryPages, + GalleryPages: cfg.GalleryPages, + PanelsPerPage: cfg.PanelsPerPage, }) r.narrator = NewNarrator(&NarratorConfig{ TextProvider: cfg.TextProvider, @@ -94,6 +109,7 @@ func NewRunner(cfg *RunnerConfig) *Runner { VoiceName: cfg.NarratorVoice, Language: cfg.Language, Script: cfg.Script, + ChunkWords: cfg.ChunkWords, }) return r } -- cgit v1.2.3