autotel-pact 23.0.1 → 24.0.0
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/dist/{attrs-DkYI6Fhz.cjs → attrs-ICGCV8_M.cjs} +0 -1
- package/dist/audit.cjs +15 -14
- package/dist/audit.js +13 -12
- package/dist/auto-wrap.cjs +5 -4
- package/dist/auto-wrap.js +3 -2
- package/dist/broker.cjs +0 -1
- package/dist/cli.cjs +1 -1
- package/dist/index.cjs +10 -8
- package/dist/index.js +6 -4
- package/dist/{labels-0Cwk5E-8.cjs → labels-BCLYpzUR.cjs} +0 -1
- package/dist/{ledger-BayQwemz.cjs → ledger-NV1Sh3ov.cjs} +1 -1
- package/dist/{pact-file-B8QjVrC7.cjs → pact-file-DA7R8A_b.cjs} +1 -1
- package/dist/processor.cjs +2 -2
- package/dist/provider.cjs +18 -15
- package/dist/provider.js +15 -12
- package/dist/tag.cjs +1 -1
- package/package.json +3 -3
package/dist/audit.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_ledger = require('./ledger-
|
|
3
|
-
const require_pact_file = require('./pact-file-
|
|
2
|
+
const require_ledger = require('./ledger-NV1Sh3ov.cjs');
|
|
3
|
+
const require_pact_file = require('./pact-file-DA7R8A_b.cjs');
|
|
4
4
|
const require_broker = require('./broker.cjs');
|
|
5
5
|
let node_path = require("node:path");
|
|
6
6
|
node_path = require_ledger.__toESM(node_path, 1);
|
|
@@ -100,21 +100,22 @@ function computeAuditMatrix(input) {
|
|
|
100
100
|
}, k, false);
|
|
101
101
|
}
|
|
102
102
|
rows.sort((a, b) => a.consumer.localeCompare(b.consumer) || a.provider.localeCompare(b.provider) || a.interaction.localeCompare(b.interaction));
|
|
103
|
+
const counts = {
|
|
104
|
+
total: rows.length,
|
|
105
|
+
contracted: rows.filter((r) => r.contracted).length,
|
|
106
|
+
observed: rows.filter((r) => r.observed).length,
|
|
107
|
+
contracted_and_test_seen: rows.filter((r) => r.contracted && r.test_seen).length,
|
|
108
|
+
contracted_not_test_seen: rows.filter((r) => r.contracted && !r.test_seen).length,
|
|
109
|
+
test_or_prod_seen_not_contracted: rows.filter((r) => !r.contracted && (r.test_seen || r.prod_seen)).length,
|
|
110
|
+
test_seen: rows.filter((r) => r.test_seen).length,
|
|
111
|
+
prod_seen: rows.filter((r) => r.prod_seen).length,
|
|
112
|
+
provider_verified: rows.filter((r) => r.provider_verified).length,
|
|
113
|
+
broker_verified: rows.filter((r) => r.broker_verified).length
|
|
114
|
+
};
|
|
103
115
|
const matrix = {
|
|
104
116
|
spec: require_ledger.AUDIT_MATRIX_SPEC,
|
|
105
117
|
rows,
|
|
106
|
-
counts
|
|
107
|
-
total: rows.length,
|
|
108
|
-
contracted: rows.filter((r) => r.contracted).length,
|
|
109
|
-
observed: rows.filter((r) => r.observed).length,
|
|
110
|
-
contracted_and_test_seen: rows.filter((r) => r.contracted && r.test_seen).length,
|
|
111
|
-
contracted_not_test_seen: rows.filter((r) => r.contracted && !r.test_seen).length,
|
|
112
|
-
test_or_prod_seen_not_contracted: rows.filter((r) => !r.contracted && (r.test_seen || r.prod_seen)).length,
|
|
113
|
-
test_seen: rows.filter((r) => r.test_seen).length,
|
|
114
|
-
prod_seen: rows.filter((r) => r.prod_seen).length,
|
|
115
|
-
provider_verified: rows.filter((r) => r.provider_verified).length,
|
|
116
|
-
broker_verified: rows.filter((r) => r.broker_verified).length
|
|
117
|
-
},
|
|
118
|
+
counts,
|
|
118
119
|
window_days: windowDays,
|
|
119
120
|
generated_at: now.toISOString()
|
|
120
121
|
};
|
package/dist/audit.js
CHANGED
|
@@ -98,21 +98,22 @@ function computeAuditMatrix(input) {
|
|
|
98
98
|
}, k, false);
|
|
99
99
|
}
|
|
100
100
|
rows.sort((a, b) => a.consumer.localeCompare(b.consumer) || a.provider.localeCompare(b.provider) || a.interaction.localeCompare(b.interaction));
|
|
101
|
+
const counts = {
|
|
102
|
+
total: rows.length,
|
|
103
|
+
contracted: rows.filter((r) => r.contracted).length,
|
|
104
|
+
observed: rows.filter((r) => r.observed).length,
|
|
105
|
+
contracted_and_test_seen: rows.filter((r) => r.contracted && r.test_seen).length,
|
|
106
|
+
contracted_not_test_seen: rows.filter((r) => r.contracted && !r.test_seen).length,
|
|
107
|
+
test_or_prod_seen_not_contracted: rows.filter((r) => !r.contracted && (r.test_seen || r.prod_seen)).length,
|
|
108
|
+
test_seen: rows.filter((r) => r.test_seen).length,
|
|
109
|
+
prod_seen: rows.filter((r) => r.prod_seen).length,
|
|
110
|
+
provider_verified: rows.filter((r) => r.provider_verified).length,
|
|
111
|
+
broker_verified: rows.filter((r) => r.broker_verified).length
|
|
112
|
+
};
|
|
101
113
|
const matrix = {
|
|
102
114
|
spec: AUDIT_MATRIX_SPEC,
|
|
103
115
|
rows,
|
|
104
|
-
counts
|
|
105
|
-
total: rows.length,
|
|
106
|
-
contracted: rows.filter((r) => r.contracted).length,
|
|
107
|
-
observed: rows.filter((r) => r.observed).length,
|
|
108
|
-
contracted_and_test_seen: rows.filter((r) => r.contracted && r.test_seen).length,
|
|
109
|
-
contracted_not_test_seen: rows.filter((r) => r.contracted && !r.test_seen).length,
|
|
110
|
-
test_or_prod_seen_not_contracted: rows.filter((r) => !r.contracted && (r.test_seen || r.prod_seen)).length,
|
|
111
|
-
test_seen: rows.filter((r) => r.test_seen).length,
|
|
112
|
-
prod_seen: rows.filter((r) => r.prod_seen).length,
|
|
113
|
-
provider_verified: rows.filter((r) => r.provider_verified).length,
|
|
114
|
-
broker_verified: rows.filter((r) => r.broker_verified).length
|
|
115
|
-
},
|
|
116
|
+
counts,
|
|
116
117
|
window_days: windowDays,
|
|
117
118
|
generated_at: now.toISOString()
|
|
118
119
|
};
|
package/dist/auto-wrap.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_ledger = require('./ledger-
|
|
3
|
-
const require_attrs = require('./attrs-
|
|
2
|
+
const require_ledger = require('./ledger-NV1Sh3ov.cjs');
|
|
3
|
+
const require_attrs = require('./attrs-ICGCV8_M.cjs');
|
|
4
4
|
let autotel = require("autotel");
|
|
5
5
|
let node_module = require("node:module");
|
|
6
6
|
|
|
@@ -194,7 +194,7 @@ function patchHttpPact(mod) {
|
|
|
194
194
|
}
|
|
195
195
|
function writeAutoLedgerEntry(args) {
|
|
196
196
|
const ctx = (0, autotel.getActiveSpan)()?.spanContext();
|
|
197
|
-
|
|
197
|
+
const entry = {
|
|
198
198
|
type: "interaction",
|
|
199
199
|
spec: require_ledger.LEDGER_ENTRY_SPEC,
|
|
200
200
|
consumer: args.consumer,
|
|
@@ -212,7 +212,8 @@ function writeAutoLedgerEntry(args) {
|
|
|
212
212
|
run_id: process.env.AUTOTEL_PACT_RUN_ID,
|
|
213
213
|
git_sha: process.env.GIT_SHA ?? process.env.GITHUB_SHA,
|
|
214
214
|
error: args.error
|
|
215
|
-
}
|
|
215
|
+
};
|
|
216
|
+
require_ledger.appendLedgerEntry(entry);
|
|
216
217
|
}
|
|
217
218
|
installAutoWrap();
|
|
218
219
|
|
package/dist/auto-wrap.js
CHANGED
|
@@ -193,7 +193,7 @@ function patchHttpPact(mod) {
|
|
|
193
193
|
}
|
|
194
194
|
function writeAutoLedgerEntry(args) {
|
|
195
195
|
const ctx = getActiveSpan()?.spanContext();
|
|
196
|
-
|
|
196
|
+
const entry = {
|
|
197
197
|
type: "interaction",
|
|
198
198
|
spec: LEDGER_ENTRY_SPEC,
|
|
199
199
|
consumer: args.consumer,
|
|
@@ -211,7 +211,8 @@ function writeAutoLedgerEntry(args) {
|
|
|
211
211
|
run_id: process.env.AUTOTEL_PACT_RUN_ID,
|
|
212
212
|
git_sha: process.env.GIT_SHA ?? process.env.GITHUB_SHA,
|
|
213
213
|
error: args.error
|
|
214
|
-
}
|
|
214
|
+
};
|
|
215
|
+
appendLedgerEntry(entry);
|
|
215
216
|
}
|
|
216
217
|
installAutoWrap();
|
|
217
218
|
|
package/dist/broker.cjs
CHANGED
package/dist/cli.cjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
3
3
|
const require_broker = require('./broker.cjs');
|
|
4
4
|
const require_audit = require('./audit.cjs');
|
|
5
|
-
const require_labels = require('./labels-
|
|
5
|
+
const require_labels = require('./labels-BCLYpzUR.cjs');
|
|
6
6
|
|
|
7
7
|
//#region src/cli.ts
|
|
8
8
|
const HELP_TEXT = `autotel-pact audit — runtime evidence for Pact contracts
|
package/dist/index.cjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_ledger = require('./ledger-
|
|
3
|
-
const require_attrs = require('./attrs-
|
|
4
|
-
const require_pact_file = require('./pact-file-
|
|
2
|
+
const require_ledger = require('./ledger-NV1Sh3ov.cjs');
|
|
3
|
+
const require_attrs = require('./attrs-ICGCV8_M.cjs');
|
|
4
|
+
const require_pact_file = require('./pact-file-DA7R8A_b.cjs');
|
|
5
5
|
const require_provider = require('./provider.cjs');
|
|
6
6
|
const require_tag = require('./tag.cjs');
|
|
7
7
|
const require_processor = require('./processor.cjs');
|
|
8
8
|
const require_broker = require('./broker.cjs');
|
|
9
9
|
const require_audit = require('./audit.cjs');
|
|
10
|
-
const require_labels = require('./labels-
|
|
10
|
+
const require_labels = require('./labels-BCLYpzUR.cjs');
|
|
11
11
|
let autotel = require("autotel");
|
|
12
12
|
|
|
13
13
|
//#region src/wrapper.ts
|
|
@@ -97,7 +97,7 @@ async function withPactInteraction(pact, handler, opts = {}) {
|
|
|
97
97
|
function writeLedgerForOutcome(args) {
|
|
98
98
|
const { consumer, provider, captured, kind, outcome, start, opts, error } = args;
|
|
99
99
|
const ctx = (0, autotel.getActiveSpan)()?.spanContext();
|
|
100
|
-
|
|
100
|
+
const entry = {
|
|
101
101
|
type: "interaction",
|
|
102
102
|
spec: require_ledger.LEDGER_ENTRY_SPEC,
|
|
103
103
|
consumer,
|
|
@@ -116,7 +116,8 @@ function writeLedgerForOutcome(args) {
|
|
|
116
116
|
run_id: process.env.AUTOTEL_PACT_RUN_ID,
|
|
117
117
|
git_sha: process.env.GIT_SHA ?? process.env.GITHUB_SHA,
|
|
118
118
|
error
|
|
119
|
-
}
|
|
119
|
+
};
|
|
120
|
+
require_ledger.appendLedgerEntry(entry, opts);
|
|
120
121
|
}
|
|
121
122
|
|
|
122
123
|
//#endregion
|
|
@@ -204,7 +205,7 @@ async function withHttpPactInteraction(pact, interaction, testFn, opts = {}) {
|
|
|
204
205
|
function writeHttpLedgerEntry(args) {
|
|
205
206
|
const { meta, outcome, start, opts, error } = args;
|
|
206
207
|
const ctx = (0, autotel.getActiveSpan)()?.spanContext();
|
|
207
|
-
|
|
208
|
+
const entry = {
|
|
208
209
|
type: "interaction",
|
|
209
210
|
spec: require_ledger.LEDGER_ENTRY_SPEC,
|
|
210
211
|
consumer: meta.consumer,
|
|
@@ -223,7 +224,8 @@ function writeHttpLedgerEntry(args) {
|
|
|
223
224
|
run_id: process.env.AUTOTEL_PACT_RUN_ID,
|
|
224
225
|
git_sha: process.env.GIT_SHA ?? process.env.GITHUB_SHA,
|
|
225
226
|
error
|
|
226
|
-
}
|
|
227
|
+
};
|
|
228
|
+
require_ledger.appendLedgerEntry(entry, opts);
|
|
227
229
|
}
|
|
228
230
|
|
|
229
231
|
//#endregion
|
package/dist/index.js
CHANGED
|
@@ -96,7 +96,7 @@ async function withPactInteraction(pact, handler, opts = {}) {
|
|
|
96
96
|
function writeLedgerForOutcome(args) {
|
|
97
97
|
const { consumer, provider, captured, kind, outcome, start, opts, error } = args;
|
|
98
98
|
const ctx = getActiveSpan()?.spanContext();
|
|
99
|
-
|
|
99
|
+
const entry = {
|
|
100
100
|
type: "interaction",
|
|
101
101
|
spec: LEDGER_ENTRY_SPEC,
|
|
102
102
|
consumer,
|
|
@@ -115,7 +115,8 @@ function writeLedgerForOutcome(args) {
|
|
|
115
115
|
run_id: process.env.AUTOTEL_PACT_RUN_ID,
|
|
116
116
|
git_sha: process.env.GIT_SHA ?? process.env.GITHUB_SHA,
|
|
117
117
|
error
|
|
118
|
-
}
|
|
118
|
+
};
|
|
119
|
+
appendLedgerEntry(entry, opts);
|
|
119
120
|
}
|
|
120
121
|
|
|
121
122
|
//#endregion
|
|
@@ -203,7 +204,7 @@ async function withHttpPactInteraction(pact, interaction, testFn, opts = {}) {
|
|
|
203
204
|
function writeHttpLedgerEntry(args) {
|
|
204
205
|
const { meta, outcome, start, opts, error } = args;
|
|
205
206
|
const ctx = getActiveSpan()?.spanContext();
|
|
206
|
-
|
|
207
|
+
const entry = {
|
|
207
208
|
type: "interaction",
|
|
208
209
|
spec: LEDGER_ENTRY_SPEC,
|
|
209
210
|
consumer: meta.consumer,
|
|
@@ -222,7 +223,8 @@ function writeHttpLedgerEntry(args) {
|
|
|
222
223
|
run_id: process.env.AUTOTEL_PACT_RUN_ID,
|
|
223
224
|
git_sha: process.env.GIT_SHA ?? process.env.GITHUB_SHA,
|
|
224
225
|
error
|
|
225
|
-
}
|
|
226
|
+
};
|
|
227
|
+
appendLedgerEntry(entry, opts);
|
|
226
228
|
}
|
|
227
229
|
|
|
228
230
|
//#endregion
|
|
@@ -19,7 +19,7 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
19
19
|
}
|
|
20
20
|
return to;
|
|
21
21
|
};
|
|
22
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
22
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule || !__hasOwnProp.call(mod, "default") ? __defProp(target, "default", {
|
|
23
23
|
value: mod,
|
|
24
24
|
enumerable: true
|
|
25
25
|
}) : target, mod));
|
package/dist/processor.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_ledger = require('./ledger-
|
|
3
|
-
const require_attrs = require('./attrs-
|
|
2
|
+
const require_ledger = require('./ledger-NV1Sh3ov.cjs');
|
|
3
|
+
const require_attrs = require('./attrs-ICGCV8_M.cjs');
|
|
4
4
|
|
|
5
5
|
//#region src/processor.ts
|
|
6
6
|
const DEFAULT_MAX_QUEUE = 1024;
|
package/dist/provider.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
-
const require_ledger = require('./ledger-
|
|
3
|
-
const require_attrs = require('./attrs-
|
|
4
|
-
const require_pact_file = require('./pact-file-
|
|
2
|
+
const require_ledger = require('./ledger-NV1Sh3ov.cjs');
|
|
3
|
+
const require_attrs = require('./attrs-ICGCV8_M.cjs');
|
|
4
|
+
const require_pact_file = require('./pact-file-DA7R8A_b.cjs');
|
|
5
5
|
let autotel = require("autotel");
|
|
6
6
|
let node_path = require("node:path");
|
|
7
7
|
node_path = require_ledger.__toESM(node_path, 1);
|
|
@@ -66,18 +66,21 @@ async function withProviderVerification(verifierOpts, wrapOpts = {}) {
|
|
|
66
66
|
const pact = require_pact_file.parsePactFile(filePath);
|
|
67
67
|
if (!pact) continue;
|
|
68
68
|
const interactions = require_pact_file.interactionsFromPactFile(pact);
|
|
69
|
-
for (const i of interactions)
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
69
|
+
for (const i of interactions) {
|
|
70
|
+
const entry = {
|
|
71
|
+
type: "interaction",
|
|
72
|
+
spec: require_ledger.LEDGER_ENTRY_SPEC,
|
|
73
|
+
consumer: i.consumer,
|
|
74
|
+
provider: i.provider,
|
|
75
|
+
interaction: i.interaction,
|
|
76
|
+
interaction_id: i.interactionId,
|
|
77
|
+
states: [],
|
|
78
|
+
kind: i.kind,
|
|
79
|
+
duration_ms: Number(process.hrtime.bigint() - start) / 1e6,
|
|
80
|
+
...base
|
|
81
|
+
};
|
|
82
|
+
require_ledger.appendLedgerEntry(entry, wrapOpts);
|
|
83
|
+
}
|
|
81
84
|
}
|
|
82
85
|
} catch (error) {
|
|
83
86
|
span?.setAttributes({ [require_attrs.PACT_ATTRS.OUTCOME]: "failed" });
|
package/dist/provider.js
CHANGED
|
@@ -64,18 +64,21 @@ async function withProviderVerification(verifierOpts, wrapOpts = {}) {
|
|
|
64
64
|
const pact = parsePactFile(filePath);
|
|
65
65
|
if (!pact) continue;
|
|
66
66
|
const interactions = interactionsFromPactFile(pact);
|
|
67
|
-
for (const i of interactions)
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
67
|
+
for (const i of interactions) {
|
|
68
|
+
const entry = {
|
|
69
|
+
type: "interaction",
|
|
70
|
+
spec: LEDGER_ENTRY_SPEC,
|
|
71
|
+
consumer: i.consumer,
|
|
72
|
+
provider: i.provider,
|
|
73
|
+
interaction: i.interaction,
|
|
74
|
+
interaction_id: i.interactionId,
|
|
75
|
+
states: [],
|
|
76
|
+
kind: i.kind,
|
|
77
|
+
duration_ms: Number(process.hrtime.bigint() - start) / 1e6,
|
|
78
|
+
...base
|
|
79
|
+
};
|
|
80
|
+
appendLedgerEntry(entry, wrapOpts);
|
|
81
|
+
}
|
|
79
82
|
}
|
|
80
83
|
} catch (error) {
|
|
81
84
|
span?.setAttributes({ [PACT_ATTRS.OUTCOME]: "failed" });
|
package/dist/tag.cjs
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "autotel-pact",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "24.0.0",
|
|
4
4
|
"description": "Runtime evidence for Pact contracts — autotel bridge that records which contract interactions were actually exercised, and audits 'contracted but never observed'.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
"license": "Apache-2.0",
|
|
72
72
|
"peerDependencies": {
|
|
73
73
|
"@pact-foundation/pact": ">=17",
|
|
74
|
-
"autotel": "7.
|
|
74
|
+
"autotel": "7.8.0"
|
|
75
75
|
},
|
|
76
76
|
"peerDependenciesMeta": {
|
|
77
77
|
"@pact-foundation/pact": {
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
"devDependencies": {
|
|
82
82
|
"@pact-foundation/pact": "^17.0.1",
|
|
83
83
|
"@types/node": "^26.1.2",
|
|
84
|
-
"autotel": "7.
|
|
84
|
+
"autotel": "7.8.0",
|
|
85
85
|
"rimraf": "^6.1.3",
|
|
86
86
|
"tsdown": "^0.22.14",
|
|
87
87
|
"typescript": "^6.0.3",
|