Configuration
Use impact-gate.config.json to pin analysis defaults, route the
tool to the right tests root, and make CI behavior predictable across pull
requests, release branches, and local runs.
Use config when you want repeatable team defaults
Auto-detection is great for onboarding, but config is what makes CI, release branches, and local runs behave the same way across the team.
The CLI looks for these files automatically
impact-gate.config.json
.impact-gate.config.json
Create impact-gate.config.json (or .impact-gate.config.json) in your project root. The CLI auto-discovers it by walking upward from the current directory.
Full Config Example
{ "path": ".", "profile": "default", "testsRoot": "./e2e-tests", "mode": "impact", "framework": "auto", "git": { "since": "origin/main" }, "impact": { "dependencyGraph": { "enabled": true, "maxDepth": 3 }, "traceability": { "enabled": true }, "aiFlow": { "enabled": true, "provider": "anthropic" } }, "pipeline": { "enabled": false, "scenarios": 3, "outputDir": "specs/functional/ai-assisted", "mcp": false }, "policy": { "enforcementMode": "advisory", "blockOnActions": ["must-add-tests"] }}Field Reference
Top-Level
| Field | Type | Default | Description |
|---|---|---|---|
path | string | . | Project root directory |
profile | string | default | Analysis profile: default or strict |
testsRoot | string | auto-detected | Path to tests directory |
mode | string | impact | Default analysis mode |
framework | string | auto | Test framework (playwright, cypress, pytest, supertest, selenium, auto) |
git
| Field | Type | Default | Description |
|---|---|---|---|
since | string | auto-detected | Git ref for diff base (e.g., origin/main) |
impact
| Field | Type | Default | Description |
|---|---|---|---|
dependencyGraph.enabled | boolean | true | Enable static reverse-dependency analysis |
dependencyGraph.maxDepth | number | 3 | Max depth for transitive impact traversal |
traceability.enabled | boolean | true | Use CI execution data for file-to-test mapping |
aiFlow.enabled | boolean | true | Enable LLM-powered flow mapping |
aiFlow.provider | string | auto | LLM provider for AI enrichment |
pipeline
| Field | Type | Default | Description |
|---|---|---|---|
enabled | boolean | false | Enable test generation pipeline |
scenarios | number | 3 | Number of test scenarios to generate per gap |
outputDir | string | — | Directory for generated specs |
mcp | boolean | false | Use Playwright MCP server for generation |
policy
| Field | Type | Default | Description |
|---|---|---|---|
enforcementMode | string | advisory | advisory, warn, or block |
blockOnActions | string[] | [] | Actions that trigger blocking (run-now, must-add-tests, safe-to-merge) |
Profiles
default
Standard analysis behavior for most repositories.
strict
Uses stricter handling for heuristic-only mappings and more opinionated analysis defaults when you want tighter gating.
Framework auto-detection is separate from profiles. The CLI can auto-detect Playwright, Cypress, pytest, supertest, and Selenium usage from project files and dependencies.
Precedence
CLI flags override config file values, which override auto-detected defaults.