Layered monorepo_root overlays trigger monorepo_auto_discovery warning #13035
Replies: 2 comments
|
The overlays are winning the root pick. mise takes the first config in scope with |
|
Thanks for the diagnosis. This is a bug in how mise resolves same-directory config layers: the nearest-root rule is meant to choose between directories, but the implementation was accidentally choosing one physical config file and reading I opened #13084 to resolve the root at the directory level and merge its active config layers. An omitted AI-assisted — Tool: Codex; model: openai/gpt-5; version: unavailable. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Summary
With mise 2026.9.3, layered environment config files that each set
monorepo_root = truecause mise to emit the deprecatedmonorepo_auto_discoverywarning, even when the canonical rootmise.tomlhas explicit[monorepo].config_roots.The monorepo task still runs successfully, but the warning is unexpected because automatic discovery should not be needed.
Reproduction
https://gist.github.com/airtonix/6c61883d5ca7bd527bf0adeee34d7d5f
mise.toml:mise.unix.toml:mise.linux.toml:projects/child/mise.toml:On Linux:
Control
Removing
monorepo_root = truefrom both environment files makes the warning disappear in an equivalent minimal setup:The same command then runs without the warning:
In the larger repository that prompted this report, removing the overlay declarations causes monorepo task paths to fail instead, so the behavior may depend on how mise selects the active monorepo root from layered configs.
Expected behavior
A single canonical root
mise.tomlwith explicit[monorepo].config_rootsshould be sufficient. Platform overlays should be able to contain environment-specific settings without triggering automatic discovery or changing monorepo root selection.Additional context
The warning repeats when tasks invoke nested
mise runcommands. The separate[bootstrap].config_rootssetting is not involved; it controls bootstrap resources, not monorepo task discovery.All reactions