[env:NAME] issue

Aren’t they contradictory?

Yes this rule is broken by many platforms (also https://github.com/platformio/platform-ststm32/). I think the intent was to avoid path escaping issues and special shell characters, not sure if it’s valid anymore. You can try opening an issue at https://github.com/platformio/platformio-docs/issues.