package ml import ( "fmt" "os" "forge.lthn.ai/core/go/pkg/cli" "forge.lthn.ai/core/go/pkg/ml" ) var normalizeMinLen int var normalizeCmd = &cli.Command{ Use: "normalize", Short: "Normalize seeds into expansion prompts", Long: "Deduplicates seeds against golden_set and prompts, creating the expansion_prompts table with priority-based ordering.", RunE: runNormalize, } func init() { normalizeCmd.Flags().IntVar(&normalizeMinLen, "min-length", 50, "Minimum prompt length in characters") } func runNormalize(cmd *cli.Command, args []string) error { path := dbPath if path == "" { path = os.Getenv("LEM_DB") } if path == "" { return fmt.Errorf("--db or LEM_DB env is required") } db, err := ml.OpenDBReadWrite(path) if err != nil { return fmt.Errorf("open db: %w", err) } defer db.Close() cfg := ml.NormalizeConfig{ MinLength: normalizeMinLen, } return ml.NormalizeSeeds(db, cfg, os.Stdout) }