Подбор кейсов по изменениям в коде
Кейсам и сьютам можно указать код, который они проверяют, — glob-шаблоны путей репозитория продукта
(src/payments/**, api/{orders,payments}/*.ts, или просто папка src/cart). Шаблоны сьюта наследуются
вложенными сьютами и кейсами.
По списку изменённых файлов TSMC возвращает ранжированный список кейсов с объяснением, почему каждый выбран:
| Причина | Вес |
|---|---|
| шаблон самого кейса или изменён файл его автотеста (по ключу автотеста) | 3 |
| шаблон сьюта кейса | 2 |
| шаблон внешнего сьюта | 1 |
| + каждый следующий затронутый файл | +0,2 (до +1) |
| + критичный / высокий приоритет | +1 / +0,5 |
| + провалился в последнем прогоне | +1 |
Файлы, которые не покрывает ни один шаблон, показываются отдельно — это подсказка, где не хватает кейсов.
# в репозитории продукта, на ветке с изменениямиpnpm tsmc impact -p SHOP --base origin/main # что прогнатьpnpm tsmc impact -p SHOP --base origin/main --create-run "PR 42" # и сразу создать прогонВ интерфейсе: Прогоны → «Подбор по изменениям» (вставить вывод git diff --name-only), выбрать кейсы,
создать прогон. В файлах кейсов шаблоны хранятся в поле paths (и в _suite.md для сьютов).
API: POST /api/projects/:project/impact.