@cratis/chronicle 6.18.0 → 6.20.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.
Files changed (120) hide show
  1. package/dist/eventSequences/EventSequence.d.ts.map +1 -1
  2. package/dist/eventSequences/EventSequence.js +2 -9
  3. package/dist/eventSequences/EventSequence.js.map +1 -1
  4. package/dist/eventSequences/prepareSingleAppend.d.ts +12 -0
  5. package/dist/eventSequences/prepareSingleAppend.d.ts.map +1 -0
  6. package/dist/eventSequences/prepareSingleAppend.js +22 -0
  7. package/dist/eventSequences/prepareSingleAppend.js.map +1 -0
  8. package/dist/testing/EventScenario.d.ts +29 -0
  9. package/dist/testing/EventScenario.d.ts.map +1 -0
  10. package/dist/testing/EventScenario.js +60 -0
  11. package/dist/testing/EventScenario.js.map +1 -0
  12. package/dist/testing/EventScenarioGiven.d.ts +9 -0
  13. package/dist/testing/EventScenarioGiven.d.ts.map +1 -0
  14. package/dist/testing/EventScenarioGiven.js +19 -0
  15. package/dist/testing/EventScenarioGiven.js.map +1 -0
  16. package/dist/testing/EventScenarioGivenBuilder.d.ts +9 -0
  17. package/dist/testing/EventScenarioGivenBuilder.d.ts.map +1 -0
  18. package/dist/testing/EventScenarioGivenBuilder.js +12 -0
  19. package/dist/testing/EventScenarioGivenBuilder.js.map +1 -0
  20. package/dist/testing/EventScenarioOptions.d.ts +21 -0
  21. package/dist/testing/EventScenarioOptions.d.ts.map +1 -0
  22. package/dist/testing/EventScenarioOptions.js +4 -0
  23. package/dist/testing/EventScenarioOptions.js.map +1 -0
  24. package/dist/testing/EventScenarioSeed.d.ts +5 -0
  25. package/dist/testing/EventScenarioSeed.d.ts.map +1 -0
  26. package/dist/testing/EventScenarioSeed.js +14 -0
  27. package/dist/testing/EventScenarioSeed.js.map +1 -0
  28. package/dist/testing/EventScenarioWhen.d.ts +11 -0
  29. package/dist/testing/EventScenarioWhen.d.ts.map +1 -0
  30. package/dist/testing/EventScenarioWhen.js +17 -0
  31. package/dist/testing/EventScenarioWhen.js.map +1 -0
  32. package/dist/testing/EventScenarioWhenBuilder.d.ts +9 -0
  33. package/dist/testing/EventScenarioWhenBuilder.d.ts.map +1 -0
  34. package/dist/testing/EventScenarioWhenBuilder.js +12 -0
  35. package/dist/testing/EventScenarioWhenBuilder.js.map +1 -0
  36. package/dist/testing/IReadModelProcessor.d.ts +7 -0
  37. package/dist/testing/IReadModelProcessor.d.ts.map +1 -0
  38. package/dist/testing/IReadModelProcessor.js +4 -0
  39. package/dist/testing/IReadModelProcessor.js.map +1 -0
  40. package/dist/testing/InProcessEventSequence.d.ts +49 -0
  41. package/dist/testing/InProcessEventSequence.d.ts.map +1 -0
  42. package/dist/testing/InProcessEventSequence.js +265 -0
  43. package/dist/testing/InProcessEventSequence.js.map +1 -0
  44. package/dist/testing/ReadModelScenario.d.ts +6 -8
  45. package/dist/testing/ReadModelScenario.d.ts.map +1 -1
  46. package/dist/testing/ReadModelScenario.js +50 -50
  47. package/dist/testing/ReadModelScenario.js.map +1 -1
  48. package/dist/testing/ReadModelState.d.ts +6 -0
  49. package/dist/testing/ReadModelState.d.ts.map +1 -0
  50. package/dist/testing/ReadModelState.js +4 -0
  51. package/dist/testing/ReadModelState.js.map +1 -0
  52. package/dist/testing/ReducerReadModelProcessor.d.ts +13 -0
  53. package/dist/testing/ReducerReadModelProcessor.d.ts.map +1 -0
  54. package/dist/testing/ReducerReadModelProcessor.js +38 -0
  55. package/dist/testing/ReducerReadModelProcessor.js.map +1 -0
  56. package/dist/testing/ScenarioEvent.d.ts +8 -0
  57. package/dist/testing/ScenarioEvent.d.ts.map +1 -0
  58. package/dist/testing/ScenarioEvent.js +4 -0
  59. package/dist/testing/ScenarioEvent.js.map +1 -0
  60. package/dist/testing/UnsupportedEventSequenceOperation.d.ts +5 -0
  61. package/dist/testing/UnsupportedEventSequenceOperation.d.ts.map +1 -0
  62. package/dist/testing/UnsupportedEventSequenceOperation.js +10 -0
  63. package/dist/testing/UnsupportedEventSequenceOperation.js.map +1 -0
  64. package/dist/testing/index.d.ts +8 -0
  65. package/dist/testing/index.d.ts.map +1 -1
  66. package/dist/testing/index.js +7 -0
  67. package/dist/testing/index.js.map +1 -1
  68. package/dist/testing/projections/ProjectionCapabilities.d.ts +3 -0
  69. package/dist/testing/projections/ProjectionCapabilities.d.ts.map +1 -1
  70. package/dist/testing/projections/ProjectionCapabilities.js +117 -43
  71. package/dist/testing/projections/ProjectionCapabilities.js.map +1 -1
  72. package/dist/testing/projections/ProjectionExpressionEvaluator.d.ts +9 -0
  73. package/dist/testing/projections/ProjectionExpressionEvaluator.d.ts.map +1 -0
  74. package/dist/testing/projections/ProjectionExpressionEvaluator.js +68 -0
  75. package/dist/testing/projections/ProjectionExpressionEvaluator.js.map +1 -0
  76. package/dist/testing/projections/ProjectionReadModelProcessor.d.ts +30 -0
  77. package/dist/testing/projections/ProjectionReadModelProcessor.d.ts.map +1 -0
  78. package/dist/testing/projections/ProjectionReadModelProcessor.js +142 -0
  79. package/dist/testing/projections/ProjectionReadModelProcessor.js.map +1 -0
  80. package/dist/testing/projections/ProjectionValueConverter.d.ts +13 -0
  81. package/dist/testing/projections/ProjectionValueConverter.d.ts.map +1 -0
  82. package/dist/testing/projections/ProjectionValueConverter.js +122 -0
  83. package/dist/testing/projections/ProjectionValueConverter.js.map +1 -0
  84. package/dist/testing/projections/for_ProjectionCapabilities/given/Changed.d.ts +0 -2
  85. package/dist/testing/projections/for_ProjectionCapabilities/given/Changed.d.ts.map +1 -1
  86. package/dist/testing/projections/for_ProjectionCapabilities/given/Changed.js +0 -4
  87. package/dist/testing/projections/for_ProjectionCapabilities/given/Changed.js.map +1 -1
  88. package/dist/tsconfig.tsbuildinfo +1 -1
  89. package/eventSequences/EventSequence.ts +2 -12
  90. package/eventSequences/prepareSingleAppend.ts +25 -0
  91. package/package.json +1 -1
  92. package/testing/EventScenario.fixtures.spec.ts +271 -0
  93. package/testing/EventScenario.rejections.spec.ts +307 -0
  94. package/testing/EventScenario.ts +77 -0
  95. package/testing/EventScenarioGiven.ts +16 -0
  96. package/testing/EventScenarioGivenBuilder.ts +11 -0
  97. package/testing/EventScenarioOptions.ts +20 -0
  98. package/testing/EventScenarioSeed.ts +17 -0
  99. package/testing/EventScenarioWhen.ts +16 -0
  100. package/testing/EventScenarioWhenBuilder.ts +11 -0
  101. package/testing/IReadModelProcessor.ts +10 -0
  102. package/testing/InProcessEventSequence.ts +275 -0
  103. package/testing/ReadModelScenario.spec.ts +156 -10
  104. package/testing/ReadModelScenario.ts +57 -57
  105. package/testing/ReadModelState.ts +5 -0
  106. package/testing/ReducerReadModelProcessor.ts +39 -0
  107. package/testing/ScenarioEvent.ts +7 -0
  108. package/testing/UnsupportedEventSequenceOperation.ts +10 -0
  109. package/testing/index.ts +8 -0
  110. package/testing/projections/ProjectionCapabilities.ts +100 -39
  111. package/testing/projections/ProjectionExpressionEvaluator.ts +57 -0
  112. package/testing/projections/ProjectionReadModelProcessor.fixtures.spec.ts +135 -0
  113. package/testing/projections/ProjectionReadModelProcessor.ts +147 -0
  114. package/testing/projections/ProjectionValueConverter.spec.ts +81 -0
  115. package/testing/projections/ProjectionValueConverter.ts +113 -0
  116. package/testing/projections/for_ProjectionCapabilities/given/Changed.ts +1 -3
  117. package/testing/projections/for_ProjectionCapabilities/when_rejecting_unsupported_operations.spec.ts +81 -1
  118. package/testing/projections/for_ProjectionCapabilities/when_validating_numeric_schemas.spec.ts +40 -12
  119. package/testing/projections/for_ProjectionCapabilities/when_validating_schema_boundaries.spec.ts +76 -29
  120. package/testing/projections/for_ProjectionCapabilities/when_validating_supported_operations.spec.ts +8 -35
@@ -1 +1 @@
1
- {"version":3,"file":"EventSequence.d.ts","sourceRoot":"","sources":["../../eventSequences/EventSequence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EventSequence.d.ts","sourceRoot":"","sources":["../../eventSequences/EventSequence.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
3
  import { SpanStatusCode } from '@opentelemetry/api';
4
4
  import { Guid, JsonSerializer } from '@cratis/fundamentals';
5
+ import { prepareSingleAppend } from './prepareSingleAppend.js';
5
6
  import { getEventTypeFor } from '../events/eventTypeDecorator.js';
6
7
  import { toClientEventContext } from '../events/toClientEventContext.js';
7
8
  import { Tag } from '../events/Tag.js';
@@ -47,15 +48,7 @@ export class EventSequence {
47
48
  }
48
49
  /** @inheritdoc */
49
50
  async append(eventSourceId, event, options) {
50
- const eventType = getEventTypeFor(event.constructor);
51
- const correlationId = options?.correlationId === undefined
52
- ? Guid.as(correlationIdManager.current.value)
53
- : Guid.as(options.correlationId);
54
- const content = JsonSerializer.serialize(event);
55
- // Merge static tags declared on the event type with tags supplied at append time.
56
- const tags = mergeTags(getTagsFor(event.constructor), options?.tags);
57
- const causationChain = causationManager.run(CausationType.appendEvent, { eventType: eventType.id.value }, () => causationManager.getCurrentChain());
58
- const identity = identityProvider.getCurrent();
51
+ const { eventType, correlationId, content, tags, causationChain, identity } = prepareSingleAppend(event, options);
59
52
  const metricAttributes = {
60
53
  'chronicle.event_store': this._eventStoreName,
61
54
  'chronicle.namespace': this._namespace,
@@ -1 +1 @@
1
- {"version":3,"file":"EventSequence.js","sourceRoot":"","sources":["../../eventSequences/EventSequence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EventSequence.js","sourceRoot":"","sources":["../../eventSequences/EventSequence.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { Guid } from '@cratis/fundamentals';
2
+ import type { AppendOptions } from './AppendOptions.js';
3
+ /** The production client and in-process scenario share the single-append serialization boundary. */
4
+ export declare function prepareSingleAppend(event: object, options?: AppendOptions): {
5
+ eventType: import("../index.js").EventType;
6
+ correlationId: Guid;
7
+ content: string;
8
+ tags: string[];
9
+ causationChain: readonly import("../index.js").Causation[];
10
+ identity: import("../index.js").Identity;
11
+ };
12
+ //# sourceMappingURL=prepareSingleAppend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepareSingleAppend.d.ts","sourceRoot":"","sources":["../../eventSequences/prepareSingleAppend.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAkB,MAAM,sBAAsB,CAAC;AAO5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,oGAAoG;AACpG,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa;;;;;;;EAWzE"}
@@ -0,0 +1,22 @@
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 { Guid, JsonSerializer } from '@cratis/fundamentals';
4
+ import { getEventTypeFor } from '../events/eventTypeDecorator.js';
5
+ import { getTagsFor } from '../events/tagDecorator.js';
6
+ import { mergeTags } from '../events/mergeTags.js';
7
+ import { identityProvider } from '../identity/index.js';
8
+ import { causationManager, CausationType } from '../auditing/index.js';
9
+ import { correlationIdManager } from '../correlation/index.js';
10
+ /** The production client and in-process scenario share the single-append serialization boundary. */
11
+ export function prepareSingleAppend(event, options) {
12
+ const eventType = getEventTypeFor(event.constructor);
13
+ const correlationId = options?.correlationId === undefined
14
+ ? Guid.as(correlationIdManager.current.value)
15
+ : Guid.as(options.correlationId);
16
+ const content = JsonSerializer.serialize(event);
17
+ const tags = mergeTags(getTagsFor(event.constructor), options?.tags);
18
+ const causationChain = causationManager.run(CausationType.appendEvent, { eventType: eventType.id.value }, () => causationManager.getCurrentChain());
19
+ const identity = identityProvider.getCurrent();
20
+ return { eventType, correlationId, content, tags, causationChain, identity };
21
+ }
22
+ //# sourceMappingURL=prepareSingleAppend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepareSingleAppend.js","sourceRoot":"","sources":["../../eventSequences/prepareSingleAppend.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAErG,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAG/D,oGAAoG;AACpG,MAAM,UAAU,mBAAmB,CAAC,KAAa,EAAE,OAAuB;IACtE,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,WAAuB,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,KAAK,SAAS;QACtD,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC,KAAK,CAAC;QAC7C,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,WAAuB,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACjF,MAAM,cAAc,GAAG,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,EACpG,GAAG,EAAE,CAAC,gBAAgB,CAAC,eAAe,EAAE,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,UAAU,EAAE,CAAC;IAC/C,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC;AACjF,CAAC"}
@@ -0,0 +1,29 @@
1
+ import type { AppendOptions } from '../eventSequences/AppendOptions.js';
2
+ import type { AppendResult } from '../eventSequences/AppendResult.js';
3
+ import type { EventForEventSourceId } from '../eventSequences/EventForEventSourceId.js';
4
+ import type { AppendedEvent } from '../events/AppendedEvent.js';
5
+ import type { IEventSequence } from '../eventSequences/IEventSequence.js';
6
+ import type { IEventLog } from '../eventSequences/IEventLog.js';
7
+ import type { EventScenarioOptions } from './EventScenarioOptions.js';
8
+ import { EventScenarioGivenBuilder } from './EventScenarioGivenBuilder.js';
9
+ import { EventScenarioWhenBuilder } from './EventScenarioWhenBuilder.js';
10
+ /** A kernel-free, fixture-bounded single-event append scenario. No observer runs automatically. */
11
+ export declare class EventScenario {
12
+ readonly eventSequence: IEventSequence;
13
+ readonly given: EventScenarioGivenBuilder;
14
+ readonly when: EventScenarioWhenBuilder;
15
+ constructor(options?: EventScenarioOptions);
16
+ /** Alias for the default event-log sequence only. */
17
+ get eventLog(): IEventLog;
18
+ append(source: string, event: object, options?: AppendOptions): Promise<AppendResult>;
19
+ appendMany(source: string, events: object[], options?: AppendOptions): Promise<AppendResult[]>;
20
+ appendMany(events: EventForEventSourceId[], options?: AppendOptions): Promise<AppendResult[]>;
21
+ get results(): readonly AppendResult[];
22
+ get appendedEvents(): readonly AppendedEvent[];
23
+ /** Assertion view, not a callable Promise-like then method. */
24
+ get then(): {
25
+ readonly results: readonly AppendResult[];
26
+ readonly appendedEvents: readonly AppendedEvent[];
27
+ };
28
+ }
29
+ //# sourceMappingURL=EventScenario.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenario.d.ts","sourceRoot":"","sources":["../../testing/EventScenario.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAIhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAKzE,mGAAmG;AACnG,qBAAa,aAAa;IACtB,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,yBAAyB,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;IAExC,YAAY,OAAO,GAAE,oBAAyB,EAwB7C;IAED,qDAAqD;IACrD,IAAI,QAAQ,IAAI,SAAS,CAKxB;IACK,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAE1F;IACD,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC/F,UAAU,CAAC,MAAM,EAAE,qBAAqB,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAK9F,IAAI,OAAO,IAAI,SAAS,YAAY,EAAE,CAAmE;IACzG,IAAI,cAAc,IAAI,SAAS,aAAa,EAAE,CAA0E;IAExH,+DAA+D;IAC/D,IAAI,IAAI,IAAI;QAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;QAAC,QAAQ,CAAC,cAAc,EAAE,SAAS,aAAa,EAAE,CAAA;KAAE,CAE3G;CACJ"}
@@ -0,0 +1,60 @@
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 { DefaultClientArtifactsProvider } from '../artifacts/DefaultClientArtifactsProvider.js';
4
+ import { TypeDiscoverer } from '../types/TypeDiscoverer.js';
5
+ import { EventSequenceId } from '../eventSequences/EventSequenceId.js';
6
+ import { getEventTypeMetadata } from '../events/eventTypeDecorator.js';
7
+ import { getUniqueEventMetadata, getUniquePropertyMetadata } from '../events/constraints/unique.js';
8
+ import { EventScenarioGivenBuilder } from './EventScenarioGivenBuilder.js';
9
+ import { EventScenarioWhenBuilder } from './EventScenarioWhenBuilder.js';
10
+ import { InProcessEventSequence } from './InProcessEventSequence.js';
11
+ import { registerScenarioSeed } from './EventScenarioSeed.js';
12
+ import { UnsupportedEventSequenceOperation } from './UnsupportedEventSequenceOperation.js';
13
+ /** A kernel-free, fixture-bounded single-event append scenario. No observer runs automatically. */
14
+ export class EventScenario {
15
+ eventSequence;
16
+ given;
17
+ when;
18
+ constructor(options = {}) {
19
+ const artifacts = options.artifacts ?? new DefaultClientArtifactsProvider(TypeDiscoverer.default);
20
+ const eventTypes = [...artifacts.eventTypes];
21
+ if (options.artifacts?.constraints?.length === 0 && options.constraints !== 'disabled') {
22
+ throw new UnsupportedEventSequenceOperation('artifacts.constraints', 'empty constraint catalog', 'An empty selected catalog cannot silently disable constraint discovery; set constraints: disabled explicitly.');
23
+ }
24
+ const discovered = options.artifacts?.constraints ?? new DefaultClientArtifactsProvider(TypeDiscoverer.default).constraints;
25
+ if (options.constraints !== 'disabled' && (discovered.length || eventTypes.some(type => {
26
+ const metadata = getEventTypeMetadata(type);
27
+ return getUniqueEventMetadata(type) || [...(metadata?.members.keys() ?? [])].some(key => getUniquePropertyMetadata(type, key));
28
+ }))) {
29
+ throw new UnsupportedEventSequenceOperation('artifacts.constraints', discovered.map(type => type.name).join(', ') || 'event metadata', 'Constraint definitions are rejected until kernel-backed constraint fixtures are available.');
30
+ }
31
+ if (artifacts.eventTypeMigrations?.length) {
32
+ throw new UnsupportedEventSequenceOperation('artifacts.eventTypeMigrations', artifacts.eventTypeMigrations.map(type => type.name).join(', '), 'Migrations are not fixture-backed.');
33
+ }
34
+ const sequence = new InProcessEventSequence(options, eventTypes);
35
+ this.eventSequence = sequence;
36
+ registerScenarioSeed(this, (source, event) => sequence.seed(source, event));
37
+ this.given = new EventScenarioGivenBuilder(this);
38
+ this.when = new EventScenarioWhenBuilder(this);
39
+ }
40
+ /** Alias for the default event-log sequence only. */
41
+ get eventLog() {
42
+ if (this.eventSequence.id.value !== EventSequenceId.eventLog.value) {
43
+ throw new UnsupportedEventSequenceOperation('eventLog', this.eventSequence.id.value, 'Only the default sequence is an event log.');
44
+ }
45
+ return this.eventSequence;
46
+ }
47
+ async append(source, event, options) {
48
+ return this.eventSequence.append(source, event, options);
49
+ }
50
+ async appendMany(_sourceOrEvents, _eventsOrOptions, _options) {
51
+ throw new UnsupportedEventSequenceOperation('appendMany', this.eventSequence.id.value, 'Both batch overloads require kernel-backed atomicity fixtures.');
52
+ }
53
+ get results() { return this.eventSequence.results; }
54
+ get appendedEvents() { return this.eventSequence.appendedEvents; }
55
+ /** Assertion view, not a callable Promise-like then method. */
56
+ get then() {
57
+ return { results: this.results, appendedEvents: this.appendedEvents };
58
+ }
59
+ }
60
+ //# sourceMappingURL=EventScenario.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenario.js","sourceRoot":"","sources":["../../testing/EventScenario.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { EventScenario } from './EventScenario.js';
2
+ /** Seeds exactly one event through the ordinary single-append pipeline. */
3
+ export declare class EventScenarioGiven {
4
+ private readonly _scenario;
5
+ private readonly _id;
6
+ constructor(_scenario: EventScenario, _id: string);
7
+ events(...events: object[]): Promise<void>;
8
+ }
9
+ //# sourceMappingURL=EventScenarioGiven.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenarioGiven.d.ts","sourceRoot":"","sources":["../../testing/EventScenarioGiven.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAIxD,2EAA2E;AAC3E,qBAAa,kBAAkB;IACf,OAAO,CAAC,QAAQ,CAAC,SAAS;IAAiB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAA3E,YAA6B,SAAS,EAAE,aAAa,EAAmB,GAAG,EAAE,MAAM,EAAI;IACjF,MAAM,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAI/C;CACJ"}
@@ -0,0 +1,19 @@
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 { seedScenario } from './EventScenarioSeed.js';
4
+ import { UnsupportedEventSequenceOperation } from './UnsupportedEventSequenceOperation.js';
5
+ /** Seeds exactly one event through the ordinary single-append pipeline. */
6
+ export class EventScenarioGiven {
7
+ _scenario;
8
+ _id;
9
+ constructor(_scenario, _id) {
10
+ this._scenario = _scenario;
11
+ this._id = _id;
12
+ }
13
+ async events(...events) {
14
+ if (events.length !== 1)
15
+ throw new UnsupportedEventSequenceOperation('given.events', this._id, 'Zero or multiple setup events are not supported in this increment; call events once per event.');
16
+ await seedScenario(this._scenario, this._id, events[0]);
17
+ }
18
+ }
19
+ //# sourceMappingURL=EventScenarioGiven.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenarioGiven.js","sourceRoot":"","sources":["../../testing/EventScenarioGiven.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAGrG,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,iCAAiC,EAAE,MAAM,wCAAwC,CAAC;AAE3F,2EAA2E;AAC3E,MAAM,OAAO,kBAAkB;IACE,SAAS;IAAkC,GAAG;IAA3E,YAA6B,SAAwB,EAAmB,GAAW;yBAAtD,SAAS;mBAAkC,GAAG;IAAW,CAAC;IACvF,KAAK,CAAC,MAAM,CAAC,GAAG,MAAgB;QAC5B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,iCAAiC,CAAC,cAAc,EAAE,IAAI,CAAC,GAAG,EACzF,gGAAgG,CAAC,CAAC;QACtG,MAAM,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;CACJ"}
@@ -0,0 +1,9 @@
1
+ import type { EventScenario } from './EventScenario.js';
2
+ import { EventScenarioGiven } from './EventScenarioGiven.js';
3
+ /** Selects the source for setup events. */
4
+ export declare class EventScenarioGivenBuilder {
5
+ private readonly _scenario;
6
+ constructor(_scenario: EventScenario);
7
+ forEventSource(id: string): EventScenarioGiven;
8
+ }
9
+ //# sourceMappingURL=EventScenarioGivenBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenarioGivenBuilder.d.ts","sourceRoot":"","sources":["../../testing/EventScenarioGivenBuilder.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,2CAA2C;AAC3C,qBAAa,yBAAyB;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAAtC,YAA6B,SAAS,EAAE,aAAa,EAAI;IACzD,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,CAAuD;CACxG"}
@@ -0,0 +1,12 @@
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 { EventScenarioGiven } from './EventScenarioGiven.js';
4
+ /** Selects the source for setup events. */
5
+ export class EventScenarioGivenBuilder {
6
+ _scenario;
7
+ constructor(_scenario) {
8
+ this._scenario = _scenario;
9
+ }
10
+ forEventSource(id) { return new EventScenarioGiven(this._scenario, id); }
11
+ }
12
+ //# sourceMappingURL=EventScenarioGivenBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenarioGivenBuilder.js","sourceRoot":"","sources":["../../testing/EventScenarioGivenBuilder.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAGrG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,2CAA2C;AAC3C,MAAM,OAAO,yBAAyB;IACL,SAAS;IAAtC,YAA6B,SAAwB;yBAAxB,SAAS;IAAkB,CAAC;IACzD,cAAc,CAAC,EAAU,IAAwB,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;CACxG"}
@@ -0,0 +1,21 @@
1
+ import type { Constructor } from '@cratis/fundamentals';
2
+ import type { EventSequenceId } from '../eventSequences/EventSequenceId.js';
3
+ /** Configuration captured once when constructing an event scenario. */
4
+ export interface EventScenarioOptions {
5
+ /** An isolated catalog; omitting it discovers process-wide event and constraint artifacts. */
6
+ artifacts?: {
7
+ eventTypes: Constructor[];
8
+ constraints?: Constructor[];
9
+ eventTypeMigrations?: Constructor[];
10
+ };
11
+ /** Constraint discovery is the default. Explicitly disable it only for tests without constraints. */
12
+ constraints?: 'disabled';
13
+ /** Scenario-local identifiers; only the fixture-backed defaults are supported in this increment. */
14
+ eventStore?: string;
15
+ namespace?: string;
16
+ eventSequenceId?: EventSequenceId;
17
+ /** Deterministic sources for metadata otherwise provided by the environment. */
18
+ clock?: () => Date;
19
+ correlationId?: () => string;
20
+ }
21
+ //# sourceMappingURL=EventScenarioOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenarioOptions.d.ts","sourceRoot":"","sources":["../../testing/EventScenarioOptions.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,uEAAuE;AACvE,MAAM,WAAW,oBAAoB;IACjC,8FAA8F;IAC9F,SAAS,CAAC,EAAE;QAAE,UAAU,EAAE,WAAW,EAAE,CAAC;QAAC,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC;QAAC,mBAAmB,CAAC,EAAE,WAAW,EAAE,CAAA;KAAE,CAAC;IAC5G,qGAAqG;IACrG,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,oGAAoG;IACpG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;CAChC"}
@@ -0,0 +1,4 @@
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
+ export {};
4
+ //# sourceMappingURL=EventScenarioOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenarioOptions.js","sourceRoot":"","sources":["../../testing/EventScenarioOptions.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}
@@ -0,0 +1,5 @@
1
+ import type { EventScenario } from './EventScenario.js';
2
+ /** Internal builder wiring; not exported by the testing package. */
3
+ export declare function registerScenarioSeed(scenario: EventScenario, seed: (source: string, event: object) => Promise<void>): void;
4
+ export declare function seedScenario(scenario: EventScenario, source: string, event: object): Promise<void>;
5
+ //# sourceMappingURL=EventScenarioSeed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenarioSeed.d.ts","sourceRoot":"","sources":["../../testing/EventScenarioSeed.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAIxD,oEAAoE;AACpE,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAE1H;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIlG"}
@@ -0,0 +1,14 @@
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
+ const seeders = new WeakMap();
4
+ /** Internal builder wiring; not exported by the testing package. */
5
+ export function registerScenarioSeed(scenario, seed) {
6
+ seeders.set(scenario, seed);
7
+ }
8
+ export function seedScenario(scenario, source, event) {
9
+ const seed = seeders.get(scenario);
10
+ if (!seed)
11
+ throw new Error('EventScenario setup requires a constructed scenario.');
12
+ return seed(source, event);
13
+ }
14
+ //# sourceMappingURL=EventScenarioSeed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenarioSeed.js","sourceRoot":"","sources":["../../testing/EventScenarioSeed.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAIrG,MAAM,OAAO,GAAG,IAAI,OAAO,EAAmE,CAAC;AAE/F,oEAAoE;AACpE,MAAM,UAAU,oBAAoB,CAAC,QAAuB,EAAE,IAAsD;IAChH,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,QAAuB,EAAE,MAAc,EAAE,KAAa;IAC/E,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IACnF,OAAO,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { AppendResult } from '../eventSequences/AppendResult.js';
2
+ import type { EventScenario } from './EventScenario.js';
3
+ /** A single act-phase append; the plural form is reserved for atomic batches. */
4
+ export declare class EventScenarioWhen {
5
+ private readonly _scenario;
6
+ private readonly _id;
7
+ constructor(_scenario: EventScenario, _id: string);
8
+ event(event: object): Promise<AppendResult>;
9
+ events(..._events: object[]): Promise<readonly AppendResult[]>;
10
+ }
11
+ //# sourceMappingURL=EventScenarioWhen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenarioWhen.d.ts","sourceRoot":"","sources":["../../testing/EventScenarioWhen.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,iFAAiF;AACjF,qBAAa,iBAAiB;IACd,OAAO,CAAC,QAAQ,CAAC,SAAS;IAAiB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAA3E,YAA6B,SAAS,EAAE,aAAa,EAAmB,GAAG,EAAE,MAAM,EAAI;IACjF,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAmD;IAC9F,MAAM,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAGnE;CACJ"}
@@ -0,0 +1,17 @@
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 { UnsupportedEventSequenceOperation } from './UnsupportedEventSequenceOperation.js';
4
+ /** A single act-phase append; the plural form is reserved for atomic batches. */
5
+ export class EventScenarioWhen {
6
+ _scenario;
7
+ _id;
8
+ constructor(_scenario, _id) {
9
+ this._scenario = _scenario;
10
+ this._id = _id;
11
+ }
12
+ async event(event) { return this._scenario.append(this._id, event); }
13
+ async events(..._events) {
14
+ throw new UnsupportedEventSequenceOperation('when.events/appendMany', this._id, 'Even a one-event plural action uses kernel batch semantics; batch fixtures are not included.');
15
+ }
16
+ }
17
+ //# sourceMappingURL=EventScenarioWhen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenarioWhen.js","sourceRoot":"","sources":["../../testing/EventScenarioWhen.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAIrG,OAAO,EAAE,iCAAiC,EAAE,MAAM,wCAAwC,CAAC;AAE3F,iFAAiF;AACjF,MAAM,OAAO,iBAAiB;IACG,SAAS;IAAkC,GAAG;IAA3E,YAA6B,SAAwB,EAAmB,GAAW;yBAAtD,SAAS;mBAAkC,GAAG;IAAW,CAAC;IACvF,KAAK,CAAC,KAAK,CAAC,KAAa,IAA2B,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACpG,KAAK,CAAC,MAAM,CAAC,GAAG,OAAiB;QAC7B,MAAM,IAAI,iCAAiC,CAAC,wBAAwB,EAAE,IAAI,CAAC,GAAG,EAC1E,8FAA8F,CAAC,CAAC;IACxG,CAAC;CACJ"}
@@ -0,0 +1,9 @@
1
+ import type { EventScenario } from './EventScenario.js';
2
+ import { EventScenarioWhen } from './EventScenarioWhen.js';
3
+ /** Selects the source for an act-phase append. */
4
+ export declare class EventScenarioWhenBuilder {
5
+ private readonly _scenario;
6
+ constructor(_scenario: EventScenario);
7
+ forEventSource(id: string): EventScenarioWhen;
8
+ }
9
+ //# sourceMappingURL=EventScenarioWhenBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenarioWhenBuilder.d.ts","sourceRoot":"","sources":["../../testing/EventScenarioWhenBuilder.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,kDAAkD;AAClD,qBAAa,wBAAwB;IACrB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAAtC,YAA6B,SAAS,EAAE,aAAa,EAAI;IACzD,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,CAAsD;CACtG"}
@@ -0,0 +1,12 @@
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 { EventScenarioWhen } from './EventScenarioWhen.js';
4
+ /** Selects the source for an act-phase append. */
5
+ export class EventScenarioWhenBuilder {
6
+ _scenario;
7
+ constructor(_scenario) {
8
+ this._scenario = _scenario;
9
+ }
10
+ forEventSource(id) { return new EventScenarioWhen(this._scenario, id); }
11
+ }
12
+ //# sourceMappingURL=EventScenarioWhenBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventScenarioWhenBuilder.js","sourceRoot":"","sources":["../../testing/EventScenarioWhenBuilder.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG;AAGrG,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,kDAAkD;AAClD,MAAM,OAAO,wBAAwB;IACJ,SAAS;IAAtC,YAA6B,SAAwB;yBAAxB,SAAS;IAAkB,CAAC;IACzD,cAAc,CAAC,EAAU,IAAuB,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;CACtG"}
@@ -0,0 +1,7 @@
1
+ import type { ReadModelState } from './ReadModelState.js';
2
+ import type { ScenarioEvent } from './ScenarioEvent.js';
3
+ /** Replays the complete serialized scenario history for independent event sources. */
4
+ export interface IReadModelProcessor<TReadModel extends object> {
5
+ process(events: readonly ScenarioEvent[]): Promise<Map<string, ReadModelState<TReadModel>>>;
6
+ }
7
+ //# sourceMappingURL=IReadModelProcessor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IReadModelProcessor.d.ts","sourceRoot":"","sources":["../../testing/IReadModelProcessor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,sFAAsF;AACtF,MAAM,WAAW,mBAAmB,CAAC,UAAU,SAAS,MAAM;IAC1D,OAAO,CAAC,MAAM,EAAE,SAAS,aAAa,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;CAC/F"}
@@ -0,0 +1,4 @@
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
+ export {};
4
+ //# sourceMappingURL=IReadModelProcessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IReadModelProcessor.js","sourceRoot":"","sources":["../../testing/IReadModelProcessor.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,qGAAqG"}