@moltzap/protocol 2026.501.2 → 2026.501.4
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/testing/conformance/_helpers.d.ts +17 -0
- package/dist/testing/conformance/_helpers.d.ts.map +1 -0
- package/dist/testing/conformance/_helpers.js +12 -0
- package/dist/testing/conformance/_helpers.js.map +1 -0
- package/dist/testing/conformance/boundary.d.ts +34 -0
- package/dist/testing/conformance/boundary.d.ts.map +1 -1
- package/dist/testing/conformance/boundary.js +198 -6
- package/dist/testing/conformance/boundary.js.map +1 -1
- package/dist/testing/conformance/client/delivery.d.ts +6 -0
- package/dist/testing/conformance/client/delivery.d.ts.map +1 -1
- package/dist/testing/conformance/client/delivery.js +44 -0
- package/dist/testing/conformance/client/delivery.js.map +1 -1
- package/dist/testing/conformance/client/index.d.ts +1 -1
- package/dist/testing/conformance/client/index.d.ts.map +1 -1
- package/dist/testing/conformance/client/index.js +1 -1
- package/dist/testing/conformance/client/index.js.map +1 -1
- package/dist/testing/conformance/client/suite.d.ts +1 -1
- package/dist/testing/conformance/client/suite.d.ts.map +1 -1
- package/dist/testing/conformance/client/suite.js +3 -2
- package/dist/testing/conformance/client/suite.js.map +1 -1
- package/dist/testing/conformance/delivery.d.ts +43 -0
- package/dist/testing/conformance/delivery.d.ts.map +1 -1
- package/dist/testing/conformance/delivery.js +244 -7
- package/dist/testing/conformance/delivery.js.map +1 -1
- package/dist/testing/conformance/rpc-semantics.d.ts +29 -0
- package/dist/testing/conformance/rpc-semantics.d.ts.map +1 -1
- package/dist/testing/conformance/rpc-semantics.js +97 -1
- package/dist/testing/conformance/rpc-semantics.js.map +1 -1
- package/dist/testing/conformance/schema-conformance.d.ts +37 -0
- package/dist/testing/conformance/schema-conformance.d.ts.map +1 -1
- package/dist/testing/conformance/schema-conformance.js +198 -1
- package/dist/testing/conformance/schema-conformance.js.map +1 -1
- package/dist/testing/conformance/suite.d.ts.map +1 -1
- package/dist/testing/conformance/suite.js +58 -0
- package/dist/testing/conformance/suite.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
|
@@ -9,14 +9,83 @@
|
|
|
9
9
|
* Principle 3: every property body is `Effect<void, PropertyFailure>`.
|
|
10
10
|
*/
|
|
11
11
|
import * as fc from "fast-check";
|
|
12
|
-
import { Effect } from "effect";
|
|
12
|
+
import { Effect, Ref } from "effect";
|
|
13
|
+
import { ErrorCodes } from "../../schema/errors.js";
|
|
14
|
+
import { EventNames } from "../../schema/events.js";
|
|
15
|
+
import { ConversationsArchive, ConversationsCreate, ConversationsUnarchive, } from "../../schema/methods/conversations.js";
|
|
16
|
+
import { MessagesSend } from "../../schema/methods/messages.js";
|
|
13
17
|
import { makeTestClient } from "../test-client.js";
|
|
14
18
|
import { registerTestAgent } from "../agent-registration.js";
|
|
15
|
-
import { PropertyInvariantViolation, assertProperty, registerProperty, } from "./registry.js";
|
|
19
|
+
import { PropertyDeferred, PropertyInvariantViolation, PropertyUnavailable, assertProperty, registerProperty, } from "./registry.js";
|
|
20
|
+
import { sendUntypedRpc } from "./_helpers.js";
|
|
16
21
|
const CATEGORY = "delivery";
|
|
17
22
|
const DEFAULT_TIMEOUT_MS = 5000;
|
|
18
23
|
const DEFAULT_CAPTURE_CAPACITY = 256;
|
|
19
24
|
const MAX_N = 4;
|
|
25
|
+
const ARCHIVE_LIFECYCLE_PROPERTY = "archive-lifecycle";
|
|
26
|
+
function violation(name, reason) {
|
|
27
|
+
return new PropertyInvariantViolation({ category: CATEGORY, name, reason });
|
|
28
|
+
}
|
|
29
|
+
function acquirePropertyConversation(ctx, propertyName, namePrefix) {
|
|
30
|
+
return acquireConversation(ctx, 1, namePrefix).pipe(Effect.mapError((e) => violation(propertyName, `fixture: ${e}`)));
|
|
31
|
+
}
|
|
32
|
+
function firstParticipant(fixture, propertyName) {
|
|
33
|
+
const participant = fixture.participants[0];
|
|
34
|
+
return participant === undefined
|
|
35
|
+
? Effect.fail(violation(propertyName, "fixture missing participant"))
|
|
36
|
+
: Effect.succeed(participant);
|
|
37
|
+
}
|
|
38
|
+
function sendText(actor, conversationId, text) {
|
|
39
|
+
return actor.client.sendRpc(MessagesSend.name, {
|
|
40
|
+
conversationId,
|
|
41
|
+
parts: [{ type: "text", text }],
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
function archiveConversation(actor, conversationId) {
|
|
45
|
+
return actor.client.sendRpc(ConversationsArchive.name, { conversationId });
|
|
46
|
+
}
|
|
47
|
+
function unarchiveConversation(actor, conversationId) {
|
|
48
|
+
return actor.client.sendRpc(ConversationsUnarchive.name, { conversationId });
|
|
49
|
+
}
|
|
50
|
+
function waitForArchivedEvent(observer, conversationId, byAgentId, propertyName) {
|
|
51
|
+
return Effect.gen(function* () {
|
|
52
|
+
const event = yield* observer.client
|
|
53
|
+
.waitForEvent(EventNames.ConversationArchived, DEFAULT_TIMEOUT_MS)
|
|
54
|
+
.pipe(Effect.mapError((e) => violation(propertyName, `archive event missing: ${e.message}`)));
|
|
55
|
+
const data = event.data;
|
|
56
|
+
if (data?.conversationId !== conversationId ||
|
|
57
|
+
typeof data.archivedAt !== "string" ||
|
|
58
|
+
data.by !== byAgentId) {
|
|
59
|
+
return yield* Effect.fail(violation(propertyName, `bad archive event payload: ${JSON.stringify(event.data)}`));
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
function waitForUnarchivedEvent(observer, conversationId, byAgentId, propertyName) {
|
|
64
|
+
return Effect.gen(function* () {
|
|
65
|
+
const event = yield* observer.client
|
|
66
|
+
.waitForEvent(EventNames.ConversationUnarchived, DEFAULT_TIMEOUT_MS)
|
|
67
|
+
.pipe(Effect.mapError((e) => violation(propertyName, `unarchive event missing: ${e.message}`)));
|
|
68
|
+
const data = event.data;
|
|
69
|
+
if (data?.conversationId !== conversationId || data.by !== byAgentId) {
|
|
70
|
+
return yield* Effect.fail(violation(propertyName, `bad unarchive event payload: ${JSON.stringify(event.data)}`));
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
function assertConversationRejectsMessages(actor, conversationId, propertyName) {
|
|
75
|
+
return Effect.gen(function* () {
|
|
76
|
+
const outcome = yield* sendText(actor, conversationId, "must-fail-while-archived").pipe(Effect.either);
|
|
77
|
+
if (outcome._tag === "Right") {
|
|
78
|
+
return yield* Effect.fail(violation(propertyName, "messages/send succeeded while archived"));
|
|
79
|
+
}
|
|
80
|
+
if (outcome.left._tag !== "TestingRpcResponseError" ||
|
|
81
|
+
outcome.left.code !== ErrorCodes.ConversationArchived) {
|
|
82
|
+
const errorLabel = outcome.left._tag === "TestingRpcResponseError"
|
|
83
|
+
? `${outcome.left._tag}/${outcome.left.code}`
|
|
84
|
+
: outcome.left._tag;
|
|
85
|
+
return yield* Effect.fail(violation(propertyName, `messages/send returned ${errorLabel}, expected ConversationArchived`));
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
}
|
|
20
89
|
function acquireClient(ctx, name) {
|
|
21
90
|
return Effect.gen(function* () {
|
|
22
91
|
const agent = yield* registerTestAgent({
|
|
@@ -39,7 +108,7 @@ function acquireConversation(ctx, n, namePrefix) {
|
|
|
39
108
|
const owner = yield* acquireClient(ctx, `${namePrefix}-owner`);
|
|
40
109
|
const participants = yield* Effect.forEach(Array.from({ length: clamped }, (_, i) => i), (i) => acquireClient(ctx, `${namePrefix}-p${i}`), { concurrency: clamped });
|
|
41
110
|
const createResult = yield* owner.client
|
|
42
|
-
.sendRpc(
|
|
111
|
+
.sendRpc(ConversationsCreate.name, {
|
|
43
112
|
type: "group",
|
|
44
113
|
name: `${namePrefix}-conv`,
|
|
45
114
|
participants: participants.map((p) => ({
|
|
@@ -74,7 +143,7 @@ export function registerFanOutCardinality(ctx) {
|
|
|
74
143
|
const result = await Effect.runPromise(Effect.scoped(Effect.gen(function* () {
|
|
75
144
|
const fixture = yield* acquireConversation(ctx, n, "fan").pipe(Effect.mapError((e) => new Error(e)));
|
|
76
145
|
const send = yield* fixture.owner.client
|
|
77
|
-
.sendRpc(
|
|
146
|
+
.sendRpc(MessagesSend.name, {
|
|
78
147
|
conversationId: fixture.conversationId,
|
|
79
148
|
parts: [{ type: "text", text: "fan-out-ping" }],
|
|
80
149
|
})
|
|
@@ -142,7 +211,7 @@ export function registerStoreAndReplay(ctx) {
|
|
|
142
211
|
const sent = 3;
|
|
143
212
|
for (let i = 0; i < sent; i++) {
|
|
144
213
|
yield* fixture.owner.client
|
|
145
|
-
.sendRpc(
|
|
214
|
+
.sendRpc(MessagesSend.name, {
|
|
146
215
|
conversationId: fixture.conversationId,
|
|
147
216
|
parts: [{ type: "text", text: `sr-${i}` }],
|
|
148
217
|
})
|
|
@@ -180,7 +249,7 @@ export function registerPayloadOpacity(ctx) {
|
|
|
180
249
|
if (participant === undefined)
|
|
181
250
|
return false;
|
|
182
251
|
yield* fixture.owner.client
|
|
183
|
-
.sendRpc(
|
|
252
|
+
.sendRpc(MessagesSend.name, {
|
|
184
253
|
conversationId: fixture.conversationId,
|
|
185
254
|
parts: [{ type: "text", text }],
|
|
186
255
|
})
|
|
@@ -194,6 +263,145 @@ export function registerPayloadOpacity(ctx) {
|
|
|
194
263
|
return found;
|
|
195
264
|
}), { seed: ctx.seed, numRuns: ctx.opts.numRuns ?? 3 })));
|
|
196
265
|
}
|
|
266
|
+
/**
|
|
267
|
+
* Hook-gated delivery — admission verbs are awaitable, the verdict
|
|
268
|
+
* mutates the recipient view, dynamically attached conversations enter
|
|
269
|
+
* the hook pipeline (mirrors `33-attach-conversation.integration.test.ts:312-369`).
|
|
270
|
+
*
|
|
271
|
+
* Architect plan §1.7 acceptance:
|
|
272
|
+
* - `before_message_delivery: { block: true }` drops the message before
|
|
273
|
+
* delivery (recipient does NOT observe it).
|
|
274
|
+
* - `block: false, patch: { parts: [...] }` lands a MUTATED message —
|
|
275
|
+
* recipient sees the patched parts, not the sender's parts.
|
|
276
|
+
* - `apps/attachConversation` adds a conversation to the session's
|
|
277
|
+
* hook pipeline; the same hook then fires for traffic on the new
|
|
278
|
+
* conversation.
|
|
279
|
+
*
|
|
280
|
+
* Conformance reach: the assertions are observable on the SENDER (deny
|
|
281
|
+
* → typed dispatch error) and RECIPIENT (patched parts in inbound
|
|
282
|
+
* event). Wiring the app session over WS requires `apps/create`, which
|
|
283
|
+
* needs the initiator's `owner_user_id` to be non-null — see the
|
|
284
|
+
* `app-disconnect-fail-policy` rationale in `boundary.ts`. When the
|
|
285
|
+
* fixture's agents are owner-less (default `startCoreTestServer`), the
|
|
286
|
+
* property reports `PropertyUnavailable` and B.9 carries the load.
|
|
287
|
+
*/
|
|
288
|
+
export function registerHookGatedDelivery(ctx) {
|
|
289
|
+
registerProperty(ctx, CATEGORY, "hook-gated-delivery", "deny drops; patch mutates recipient view; attached conv enters hooks", Effect.scoped(Effect.gen(function* () {
|
|
290
|
+
const fixture = yield* acquireAppSessionFixture(ctx, "hgd", "hook-gated-delivery").pipe(Effect.either);
|
|
291
|
+
if (fixture._tag === "Left") {
|
|
292
|
+
return yield* Effect.fail(fixture.left);
|
|
293
|
+
}
|
|
294
|
+
// Codex review (#327, finding 4): the protocol fixture cannot
|
|
295
|
+
// drive the deny/patch/attach scenarios end-to-end (no DB seam
|
|
296
|
+
// to inspect the recipient view; `apps/attachConversation` is a
|
|
297
|
+
// c2s RPC but the assertion needs a server-internal observation
|
|
298
|
+
// the conformance contract does not expose). When a future
|
|
299
|
+
// fixture extension makes apps/create reachable, surface a
|
|
300
|
+
// typed Deferred so the suite reports honest coverage instead
|
|
301
|
+
// of a vacuous pass.
|
|
302
|
+
return yield* Effect.fail(new PropertyDeferred({
|
|
303
|
+
category: CATEGORY,
|
|
304
|
+
name: "hook-gated-delivery",
|
|
305
|
+
followUp: "deny/patch/attach assertions live in B.9 server integration tests (#318) — protocol fixture lacks DB-level recipient inspection",
|
|
306
|
+
}));
|
|
307
|
+
})));
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* Multi-app FIFO short-circuit — register two apps on the same hook,
|
|
311
|
+
* first denies, assert second handler is NOT invoked. Architect plan
|
|
312
|
+
* §3.4: `Effect.forEach(registeredApps, ...)` iterates in registration
|
|
313
|
+
* order; first-deny short-circuits the loop.
|
|
314
|
+
*
|
|
315
|
+
* Same fixture constraint as `hook-gated-delivery`: requires app session
|
|
316
|
+
* machinery. Reports `PropertyUnavailable` when prerequisites are
|
|
317
|
+
* absent.
|
|
318
|
+
*/
|
|
319
|
+
export function registerMultiAppFifoShortCircuit(ctx) {
|
|
320
|
+
registerProperty(ctx, CATEGORY, "multi-app-fifo-short-circuit", "two apps; first denies; second hook is NOT invoked", Effect.scoped(Effect.gen(function* () {
|
|
321
|
+
const fixture = yield* acquireAppSessionFixture(ctx, "mfs", "multi-app-fifo-short-circuit").pipe(Effect.either);
|
|
322
|
+
if (fixture._tag === "Left") {
|
|
323
|
+
return yield* Effect.fail(fixture.left);
|
|
324
|
+
}
|
|
325
|
+
// Codex review (#327, finding 5): once apps/create succeeds, the
|
|
326
|
+
// FIFO short-circuit assertion requires registering a SECOND
|
|
327
|
+
// app on the same hook and observing the second handler is NOT
|
|
328
|
+
// invoked — the protocol fixture exposes a single-app session.
|
|
329
|
+
// B.9 covers via the dual-app wire fixture; surface a typed
|
|
330
|
+
// Deferred here.
|
|
331
|
+
return yield* Effect.fail(new PropertyDeferred({
|
|
332
|
+
category: CATEGORY,
|
|
333
|
+
name: "multi-app-fifo-short-circuit",
|
|
334
|
+
followUp: "two-app dispatch + first-deny short-circuit assertion lives in B.9 server integration tests (#318)",
|
|
335
|
+
}));
|
|
336
|
+
})));
|
|
337
|
+
}
|
|
338
|
+
function acquireAppSessionFixture(ctx, namePrefix, propertyName) {
|
|
339
|
+
const unavailable = (reason) => new PropertyUnavailable({ category: CATEGORY, name: propertyName, reason });
|
|
340
|
+
return Effect.gen(function* () {
|
|
341
|
+
const appAgent = yield* registerTestAgent({
|
|
342
|
+
baseUrl: ctx.realServer.baseUrl,
|
|
343
|
+
name: `${namePrefix}-app`,
|
|
344
|
+
}).pipe(Effect.mapError((e) => unavailable(`app agent register: ${e.body}`)));
|
|
345
|
+
const appClient = yield* makeTestClient({
|
|
346
|
+
serverUrl: ctx.realServer.wsUrl,
|
|
347
|
+
agentKey: appAgent.apiKey,
|
|
348
|
+
agentId: appAgent.agentId,
|
|
349
|
+
defaultTimeoutMs: DEFAULT_TIMEOUT_MS,
|
|
350
|
+
captureCapacity: DEFAULT_CAPTURE_CAPACITY,
|
|
351
|
+
}).pipe(Effect.mapError((e) => unavailable(`app client acquire: ${String(e)}`)));
|
|
352
|
+
const appId = `${namePrefix}-${Date.now().toString(36)}`;
|
|
353
|
+
const registerOutcome = yield* sendUntypedRpc(appClient, "apps/register", {
|
|
354
|
+
manifest: {
|
|
355
|
+
appId,
|
|
356
|
+
name: `Hook-gated app ${appId}`,
|
|
357
|
+
permissions: { required: [], optional: [] },
|
|
358
|
+
conversations: [
|
|
359
|
+
{ key: "main", name: "Main", participantFilter: "all" },
|
|
360
|
+
],
|
|
361
|
+
hooks: {
|
|
362
|
+
before_message_delivery: { timeout_ms: 5000 },
|
|
363
|
+
on_join: {},
|
|
364
|
+
},
|
|
365
|
+
},
|
|
366
|
+
}).pipe(Effect.either);
|
|
367
|
+
if (registerOutcome._tag === "Left") {
|
|
368
|
+
return yield* Effect.fail(unavailable(`apps/register failed: ${registerOutcome.left._tag}`));
|
|
369
|
+
}
|
|
370
|
+
const senderAgent = yield* registerTestAgent({
|
|
371
|
+
baseUrl: ctx.realServer.baseUrl,
|
|
372
|
+
name: `${namePrefix}-sender`,
|
|
373
|
+
}).pipe(Effect.mapError((e) => unavailable(`sender register: ${e.body}`)));
|
|
374
|
+
const senderClient = yield* makeTestClient({
|
|
375
|
+
serverUrl: ctx.realServer.wsUrl,
|
|
376
|
+
agentKey: senderAgent.apiKey,
|
|
377
|
+
agentId: senderAgent.agentId,
|
|
378
|
+
defaultTimeoutMs: DEFAULT_TIMEOUT_MS,
|
|
379
|
+
captureCapacity: DEFAULT_CAPTURE_CAPACITY,
|
|
380
|
+
}).pipe(Effect.mapError((e) => unavailable(`sender client acquire: ${String(e)}`)));
|
|
381
|
+
const createOutcome = yield* senderClient
|
|
382
|
+
.sendRpc("apps/create", { appId, invitedAgentIds: [] })
|
|
383
|
+
.pipe(Effect.either);
|
|
384
|
+
if (createOutcome._tag === "Left") {
|
|
385
|
+
// Most common cause: owner_user_id is null on the sender (see
|
|
386
|
+
// app-host.ts:629). The default `startCoreTestServer` does not
|
|
387
|
+
// configure `devModeUserId`; B.9 fills the gap via DB seeding.
|
|
388
|
+
return yield* Effect.fail(unavailable(`apps/create failed (likely sender owner_user_id null; B.9 covers via DB seeding): ${createOutcome.left._tag}`));
|
|
389
|
+
}
|
|
390
|
+
const session = createOutcome.right
|
|
391
|
+
.session;
|
|
392
|
+
const sessionId = session?.id;
|
|
393
|
+
if (typeof sessionId !== "string" || sessionId.length === 0) {
|
|
394
|
+
return yield* Effect.fail(unavailable(`apps/create returned no session.id`));
|
|
395
|
+
}
|
|
396
|
+
const dispatchHits = yield* Ref.make(0);
|
|
397
|
+
return {
|
|
398
|
+
app: { agent: appAgent, client: appClient, appId },
|
|
399
|
+
sender: { agent: senderAgent, client: senderClient },
|
|
400
|
+
sessionId,
|
|
401
|
+
dispatchHits,
|
|
402
|
+
};
|
|
403
|
+
});
|
|
404
|
+
}
|
|
197
405
|
/** Task-boundary isolation — conversation A's events don't leak into B. */
|
|
198
406
|
export function registerTaskBoundaryIsolation(ctx) {
|
|
199
407
|
registerProperty(ctx, CATEGORY, "task-boundary-isolation", "participants in conversation B observe zero leaks from conversation A", Effect.scoped(Effect.gen(function* () {
|
|
@@ -208,7 +416,7 @@ export function registerTaskBoundaryIsolation(ctx) {
|
|
|
208
416
|
reason: `fixture B: ${e}`,
|
|
209
417
|
})));
|
|
210
418
|
yield* fxA.owner.client
|
|
211
|
-
.sendRpc(
|
|
419
|
+
.sendRpc(MessagesSend.name, {
|
|
212
420
|
conversationId: fxA.conversationId,
|
|
213
421
|
parts: [{ type: "text", text: "iso-leak-canary" }],
|
|
214
422
|
})
|
|
@@ -228,4 +436,33 @@ export function registerTaskBoundaryIsolation(ctx) {
|
|
|
228
436
|
}
|
|
229
437
|
})));
|
|
230
438
|
}
|
|
439
|
+
/**
|
|
440
|
+
* Archive lifecycle — archival is observable and enforced:
|
|
441
|
+
* - conversations/archive broadcasts conversations/archived
|
|
442
|
+
* - messages/send to the archived conversation returns the typed
|
|
443
|
+
* ConversationArchived error
|
|
444
|
+
* - conversations/unarchive broadcasts conversations/unarchived
|
|
445
|
+
* - messages/send succeeds again after unarchive
|
|
446
|
+
*/
|
|
447
|
+
export function registerArchiveLifecycle(ctx) {
|
|
448
|
+
registerProperty(ctx, CATEGORY, ARCHIVE_LIFECYCLE_PROPERTY, "archive/unarchive emits lifecycle events and gates messages/send", Effect.scoped(Effect.gen(function* () {
|
|
449
|
+
const fixture = yield* acquirePropertyConversation(ctx, ARCHIVE_LIFECYCLE_PROPERTY, "arch");
|
|
450
|
+
const participant = yield* firstParticipant(fixture, ARCHIVE_LIFECYCLE_PROPERTY);
|
|
451
|
+
const archive = yield* archiveConversation(fixture.owner, fixture.conversationId).pipe(Effect.either);
|
|
452
|
+
if (archive._tag === "Left") {
|
|
453
|
+
return yield* Effect.fail(violation(ARCHIVE_LIFECYCLE_PROPERTY, `archive failed: ${archive.left._tag}`));
|
|
454
|
+
}
|
|
455
|
+
yield* waitForArchivedEvent(participant, fixture.conversationId, fixture.owner.agent.agentId, ARCHIVE_LIFECYCLE_PROPERTY);
|
|
456
|
+
yield* assertConversationRejectsMessages(participant, fixture.conversationId, ARCHIVE_LIFECYCLE_PROPERTY);
|
|
457
|
+
const unarchive = yield* unarchiveConversation(fixture.owner, fixture.conversationId).pipe(Effect.either);
|
|
458
|
+
if (unarchive._tag === "Left") {
|
|
459
|
+
return yield* Effect.fail(violation(ARCHIVE_LIFECYCLE_PROPERTY, `unarchive failed: ${unarchive.left._tag}`));
|
|
460
|
+
}
|
|
461
|
+
yield* waitForUnarchivedEvent(participant, fixture.conversationId, fixture.owner.agent.agentId, ARCHIVE_LIFECYCLE_PROPERTY);
|
|
462
|
+
const resumedSend = yield* sendText(participant, fixture.conversationId, "must-succeed-after-unarchive").pipe(Effect.either);
|
|
463
|
+
if (resumedSend._tag === "Left") {
|
|
464
|
+
return yield* Effect.fail(violation(ARCHIVE_LIFECYCLE_PROPERTY, `messages/send failed after unarchive: ${resumedSend.left._tag}`));
|
|
465
|
+
}
|
|
466
|
+
})));
|
|
467
|
+
}
|
|
231
468
|
//# sourceMappingURL=delivery.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delivery.js","sourceRoot":"","sources":["../../../src/testing/conformance/delivery.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"delivery.js","sourceRoot":"","sources":["../../../src/testing/conformance/delivery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAc,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,cAAc,EAAmB,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAkB,MAAM,0BAA0B,CAAC;AAE7E,OAAO,EACL,gBAAgB,EAChB,0BAA0B,EAC1B,mBAAmB,EACnB,cAAc,EACd,gBAAgB,GACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,QAAQ,GAAG,UAAmB,CAAC;AACrC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAChC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AACrC,MAAM,KAAK,GAAG,CAAC,CAAC;AAChB,MAAM,0BAA0B,GAAG,mBAAmB,CAAC;AA2BvD,SAAS,SAAS,CAAC,IAAY,EAAE,MAAc;IAC7C,OAAO,IAAI,0BAA0B,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,2BAA2B,CAClC,GAA0B,EAC1B,YAAoB,EACpB,UAAkB;IAElB,OAAO,mBAAmB,CAAC,GAAG,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,IAAI,CACjD,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC,CACjE,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CACvB,OAA4B,EAC5B,YAAoB;IAEpB,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC5C,OAAO,WAAW,KAAK,SAAS;QAC9B,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,6BAA6B,CAAC,CAAC;QACrE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,QAAQ,CACf,KAAwB,EACxB,cAAsB,EACtB,IAAY;IAEZ,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE;QAC7C,cAAc;QACd,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KAChC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAwB,EAAE,cAAsB;IAC3E,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,qBAAqB,CAC5B,KAAwB,EACxB,cAAsB;IAEtB,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,IAAI,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,oBAAoB,CAC3B,QAA2B,EAC3B,cAAsB,EACtB,SAAiB,EACjB,YAAoB;IAEpB,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM;aACjC,YAAY,CAAC,UAAU,CAAC,oBAAoB,EAAE,kBAAkB,CAAC;aACjE,IAAI,CACH,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CACpB,SAAS,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC,OAAO,EAAE,CAAC,CAC/D,CACF,CAAC;QACJ,MAAM,IAAI,GAAG,KAAK,CAAC,IAAoC,CAAC;QACxD,IACE,IAAI,EAAE,cAAc,KAAK,cAAc;YACvC,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ;YACnC,IAAI,CAAC,EAAE,KAAK,SAAS,EACrB,CAAC;YACD,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CACP,YAAY,EACZ,8BAA8B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAC3D,CACF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,sBAAsB,CAC7B,QAA2B,EAC3B,cAAsB,EACtB,SAAiB,EACjB,YAAoB;IAEpB,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM;aACjC,YAAY,CAAC,UAAU,CAAC,sBAAsB,EAAE,kBAAkB,CAAC;aACnE,IAAI,CACH,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CACpB,SAAS,CAAC,YAAY,EAAE,4BAA4B,CAAC,CAAC,OAAO,EAAE,CAAC,CACjE,CACF,CAAC;QACJ,MAAM,IAAI,GAAG,KAAK,CAAC,IAAsC,CAAC;QAC1D,IAAI,IAAI,EAAE,cAAc,KAAK,cAAc,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;YACrE,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CACP,YAAY,EACZ,gCAAgC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAC7D,CACF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iCAAiC,CACxC,KAAwB,EACxB,cAAsB,EACtB,YAAoB;IAEpB,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,QAAQ,CAC7B,KAAK,EACL,cAAc,EACd,0BAA0B,CAC3B,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC7B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CAAC,YAAY,EAAE,wCAAwC,CAAC,CAClE,CAAC;QACJ,CAAC;QACD,IACE,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,yBAAyB;YAC/C,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,oBAAoB,EACrD,CAAC;YACD,MAAM,UAAU,GACd,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,yBAAyB;gBAC7C,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE;gBAC7C,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YACxB,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CACP,YAAY,EACZ,0BAA0B,UAAU,iCAAiC,CACtE,CACF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CACpB,GAA0B,EAC1B,IAAY;IAMZ,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,iBAAiB,CAAC;YACrC,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO;YAC/B,IAAI;SACL,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,IAAI,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,cAAc,CAAC;YACnC,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,KAAK;YAC/B,QAAQ,EAAE,KAAK,CAAC,MAAM;YACtB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,gBAAgB,EAAE,kBAAkB;YACpC,eAAe,EAAE,wBAAwB;SAC1C,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,IAAI,MAAM,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACzE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAC1B,GAA0B,EAC1B,CAAS,EACT,UAAkB;IAElB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAChD,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,UAAU,QAAQ,CAAC,CAAC;QAC/D,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CACxC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,UAAU,KAAK,CAAC,EAAE,CAAC,EAChD,EAAE,WAAW,EAAE,OAAO,EAAE,CACzB,CAAC;QACF,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM;aACrC,OAAO,CAAC,mBAAmB,CAAC,IAAI,EAAE;YACjC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,GAAG,UAAU,OAAO;YAC1B,YAAY,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrC,IAAI,EAAE,OAAgB;gBACtB,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO;aACpB,CAAC,CAAC;SACJ,CAAC;aACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvB,IAAI,YAAY,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,gCAAgC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CACzD,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,YAAY,CAAC,KAE5B,CAAC;QACF,MAAM,cAAc,GAAG,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;QAChD,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtE,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,kDAAkD,CACnD,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC;IACjD,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CAAC,GAA0B;IAClE,gBAAgB,CACd,GAAG,EACH,QAAQ,EACR,qBAAqB,EACrB,uEAAuE,EACvE,cAAc,CAAC,QAAQ,EAAE,qBAAqB,EAAE,GAAG,EAAE,CACnD,EAAE,CAAC,MAAM;IACP,sHAAsH;IACtH,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC3D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CACpC,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAC5D,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CACrC,CAAC;YACF,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM;iBACrC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE;gBAC1B,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;aAChD,CAAC;iBACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACvB,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACzB,OAAO,EAAE,IAAI,EAAE,aAAsB,EAAE,CAAC;YAC1C,CAAC;YACD,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAClC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CACpC,OAAO,CAAC,YAAY,EACpB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CACzB,CAAC;YACF,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CACzB,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,MAAM,CACT,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,IAAI,KAAK,SAAS;gBACpB,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,OAAO;gBACzB,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ;gBACjC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CACpC,CAAC,MAAM,CACX,CAAC;YACF,OAAO,EAAE,IAAI,EAAE,IAAa,EAAE,MAAM,EAAE,CAAC;QACzC,CAAC,CAAC,CACH,CACF,CAAC;QACF,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QACvC,+DAA+D;QAC/D,OAAO,CACL,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CACpC,CAAC;IACJ,CAAC,CAAC,EACF,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE,CACnD,CACF,CACF,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,SAAiB;IAClC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAA0B;IAC/D,gBAAgB,CACd,GAAG,EACH,QAAQ,EACR,kBAAkB,EAClB,0HAA0H,EAC1H,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAC3D,MAAM,CAAC,QAAQ,CACb,CAAC,CAAC,EAAE,EAAE,CACJ,IAAI,0BAA0B,CAAC;YAC7B,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,kBAAkB;YACxB,MAAM,EAAE,YAAY,CAAC,EAAE;SACxB,CAAC,CACL,CACF,CAAC;QACF,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,IAAI,0BAA0B,CAAC;gBAC7B,QAAQ,EAAE,QAAQ;gBAClB,IAAI,EAAE,kBAAkB;gBACxB,MAAM,EAAE,6BAA6B;aACtC,CAAC,CACH,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,CAAC;QACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM;iBACxB,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE;gBAC1B,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;aAC3C,CAAC;iBACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC;QACD,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAC3B,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,IAAI,KAAK,SAAS;YACpB,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,OAAO;YACzB,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ;YACjC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CACpC,CAAC,MAAM,CAAC;QACT,IAAI,SAAS,GAAG,IAAI,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,IAAI,0BAA0B,CAAC;gBAC7B,QAAQ,EAAE,QAAQ;gBAClB,IAAI,EAAE,kBAAkB;gBACxB,MAAM,EAAE,QAAQ,IAAI,+BAA+B,SAAS,EAAE;aAC/D,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,sBAAsB,CAAC,GAA0B;IAC/D,gBAAgB,CACd,GAAG,EACH,QAAQ,EACR,iBAAiB,EACjB,6DAA6D,EAC7D,cAAc,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,EAAE,CAC/C,EAAE,CAAC,MAAM;IACP,sHAAsH;IACtH,EAAE,CAAC,aAAa;IACd,gEAAgE;IAChE,EAAE;SACC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;SACvC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzC,sHAAsH;IACtH,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,UAAU,CACnC,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAC3D,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CACrC,CAAC;YACF,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC5C,IAAI,WAAW,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAC;YAC5C,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM;iBACxB,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE;gBAC1B,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;aAChC,CAAC;iBACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACvB,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;YAChD,OAAO,IAAI,CAAC,IAAI,CACd,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,IAAI,KAAK,SAAS;gBACpB,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,OAAO;gBACzB,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CACvB,CAAC;QACJ,CAAC,CAAC,CACH,CACF,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC,CACF,EACD,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE,CACnD,CACF,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,yBAAyB,CAAC,GAA0B;IAClE,gBAAgB,CACd,GAAG,EACH,QAAQ,EACR,qBAAqB,EACrB,sEAAsE,EACtE,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,wBAAwB,CAC7C,GAAG,EACH,KAAK,EACL,qBAAqB,CACtB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC;QACD,8DAA8D;QAC9D,+DAA+D;QAC/D,gEAAgE;QAChE,gEAAgE;QAChE,2DAA2D;QAC3D,2DAA2D;QAC3D,8DAA8D;QAC9D,qBAAqB;QACrB,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,IAAI,gBAAgB,CAAC;YACnB,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,qBAAqB;YAC3B,QAAQ,EACN,iIAAiI;SACpI,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gCAAgC,CAC9C,GAA0B;IAE1B,gBAAgB,CACd,GAAG,EACH,QAAQ,EACR,8BAA8B,EAC9B,oDAAoD,EACpD,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,wBAAwB,CAC7C,GAAG,EACH,KAAK,EACL,8BAA8B,CAC/B,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC;QACD,iEAAiE;QACjE,6DAA6D;QAC7D,+DAA+D;QAC/D,+DAA+D;QAC/D,4DAA4D;QAC5D,iBAAiB;QACjB,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,IAAI,gBAAgB,CAAC;YACnB,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,8BAA8B;YACpC,QAAQ,EACN,oGAAoG;SACvG,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC;AAiBD,SAAS,wBAAwB,CAC/B,GAA0B,EAC1B,UAAkB,EAClB,YAAoB;IAEpB,MAAM,WAAW,GAAG,CAAC,MAAc,EAAuB,EAAE,CAC1D,IAAI,mBAAmB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9E,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,iBAAiB,CAAC;YACxC,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO;YAC/B,IAAI,EAAE,GAAG,UAAU,MAAM;SAC1B,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CACrE,CAAC;QACF,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,cAAc,CAAC;YACtC,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,KAAK;YAC/B,QAAQ,EAAE,QAAQ,CAAC,MAAM;YACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,gBAAgB,EAAE,kBAAkB;YACpC,eAAe,EAAE,wBAAwB;SAC1C,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,uBAAuB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CACxE,CAAC;QAEF,MAAM,KAAK,GAAG,GAAG,UAAU,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QACzD,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,eAAe,EAAE;YACxE,QAAQ,EAAE;gBACR,KAAK;gBACL,IAAI,EAAE,kBAAkB,KAAK,EAAE;gBAC/B,WAAW,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;gBAC3C,aAAa,EAAE;oBACb,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE;iBACxD;gBACD,KAAK,EAAE;oBACL,uBAAuB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;oBAC7C,OAAO,EAAE,EAAE;iBACZ;aACF;SACF,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvB,IAAI,eAAe,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACpC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,WAAW,CAAC,yBAAyB,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAClE,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,iBAAiB,CAAC;YAC3C,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO;YAC/B,IAAI,EAAE,GAAG,UAAU,SAAS;SAC7B,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3E,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,cAAc,CAAC;YACzC,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,KAAK;YAC/B,QAAQ,EAAE,WAAW,CAAC,MAAM;YAC5B,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,gBAAgB,EAAE,kBAAkB;YACpC,eAAe,EAAE,wBAAwB;SAC1C,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CACpB,WAAW,CAAC,0BAA0B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CACnD,CACF,CAAC;QAEF,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,YAAY;aACtC,OAAO,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC;aACtD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvB,IAAI,aAAa,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAClC,8DAA8D;YAC9D,+DAA+D;YAC/D,+DAA+D;YAC/D,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,WAAW,CACT,qFAAqF,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,CAC/G,CACF,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAI,aAAa,CAAC,KAAuC;aACnE,OAAO,CAAC;QACX,MAAM,SAAS,GAAG,OAAO,EAAE,EAAE,CAAC;QAC9B,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5D,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,WAAW,CAAC,oCAAoC,CAAC,CAClD,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxC,OAAO;YACL,GAAG,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE;YAClD,MAAM,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE;YACpD,SAAS;YACT,YAAY;SACe,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,6BAA6B,CAC3C,GAA0B;IAE1B,gBAAgB,CACd,GAAG,EACH,QAAQ,EACR,yBAAyB,EACzB,uEAAuE,EACvE,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAC1D,MAAM,CAAC,QAAQ,CACb,CAAC,CAAC,EAAE,EAAE,CACJ,IAAI,0BAA0B,CAAC;YAC7B,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,yBAAyB;YAC/B,MAAM,EAAE,cAAc,CAAC,EAAE;SAC1B,CAAC,CACL,CACF,CAAC;QACF,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAC1D,MAAM,CAAC,QAAQ,CACb,CAAC,CAAC,EAAE,EAAE,CACJ,IAAI,0BAA0B,CAAC;YAC7B,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,yBAAyB;YAC/B,MAAM,EAAE,cAAc,CAAC,EAAE;SAC1B,CAAC,CACL,CACF,CAAC;QACF,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM;aACpB,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE;YAC1B,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;SACnD,CAAC;aACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvB,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAClC,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO;QACnC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CACtB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,CAClE,CAAC;QACF,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,IAAI,0BAA0B,CAAC;gBAC7B,QAAQ,EAAE,QAAQ;gBAClB,IAAI,EAAE,yBAAyB;gBAC/B,MAAM,EAAE,gBAAgB,GAAG,CAAC,cAAc,yBAAyB,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE;aAC5F,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CAAC,GAA0B;IACjE,gBAAgB,CACd,GAAG,EACH,QAAQ,EACR,0BAA0B,EAC1B,kEAAkE,EAClE,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,2BAA2B,CAChD,GAAG,EACH,0BAA0B,EAC1B,MAAM,CACP,CAAC;QACF,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,gBAAgB,CACzC,OAAO,EACP,0BAA0B,CAC3B,CAAC;QAEF,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,mBAAmB,CACxC,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,cAAc,CACvB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CACP,0BAA0B,EAC1B,mBAAmB,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CACvC,CACF,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,CAAC,oBAAoB,CACzB,WAAW,EACX,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAC3B,0BAA0B,CAC3B,CAAC;QACF,KAAK,CAAC,CAAC,iCAAiC,CACtC,WAAW,EACX,OAAO,CAAC,cAAc,EACtB,0BAA0B,CAC3B,CAAC;QAEF,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,qBAAqB,CAC5C,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,cAAc,CACvB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CACP,0BAA0B,EAC1B,qBAAqB,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAC3C,CACF,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,CAAC,sBAAsB,CAC3B,WAAW,EACX,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAC3B,0BAA0B,CAC3B,CAAC;QAEF,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,QAAQ,CACjC,WAAW,EACX,OAAO,CAAC,cAAc,EACtB,8BAA8B,CAC/B,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CACP,0BAA0B,EAC1B,yCAAyC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,CACjE,CACF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -51,6 +51,35 @@ export declare function registerAuthorityNegative(ctx: ConformanceRunContext): v
|
|
|
51
51
|
* every id in the captured response stream appears exactly once.
|
|
52
52
|
*/
|
|
53
53
|
export declare function registerRequestIdUniqueness(ctx: ConformanceRunContext): void;
|
|
54
|
+
/**
|
|
55
|
+
* Spurious s2c responses do not crash or poison the server. Architect
|
|
56
|
+
* plan §3.3 + §1.7: the server's `s2cPending` map keys on the request id
|
|
57
|
+
* it allocated; an inbound s2c response with no matching pending entry
|
|
58
|
+
* is dropped, the connection stays responsive.
|
|
59
|
+
*
|
|
60
|
+
* Status: tombstoned as `PropertyDeferred`. TestClient's public surface
|
|
61
|
+
* is c2s-only; injecting an unsolicited `direction: "s2c"` response on
|
|
62
|
+
* the wire requires either a raw-write primitive on TestClient or a
|
|
63
|
+
* server-side fault-injection seam. The wire-level injection is
|
|
64
|
+
* exercised in B.9 server integration tests where the connection ref is
|
|
65
|
+
* reachable. Tombstoning here keeps the conformance contract visible
|
|
66
|
+
* and avoids reporting false coverage (codex review #327, finding 1).
|
|
67
|
+
*/
|
|
68
|
+
export declare function registerSpuriousS2cFrameHandling(ctx: ConformanceRunContext): void;
|
|
69
|
+
/**
|
|
70
|
+
* Caller-controlled s2c timeout — `awaitServerRequest(method, undef,
|
|
71
|
+
* timeoutMs)` returns a timeout error when no s2c request arrives in the
|
|
72
|
+
* window. Architect plan §3.4: timeout policy lives in the caller
|
|
73
|
+
* (`Effect.timeout(manifestHookTimeout)` at the AppHost call site), NOT
|
|
74
|
+
* in the schema. This property anchors the caller-side behaviour the
|
|
75
|
+
* AppHost relies on.
|
|
76
|
+
*
|
|
77
|
+
* Pure-TestClient property — fast, deterministic, no real-server hook
|
|
78
|
+
* machinery required. Asserts the timeout is OBSERVABLE (a typed Error)
|
|
79
|
+
* and FIRES IN THE WINDOW the caller passed (within 2x to absorb CI
|
|
80
|
+
* scheduling noise).
|
|
81
|
+
*/
|
|
82
|
+
export declare function registerCallerControlledS2cTimeout(ctx: ConformanceRunContext): void;
|
|
54
83
|
/**
|
|
55
84
|
* Idempotent RPCs yield equivalent responses on replay. For every
|
|
56
85
|
* list-shaped method where empty params are valid and `isIdempotent`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpc-semantics.d.ts","sourceRoot":"","sources":["../../../src/testing/conformance/rpc-semantics.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"rpc-semantics.d.ts","sourceRoot":"","sources":["../../../src/testing/conformance/rpc-semantics.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAazD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CAqDzE;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CAoD1E;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CAkG1E;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CAmF5E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,qBAAqB,GACzB,IAAI,CAgBN;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kCAAkC,CAChD,GAAG,EAAE,qBAAqB,GACzB,IAAI,CAoFN;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CAwGpE"}
|
|
@@ -18,7 +18,7 @@ import { canonicalJson, sortJsonArray } from "../canonicalize.js";
|
|
|
18
18
|
import { makeTestClient } from "../test-client.js";
|
|
19
19
|
import { registerTestAgent } from "../agent-registration.js";
|
|
20
20
|
import { allRpcMethods } from "../arbitraries/rpc.js";
|
|
21
|
-
import { assertProperty, PropertyInvariantViolation, PropertyUnavailable, registerProperty, } from "./registry.js";
|
|
21
|
+
import { assertProperty, PropertyDeferred, PropertyInvariantViolation, PropertyUnavailable, registerProperty, } from "./registry.js";
|
|
22
22
|
const CATEGORY = "rpc-semantics";
|
|
23
23
|
const DEFAULT_TIMEOUT_MS = 3000;
|
|
24
24
|
const DEFAULT_CAPTURE_CAPACITY = 64;
|
|
@@ -271,6 +271,102 @@ export function registerRequestIdUniqueness(ctx) {
|
|
|
271
271
|
return true;
|
|
272
272
|
}), { seed: ctx.seed, numRuns: ctx.opts.numRuns ?? 5 })));
|
|
273
273
|
}
|
|
274
|
+
/**
|
|
275
|
+
* Spurious s2c responses do not crash or poison the server. Architect
|
|
276
|
+
* plan §3.3 + §1.7: the server's `s2cPending` map keys on the request id
|
|
277
|
+
* it allocated; an inbound s2c response with no matching pending entry
|
|
278
|
+
* is dropped, the connection stays responsive.
|
|
279
|
+
*
|
|
280
|
+
* Status: tombstoned as `PropertyDeferred`. TestClient's public surface
|
|
281
|
+
* is c2s-only; injecting an unsolicited `direction: "s2c"` response on
|
|
282
|
+
* the wire requires either a raw-write primitive on TestClient or a
|
|
283
|
+
* server-side fault-injection seam. The wire-level injection is
|
|
284
|
+
* exercised in B.9 server integration tests where the connection ref is
|
|
285
|
+
* reachable. Tombstoning here keeps the conformance contract visible
|
|
286
|
+
* and avoids reporting false coverage (codex review #327, finding 1).
|
|
287
|
+
*/
|
|
288
|
+
export function registerSpuriousS2cFrameHandling(ctx) {
|
|
289
|
+
void ctx;
|
|
290
|
+
registerProperty(ctx, CATEGORY, "spurious-s2c-frame-handling", "stray s2c response with no matching pending ⇒ server drops & stays alive", Effect.fail(new PropertyDeferred({
|
|
291
|
+
category: CATEGORY,
|
|
292
|
+
name: "spurious-s2c-frame-handling",
|
|
293
|
+
followUp: "wire-level raw-frame injection requires TestClient extension; B.9 (#318) covers via server-side fault injection",
|
|
294
|
+
})));
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Caller-controlled s2c timeout — `awaitServerRequest(method, undef,
|
|
298
|
+
* timeoutMs)` returns a timeout error when no s2c request arrives in the
|
|
299
|
+
* window. Architect plan §3.4: timeout policy lives in the caller
|
|
300
|
+
* (`Effect.timeout(manifestHookTimeout)` at the AppHost call site), NOT
|
|
301
|
+
* in the schema. This property anchors the caller-side behaviour the
|
|
302
|
+
* AppHost relies on.
|
|
303
|
+
*
|
|
304
|
+
* Pure-TestClient property — fast, deterministic, no real-server hook
|
|
305
|
+
* machinery required. Asserts the timeout is OBSERVABLE (a typed Error)
|
|
306
|
+
* and FIRES IN THE WINDOW the caller passed (within 2x to absorb CI
|
|
307
|
+
* scheduling noise).
|
|
308
|
+
*/
|
|
309
|
+
export function registerCallerControlledS2cTimeout(ctx) {
|
|
310
|
+
registerProperty(ctx, CATEGORY, "caller-controlled-s2c-timeout", "awaitServerRequest(_, _, timeoutMs) fires within the caller's window", Effect.scoped(Effect.gen(function* () {
|
|
311
|
+
const agent = yield* registerTestAgent({
|
|
312
|
+
baseUrl: ctx.realServer.baseUrl,
|
|
313
|
+
name: "ct",
|
|
314
|
+
}).pipe(Effect.mapError((e) => new PropertyInvariantViolation({
|
|
315
|
+
category: CATEGORY,
|
|
316
|
+
name: "caller-controlled-s2c-timeout",
|
|
317
|
+
reason: `register agent: ${e.body}`,
|
|
318
|
+
})));
|
|
319
|
+
const client = yield* makeTestClient({
|
|
320
|
+
serverUrl: ctx.realServer.wsUrl,
|
|
321
|
+
agentKey: agent.apiKey,
|
|
322
|
+
agentId: agent.agentId,
|
|
323
|
+
defaultTimeoutMs: DEFAULT_TIMEOUT_MS,
|
|
324
|
+
captureCapacity: DEFAULT_CAPTURE_CAPACITY,
|
|
325
|
+
}).pipe(Effect.mapError((e) => new PropertyInvariantViolation({
|
|
326
|
+
category: CATEGORY,
|
|
327
|
+
name: "caller-controlled-s2c-timeout",
|
|
328
|
+
reason: `client acquire: ${String(e)}`,
|
|
329
|
+
})));
|
|
330
|
+
// 250ms (rather than the architect plan's example 100ms) hardens
|
|
331
|
+
// against CI scheduler tails; loaded shared runners can absorb
|
|
332
|
+
// 200–500ms on a 100ms timer, while a 250ms timer with the same
|
|
333
|
+
// 4× upper bound stays well clear of the flake band.
|
|
334
|
+
const timeoutMs = 250;
|
|
335
|
+
const lowerBoundMs = timeoutMs - 20;
|
|
336
|
+
const upperBoundMs = timeoutMs * 4;
|
|
337
|
+
const before = Date.now();
|
|
338
|
+
const outcome = yield* client
|
|
339
|
+
.awaitServerRequest("apps/onBeforeDispatch", undefined, timeoutMs)
|
|
340
|
+
.pipe(Effect.either);
|
|
341
|
+
const elapsed = Date.now() - before;
|
|
342
|
+
if (outcome._tag !== "Left") {
|
|
343
|
+
return yield* Effect.fail(new PropertyInvariantViolation({
|
|
344
|
+
category: CATEGORY,
|
|
345
|
+
name: "caller-controlled-s2c-timeout",
|
|
346
|
+
reason: `expected Left (timeout); got Right (s2c request fired)`,
|
|
347
|
+
}));
|
|
348
|
+
}
|
|
349
|
+
if (!/Timeout/i.test(outcome.left.message)) {
|
|
350
|
+
return yield* Effect.fail(new PropertyInvariantViolation({
|
|
351
|
+
category: CATEGORY,
|
|
352
|
+
name: "caller-controlled-s2c-timeout",
|
|
353
|
+
reason: `expected timeout error; got ${outcome.left.message}`,
|
|
354
|
+
}));
|
|
355
|
+
}
|
|
356
|
+
// Window is the caller's. Floor rejects "timed out before the
|
|
357
|
+
// caller's deadline" — would mean a schema-level cap is shadowing
|
|
358
|
+
// the manifest timeout. Ceiling rejects "still timing out long
|
|
359
|
+
// after the caller's deadline" — would mean the manifest timeout
|
|
360
|
+
// does not actually drive the firing.
|
|
361
|
+
if (elapsed < lowerBoundMs || elapsed > upperBoundMs) {
|
|
362
|
+
return yield* Effect.fail(new PropertyInvariantViolation({
|
|
363
|
+
category: CATEGORY,
|
|
364
|
+
name: "caller-controlled-s2c-timeout",
|
|
365
|
+
reason: `timeout fired at ${elapsed}ms; caller asked for ${timeoutMs}ms (window: ${lowerBoundMs}–${upperBoundMs}ms)`,
|
|
366
|
+
}));
|
|
367
|
+
}
|
|
368
|
+
})));
|
|
369
|
+
}
|
|
274
370
|
/**
|
|
275
371
|
* Idempotent RPCs yield equivalent responses on replay. For every
|
|
276
372
|
* list-shaped method where empty params are valid and `isIdempotent`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpc-semantics.js","sourceRoot":"","sources":["../../../src/testing/conformance/rpc-semantics.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rpc-semantics.js","sourceRoot":"","sources":["../../../src/testing/conformance/rpc-semantics.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,5 +26,42 @@ export declare function registerRoundTripIdentity(ctx: ConformanceRunContext): v
|
|
|
26
26
|
* asserts the observable outcome.
|
|
27
27
|
*/
|
|
28
28
|
export declare function registerMalformedFrameHandling(ctx: ConformanceRunContext): void;
|
|
29
|
+
/**
|
|
30
|
+
* S2C request frames round-trip through the codec. Architect plan §3.1 +
|
|
31
|
+
* §1.7: `direction: "s2c"` is part of the wire identity — encode →
|
|
32
|
+
* decodeFrame → re-encode must be byte-identical for every well-formed
|
|
33
|
+
* server-initiated request.
|
|
34
|
+
*
|
|
35
|
+
* `@pure-codec` — does NOT drive a real server. Asserts the codec preserves
|
|
36
|
+
* `direction: "s2c"` so c2s and s2c request-id pools can coexist on the
|
|
37
|
+
* wire without confusion.
|
|
38
|
+
*/
|
|
39
|
+
export declare function registerS2cRequestRoundTripIdentity(ctx: ConformanceRunContext): void;
|
|
40
|
+
/**
|
|
41
|
+
* S2C response frames validate against `ResponseFrameSchema`. Architect plan
|
|
42
|
+
* §3.1: c2s and s2c responses share one schema discriminated by `direction`.
|
|
43
|
+
* Property asserts `Value.Check` accepts every drawn s2c response — the
|
|
44
|
+
* positive shape every consumer's decoder relies on.
|
|
45
|
+
*/
|
|
46
|
+
export declare function registerS2cResponseValidation(ctx: ConformanceRunContext): void;
|
|
47
|
+
/**
|
|
48
|
+
* Malformed s2c request bytes do not crash the codec — `decodeFrame`
|
|
49
|
+
* returns `FrameSchemaError`, never throws. `@pure-codec` — exercises
|
|
50
|
+
* the codec only. Wire-level liveness with a real server is covered by
|
|
51
|
+
* `malformed-frame-handling` (above).
|
|
52
|
+
*/
|
|
53
|
+
export declare function registerS2cMalformedRequestHandling(ctx: ConformanceRunContext): void;
|
|
54
|
+
/**
|
|
55
|
+
* Dual-direction request-id collision — c2s and s2c request frames
|
|
56
|
+
* carrying the same `id` decode to distinct frames whose `direction`
|
|
57
|
+
* field discriminates the routing pool. Architect plan §3.1: pending
|
|
58
|
+
* maps key on `(side, id)`, not `id` alone — a c2s request with id
|
|
59
|
+
* `tc-1` and an s2c request with id `tc-1` must NOT collide.
|
|
60
|
+
*
|
|
61
|
+
* `@pure-codec` — pure-codec proof of the contract every transport
|
|
62
|
+
* relies on. Wire-level routing is enforced by sender/receiver pending
|
|
63
|
+
* maps; this property anchors the codec piece.
|
|
64
|
+
*/
|
|
65
|
+
export declare function registerDualDirectionIdCollision(ctx: ConformanceRunContext): void;
|
|
29
66
|
export declare function registerRpcMapCoverage(ctx: ConformanceRunContext): void;
|
|
30
67
|
//# sourceMappingURL=schema-conformance.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-conformance.d.ts","sourceRoot":"","sources":["../../../src/testing/conformance/schema-conformance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"schema-conformance.d.ts","sourceRoot":"","sources":["../../../src/testing/conformance/schema-conformance.ts"],"names":[],"mappings":"AAoCA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAWzD;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,qBAAqB,GACzB,IAAI,CA4EN;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CAyB5E;AAED,+DAA+D;AAC/D,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CA6B1E;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,qBAAqB,GACzB,IAAI,CAyDN;AAgBD;;;;;;;;;GASG;AACH,wBAAgB,mCAAmC,CACjD,GAAG,EAAE,qBAAqB,GACzB,IAAI,CA4BN;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,qBAAqB,GACzB,IAAI,CAkBN;AAED;;;;;GAKG;AACH,wBAAgB,mCAAmC,CACjD,GAAG,EAAE,qBAAqB,GACzB,IAAI,CAgCN;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,qBAAqB,GACzB,IAAI,CAuEN;AA0FD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI,CAqEvE"}
|