При современной сборке pip создает временную изолированную среду, устанавливает туда зависимости build-system из pyproject.toml и не наследует случайные версии инструментов из рабочего venv. Скрытое состояние исчезает.

Оставьте изоляцию по умолчанию

Так backend получает объявленные setuptools, hatchling или другие инструменты, а результат сборки заметно легче повторить на чистом runner без скрытого локального состояния.

Отключайте только осознанно

Флаг –no-build-isolation запрещает pip готовить build-среду. Все необходимые версии уже должны быть установлены и проверены вами до запуска.

python -m pip install --no-build-isolation .

Учитывайте закрытую сеть

В офлайн-сборке заранее добавьте build-зависимости в локальный источник или образ, поскольку наличие runtime-пакетов в wheelhouse не гарантирует наличие backend и его плагинов.

Если сборка работает только без изоляции, сравните объявленные и реально установленные build-зависимости, ведь обычно это признак неполного pyproject.toml, а не настоящее решение проблемы.

Предварительно собрать артефакты помогает команда pip wheel. Поведение флага указано в справочнике pip install.