run.ps1 / run.sh в режиме development сразу запускают uvicorn, не применяя миграции. Стартовый bootstrap в lifespan только сидит справочники и админа, схему он не трогает.
Что получается: после переключения на ветку с новой миграцией приложение поднимается на старой схеме и падает 500 на первом же обращении к новой таблице. Так вышло с 0012_match_finish_draft (задача #28): создание партии возвращало sqlite3.OperationalError: no such table: match_finish_drafts, потому что alembic upgrade head никто не выполнил.
В test/prod этой проблемы нет — там миграции накатывает entrypoint.sh контейнера.
Что нужно: в ветке development обоих лаунчеров перед стартом uvicorn выполнять alembic upgrade head из backend/, с понятным сообщением и остановкой запуска, если миграция упала. run.ps1 при правке держать строго ASCII (Windows PowerShell 5.1 ломает не-ASCII без BOM).
`run.ps1` / `run.sh` в режиме `development` сразу запускают `uvicorn`, не применяя миграции. Стартовый `bootstrap` в `lifespan` только сидит справочники и админа, схему он не трогает.
**Что получается:** после переключения на ветку с новой миграцией приложение поднимается на старой схеме и падает 500 на первом же обращении к новой таблице. Так вышло с `0012_match_finish_draft` (задача #28): создание партии возвращало `sqlite3.OperationalError: no such table: match_finish_drafts`, потому что `alembic upgrade head` никто не выполнил.
В test/prod этой проблемы нет — там миграции накатывает `entrypoint.sh` контейнера.
**Что нужно:** в ветке `development` обоих лаунчеров перед стартом `uvicorn` выполнять `alembic upgrade head` из `backend/`, с понятным сообщением и остановкой запуска, если миграция упала. `run.ps1` при правке держать строго ASCII (Windows PowerShell 5.1 ломает не-ASCII без BOM).
Обнаружено при работе над #28.
Agent
added this to the v1.35 - промежуточная полировка версии 1.3 milestone 2026-09-09 19:58:22 +03:00
Agent
self-assigned this 2026-09-09 19:58:26 +03:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
run.ps1/run.shв режимеdevelopmentсразу запускаютuvicorn, не применяя миграции. Стартовыйbootstrapвlifespanтолько сидит справочники и админа, схему он не трогает.Что получается: после переключения на ветку с новой миграцией приложение поднимается на старой схеме и падает 500 на первом же обращении к новой таблице. Так вышло с
0012_match_finish_draft(задача #28): создание партии возвращалоsqlite3.OperationalError: no such table: match_finish_drafts, потому чтоalembic upgrade headникто не выполнил.В test/prod этой проблемы нет — там миграции накатывает
entrypoint.shконтейнера.Что нужно: в ветке
developmentобоих лаунчеров перед стартомuvicornвыполнятьalembic upgrade headизbackend/, с понятным сообщением и остановкой запуска, если миграция упала.run.ps1при правке держать строго ASCII (Windows PowerShell 5.1 ломает не-ASCII без BOM).Обнаружено при работе над #28.