supercov 0.0.11 → 0.0.13

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.
Files changed (175) hide show
  1. package/README.md +28 -23
  2. package/bin/supercov.js +8 -19
  3. package/package.json +31 -43
  4. package/{dist → runtime/javascript}/atomic.js +0 -1
  5. package/{dist → runtime/javascript}/launchSupervisor.js +45 -2
  6. package/{dist → runtime/javascript}/nodeAssert.js +0 -1
  7. package/{dist → runtime/javascript}/nodeAssertAdapter.js +0 -1
  8. package/{dist → runtime/javascript}/nodeAssertStrict.js +0 -1
  9. package/{dist → runtime/javascript}/nodeTest.js +0 -1
  10. package/{dist → runtime/javascript}/playwright.js +0 -1
  11. package/{dist → runtime/javascript}/playwrightReporter.js +0 -1
  12. package/{dist → runtime/javascript}/provenance.js +0 -1
  13. package/{dist → runtime/javascript}/register.mjs +3 -2
  14. package/{dist → runtime/javascript}/resolve-loader.mjs +0 -42
  15. package/{dist → runtime/javascript}/runnerEvidence.js +0 -1
  16. package/{dist → runtime/javascript}/transport.js +0 -1
  17. package/{dist → runtime/javascript}/vitest.js +0 -1
  18. package/{dist → runtime/javascript}/vitestReporter.js +0 -1
  19. package/dist/agentJson.d.ts +0 -45
  20. package/dist/agentJson.d.ts.map +0 -1
  21. package/dist/agentJson.js +0 -102
  22. package/dist/agentJson.js.map +0 -1
  23. package/dist/analyze.d.ts +0 -12
  24. package/dist/analyze.d.ts.map +0 -1
  25. package/dist/analyze.js +0 -704
  26. package/dist/analyze.js.map +0 -1
  27. package/dist/atomic.d.ts +0 -6
  28. package/dist/atomic.d.ts.map +0 -1
  29. package/dist/atomic.js.map +0 -1
  30. package/dist/buildCache.d.ts +0 -14
  31. package/dist/buildCache.d.ts.map +0 -1
  32. package/dist/buildCache.js +0 -84
  33. package/dist/buildCache.js.map +0 -1
  34. package/dist/cli.d.ts +0 -2
  35. package/dist/cli.d.ts.map +0 -1
  36. package/dist/cli.js +0 -797
  37. package/dist/cli.js.map +0 -1
  38. package/dist/directInstrumenter.d.ts +0 -8
  39. package/dist/directInstrumenter.d.ts.map +0 -1
  40. package/dist/directInstrumenter.js +0 -112
  41. package/dist/directInstrumenter.js.map +0 -1
  42. package/dist/engineEvidence.d.ts +0 -9
  43. package/dist/engineEvidence.d.ts.map +0 -1
  44. package/dist/engineEvidence.js +0 -31
  45. package/dist/engineEvidence.js.map +0 -1
  46. package/dist/engineInstrumenter.d.ts +0 -16
  47. package/dist/engineInstrumenter.d.ts.map +0 -1
  48. package/dist/engineInstrumenter.js +0 -50
  49. package/dist/engineInstrumenter.js.map +0 -1
  50. package/dist/engineProcess.d.ts +0 -11
  51. package/dist/engineProcess.d.ts.map +0 -1
  52. package/dist/engineProcess.js +0 -59
  53. package/dist/engineProcess.js.map +0 -1
  54. package/dist/esmInterceptor.d.ts +0 -6
  55. package/dist/esmInterceptor.d.ts.map +0 -1
  56. package/dist/esmInterceptor.js +0 -63
  57. package/dist/esmInterceptor.js.map +0 -1
  58. package/dist/evidenceArchive.d.ts +0 -38
  59. package/dist/evidenceArchive.d.ts.map +0 -1
  60. package/dist/evidenceArchive.js +0 -156
  61. package/dist/evidenceArchive.js.map +0 -1
  62. package/dist/instrumenter.d.ts +0 -18
  63. package/dist/instrumenter.d.ts.map +0 -1
  64. package/dist/instrumenter.js +0 -1644
  65. package/dist/instrumenter.js.map +0 -1
  66. package/dist/integrity.d.ts +0 -10
  67. package/dist/integrity.d.ts.map +0 -1
  68. package/dist/integrity.js +0 -213
  69. package/dist/integrity.js.map +0 -1
  70. package/dist/launchSupervisor.d.ts +0 -38
  71. package/dist/launchSupervisor.d.ts.map +0 -1
  72. package/dist/launchSupervisor.js.map +0 -1
  73. package/dist/merge.d.ts +0 -2
  74. package/dist/merge.d.ts.map +0 -1
  75. package/dist/merge.js +0 -119
  76. package/dist/merge.js.map +0 -1
  77. package/dist/nodeAssert.d.ts +0 -31
  78. package/dist/nodeAssert.d.ts.map +0 -1
  79. package/dist/nodeAssert.js.map +0 -1
  80. package/dist/nodeAssertAdapter.d.ts +0 -6
  81. package/dist/nodeAssertAdapter.d.ts.map +0 -1
  82. package/dist/nodeAssertAdapter.js.map +0 -1
  83. package/dist/nodeAssertStrict.d.ts +0 -31
  84. package/dist/nodeAssertStrict.d.ts.map +0 -1
  85. package/dist/nodeAssertStrict.js.map +0 -1
  86. package/dist/nodeAssertionInstrumenter.d.ts +0 -8
  87. package/dist/nodeAssertionInstrumenter.d.ts.map +0 -1
  88. package/dist/nodeAssertionInstrumenter.js +0 -271
  89. package/dist/nodeAssertionInstrumenter.js.map +0 -1
  90. package/dist/nodeTest.d.ts +0 -15
  91. package/dist/nodeTest.d.ts.map +0 -1
  92. package/dist/nodeTest.js.map +0 -1
  93. package/dist/playwright.d.ts +0 -9
  94. package/dist/playwright.d.ts.map +0 -1
  95. package/dist/playwright.js.map +0 -1
  96. package/dist/playwrightReporter.d.ts +0 -6
  97. package/dist/playwrightReporter.d.ts.map +0 -1
  98. package/dist/playwrightReporter.js.map +0 -1
  99. package/dist/processDiagnostics.d.ts +0 -34
  100. package/dist/processDiagnostics.d.ts.map +0 -1
  101. package/dist/processDiagnostics.js +0 -155
  102. package/dist/processDiagnostics.js.map +0 -1
  103. package/dist/project.d.ts +0 -21
  104. package/dist/project.d.ts.map +0 -1
  105. package/dist/project.js +0 -331
  106. package/dist/project.js.map +0 -1
  107. package/dist/provenance.d.ts +0 -9
  108. package/dist/provenance.d.ts.map +0 -1
  109. package/dist/provenance.js.map +0 -1
  110. package/dist/query.d.ts +0 -81
  111. package/dist/query.d.ts.map +0 -1
  112. package/dist/query.js +0 -1656
  113. package/dist/query.js.map +0 -1
  114. package/dist/queryCache.d.ts +0 -15
  115. package/dist/queryCache.d.ts.map +0 -1
  116. package/dist/queryCache.js +0 -95
  117. package/dist/queryCache.js.map +0 -1
  118. package/dist/queueAdapters.d.ts +0 -15
  119. package/dist/queueAdapters.d.ts.map +0 -1
  120. package/dist/queueAdapters.js +0 -55
  121. package/dist/queueAdapters.js.map +0 -1
  122. package/dist/register.d.mts +0 -2
  123. package/dist/register.d.mts.map +0 -1
  124. package/dist/register.mjs.map +0 -1
  125. package/dist/reporter.d.ts +0 -13
  126. package/dist/reporter.d.ts.map +0 -1
  127. package/dist/reporter.js +0 -252
  128. package/dist/reporter.js.map +0 -1
  129. package/dist/resolve-loader.d.mts +0 -3
  130. package/dist/resolve-loader.d.mts.map +0 -1
  131. package/dist/resolve-loader.mjs.map +0 -1
  132. package/dist/runAnalysis.d.ts +0 -19
  133. package/dist/runAnalysis.d.ts.map +0 -1
  134. package/dist/runAnalysis.js +0 -171
  135. package/dist/runAnalysis.js.map +0 -1
  136. package/dist/runnerEvidence.d.ts +0 -19
  137. package/dist/runnerEvidence.d.ts.map +0 -1
  138. package/dist/runnerEvidence.js.map +0 -1
  139. package/dist/runtime.d.ts +0 -140
  140. package/dist/runtime.d.ts.map +0 -1
  141. package/dist/runtime.js.map +0 -1
  142. package/dist/runtimeIsolation.d.ts +0 -3
  143. package/dist/runtimeIsolation.d.ts.map +0 -1
  144. package/dist/runtimeIsolation.js +0 -9
  145. package/dist/runtimeIsolation.js.map +0 -1
  146. package/dist/sourceDiscovery.d.ts +0 -9
  147. package/dist/sourceDiscovery.d.ts.map +0 -1
  148. package/dist/sourceDiscovery.js +0 -242
  149. package/dist/sourceDiscovery.js.map +0 -1
  150. package/dist/transport.d.ts +0 -17
  151. package/dist/transport.d.ts.map +0 -1
  152. package/dist/transport.js.map +0 -1
  153. package/dist/types.d.ts +0 -378
  154. package/dist/types.d.ts.map +0 -1
  155. package/dist/types.js +0 -2
  156. package/dist/types.js.map +0 -1
  157. package/dist/vitePlugin.d.ts +0 -13
  158. package/dist/vitePlugin.d.ts.map +0 -1
  159. package/dist/vitePlugin.js +0 -139
  160. package/dist/vitePlugin.js.map +0 -1
  161. package/dist/vitest.d.ts +0 -2
  162. package/dist/vitest.d.ts.map +0 -1
  163. package/dist/vitest.js.map +0 -1
  164. package/dist/vitestReporter.d.ts +0 -43
  165. package/dist/vitestReporter.d.ts.map +0 -1
  166. package/dist/vitestReporter.js.map +0 -1
  167. package/dist/waivers.d.ts +0 -52
  168. package/dist/waivers.d.ts.map +0 -1
  169. package/dist/waivers.js +0 -121
  170. package/dist/waivers.js.map +0 -1
  171. package/dist/workspace.d.ts +0 -117
  172. package/dist/workspace.d.ts.map +0 -1
  173. package/dist/workspace.js +0 -680
  174. package/dist/workspace.js.map +0 -1
  175. /package/{dist → runtime/javascript}/runtime.js +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"instrumenter.js","sourceRoot":"","sources":["../src/instrumenter.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import type { CoverageProject } from "./project.ts";
2
- import type { CoverageRunIntegrity } from "./types.ts";
3
- export declare const COVERAGE_REPORT_SCHEMA_VERSION = 2;
4
- export declare const COVERAGE_INSTRUMENTER_VERSION = "2.0.0";
5
- export declare function createRunIntegrity(root: string, project: CoverageProject, toolSourceDirectory: string): CoverageRunIntegrity;
6
- export declare function compareRunIntegrity(stored: CoverageRunIntegrity | undefined, current: CoverageRunIntegrity): {
7
- stale: boolean;
8
- reasons: string[];
9
- };
10
- //# sourceMappingURL=integrity.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"integrity.d.ts","sourceRoot":"","sources":["../src/integrity.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,KAAK,EAEV,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAChD,eAAO,MAAM,6BAA6B,UAAU,CAAC;AAmErD,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,eAAe,EACxB,mBAAmB,EAAE,MAAM,GAC1B,oBAAoB,CA0ItB;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,oBAAoB,GAAG,SAAS,EACxC,OAAO,EAAE,oBAAoB,GAC5B;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAgBvC"}
package/dist/integrity.js DELETED
@@ -1,213 +0,0 @@
1
- import { createHash } from "node:crypto";
2
- import { spawnSync } from "node:child_process";
3
- import { existsSync, readFileSync, readdirSync, statSync, } from "node:fs";
4
- import { relative, resolve, sep } from "node:path";
5
- import { instrumentationEngineIdentity } from "./engineInstrumenter.js";
6
- export const COVERAGE_REPORT_SCHEMA_VERSION = 2;
7
- export const COVERAGE_INSTRUMENTER_VERSION = "2.0.0";
8
- const SOURCE_PATTERN = /\.[cm]?[jt]sx?$/;
9
- const TEST_PATTERN = /(?:^|[/_.-])(test|spec)(?:[/_.-]|$).*\.[cm]?[jt]sx?$/i;
10
- const SKIPPED_DIRECTORIES = new Set([
11
- ".cache",
12
- ".git",
13
- ".mcdc-pool",
14
- ".next",
15
- ".nuxt",
16
- ".output",
17
- ".supercov",
18
- "build",
19
- "coverage",
20
- "dist",
21
- "node_modules",
22
- "out",
23
- "playwright-report",
24
- "results",
25
- "test-results",
26
- "vendor",
27
- ]);
28
- function filesUnder(directory) {
29
- if (!existsSync(directory) || !statSync(directory).isDirectory())
30
- return [];
31
- return readdirSync(directory, { withFileTypes: true }).flatMap((entry) => {
32
- if (entry.isDirectory() && SKIPPED_DIRECTORIES.has(entry.name))
33
- return [];
34
- const path = resolve(directory, entry.name);
35
- if (entry.isDirectory())
36
- return filesUnder(path);
37
- return entry.isFile() ? [path] : [];
38
- });
39
- }
40
- function normalized(root, path) {
41
- return relative(root, path).split(sep).join("/");
42
- }
43
- function digestFiles(root, paths) {
44
- const hash = createHash("sha256");
45
- for (const path of [...new Set(paths)].sort()) {
46
- if (!existsSync(path) || !statSync(path).isFile())
47
- continue;
48
- hash.update(normalized(root, path));
49
- hash.update("\0");
50
- hash.update(readFileSync(path));
51
- hash.update("\0");
52
- }
53
- return hash.digest("hex");
54
- }
55
- function git(root) {
56
- const revision = spawnSync("git", ["rev-parse", "HEAD"], {
57
- cwd: root,
58
- encoding: "utf8",
59
- });
60
- const status = spawnSync("git", ["status", "--porcelain=v1"], {
61
- cwd: root,
62
- encoding: "utf8",
63
- });
64
- if (revision.status !== 0 && status.status !== 0)
65
- return undefined;
66
- return {
67
- ...(revision.status === 0
68
- ? { revision: revision.stdout.trim() }
69
- : {}),
70
- dirty: status.status !== 0 || status.stdout.trim().length > 0,
71
- };
72
- }
73
- export function createRunIntegrity(root, project, toolSourceDirectory) {
74
- const sourceFiles = project.sourceFiles.map((path) => resolve(root, path));
75
- const explicitTests = ["test", "tests", "__tests__"].flatMap((directory) => filesUnder(resolve(root, directory)).filter((path) => SOURCE_PATTERN.test(path)));
76
- const colocatedTests = filesUnder(root).filter((path) => SOURCE_PATTERN.test(path) && TEST_PATTERN.test(normalized(root, path)));
77
- const testFiles = [...new Set([...explicitTests, ...colocatedTests])];
78
- const dependencyFiles = [
79
- "package.json",
80
- "package-lock.json",
81
- "npm-shrinkwrap.json",
82
- "pnpm-lock.yaml",
83
- "yarn.lock",
84
- "bun.lock",
85
- "bun.lockb",
86
- ]
87
- .map((path) => resolve(root, path))
88
- .filter(existsSync);
89
- const configurationFiles = [
90
- "playwright.config.ts",
91
- "playwright.config.mts",
92
- "playwright.config.js",
93
- "playwright.config.mjs",
94
- "vitest.config.ts",
95
- "vitest.config.mts",
96
- "vitest.config.js",
97
- "vitest.config.mjs",
98
- "vite.config.ts",
99
- "vite.config.mts",
100
- "vite.config.js",
101
- "vite.config.mjs",
102
- "tsconfig.json",
103
- ".npmrc",
104
- ]
105
- .map((path) => resolve(root, path))
106
- .concat([project.playwrightConfig, project.vitestConfig].filter((value) => Boolean(value)))
107
- .filter(existsSync);
108
- const instrumenterFiles = filesUnder(toolSourceDirectory).filter((path) => /\.[cm]?[jt]s$/.test(path));
109
- const executionFiles = [
110
- "atomic.js",
111
- "buildCache.js",
112
- "cli.js",
113
- "directInstrumenter.js",
114
- "engineInstrumenter.js",
115
- "esmInterceptor.js",
116
- "instrumenter.js",
117
- "launchSupervisor.js",
118
- "nodeTest.js",
119
- "nodeAssert.js",
120
- "nodeAssertAdapter.js",
121
- "nodeAssertStrict.js",
122
- "playwright.js",
123
- "playwrightReporter.js",
124
- "processDiagnostics.js",
125
- "project.js",
126
- "provenance.js",
127
- "queueAdapters.js",
128
- "register.mjs",
129
- "resolve-loader.mjs",
130
- "runnerEvidence.js",
131
- "runtime.js",
132
- "sourceDiscovery.js",
133
- "transport.js",
134
- "types.js",
135
- "vitePlugin.js",
136
- "vitest.js",
137
- "vitestReporter.js",
138
- "workspace.js",
139
- ]
140
- .map((path) => resolve(toolSourceDirectory, path))
141
- .filter(existsSync);
142
- const source = digestFiles(root, sourceFiles);
143
- const tests = digestFiles(root, testFiles);
144
- const dependencies = digestFiles(root, dependencyFiles);
145
- const configuration = digestFiles(root, configurationFiles);
146
- const instrumenterSource = digestFiles(toolSourceDirectory, instrumenterFiles);
147
- const engine = instrumentationEngineIdentity();
148
- const instrumenter = createHash("sha256")
149
- .update(JSON.stringify({ instrumenterSource, engine }))
150
- .digest("hex");
151
- const executionInstrumenter = digestFiles(toolSourceDirectory, executionFiles.length > 0 ? executionFiles : instrumenterFiles);
152
- const execution = createHash("sha256")
153
- .update(JSON.stringify({
154
- schema: COVERAGE_REPORT_SCHEMA_VERSION,
155
- version: COVERAGE_INSTRUMENTER_VERSION,
156
- source,
157
- dependencies,
158
- configuration,
159
- buildEnvironment: project.buildEnvironment,
160
- executionInstrumenter,
161
- engine,
162
- }))
163
- .digest("hex");
164
- const combined = createHash("sha256")
165
- .update(JSON.stringify({
166
- schema: COVERAGE_REPORT_SCHEMA_VERSION,
167
- version: COVERAGE_INSTRUMENTER_VERSION,
168
- source,
169
- tests,
170
- dependencies,
171
- configuration,
172
- instrumenter,
173
- }))
174
- .digest("hex");
175
- const fingerprint = {
176
- algorithm: "sha256",
177
- source,
178
- tests,
179
- dependencies,
180
- configuration,
181
- instrumenter,
182
- execution,
183
- combined,
184
- sourceFiles: sourceFiles.length,
185
- testFiles: testFiles.length,
186
- };
187
- const gitState = git(root);
188
- return {
189
- schemaVersion: COVERAGE_REPORT_SCHEMA_VERSION,
190
- instrumenterVersion: COVERAGE_INSTRUMENTER_VERSION,
191
- ...(gitState ? { git: gitState } : {}),
192
- fingerprint,
193
- };
194
- }
195
- export function compareRunIntegrity(stored, current) {
196
- if (!stored)
197
- return { stale: true, reasons: ["run predates integrity fingerprints"] };
198
- const reasons = [];
199
- if (stored.schemaVersion !== current.schemaVersion)
200
- reasons.push("coverage schema changed");
201
- if (stored.fingerprint.instrumenter !== current.fingerprint.instrumenter)
202
- reasons.push("instrumenter changed");
203
- if (stored.fingerprint.source !== current.fingerprint.source)
204
- reasons.push("instrumented source changed");
205
- if (stored.fingerprint.tests !== current.fingerprint.tests)
206
- reasons.push("test files changed");
207
- if (stored.fingerprint.dependencies !== current.fingerprint.dependencies)
208
- reasons.push("dependencies or lockfile changed");
209
- if (stored.fingerprint.configuration !== current.fingerprint.configuration)
210
- reasons.push("test/build configuration changed");
211
- return { stale: reasons.length > 0, reasons };
212
- }
213
- //# sourceMappingURL=integrity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"integrity.js","sourceRoot":"","sources":["../src/integrity.ts"],"names":[],"mappings":"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"}
@@ -1,38 +0,0 @@
1
- export interface WorkspaceMapping {
2
- hostRoot: string;
3
- guestRoot: string;
4
- }
5
- /**
6
- * Find a host-to-guest mount that makes the isolated project visible to a
7
- * remote executor. This deliberately recognizes data shape, not a provider or
8
- * package name.
9
- */
10
- export declare function discoverWorkspaceMapping(value: unknown, hostRoot: string, depth?: number): WorkspaceMapping | undefined;
11
- /** Clone only branches that contain a recognized cache/snapshot identity. */
12
- export declare function scopeCapabilityCache(value: unknown, fingerprint: string, depth?: number): {
13
- value: unknown;
14
- changed: string[];
15
- };
16
- /** Build an environment whose paths remain valid inside the discovered VM. */
17
- export declare function guestCoverageEnvironment(mapping: WorkspaceMapping, coverageEnvironment?: NodeJS.ProcessEnv, existingEnvironment?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
18
- /**
19
- * A remote SDK can hide its first executable launch inside a configuration
20
- * callback (for example an image warmup hook). Decorate callbacks in ordinary
21
- * configuration data so capability objects delivered later receive the same
22
- * provider-neutral launch supervision as objects returned directly by the SDK.
23
- * Accessors and class instances are deliberately left alone.
24
- */
25
- export declare function wrapCapabilityCallbacks(value: unknown, mapping: WorkspaceMapping, depth?: number, seen?: WeakMap<object, unknown>): unknown;
26
- /**
27
- * Follow an opaque image/pool/machine-style object graph. Any method accepting
28
- * an argv-shaped options object receives the translated Supercov environment.
29
- */
30
- export declare function wrapCapabilityObject(value: unknown, mapping: WorkspaceMapping): unknown;
31
- /**
32
- * Proxy a value imported by a first-party ESM launcher. The proxy remains
33
- * provider-neutral: it waits until arguments reveal a host/guest mount, then
34
- * delegates to the same capability graph used for CommonJS exports.
35
- */
36
- export declare function wrapImportedCapability(value: unknown): unknown;
37
- export declare function installLaunchSupervisor(): void;
38
- //# sourceMappingURL=launchSupervisor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"launchSupervisor.d.ts","sourceRoot":"","sources":["../src/launchSupervisor.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAsFD;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,MAAM,EAChB,KAAK,SAAI,GACR,gBAAgB,GAAG,SAAS,CA0B9B;AAOD,6EAA6E;AAC7E,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,EACd,WAAW,EAAE,MAAM,EACnB,KAAK,SAAI,GACR;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAoCvC;AAkCD,8EAA8E;AAC9E,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,gBAAgB,EACzB,mBAAmB,GAAE,MAAM,CAAC,UAAwB,EACpD,mBAAmB,GAAE,MAAM,CAAC,UAAe,GAC1C,MAAM,CAAC,UAAU,CAiBnB;AAgDD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,gBAAgB,EACzB,KAAK,SAAI,EACT,IAAI,2BAAiC,GACpC,OAAO,CAkDT;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,gBAAgB,GACxB,OAAO,CA2DT;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAwD9D;AA2ID,wBAAgB,uBAAuB,IAAI,IAAI,CA2B9C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"launchSupervisor.js","sourceRoot":"","sources":["../src/launchSupervisor.ts"],"names":[],"mappings":"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"}
package/dist/merge.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare function mergeCoverageRuns(root: string, runIds: string[]): string;
2
- //# sourceMappingURL=merge.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../src/merge.ts"],"names":[],"mappings":"AA0EA,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CA0ExE"}
package/dist/merge.js DELETED
@@ -1,119 +0,0 @@
1
- import { existsSync, mkdirSync, readFileSync } from "node:fs";
2
- import { basename, resolve } from "node:path";
3
- import { atomicRenameSync, atomicWriteFileSync } from "./atomic.js";
4
- import { EVIDENCE_ARCHIVE_SCHEMA_VERSION, readEvidenceArchive, } from "./evidenceArchive.js";
5
- import { writeEngineEvidenceArchiveEntries } from "./engineEvidence.js";
6
- import { acquireProjectLock, removeStoredTreeDeferred, spawnTrashDeleter, } from "./workspace.js";
7
- function metadata(root, id) {
8
- const path = resolve(root, ".supercov/runs", id, "run.json");
9
- try {
10
- const value = JSON.parse(readFileSync(path, "utf8"));
11
- if (value.id !== id ||
12
- value.rawEvidence?.schemaVersion !== EVIDENCE_ARCHIVE_SCHEMA_VERSION ||
13
- !existsSync(resolve(root, ".supercov/runs", id, "evidence.raw.gz")))
14
- throw new Error("incomplete run");
15
- return value;
16
- }
17
- catch (error) {
18
- throw new Error(`Cannot merge coverage run ${id}: ${String(error)}`);
19
- }
20
- }
21
- function rewrittenContents(contents, mergedRunId) {
22
- const rewrite = (value) => {
23
- if (!value || typeof value !== "object")
24
- return value;
25
- if (Array.isArray(value))
26
- return value.map(rewrite);
27
- const record = value;
28
- return Object.fromEntries(Object.entries(record).map(([key, nested]) => [
29
- key,
30
- key === "scope" && nested && typeof nested === "object"
31
- ? { ...nested, runId: mergedRunId }
32
- : rewrite(nested),
33
- ]));
34
- };
35
- return contents
36
- .split("\n")
37
- .map((line) => {
38
- if (!line)
39
- return line;
40
- try {
41
- return JSON.stringify(rewrite(JSON.parse(line)));
42
- }
43
- catch {
44
- return line;
45
- }
46
- })
47
- .join("\n");
48
- }
49
- function mergedPath(path, shard) {
50
- if (path.startsWith("server/background/"))
51
- return `server/background/shard-${shard}-${basename(path)}`;
52
- if (path.startsWith("server/"))
53
- return `server/shard-${shard}/${path.slice("server/".length)}`;
54
- return `shards/${shard}/${path}`;
55
- }
56
- export function mergeCoverageRuns(root, runIds) {
57
- if (runIds.length < 2)
58
- throw new Error("Usage: supercov merge <run-id> <run-id> [...]");
59
- if (new Set(runIds).size !== runIds.length)
60
- throw new Error("Each merged run must be unique");
61
- const inputs = runIds.map((id) => ({
62
- id,
63
- metadata: metadata(root, id),
64
- archive: readEvidenceArchive(resolve(root, ".supercov/runs", id, "evidence.raw.gz")),
65
- }));
66
- const integrity = inputs[0].metadata.integrity;
67
- if (!integrity)
68
- throw new Error(`Run ${inputs[0].id} has no source-integrity fingerprint`);
69
- for (const input of inputs.slice(1)) {
70
- if (!input.metadata.integrity ||
71
- input.metadata.integrity.fingerprint.combined !== integrity.fingerprint.combined ||
72
- input.metadata.integrity.schemaVersion !== integrity.schemaVersion ||
73
- input.metadata.integrity.instrumenterVersion !== integrity.instrumenterVersion) {
74
- throw new Error(`Cannot merge incompatible run ${input.id}: source, tests, dependencies, configuration, or instrumenter differ`);
75
- }
76
- }
77
- const manifests = inputs.map((input) => input.archive.files.find((entry) => entry.path === "manifest.json")?.contents);
78
- if (!manifests[0] || manifests.some((manifest) => manifest !== manifests[0]))
79
- throw new Error("Cannot merge runs with different coverage denominators");
80
- const mergedRunId = `${new Date().toISOString().replace(/[:.]/g, "-")}-merge`;
81
- const lock = acquireProjectLock(root, mergedRunId);
82
- const staging = resolve(root, ".supercov/work", mergedRunId, "run-publication");
83
- const destination = resolve(root, ".supercov/runs", mergedRunId);
84
- try {
85
- removeStoredTreeDeferred(root, staging);
86
- spawnTrashDeleter(root);
87
- mkdirSync(staging, { recursive: true });
88
- const entries = [
89
- { path: "manifest.json", contents: manifests[0] },
90
- ...inputs.flatMap((input, shard) => input.archive.files
91
- .filter((entry) => entry.path !== "manifest.json")
92
- .map((entry) => ({
93
- path: mergedPath(entry.path, shard),
94
- contents: rewrittenContents(entry.contents, mergedRunId),
95
- }))),
96
- ];
97
- const rawEvidence = writeEngineEvidenceArchiveEntries(entries, resolve(staging, "evidence.raw.gz"));
98
- const startedAt = new Date().toISOString();
99
- atomicWriteFileSync(resolve(staging, "run.json"), `${JSON.stringify({
100
- id: mergedRunId,
101
- startedAt,
102
- durationMs: 0,
103
- command: ["supercov", "merge", ...runIds],
104
- testExitCode: inputs.every((input) => input.metadata.testExitCode === 0) ? 0 : 1,
105
- integrity,
106
- rawEvidence,
107
- merged: true,
108
- parents: runIds,
109
- }, null, 2)}\n`);
110
- atomicRenameSync(staging, destination);
111
- return mergedRunId;
112
- }
113
- finally {
114
- removeStoredTreeDeferred(root, resolve(root, ".supercov/work", mergedRunId));
115
- spawnTrashDeleter(root);
116
- lock.release();
117
- }
118
- }
119
- //# sourceMappingURL=merge.js.map
package/dist/merge.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"merge.js","sourceRoot":"","sources":["../src/merge.ts"],"names":[],"mappings":"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"}