@cratis/chronicle 6.30.0 → 6.31.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/compliance/for_PIIManager/against_a_kernel/when_erasing_a_subject.integration.spec.ts +132 -0
  2. package/connection/ChronicleConnection.ts +1 -0
  3. package/connection/encodeExplicitFalse.ts +56 -0
  4. package/connection/for_encodeExplicitFalse/when_encoding_reactor_definition.spec.ts +34 -0
  5. package/connection/for_encodeExplicitFalse/when_encoding_webhook_definition.spec.ts +39 -0
  6. package/connection/for_encodeExplicitFalse/wireFields.ts +24 -0
  7. package/dist/connection/ChronicleConnection.d.ts +1 -0
  8. package/dist/connection/ChronicleConnection.d.ts.map +1 -1
  9. package/dist/connection/ChronicleConnection.js +1 -0
  10. package/dist/connection/ChronicleConnection.js.map +1 -1
  11. package/dist/connection/encodeExplicitFalse.d.ts +6 -0
  12. package/dist/connection/encodeExplicitFalse.d.ts.map +1 -0
  13. package/dist/connection/encodeExplicitFalse.js +45 -0
  14. package/dist/connection/encodeExplicitFalse.js.map +1 -0
  15. package/dist/connection/for_encodeExplicitFalse/wireFields.d.ts +6 -0
  16. package/dist/connection/for_encodeExplicitFalse/wireFields.d.ts.map +1 -0
  17. package/dist/connection/for_encodeExplicitFalse/wireFields.js +24 -0
  18. package/dist/connection/for_encodeExplicitFalse/wireFields.js.map +1 -0
  19. package/dist/testing/projections/ProjectionCapabilities.d.ts.map +1 -1
  20. package/dist/testing/projections/ProjectionCapabilities.js +8 -2
  21. package/dist/testing/projections/ProjectionCapabilities.js.map +1 -1
  22. package/dist/testing/projections/ProjectionChildrenCapabilities.d.ts +33 -0
  23. package/dist/testing/projections/ProjectionChildrenCapabilities.d.ts.map +1 -0
  24. package/dist/testing/projections/ProjectionChildrenCapabilities.js +108 -0
  25. package/dist/testing/projections/ProjectionChildrenCapabilities.js.map +1 -0
  26. package/dist/testing/projections/ProjectionReadModelProcessor.d.ts +6 -0
  27. package/dist/testing/projections/ProjectionReadModelProcessor.d.ts.map +1 -1
  28. package/dist/testing/projections/ProjectionReadModelProcessor.js +94 -36
  29. package/dist/testing/projections/ProjectionReadModelProcessor.js.map +1 -1
  30. package/dist/tsconfig.tsbuildinfo +1 -1
  31. package/events/constraints/for_Constraints/against_a_kernel/when_appending_unique_values_concurrently.integration.spec.ts +189 -0
  32. package/events/migrations/for_EventTypeMigrators/against_a_kernel/when_replaying_an_older_generation.integration.spec.ts +156 -0
  33. package/jobs/for_Jobs/against_a_kernel/when_managing_a_replay_job.integration.spec.ts +114 -0
  34. package/package.json +2 -1
  35. package/reactors/for_Reactors/against_a_kernel/when_replaying_once_only_reactors.integration.spec.ts +111 -0
  36. package/testing/ReadModelScenario.childrenFrom.spec.ts +31 -5
  37. package/testing/projections/ProjectionCapabilities.ts +10 -3
  38. package/testing/projections/ProjectionChildrenCapabilities.ts +119 -0
  39. package/testing/projections/ProjectionReadModelProcessor.ts +105 -36
  40. package/testing/projections/for_ProjectionCapabilities/when_rejecting_unsupported_children_operations.spec.ts +73 -0
  41. package/testing/projections/for_ProjectionCapabilities/when_rejecting_unsupported_operations.spec.ts +0 -3
  42. package/vitest.config.ts +2 -1
  43. package/vitest.integration.config.ts +19 -0
  44. package/webhooks/for_Webhooks/against_a_kernel/when_registering_and_removing_a_webhook.integration.spec.ts +88 -0
@@ -0,0 +1,132 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+
4
+ import { randomUUID } from 'node:crypto';
5
+ import { afterAll, beforeAll, chai, describe, it } from 'vitest';
6
+ import { field } from '@cratis/fundamentals';
7
+ import { ChronicleClient } from '../../../ChronicleClient.js';
8
+ import { ChronicleOptions } from '../../../ChronicleOptions.js';
9
+ import type { IClientArtifactsProvider } from '../../../artifacts/index.js';
10
+ import type { AppendedEvent } from '../../../events/index.js';
11
+ import { eventType } from '../../../events/index.js';
12
+ import type { AppendResult } from '../../../eventSequences/index.js';
13
+ import type { IEventStore } from '../../../IEventStore.js';
14
+ import { fromEvent } from '../../../projections/index.js';
15
+ import { reducer } from '../../../reducers/index.js';
16
+ import { pii } from '../../pii.js';
17
+ import { subject } from '../../subject.js';
18
+
19
+ chai.should();
20
+
21
+ // Runs against a real Chronicle kernel; skipped locally unless the connection string is set (see vitest.integration.config.ts).
22
+ // In CI it never skips, so a missing connection string or unreachable kernel fails instead of passing vacuously.
23
+ const connectionString = process.env.CHRONICLE_INTEGRATION_CONNECTION_STRING;
24
+
25
+ @eventType()
26
+ class PersonRegistered {
27
+ @field(String) personId = '';
28
+ @pii('The name of the person') @field(String) name = '';
29
+ @field(String) department = '';
30
+ }
31
+
32
+ // Projected by the kernel. The kernel encrypts from the read model's own schema, so the property is marked @pii here too.
33
+ @fromEvent(PersonRegistered)
34
+ class RegisteredPerson {
35
+ @pii('The name of the person') @field(String) name = '';
36
+ @field(String) department = '';
37
+ }
38
+
39
+ // Reduced in the client. @subject() tells release() which person's key protects the name.
40
+ class PersonCard {
41
+ @subject() @field(String) personId = '';
42
+ @pii('The name of the person') @field(String) name = '';
43
+ }
44
+
45
+ @reducer('', undefined, PersonCard)
46
+ class PersonCardReducer {
47
+ personRegistered(event: PersonRegistered): PersonCard {
48
+ return Object.assign(new PersonCard(), { personId: event.personId, name: event.name });
49
+ }
50
+ }
51
+
52
+ const artifacts: IClientArtifactsProvider = {
53
+ eventTypes: [PersonRegistered],
54
+ readModels: [RegisteredPerson, PersonCard],
55
+ reactors: [],
56
+ reducers: [PersonCardReducer],
57
+ seeders: [],
58
+ constraints: [],
59
+ projections: [],
60
+ webhooks: [],
61
+ eventTypeMigrations: [],
62
+ globalForHandlers: []
63
+ };
64
+
65
+ async function eventually<T>(read: () => Promise<T>, accept: (value: T) => boolean, timeoutMs = 20_000): Promise<T> {
66
+ const deadline = Date.now() + timeoutMs;
67
+ let value = await read();
68
+ while (!accept(value)) {
69
+ if (Date.now() > deadline) throw new Error(`Timed out waiting for the kernel; last value: ${JSON.stringify(value)}`);
70
+ await new Promise(resolve => setTimeout(resolve, 250));
71
+ value = await read();
72
+ }
73
+ return value;
74
+ }
75
+
76
+ describe.skipIf(!connectionString && !process.env.CI)('when erasing a subject against a kernel', () => {
77
+ const name = 'Eve Jackson';
78
+ const eventSourceId = randomUUID();
79
+ const personId = randomUUID();
80
+ let client: ChronicleClient;
81
+ let store: IEventStore;
82
+ let appended: AppendResult;
83
+ let eventBefore: AppendedEvent;
84
+ let projectedBefore: RegisteredPerson | null;
85
+ let reducedBefore: PersonCard | null;
86
+ let eventAfter: AppendedEvent;
87
+ let projectedAfter: RegisteredPerson | null;
88
+ let reducedAfter: PersonCard | null;
89
+ let appendedAfterErasure: AppendResult;
90
+ let releaseWithoutSubject: unknown;
91
+
92
+ const readEvent = async () => (await store.eventLog.getForEventSourceIdAndEventTypes(eventSourceId, [PersonRegistered]))[0];
93
+
94
+ beforeAll(async () => {
95
+ client = new ChronicleClient(ChronicleOptions.fromConnectionString(connectionString!, {
96
+ discoveryPatterns: [],
97
+ clientArtifactsProvider: artifacts
98
+ }));
99
+ store = await client.getEventStore(`PiiEndToEnd${randomUUID().replaceAll('-', '')}`);
100
+
101
+ // The event source is the registration; the explicit subject is the person the PII belongs to.
102
+ appended = await store.eventLog.append(eventSourceId, Object.assign(new PersonRegistered(), { personId, name, department: 'Accounting' }), { subject: personId });
103
+
104
+ eventBefore = await readEvent();
105
+ projectedBefore = await eventually(() => store.readModels.findInstanceById(RegisteredPerson, eventSourceId), _ => _ !== null);
106
+ reducedBefore = await eventually(() => store.readModels.findInstanceById(PersonCard, eventSourceId), _ => _ !== null);
107
+
108
+ await store.pii.deleteEncryptionKey(personId);
109
+
110
+ eventAfter = await readEvent();
111
+ projectedAfter = await store.readModels.findInstanceById(RegisteredPerson, eventSourceId);
112
+ reducedAfter = await store.readModels.findInstanceById(PersonCard, eventSourceId);
113
+ appendedAfterErasure = await store.eventLog.append(randomUUID(), Object.assign(new PersonRegistered(), { personId, name, department: 'Accounting' }), { subject: personId });
114
+ releaseWithoutSubject = await store.readModels.release(RegisteredPerson, projectedAfter!).catch((error: unknown) => error);
115
+ });
116
+
117
+ afterAll(() => client?.dispose());
118
+
119
+ it('should append the event', () => appended.isSuccess.should.be.true);
120
+ it('should record the explicit subject on the event', () => eventBefore.context.subject!.should.equal(personId));
121
+ it('should read the event released', () => eventBefore.content.name!.should.equal(name));
122
+ it('should read the projected read model released', () => projectedBefore!.name.should.equal(name));
123
+ it('should read the reduced read model released', () => reducedBefore!.name.should.equal(name));
124
+
125
+ it('should no longer reveal the name in the event', () => eventAfter.content.name!.should.not.equal(name));
126
+ it('should keep the data that is not personal in the event', () => eventAfter.content.department!.should.equal('Accounting'));
127
+ it('should no longer reveal the name in the projected read model', () => projectedAfter!.name.should.not.equal(name));
128
+ it('should keep the data that is not personal in the projected read model', () => projectedAfter!.department.should.equal('Accounting'));
129
+ it('should no longer reveal the name in the reduced read model', () => reducedAfter!.name.should.not.equal(name));
130
+ it('should reject new personal data for the erased subject', () => appendedAfterErasure.isSuccess.should.be.false);
131
+ it('should report a release that has no subject instead of returning the data', () => releaseWithoutSubject.should.be.instanceOf(Error));
132
+ });
@@ -35,6 +35,7 @@ import { EventStoreSubscriptionsDefinition } from '../eventStoreSubscriptions/co
35
35
  import { ChronicleConnectionString, type ChronicleServerAddress } from './ChronicleConnectionString.js';
36
36
  import { ChronicleServerAddressResolver } from './ChronicleServerAddressResolver.js';
37
37
  import { ChronicleServices } from './ChronicleServices.js';
38
+ import './encodeExplicitFalse.js';
38
39
  import { CompatibilityPreflight } from './CompatibilityPreflight.js';
39
40
  import { formatServerAddress } from './formatServerAddress.js';
40
41
  import type { ILoadBalancerStrategy } from './ILoadBalancerStrategy.js';
@@ -0,0 +1,56 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+
4
+ import { ReactorDefinition, WebhookDefinition } from '@cratis/chronicle.contracts';
5
+
6
+ // STOPGAP - remove once Cratis/Chronicle#4394 is fixed (tracked here as Cratis/Chronicle.TypeScript#161).
7
+ //
8
+ // The generated ts-proto contracts never write a boolean `false` (proto3 default omission), while the
9
+ // kernel's protobuf-net contracts default these flags to `true` when the field is absent. Without an
10
+ // explicit `false` on the wire, a class-level @onceOnly() reactor is still replayed and a webhook built
11
+ // with notReplayable() / notActive() keeps the defaults.
12
+ //
13
+ // This only affects the copy of @cratis/chronicle.contracts this package imports (the ESM build, since
14
+ // this package is ESM only). Another copy loaded elsewhere, for example through `require`, is not patched.
15
+
16
+ const wrapped = Symbol.for('@cratis/chronicle:explicit-false-encoding');
17
+
18
+ type Wrapped = { [wrapped]?: true };
19
+
20
+ // The contracts package bundles its own copy of @bufbuild/protobuf, so the writer type is taken from the definition.
21
+ function writeExplicitFalse<T, D extends { encode: (message: T, writer?: any) => any }>(
22
+ definition: D,
23
+ fields: readonly { property: keyof T & string; tag: number }[]
24
+ ): void {
25
+ const original = definition.encode as D['encode'] & Wrapped;
26
+ if (original[wrapped]) {
27
+ return;
28
+ }
29
+
30
+ const encode = ((message: T, writer?: Parameters<D['encode']>[1]) => {
31
+ const result = original.call(definition, message, writer);
32
+ for (const { property, tag } of fields) {
33
+ if (message[property] === false) {
34
+ result.uint32(tag).bool(false);
35
+ }
36
+ }
37
+ return result;
38
+ }) as D['encode'] & Wrapped;
39
+ encode[wrapped] = true;
40
+ definition.encode = encode;
41
+ }
42
+
43
+ /**
44
+ * Makes the generated contracts write an explicit `false` for the replayable and active flags.
45
+ * Safe to call more than once.
46
+ */
47
+ export function applyExplicitFalseEncoding(): void {
48
+ // Tag is (field number << 3) | wire type 0 (varint).
49
+ writeExplicitFalse<ReactorDefinition, typeof ReactorDefinition>(ReactorDefinition, [{ property: 'IsReplayable', tag: (4 << 3) | 0 }]);
50
+ writeExplicitFalse<WebhookDefinition, typeof WebhookDefinition>(WebhookDefinition, [
51
+ { property: 'IsReplayable', tag: (5 << 3) | 0 },
52
+ { property: 'IsActive', tag: (6 << 3) | 0 }
53
+ ]);
54
+ }
55
+
56
+ applyExplicitFalseEncoding();
@@ -0,0 +1,34 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+
4
+ import { chai, describe, it } from 'vitest';
5
+ import { ReactorDefinition, ReactorMessage } from '@cratis/chronicle.contracts';
6
+ import { applyExplicitFalseEncoding } from '../encodeExplicitFalse.js';
7
+ import { readVarintFields } from './wireFields.js';
8
+
9
+ chai.should();
10
+
11
+ const encode = (isReplayable: boolean) => ReactorDefinition.encode(ReactorDefinition.create({ ReactorId: 'reactor', IsReplayable: isReplayable })).finish();
12
+
13
+ describe('when encoding a reactor definition', () => {
14
+ it('should write an explicit false for a non-replayable reactor', () => {
15
+ readVarintFields(encode(false)).get(4)!.should.deep.equal([0]);
16
+ });
17
+
18
+ it('should write true unchanged for a replayable reactor', () => {
19
+ readVarintFields(encode(true)).get(4)!.should.deep.equal([1]);
20
+ });
21
+
22
+ it('should not duplicate the field when applied again', () => {
23
+ applyExplicitFalseEncoding();
24
+ applyExplicitFalseEncoding();
25
+ readVarintFields(encode(false)).get(4)!.should.deep.equal([0]);
26
+ });
27
+
28
+ it('should keep the explicit false when nested in a reactor message', () => {
29
+ const message = ReactorMessage.encode(ReactorMessage.create({
30
+ Content: { $case: 'Value0', Value0: { Reactor: ReactorDefinition.create({ ReactorId: 'reactor', IsReplayable: false }) } }
31
+ } as never)).finish();
32
+ Buffer.from(message).includes(Buffer.from([32, 0])).should.be.true;
33
+ });
34
+ });
@@ -0,0 +1,39 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+
4
+ import { chai, describe, it } from 'vitest';
5
+ import { WebhookDefinition } from '@cratis/chronicle.contracts';
6
+ import { applyExplicitFalseEncoding } from '../encodeExplicitFalse.js';
7
+ import { readVarintFields } from './wireFields.js';
8
+
9
+ chai.should();
10
+
11
+ const encode = (IsReplayable: boolean, IsActive: boolean) =>
12
+ readVarintFields(WebhookDefinition.encode(WebhookDefinition.create({ Identifier: 'webhook', IsReplayable, IsActive })).finish());
13
+
14
+ describe('when encoding a webhook definition', () => {
15
+ it('should write an explicit false for a non-replayable webhook', () => {
16
+ const fields = encode(false, true);
17
+ fields.get(5)!.should.deep.equal([0]);
18
+ fields.get(6)!.should.deep.equal([1]);
19
+ });
20
+
21
+ it('should write an explicit false for an inactive webhook', () => {
22
+ const fields = encode(true, false);
23
+ fields.get(5)!.should.deep.equal([1]);
24
+ fields.get(6)!.should.deep.equal([0]);
25
+ });
26
+
27
+ it('should write true unchanged for a replayable and active webhook', () => {
28
+ const fields = encode(true, true);
29
+ fields.get(5)!.should.deep.equal([1]);
30
+ fields.get(6)!.should.deep.equal([1]);
31
+ });
32
+
33
+ it('should not duplicate the fields when applied again', () => {
34
+ applyExplicitFalseEncoding();
35
+ const fields = encode(false, false);
36
+ fields.get(5)!.should.deep.equal([0]);
37
+ fields.get(6)!.should.deep.equal([0]);
38
+ });
39
+ });
@@ -0,0 +1,24 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+
4
+ import { BinaryReader } from '@bufbuild/protobuf/wire';
5
+
6
+ /**
7
+ * Reads the top-level varint fields of an encoded message, by field number. Length-delimited
8
+ * fields are skipped. A field written more than once keeps every occurrence.
9
+ */
10
+ export function readVarintFields(bytes: Uint8Array): Map<number, number[]> {
11
+ const reader = new BinaryReader(bytes);
12
+ const fields = new Map<number, number[]>();
13
+ while (reader.pos < reader.len) {
14
+ const tag = reader.uint32();
15
+ const field = tag >>> 3;
16
+ const wireType = tag & 7;
17
+ if (wireType === 0) {
18
+ fields.set(field, [...(fields.get(field) ?? []), reader.uint32()]);
19
+ } else {
20
+ reader.skip(wireType);
21
+ }
22
+ }
23
+ return fields;
24
+ }
@@ -2,6 +2,7 @@ import { type ChannelCredentials } from '@grpc/grpc-js';
2
2
  import { type ConnectionServiceClient } from '@cratis/chronicle.contracts';
3
3
  import { ChronicleConnectionString } from './ChronicleConnectionString.js';
4
4
  import { ChronicleServices } from './ChronicleServices.js';
5
+ import './encodeExplicitFalse.js';
5
6
  /**
6
7
  * Configuration options for Chronicle connection.
7
8
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ChronicleConnection.d.ts","sourceRoot":"","sources":["../../connection/ChronicleConnection.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,kBAAkB,EAAuB,MAAM,eAAe,CAAC;AAEnG,OAAO,EAsBH,KAAK,uBAAuB,EAC/B,MAAM,6BAA6B,CAAC;AAMrC,OAAO,EAAE,yBAAyB,EAA+B,MAAM,gCAAgC,CAAC;AAExG,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAO3D;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACvC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,yBAAyB,CAAC;IAEtD;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAEjC;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,mBAAoB,YAAW,iBAAiB;IAY7C,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAXrC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA4B;IAC9D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqC;IACrE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAiC;IAClE,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAwB;IAC9D,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,aAAa,CAAgB;IAErC,YAA6B,QAAQ,EAAE,0BAA0B,EAwBhE;IAED,IAAI,gBAAgB,IAAI,yBAAyB,CAEhD;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,WAAW,gEAEd;IAED,IAAI,UAAU,+DAEb;IAED,IAAI,eAAe,oEAElB;IAED,IAAI,UAAU,+DAEb;IAED,IAAI,cAAc,mEAEjB;IAED,IAAI,UAAU,+DAEb;IAED,IAAI,WAAW,gEAEd;IAED,IAAI,SAAS,8DAEZ;IAED,IAAI,uBAAuB,wFAE1B;IAED,IAAI,gBAAgB,qEAEnB;IAED,IAAI,QAAQ,6DAEX;IAED,IAAI,QAAQ,6DAEX;IAED,IAAI,WAAW,gEAEd;IAED,IAAI,UAAU,+DAEb;IAED,IAAI,iBAAiB,sEAEpB;IAED,IAAI,sBAAsB,2EAEzB;IAED,IAAI,IAAI,yDAEP;IAED,IAAI,QAAQ,6DAEX;IAED,IAAI,YAAY,iEAEf;IAED,IAAI,MAAM,2DAET;IAED,IAAI,UAAU,wEAEb;IAED,IAAI,gBAAgB,qEAEnB;IAED,IAAI,WAAW,IAAI,uBAAuB,CAEzC;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAK7B;IAEK,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAUlC;IAEK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAG/B;IAED,UAAU,IAAI,IAAI,CAGjB;IAED,OAAO,IAAI,IAAI,CAEd;YAEa,aAAa;IAoD3B,OAAO,CAAC,mBAAmB;IAmB3B,OAAO,CAAC,wBAAwB;IA0BhC,OAAO,CAAC,oBAAoB;CA4D/B"}
1
+ {"version":3,"file":"ChronicleConnection.d.ts","sourceRoot":"","sources":["../../connection/ChronicleConnection.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,kBAAkB,EAAuB,MAAM,eAAe,CAAC;AAEnG,OAAO,EAsBH,KAAK,uBAAuB,EAC/B,MAAM,6BAA6B,CAAC;AAMrC,OAAO,EAAE,yBAAyB,EAA+B,MAAM,gCAAgC,CAAC;AAExG,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,0BAA0B,CAAC;AAOlC;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACvC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,yBAAyB,CAAC;IAEtD;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAEjC;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,mBAAoB,YAAW,iBAAiB;IAY7C,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAXrC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA4B;IAC9D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqC;IACrE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAiC;IAClE,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAwB;IAC9D,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,aAAa,CAAgB;IAErC,YAA6B,QAAQ,EAAE,0BAA0B,EAwBhE;IAED,IAAI,gBAAgB,IAAI,yBAAyB,CAEhD;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,WAAW,gEAEd;IAED,IAAI,UAAU,+DAEb;IAED,IAAI,eAAe,oEAElB;IAED,IAAI,UAAU,+DAEb;IAED,IAAI,cAAc,mEAEjB;IAED,IAAI,UAAU,+DAEb;IAED,IAAI,WAAW,gEAEd;IAED,IAAI,SAAS,8DAEZ;IAED,IAAI,uBAAuB,wFAE1B;IAED,IAAI,gBAAgB,qEAEnB;IAED,IAAI,QAAQ,6DAEX;IAED,IAAI,QAAQ,6DAEX;IAED,IAAI,WAAW,gEAEd;IAED,IAAI,UAAU,+DAEb;IAED,IAAI,iBAAiB,sEAEpB;IAED,IAAI,sBAAsB,2EAEzB;IAED,IAAI,IAAI,yDAEP;IAED,IAAI,QAAQ,6DAEX;IAED,IAAI,YAAY,iEAEf;IAED,IAAI,MAAM,2DAET;IAED,IAAI,UAAU,wEAEb;IAED,IAAI,gBAAgB,qEAEnB;IAED,IAAI,WAAW,IAAI,uBAAuB,CAEzC;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAK7B;IAEK,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAUlC;IAEK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAG/B;IAED,UAAU,IAAI,IAAI,CAGjB;IAED,OAAO,IAAI,IAAI,CAEd;YAEa,aAAa;IAoD3B,OAAO,CAAC,mBAAmB;IAmB3B,OAAO,CAAC,wBAAwB;IA0BhC,OAAO,CAAC,oBAAoB;CA4D/B"}
@@ -9,6 +9,7 @@ import { ClientError, Metadata } from 'nice-grpc-common';
9
9
  import { EventStoreSubscriptionsDefinition } from '../eventStoreSubscriptions/contracts.js';
10
10
  import { ChronicleConnectionString } from './ChronicleConnectionString.js';
11
11
  import { ChronicleServerAddressResolver } from './ChronicleServerAddressResolver.js';
12
+ import './encodeExplicitFalse.js';
12
13
  import { CompatibilityPreflight } from './CompatibilityPreflight.js';
13
14
  import { formatServerAddress } from './formatServerAddress.js';
14
15
  import { createLoadBalancerStrategy } from './LoadBalancerStrategyFactory.js';
@@ -1 +1 @@
1
- {"version":3,"file":"ChronicleConnection.js","sourceRoot":"","sources":["../../connection/ChronicleConnection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChronicleConnection.js","sourceRoot":"","sources":["../../connection/ChronicleConnection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Makes the generated contracts write an explicit `false` for the replayable and active flags.
3
+ * Safe to call more than once.
4
+ */
5
+ export declare function applyExplicitFalseEncoding(): void;
6
+ //# sourceMappingURL=encodeExplicitFalse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encodeExplicitFalse.d.ts","sourceRoot":"","sources":["../../connection/encodeExplicitFalse.ts"],"names":[],"mappings":"AA0CA;;;GAGG;AACH,wBAAgB,0BAA0B,IAAI,IAAI,CAOjD"}
@@ -0,0 +1,45 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ import { ReactorDefinition, WebhookDefinition } from '@cratis/chronicle.contracts';
4
+ // STOPGAP - remove once Cratis/Chronicle#4394 is fixed (tracked here as Cratis/Chronicle.TypeScript#161).
5
+ //
6
+ // The generated ts-proto contracts never write a boolean `false` (proto3 default omission), while the
7
+ // kernel's protobuf-net contracts default these flags to `true` when the field is absent. Without an
8
+ // explicit `false` on the wire, a class-level @onceOnly() reactor is still replayed and a webhook built
9
+ // with notReplayable() / notActive() keeps the defaults.
10
+ //
11
+ // This only affects the copy of @cratis/chronicle.contracts this package imports (the ESM build, since
12
+ // this package is ESM only). Another copy loaded elsewhere, for example through `require`, is not patched.
13
+ const wrapped = Symbol.for('@cratis/chronicle:explicit-false-encoding');
14
+ // The contracts package bundles its own copy of @bufbuild/protobuf, so the writer type is taken from the definition.
15
+ function writeExplicitFalse(definition, fields) {
16
+ const original = definition.encode;
17
+ if (original[wrapped]) {
18
+ return;
19
+ }
20
+ const encode = ((message, writer) => {
21
+ const result = original.call(definition, message, writer);
22
+ for (const { property, tag } of fields) {
23
+ if (message[property] === false) {
24
+ result.uint32(tag).bool(false);
25
+ }
26
+ }
27
+ return result;
28
+ });
29
+ encode[wrapped] = true;
30
+ definition.encode = encode;
31
+ }
32
+ /**
33
+ * Makes the generated contracts write an explicit `false` for the replayable and active flags.
34
+ * Safe to call more than once.
35
+ */
36
+ export function applyExplicitFalseEncoding() {
37
+ // Tag is (field number << 3) | wire type 0 (varint).
38
+ writeExplicitFalse(ReactorDefinition, [{ property: 'IsReplayable', tag: (4 << 3) | 0 }]);
39
+ writeExplicitFalse(WebhookDefinition, [
40
+ { property: 'IsReplayable', tag: (5 << 3) | 0 },
41
+ { property: 'IsActive', tag: (6 << 3) | 0 }
42
+ ]);
43
+ }
44
+ applyExplicitFalseEncoding();
45
+ //# sourceMappingURL=encodeExplicitFalse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encodeExplicitFalse.js","sourceRoot":"","sources":["../../connection/encodeExplicitFalse.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAErG,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEnF,0GAA0G;AAC1G,EAAE;AACF,sGAAsG;AACtG,qGAAqG;AACrG,wGAAwG;AACxG,yDAAyD;AACzD,EAAE;AACF,uGAAuG;AACvG,2GAA2G;AAE3G,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;AAIxE,qHAAqH;AACrH,SAAS,kBAAkB,CACvB,UAAa,EACb,MAA8D;IAE9D,MAAM,QAAQ,GAAG,UAAU,CAAC,MAA+B,CAAC;IAC5D,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACpB,OAAO;IACX,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,CAAC,OAAU,EAAE,MAAmC,EAAE,EAAE;QAChE,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1D,KAAK,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,MAAM,EAAE,CAAC;YACrC,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,KAAK,EAAE,CAAC;gBAC9B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC,CAA0B,CAAC;IAC5B,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACvB,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC;AAC/B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,0BAA0B;IACtC,qDAAqD;IACrD,kBAAkB,CAA8C,iBAAiB,EAAE,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACtI,kBAAkB,CAA8C,iBAAiB,EAAE;QAC/E,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE;QAC/C,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE;KAC9C,CAAC,CAAC;AACP,CAAC;AAED,0BAA0B,EAAE,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Reads the top-level varint fields of an encoded message, by field number. Length-delimited
3
+ * fields are skipped. A field written more than once keeps every occurrence.
4
+ */
5
+ export declare function readVarintFields(bytes: Uint8Array): Map<number, number[]>;
6
+ //# sourceMappingURL=wireFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wireFields.d.ts","sourceRoot":"","sources":["../../../connection/for_encodeExplicitFalse/wireFields.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAczE"}
@@ -0,0 +1,24 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+ import { BinaryReader } from '@bufbuild/protobuf/wire';
4
+ /**
5
+ * Reads the top-level varint fields of an encoded message, by field number. Length-delimited
6
+ * fields are skipped. A field written more than once keeps every occurrence.
7
+ */
8
+ export function readVarintFields(bytes) {
9
+ const reader = new BinaryReader(bytes);
10
+ const fields = new Map();
11
+ while (reader.pos < reader.len) {
12
+ const tag = reader.uint32();
13
+ const field = tag >>> 3;
14
+ const wireType = tag & 7;
15
+ if (wireType === 0) {
16
+ fields.set(field, [...(fields.get(field) ?? []), reader.uint32()]);
17
+ }
18
+ else {
19
+ reader.skip(wireType);
20
+ }
21
+ }
22
+ return fields;
23
+ }
24
+ //# sourceMappingURL=wireFields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wireFields.js","sourceRoot":"","sources":["../../../connection/for_encodeExplicitFalse/wireFields.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAErG,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAiB;IAC9C,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC3C,OAAO,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,GAAG,KAAK,CAAC,CAAC;QACxB,MAAM,QAAQ,GAAG,GAAG,GAAG,CAAC,CAAC;QACzB,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACjB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACvE,CAAC;aAAM,CAAC;YACJ,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectionCapabilities.d.ts","sourceRoot":"","sources":["../../../testing/projections/ProjectionCapabilities.ts"],"names":[],"mappings":"AAGA,OAAO,EAAW,KAAK,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEjF,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AAOxG,gGAAgG;AAChG,qBAAa,sBAAsB;IAC/B;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,6BAA6B,EAAE,UAAU,EAAE,oBAAoB,GAAG,IAAI,CA6F/F;IAED,OAAO,CAAC,MAAM,CAAC,YAAY;IAa3B,OAAO,CAAC,MAAM,CAAC,YAAY;IA0E3B,OAAO,CAAC,MAAM,CAAC,UAAU;IAczB,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAuBhC,OAAO,CAAC,MAAM,CAAC,UAAU;IAIzB,OAAO,CAAC,MAAM,CAAC,OAAO;IAKtB,OAAO,CAAC,MAAM,CAAC,eAAe;IAS9B,OAAO,CAAC,MAAM,CAAC,WAAW;CAiB7B"}
1
+ {"version":3,"file":"ProjectionCapabilities.d.ts","sourceRoot":"","sources":["../../../testing/projections/ProjectionCapabilities.ts"],"names":[],"mappings":"AAGA,OAAO,EAAW,KAAK,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEjF,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AAQxG,gGAAgG;AAChG,qBAAa,sBAAsB;IAC/B;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,6BAA6B,EAAE,UAAU,EAAE,oBAAoB,GAAG,IAAI,CAmG/F;IAED,OAAO,CAAC,MAAM,CAAC,YAAY;IAa3B,OAAO,CAAC,MAAM,CAAC,YAAY;IA0E3B,OAAO,CAAC,MAAM,CAAC,UAAU;IAczB,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAuBhC,OAAO,CAAC,MAAM,CAAC,UAAU;IAIzB,OAAO,CAAC,MAAM,CAAC,OAAO;IAKtB,OAAO,CAAC,MAAM,CAAC,eAAe;IAS9B,OAAO,CAAC,MAAM,CAAC,WAAW;CAiB7B"}
@@ -4,6 +4,7 @@ import { AutoMap } from '@cratis/chronicle.contracts';
4
4
  import { EventSequenceId } from '../../eventSequences/EventSequenceId.js';
5
5
  import { eventContractPath } from '../../projections/eventContractPath.js';
6
6
  import { getEventTypeMapKey } from '../../projections/modelBound/childrenAndNestedBuilder.js';
7
+ import { ProjectionChildrenCapabilities } from './ProjectionChildrenCapabilities.js';
7
8
  import { UnsupportedProjectionOperation } from './UnsupportedProjectionOperation.js';
8
9
  /** Validates *all* subscribed operations against the bounded scenario subset, before replay. */
9
10
  export class ProjectionCapabilities {
@@ -36,12 +37,12 @@ export class ProjectionCapabilities {
36
37
  reject('SubscribesToAllEvents', 'subscribe-to-all projections require a kernel-backed test');
37
38
  if (wire.EventSequenceId !== EventSequenceId.eventLog.value)
38
39
  reject('EventSequenceId', 'non-default event sequences require a kernel-backed test');
39
- for (const section of ['Join', 'Children', 'Nested', 'RemovedWithJoin']) {
40
+ for (const section of ['Join', 'Nested', 'RemovedWithJoin']) {
40
41
  const value = wire[section];
41
42
  const paths = Array.isArray(value) ? value.map((entry) => eventContractPath(section, entry.Key))
42
43
  : Object.keys(value ?? {}).map(property => `${section}.${property}`);
43
44
  if (paths.length)
44
- reject(paths[0], `${section === 'Children' ? 'children projections' : section === 'Nested' ? 'nested projections' : section === 'Join' ? 'joins' : 'removedWithJoin'} require a kernel-backed test`);
45
+ reject(paths[0], `${section === 'Nested' ? 'nested projections' : section === 'Join' ? 'joins' : 'removedWithJoin'} require a kernel-backed test`);
45
46
  }
46
47
  if (wire.FromEvery?.length)
47
48
  reject('FromEvery', 'derivative projections require a kernel-backed test');
@@ -123,6 +124,11 @@ export class ProjectionCapabilities {
123
124
  this.checkAutoMap(schema, eventSchema, properties, wire.NoAutoMapProperties ?? [], path, reject);
124
125
  }
125
126
  }
127
+ ProjectionChildrenCapabilities.validate(wire.Children ?? {}, {
128
+ schema: schema, rootAutoMap: wire.AutoMap, hasInitialModelState: Object.keys(initial).length > 0, from, removedWith, requireEventSchema, reject,
129
+ declarationFor: path => provenance.find(entry => entry.contractPath === path)?.declaration,
130
+ checkMapping: (modelSchema, eventSchema, destination, expression, path) => this.checkMapping(modelSchema, eventSchema, destination, expression, path, reject)
131
+ });
126
132
  }
127
133
  static checkAutoMap(modelSchema, eventSchema, explicit, exclusions, path, reject) {
128
134
  for (const [destination] of Object.entries(modelSchema.properties ?? {})) {
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectionCapabilities.js","sourceRoot":"","sources":["../../../testing/projections/ProjectionCapabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProjectionCapabilities.js","sourceRoot":"","sources":["../../../testing/projections/ProjectionCapabilities.ts"],"names":[],"mappings":"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"}