pbakaus/impeccable · error
usage: impeccable critique-storage <slug|write|latest|trend|
Error message
usage: impeccable critique-storage <slug|write|latest|trend|close> [args]
What it means
The `critique-storage` dispatcher accepts only the five subcommands slug|write|latest|trend|close. Any other (or missing) subcommand falls through to the catch-all arm, prints this usage line to stderr and exits 1.
Source
Thrown at crates/context/src/critique_storage.rs:698
.filter(|path| {
read_snapshot_at(path)
.and_then(|snapshot| snapshot_target_identity(&snapshot))
.as_deref()
== target_identity.as_deref()
}),
);
}
all.sort();
let slice = js_slice_last(&all, limit);
let rows: Vec<Value> = slice
.iter()
.map(|f| Value::Object(parse_frontmatter(&safe_read(f).unwrap_or_default())))
.collect();
io.out(&format!("{}\n", json_pretty(&Value::Array(rows))));
0
}
_ => {
io.err("usage: impeccable critique-storage <slug|write|latest|trend|close> [args]\n");
1
}
}
}
/// `Number(str)`
pub fn js_number(s: &str) -> f64 {
let t = js_trim(s);
if t.is_empty() {
return 0.0;
}
if t == "Infinity" || t == "+Infinity" {
return f64::INFINITY;
}
if t == "-Infinity" {
return f64::NEG_INFINITY;
}
if let Some(h) = t.strip_prefix("0x").or_else(|| t.strip_prefix("0X")) {View on GitHub (pinned to 2bc2879276)
Solutions
- Use one of the exact subcommands: slug, write, latest, trend, close (lowercase).
- Pass the subcommand as the first argument after `critique-storage`, before any flags.
- Check `impeccable critique-storage` docs/help for the supported verb list.
- Fix shell quoting so flags land after the subcommand argument.
Example fix
// before impeccable critique-storage list // after impeccable critique-storage latest mytarget
Defensive patterns
Strategy: validation
Validate before calling
const VERBS = new Set(['slug', 'write', 'latest', 'trend', 'close']);
if (!VERBS.has(args[0])) throw new Error(`unknown critique-storage verb: ${args[0]}`); Prevention
- Validate the subcommand against the known verb list before spawning.
- Keep the verb as the first argument after `critique-storage`; flags go after.
- Use lowercase verb names exactly as documented.
- Consult usage output when upgrading to a new engine version.
When it happens
Trigger: Running `impeccable critique-storage` with no subcommand; misspelling a verb (`list`, ` Latest`, `lastest`); passing flags before the subcommand so args.first() is a flag rather than a verb.
Common situations: Script typos, casing mistakes (`Latest`), assuming a `list` or `show` subcommand exists, or a wrapper prepending `--json` ahead of the verb.
Understand the failure class
Background: "Unknown argument", "Invalid value", and "must be one of": invalid CLI argument errors explained — this error's family across 35 libraries.
Related errors
- usage: latest <slug-or-target> [--json]
- usage: close <resolved-target> <snapshot-file>
- build-phase: record hero --build <png>
- {}
- Unknown action: {}. Use 'pin' or 'unpin'.
AI-assisted analysis of pbakaus/impeccable@2bc2879276 (2026-09-08).
Data as JSON: /api/errors/bd496bea5dbebbc8.
Report an issue: GitHub.