supercov 0.0.9 → 0.0.11
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/bin/native.js +87 -0
- package/bin/supercov.js +20 -3
- package/dist/agentJson.d.ts +2 -1
- package/dist/agentJson.d.ts.map +1 -1
- package/dist/agentJson.js +18 -0
- package/dist/agentJson.js.map +1 -1
- package/dist/analyze.d.ts.map +1 -1
- package/dist/analyze.js +9 -4
- package/dist/analyze.js.map +1 -1
- package/dist/cli.js +115 -24
- package/dist/cli.js.map +1 -1
- package/dist/directInstrumenter.d.ts.map +1 -1
- package/dist/directInstrumenter.js +39 -19
- package/dist/directInstrumenter.js.map +1 -1
- package/dist/engineEvidence.d.ts +9 -0
- package/dist/engineEvidence.d.ts.map +1 -0
- package/dist/engineEvidence.js +31 -0
- package/dist/engineEvidence.js.map +1 -0
- package/dist/engineInstrumenter.d.ts +16 -0
- package/dist/engineInstrumenter.d.ts.map +1 -0
- package/dist/engineInstrumenter.js +50 -0
- package/dist/engineInstrumenter.js.map +1 -0
- package/dist/engineProcess.d.ts +11 -0
- package/dist/engineProcess.d.ts.map +1 -0
- package/dist/engineProcess.js +59 -0
- package/dist/engineProcess.js.map +1 -0
- package/dist/evidenceArchive.d.ts +1 -0
- package/dist/evidenceArchive.d.ts.map +1 -1
- package/dist/evidenceArchive.js +59 -13
- package/dist/evidenceArchive.js.map +1 -1
- package/dist/instrumenter.d.ts +8 -1
- package/dist/instrumenter.d.ts.map +1 -1
- package/dist/instrumenter.js +478 -80
- package/dist/instrumenter.js.map +1 -1
- package/dist/integrity.d.ts.map +1 -1
- package/dist/integrity.js +9 -1
- package/dist/integrity.js.map +1 -1
- package/dist/launchSupervisor.d.ts.map +1 -1
- package/dist/launchSupervisor.js +3 -0
- package/dist/launchSupervisor.js.map +1 -1
- package/dist/merge.d.ts.map +1 -1
- package/dist/merge.js +9 -6
- package/dist/merge.js.map +1 -1
- package/dist/nodeAssertionInstrumenter.d.ts +2 -2
- package/dist/nodeAssertionInstrumenter.d.ts.map +1 -1
- package/dist/nodeAssertionInstrumenter.js +12 -4
- package/dist/nodeAssertionInstrumenter.js.map +1 -1
- package/dist/nodeTest.d.ts.map +1 -1
- package/dist/nodeTest.js +13 -4
- package/dist/nodeTest.js.map +1 -1
- package/dist/playwright.d.ts.map +1 -1
- package/dist/playwright.js +177 -89
- package/dist/playwright.js.map +1 -1
- package/dist/processDiagnostics.d.ts +34 -0
- package/dist/processDiagnostics.d.ts.map +1 -0
- package/dist/processDiagnostics.js +155 -0
- package/dist/processDiagnostics.js.map +1 -0
- package/dist/project.d.ts +1 -0
- package/dist/project.d.ts.map +1 -1
- package/dist/project.js +39 -4
- package/dist/project.js.map +1 -1
- package/dist/query.d.ts +11 -0
- package/dist/query.d.ts.map +1 -1
- package/dist/query.js +224 -11
- package/dist/query.js.map +1 -1
- package/dist/register.mjs +52 -0
- package/dist/register.mjs.map +1 -1
- package/dist/resolve-loader.d.mts.map +1 -1
- package/dist/resolve-loader.mjs +8 -2
- package/dist/resolve-loader.mjs.map +1 -1
- package/dist/runAnalysis.d.ts.map +1 -1
- package/dist/runAnalysis.js +3 -1
- package/dist/runAnalysis.js.map +1 -1
- package/dist/runnerEvidence.d.ts +2 -2
- package/dist/runnerEvidence.d.ts.map +1 -1
- package/dist/runnerEvidence.js +6 -4
- package/dist/runnerEvidence.js.map +1 -1
- package/dist/runtime.d.ts +56 -4
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +308 -27
- package/dist/runtime.js.map +1 -1
- package/dist/sourceDiscovery.d.ts.map +1 -1
- package/dist/sourceDiscovery.js +6 -2
- package/dist/sourceDiscovery.js.map +1 -1
- package/dist/transport.js +2 -2
- package/dist/transport.js.map +1 -1
- package/dist/vitePlugin.d.ts.map +1 -1
- package/dist/vitePlugin.js +21 -7
- package/dist/vitePlugin.js.map +1 -1
- package/dist/vitest.js +38 -7
- package/dist/vitest.js.map +1 -1
- package/dist/waivers.d.ts +52 -0
- package/dist/waivers.d.ts.map +1 -0
- package/dist/waivers.js +121 -0
- package/dist/waivers.js.map +1 -0
- package/dist/workspace.d.ts +36 -0
- package/dist/workspace.d.ts.map +1 -1
- package/dist/workspace.js +212 -36
- package/dist/workspace.js.map +1 -1
- package/package.json +29 -3
package/dist/sourceDiscovery.js
CHANGED
|
@@ -6,7 +6,11 @@ const DECLARATION_PATTERN = /\.d\.[cm]?ts$/i;
|
|
|
6
6
|
const TEST_FILE_PATTERN = /(?:^|[/_.-])(?:test|spec)(?:[/_.-]|$)/i;
|
|
7
7
|
const TEST_DIRECTORY_PATTERN = /(?:^|\/)(?:__tests__|test|tests|spec|specs|e2e|fixtures?|mocks?|__mocks__)(?:\/|$)/i;
|
|
8
8
|
const TOOL_DIRECTORY_PATTERN = /(?:^|\/)(?:scripts)(?:\/|$)/i;
|
|
9
|
-
|
|
9
|
+
// Known tool configs are excluded anywhere; at the project root, any
|
|
10
|
+
// "<tool>.config.*" follows the same convention (tsdown, lint-staged, ...)
|
|
11
|
+
// and is tool configuration, not application source.
|
|
12
|
+
const CONFIG_PATTERN = /(?:^|\/)(?:(?:babel|eslint|graphql|jest|next|nuxt|playwright|postcss|prettier|remix|rollup|stylelint|tailwind|tsup|vite|vitest|webpack)\.config\.[cm]?[jt]s|\.(?:babel|eslint|graphql|prettier|stylelint)rc\.[cm]?[jt]s)$|^[^/]+\.config\.[cm]?[jt]s$/i;
|
|
13
|
+
const ROOT_BUILD_SCRIPT_PATTERN = /^(?:build|gulpfile|gruntfile)\.[cm]?[jt]sx?$/i;
|
|
10
14
|
const GENERATED_DIRECTORIES = new Map([
|
|
11
15
|
[".cache", "generated tool cache"],
|
|
12
16
|
[".git", "version-control metadata"],
|
|
@@ -201,7 +205,7 @@ export function discoverSourceScope(root, configuredRoots) {
|
|
|
201
205
|
entries.push({ file, status: "excluded", reason: "conventional tool script", ...withPackage });
|
|
202
206
|
continue;
|
|
203
207
|
}
|
|
204
|
-
if (CONFIG_PATTERN.test(file)) {
|
|
208
|
+
if (CONFIG_PATTERN.test(file) || ROOT_BUILD_SCRIPT_PATTERN.test(file)) {
|
|
205
209
|
entries.push({ file, status: "excluded", reason: "build/test/tool configuration", ...withPackage });
|
|
206
210
|
continue;
|
|
207
211
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sourceDiscovery.js","sourceRoot":"","sources":["../src/sourceDiscovery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,UAAU,EACV,YAAY,EACZ,WAAW,EACX,QAAQ,GACT,MAAM,SAAS,CAAC;AACjB,OAAO,EAAW,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAO5D,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAC1C,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AAC7C,MAAM,iBAAiB,GAAG,wCAAwC,CAAC;AACnE,MAAM,sBAAsB,GAAG,qFAAqF,CAAC;AACrH,MAAM,sBAAsB,GAAG,8BAA8B,CAAC;AAC9D,MAAM,cAAc,GAAG,
|
|
1
|
+
{"version":3,"file":"sourceDiscovery.js","sourceRoot":"","sources":["../src/sourceDiscovery.ts"],"names":[],"mappings":"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"}
|
package/dist/transport.js
CHANGED
|
@@ -94,10 +94,10 @@ export function serverRunEvidenceDirectory(runId, root = configuredServerEvidenc
|
|
|
94
94
|
return `${root.replace(/\/+$/, "")}/${pathComponent(runId)}`;
|
|
95
95
|
}
|
|
96
96
|
export function serverEvidenceDirectory(scope, root = configuredServerEvidenceRoot()) {
|
|
97
|
-
return `${serverRunEvidenceDirectory(scope.runId, root)}
|
|
97
|
+
return `${serverRunEvidenceDirectory(scope.runId, root)}/attempts`;
|
|
98
98
|
}
|
|
99
99
|
export function serverEvidencePath(scope, root = configuredServerEvidenceRoot()) {
|
|
100
|
-
return `${serverEvidenceDirectory(scope, root)}
|
|
100
|
+
return `${serverEvidenceDirectory(scope, root)}/${pathComponent(scope.attemptId)}.jsonl`;
|
|
101
101
|
}
|
|
102
102
|
export function backgroundEvidenceDirectory(runId, root = configuredServerEvidenceRoot()) {
|
|
103
103
|
return `${serverRunEvidenceDirectory(runId, root)}/background`;
|
package/dist/transport.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
|
package/dist/vitePlugin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vitePlugin.d.ts","sourceRoot":"","sources":["../src/vitePlugin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"vitePlugin.d.ts","sourceRoot":"","sources":["../src/vitePlugin.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAInC,OAAO,KAAK,EAEV,kBAAkB,EAGlB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACxC,iBAAiB,CAAC,EAAE,kBAAkB,EAAE,CAAC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,wBAAgB,cAAc,CAAC,OAAO,GAAE,qBAA0B,GAAG,MAAM,CAgK1E"}
|
package/dist/vitePlugin.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { existsSync, mkdirSync, readFileSync, readdirSync, } from "node:fs";
|
|
2
2
|
import { dirname, relative, resolve, sep } from "node:path";
|
|
3
3
|
import { fileURLToPath } from "node:url";
|
|
4
|
-
import {
|
|
4
|
+
import { mcdcRuntimeModuleId } from "./instrumenter.js";
|
|
5
|
+
import { instrumentSource, instrumentSources } from "./engineInstrumenter.js";
|
|
5
6
|
import { atomicWriteFileSync } from "./atomic.js";
|
|
6
7
|
export function mcdcVitePlugin(options = {}) {
|
|
7
8
|
const root = options.root ?? process.cwd();
|
|
@@ -24,6 +25,7 @@ export function mcdcVitePlugin(options = {}) {
|
|
|
24
25
|
const points = new Map();
|
|
25
26
|
const branches = new Map();
|
|
26
27
|
const limitations = new Map();
|
|
28
|
+
const instrumentedById = new Map();
|
|
27
29
|
for (const limitation of options.sourceLimitations ?? [])
|
|
28
30
|
limitations.set(limitation.id, limitation);
|
|
29
31
|
const recordManifest = (manifest) => {
|
|
@@ -83,11 +85,20 @@ export function mcdcVitePlugin(options = {}) {
|
|
|
83
85
|
// source file up front so never-imported executable code is still in the
|
|
84
86
|
// denominator and appears as uncovered rather than disappearing.
|
|
85
87
|
const inventory = configuredSourceFiles ?? sourceRoots.flatMap(sourceFiles);
|
|
86
|
-
|
|
87
|
-
if (existsSync(id))
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
88
|
+
const pending = inventory.flatMap((id) => {
|
|
89
|
+
if (!existsSync(id))
|
|
90
|
+
return [];
|
|
91
|
+
return [{
|
|
92
|
+
id,
|
|
93
|
+
file: relative(root, id).split(sep).join("/"),
|
|
94
|
+
source: readFileSync(id, "utf8"),
|
|
95
|
+
}];
|
|
96
|
+
});
|
|
97
|
+
const results = instrumentSources(pending.map(({ file, source }) => ({ file, source })));
|
|
98
|
+
for (const [index, entry] of pending.entries()) {
|
|
99
|
+
const result = results[index];
|
|
100
|
+
instrumentedById.set(entry.id, { source: entry.source, result });
|
|
101
|
+
recordManifest(result.manifest);
|
|
91
102
|
}
|
|
92
103
|
},
|
|
93
104
|
transform(code, rawId) {
|
|
@@ -98,7 +109,10 @@ export function mcdcVitePlugin(options = {}) {
|
|
|
98
109
|
!/\.[cm]?[jt]sx?$/.test(id))
|
|
99
110
|
return null;
|
|
100
111
|
const file = relative(root, id).split(sep).join("/");
|
|
101
|
-
const
|
|
112
|
+
const cached = instrumentedById.get(id);
|
|
113
|
+
const result = cached?.source === code
|
|
114
|
+
? cached.result
|
|
115
|
+
: instrumentSource(code, file);
|
|
102
116
|
recordManifest(result.manifest);
|
|
103
117
|
return {
|
|
104
118
|
code: result.code,
|
package/dist/vitePlugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vitePlugin.js","sourceRoot":"","sources":["../src/vitePlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,SAAS,EACT,YAAY,EACZ,WAAW,GACZ,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"vitePlugin.js","sourceRoot":"","sources":["../src/vitePlugin.ts"],"names":[],"mappings":"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"}
|
package/dist/vitest.js
CHANGED
|
@@ -1,15 +1,26 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
1
2
|
import { mkdirSync } from "node:fs";
|
|
2
3
|
import { relative, resolve, sep } from "node:path";
|
|
3
4
|
import { afterEach, beforeEach } from "vitest";
|
|
4
|
-
import { coverageSnapshot, enableRuntimeSnapshotEvidence, resetCoverage, } from "./runtime.js";
|
|
5
|
+
import { coverageSnapshot as localCoverageSnapshot, activateCoverageScope as localActivateCoverageScope, enableRuntimeSnapshotEvidence as localEnableRuntimeSnapshotEvidence, resetCoverage as localResetCoverage, takeNodeAssertionPhases as localTakeNodeAssertionPhases, } from "./runtime.js";
|
|
5
6
|
import { inferTestProvenance } from "./provenance.js";
|
|
6
7
|
import { atomicWriteFileSync } from "./atomic.js";
|
|
7
8
|
const evidenceDirectory = process.env["SUPERCOV_EVIDENCE_DIR"];
|
|
8
9
|
const emittedSetupFiles = new Set();
|
|
10
|
+
const attempts = new Map();
|
|
11
|
+
const activeScopes = new Map();
|
|
12
|
+
const runtimeGlobal = globalThis;
|
|
13
|
+
const runtime = runtimeGlobal.__SUPERCOV_DIRECT_RUNTIME__ ?? {
|
|
14
|
+
activateCoverageScope: localActivateCoverageScope,
|
|
15
|
+
coverageSnapshot: localCoverageSnapshot,
|
|
16
|
+
enableRuntimeSnapshotEvidence: localEnableRuntimeSnapshotEvidence,
|
|
17
|
+
resetCoverage: localResetCoverage,
|
|
18
|
+
takeNodeAssertionPhases: localTakeNodeAssertionPhases,
|
|
19
|
+
};
|
|
9
20
|
// Vitest persists one in-memory runtime snapshot per test. Writing the same
|
|
10
21
|
// events through the server JSONL transport would be both redundant and
|
|
11
22
|
// unattributed, and turns hot unit-test loops into synchronous filesystem IO.
|
|
12
|
-
enableRuntimeSnapshotEvidence();
|
|
23
|
+
runtime.enableRuntimeSnapshotEvidence();
|
|
13
24
|
function attemptStatus(state) {
|
|
14
25
|
if (state === "pass")
|
|
15
26
|
return "passed";
|
|
@@ -42,7 +53,7 @@ beforeEach((context) => {
|
|
|
42
53
|
.join("/");
|
|
43
54
|
if (!emittedSetupFiles.has(testFile)) {
|
|
44
55
|
emittedSetupFiles.add(testFile);
|
|
45
|
-
const setupSnapshot = coverageSnapshot();
|
|
56
|
+
const setupSnapshot = runtime.coverageSnapshot();
|
|
46
57
|
if (setupSnapshot.hits.length || setupSnapshot.decisions.length) {
|
|
47
58
|
writeEvidence({
|
|
48
59
|
testId: `vitest:${task.file.id}:setup`,
|
|
@@ -64,16 +75,33 @@ beforeEach((context) => {
|
|
|
64
75
|
}, `vitest-${task.file.id}-setup`);
|
|
65
76
|
}
|
|
66
77
|
}
|
|
67
|
-
|
|
78
|
+
const testId = `vitest:${task.id}`;
|
|
79
|
+
const retry = attempts.get(testId) ?? 0;
|
|
80
|
+
attempts.set(testId, retry + 1);
|
|
81
|
+
const testKey = createHash("sha256").update(testId).digest("hex").slice(0, 24);
|
|
82
|
+
const scope = {
|
|
83
|
+
version: 1,
|
|
84
|
+
runId: process.env["SUPERCOV_RUN_ID"] ?? "unscoped",
|
|
85
|
+
workerId: `vitest-${process.env["VITEST_POOL_ID"] ?? process.pid}`,
|
|
86
|
+
testId,
|
|
87
|
+
testKey,
|
|
88
|
+
retry,
|
|
89
|
+
attemptId: `${testKey}-${retry}`,
|
|
90
|
+
};
|
|
91
|
+
activeScopes.set(task.id, scope);
|
|
92
|
+
runtime.activateCoverageScope(scope);
|
|
93
|
+
runtime.resetCoverage(testId);
|
|
68
94
|
});
|
|
69
95
|
afterEach((context) => {
|
|
70
96
|
const task = context.task;
|
|
71
97
|
const testFile = relative(process.cwd(), task.file.filepath)
|
|
72
98
|
.split(sep)
|
|
73
99
|
.join("/");
|
|
74
|
-
const
|
|
100
|
+
const scope = activeScopes.get(task.id);
|
|
101
|
+
const retry = scope?.retry ?? task.result?.retryCount ?? 0;
|
|
75
102
|
const payload = {
|
|
76
|
-
testId: `vitest:${task.id}`,
|
|
103
|
+
testId: scope?.testId ?? `vitest:${task.id}`,
|
|
104
|
+
...(scope ? { scope } : {}),
|
|
77
105
|
test: [...titlePath(task)].join(" > "),
|
|
78
106
|
testFile,
|
|
79
107
|
title: task.name,
|
|
@@ -85,10 +113,13 @@ afterEach((context) => {
|
|
|
85
113
|
project: task.file.projectName,
|
|
86
114
|
explicitKind: process.env["SUPERCOV_TEST_KIND"],
|
|
87
115
|
}),
|
|
88
|
-
|
|
116
|
+
...(scope ? { phases: runtime.takeNodeAssertionPhases(scope) } : {}),
|
|
117
|
+
runtime: [runtime.coverageSnapshot()],
|
|
89
118
|
browser: [],
|
|
90
119
|
server: [],
|
|
91
120
|
};
|
|
92
121
|
writeEvidence(payload, `vitest-${task.id}-${retry}`);
|
|
122
|
+
activeScopes.delete(task.id);
|
|
123
|
+
runtime.activateCoverageScope();
|
|
93
124
|
});
|
|
94
125
|
//# sourceMappingURL=vitest.js.map
|
package/dist/vitest.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vitest.js","sourceRoot":"","sources":["../src/vitest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC/C,OAAO,EACL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"vitest.js","sourceRoot":"","sources":["../src/vitest.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { McdcDecisionResult } from "./types.ts";
|
|
2
|
+
export declare const WAIVERS_FILE = "supercov.waivers.json";
|
|
3
|
+
export declare const WAIVERS_SCHEMA_VERSION = 1;
|
|
4
|
+
/**
|
|
5
|
+
* A reviewed statement that one MC/DC condition has no satisfiable
|
|
6
|
+
* independence pair. Waivers never change measured coverage: waived
|
|
7
|
+
* conditions stay uncovered in every raw total and are reported as a
|
|
8
|
+
* separate category alongside them.
|
|
9
|
+
*/
|
|
10
|
+
export interface CoverageWaiver {
|
|
11
|
+
file: string;
|
|
12
|
+
/** Decision ID or the decision's exact source text (whitespace-insensitive). */
|
|
13
|
+
decision?: string;
|
|
14
|
+
/** Disambiguates identical decision sources at different locations. */
|
|
15
|
+
line?: number;
|
|
16
|
+
/** Condition source text (whitespace-insensitive), or "C<n>" with a decision. */
|
|
17
|
+
condition: string;
|
|
18
|
+
reason: string;
|
|
19
|
+
}
|
|
20
|
+
export interface CoverageWaiverMatch {
|
|
21
|
+
waiver: CoverageWaiver;
|
|
22
|
+
decisionId: string;
|
|
23
|
+
file: string;
|
|
24
|
+
line: number;
|
|
25
|
+
conditionIndex: number;
|
|
26
|
+
conditionSource: string;
|
|
27
|
+
/** A waiver on a condition that is actually covered contradicts the review. */
|
|
28
|
+
covered: boolean;
|
|
29
|
+
}
|
|
30
|
+
export interface CoverageWaiverEvaluation {
|
|
31
|
+
path: string;
|
|
32
|
+
waivers: CoverageWaiver[];
|
|
33
|
+
/** Uncovered conditions excused by a reviewed waiver. */
|
|
34
|
+
applied: CoverageWaiverMatch[];
|
|
35
|
+
/** Waivers whose condition the run proves covered. */
|
|
36
|
+
contradicted: CoverageWaiverMatch[];
|
|
37
|
+
/** Waivers that match no decision condition in this run. */
|
|
38
|
+
unmatched: CoverageWaiver[];
|
|
39
|
+
/** decision ID -> condition index -> waiver, for annotating views. */
|
|
40
|
+
waivedByDecision: Map<string, Map<number, CoverageWaiver>>;
|
|
41
|
+
/** file -> count of applied waivers, for per-file gap views. */
|
|
42
|
+
appliedByFile: Map<string, number>;
|
|
43
|
+
}
|
|
44
|
+
export declare function readCoverageWaivers(root: string): {
|
|
45
|
+
path: string;
|
|
46
|
+
waivers: CoverageWaiver[];
|
|
47
|
+
} | undefined;
|
|
48
|
+
export declare function evaluateCoverageWaivers(decisions: McdcDecisionResult[], source: {
|
|
49
|
+
path: string;
|
|
50
|
+
waivers: CoverageWaiver[];
|
|
51
|
+
}): CoverageWaiverEvaluation;
|
|
52
|
+
//# sourceMappingURL=waivers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"waivers.d.ts","sourceRoot":"","sources":["../src/waivers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,eAAO,MAAM,YAAY,0BAA0B,CAAC;AACpD,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uEAAuE;IACvE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iFAAiF;IACjF,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,yDAAyD;IACzD,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,sDAAsD;IACtD,YAAY,EAAE,mBAAmB,EAAE,CAAC;IACpC,4DAA4D;IAC5D,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,sEAAsE;IACtE,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAC3D,gEAAgE;IAChE,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAcD,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,GACX;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,cAAc,EAAE,CAAA;CAAE,GAAG,SAAS,CAuDzD;AAED,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,kBAAkB,EAAE,EAC/B,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,cAAc,EAAE,CAAA;CAAE,GAClD,wBAAwB,CAmE1B"}
|
package/dist/waivers.js
ADDED
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { readFileSync } from "node:fs";
|
|
2
|
+
import { resolve } from "node:path";
|
|
3
|
+
import { SupercovError } from "./agentJson.js";
|
|
4
|
+
export const WAIVERS_FILE = "supercov.waivers.json";
|
|
5
|
+
export const WAIVERS_SCHEMA_VERSION = 1;
|
|
6
|
+
function normalizedSource(source) {
|
|
7
|
+
return source.replace(/\s+/g, " ").trim();
|
|
8
|
+
}
|
|
9
|
+
function invalidWaiver(index, problem) {
|
|
10
|
+
return new SupercovError("INVALID_ARGUMENT", `${WAIVERS_FILE} waiver ${index + 1} ${problem}`, { details: { file: WAIVERS_FILE, waiver: index + 1 } });
|
|
11
|
+
}
|
|
12
|
+
export function readCoverageWaivers(root) {
|
|
13
|
+
const path = resolve(root, WAIVERS_FILE);
|
|
14
|
+
let raw;
|
|
15
|
+
try {
|
|
16
|
+
raw = readFileSync(path, "utf8");
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
let parsed;
|
|
22
|
+
try {
|
|
23
|
+
parsed = JSON.parse(raw);
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
throw new SupercovError("INVALID_ARGUMENT", `${WAIVERS_FILE} is not valid JSON: ${error instanceof Error ? error.message : String(error)}`, { details: { file: WAIVERS_FILE } });
|
|
27
|
+
}
|
|
28
|
+
const record = parsed;
|
|
29
|
+
if (record?.version !== WAIVERS_SCHEMA_VERSION || !Array.isArray(record.waivers)) {
|
|
30
|
+
throw new SupercovError("INVALID_ARGUMENT", `${WAIVERS_FILE} must be {"version": 1, "waivers": [...]}`, { details: { file: WAIVERS_FILE } });
|
|
31
|
+
}
|
|
32
|
+
const waivers = record.waivers.map((entry, index) => {
|
|
33
|
+
const waiver = entry;
|
|
34
|
+
if (typeof waiver?.file !== "string" || waiver.file.length === 0)
|
|
35
|
+
throw invalidWaiver(index, "requires a non-empty file");
|
|
36
|
+
if (typeof waiver.condition !== "string" || waiver.condition.length === 0)
|
|
37
|
+
throw invalidWaiver(index, "requires a non-empty condition");
|
|
38
|
+
if (typeof waiver.reason !== "string" || waiver.reason.trim().length === 0)
|
|
39
|
+
throw invalidWaiver(index, "requires a non-empty reason");
|
|
40
|
+
if (waiver.decision !== undefined && typeof waiver.decision !== "string")
|
|
41
|
+
throw invalidWaiver(index, "has a non-string decision");
|
|
42
|
+
if (waiver.line !== undefined &&
|
|
43
|
+
(!Number.isSafeInteger(waiver.line) || waiver.line < 1))
|
|
44
|
+
throw invalidWaiver(index, "has a non-positive line");
|
|
45
|
+
if (/^C\d+$/.test(waiver.condition) && !waiver.decision)
|
|
46
|
+
throw invalidWaiver(index, `uses the positional condition ${waiver.condition} without a decision`);
|
|
47
|
+
return {
|
|
48
|
+
file: waiver.file,
|
|
49
|
+
...(waiver.decision !== undefined ? { decision: waiver.decision } : {}),
|
|
50
|
+
...(waiver.line !== undefined ? { line: waiver.line } : {}),
|
|
51
|
+
condition: waiver.condition,
|
|
52
|
+
reason: waiver.reason,
|
|
53
|
+
};
|
|
54
|
+
});
|
|
55
|
+
return { path, waivers };
|
|
56
|
+
}
|
|
57
|
+
export function evaluateCoverageWaivers(decisions, source) {
|
|
58
|
+
const applied = [];
|
|
59
|
+
const contradicted = [];
|
|
60
|
+
const unmatched = [];
|
|
61
|
+
const waivedByDecision = new Map();
|
|
62
|
+
const appliedByFile = new Map();
|
|
63
|
+
for (const waiver of source.waivers) {
|
|
64
|
+
const matches = [];
|
|
65
|
+
for (const decision of decisions) {
|
|
66
|
+
if (decision.meta.file !== waiver.file)
|
|
67
|
+
continue;
|
|
68
|
+
if (waiver.line !== undefined && decision.meta.line !== waiver.line)
|
|
69
|
+
continue;
|
|
70
|
+
if (waiver.decision !== undefined &&
|
|
71
|
+
decision.meta.id !== waiver.decision &&
|
|
72
|
+
normalizedSource(decision.meta.source) !==
|
|
73
|
+
normalizedSource(waiver.decision))
|
|
74
|
+
continue;
|
|
75
|
+
for (const condition of decision.conditions) {
|
|
76
|
+
const positional = `C${condition.index + 1}`;
|
|
77
|
+
if (waiver.condition !== positional &&
|
|
78
|
+
normalizedSource(condition.source) !==
|
|
79
|
+
normalizedSource(waiver.condition))
|
|
80
|
+
continue;
|
|
81
|
+
matches.push({
|
|
82
|
+
waiver,
|
|
83
|
+
decisionId: decision.meta.id,
|
|
84
|
+
file: decision.meta.file,
|
|
85
|
+
line: decision.meta.line,
|
|
86
|
+
conditionIndex: condition.index,
|
|
87
|
+
conditionSource: condition.source,
|
|
88
|
+
covered: condition.covered,
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
if (matches.length === 0) {
|
|
93
|
+
unmatched.push(waiver);
|
|
94
|
+
continue;
|
|
95
|
+
}
|
|
96
|
+
for (const match of matches) {
|
|
97
|
+
if (match.covered) {
|
|
98
|
+
contradicted.push(match);
|
|
99
|
+
continue;
|
|
100
|
+
}
|
|
101
|
+
const byCondition = waivedByDecision.get(match.decisionId) ??
|
|
102
|
+
new Map();
|
|
103
|
+
if (byCondition.has(match.conditionIndex))
|
|
104
|
+
continue;
|
|
105
|
+
applied.push(match);
|
|
106
|
+
byCondition.set(match.conditionIndex, match.waiver);
|
|
107
|
+
waivedByDecision.set(match.decisionId, byCondition);
|
|
108
|
+
appliedByFile.set(match.file, (appliedByFile.get(match.file) ?? 0) + 1);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return {
|
|
112
|
+
path: source.path,
|
|
113
|
+
waivers: source.waivers,
|
|
114
|
+
applied,
|
|
115
|
+
contradicted,
|
|
116
|
+
unmatched,
|
|
117
|
+
waivedByDecision,
|
|
118
|
+
appliedByFile,
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=waivers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"waivers.js","sourceRoot":"","sources":["../src/waivers.ts"],"names":[],"mappings":"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"}
|
package/dist/workspace.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export declare const RUN_STORE_CONTRACT_VERSION = 1;
|
|
1
2
|
export type RunStateStatus = "preparing" | "building" | "testing" | "publishing" | "complete" | "failed" | "interrupted" | "abandoned";
|
|
2
3
|
export interface RunState {
|
|
3
4
|
id: string;
|
|
@@ -10,6 +11,30 @@ export interface RunState {
|
|
|
10
11
|
signal?: NodeJS.Signals;
|
|
11
12
|
error?: string;
|
|
12
13
|
}
|
|
14
|
+
/**
|
|
15
|
+
* Unlinking a large tree (workspace copies, per-attempt evidence) can take
|
|
16
|
+
* minutes of uninterruptible I/O — observed at 26+ minutes on a real project.
|
|
17
|
+
* Removal must never block the command: rename the tree into the store's
|
|
18
|
+
* trash (atomic on the same filesystem, so the path disappears instantly) and
|
|
19
|
+
* let a detached deleter unlink it after this process has already returned.
|
|
20
|
+
* A crash between rename and unlink just leaves the entry in the trash, and
|
|
21
|
+
* every later invocation sweeps whatever it finds there.
|
|
22
|
+
*/
|
|
23
|
+
export declare function removeStoredTreeDeferred(root: string, target: string): string | undefined;
|
|
24
|
+
/** The detached deleter's whole program; also executed verbatim by tests. */
|
|
25
|
+
export declare const TRASH_DELETER_SCRIPT: string;
|
|
26
|
+
/** Unlink everything in the trash without making anyone wait for it. */
|
|
27
|
+
export declare function spawnTrashDeleter(root: string): void;
|
|
28
|
+
/**
|
|
29
|
+
* The instrumented workspace deliberately lives outside the dotted store.
|
|
30
|
+
* Widely used libraries treat *any* dot-prefixed path segment as a hidden
|
|
31
|
+
* dotfile — `send` (and therefore `express.static`, `serve-static` and
|
|
32
|
+
* `res.sendFile`) answers 404 for them by default — so an application under
|
|
33
|
+
* test cannot serve its own files from a dotted workspace. Copied test files
|
|
34
|
+
* are kept out of the user's ordinary runner discovery by
|
|
35
|
+
* `pruneCachedWorkspaceSources` at run end, not by hiding the path.
|
|
36
|
+
*/
|
|
37
|
+
export declare function workspaceContainerPath(root: string): string;
|
|
13
38
|
export declare function isolatedWorkspacePath(root: string, runId: string): string;
|
|
14
39
|
/**
|
|
15
40
|
* Stable isolated namespace used as a live mount by VM/container runners.
|
|
@@ -18,6 +43,17 @@ export declare function isolatedWorkspacePath(root: string, runId: string): stri
|
|
|
18
43
|
* The project lock makes refreshes single-writer.
|
|
19
44
|
*/
|
|
20
45
|
export declare function cachedWorkspacePath(root: string): string;
|
|
46
|
+
/**
|
|
47
|
+
* Remove the copied source and test files from the stable cached workspace
|
|
48
|
+
* once a run ends. Between runs those copies are pure liability: the next
|
|
49
|
+
* refresh re-copies them anyway, but an ordinary test runner invoked at the
|
|
50
|
+
* project root (whose default discovery does not exclude dot-directories —
|
|
51
|
+
* Vitest 4 excludes only node_modules and .git) would find the copied test
|
|
52
|
+
* files and silently double-count the user's suite. Keep only what the next
|
|
53
|
+
* run genuinely reuses: dependency symlinks, the generated adapter directory,
|
|
54
|
+
* and the instrumented build artifacts the build cache declares.
|
|
55
|
+
*/
|
|
56
|
+
export declare function pruneCachedWorkspaceSources(root: string): string[];
|
|
21
57
|
export interface CacheRecoveryResult {
|
|
22
58
|
restoredPrevious: boolean;
|
|
23
59
|
removedStaging: number;
|
package/dist/workspace.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"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"}
|