oxmutate 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -224,11 +224,16 @@ key.
224
224
 
225
225
  ## Compatibility
226
226
 
227
- **Not graded.** No suite is graded through `compat-oracle` for oxmutate, so it has no
228
- compatibility row. That oracle grades an import path by running the incumbent's own test suite
229
- against it, and a mutation tester's output is not a passing test but a verdict per mutant. So the
230
- comparison is verdict agreement: the same project, scored by Stryker 10.0.0 and by oxmutate, each
231
- mutant's verdict compared against Stryker's own JSON report. Measured on 2026-10-27
227
+ **Mutants: graded by Stryker's own specs.** Stryker 10.0.0's 17 mutator spec files, vendored
228
+ unedited, run against oxmutate's native core (`npm run compat:mutation`): **236 of
229
+ 236** pass. Four that test Stryker's internals (a private `filter()`, Svelte template context, a
230
+ log message) are listed with their reasons in `compat/not-applicable.ts`.
231
+
232
+ **Verdicts: not graded by `compat-oracle`.** That oracle grades an import path by running the
233
+ incumbent's own test suite against it, and a mutation tester's output is not a passing test but a
234
+ verdict per mutant. So the comparison is verdict agreement: the same project, scored by Stryker
235
+ 10.0.0 and by oxmutate, each mutant's verdict compared against Stryker's own JSON report.
236
+ Measured on 2026-10-27
232
237
  ([`m1-results.md`](https://github.com/ofri-peretz/burgee/blob/main/.sdlc/intents/oxmutate/m1-results.md)):
233
238
 
234
239
  | Subject | Mutants | Same verdict as Stryker |
Binary file
Binary file
Binary file
package/dist/child.js CHANGED
@@ -45,6 +45,12 @@ const vitest = await vitestNode.createVitest('test', {
45
45
  },
46
46
  // A private Vite cache per run, so no cache outside this run can answer for a mutated file.
47
47
  { plugins: [instrumentedSources(config.instrumentedMap)], cacheDir: path.join(path.dirname(config.instrumentedMap), 'vite-cache') });
48
+ // A config with `projects` resolves each project's `runner` and `isolate` from its own inline
49
+ // config, never from these options, so its tests ran without oxmutate's runner and the dry run
50
+ // recorded none (burgee, weekly run 40783405734, 2026-10-28). Each project keeps its own pool:
51
+ // burgee's run in forks, and its process.env lock fails under threads.
52
+ for (const project of vitest.projects)
53
+ Object.assign(project.config, { runner, isolate: true });
48
54
  /** Has the runner recorded a kill for this mutant in this unit's results yet? */
49
55
  function killed(results, id) {
50
56
  let text = '';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oxmutate",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "Mutation testing for JavaScript and TypeScript on the oxc engine, run warm inside the project's own Vitest, with CI lanes, SARIF and an agent surface. No dependency outside the burgee family. A Stryker migration path.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -46,9 +46,15 @@
46
46
  },
47
47
  "typesVersions": {
48
48
  "*": {
49
- "runner": ["./dist/runner.d.ts"],
50
- "spec": ["./dist/spec.d.ts"],
51
- "vite": ["./dist/vite.d.ts"]
49
+ "runner": [
50
+ "./dist/runner.d.ts"
51
+ ],
52
+ "spec": [
53
+ "./dist/spec.d.ts"
54
+ ],
55
+ "vite": [
56
+ "./dist/vite.d.ts"
57
+ ]
52
58
  }
53
59
  },
54
60
  "files": [
@@ -61,14 +67,16 @@
61
67
  "build": "tsc -p tsconfig.build.json && node ../../scripts/declaration-reach.mts --prune",
62
68
  "build:native": "cd native && cargo build --release --features napi --lib && node ../scripts/copy-binding.mjs",
63
69
  "typecheck": "tsc -p tsconfig.json --noEmit",
64
- "test": "vitest run",
70
+ "test": "vitest run && vitest run --config compat/vitest.config.ts",
65
71
  "test:native": "cd native && cargo test --release",
72
+ "test:sensitivity": "vitest run src/sensitivity.test.ts",
66
73
  "lint": "eslint src",
67
- "coverage": "vitest run --coverage.enabled"
74
+ "coverage": "vitest run --coverage.enabled",
75
+ "compat:mutation": "vitest run --config compat/vitest.config.ts"
68
76
  },
69
77
  "dependencies": {
70
- "bellpull": "*",
71
- "burgee": "*"
78
+ "bellpull": "^1.0.10",
79
+ "burgee": "^1.9.2"
72
80
  },
73
81
  "peerDependencies": {
74
82
  "vitest": ">=4.1.0"