01 / Hard prohibitions
Name the domain assumption that breaks generic helpers
Date versions, channels, language-specific prereleases, and tool-defined latest values defeat a universal semver comparator. Resolution belongs to backend methods; lockfile versions remain opaque.
Source excerpt starting at line 311.311**Do not assume tool versions follow semver or any other orderable scheme.** mise manages hundreds of tools with wildly different versioning conventions:
02 / Contribution etiquette
Offer a supported alternative to a rejected contribution
The registry section requires evidence of popularity and maintenance for new shorthands. It also explains that explicit backend syntax already installs unlisted tools, separating registry acceptance from product capability.
Source excerpt starting at line 53.536. **Suggest the alternative:** users can install any tool themselves via explicit backend syntax (`mise use aqua:owner/repo`, `mise use github:owner/repo`, `mise use cargo:name`, `mise use npm:name`, etc.) or by writing a [tool plugin](https://mise.jdx.dev/tool-plugin-development.html). The registry is *only* for shorthand convenience for popular tools — not for enabling installation.
03 / Verification by change type
Test PATH behavior beyond its rendered shape
Windows rules keep PATH native until an assignment is emitted into a positively identified emulator shell. Verification must execute through that PATH and inspect a native grandchild, rather than only matching a string.
Source excerpt starting at line 354.354- Windows activation tests must execute a command through the emitted PATH and verify a native Windows grandchild receives a valid semicolon-delimited PATH. Output-shape assertions alone are insufficient.
04
Tie removal to the start of user warnings
Deprecation normally warns immediately and removes after twelve months. A delayed warning is reserved for migrations that older supported clients cannot parse, and it moves the removal clock with it.
Source excerpt starting at line 303.303If a compatibility window is required, removal remains 12 months after `warn_at`, not 12 months after the initial documentation notice.
05 / Verification by change type
Unblock wrapper failures without weakening the check
When the transparent Cargo cache wrapper fails, the guide permits the equivalent command with the wrapper disabled. A successful bypass becomes diagnostic evidence to report, while permanent disabling is prohibited.
Source excerpt starting at line 14.14other sensitive or identifying details. Do not permanently disable the wrapper,15and do not post externally without user authorization.
06 / Contribution etiquette
Treat PR prose as input to another product surface
Release notes come from pull-request titles and descriptions. Rewrite them when scope changes, and make behavior, examples, and adoption clear without the diff or screenshots.
Source excerpt starting at line 222.222Communique uses PR titles and descriptions to generate release notes. Write them223for a mise user who has not read the diff or this conversation.