ADR 0006 — No preset applies implicitly¶
- Status: Accepted
- Date: 2026-10-03
- Decides: D6 in
roadmap.md
Context¶
Two presets exist since TASKS.md T10 (rainbow:minimal, rainbow:balanced)
and two more arrive with T28 (rainbow:black, rainbow:prettier). The
roadmap left open whether a project without a configuration gets
balanced applied for it.
Decision¶
No preset applies unless a configuration names one. The option defaults
in the schema (core.max_width = 80, indent_size = 4, tokens printed
as written, nothing added that was not written) are the default style.
Consequences¶
- A file formatted without any configuration formats the same way
whether or not a preset exists, and
rainbow-fmt options FILEshowsdefaultas the origin of every value: there is nothing hidden to explain. balancedindents with two spaces; applying it implicitly would change the indentation of every unconfigured project at the first run.- An existing project should start from
rainbow-fmt infer(T30), which writes the options that reproduce its own style, rather than from any preset; presets are starting points for new projects, chosen on purpose.