pbakaus/impeccable · warning

Note: --gpt and --gemini are deprecated and ignored. Generat

Error message

Note: --gpt and --gemini are deprecated and ignored. Generated-UI tells now run by default.

What it means

The detect CLI warns on stderr that `--gpt` and `--gemini` are deprecated and ignored: generated-UI antipattern detection now runs by default for every scan, so the old opt-in model flags have no effect. The scan proceeds normally afterwards.

Source

Thrown at crates/detect/src/cli.rs:418

        .map(|a| match a.as_str() {
            "-json" => "--json".to_string(),
            "-fast" => "--fast".to_string(),
            _ => a.clone(),
        })
        .collect();
    if args.first().map(String::as_str) == Some("detect") {
        args.remove(0);
    }
    let has = |args: &[String], flag: &str| args.iter().any(|a| a == flag);
    let json_mode = has(&args, "--json");
    let quiet_mode = has(&args, "--quiet");
    let help_mode = has(&args, "--help");
    let no_advisory = has(&args, "--no-advisory");
    if has(&args, "--fast") {
        io.err("Note: --fast is deprecated and ignored. The full scan is fast now and runs every rule.\n");
    }
    if has(&args, "--gpt") || has(&args, "--gemini") {
        io.err("Note: --gpt and --gemini are deprecated and ignored. Generated-UI tells now run by default.\n");
    }
    let config_enabled = !has(&args, "--no-config");
    let cwd = io.cwd.to_string_lossy().into_owned();
    let detection_config = if config_enabled {
        read_detection_config(&cwd)
    } else {
        DetectionConfig::raw()
    };
    let scopes_valid = rule_scopes().join(", ");
    let mut scopes: Vec<String> = Vec::new();
    let mut i = 0;
    while i < args.len() {
        let inline = args[i].starts_with("--scope=");
        if args[i] != "--scope" && !inline {
            i += 1;
            continue;
        }
        let value: Option<String> = if inline {

View on GitHub (pinned to 2bc2879276)

Solutions

  1. Remove `--gpt` / `--gemini` from the command; generated-UI tells run automatically now.
  2. Update scripts, Makefiles, and CI YAML that still pass these flags.
  3. Nothing needs to be enabled — no replacement flag exists; rules are always on.

Example fix

// before
impeccable detect dist/ --gpt --gemini
// after
impeccable detect dist/
Defensive patterns

Strategy: validation

Validate before calling

const dropped = ["--gpt", "--gemini"];
const args = process.argv.slice(2).filter(a => !dropped.includes(a));

Prevention

When it happens

Trigger: Passing `--gpt` or `--gemini` on the `impeccable detect` command line, matched by `has(&args, "--gpt") || has(&args, "--gemini")`.

Common situations: Scripts written when generated-UI rules were opt-in via provider flags; docs or blog posts referencing the old flags; CI pipelines that still pass `--gpt --gemini` expecting extra rules to be toggled.

Understand the failure class

Background: "is deprecated and will be removed" — deprecation warnings for old API names, keywords, and options, and how to migrate before the removal release — this error's family across 29 libraries.

Related errors


AI-assisted analysis of pbakaus/impeccable@2bc2879276 (2026-09-08). Data as JSON: /api/errors/478106af266dc773. Report an issue: GitHub.