@pairlobby/fixtures 0.32.0 → 0.33.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/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  # @pairlobby/fixtures
2
2
 
3
- Part of [PairLobby](https://github.com/PairLobby/app), built from `fixtures` at version 0.32.0. See that repository for documentation.
3
+ Part of [PairLobby](https://github.com/PairLobby/app), built from `fixtures` at version 0.33.0. See that repository for documentation.
4
4
 
5
5
  Licensed under the [Elastic License 2.0](LICENSE): you may use, copy, modify and distribute it, but may not offer it to others as a hosted or managed service.
@@ -1 +1 @@
1
- {"version":3,"file":"admin-contract.d.ts","sourceRoot":"","sources":["../src/admin-contract.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAIhD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,GAAG,IAAI,CA6D7E"}
1
+ {"version":3,"file":"admin-contract.d.ts","sourceRoot":"","sources":["../src/admin-contract.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAIhD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,GAAG,IAAI,CA+D7E"}
@@ -44,9 +44,11 @@ export function runAdminContract(label, makeStore) {
44
44
  await expect(service.setLocked(roomId, member.credential, true)).rejects.toMatchObject({ code: 'unauthorized' });
45
45
  await service.setMuted(roomId, owner, second.id, true);
46
46
  await expect(service.setLocked(roomId, second.credential, true)).rejects.toMatchObject({ code: 'participant_muted' });
47
+ await expect(service.delete(roomId, second.credential)).rejects.toMatchObject({ code: 'participant_muted' });
47
48
  await service.setMuted(roomId, owner, second.id, false);
48
49
  await service.leave(roomId, second.credential);
49
50
  await expect(service.setLocked(roomId, second.credential, true)).rejects.toMatchObject({ code: 'participant_revoked' });
51
+ await expect(service.delete(roomId, second.credential)).rejects.toMatchObject({ code: 'participant_revoked' });
50
52
  });
51
53
  test('demotion survives retries, service restart and reuse of an old admin invite', async () => {
52
54
  const admin = await join('controller');
@@ -1 +1 @@
1
- {"version":3,"file":"admin-contract.js","sourceRoot":"","sources":["../src/admin-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"admin-contract.js","sourceRoot":"","sources":["../src/admin-contract.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { StoreFactory } from './contract.js';
2
+ /** Every adapter must fence eventless changes as well as transcript appends. */
3
+ export declare function runAtomicContract(label: string, makeStore: StoreFactory): void;
4
+ //# sourceMappingURL=atomic-contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atomic-contract.d.ts","sourceRoot":"","sources":["../src/atomic-contract.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAKhD,gFAAgF;AAChF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,GAAG,IAAI,CAqE9E"}
@@ -0,0 +1,70 @@
1
+ import { newCredential, newId } from '@pairlobby/protocol';
2
+ import { appendEvent, emptyMutation } from '@pairlobby/room-core';
3
+ import { RoomService } from '@pairlobby/server-core';
4
+ import { afterEach, beforeEach, describe, expect, test } from 'vitest';
5
+ /** Every adapter must fence eventless changes as well as transcript appends. */
6
+ export function runAtomicContract(label, makeStore) {
7
+ describe(`${label} / atomic room revisions`, () => {
8
+ let store;
9
+ let service;
10
+ let roomId;
11
+ let owner;
12
+ let controller;
13
+ let first;
14
+ let second;
15
+ beforeEach(async () => {
16
+ store = makeStore();
17
+ service = new RoomService(store, undefined, undefined, undefined, { receiptMode: 'watermark' });
18
+ owner = newCredential('participant');
19
+ controller = newCredential('controller');
20
+ roomId = (await service.createRoom({ name: 'atomic', displayName: 'owner', kind: 'human', participantCredential: owner, controllerCredential: controller })).roomId;
21
+ const join = async (name) => {
22
+ const invite = await service.mintInvite(roomId, controller, 'member');
23
+ const credential = newCredential('participant');
24
+ const joined = await service.redeemInvite({ code: invite.code, attemptId: newId('attempt'), participantCredential: credential, displayName: name, kind: 'agent' });
25
+ return { id: joined.participantId, credential };
26
+ };
27
+ first = await join('first');
28
+ second = await join('second');
29
+ });
30
+ afterEach(() => store.close?.());
31
+ test('concurrent receipt advances preserve both participants and distinct revisions', async () => {
32
+ const other = new RoomService(store, undefined, undefined, undefined, { receiptMode: 'watermark' });
33
+ const seq = (await service.snapshot(roomId, owner)).latestSeq;
34
+ const results = await Promise.allSettled([
35
+ service.receipt(roomId, first.credential, seq),
36
+ other.receipt(roomId, second.credential, seq)
37
+ ]);
38
+ expect(results.map((result) => result.status)).toEqual(['fulfilled', 'fulfilled']);
39
+ const page = await service.read(roomId, owner, seq, 10, 0);
40
+ expect(page.receipts?.map((mark) => mark.participantId).sort()).toEqual([first.id, second.id].sort());
41
+ expect(new Set(page.receipts?.map((mark) => mark.revision)).size).toBe(2);
42
+ });
43
+ test('an event append computed before a receipt cannot overwrite that receipt', async () => {
44
+ const view = (await store.loadRoom(roomId));
45
+ await service.receipt(roomId, first.credential, view.room.nextSeq - 1);
46
+ const { room, event } = appendEvent(view.room, { senderId: null, idempotencyKey: null, recipientId: null, replyTo: null, body: { type: 'room.renamed', payload: { name: 'stale', previousName: view.room.name } } }, { now: Date.now(), newEventId: () => newId('event') });
47
+ await expect(store.apply(emptyMutation(room, event), null)).rejects.toBeDefined();
48
+ expect((await service.read(roomId, owner, 0, 10, 0)).receipts).toHaveLength(1);
49
+ });
50
+ test('an eventless update computed before a receipt cannot overwrite that receipt', async () => {
51
+ const view = (await store.loadRoom(roomId));
52
+ await service.receipt(roomId, first.credential, view.room.nextSeq - 1);
53
+ await expect(store.updateTurns(view.room, [], view.room.turnRevision ?? 0)).rejects.toMatchObject({ code: 'turn_conflict' });
54
+ });
55
+ test('later watermarks preserve the first receipt time and apply to completed replies', async () => {
56
+ let now = 10_000;
57
+ const clocked = new RoomService(store, () => now, undefined, undefined, { receiptMode: 'watermark' });
58
+ const ask = await clocked.send(roomId, owner, { type: 'message', recipientId: first.id, payload: { text: 'question', priority: 'normal' }, idempotencyKey: newId('event') });
59
+ await clocked.receipt(roomId, first.credential, ask.event.seq);
60
+ now += 1000;
61
+ const reply = await clocked.send(roomId, first.credential, { type: 'message', recipientId: ask.event.senderId, replyTo: ask.event.eventId, payload: { text: 'answer', priority: 'normal' }, idempotencyKey: newId('event') });
62
+ await clocked.receipt(roomId, owner, reply.event.seq);
63
+ await clocked.receipt(roomId, first.credential, reply.event.seq);
64
+ expect((await clocked.request(roomId, owner, ask.event.eventId)).receivedAt).toBe(10_000);
65
+ expect((await clocked.request(roomId, owner, reply.event.eventId)).receivedAt).toBe(11_000);
66
+ expect((await store.messageRequest(roomId, ask.event.eventId))?.receivedAt).toBe(10_000);
67
+ });
68
+ });
69
+ }
70
+ //# sourceMappingURL=atomic-contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atomic-contract.js","sourceRoot":"","sources":["../src/atomic-contract.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"auto-close-contract.d.ts","sourceRoot":"","sources":["../src/auto-close-contract.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAQhD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,GAAG,IAAI,CA8MjF"}
1
+ {"version":3,"file":"auto-close-contract.d.ts","sourceRoot":"","sources":["../src/auto-close-contract.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAQhD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,GAAG,IAAI,CA+MjF"}
@@ -177,6 +177,7 @@ export function runAutoCloseContract(label, makeStore) {
177
177
  clock.advance(10 * MINUTE);
178
178
  expect((await service.closeDueRooms()).closed).toBe(0);
179
179
  await expectCode('room_expired', () => say(human));
180
+ expect(await service.closeDueRooms()).toMatchObject({ closed: 0, more: false, nextAt: null });
180
181
  });
181
182
  test('test_the_sweep_reports_the_next_deadline_and_closing_keeps_history', async () => {
182
183
  await setPolicy({ mode: 'inactivity', afterMs: 10 * MINUTE });
@@ -1 +1 @@
1
- {"version":3,"file":"auto-close-contract.js","sourceRoot":"","sources":["../src/auto-close-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-close-contract.js","sourceRoot":"","sources":["../src/auto-close-contract.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAQ,iBAAiB,EAAC,MAAM,cAAc,CAAC;AAc3D,MAAM,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC;AAEnD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,GAAG,IAAI,CA2vB5E"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAQ,iBAAiB,EAAC,MAAM,cAAc,CAAC;AAc3D,MAAM,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC;AAEnD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,GAAG,IAAI,CA4vB5E"}
package/dist/contract.js CHANGED
@@ -11,6 +11,7 @@ import { runGroupContract } from './group-contract.js';
11
11
  import { runAdminContract } from './admin-contract.js';
12
12
  import { runAutoCloseContract } from './auto-close-contract.js';
13
13
  import { runInterruptContract } from './interrupt-contract.js';
14
+ import { runAtomicContract } from './atomic-contract.js';
14
15
  import { FakeAgent } from './fake-agent.js';
15
16
  import { RoomHarness, fixedClock } from './harness.js';
16
17
  import { sampleHandover } from './handover-samples.js';
@@ -32,6 +33,7 @@ export function runRoomContract(label, makeStore) {
32
33
  runAdminContract(label, makeStore);
33
34
  runAutoCloseContract(label, makeStore);
34
35
  runInterruptContract(label, makeStore);
36
+ runAtomicContract(label, makeStore);
35
37
  describe(label, () => {
36
38
  const opened = [];
37
39
  function track(harness) {
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"faulty-store.d.ts","sourceRoot":"","sources":["../src/faulty-store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,cAAc,CAAC;AAEpD,MAAM,WAAW,MAAM;IACnB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2EAA2E;IAC3E,sBAAsB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,qBAAa,WAAY,YAAW,iBAAiB;IACjD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAM;IAC7B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;gBAE9B,KAAK,EAAE,iBAAiB;IA2B9B,KAAK,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,GAAG,UAAU,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAQ9F,cAAc,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC,GAAG,UAAU,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IAQ/H,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAIpD,KAAK,IAAI,IAAI;CAGhB;AAED,MAAM,WAAW,WAAY,SAAQ,iBAAiB;CAAG"}
1
+ {"version":3,"file":"faulty-store.d.ts","sourceRoot":"","sources":["../src/faulty-store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,cAAc,CAAC;AAEpD,MAAM,WAAW,MAAM;IACnB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2EAA2E;IAC3E,sBAAsB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,qBAAa,WAAY,YAAW,iBAAiB;IACjD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAM;IAC7B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;gBAE9B,KAAK,EAAE,iBAAiB;IA6B9B,KAAK,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,GAAG,UAAU,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAQ9F,cAAc,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC,GAAG,UAAU,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IAQ/H,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAIpD,KAAK,IAAI,IAAI;CAGhB;AAED,MAAM,WAAW,WAAY,SAAQ,iBAAiB;CAAG"}
@@ -9,6 +9,7 @@ export class FaultyStore {
9
9
  for (const key of [
10
10
  'createRoom',
11
11
  'loadRoom',
12
+ 'roomHead',
12
13
  'readEvents',
13
14
  'eventBySeq',
14
15
  'eventById',
@@ -22,6 +23,7 @@ export class FaultyStore {
22
23
  'groupRequests',
23
24
  'updateTurns',
24
25
  'messageRequests',
26
+ 'pendingRequestCount',
25
27
  'setLifecycle',
26
28
  'deleteRoom',
27
29
  'dueAutoCloses',
@@ -1 +1 @@
1
- {"version":3,"file":"faulty-store.js","sourceRoot":"","sources":["../src/faulty-store.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,gFAAgF;AAChF,gCAAgC;AAWhC,MAAM,OAAO,WAAW;IACX,MAAM,GAAW,EAAE,CAAC;IACZ,KAAK,CAAoB;IAE1C,YAAY,KAAwB;QAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,KAAK,MAAM,GAAG,IAAI;YACd,YAAY;YACZ,UAAU;YACV,YAAY;YACZ,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,WAAW;YACX,gBAAgB;YAChB,eAAe;YACf,yBAAyB;YACzB,WAAW;YACX,gBAAgB;YAChB,eAAe;YACf,aAAa;YACb,iBAAiB;YACjB,cAAc;YACd,YAAY;YACZ,eAAe;YACf,iBAAiB;SACX,EAAE,CAAC;YACR,IAAgC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAe,EAAE,EAAE,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAqC,CAAC,GAAG,IAAI,CAAC,CAAC;QACnI,CAAC;IACL,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAG,IAA4C;QACvD,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,GAAG,IAAqD;QACzE,IAAI,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,sBAAsB,GAAG,KAAK,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,iBAAiB,CAAC,MAAc,EAAE,GAAW;QACzC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK;QACD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;IACzB,CAAC;CACJ"}
1
+ {"version":3,"file":"faulty-store.js","sourceRoot":"","sources":["../src/faulty-store.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,gFAAgF;AAChF,gCAAgC;AAWhC,MAAM,OAAO,WAAW;IACX,MAAM,GAAW,EAAE,CAAC;IACZ,KAAK,CAAoB;IAE1C,YAAY,KAAwB;QAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,KAAK,MAAM,GAAG,IAAI;YACd,YAAY;YACZ,UAAU;YACV,UAAU;YACV,YAAY;YACZ,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,WAAW;YACX,gBAAgB;YAChB,eAAe;YACf,yBAAyB;YACzB,WAAW;YACX,gBAAgB;YAChB,eAAe;YACf,aAAa;YACb,iBAAiB;YACjB,qBAAqB;YACrB,cAAc;YACd,YAAY;YACZ,eAAe;YACf,iBAAiB;SACX,EAAE,CAAC;YACR,IAAgC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAe,EAAE,EAAE,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAqC,CAAC,GAAG,IAAI,CAAC,CAAC;QACnI,CAAC;IACL,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAG,IAA4C;QACvD,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,GAAG,IAAqD;QACzE,IAAI,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,sBAAsB,GAAG,KAAK,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,iBAAiB,CAAC,MAAc,EAAE,GAAW;QACzC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK;QACD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;IACzB,CAAC;CACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"file-contract.d.ts","sourceRoot":"","sources":["../src/file-contract.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAYhD,kGAAkG;AAClG,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,QAkFrE"}
1
+ {"version":3,"file":"file-contract.d.ts","sourceRoot":"","sources":["../src/file-contract.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAYhD,kGAAkG;AAClG,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,QAsHrE"}
@@ -56,6 +56,40 @@ export function runFileContract(label, makeStore) {
56
56
  expect(fetched.bytes.findIndex((byte, index) => byte !== bytes[index])).toBe(-1);
57
57
  expect(fetched.file.sha256).toBe(file.sha256);
58
58
  });
59
+ test('staged streams reserve quota, stay invisible, and finalize only after fresh authorization', async () => {
60
+ let release = () => { };
61
+ let started = () => { };
62
+ const waiting = new Promise((resolve) => { started = resolve; });
63
+ const finish = new Promise((resolve) => { release = resolve; });
64
+ const body = new ReadableStream({
65
+ async pull(sink) {
66
+ started();
67
+ await finish;
68
+ sink.enqueue(new Uint8Array([1, 2, 3]));
69
+ sink.close();
70
+ }
71
+ }, { highWaterMark: 0 });
72
+ const outcome = service.uploadFileStream(roomId, bob, { name: 'partial.bin', mediaType: '', size: 3, body }).then(() => null, (error) => error);
73
+ await waiting;
74
+ expect(await store.files.usedBytes(roomId)).toBe(3);
75
+ expect((await service.listFiles(roomId, alice)).files).toEqual([]);
76
+ const participant = (await service.snapshot(roomId, bob)).participants.find((entry) => entry.displayName === 'bob');
77
+ await service.setMuted(roomId, controller, participant.participantId, true);
78
+ release();
79
+ expect(await outcome).toMatchObject({ code: 'participant_muted' });
80
+ expect(await store.files.usedBytes(roomId)).toBe(0);
81
+ });
82
+ test('short and oversized streams release their reservations and store no completed file', async () => {
83
+ for (const length of [2, 4]) {
84
+ const body = new ReadableStream({ start(sink) { sink.enqueue(new Uint8Array(length)); sink.close(); } });
85
+ await expect(service.uploadFileStream(roomId, alice, { name: 'wrong.bin', mediaType: '', size: 3, body })).rejects.toThrow('declared byte length');
86
+ expect(await store.files.usedBytes(roomId)).toBe(0);
87
+ }
88
+ const bytes = binary(2 * 1024 * 1024 + 7);
89
+ const file = await service.uploadFileStream(roomId, alice, { name: 'complete.bin', mediaType: '', size: bytes.byteLength, body: new Response(bytes).body });
90
+ const result = await service.downloadFile(roomId, alice, file.fileId);
91
+ expect(result.bytes.findIndex((byte, index) => byte !== bytes[index])).toBe(-1);
92
+ });
59
93
  test('usage counts sent and pending files against the room limit, and a refused upload stores nothing', async () => {
60
94
  await create({ ...DEFAULT_ROOM_POLICY, maxRetainedFileBytes: 10 });
61
95
  await sendWith([await upload('a.bin', binary(6))]);
@@ -1 +1 @@
1
- {"version":3,"file":"file-contract.js","sourceRoot":"","sources":["../src/file-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-contract.js","sourceRoot":"","sources":["../src/file-contract.ts"],"names":[],"mappings":"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"}