@whooshbang/contracts 3.2.0 → 4.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/CHANGELOG.md +10 -0
- package/contract-manifest.json +32 -32
- package/dist/generated/artifact-index.d.ts +33 -33
- package/dist/generated/artifact-index.js +32 -32
- package/dist/generated/interaction-v1.d.ts +1 -1
- package/dist/generated/machine-v1.d.ts +1 -1
- package/dist/generated/validators-standalone.d.ts +377 -378
- package/dist/generated/validators-standalone.js +5070 -4019
- package/dist/generated/validators-standalone.js.map +1 -1
- package/dist/generated/whooshbang-v1.d.ts +47 -18
- package/fixtures/core-v1/fixture-index.json +1 -1
- package/fixtures/core-v1/scenarios/api-credential-invalid-indistinguishable.json +1 -1
- package/fixtures/core-v1/scenarios/api-credential-one-time-reveal.json +1 -1
- package/fixtures/core-v1/scenarios/api-credential-revocation-replay.json +1 -1
- package/fixtures/core-v1/scenarios/api-credential-rotation-overlap.json +1 -1
- package/fixtures/core-v1/scenarios/cancellation-too-late.json +1 -1
- package/fixtures/core-v1/scenarios/cross-organization-project.json +1 -1
- package/fixtures/core-v1/scenarios/cross-project-resource.json +1 -1
- package/fixtures/core-v1/scenarios/environment-mismatch.json +1 -1
- package/fixtures/core-v1/scenarios/idempotency-conflict.json +1 -1
- package/fixtures/core-v1/scenarios/idempotency-equivalent-replay.json +1 -1
- package/fixtures/core-v1/scenarios/malformed-bearer.json +1 -1
- package/fixtures/core-v1/scenarios/metadata-overrun.json +1 -1
- package/fixtures/core-v1/scenarios/missing-scope.json +1 -1
- package/fixtures/core-v1/scenarios/project-create-equivalent-replay.json +1 -1
- package/fixtures/core-v1/scenarios/project-slug-conflict.json +1 -1
- package/fixtures/core-v1/scenarios/provider-outcome-unknown.json +1 -1
- package/fixtures/core-v1/scenarios/subscription-activation-replay.json +1 -1
- package/fixtures/core-v1/scenarios/subscription-authorization-capability-opacity.json +1 -1
- package/fixtures/core-v1/scenarios/subscription-cross-connection-callback-rejected.json +1 -1
- package/fixtures/core-v1/scenarios/subscription-expired-replay.json +1 -1
- package/fixtures/core-v1/scenarios/subscription-selected-connection-replay.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/ack-conflict.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/ack-cross-machine.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/ack-out-of-order.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/ack-replay.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/ambiguous-free-text.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/callback-token-opacity.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/credential-registration-conflict.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/credential-registration-replay.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/credential-revocation-replay.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/credential-rotation.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/first-credential-activates.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/interaction-duplicate.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/interaction-expired.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/interaction-mismatch.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/interaction-retired.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/interaction-stale.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/machine-admin-denied.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/machine-bound-message-create.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/machine-cancel-denied.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/machine-crash-before-ack.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/machine-notifier-mismatch.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/machine-other-message-read.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/machine-owned-message-read.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/machine-subscriber-mismatch.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/poll-uncommitted-cursor-rejected.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/project-credential-machine-endpoint-denied.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/quarantine-integrity-rejected.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/quarantine-signature-rejected.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/quarantine-valid.json +1 -1
- package/fixtures/interaction-machine-v1/scenarios/revoked-machine-credential.json +1 -1
- package/fixtures/recipient-experience-v1/scenarios/membership-broadcast-snapshot.json +1 -1
- package/fixtures/recipient-experience-v1/scenarios/preferred-binding-resolution.json +1 -1
- package/fixtures/recipient-experience-v1/scenarios/recipient-session-security.json +1 -1
- package/fixtures/recipient-experience-v1/scenarios/subscriber-initial-groups-transaction.json +1 -1
- package/fixtures/recipient-experience-v1/success/project-recipient-experience.json +2 -0
- package/openapi/generated/whooshbang-v1.bundle.json +137 -24
- package/openapi/whooshbang-v1.yaml +32 -3
- package/package.json +1 -1
- package/schemas/core-scenario.schema.json +1 -1
- package/schemas/events/agent-binding-degraded-v1.schema.json +1 -1
- package/schemas/events/interaction-expired-v1.schema.json +1 -1
- package/schemas/events/interaction-received-v1.schema.json +1 -1
- package/schemas/events/message-delivered-v1.schema.json +1 -1
- package/schemas/events/message-expired-v1.schema.json +1 -1
- package/schemas/events/message-failed-v1.schema.json +1 -1
- package/schemas/events/message-provider-accepted-v1.schema.json +1 -1
- package/schemas/events/subscription-activated-v1.schema.json +1 -1
- package/schemas/events/subscription-revoked-v1.schema.json +1 -1
- package/schemas/events/whooshbang-event-v1.schema.json +1 -1
- package/schemas/fixture-index.schema.json +1 -1
- package/schemas/interaction-machine-scenario.schema.json +1 -1
- package/schemas/interaction-v1.schema.json +2 -2
- package/schemas/machine-v1.schema.json +1 -1
- package/schemas/provider-capabilities-v1.schema.json +1 -1
- package/schemas/webhooks/webhook-delivery-case-v1.schema.json +1 -1
- package/schemas/webhooks/webhook-signing-vector-v1.schema.json +1 -1
- package/schemas/whooshbang-v1.schema.json +109 -22
|
@@ -5,115 +5,115 @@
|
|
|
5
5
|
export const contractManifest = {
|
|
6
6
|
schema: "flowxo.contract-manifest.v1",
|
|
7
7
|
artifact: "@whooshbang/contracts",
|
|
8
|
-
version: "
|
|
8
|
+
version: "4.0.0",
|
|
9
9
|
openapi: [
|
|
10
10
|
{
|
|
11
11
|
id: "whooshbang-rest-v1",
|
|
12
|
-
version: "
|
|
12
|
+
version: "4.0.0",
|
|
13
13
|
path: "openapi/whooshbang-v1.yaml",
|
|
14
14
|
},
|
|
15
15
|
],
|
|
16
16
|
schemas: [
|
|
17
17
|
{
|
|
18
18
|
id: "whooshbang-v1",
|
|
19
|
-
version: "
|
|
19
|
+
version: "4.0.0",
|
|
20
20
|
path: "schemas/whooshbang-v1.schema.json",
|
|
21
21
|
},
|
|
22
22
|
{
|
|
23
23
|
id: "interaction-v1",
|
|
24
|
-
version: "
|
|
24
|
+
version: "4.0.0",
|
|
25
25
|
path: "schemas/interaction-v1.schema.json",
|
|
26
26
|
},
|
|
27
27
|
{
|
|
28
28
|
id: "machine-v1",
|
|
29
|
-
version: "
|
|
29
|
+
version: "4.0.0",
|
|
30
30
|
path: "schemas/machine-v1.schema.json",
|
|
31
31
|
},
|
|
32
32
|
{
|
|
33
33
|
id: "provider-capabilities-v1",
|
|
34
|
-
version: "
|
|
34
|
+
version: "4.0.0",
|
|
35
35
|
path: "schemas/provider-capabilities-v1.schema.json",
|
|
36
36
|
},
|
|
37
37
|
{
|
|
38
38
|
id: "whooshbang-event-v1",
|
|
39
|
-
version: "
|
|
39
|
+
version: "4.0.0",
|
|
40
40
|
path: "schemas/events/whooshbang-event-v1.schema.json",
|
|
41
41
|
},
|
|
42
42
|
{
|
|
43
43
|
id: "subscription-activated-event-v1",
|
|
44
|
-
version: "
|
|
44
|
+
version: "4.0.0",
|
|
45
45
|
path: "schemas/events/subscription-activated-v1.schema.json",
|
|
46
46
|
},
|
|
47
47
|
{
|
|
48
48
|
id: "subscription-revoked-event-v1",
|
|
49
|
-
version: "
|
|
49
|
+
version: "4.0.0",
|
|
50
50
|
path: "schemas/events/subscription-revoked-v1.schema.json",
|
|
51
51
|
},
|
|
52
52
|
{
|
|
53
53
|
id: "message-provider-accepted-event-v1",
|
|
54
|
-
version: "
|
|
54
|
+
version: "4.0.0",
|
|
55
55
|
path: "schemas/events/message-provider-accepted-v1.schema.json",
|
|
56
56
|
},
|
|
57
57
|
{
|
|
58
58
|
id: "message-delivered-event-v1",
|
|
59
|
-
version: "
|
|
59
|
+
version: "4.0.0",
|
|
60
60
|
path: "schemas/events/message-delivered-v1.schema.json",
|
|
61
61
|
},
|
|
62
62
|
{
|
|
63
63
|
id: "message-failed-event-v1",
|
|
64
|
-
version: "
|
|
64
|
+
version: "4.0.0",
|
|
65
65
|
path: "schemas/events/message-failed-v1.schema.json",
|
|
66
66
|
},
|
|
67
67
|
{
|
|
68
68
|
id: "message-expired-event-v1",
|
|
69
|
-
version: "
|
|
69
|
+
version: "4.0.0",
|
|
70
70
|
path: "schemas/events/message-expired-v1.schema.json",
|
|
71
71
|
},
|
|
72
72
|
{
|
|
73
73
|
id: "interaction-received-event-v1",
|
|
74
|
-
version: "
|
|
74
|
+
version: "4.0.0",
|
|
75
75
|
path: "schemas/events/interaction-received-v1.schema.json",
|
|
76
76
|
},
|
|
77
77
|
{
|
|
78
78
|
id: "interaction-expired-event-v1",
|
|
79
|
-
version: "
|
|
79
|
+
version: "4.0.0",
|
|
80
80
|
path: "schemas/events/interaction-expired-v1.schema.json",
|
|
81
81
|
},
|
|
82
82
|
{
|
|
83
83
|
id: "agent-binding-degraded-event-v1",
|
|
84
|
-
version: "
|
|
84
|
+
version: "4.0.0",
|
|
85
85
|
path: "schemas/events/agent-binding-degraded-v1.schema.json",
|
|
86
86
|
},
|
|
87
87
|
{
|
|
88
88
|
id: "webhook-signing-vector-v1",
|
|
89
|
-
version: "
|
|
89
|
+
version: "4.0.0",
|
|
90
90
|
path: "schemas/webhooks/webhook-signing-vector-v1.schema.json",
|
|
91
91
|
},
|
|
92
92
|
{
|
|
93
93
|
id: "webhook-delivery-case-v1",
|
|
94
|
-
version: "
|
|
94
|
+
version: "4.0.0",
|
|
95
95
|
path: "schemas/webhooks/webhook-delivery-case-v1.schema.json",
|
|
96
96
|
},
|
|
97
97
|
{
|
|
98
98
|
id: "interaction-machine-scenario",
|
|
99
|
-
version: "
|
|
99
|
+
version: "4.0.0",
|
|
100
100
|
path: "schemas/interaction-machine-scenario.schema.json",
|
|
101
101
|
},
|
|
102
102
|
{
|
|
103
103
|
id: "core-contract-scenario",
|
|
104
|
-
version: "
|
|
104
|
+
version: "4.0.0",
|
|
105
105
|
path: "schemas/core-scenario.schema.json",
|
|
106
106
|
},
|
|
107
107
|
{
|
|
108
108
|
id: "core-fixture-index",
|
|
109
|
-
version: "
|
|
109
|
+
version: "4.0.0",
|
|
110
110
|
path: "schemas/fixture-index.schema.json",
|
|
111
111
|
},
|
|
112
112
|
],
|
|
113
113
|
fixture_sets: [
|
|
114
114
|
{
|
|
115
115
|
id: "core-api-bodies",
|
|
116
|
-
version: "
|
|
116
|
+
version: "4.0.0",
|
|
117
117
|
schema: "schemas/whooshbang-v1.schema.json",
|
|
118
118
|
fixtures: [
|
|
119
119
|
"fixtures/core-v1/requests/create-project.json",
|
|
@@ -308,7 +308,7 @@ export const contractManifest = {
|
|
|
308
308
|
},
|
|
309
309
|
{
|
|
310
310
|
id: "core-semantic-scenarios",
|
|
311
|
-
version: "
|
|
311
|
+
version: "4.0.0",
|
|
312
312
|
schema: "schemas/core-scenario.schema.json",
|
|
313
313
|
fixtures: [
|
|
314
314
|
"fixtures/core-v1/scenarios/project-create-equivalent-replay.json",
|
|
@@ -340,7 +340,7 @@ export const contractManifest = {
|
|
|
340
340
|
},
|
|
341
341
|
{
|
|
342
342
|
id: "interaction-message-api-bodies",
|
|
343
|
-
version: "
|
|
343
|
+
version: "4.0.0",
|
|
344
344
|
schema: "schemas/whooshbang-v1.schema.json",
|
|
345
345
|
fixtures: [
|
|
346
346
|
"fixtures/interaction-machine-v1/requests/create-message-confirm.json",
|
|
@@ -352,7 +352,7 @@ export const contractManifest = {
|
|
|
352
352
|
},
|
|
353
353
|
{
|
|
354
354
|
id: "interaction-contract-bodies",
|
|
355
|
-
version: "
|
|
355
|
+
version: "4.0.0",
|
|
356
356
|
schema: "schemas/interaction-v1.schema.json",
|
|
357
357
|
fixtures: [
|
|
358
358
|
"fixtures/interaction-machine-v1/success/interaction-open.json",
|
|
@@ -369,7 +369,7 @@ export const contractManifest = {
|
|
|
369
369
|
},
|
|
370
370
|
{
|
|
371
371
|
id: "machine-api-bodies",
|
|
372
|
-
version: "
|
|
372
|
+
version: "4.0.0",
|
|
373
373
|
schema: "schemas/machine-v1.schema.json",
|
|
374
374
|
fixtures: [
|
|
375
375
|
"fixtures/interaction-machine-v1/requests/create-machine-client.json",
|
|
@@ -390,13 +390,13 @@ export const contractManifest = {
|
|
|
390
390
|
},
|
|
391
391
|
{
|
|
392
392
|
id: "provider-capability-bodies",
|
|
393
|
-
version: "
|
|
393
|
+
version: "4.0.0",
|
|
394
394
|
schema: "schemas/provider-capabilities-v1.schema.json",
|
|
395
395
|
fixtures: ["fixtures/interaction-machine-v1/capabilities/telegram.json"],
|
|
396
396
|
},
|
|
397
397
|
{
|
|
398
398
|
id: "interaction-machine-semantic-scenarios",
|
|
399
|
-
version: "
|
|
399
|
+
version: "4.0.0",
|
|
400
400
|
schema: "schemas/interaction-machine-scenario.schema.json",
|
|
401
401
|
fixtures: [
|
|
402
402
|
"fixtures/interaction-machine-v1/scenarios/interaction-duplicate.json",
|
|
@@ -433,7 +433,7 @@ export const contractManifest = {
|
|
|
433
433
|
},
|
|
434
434
|
{
|
|
435
435
|
id: "customer-event-bodies",
|
|
436
|
-
version: "
|
|
436
|
+
version: "4.0.0",
|
|
437
437
|
schema: "schemas/events/whooshbang-event-v1.schema.json",
|
|
438
438
|
fixtures: [
|
|
439
439
|
"fixtures/whooshbang-events-v1/events/subscription-activated.json",
|
|
@@ -451,19 +451,19 @@ export const contractManifest = {
|
|
|
451
451
|
},
|
|
452
452
|
{
|
|
453
453
|
id: "webhook-signing-vectors",
|
|
454
|
-
version: "
|
|
454
|
+
version: "4.0.0",
|
|
455
455
|
schema: "schemas/webhooks/webhook-signing-vector-v1.schema.json",
|
|
456
456
|
fixtures: ["fixtures/whooshbang-events-v1/signing/vectors.json"],
|
|
457
457
|
},
|
|
458
458
|
{
|
|
459
459
|
id: "webhook-delivery-cases",
|
|
460
|
-
version: "
|
|
460
|
+
version: "4.0.0",
|
|
461
461
|
schema: "schemas/webhooks/webhook-delivery-case-v1.schema.json",
|
|
462
462
|
fixtures: ["fixtures/whooshbang-events-v1/delivery/cases.json"],
|
|
463
463
|
},
|
|
464
464
|
{
|
|
465
465
|
id: "core-fixture-index",
|
|
466
|
-
version: "
|
|
466
|
+
version: "4.0.0",
|
|
467
467
|
schema: "schemas/fixture-index.schema.json",
|
|
468
468
|
fixtures: ["fixtures/core-v1/fixture-index.json"],
|
|
469
469
|
},
|
|
@@ -166,7 +166,7 @@ export interface SafeChannelContext {
|
|
|
166
166
|
/**
|
|
167
167
|
* Which channel the person answered on. An enum rather than a fixed value, so that a second channel adds a member instead of changing the type every generated client holds. The vocabulary grows additively; a consumer that meets a member it does not know should treat the answer as valid and the channel as unfamiliar rather than refusing it.
|
|
168
168
|
*/
|
|
169
|
-
channel: "telegram";
|
|
169
|
+
channel: "telegram" | "email";
|
|
170
170
|
conversation_kind: "private_chat" | "thread" | "group";
|
|
171
171
|
display_name?: string;
|
|
172
172
|
}
|
|
@@ -166,7 +166,7 @@ export interface SafeChannelContext {
|
|
|
166
166
|
/**
|
|
167
167
|
* Which channel the person answered on. An enum rather than a fixed value, so that a second channel adds a member instead of changing the type every generated client holds. The vocabulary grows additively; a consumer that meets a member it does not know should treat the answer as valid and the channel as unfamiliar rather than refusing it.
|
|
168
168
|
*/
|
|
169
|
-
channel: "telegram";
|
|
169
|
+
channel: "telegram" | "email";
|
|
170
170
|
conversation_kind: "private_chat" | "thread" | "group";
|
|
171
171
|
display_name?: string;
|
|
172
172
|
}
|