Repository navigation
[heft-jest-plugin] Validate managed Jest configuration - #6211
Open
Yashwanth Reddy Verupaka (yashwanth195) wants to merge 1 commit into
Open
Yashwanth Reddy Verupaka (yashwanth195) wants to merge 1 commit into
Yashwanth Reddy Verupaka (yashwanth195) wants to merge 1 commit into
Conversation
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add the preflight foundation for managed Jest shards, rejecting unsupported configuration instead of silently stripping hooks or checks. This standalone rollout step does not enable sharding or change ordinary Jest execution.
Details
JestManagedConfigurationexports a pure validator and the canonical coverage reporter predicate for future managed-shard and coverage consumers. It preserves configuration, rejects unsupported hooks/reporters and incomplete coverage settings, and permits supported defaults, Babel and V8 configurations.No runtime wiring or new dependencies. Existing unsharded hooks/reporters and runtime performance are unchanged. Includes focused typed tests and a minor changefile for the new importable API.
How it was tested
On Windows with Node 24.22.1; the final committed tree is identical to the independently reviewed and validated tree:
node common\scripts\install-run-rush.js build --to @rushstack/heft-jest-pluginpassed, including prerequisites, TypeScript and lint.node common\scripts\install-run-rush.js test --only @rushstack/heft-jest-pluginpassed: 70 tests in 2 suites; the build was reused from cache.node common\scripts\install-run-rush.js prettierpassed without edits.node common\scripts\install-run-rush.js change --verify --target-branch upstream/main --no-fetchpassed.Cases cover rejected settings with diagnostics, explicit disabled/undefined values, supported coverage, and immutable inputs. Generated declarations use the existing
@jest/reporterstype re-export; compiled preflight imports no runtime modules.Impacted documentation
Package README only; no website or schema changes.