Picking cases by code changes
Cases and suites can name the code they check — glob patterns of paths in the product’s repository
(src/payments/**, api/{orders,payments}/*.ts, or just a folder src/cart). A suite’s patterns are inherited
by nested suites and cases.
For a list of changed files TSMC returns a ranked list of cases with an explanation of why each was picked:
| Reason | Weight |
|---|---|
| the case’s own pattern, or its automated test’s file changed (by the automation key) | 3 |
| a pattern of the case’s suite | 2 |
| a pattern of an enclosing suite | 1 |
| + each further affected file | +0.2 (up to +1) |
| + critical / high priority | +1 / +0.5 |
| + failed in the latest run | +1 |
Files no pattern covers are listed separately — a hint where cases are missing.
# in the product's repository, on the branch with the changespnpm tsmc impact -p SHOP --base origin/main # what to runpnpm tsmc impact -p SHOP --base origin/main --create-run "PR 42" # and create a run right awayIn the interface: Runs → “Pick by changes” (paste the output of git diff --name-only), choose cases, create a
run. In case files the patterns are kept in the paths field (and in _suite.md for suites).
API: POST /api/projects/:project/impact.