pbakaus/impeccable · error

impeccable: verb '{other}' is not implemented yet

Error message

impeccable: verb '{other}' is not implemented yet

What it means

The impeccable CLI reached the live command dispatcher with a verb that has no match arm, so it prints this message and exits with code 70. It means the requested subcommand does not exist in the installed engine version.

Source

Thrown at crates/live/src/lib.rs:79

        "live" => live_boot::run(args, io),
        "live-target" => live_target::run(args, io),
        "live-status" | "status" => live_status::run(args, io),
        "live-resume" | "resume" => live_resume::run(args, io),
        "live-complete" | "complete" => live_complete::run(args, io),
        "live-inject" | "inject" => live_inject::run(args, io),
        "live-wrap" | "wrap" => live_wrap::run(args, io),
        "live-insert" | "insert" => live_insert::run(args, io),
        "live-accept" | "accept" => live_accept::run(args, io),
        "live-server" => live_server::run(args, io),
        "live-poll" | "poll" => live_poll::run(args, io),
        "live-commit-manual-edits" | "commit-manual-edits" => {
            live_commit_manual_edits::run(args, io)
        }
        "live-discard-manual-edits" | "discard-manual-edits" => {
            live_discard_manual_edits::run(args, io)
        }
        other => {
            io.err(&format!(
                "impeccable: verb '{}' is not implemented yet\n",
                other
            ));
            70
        }
    }
}

View on GitHub (pinned to 2bc2879276)

Solutions

  1. Check the verb spelling against `impeccable --help` or skill/scripts/command-metadata.json.
  2. Update the pinned engine: run `bun run fetch:engine` or rebuild with `cargo build --release -p impeccable` and set IMPECCABLE_BIN.
  3. If the verb should exist, verify the dispatcher match arms in crates/live/src/lib.rs and bump ENGINE_VERSION.

Example fix

// before
$ impeccable live-pul
impeccable: verb 'live-pul' is not implemented yet
// after
$ impeccable live-pull
Defensive patterns

Strategy: validation

Validate before calling

import metadata from './skill/scripts/command-metadata.json' with { type: 'json' };
if (!Object.keys(metadata).includes(verb)) throw new Error(`Unknown impeccable verb: ${verb}`);

Type guard

const KNOWN = new Set(['live-init','live','live-pull','live-push','live-server','live-commit-manual-edits','live-discard-manual-edits']);
const isKnownVerb = (v) => typeof v === 'string' && KNOWN.has(v);

Try / catch

const res = await execFile('impeccable', [verb]).catch(e => e);
if (res.code === 70) {
  console.error(`Verb '${verb}' not in this engine version; run 'impeccable --help' or update the engine`);
}

Prevention

When it happens

Trigger: Running `impeccable <verb>` (from crates/live/src/lib.rs run) where <verb> is a typo or a verb added in a newer engine than the one installed (VERSION-pinned binary).

Common situations: Typos like `live-pus` instead of `live-push`; docs from a newer release mentioning verbs the pinned binary lacks; stale engine binary after pulling new source; agents constructing verb names programmatically.

Related errors


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