docs: сделать проверку типов frontend release gate и убрать известное ограничение
bundle_ui запускает `pnpm run typecheck` перед сборкой bundle. И наличие шага, и его порядок закреплены приёмкой — вместе с требованием vue-tsc версии 3 и выше и с запретом снова совмещать сборку и проверку в build:prod. Из docs/02 убран раздел «Известное ограничение: проверка типов frontend почти ничего не проверяет» и заменён описанием действующего контракта. Прогноз в нём был близок, но неточен: ошибок оказалось 142, а не ~155, и класс DefaultRow/ PeerVo на Element Plus 2.3 не существовал вовсе — он появился вместе с обновлением Element Plus. docs/04 получил описание модели отображения (третий слой рядом с типизированной моделью и сырым YAML) и раздел о том, что страница Hysteria теперь read-only на всех уровнях, а не только визуально. docs/11: команды проверки frontend и dev doctor в раздел запуска, семь новых пунктов приёмки.
This commit is contained in:
@@ -94,6 +94,18 @@ bundle_ui() {
|
||||
log_info "Frontend Node.js options: $NODE_OPTIONS"
|
||||
|
||||
"$PNPM_BIN" install --frozen-lockfile
|
||||
|
||||
# Проверка типов идёт ПЕРЕД сборкой bundle, и это обязательный шаг релиза.
|
||||
#
|
||||
# Раньше её здесь не было вовсе: `build:prod` означал
|
||||
# `vite build && vue-tsc --noEmit`, то есть сборка сначала тратила время на
|
||||
# production bundle и только потом сообщала о типовой ошибке. Сам же
|
||||
# `vue-tsc` был версии 0.35 и не находил ничего — на современном он даёт 142
|
||||
# ошибки на том же коде.
|
||||
#
|
||||
# Теперь скрипты разделены, и порядок обратный: смысла собирать bundle из
|
||||
# кода, который не проходит проверку типов, нет.
|
||||
"$PNPM_BIN" run typecheck
|
||||
"$PNPM_BIN" run build:prod
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user