fix: core typecheck without Node types; exact dependency versions (T1.1, O-2) #4
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "feat/3-core-types-pin-deps"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Закрывает T1.1 и O-2 из #3 (Follow-ups from #1). Bounded-задача: без OpenSpec change и без плана, дизайн согласован в чате. M-3 и T4.1 остаются открытыми в #3.
Что сделано
tsconfig.core.json(extends ./tsconfig.json,types: [], толькоsrc/core/**).npm run typecheckвыполняет два прохода,buildвызываетtypecheck.processиBufferвsrc/coreтеперь дают ошибку компиляции. Страж импортовtests/core-boundary.test.tsне менялся.tests/core-types.test.tsкомпилирует фикстуруtests/fixtures/core-globals/uses-node-globals.tsс двумя конфигами. С корневым конфигом фикстура чистая. С core-конфигом ожидаются ошибкиCannot find name 'process'/'Buffer'и нет ошибок конфигурации, иначе тест прошёл бы ложно при отсутствующемtsconfig.core.json, что и было замечено на red-шаге. Фикстура исключена изincludeкорневогоtsconfig.json.devDependenciesточные версии из lock-файла, добавлен.npmrcсsave-exact=true. Тест на версии не добавлялся (решение человека: дублирует lock).Проверка
npm run typecheck,npm test(127/127),npm run build: всё зелёное.src/core/_probe.tsсprocess.env.HOMEроняетtsc -p tsconfig.core.jsonс TS2591. Файл удалён.Rulings I made
package-lock.jsonобновлён только в корневых спецификаторах через скрипт, а не черезnpm install. На macOSnpm installвычистил из lock ~530 строк опциональных бинарников@rolldown/binding-*для других платформ.npm ciна результате проходит без изменений lock. Цена ошибки: при расхождении lock и package.jsonnpm ciупадёт, это сразу видно.node_modules/.cache/, а не в системном tmpdir: оттуда не резолвится@types/node(TS2688). Добавлен фильтр ошибок конфигурации (TS5xxx/TS6053/TS2688), чтобы не было ложного прохода. Цена ошибки: тест упадёт на окружении безnode_modules, но там не работает и vitest.buildвызываетnpm run typecheck, а не дублирует командуtsc. Цена ошибки: нулевая.Находки
aecab76aecab76Refs #3
🤖 Generated with Claude Code
https://claude.ai/code/session_01QKHeGuAYh4W1jNdjMConZa