docs(trust): clarify untrusted config behavior#10097
Conversation
There was a problem hiding this comment.
Code Review
This pull request updates the documentation and CLI help text across several files (docs/cli/trust.md, docs/faq.md, docs/paranoid.md, and src/cli/trust.rs) to clarify how mise handles config file trust. Specifically, it details how trust affects the execution of tasks and hooks, explains behavior in non-interactive environments and detected CI, and describes the difference between normal and paranoid modes. There are no review comments to address, and I have no additional feedback to provide.
Greptile SummaryDocumentation-only PR that replaces the old "dangerous features" bullet list with a clearer behavioral model for trust: what mise checks, when it prompts vs. skips vs. fails, and how CI auto-trust interacts with paranoid mode. The same wording is consistently applied across the CLI help, man page, KDL usage file, and docs.
Confidence Score: 5/5Safe to merge — no runtime logic is changed, only documentation and CLI help text. All six changed files are documentation or auto-generated help text. The trust logic itself is untouched. The one inconsistency (the .tool-versions example in paranoid.md lacking a paranoid-mode label) is a minor readability issue with no functional impact. docs/paranoid.md — the introductory code example should be labelled as a paranoid-mode example to match the surrounding prose. Important Files Changed
Reviews (4): Last reviewed commit: "docs(trust): clarify untrusted config be..." | Re-trigger Greptile |
cc02493 to
f81123f
Compare
Hyperfine Performance
|
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
mise-2026.5.15 x -- echo |
23.6 ± 2.2 | 18.9 | 33.0 | 1.12 ± 0.14 |
mise x -- echo |
21.0 ± 1.9 | 18.3 | 32.3 | 1.00 |
✅ Performance improvement for x -- echo is 12% |
mise env
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
mise-2026.5.15 env |
21.8 ± 2.5 | 17.7 | 34.3 | 1.02 ± 0.15 |
mise env |
21.3 ± 2.1 | 17.8 | 30.8 | 1.00 |
mise hook-env
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
mise-2026.5.15 hook-env |
23.0 ± 1.6 | 19.9 | 32.9 | 1.01 ± 0.09 |
mise hook-env |
22.7 ± 1.4 | 19.3 | 30.3 | 1.00 |
mise ls
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
mise-2026.5.15 ls |
18.3 ± 1.0 | 16.3 | 24.8 | 1.00 |
mise ls |
18.7 ± 0.9 | 16.8 | 23.4 | 1.02 ± 0.08 |
xtasks/test/perf
| Command | mise-2026.5.15 | mise | Variance |
|---|---|---|---|
| install (cached) | 146ms | 147ms | +0% |
| ls (cached) | 67ms | 68ms | -1% |
| bin-paths (cached) | 72ms | 73ms | -1% |
| task-ls (cached) | 140ms | 138ms | +1% |
f81123f to
3b905f5
Compare
3b905f5 to
95afc69
Compare
Summary
mise.tomlloading versus tracked-config discoverymise trusthelp text to mention tasks/hooks and non-interactive outcomesValidation
git diff --checkThis PR was generated by an AI coding assistant.
Note
Low Risk
Documentation and CLI help text only; no changes to trust enforcement logic.
Overview
This PR replaces outdated trust documentation that listed specific “dangerous” features (env vars, templates,
path:plugins) with behavior-focused explanations aligned with how mise actually handles untrusted config.mise trusthelp (Rust doc comment,mise.usage.kdl, generateddocs/cli/trust.md, andman/man1/mise.1) now states that trust is required before parsingmise.toml, and describes outcomes when a file is untrusted: interactive prompt, skipping in some discovery paths, hard failure when prompting isn’t possible, and implicit trust in detected CI unless paranoid mode is on.FAQ (
docs/faq.md) adds a CI bullet (trusted by default outside paranoid) and rewrites non-interactive guidance: it no longer claims untrusted configs are always silently skipped; it distinguishes direct loads (can error) from tracked-config discovery (may skip), and points tomise trustortrusted_config_paths.Paranoid docs (
docs/paranoid.md) expand normal-mode trust rules (whenmise.tomlis checked, skip vs error paths, CI assumption) and clarify that paranoid requires trust for all config formats, not only those that normally need it.Reviewed by Cursor Bugbot for commit 95afc69. Bugbot is set up for automated code reviews on this repo. Configure here.