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
package/dist/query.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { type AnalyzeCoverageOptions } from "./runAnalysis.ts";
2
- import type { McdcReport } from "./types.ts";
3
- export declare const QUERY_INDEX_SCHEMA_VERSION = 1;
4
- export declare const QUERY_INDEX_FILE = "query-index.v1.json.gz";
5
- export declare function coverageQueryIndexPath(evidencePath: string): string;
6
- /** Read an already-materialized index without analyzing or writing anything. */
7
- export declare function readCoverageQueryIndex(evidencePath: string, options: AnalyzeCoverageOptions): McdcReport | undefined;
8
- /**
9
- * Materialize a disposable query index on first use. Raw evidence remains the
10
- * sole source of truth: a changed archive, tool version, schema, or corrupt
11
- * cache always causes reconstruction. Concurrent writers are harmless because
12
- * they derive identical content and publish through unique atomic temp files.
13
- */
14
- export declare function analyzeCoverageArchiveCached(evidencePath: string, options: AnalyzeCoverageOptions): McdcReport;
15
- //# sourceMappingURL=queryCache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"queryCache.d.ts","sourceRoot":"","sources":["../src/queryCache.ts"],"names":[],"mappings":"AAOA,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAC5C,eAAO,MAAM,gBAAgB,2BAAuD,CAAC;AA2CrF,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAEnE;AAoCD,gFAAgF;AAChF,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,sBAAsB,GAC9B,UAAU,GAAG,SAAS,CASxB;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,sBAAsB,GAC9B,UAAU,CAwBZ"}
@@ -1,95 +0,0 @@
1
- import { createHash } from "node:crypto";
2
- import { existsSync, readFileSync } from "node:fs";
3
- import { dirname, resolve } from "node:path";
4
- import { fileURLToPath } from "node:url";
5
- import { gunzipSync, gzipSync } from "node:zlib";
6
- import { atomicWriteFileSync } from "./atomic.js";
7
- import { EVIDENCE_ARCHIVE_SCHEMA_VERSION } from "./evidenceArchive.js";
8
- import { analyzeCoverageArchive, } from "./runAnalysis.js";
9
- export const QUERY_INDEX_SCHEMA_VERSION = 1;
10
- export const QUERY_INDEX_FILE = `query-index.v${QUERY_INDEX_SCHEMA_VERSION}.json.gz`;
11
- function packageVersion() {
12
- try {
13
- const manifest = JSON.parse(readFileSync(fileURLToPath(new URL("../package.json", import.meta.url)), "utf8"));
14
- return manifest.version ?? "unknown";
15
- }
16
- catch {
17
- return "unknown";
18
- }
19
- }
20
- function evidenceIdentity(path) {
21
- const contents = readFileSync(path);
22
- return {
23
- sha256: createHash("sha256").update(contents).digest("hex"),
24
- bytes: contents.byteLength,
25
- };
26
- }
27
- function analysisIdentity(options) {
28
- return createHash("sha256")
29
- .update(JSON.stringify(options))
30
- .digest("hex");
31
- }
32
- export function coverageQueryIndexPath(evidencePath) {
33
- return resolve(dirname(evidencePath), QUERY_INDEX_FILE);
34
- }
35
- function validIndex(value, identity, analysisSha256) {
36
- if (!value || typeof value !== "object")
37
- return false;
38
- const index = value;
39
- return (index.format === "supercov-query-index" &&
40
- index.schemaVersion === QUERY_INDEX_SCHEMA_VERSION &&
41
- index.producerVersion === packageVersion() &&
42
- index.evidence?.archiveSchemaVersion === EVIDENCE_ARCHIVE_SCHEMA_VERSION &&
43
- index.evidence.sha256 === identity.sha256 &&
44
- index.evidence.bytes === identity.bytes &&
45
- index.analysisSha256 === analysisSha256 &&
46
- Boolean(index.report));
47
- }
48
- function readIndex(path, identity, analysisSha256) {
49
- try {
50
- const parsed = JSON.parse(gunzipSync(readFileSync(path)).toString("utf8"));
51
- return validIndex(parsed, identity, analysisSha256)
52
- ? parsed.report
53
- : undefined;
54
- }
55
- catch {
56
- return undefined;
57
- }
58
- }
59
- /** Read an already-materialized index without analyzing or writing anything. */
60
- export function readCoverageQueryIndex(evidencePath, options) {
61
- const indexPath = coverageQueryIndexPath(evidencePath);
62
- if (!existsSync(indexPath))
63
- return undefined;
64
- const identity = evidenceIdentity(evidencePath);
65
- return readIndex(indexPath, identity, analysisIdentity(options));
66
- }
67
- /**
68
- * Materialize a disposable query index on first use. Raw evidence remains the
69
- * sole source of truth: a changed archive, tool version, schema, or corrupt
70
- * cache always causes reconstruction. Concurrent writers are harmless because
71
- * they derive identical content and publish through unique atomic temp files.
72
- */
73
- export function analyzeCoverageArchiveCached(evidencePath, options) {
74
- const identity = evidenceIdentity(evidencePath);
75
- const analysisSha256 = analysisIdentity(options);
76
- const indexPath = coverageQueryIndexPath(evidencePath);
77
- const cached = readIndex(indexPath, identity, analysisSha256);
78
- if (cached)
79
- return cached;
80
- const report = analyzeCoverageArchive(evidencePath, options);
81
- const index = {
82
- format: "supercov-query-index",
83
- schemaVersion: QUERY_INDEX_SCHEMA_VERSION,
84
- producerVersion: packageVersion(),
85
- evidence: {
86
- archiveSchemaVersion: EVIDENCE_ARCHIVE_SCHEMA_VERSION,
87
- ...identity,
88
- },
89
- analysisSha256,
90
- report,
91
- };
92
- atomicWriteFileSync(indexPath, gzipSync(Buffer.from(JSON.stringify(index)), { level: 9 }));
93
- return report;
94
- }
95
- //# sourceMappingURL=queryCache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"queryCache.js","sourceRoot":"","sources":["../src/queryCache.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import type { CoverageCarrier } from "./types.ts";
2
- export declare const COVERAGE_JOB_FIELD = "__supercov";
3
- export declare function injectCoverageCarrier<T>(payload: T, carrier?: CoverageCarrier): T;
4
- export declare function extractCoverageCarrier(payload: unknown): CoverageCarrier | undefined;
5
- export declare function wrapQueuePublisher<T extends (...args: never[]) => unknown>(publisher: T, payloadIndex?: number): T;
6
- export declare function wrapQueueProcessor<T extends (...args: never[]) => unknown>(processor: T, payload: (args: Parameters<T>) => unknown): T;
7
- /** BullMQ and Bee-Queue jobs expose user data through `job.data`. */
8
- export declare function wrapBullProcessor<T extends (...args: never[]) => unknown>(processor: T): T;
9
- /** pg-boss handlers receive either one job or a batch whose jobs have `data`. */
10
- export declare function wrapPgBossProcessor<T extends (...args: never[]) => unknown>(processor: T): T;
11
- /** Agenda stores user data in `job.attrs.data`. */
12
- export declare function wrapAgendaProcessor<T extends (...args: never[]) => unknown>(processor: T): T;
13
- /** Capture context for in-process scheduler callbacks without changing payloads. */
14
- export declare function wrapScheduledCallback<T extends (...args: never[]) => unknown>(callback: T): T;
15
- //# sourceMappingURL=queueAdapters.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"queueAdapters.d.ts","sourceRoot":"","sources":["../src/queueAdapters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAWlD,eAAO,MAAM,kBAAkB,eAAe,CAAC;AAU/C,wBAAgB,qBAAqB,CAAC,CAAC,EACrC,OAAO,EAAE,CAAC,EACV,OAAO,kBAAoB,GAC1B,CAAC,CAOH;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,OAAO,GACf,eAAe,GAAG,SAAS,CAK7B;AAED,wBAAgB,kBAAkB,CAChC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,EACvC,SAAS,EAAE,CAAC,EAAE,YAAY,SAAI,GAAG,CAAC,CASnC;AAED,wBAAgB,kBAAkB,CAChC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,EACvC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,CAAC,CAU5D;AAED,qEAAqE;AACrE,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,EACvE,SAAS,EAAE,CAAC,GACX,CAAC,CAIH;AAED,iFAAiF;AACjF,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,EACzE,SAAS,EAAE,CAAC,GACX,CAAC,CAMH;AAED,mDAAmD;AACnD,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,EACzE,SAAS,EAAE,CAAC,GACX,CAAC,CAIH;AAED,oFAAoF;AACpF,wBAAgB,qBAAqB,CACnC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,EACvC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAEhB"}
@@ -1,55 +0,0 @@
1
- import { bindCoverageContext, coverageCarrier, withCoverageCarrier, } from "./runtime.js";
2
- import { decodeCoverageCarrier, encodeCoverageCarrier, } from "./transport.js";
3
- export const COVERAGE_JOB_FIELD = "__supercov";
4
- function record(value) {
5
- return value && typeof value === "object" && !Array.isArray(value)
6
- ? value
7
- : undefined;
8
- }
9
- export function injectCoverageCarrier(payload, carrier = coverageCarrier()) {
10
- const object = record(payload);
11
- if (!object)
12
- return payload;
13
- return {
14
- ...object,
15
- [COVERAGE_JOB_FIELD]: encodeCoverageCarrier(carrier),
16
- };
17
- }
18
- export function extractCoverageCarrier(payload) {
19
- const encoded = record(payload)?.[COVERAGE_JOB_FIELD];
20
- return decodeCoverageCarrier(typeof encoded === "string" ? encoded : undefined);
21
- }
22
- export function wrapQueuePublisher(publisher, payloadIndex = 0) {
23
- return function coverageQueuePublisher(...args) {
24
- const scoped = [...args];
25
- scoped[payloadIndex] = injectCoverageCarrier(scoped[payloadIndex]);
26
- return Reflect.apply(publisher, this, scoped);
27
- };
28
- }
29
- export function wrapQueueProcessor(processor, payload) {
30
- return function coverageQueueProcessor(...args) {
31
- const carrier = extractCoverageCarrier(payload(args));
32
- return withCoverageCarrier(carrier, () => Reflect.apply(processor, this, args));
33
- };
34
- }
35
- /** BullMQ and Bee-Queue jobs expose user data through `job.data`. */
36
- export function wrapBullProcessor(processor) {
37
- return wrapQueueProcessor(processor, (args) => record(args[0])?.["data"]);
38
- }
39
- /** pg-boss handlers receive either one job or a batch whose jobs have `data`. */
40
- export function wrapPgBossProcessor(processor) {
41
- return wrapQueueProcessor(processor, (args) => {
42
- const first = args[0];
43
- const job = Array.isArray(first) ? first[0] : first;
44
- return record(job)?.["data"];
45
- });
46
- }
47
- /** Agenda stores user data in `job.attrs.data`. */
48
- export function wrapAgendaProcessor(processor) {
49
- return wrapQueueProcessor(processor, (args) => record(record(args[0])?.["attrs"])?.["data"]);
50
- }
51
- /** Capture context for in-process scheduler callbacks without changing payloads. */
52
- export function wrapScheduledCallback(callback) {
53
- return bindCoverageContext(callback);
54
- }
55
- //# sourceMappingURL=queueAdapters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"queueAdapters.js","sourceRoot":"","sources":["../src/queueAdapters.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=register.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"register.d.mts","sourceRoot":"","sources":["../src/register.mjs"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"register.mjs","sourceRoot":"","sources":["../src/register.mjs"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import type { FullConfig, Reporter } from "@playwright/test/reporter";
2
- export { failedCoverageResults, passingCoverageResults, } from "./runAnalysis.ts";
3
- import type { McdcCoverageView, McdcReport, CoverageRunIntegrity } from "./types.ts";
4
- /** Derived presentation primitive reserved for a future explicit preview command. */
5
- export declare function renderHtml(report: McdcCoverageView, filter: "all" | "passed" | "failed", runValid?: boolean): string;
6
- export declare function analyzeMcdcEvidence(outputDir: string, runId: string, minimumArtifactMtimeMs?: number, configuredManifestPath?: string, testExitCode?: number | null, integrity?: CoverageRunIntegrity, serverEvidenceRoot?: string): McdcReport;
7
- export declare function printCoverageSummary(report: McdcReport): void;
8
- export default class McdcReporter implements Reporter {
9
- private outputDir;
10
- onBegin(config: FullConfig): void;
11
- onEnd(): void;
12
- }
13
- //# sourceMappingURL=reporter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../src/reporter.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAEtE,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,KAAK,EAEV,gBAAgB,EAEhB,UAAU,EAGV,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAiEpB,qFAAqF;AACrF,wBAAgB,UAAU,CACxB,MAAM,EAAE,gBAAgB,EACxB,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,EACnC,QAAQ,CAAC,EAAE,OAAO,GACjB,MAAM,CAsLR;AAED,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,sBAAsB,SAAI,EAC1B,sBAAsB,CAAC,EAAE,MAAM,EAC/B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,EAC5B,SAAS,CAAC,EAAE,oBAAoB,EAChC,kBAAkB,CAAC,EAAE,MAAM,GAC1B,UAAU,CA6BZ;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAc7D;AAED,MAAM,CAAC,OAAO,OAAO,YAAa,YAAW,QAAQ;IACnD,OAAO,CAAC,SAAS,CAAM;IAEvB,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAEhC;IAED,KAAK,IAAI,IAAI,CAIZ;CACF"}