jdx/mise · error
unknown trigger {trigger:?}
Error message
unknown trigger {trigger:?} What it means
`mise bootstrap dotfiles history ls --trigger <name>` filters checkpoint history entries by the operation that triggered them. The value is parsed into the `Trigger` enum; if the string is not a recognized trigger name, mise throws "unknown trigger <value>".
Source
Thrown at src/cli/dotfiles/history/ls.rs:61
.into_iter()
.map(|(_, pending)| crate::system::history::store::Entry {
id: pending.id,
commit: String::new(),
checkpoint: pending.checkpoint,
})
.collect();
}
entries.reverse();
if let Some(label) = &self.label {
entries.retain(|entry| entry.checkpoint.labels.contains(label));
}
if let Some(path) = &self.path {
let path = display_arg(path);
entries.retain(|entry| entry.checkpoint.changes.touches(&path));
}
if let Some(trigger) = &self.trigger {
let Some(trigger) = Trigger::parse(trigger) else {
eyre::bail!("unknown trigger {trigger:?}");
};
entries.retain(|entry| entry.checkpoint.trigger == trigger);
}
if self.limit > 0 {
entries.truncate(self.limit);
}
if self.json {
miseprintln!("{}", serde_json::to_string_pretty(&entries)?);
return Ok(());
}
if entries.is_empty() {
info!("no history checkpoints recorded");
return Ok(());
}
let mut table = MiseTable::new(false, &["ID", "When", "Trigger", "Description", "Files"]);
for entry in &entries {
let checkpoint = &entry.checkpoint;
let files = if checkpoint.tree.available {View on GitHub (pinned to afd2eddd3a)
Solutions
- Check the accepted trigger names in `mise bootstrap dotfiles history ls --help`.
- Use the exact trigger identifier shown in history output (e.g. from `history ls` entries).
- Omit `--trigger` to see all entries and inspect which trigger values actually occur.
Example fix
// before mise bootstrap dotfiles history ls --trigger Edit // after mise bootstrap dotfiles history ls --trigger edit # exact enum name per --help
Defensive patterns
Strategy: validation
Validate before calling
# check the trigger value against known names before filtering mise bootstrap dotfiles history ls | grep -o 'trigger: [a-z-]*' | sort -u case "$trigger" in edit|save|apply|capture) : ;; *) echo "unknown trigger: $trigger"; exit 1;; esac
Prevention
- Consult `--help` for the accepted trigger enum values.
- Copy trigger names verbatim from `history ls` output.
When it happens
Trigger: Running `mise bootstrap dotfiles history ls --trigger <value>` with a value that `Trigger::parse` rejects — any string not matching a defined trigger (case-sensitive, no abbreviations).
Common situations: Typos (`--trigger edit` vs the real name), guessing trigger names without checking docs, using capitalized or plural forms.
Understand the failure class
Background: Invalid enum value errors: "Unknown type", "Invalid scope", "must be one of" — when a string is not on the library's allowed list — this error's family across 23 libraries.
Related errors
- unknown trigger {other:?}; use save, agent, or update
- --changed does not accept target arguments
- at least one target or --changed is required
- --source can only be used with one target
- `--mode track` tracks a file where it is and takes no source
AI-assisted analysis of jdx/mise@afd2eddd3a (2026-09-09).
Data as JSON: /api/errors/f3c79ca5b5e0650b.
Report an issue: GitHub.