Решили: версия — 0.МИНОР.ПАТЧ, ровно три числа, без букв, суффиксов и четвёртого разряда.
Разряд выбирается вопросом «игрок увидит это как новое?»: да — второе, «наконец-то работает» или
незаметно — третье. Хотфикс поверх выложенного — обычный следующий патч.
Четвёртый разряд был принят в этом же разговоре и отменён через десять минут, до первого применения: под него не нашлось случая, который не описывался бы патчем, а неиспользуемый разряд начинает врать раньше, чем пригождается. Пометка «-steamtest» из ранних тегов тоже уходит: суффикс пережил повод, ради которого появился.
Почему: первое число держим нулём до релиза, потому что 0.x игрок читает как «делается», а рост
второго — как движение к 1.0; в обсуждениях Early Access это называют главным преимуществом формата
перед номером сборки, который не сообщает ничего. Правило выбора разряда сформулировано вопросом о
видимом результате, а не оценкой «насколько крупно»: оценка требует калибровки и через месяц
плывёт, вопрос — нет.
Сказано: «Я думаю мелкие ВСЕ изменения - тег добавляем. Но лучше формат 0.0.2a? И супер мелкие тесты, багфиксы - просто букву меняем? Согласна? Или можно лучше?», затем «Я бы хотел как-то отличать версии не с минорными патчами, а с БАГ ФИКСАМИ. Их ведь может быть много. Что предложишь?», и следом — вердикт: «Ладно, давай все же 3 числа. Это вот 0.0.3 - без всяхого стрим теста и прочих надписей.» (03.08.2026, сессия 272cfad5).
Что отвергли и чем оно хуже:
- Буква (
0.0.2a) — отклонена. Не разбирается ни одним парсером версий (SemVer — три числа, предрелизные метки через дефис), ломает сортировку, кончается наz, и требует каждый раз решать, что «мельче» — новая буква или новое число. Граница выдуманная и не переживает месяц. - Отдельный разряд под «мелкое улучшение» против «багфикса» — отклонён. Их разделяет намерение
автора, а не результат для игрока: ему одинаково «стало лучше, ничего нового». Разряд, который
читает только автор, перестаёт соблюдаться первым. Различие уже записано точнее —
featпротивfixв коммитах. - Тег на каждую починку — отклонён. Тег запускает выкладку (сборка на десятки минут), поэтому
версией становится то, что отдают людям; промежуточное собирается кнопкой как
dev.<sha>. - Четвёртый разряд под хотфикс — принят и отменён. Единственный случай, который я под него придумала (перезалив поверх выложенного), для игрока неотличим от обычной починки, а значит описывается патчем. Разряд, у которого нет своего случая, — это будущая ложь в номере.
Грабли: формат тега workflow не валидирует — берёт ${GITHUB_REF_NAME#v} и отдаёт строку в
versioning: Custom. Четыре разряда проходят, но и опечатка пройдёт тоже: v0.2..1 уедет в
Application.version, а он участвует в отпечатке контента и сверяется на кооп-рукопожатии.
Владелец правды: docs/steam-deploy-setup.md §7, .github/workflows/steam-deploy.yml (шаг
«Версия»).