package main import ( "context" "fmt" "os" "os/signal" "syscall" "time" "github.com/yourname/reddit-scraper/internal/config" "github.com/yourname/reddit-scraper/internal/logging" ) func main() { cfg, err := config.Load() if err != nil { fmt.Fprintln(os.Stderr, "config load:", err) os.Exit(2) } logger := logging.Init(cfg.LogLevel) logger.Info("starting", "keyword", cfg.Keyword, "limit", cfg.Limit, "concurrency", cfg.Concurrency) ctx, cancel := signal.NotifyContext(context.Background(), syscall.SIGINT, syscall.SIGTERM) defer cancel() // placeholder: in future wire up controller select { case <-time.After(1 * time.Second): logger.Info("done (placeholder)") case <-ctx.Done(): logger.Info("cancelled") } }