@sharpee/engine 0.9.113 → 1.0.8

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 (183) hide show
  1. package/action-context-factory.d.ts +12 -4
  2. package/action-context-factory.d.ts.map +1 -1
  3. package/action-context-factory.js +32 -8
  4. package/action-context-factory.js.map +1 -1
  5. package/capability-dispatch-helper.d.ts +3 -3
  6. package/capability-dispatch-helper.d.ts.map +1 -1
  7. package/capability-dispatch-helper.js +1 -1
  8. package/command-executor.d.ts +7 -6
  9. package/command-executor.d.ts.map +1 -1
  10. package/command-executor.js +5 -5
  11. package/command-executor.js.map +1 -1
  12. package/events/event-emitter.d.ts +2 -2
  13. package/events/event-emitter.d.ts.map +1 -1
  14. package/game-engine.d.ts +93 -10
  15. package/game-engine.d.ts.map +1 -1
  16. package/game-engine.js +245 -14
  17. package/game-engine.js.map +1 -1
  18. package/index.d.ts +2 -1
  19. package/index.d.ts.map +1 -1
  20. package/index.js +3 -1
  21. package/index.js.map +1 -1
  22. package/language-provider-interface.d.ts +1 -1
  23. package/language-provider-interface.d.ts.map +1 -1
  24. package/narrative/index.d.ts.map +1 -1
  25. package/narrative/narrative-settings.d.ts +1 -1
  26. package/narrative/narrative-settings.d.ts.map +1 -1
  27. package/package.json +12 -12
  28. package/parser-interface.d.ts +2 -2
  29. package/parser-interface.d.ts.map +1 -1
  30. package/platform-operations.d.ts +2 -2
  31. package/platform-operations.d.ts.map +1 -1
  32. package/platform-operations.js +1 -1
  33. package/prose-pipeline/assemble.d.ts +77 -0
  34. package/prose-pipeline/assemble.d.ts.map +1 -0
  35. package/prose-pipeline/assemble.js +96 -0
  36. package/prose-pipeline/assemble.js.map +1 -0
  37. package/prose-pipeline/decorations/index.d.ts +18 -0
  38. package/prose-pipeline/decorations/index.d.ts.map +1 -0
  39. package/prose-pipeline/decorations/index.js +24 -0
  40. package/prose-pipeline/decorations/index.js.map +1 -0
  41. package/prose-pipeline/decorations/parser.d.ts +34 -0
  42. package/prose-pipeline/decorations/parser.d.ts.map +1 -0
  43. package/prose-pipeline/decorations/parser.js +195 -0
  44. package/prose-pipeline/decorations/parser.js.map +1 -0
  45. package/prose-pipeline/decorations/platform-vocabulary.d.ts +35 -0
  46. package/prose-pipeline/decorations/platform-vocabulary.d.ts.map +1 -0
  47. package/prose-pipeline/decorations/platform-vocabulary.js +81 -0
  48. package/prose-pipeline/decorations/platform-vocabulary.js.map +1 -0
  49. package/prose-pipeline/decorations/resolver.d.ts +28 -0
  50. package/prose-pipeline/decorations/resolver.d.ts.map +1 -0
  51. package/prose-pipeline/decorations/resolver.js +39 -0
  52. package/prose-pipeline/decorations/resolver.js.map +1 -0
  53. package/prose-pipeline/decorations/types.d.ts +16 -0
  54. package/prose-pipeline/decorations/types.d.ts.map +1 -0
  55. package/prose-pipeline/decorations/types.js +17 -0
  56. package/prose-pipeline/decorations/types.js.map +1 -0
  57. package/prose-pipeline/handlers/about.d.ts +31 -0
  58. package/prose-pipeline/handlers/about.d.ts.map +1 -0
  59. package/prose-pipeline/handlers/about.js +50 -0
  60. package/prose-pipeline/handlers/about.js.map +1 -0
  61. package/prose-pipeline/handlers/audibility.d.ts +46 -0
  62. package/prose-pipeline/handlers/audibility.d.ts.map +1 -0
  63. package/prose-pipeline/handlers/audibility.js +79 -0
  64. package/prose-pipeline/handlers/audibility.js.map +1 -0
  65. package/prose-pipeline/handlers/banner.d.ts +44 -0
  66. package/prose-pipeline/handlers/banner.d.ts.map +1 -0
  67. package/prose-pipeline/handlers/banner.js +88 -0
  68. package/prose-pipeline/handlers/banner.js.map +1 -0
  69. package/prose-pipeline/handlers/client-query.d.ts +22 -0
  70. package/prose-pipeline/handlers/client-query.d.ts.map +1 -0
  71. package/prose-pipeline/handlers/client-query.js +55 -0
  72. package/prose-pipeline/handlers/client-query.js.map +1 -0
  73. package/prose-pipeline/handlers/command-failed.d.ts +24 -0
  74. package/prose-pipeline/handlers/command-failed.d.ts.map +1 -0
  75. package/prose-pipeline/handlers/command-failed.js +46 -0
  76. package/prose-pipeline/handlers/command-failed.js.map +1 -0
  77. package/prose-pipeline/handlers/domain-message.d.ts +31 -0
  78. package/prose-pipeline/handlers/domain-message.d.ts.map +1 -0
  79. package/prose-pipeline/handlers/domain-message.js +66 -0
  80. package/prose-pipeline/handlers/domain-message.js.map +1 -0
  81. package/prose-pipeline/handlers/game.d.ts +31 -0
  82. package/prose-pipeline/handlers/game.d.ts.map +1 -0
  83. package/prose-pipeline/handlers/game.js +35 -0
  84. package/prose-pipeline/handlers/game.js.map +1 -0
  85. package/prose-pipeline/handlers/generic.d.ts +27 -0
  86. package/prose-pipeline/handlers/generic.d.ts.map +1 -0
  87. package/prose-pipeline/handlers/generic.js +67 -0
  88. package/prose-pipeline/handlers/generic.js.map +1 -0
  89. package/prose-pipeline/handlers/help.d.ts +21 -0
  90. package/prose-pipeline/handlers/help.d.ts.map +1 -0
  91. package/prose-pipeline/handlers/help.js +68 -0
  92. package/prose-pipeline/handlers/help.js.map +1 -0
  93. package/prose-pipeline/handlers/implicit-take.d.ts +20 -0
  94. package/prose-pipeline/handlers/implicit-take.d.ts.map +1 -0
  95. package/prose-pipeline/handlers/implicit-take.js +26 -0
  96. package/prose-pipeline/handlers/implicit-take.js.map +1 -0
  97. package/prose-pipeline/handlers/index.d.ts +24 -0
  98. package/prose-pipeline/handlers/index.d.ts.map +1 -0
  99. package/prose-pipeline/handlers/index.js +40 -0
  100. package/prose-pipeline/handlers/index.js.map +1 -0
  101. package/prose-pipeline/handlers/revealed.d.ts +24 -0
  102. package/prose-pipeline/handlers/revealed.d.ts.map +1 -0
  103. package/prose-pipeline/handlers/revealed.js +54 -0
  104. package/prose-pipeline/handlers/revealed.js.map +1 -0
  105. package/prose-pipeline/handlers/room.d.ts +25 -0
  106. package/prose-pipeline/handlers/room.d.ts.map +1 -0
  107. package/prose-pipeline/handlers/room.js +78 -0
  108. package/prose-pipeline/handlers/room.js.map +1 -0
  109. package/prose-pipeline/handlers/types.d.ts +47 -0
  110. package/prose-pipeline/handlers/types.d.ts.map +1 -0
  111. package/prose-pipeline/handlers/types.js +15 -0
  112. package/prose-pipeline/handlers/types.js.map +1 -0
  113. package/prose-pipeline/index.d.ts +20 -0
  114. package/prose-pipeline/index.d.ts.map +1 -0
  115. package/prose-pipeline/index.js +50 -0
  116. package/prose-pipeline/index.js.map +1 -0
  117. package/prose-pipeline/pipeline.d.ts +58 -0
  118. package/prose-pipeline/pipeline.d.ts.map +1 -0
  119. package/prose-pipeline/pipeline.js +120 -0
  120. package/prose-pipeline/pipeline.js.map +1 -0
  121. package/prose-pipeline/stages/filter.d.ts +26 -0
  122. package/prose-pipeline/stages/filter.d.ts.map +1 -0
  123. package/prose-pipeline/stages/filter.js +38 -0
  124. package/prose-pipeline/stages/filter.js.map +1 -0
  125. package/prose-pipeline/stages/index.d.ts +13 -0
  126. package/prose-pipeline/stages/index.d.ts.map +1 -0
  127. package/prose-pipeline/stages/index.js +19 -0
  128. package/prose-pipeline/stages/index.js.map +1 -0
  129. package/prose-pipeline/stages/sort.d.ts +38 -0
  130. package/prose-pipeline/stages/sort.d.ts.map +1 -0
  131. package/prose-pipeline/stages/sort.js +94 -0
  132. package/prose-pipeline/stages/sort.js.map +1 -0
  133. package/prose-pipeline/types.d.ts +45 -0
  134. package/prose-pipeline/types.d.ts.map +1 -0
  135. package/prose-pipeline/types.js +23 -0
  136. package/prose-pipeline/types.js.map +1 -0
  137. package/save-restore-service.d.ts +3 -3
  138. package/save-restore-service.d.ts.map +1 -1
  139. package/save-restore-service.js +1 -1
  140. package/scene-evaluation-plugin.d.ts +2 -2
  141. package/scene-evaluation-plugin.d.ts.map +1 -1
  142. package/scene-evaluation-plugin.js +1 -1
  143. package/shared-data-keys.d.ts +3 -3
  144. package/shared-data-keys.d.ts.map +1 -1
  145. package/sound/dispatcher.d.ts +75 -0
  146. package/sound/dispatcher.d.ts.map +1 -0
  147. package/sound/dispatcher.js +122 -0
  148. package/sound/dispatcher.js.map +1 -0
  149. package/sound/index.d.ts +26 -0
  150. package/sound/index.d.ts.map +1 -0
  151. package/sound/index.js +34 -0
  152. package/sound/index.js.map +1 -0
  153. package/sound/propagation.d.ts +69 -0
  154. package/sound/propagation.d.ts.map +1 -0
  155. package/sound/propagation.js +219 -0
  156. package/sound/propagation.js.map +1 -0
  157. package/story.d.ts +31 -4
  158. package/story.d.ts.map +1 -1
  159. package/story.js.map +1 -1
  160. package/test-helpers/mock-prose-pipeline.d.ts +22 -0
  161. package/test-helpers/mock-prose-pipeline.d.ts.map +1 -0
  162. package/test-helpers/mock-prose-pipeline.js +56 -0
  163. package/test-helpers/mock-prose-pipeline.js.map +1 -0
  164. package/turn-event-processor.d.ts +3 -3
  165. package/turn-event-processor.d.ts.map +1 -1
  166. package/turn-event-processor.js +1 -1
  167. package/types.d.ts +4 -4
  168. package/types.d.ts.map +1 -1
  169. package/vocabulary-manager.d.ts +1 -1
  170. package/vocabulary-manager.d.ts.map +1 -1
  171. package/vocabulary-manager.js +1 -1
  172. package/event-adapter.d.ts +0 -44
  173. package/event-adapter.d.ts.map +0 -1
  174. package/event-adapter.js +0 -127
  175. package/event-adapter.js.map +0 -1
  176. package/event-sequencer.d.ts +0 -73
  177. package/event-sequencer.d.ts.map +0 -1
  178. package/event-sequencer.js +0 -134
  179. package/event-sequencer.js.map +0 -1
  180. package/test-helpers/mock-text-service.d.ts +0 -11
  181. package/test-helpers/mock-text-service.d.ts.map +0 -1
  182. package/test-helpers/mock-text-service.js +0 -47
  183. package/test-helpers/mock-text-service.js.map +0 -1
package/story.d.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  /**
2
2
  * Story configuration and interfaces
3
3
  */
4
- import { WorldModel, IFEntity, IGameEvent, SimpleEventHandler } from "../world-model/index";
5
- import { LanguageProvider } from "../if-domain/index";
6
- import { Parser } from "../stdlib/index";
7
- import { ISemanticEvent } from "../core/index";
4
+ import { WorldModel, IFEntity, IGameEvent, SimpleEventHandler } from '@sharpee/world-model';
5
+ import { LanguageProvider, IChannelRegistry } from '@sharpee/if-domain';
6
+ import { Parser } from '@sharpee/stdlib';
7
+ import { ISemanticEvent } from '@sharpee/core';
8
8
  import type { GameEngine } from './game-engine';
9
9
  import { NarrativeConfig } from './narrative';
10
10
  /**
@@ -23,6 +23,16 @@ export interface StoryConfig {
23
23
  * Story author(s)
24
24
  */
25
25
  author: string | string[];
26
+ /**
27
+ * Credit lines for the opening banner's `author-list` section. Each
28
+ * string becomes one `author-list`-classed paragraph. Use this when
29
+ * the banner needs distinct credit lines (e.g., a primary author
30
+ * line plus a "Ported by …" line, or multiple separate roles).
31
+ *
32
+ * When omitted, the engine falls back to a single `author-list`
33
+ * entry built from `author` (joined with ", " if it's an array).
34
+ */
35
+ credits?: string[];
26
36
  /**
27
37
  * Story version (semantic version, e.g., "1.0.0" or "1.0.0-beta")
28
38
  */
@@ -185,6 +195,23 @@ export interface Story {
185
195
  * @param engine - The fully initialized game engine
186
196
  */
187
197
  onEngineReady?(engine: GameEngine): void;
198
+ /**
199
+ * Register or override channels on the platform's channel registry
200
+ * (ADR-163 §6, §7, §14). Invoked by `engine.start()` before the
201
+ * `ChannelService` is constructed.
202
+ *
203
+ * Stories use this hook to:
204
+ * - Add story-specific channels (e.g., a `debug-stats` JSON channel
205
+ * for renderer overlays).
206
+ * - Override a standard channel by re-registering an `IOChannel`
207
+ * with the same id (last-write-wins per ADR-163 §6).
208
+ * - Register dynamic image / ambient channels via stdlib's
209
+ * `createImageChannel` / `createAmbientChannel` builders.
210
+ *
211
+ * The registry passed in is the same instance for the lifetime of
212
+ * the engine. Re-registrations persist across the session.
213
+ */
214
+ registerChannels?(registry: IChannelRegistry): void;
188
215
  }
189
216
  /**
190
217
  * Extended story class with event handling capabilities
package/story.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"story.d.ts","sourceRoot":"","sources":["../../../../../repos/sharpee/packages/engine/src/story.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"story.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/engine/src/story.ts"],"names":[],"mappings":"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"}
package/story.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"story.js","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/engine/src/story.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAyQH,kDAUC;AA9QD,0DAAsD;AAqNtD;;GAEG;AACH,MAAa,eAAe;IAC1B,MAAM,CAAc;IACZ,YAAY,CAAe;IAEnC,YAAY,MAAmB;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,IAAI,4BAAY,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,EAAE,CAAC,SAAiB,EAAE,OAA2B;QAC/C,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,SAAiB,EAAE,OAA2B;QAChD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACH,IAAI,CAAC,KAAiB;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,0DAA0D;IAC1D,eAAe,CAAC,KAAiB;QAC/B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IAED,YAAY,CAAC,KAAiB;QAC5B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;CACF;AAvCD,0CAuCC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CAAC,MAAmB;IACrD,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IAED,gFAAgF;IAChF,MAAM,YAAY,GAAG,mCAAmC,CAAC;IACzD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;IAClG,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"story.js","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/engine/src/story.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAsSH,kDAUC;AA3SD,0DAAsD;AAkPtD;;GAEG;AACH,MAAa,eAAe;IAC1B,MAAM,CAAc;IACZ,YAAY,CAAe;IAEnC,YAAY,MAAmB;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,IAAI,4BAAY,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,EAAE,CAAC,SAAiB,EAAE,OAA2B;QAC/C,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,SAAiB,EAAE,OAA2B;QAChD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACH,IAAI,CAAC,KAAiB;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,0DAA0D;IAC1D,eAAe,CAAC,KAAiB;QAC/B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IAED,YAAY,CAAC,KAAiB;QAC5B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;CACF;AAvCD,0CAuCC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CAAC,MAAmB;IACrD,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IAED,gFAAgF;IAChF,MAAM,YAAY,GAAG,mCAAmC,CAAC;IACzD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;IAClG,CAAC;AACH,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Mock `ITextService` implementation for engine tests — sub-phase 1.5.
3
+ *
4
+ * Mirrors the behavior of the legacy `MockTextService` so existing
5
+ * tests can swap to this without surprise. In sub-phase 1.6 the
6
+ * legacy `mock-text-service.ts` is deleted and engine test code
7
+ * imports from this module instead.
8
+ *
9
+ * Public interface: `MockProsePipeline`, `createMockProsePipeline`.
10
+ *
11
+ * Owner context: `@sharpee/engine` — test helpers.
12
+ *
13
+ * @see ADR-174 §Internal interfaces
14
+ */
15
+ import type { ITextService } from '../prose-pipeline/types';
16
+ import type { ITextBlock } from '@sharpee/text-blocks';
17
+ import type { ISemanticEvent } from '@sharpee/core';
18
+ export declare class MockProsePipeline implements ITextService {
19
+ processTurn(events: ISemanticEvent[]): ITextBlock[];
20
+ }
21
+ export declare function createMockProsePipeline(): ITextService;
22
+ //# sourceMappingURL=mock-prose-pipeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-prose-pipeline.d.ts","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/engine/src/test-helpers/mock-prose-pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,qBAAa,iBAAkB,YAAW,YAAY;IACpD,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,EAAE;CAgCpD;AAED,wBAAgB,uBAAuB,IAAI,YAAY,CAEtD"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ /**
3
+ * Mock `ITextService` implementation for engine tests — sub-phase 1.5.
4
+ *
5
+ * Mirrors the behavior of the legacy `MockTextService` so existing
6
+ * tests can swap to this without surprise. In sub-phase 1.6 the
7
+ * legacy `mock-text-service.ts` is deleted and engine test code
8
+ * imports from this module instead.
9
+ *
10
+ * Public interface: `MockProsePipeline`, `createMockProsePipeline`.
11
+ *
12
+ * Owner context: `@sharpee/engine` — test helpers.
13
+ *
14
+ * @see ADR-174 §Internal interfaces
15
+ */
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.MockProsePipeline = void 0;
18
+ exports.createMockProsePipeline = createMockProsePipeline;
19
+ class MockProsePipeline {
20
+ processTurn(events) {
21
+ const blocks = [];
22
+ for (const event of events) {
23
+ const data = event.data;
24
+ if (event.type === 'action.error') {
25
+ blocks.push({
26
+ key: 'error',
27
+ content: [typeof data?.message === 'string' ? data.message : 'Error occurred'],
28
+ });
29
+ }
30
+ else if (data && typeof data.messageId === 'string') {
31
+ blocks.push({
32
+ key: 'action.result',
33
+ content: [data.messageId],
34
+ });
35
+ }
36
+ else if (event.type === 'room.described') {
37
+ blocks.push({
38
+ key: 'room.description',
39
+ content: [typeof data?.description === 'string' ? data.description : 'You are in a room.'],
40
+ });
41
+ }
42
+ }
43
+ if (blocks.length === 0) {
44
+ blocks.push({
45
+ key: 'game.message',
46
+ content: ['Nothing happened.'],
47
+ });
48
+ }
49
+ return blocks;
50
+ }
51
+ }
52
+ exports.MockProsePipeline = MockProsePipeline;
53
+ function createMockProsePipeline() {
54
+ return new MockProsePipeline();
55
+ }
56
+ //# sourceMappingURL=mock-prose-pipeline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-prose-pipeline.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/engine/src/test-helpers/mock-prose-pipeline.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAyCH,0DAEC;AArCD,MAAa,iBAAiB;IAC5B,WAAW,CAAC,MAAwB;QAClC,MAAM,MAAM,GAAiB,EAAE,CAAC;QAEhC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,IAA2C,CAAC;YAC/D,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBAClC,MAAM,CAAC,IAAI,CAAC;oBACV,GAAG,EAAE,OAAO;oBACZ,OAAO,EAAE,CAAC,OAAO,IAAI,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC;iBAC/E,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;gBACtD,MAAM,CAAC,IAAI,CAAC;oBACV,GAAG,EAAE,eAAe;oBACpB,OAAO,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;iBAC1B,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBAC3C,MAAM,CAAC,IAAI,CAAC;oBACV,GAAG,EAAE,kBAAkB;oBACvB,OAAO,EAAE,CAAC,OAAO,IAAI,EAAE,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,oBAAoB,CAAC;iBAC3F,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC;gBACV,GAAG,EAAE,cAAc;gBACnB,OAAO,EAAE,CAAC,mBAAmB,CAAC;aAC/B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAjCD,8CAiCC;AAED,SAAgB,uBAAuB;IACrC,OAAO,IAAI,iBAAiB,EAAE,CAAC;AACjC,CAAC"}
@@ -4,9 +4,9 @@
4
4
  * Extracted from GameEngine as part of Phase 4 remediation.
5
5
  * Handles event enrichment, perception filtering, and event emission.
6
6
  */
7
- import { ISemanticEvent, ISemanticEventSource, IPlatformEvent } from "../core/index";
8
- import { WorldModel, IFEntity } from "../world-model/index";
9
- import { IPerceptionService } from "../stdlib/index";
7
+ import { ISemanticEvent, ISemanticEventSource, IPlatformEvent } from '@sharpee/core';
8
+ import { WorldModel, IFEntity } from '@sharpee/world-model';
9
+ import { IPerceptionService } from '@sharpee/stdlib';
10
10
  import { EngineConfig } from './types';
11
11
  /**
12
12
  * Context for event processing pipeline
@@ -1 +1 @@
1
- {"version":3,"file":"turn-event-processor.d.ts","sourceRoot":"","sources":["../../../../../repos/sharpee/packages/engine/src/turn-event-processor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,cAAc,EACd,oBAAoB,EAEpB,cAAc,EACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA6DD;;GAEG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,cAAc,EACrB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,cAAc,CAEhB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gCAAgC;IAChC,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,yCAAyC;IACzC,cAAc,EAAE,cAAc,EAAE,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;AAEhE;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;AAEtE;;GAEG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,iBAAiB,CAAC;gBAAlB,iBAAiB,CAAC,EAAE,kBAAkB,YAAA;IAGhD;;;;;;;;OAQG;IACH,mBAAmB,CACjB,MAAM,EAAE,cAAc,EAAE,EACxB,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,UAAU,GAChB,qBAAqB;IA6BxB;;;;;;;;OAQG;IACH,qBAAqB,CACnB,MAAM,EAAE,cAAc,EAAE,EACxB,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,UAAU,GAChB,qBAAqB;IA8BxB;;;;;;;;;;OAUG;IACH,UAAU,CACR,cAAc,EAAE,cAAc,EAAE,EAChC,WAAW,EAAE,oBAAoB,EACjC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,EACzC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,iBAAiB,EAC/B,gBAAgB,CAAC,EAAE,uBAAuB,GACzC,IAAI;IA4BP;;;;;OAKG;IACH,eAAe,CACb,MAAM,EAAE,cAAc,EAAE,GACvB;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;CAY5C;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,iBAAiB,CAAC,EAAE,kBAAkB,GACrC,kBAAkB,CAEpB"}
1
+ {"version":3,"file":"turn-event-processor.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/engine/src/turn-event-processor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,cAAc,EACd,oBAAoB,EAEpB,cAAc,EACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA6DD;;GAEG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,cAAc,EACrB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,cAAc,CAEhB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gCAAgC;IAChC,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,yCAAyC;IACzC,cAAc,EAAE,cAAc,EAAE,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;AAEhE;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;AAEtE;;GAEG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,iBAAiB,CAAC;gBAAlB,iBAAiB,CAAC,EAAE,kBAAkB,YAAA;IAGhD;;;;;;;;OAQG;IACH,mBAAmB,CACjB,MAAM,EAAE,cAAc,EAAE,EACxB,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,UAAU,GAChB,qBAAqB;IA6BxB;;;;;;;;OAQG;IACH,qBAAqB,CACnB,MAAM,EAAE,cAAc,EAAE,EACxB,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,UAAU,GAChB,qBAAqB;IA8BxB;;;;;;;;;;OAUG;IACH,UAAU,CACR,cAAc,EAAE,cAAc,EAAE,EAChC,WAAW,EAAE,oBAAoB,EACjC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,EACzC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,iBAAiB,EAC/B,gBAAgB,CAAC,EAAE,uBAAuB,GACzC,IAAI;IA4BP;;;;;OAKG;IACH,eAAe,CACb,MAAM,EAAE,cAAc,EAAE,GACvB;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;CAY5C;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,iBAAiB,CAAC,EAAE,kBAAkB,GACrC,kBAAkB,CAEpB"}
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.TurnEventProcessor = void 0;
10
10
  exports.processEvent = processEvent;
11
11
  exports.createTurnEventProcessor = createTurnEventProcessor;
12
- const core_1 = require("../core/index.js");
12
+ const core_1 = require("@sharpee/core");
13
13
  /**
14
14
  * Generate a unique event ID
15
15
  */
package/types.d.ts CHANGED
@@ -3,10 +3,10 @@
3
3
  *
4
4
  * The engine manages game state, turn execution, and event sequencing
5
5
  */
6
- import { ISemanticEvent } from "../core/index";
7
- import { IParsedCommand, IValidatedCommand, IFEntity, WorldModel } from "../world-model/index";
8
- import { ITextBlock } from "../text-blocks/index";
9
- export { IPerceptionService, Sense } from "../stdlib/index";
6
+ import { ISemanticEvent } from '@sharpee/core';
7
+ import { IParsedCommand, IValidatedCommand, IFEntity, WorldModel } from '@sharpee/world-model';
8
+ import { ITextBlock } from '@sharpee/text-blocks';
9
+ export { IPerceptionService, Sense } from '@sharpee/stdlib';
10
10
  /**
11
11
  * Timing data for performance tracking
12
12
  */
package/types.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../repos/sharpee/packages/engine/src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/engine/src/types.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  * Handles registering entity nouns/adjectives with the vocabulary registry
6
6
  * to enable parser noun resolution within the current scope.
7
7
  */
8
- import { IFEntity, WorldModel } from "../world-model/index";
8
+ import { IFEntity, WorldModel } from '@sharpee/world-model';
9
9
  /**
10
10
  * Manages vocabulary registration for entities in scope
11
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"vocabulary-manager.d.ts","sourceRoot":"","sources":["../../../../../repos/sharpee/packages/engine/src/vocabulary-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAG5D;;GAEG;AACH,qBAAa,iBAAiB;IAC5B;;;;;OAKG;IACH,sBAAsB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IA2BhE;;;;;;;;OAQG;IACH,qBAAqB,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;CAgBjE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,iBAAiB,CAE3D"}
1
+ {"version":3,"file":"vocabulary-manager.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/engine/src/vocabulary-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAG5D;;GAEG;AACH,qBAAa,iBAAiB;IAC5B;;;;;OAKG;IACH,sBAAsB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IA2BhE;;;;;;;;OAQG;IACH,qBAAqB,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;CAgBjE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,iBAAiB,CAE3D"}
@@ -9,7 +9,7 @@
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.VocabularyManager = void 0;
11
11
  exports.createVocabularyManager = createVocabularyManager;
12
- const stdlib_1 = require("../stdlib/index.js");
12
+ const stdlib_1 = require("@sharpee/stdlib");
13
13
  /**
14
14
  * Manages vocabulary registration for entities in scope
15
15
  */
@@ -1,44 +0,0 @@
1
- /**
2
- * Event Adapter - Converts between SemanticEvent and SequencedEvent
3
- *
4
- * This adapter handles:
5
- * - Event normalization for consistent structure
6
- * - Event enrichment pipeline for adding metadata
7
- */
8
- import { ISemanticEvent } from "../core/index";
9
- import { SequencedEvent } from './types';
10
- /**
11
- * Event normalization - ensures consistent event structure
12
- * Preserves all original properties (including requiresClientAction for platform events)
13
- */
14
- export declare function normalizeEvent(event: ISemanticEvent): ISemanticEvent;
15
- /**
16
- * Event enrichment pipeline - adds additional metadata
17
- */
18
- export declare function enrichEvent(event: ISemanticEvent, context?: EventProcessingContext): ISemanticEvent;
19
- /**
20
- * Event processing context for enrichment
21
- */
22
- export interface EventProcessingContext {
23
- turn?: number;
24
- playerId?: string;
25
- locationId?: string;
26
- }
27
- /**
28
- * Process an event through the pipeline.
29
- *
30
- * Pipeline stages:
31
- * 1. Normalization (ensure required fields, lowercase type)
32
- * 2. Enrichment (add turn info, default entities)
33
- */
34
- export declare function processEvent(event: ISemanticEvent, context?: EventProcessingContext): ISemanticEvent;
35
- /**
36
- * Convert a SemanticEvent to a SequencedEvent
37
- */
38
- export declare function toSequencedEvent(event: ISemanticEvent, turn: number, sequence: number): SequencedEvent;
39
- /**
40
- * Convert a SequencedEvent back to a SemanticEvent
41
- * Preserves all original properties (including requiresClientAction for platform events)
42
- */
43
- export declare function toSemanticEvent(event: SequencedEvent): ISemanticEvent;
44
- //# sourceMappingURL=event-adapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-adapter.d.ts","sourceRoot":"","sources":["../../../../../repos/sharpee/packages/engine/src/event-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAcpE;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,cAAc,EACrB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,cAAc,CAmChB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,cAAc,EACrB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,cAAc,CAIhB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,cAAc,EACrB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,cAAc,CAYhB;AAsBD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CASrE"}
package/event-adapter.js DELETED
@@ -1,127 +0,0 @@
1
- "use strict";
2
- /**
3
- * Event Adapter - Converts between SemanticEvent and SequencedEvent
4
- *
5
- * This adapter handles:
6
- * - Event normalization for consistent structure
7
- * - Event enrichment pipeline for adding metadata
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.normalizeEvent = normalizeEvent;
11
- exports.enrichEvent = enrichEvent;
12
- exports.processEvent = processEvent;
13
- exports.toSequencedEvent = toSequencedEvent;
14
- exports.toSemanticEvent = toSemanticEvent;
15
- /**
16
- * Event normalization - ensures consistent event structure
17
- * Preserves all original properties (including requiresClientAction for platform events)
18
- */
19
- function normalizeEvent(event) {
20
- const normalized = {
21
- ...event, // Preserve all original properties (e.g., requiresClientAction)
22
- id: event.id || generateEventId(),
23
- type: event.type.toLowerCase(),
24
- timestamp: event.timestamp || Date.now(),
25
- entities: event.entities || {},
26
- data: event.data,
27
- tags: event.tags,
28
- priority: event.priority,
29
- narrate: event.narrate
30
- };
31
- return normalized;
32
- }
33
- /**
34
- * Event enrichment pipeline - adds additional metadata
35
- */
36
- function enrichEvent(event, context) {
37
- const enriched = { ...event };
38
- if (context) {
39
- // Add turn information to data
40
- if (context.turn !== undefined && enriched.data && typeof enriched.data === 'object') {
41
- enriched.data = { ...enriched.data, turn: context.turn };
42
- }
43
- // Add player as actor if not specified
44
- if (context.playerId && !enriched.entities.actor) {
45
- enriched.entities = { ...enriched.entities, actor: context.playerId };
46
- }
47
- // Add location if not specified
48
- if (context.locationId && !enriched.entities.location) {
49
- enriched.entities = { ...enriched.entities, location: context.locationId };
50
- }
51
- }
52
- // Add default tags based on event type
53
- if (!enriched.tags) {
54
- enriched.tags = [];
55
- }
56
- // Add category tags
57
- if (enriched.type.startsWith('action.') && !enriched.tags.includes('action')) {
58
- enriched.tags = [...enriched.tags, 'action'];
59
- }
60
- else if (enriched.type.startsWith('system.') && !enriched.tags.includes('system')) {
61
- enriched.tags = [...enriched.tags, 'system'];
62
- }
63
- else if (enriched.type.startsWith('game.') && !enriched.tags.includes('game')) {
64
- enriched.tags = [...enriched.tags, 'game'];
65
- }
66
- return enriched;
67
- }
68
- /**
69
- * Process an event through the pipeline.
70
- *
71
- * Pipeline stages:
72
- * 1. Normalization (ensure required fields, lowercase type)
73
- * 2. Enrichment (add turn info, default entities)
74
- */
75
- function processEvent(event, context) {
76
- const normalized = normalizeEvent(event);
77
- const enriched = enrichEvent(normalized, context);
78
- return enriched;
79
- }
80
- /**
81
- * Convert a SemanticEvent to a SequencedEvent
82
- */
83
- function toSequencedEvent(event, turn, sequence) {
84
- const processed = processEvent(event, { turn });
85
- return {
86
- type: processed.type,
87
- data: processed.data,
88
- sequence,
89
- timestamp: new Date(processed.timestamp),
90
- turn,
91
- scope: determineScope(processed),
92
- source: processed.id
93
- };
94
- }
95
- /**
96
- * Generate a unique event ID
97
- */
98
- function generateEventId() {
99
- return `event-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
100
- }
101
- /**
102
- * Determine the scope of an event
103
- */
104
- function determineScope(event) {
105
- if (event.type.startsWith('platform.')) {
106
- return 'system';
107
- }
108
- if (event.type === 'action.error') {
109
- return 'turn';
110
- }
111
- return 'turn';
112
- }
113
- /**
114
- * Convert a SequencedEvent back to a SemanticEvent
115
- * Preserves all original properties (including requiresClientAction for platform events)
116
- */
117
- function toSemanticEvent(event) {
118
- return {
119
- ...event, // Preserve all original properties (e.g., requiresClientAction, payload)
120
- id: event.source || `${event.turn}-${event.sequence}`,
121
- type: event.type,
122
- timestamp: event.timestamp.getTime(),
123
- data: event.data,
124
- entities: event.entities || {}
125
- };
126
- }
127
- //# sourceMappingURL=event-adapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-adapter.js","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/engine/src/event-adapter.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AASH,wCAcC;AAKD,kCAsCC;AAkBD,oCAOC;AAKD,4CAgBC;AA0BD,0CASC;AA9ID;;;GAGG;AACH,SAAgB,cAAc,CAAC,KAAqB;IAClD,MAAM,UAAU,GAAmB;QACjC,GAAI,KAAa,EAAG,gEAAgE;QACpF,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,eAAe,EAAE;QACjC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE;QAC9B,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;QACxC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;QAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;IAEF,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CACzB,KAAqB,EACrB,OAAgC;IAEhC,MAAM,QAAQ,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;IAE9B,IAAI,OAAO,EAAE,CAAC;QACZ,+BAA+B;QAC/B,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrF,QAAQ,CAAC,IAAI,GAAG,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;QAC3D,CAAC;QAED,uCAAuC;QACvC,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjD,QAAQ,CAAC,QAAQ,GAAG,EAAE,GAAG,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;QACxE,CAAC;QAED,gCAAgC;QAChC,IAAI,OAAO,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtD,QAAQ,CAAC,QAAQ,GAAG,EAAE,GAAG,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;QAC7E,CAAC;IACH,CAAC;IAED,uCAAuC;IACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnB,QAAQ,CAAC,IAAI,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,oBAAoB;IACpB,IAAI,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7E,QAAQ,CAAC,IAAI,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;SAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpF,QAAQ,CAAC,IAAI,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;SAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAChF,QAAQ,CAAC,IAAI,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAWD;;;;;;GAMG;AACH,SAAgB,YAAY,CAC1B,KAAqB,EACrB,OAAgC;IAEhC,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAC9B,KAAqB,EACrB,IAAY,EACZ,QAAgB;IAEhB,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhD,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,QAAQ;QACR,SAAS,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;QACxC,IAAI;QACJ,KAAK,EAAE,cAAc,CAAC,SAAS,CAAC;QAChC,MAAM,EAAE,SAAS,CAAC,EAAE;KACrB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,eAAe;IACtB,OAAO,SAAS,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AAC1E,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,KAAqB;IAC3C,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QACvC,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAgB,eAAe,CAAC,KAAqB;IACnD,OAAO;QACL,GAAI,KAAa,EAAG,yEAAyE;QAC7F,EAAE,EAAE,KAAK,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE;QACrD,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE;QACpC,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAG,KAAa,CAAC,QAAQ,IAAI,EAAE;KACxC,CAAC;AACJ,CAAC"}
@@ -1,73 +0,0 @@
1
- /**
2
- * Event Sequencer - Manages event ordering within turns
3
- *
4
- * Ensures all events have proper sequence numbers for ordering
5
- * and grouping within a turn.
6
- */
7
- import { GameEvent, SequencedEvent } from './types';
8
- /**
9
- * Event sequencer class
10
- */
11
- declare class EventSequencer {
12
- private counter;
13
- /**
14
- * Get next sequence number
15
- */
16
- next(): number;
17
- /**
18
- * Reset turn counter (optional, for testing)
19
- */
20
- resetTurn(turn: number): void;
21
- /**
22
- * Sequence a single event
23
- */
24
- sequence(event: GameEvent, turn: number): SequencedEvent;
25
- /**
26
- * Sequence multiple events
27
- */
28
- sequenceAll(events: GameEvent[], turn: number): SequencedEvent[];
29
- }
30
- /**
31
- * Event sequence utilities
32
- */
33
- export declare class EventSequenceUtils {
34
- /**
35
- * Sort events by sequence number
36
- */
37
- static sort(events: SequencedEvent[]): SequencedEvent[];
38
- /**
39
- * Filter events by type
40
- */
41
- static filterByType(events: SequencedEvent[], type: string): SequencedEvent[];
42
- /**
43
- * Filter events by turn
44
- */
45
- static filterByTurn(events: SequencedEvent[], turn: number): SequencedEvent[];
46
- /**
47
- * Filter events by scope
48
- */
49
- static filterByScope(events: SequencedEvent[], scope: SequencedEvent['scope']): SequencedEvent[];
50
- /**
51
- * Group events by type
52
- */
53
- static groupByType(events: SequencedEvent[]): Record<string, SequencedEvent[]>;
54
- /**
55
- * Group events by turn
56
- */
57
- static groupByTurn(events: SequencedEvent[]): Record<number, SequencedEvent[]>;
58
- /**
59
- * Get latest event by type
60
- */
61
- static getLatestByType(events: SequencedEvent[], type: string): SequencedEvent | undefined;
62
- /**
63
- * Count events by type
64
- */
65
- static countByType(events: SequencedEvent[]): Record<string, number>;
66
- /**
67
- * Get events in sequence range
68
- */
69
- static getInRange(events: SequencedEvent[], start: number, end: number, inclusive?: boolean): SequencedEvent[];
70
- }
71
- export declare const eventSequencer: EventSequencer;
72
- export {};
73
- //# sourceMappingURL=event-sequencer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-sequencer.d.ts","sourceRoot":"","sources":["../../../../../repos/sharpee/packages/engine/src/event-sequencer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEpD;;GAEG;AACH,cAAM,cAAc;IAClB,OAAO,CAAC,OAAO,CAAsB;IAErC;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI7B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc;IAUxD;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,EAAE;CAGjE;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAC7B;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE;IAIvD;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,EAAE;IAI7E;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,EAAE;IAI7E;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,cAAc,EAAE;IAIhG;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;IAa9E;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;IAa9E;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAS1F;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAUpE;;OAEG;IACH,MAAM,CAAC,UAAU,CACf,MAAM,EAAE,cAAc,EAAE,EACxB,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,SAAS,GAAE,OAAc,GACxB,cAAc,EAAE;CAOpB;AAGD,eAAO,MAAM,cAAc,gBAAuB,CAAC"}