@oasys/oecs 0.5.3 → 0.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/CHANGELOG.md +194 -28
  2. package/README.md +198 -145
  3. package/dist/core/ecs/access_check.d.cts +3 -3
  4. package/dist/core/ecs/access_check.d.ts +3 -3
  5. package/dist/core/ecs/archetype.d.cts +103 -43
  6. package/dist/core/ecs/archetype.d.ts +103 -43
  7. package/dist/core/ecs/archetype.d.ts.map +1 -1
  8. package/dist/core/ecs/archetype_graph.d.cts +8 -8
  9. package/dist/core/ecs/archetype_graph.d.ts +8 -8
  10. package/dist/core/ecs/archetype_graph.d.ts.map +1 -1
  11. package/dist/core/ecs/builtin_relations.d.cts +1 -1
  12. package/dist/core/ecs/builtin_relations.d.ts +1 -1
  13. package/dist/core/ecs/command_log.d.cts +4 -4
  14. package/dist/core/ecs/command_log.d.ts +4 -4
  15. package/dist/core/ecs/command_log.d.ts.map +1 -1
  16. package/dist/core/ecs/component.d.cts +4 -4
  17. package/dist/core/ecs/component.d.ts +4 -4
  18. package/dist/core/ecs/deferred_commands.d.cts +1 -1
  19. package/dist/core/ecs/deferred_commands.d.ts +1 -1
  20. package/dist/core/ecs/deferred_commands.d.ts.map +1 -1
  21. package/dist/core/ecs/ecs.d.cts +85 -43
  22. package/dist/core/ecs/ecs.d.ts +85 -43
  23. package/dist/core/ecs/ecs.d.ts.map +1 -1
  24. package/dist/core/ecs/ecs_memory.d.cts +10 -10
  25. package/dist/core/ecs/ecs_memory.d.ts +10 -10
  26. package/dist/core/ecs/ecs_memory.d.ts.map +1 -1
  27. package/dist/core/ecs/entity_allocator.d.cts +6 -6
  28. package/dist/core/ecs/entity_allocator.d.ts +6 -6
  29. package/dist/core/ecs/entity_allocator.d.ts.map +1 -1
  30. package/dist/core/ecs/event.d.cts +2 -2
  31. package/dist/core/ecs/event.d.ts +2 -2
  32. package/dist/core/ecs/event_registry.d.cts +1 -1
  33. package/dist/core/ecs/event_registry.d.ts +1 -1
  34. package/dist/core/ecs/event_registry.d.ts.map +1 -1
  35. package/dist/core/ecs/facades.d.cts +15 -15
  36. package/dist/core/ecs/facades.d.ts +15 -15
  37. package/dist/core/ecs/facades.d.ts.map +1 -1
  38. package/dist/core/ecs/frame_trace.d.cts +2 -2
  39. package/dist/core/ecs/frame_trace.d.ts +2 -2
  40. package/dist/core/ecs/host_commands.d.cts +12 -12
  41. package/dist/core/ecs/host_commands.d.ts +12 -12
  42. package/dist/core/ecs/host_commands.d.ts.map +1 -1
  43. package/dist/core/ecs/index.d.cts +1 -1
  44. package/dist/core/ecs/index.d.ts +1 -1
  45. package/dist/core/ecs/index.d.ts.map +1 -1
  46. package/dist/core/ecs/observer.d.cts +9 -9
  47. package/dist/core/ecs/observer.d.ts +9 -9
  48. package/dist/core/ecs/observer.d.ts.map +1 -1
  49. package/dist/core/ecs/query.d.cts +91 -70
  50. package/dist/core/ecs/query.d.ts +91 -70
  51. package/dist/core/ecs/query.d.ts.map +1 -1
  52. package/dist/core/ecs/ref.d.cts +53 -1
  53. package/dist/core/ecs/ref.d.ts +53 -1
  54. package/dist/core/ecs/ref.d.ts.map +1 -1
  55. package/dist/core/ecs/relation.d.cts +15 -15
  56. package/dist/core/ecs/relation.d.ts +15 -15
  57. package/dist/core/ecs/relation.d.ts.map +1 -1
  58. package/dist/core/ecs/relation_service.d.cts +14 -14
  59. package/dist/core/ecs/relation_service.d.ts +14 -14
  60. package/dist/core/ecs/relation_service.d.ts.map +1 -1
  61. package/dist/core/ecs/resource.d.cts +1 -1
  62. package/dist/core/ecs/resource.d.ts +1 -1
  63. package/dist/core/ecs/resource_registry.d.cts +2 -2
  64. package/dist/core/ecs/resource_registry.d.ts +2 -2
  65. package/dist/core/ecs/resume.d.cts +3 -3
  66. package/dist/core/ecs/resume.d.ts +3 -3
  67. package/dist/core/ecs/resume.d.ts.map +1 -1
  68. package/dist/core/ecs/schedule.d.cts +22 -9
  69. package/dist/core/ecs/schedule.d.ts +22 -9
  70. package/dist/core/ecs/schedule.d.ts.map +1 -1
  71. package/dist/core/ecs/snapshot_service.d.cts +3 -3
  72. package/dist/core/ecs/snapshot_service.d.ts +3 -3
  73. package/dist/core/ecs/sparse_store.d.cts +6 -6
  74. package/dist/core/ecs/sparse_store.d.ts +6 -6
  75. package/dist/core/ecs/sparse_store.d.ts.map +1 -1
  76. package/dist/core/ecs/store.d.cts +189 -110
  77. package/dist/core/ecs/store.d.ts +189 -110
  78. package/dist/core/ecs/store.d.ts.map +1 -1
  79. package/dist/core/ecs/store_layout_listener.d.cts +2 -2
  80. package/dist/core/ecs/store_layout_listener.d.ts +2 -2
  81. package/dist/core/ecs/system.d.cts +8 -8
  82. package/dist/core/ecs/system.d.ts +8 -8
  83. package/dist/core/ecs/system.d.ts.map +1 -1
  84. package/dist/core/ecs/utils/error.d.cts +7 -0
  85. package/dist/core/ecs/utils/error.d.ts +7 -0
  86. package/dist/core/ecs/utils/error.d.ts.map +1 -1
  87. package/dist/core/store/action_ring.d.cts +7 -8
  88. package/dist/core/store/action_ring.d.ts +7 -8
  89. package/dist/core/store/action_ring.d.ts.map +1 -1
  90. package/dist/core/store/allocator.d.cts +26 -28
  91. package/dist/core/store/allocator.d.ts +26 -28
  92. package/dist/core/store/allocator.d.ts.map +1 -1
  93. package/dist/core/store/buffer_backed_column.d.cts +5 -6
  94. package/dist/core/store/buffer_backed_column.d.ts +5 -6
  95. package/dist/core/store/buffer_backed_column.d.ts.map +1 -1
  96. package/dist/core/store/column_store.d.cts +22 -22
  97. package/dist/core/store/column_store.d.ts +22 -22
  98. package/dist/core/store/column_store.d.ts.map +1 -1
  99. package/dist/core/store/command_dispatch.d.cts +1 -1
  100. package/dist/core/store/command_dispatch.d.ts +1 -1
  101. package/dist/core/store/command_ring.d.cts +6 -7
  102. package/dist/core/store/command_ring.d.ts +6 -7
  103. package/dist/core/store/command_ring.d.ts.map +1 -1
  104. package/dist/core/store/descriptor.d.cts +2 -2
  105. package/dist/core/store/descriptor.d.ts +2 -2
  106. package/dist/core/store/entity_index.d.cts +3 -3
  107. package/dist/core/store/entity_index.d.ts +3 -3
  108. package/dist/core/store/event_ring.d.cts +7 -7
  109. package/dist/core/store/event_ring.d.ts +7 -7
  110. package/dist/core/store/extend.d.cts +2 -2
  111. package/dist/core/store/extend.d.ts +2 -2
  112. package/dist/core/store/grow.d.cts +1 -1
  113. package/dist/core/store/grow.d.ts +1 -1
  114. package/dist/core/store/grow.d.ts.map +1 -1
  115. package/dist/core/store/header.d.cts +9 -9
  116. package/dist/core/store/header.d.ts +9 -9
  117. package/dist/core/store/header.d.ts.map +1 -1
  118. package/dist/core/store/layout_ops.d.cts +7 -7
  119. package/dist/core/store/layout_ops.d.ts +7 -7
  120. package/dist/core/store/state_hash.d.cts +3 -3
  121. package/dist/core/store/state_hash.d.ts +3 -3
  122. package/dist/extensions/editor/editor.d.cts +4 -4
  123. package/dist/extensions/editor/editor.d.ts +4 -4
  124. package/dist/extensions/editor/editor.d.ts.map +1 -1
  125. package/dist/extensions/editor/field_handle.d.cts +1 -1
  126. package/dist/extensions/editor/field_handle.d.ts +1 -1
  127. package/dist/extensions/editor/index.d.cts +2 -2
  128. package/dist/extensions/editor/index.d.ts +2 -2
  129. package/dist/extensions/editor/index.development.js +4 -4
  130. package/dist/extensions/editor/index.js +4 -4
  131. package/dist/extensions/reactive/ecs_sync.d.cts +4 -4
  132. package/dist/extensions/reactive/ecs_sync.d.ts +4 -4
  133. package/dist/extensions/reactive/index.d.cts +4 -4
  134. package/dist/extensions/reactive/index.d.ts +4 -4
  135. package/dist/extensions/reactive/index.development.js +3 -3
  136. package/dist/extensions/reactive/index.js +3 -3
  137. package/dist/extensions/solid/index.d.cts +1 -1
  138. package/dist/extensions/solid/index.d.ts +1 -1
  139. package/dist/extensions/solid/index.development.js +1 -1
  140. package/dist/extensions/solid/index.js +1 -1
  141. package/dist/extensions/solid/kernel_solid.d.cts +1 -1
  142. package/dist/extensions/solid/kernel_solid.d.ts +1 -1
  143. package/dist/extensions/solid/kernel_solid.d.ts.map +1 -1
  144. package/dist/{host_commands-3jyFfWNg.js → host_commands-BlR3oZ3x.js} +472 -392
  145. package/dist/host_commands-C2cpU3yC.cjs +1 -0
  146. package/dist/index.cjs +1 -1
  147. package/dist/index.d.cts +1 -1
  148. package/dist/index.d.ts +1 -1
  149. package/dist/index.d.ts.map +1 -1
  150. package/dist/index.development.cjs +1 -1
  151. package/dist/index.development.js +3344 -2965
  152. package/dist/index.js +1494 -1132
  153. package/dist/{internal-C9jjL90H.js → internal-BoxWl4dG.js} +409 -329
  154. package/dist/internal-CGBEwfeB.cjs +2 -0
  155. package/dist/internal.cjs +1 -1
  156. package/dist/internal.development.cjs +1 -1
  157. package/dist/internal.development.js +1 -1
  158. package/dist/internal.js +1 -1
  159. package/dist/primitives.development.js +1 -1
  160. package/dist/primitives.js +1 -1
  161. package/dist/reactive/index.d.cts +2 -2
  162. package/dist/reactive/index.d.ts +2 -2
  163. package/dist/reactive/index.development.js +1 -1
  164. package/dist/reactive/index.js +1 -1
  165. package/dist/reactive/kernel.d.cts +5 -5
  166. package/dist/reactive/kernel.d.ts +5 -5
  167. package/dist/reactive/shallow.d.cts +1 -1
  168. package/dist/reactive/shallow.d.ts +1 -1
  169. package/dist/{shallow-DfnAm9vG.js → shallow-Bs39EPh1.js} +1 -1
  170. package/dist/{shallow-9S1pY_Iw.js → shallow-CiFC70Dz.js} +1 -1
  171. package/dist/{shared-DQKK0i-E.js → shared-B4v0L1cw.js} +4 -4
  172. package/dist/shared-DU78k0pU.cjs +1 -0
  173. package/dist/shared.cjs +1 -1
  174. package/dist/shared.development.cjs +1 -1
  175. package/dist/shared.development.js +1 -1
  176. package/dist/shared.js +1 -1
  177. package/dist/type_primitives/typed_arrays/typed_arrays.d.cts +2 -2
  178. package/dist/type_primitives/typed_arrays/typed_arrays.d.ts +2 -2
  179. package/dist/{typed_arrays-BcXcnzB4.js → typed_arrays-DIVwVy5_.js} +1 -1
  180. package/dist/version.d.cts +2 -2
  181. package/dist/version.d.ts +2 -2
  182. package/package.json +1 -1
  183. package/dist/host_commands-DNf0f6ko.cjs +0 -1
  184. package/dist/internal-RZN14uMw.cjs +0 -2
  185. package/dist/shared-BMXh9hxm.cjs +0 -1
@@ -1,7 +1,6 @@
1
1
  /**
2
2
  * Command ring — WASM-side producer / TS-side consumer SPSC ring buffer
3
- * for structural-change intents emitted during `sim.tick()`. Plan §7.5
4
- * (`docs/ideas/buffer-wasm-sim-plan-2026-05-14T1600.md`).
3
+ * for structural-change intents emitted during `sim.tick()`.
5
4
  *
6
5
  * Layout:
7
6
  *
@@ -13,13 +12,13 @@
13
12
  * [ slot 1: 16 B ] ...
14
13
  * ...
15
14
  *
16
- * SPSC contract (Phase 4 scope):
15
+ * SPSC contract (single host thread):
17
16
  * - Producer: WASM `sim.tick()`. Pushes 0..N commands during one tick;
18
17
  * bumps `write_head` after each.
19
18
  * - Consumer: TS host, immediately after `wasm.tick()` returns. Drains
20
19
  * 0..N pending commands; bumps `read_head` after each.
21
- * - The two never run concurrently in Phase 4 (single host thread
22
- * orchestrates both). Phase 5's worker offload promotes the head
20
+ * - The two never run concurrently (one host thread orchestrates
21
+ * both). A later worker offload promotes the head
23
22
  * bumps to `Atomics.store`; that's an additive change without
24
23
  * altering the layout.
25
24
  *
@@ -29,7 +28,7 @@
29
28
  * a hard error in dev builds; production logs and continues (a command
30
29
  * might be lost rather than crash the host).
31
30
  *
32
- * Slot format (plan §7.5):
31
+ * Slot format:
33
32
  * byte 0: opCode (u8). 0 is reserved as the empty-slot marker
34
33
  * (`COMMAND_OP_EMPTY`); all other codes are consumer-defined.
35
34
  * The engine never interprets a code — it drains
@@ -52,7 +51,7 @@ export declare const COMMAND_RING_HEADER_BYTES = 16;
52
51
  export declare const COMMAND_RING_SLOT_BYTES = 16;
53
52
  /** Default ring capacity in slots. 256 × 16 B = 4 KiB of ring data plus
54
53
  * 16 B header. Sized for the worst-case burst (peak spawn intents per
55
- * tick) × small safety margin. Tune up if a Phase 4 burst pushes past it
54
+ * tick) × small safety margin. Tune up if a burst pushes past it
56
55
  * in the bench harness. */
57
56
  export declare const COMMAND_RING_DEFAULT_CAPACITY_SLOTS = 256;
58
57
  /** Byte offsets within the ring header. Mirrored on the Zig side in
@@ -1 +1 @@
1
- {"version":3,"file":"command_ring.d.ts","sourceRoot":"","sources":["../../../src/core/store/command_ring.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,uCAAuC;AACvC,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAE5C,yDAAyD;AACzD,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C;;;2BAG2B;AAC3B,eAAO,MAAM,mCAAmC,MAAM,CAAC;AAEvD;yDACyD;AACzD,eAAO,MAAM,2BAA2B;;;;;CAK9B,CAAC;AAEX;;;;gEAIgE;AAChE,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAElC,gEAAgE;AAChE,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAE9D;AASD,qBAAa,gBAAiB,SAAQ,KAAK;gBAC9B,OAAO,EAAE,MAAM;CAI3B;AAED;;;mCAGmC;AACnC,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAU5F;AAED,mCAAmC;AACnC,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAErE;AACD,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEpE;AACD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzE;AACD,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAErE;AAED;;;+CAG+C;AAC/C,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE3E;AAED;;;+DAG+D;AAC/D,wBAAgB,WAAW,CAC1B,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,UAAU,GACjB,OAAO,CAmCT;AAED;;oDAEoD;AACpD,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,MAAM,CAiB1F;AAED;;;;gEAIgE;AAChE,wBAAgB,gBAAgB,CAC/B,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,KAAK,IAAI,GACpD,MAAM,CAWR"}
1
+ {"version":3,"file":"command_ring.d.ts","sourceRoot":"","sources":["../../../src/core/store/command_ring.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,uCAAuC;AACvC,eAAO,MAAM,yBAAyB,KAAK,CAAC;AAE5C,yDAAyD;AACzD,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C;;;2BAG2B;AAC3B,eAAO,MAAM,mCAAmC,MAAM,CAAC;AAEvD;yDACyD;AACzD,eAAO,MAAM,2BAA2B;;;;;CAK9B,CAAC;AAEX;;;;gEAIgE;AAChE,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAElC,gEAAgE;AAChE,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAE9D;AASD,qBAAa,gBAAiB,SAAQ,KAAK;gBAC9B,OAAO,EAAE,MAAM;CAI3B;AAED;;;mCAGmC;AACnC,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAU5F;AAED,mCAAmC;AACnC,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAErE;AACD,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEpE;AACD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzE;AACD,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAErE;AAED;;;+CAG+C;AAC/C,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE3E;AAED;;;+DAG+D;AAC/D,wBAAgB,WAAW,CAC1B,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,UAAU,GACjB,OAAO,CAmCT;AAED;;oDAEoD;AACpD,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,MAAM,CAiB1F;AAED;;;;gEAIgE;AAChE,wBAAgB,gBAAgB,CAC/B,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,KAAK,IAAI,GACpD,MAAM,CAWR"}
@@ -49,7 +49,7 @@ export declare function readColumnDescriptor(view: DataView, off: number): Colum
49
49
  * ≥ this limit would be invisible there while the heap-side `BitSet` stayed
50
50
  * correct — silently conflating archetypes that differ only in such a
51
51
  * component. `Store.registerComponent` enforces this as a hard registration
52
- * ceiling so the overflow fails loudly instead (#381). The mask is sized to
52
+ * ceiling so the overflow fails loudly instead. The mask is sized to
53
53
  * the `BitSet`'s `INITIAL_WORD_COUNT`, so a registry within the limit never
54
54
  * grows a component mask past its initial words. */
55
55
  export declare const STORE_DESCRIPTOR_COMPONENT_LIMIT: number;
@@ -60,7 +60,7 @@ export interface ArchetypeDescriptor {
60
60
  readonly componentMask: readonly number[];
61
61
  readonly rowCount: number;
62
62
  readonly rowCapacity: number;
63
- /** Enabled-row count `≤ row_count` (#577 / #599). Per-row entity-scan loops in
63
+ /** Enabled-row count `≤ row_count`. Per-row entity-scan loops in
64
64
  * the WASM sim bound on this so disabled entities (swapped to the tail
65
65
  * `[enabled_count, row_count)`) are not simulated; row-indexed cross-entity
66
66
  * reads still use `row_count`. */
@@ -49,7 +49,7 @@ export declare function readColumnDescriptor(view: DataView, off: number): Colum
49
49
  * ≥ this limit would be invisible there while the heap-side `BitSet` stayed
50
50
  * correct — silently conflating archetypes that differ only in such a
51
51
  * component. `Store.registerComponent` enforces this as a hard registration
52
- * ceiling so the overflow fails loudly instead (#381). The mask is sized to
52
+ * ceiling so the overflow fails loudly instead. The mask is sized to
53
53
  * the `BitSet`'s `INITIAL_WORD_COUNT`, so a registry within the limit never
54
54
  * grows a component mask past its initial words. */
55
55
  export declare const STORE_DESCRIPTOR_COMPONENT_LIMIT: number;
@@ -60,7 +60,7 @@ export interface ArchetypeDescriptor {
60
60
  readonly componentMask: readonly number[];
61
61
  readonly rowCount: number;
62
62
  readonly rowCapacity: number;
63
- /** Enabled-row count `≤ row_count` (#577 / #599). Per-row entity-scan loops in
63
+ /** Enabled-row count `≤ row_count`. Per-row entity-scan loops in
64
64
  * the WASM sim bound on this so disabled entities (swapped to the tail
65
65
  * `[enabled_count, row_count)`) are not simulated; row-indexed cross-entity
66
66
  * reads still use `row_count`. */
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * Entity-index SAB region — `EntityID` → `(archetype_id, row, generation)`
3
- * lookup table shared with the Zig sim. (#245 / Phase 4 PR 4B)
3
+ * lookup table shared with the Zig sim.
4
4
  *
5
5
  * Every hot fixed-update system that needs to resolve an `EntityID`
6
6
  * held in a column (e.g. a component field that points at another
7
7
  * entity → that entity's columns) has to do
8
- * `entityId → archetype + row` translation. The plan forbids
9
- * WASM-into-TS callbacks during `tick()` (§4 / §5.2), so the lookup
8
+ * `entityId → archetype + row` translation. WASM-into-TS callbacks
9
+ * during `tick()` are forbidden, so the lookup
10
10
  * tables must live in shared memory.
11
11
  *
12
12
  * Layout:
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * Entity-index SAB region — `EntityID` → `(archetype_id, row, generation)`
3
- * lookup table shared with the Zig sim. (#245 / Phase 4 PR 4B)
3
+ * lookup table shared with the Zig sim.
4
4
  *
5
5
  * Every hot fixed-update system that needs to resolve an `EntityID`
6
6
  * held in a column (e.g. a component field that points at another
7
7
  * entity → that entity's columns) has to do
8
- * `entityId → archetype + row` translation. The plan forbids
9
- * WASM-into-TS callbacks during `tick()` (§4 / §5.2), so the lookup
8
+ * `entityId → archetype + row` translation. WASM-into-TS callbacks
9
+ * during `tick()` are forbidden, so the lookup
10
10
  * tables must live in shared memory.
11
11
  *
12
12
  * Layout:
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Event ring — SPSC ring buffer for ECS signal/event payloads shared
3
- * between TS and the Zig sim. (#247 / Phase 4 PR 4C)
3
+ * between TS and the Zig sim.
4
4
  *
5
5
  * Same byte layout as the command ring (`command_ring.ts`); the two
6
6
  * could share a primitive but keeping them separate makes the
@@ -19,18 +19,18 @@
19
19
  * [ slot 1: 16 B ] ...
20
20
  *
21
21
  * Op codes: event-def IDs (assigned by `ECS.registerEvent()` at
22
- * registration time; #247 plan §required-FFI). The 0 op-code is
22
+ * registration time). The 0 op-code is
23
23
  * reserved as the empty-slot marker so a zero-initialised SAB does not
24
24
  * appear to hold a valid event. Event-def registration starts numbering
25
25
  * from 1 to honour this; the engine integration in 4D+ enforces it.
26
26
  *
27
- * SPSC contract (Phase 4 scope, single host thread):
27
+ * SPSC contract (single host thread):
28
28
  * - Producer: Zig sim `tick()` (post-4D) OR TS host (test producers /
29
29
  * existing JS-side emitters bridged into the ring).
30
30
  * - Consumer: TS host drain (post-4D) OR Zig system that reads
31
31
  * queued events from a sibling system.
32
- * - The two never run concurrently in Phase 4 (single host thread
33
- * orchestrates both). Phase 5's worker offload promotes the head
32
+ * - The two never run concurrently (one host thread orchestrates
33
+ * both). A later worker offload promotes the head
34
34
  * bumps to `Atomics.store`; that's an additive change without
35
35
  * altering the layout.
36
36
  *
@@ -41,8 +41,8 @@
41
41
  *
42
42
  * Region placement: between the entity-index region and the descriptor
43
43
  * region so its offset is stable across descriptor / column growth.
44
- * `header.event_ring_off` (the field promoted out of `_reserved0` in
45
- * #245's reservation) carries the offset; 0 means absent.
44
+ * `header.event_ring_off` (the field promoted out of `_reserved0`)
45
+ * carries the offset; 0 means absent.
46
46
  */
47
47
  /** Total bytes for the ring header. Matches command ring exactly. */
48
48
  export declare const EVENT_RING_HEADER_BYTES = 16;
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Event ring — SPSC ring buffer for ECS signal/event payloads shared
3
- * between TS and the Zig sim. (#247 / Phase 4 PR 4C)
3
+ * between TS and the Zig sim.
4
4
  *
5
5
  * Same byte layout as the command ring (`command_ring.ts`); the two
6
6
  * could share a primitive but keeping them separate makes the
@@ -19,18 +19,18 @@
19
19
  * [ slot 1: 16 B ] ...
20
20
  *
21
21
  * Op codes: event-def IDs (assigned by `ECS.registerEvent()` at
22
- * registration time; #247 plan §required-FFI). The 0 op-code is
22
+ * registration time). The 0 op-code is
23
23
  * reserved as the empty-slot marker so a zero-initialised SAB does not
24
24
  * appear to hold a valid event. Event-def registration starts numbering
25
25
  * from 1 to honour this; the engine integration in 4D+ enforces it.
26
26
  *
27
- * SPSC contract (Phase 4 scope, single host thread):
27
+ * SPSC contract (single host thread):
28
28
  * - Producer: Zig sim `tick()` (post-4D) OR TS host (test producers /
29
29
  * existing JS-side emitters bridged into the ring).
30
30
  * - Consumer: TS host drain (post-4D) OR Zig system that reads
31
31
  * queued events from a sibling system.
32
- * - The two never run concurrently in Phase 4 (single host thread
33
- * orchestrates both). Phase 5's worker offload promotes the head
32
+ * - The two never run concurrently (one host thread orchestrates
33
+ * both). A later worker offload promotes the head
34
34
  * bumps to `Atomics.store`; that's an additive change without
35
35
  * altering the layout.
36
36
  *
@@ -41,8 +41,8 @@
41
41
  *
42
42
  * Region placement: between the entity-index region and the descriptor
43
43
  * region so its offset is stable across descriptor / column growth.
44
- * `header.event_ring_off` (the field promoted out of `_reserved0` in
45
- * #245's reservation) carries the offset; 0 means absent.
44
+ * `header.event_ring_off` (the field promoted out of `_reserved0`)
45
+ * carries the offset; 0 means absent.
46
46
  */
47
47
  /** Total bytes for the ring header. Matches command ring exactly. */
48
48
  export declare const EVENT_RING_HEADER_BYTES = 16;
@@ -14,7 +14,7 @@ export interface ExtendResult {
14
14
  readonly store: ColumnStore;
15
15
  readonly oldViewStamp: number;
16
16
  readonly newViewStamp: number;
17
- /** True when the in-place fast path (#237 Option A) was taken: the SAB
17
+ /** True when the in-place fast path was taken: the SAB
18
18
  * instance is reused, existing column TypedArray views are unchanged,
19
19
  * and callers may skip `refreshViews` on every pre-existing
20
20
  * Archetype. False when the slow path ran (fresh SAB or wasm-memory
@@ -28,7 +28,7 @@ export declare class StoreExtendError extends Error {
28
28
  /** Allocate a new SAB sized for `old` + `plan.newArchetypes`, copy
29
29
  * existing rows, bump `view_stamp`.
30
30
  *
31
- * `allocator` (PR 3D / #234): pluggable buffer source forwarded into
31
+ * `allocator`: pluggable buffer source forwarded into
32
32
  * `createColumnStore`. When the allocator is `wasmMemoryAllocator`,
33
33
  * `memory.grow` may detach `old`'s typed-array views before the copy
34
34
  * runs — so live rows are snapshotted into heap `Uint8Array`s BEFORE the
@@ -14,7 +14,7 @@ export interface ExtendResult {
14
14
  readonly store: ColumnStore;
15
15
  readonly oldViewStamp: number;
16
16
  readonly newViewStamp: number;
17
- /** True when the in-place fast path (#237 Option A) was taken: the SAB
17
+ /** True when the in-place fast path was taken: the SAB
18
18
  * instance is reused, existing column TypedArray views are unchanged,
19
19
  * and callers may skip `refreshViews` on every pre-existing
20
20
  * Archetype. False when the slow path ran (fresh SAB or wasm-memory
@@ -28,7 +28,7 @@ export declare class StoreExtendError extends Error {
28
28
  /** Allocate a new SAB sized for `old` + `plan.newArchetypes`, copy
29
29
  * existing rows, bump `view_stamp`.
30
30
  *
31
- * `allocator` (PR 3D / #234): pluggable buffer source forwarded into
31
+ * `allocator`: pluggable buffer source forwarded into
32
32
  * `createColumnStore`. When the allocator is `wasmMemoryAllocator`,
33
33
  * `memory.grow` may detach `old`'s typed-array views before the copy
34
34
  * runs — so live rows are snapshotted into heap `Uint8Array`s BEFORE the
@@ -29,6 +29,6 @@ export declare class StoreGrowError extends Error {
29
29
  * the new views. With a `wasmMemoryAllocator`, `old`'s typed-array
30
30
  * views may be detached as soon as `createColumnStore` returns — live
31
31
  * data is snapshotted before the allocator call to make both code paths
32
- * behave identically from the caller's perspective. (PR 3D / #234) */
32
+ * behave identically from the caller's perspective. */
33
33
  export declare function growColumnStore(old: ColumnStore, plan: GrowPlan, allocator?: BufferAllocator): GrowResult;
34
34
  //# sourceMappingURL=grow.d.ts.map
@@ -29,6 +29,6 @@ export declare class StoreGrowError extends Error {
29
29
  * the new views. With a `wasmMemoryAllocator`, `old`'s typed-array
30
30
  * views may be detached as soon as `createColumnStore` returns — live
31
31
  * data is snapshotted before the allocator call to make both code paths
32
- * behave identically from the caller's perspective. (PR 3D / #234) */
32
+ * behave identically from the caller's perspective. */
33
33
  export declare function growColumnStore(old: ColumnStore, plan: GrowPlan, allocator?: BufferAllocator): GrowResult;
34
34
  //# sourceMappingURL=grow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"grow.d.ts","sourceRoot":"","sources":["../../../src/core/store/grow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AASH,OAAO,EAIN,KAAK,WAAW,EAGhB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAKN,KAAK,iBAAiB,EAEtB,MAAM,cAAc,CAAC;AAMtB,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAClD;AAED;mEACmE;AACnE,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B;;;6DAGyD;IACzD,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC;2BACuB;IACvB,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9C;AA4JD,qBAAa,cAAe,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAI3B;AAED;;;;;;sEAMsE;AACtE,wBAAgB,eAAe,CAC9B,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,QAAQ,EACd,SAAS,CAAC,EAAE,eAAe,GACzB,UAAU,CAmGZ"}
1
+ {"version":3,"file":"grow.d.ts","sourceRoot":"","sources":["../../../src/core/store/grow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AASH,OAAO,EAIN,KAAK,WAAW,EAGhB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAKN,KAAK,iBAAiB,EAEtB,MAAM,cAAc,CAAC;AAMtB,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAClD;AAED;mEACmE;AACnE,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B;;;6DAGyD;IACzD,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC;2BACuB;IACvB,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9C;AA4JD,qBAAa,cAAe,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAI3B;AAED;;;;;;uDAMuD;AACvD,wBAAgB,eAAe,CAC9B,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,QAAQ,EACd,SAAS,CAAC,EAAE,eAAe,GACzB,UAAU,CAmGZ"}
@@ -8,7 +8,7 @@ export interface StoreHeader {
8
8
  * the SAB must not be used. */
9
9
  readonly simAbiVersion: number;
10
10
  /** Monotonic; incremented every time the host reallocates the SAB.
11
- * Cached TypedArray views become stale on bump. (#171 §8.1) */
11
+ * Cached TypedArray views become stale on bump. */
12
12
  readonly viewStamp: number;
13
13
  /** Total SAB size in bytes. */
14
14
  readonly capacity: number;
@@ -16,17 +16,17 @@ export interface StoreHeader {
16
16
  readonly archetypeCount: number;
17
17
  /** Byte offset into the SAB where the layout descriptor region starts. */
18
18
  readonly layoutDescriptorOff: number;
19
- /** Byte offset of the WASM→TS command ring header. (#171 §7.5) */
19
+ /** Byte offset of the WASM→TS command ring header. */
20
20
  readonly commandRingOff: number;
21
- /** Byte offset of the TS→WASM action ring header. (#171 §7.5, Phase 5) */
21
+ /** Byte offset of the TS→WASM action ring header. */
22
22
  readonly actionRingOff: number;
23
23
  /** Byte offset of the entity-index region (entityId → archetype_id,
24
24
  * row, generation lookup). 0 means absent — fixtures and bare-SAB
25
25
  * tests that don't need the index see the v1 layout (the engine's
26
- * `Store` always allocates one). (#245 / Phase 4 PR 4B) */
26
+ * `Store` always allocates one). */
27
27
  readonly entityIndexOff: number;
28
28
  /** Byte offset of the event ring region (ECS signal payloads shared
29
- * with the Zig sim). 0 means absent. (#247 / Phase 4 PR 4C) */
29
+ * with the Zig sim). 0 means absent. */
30
30
  readonly eventRingOff: number;
31
31
  /** Byte offset of the region-table directory — a `RegionTableEntry[]`
32
32
  * (`(region_id, byte_offset, byte_length)` triples) holding one entry
@@ -35,9 +35,9 @@ export interface StoreHeader {
35
35
  * its region with `findRegionOffset(view, header, id)` (TS) /
36
36
  * `abi.find_region(header_addr, id)` (Zig). Replaces the five game-named
37
37
  * offset fields (`terrain_off`/`spatial_grid_off`/… ) the SAB header
38
- * used to hard-code. (#623 de-game the SAB substrate; ADR-0018.) */
38
+ * used to hard-code. This de-games the SAB substrate. */
39
39
  readonly regionTableOff: number;
40
- /** Number of `RegionTableEntry` records at `region_table_off`. (#623) */
40
+ /** Number of `RegionTableEntry` records at `region_table_off`. */
41
41
  readonly regionTableCount: number;
42
42
  /** Byte offset of the sim-bindings region — an opaque block of `u16`
43
43
  * `(component_id, field_id)` IDs (layout owned by the game, in
@@ -48,14 +48,14 @@ export interface StoreHeader {
48
48
  * them as call args. Present only when the consumer opts into a WASM backend
49
49
  * by passing `bindingsRegionBytes` to `createColumnStore`; 0 = absent (a
50
50
  * pure-TS game pays nothing for this region). The size is a runtime input,
51
- * not an engine ABI constant, since #625. (v5 / "SAB-is-the-interface".) */
51
+ * not an engine ABI constant. (v5 / "SAB-is-the-interface".) */
52
52
  readonly bindingsOff: number;
53
53
  }
54
54
  export declare function writeStoreHeader(view: DataView, h: StoreHeader): void;
55
55
  export declare function readStoreHeader(view: DataView): StoreHeader;
56
56
  /** Increment `view_stamp` in place after a host-side SAB reallocation. The
57
57
  * monotonic counter is the trigger for cached-view invalidation on the TS
58
- * side and for re-pointing in WASM. (#171 §8.1) */
58
+ * side and for re-pointing in WASM. */
59
59
  export declare function bumpViewStamp(view: DataView): number;
60
60
  /** True iff the buffer's first four bytes are `STORE_MAGIC` AND the ABI
61
61
  * version matches the current build. Used by both TS and WASM as a
@@ -8,7 +8,7 @@ export interface StoreHeader {
8
8
  * the SAB must not be used. */
9
9
  readonly simAbiVersion: number;
10
10
  /** Monotonic; incremented every time the host reallocates the SAB.
11
- * Cached TypedArray views become stale on bump. (#171 §8.1) */
11
+ * Cached TypedArray views become stale on bump. */
12
12
  readonly viewStamp: number;
13
13
  /** Total SAB size in bytes. */
14
14
  readonly capacity: number;
@@ -16,17 +16,17 @@ export interface StoreHeader {
16
16
  readonly archetypeCount: number;
17
17
  /** Byte offset into the SAB where the layout descriptor region starts. */
18
18
  readonly layoutDescriptorOff: number;
19
- /** Byte offset of the WASM→TS command ring header. (#171 §7.5) */
19
+ /** Byte offset of the WASM→TS command ring header. */
20
20
  readonly commandRingOff: number;
21
- /** Byte offset of the TS→WASM action ring header. (#171 §7.5, Phase 5) */
21
+ /** Byte offset of the TS→WASM action ring header. */
22
22
  readonly actionRingOff: number;
23
23
  /** Byte offset of the entity-index region (entityId → archetype_id,
24
24
  * row, generation lookup). 0 means absent — fixtures and bare-SAB
25
25
  * tests that don't need the index see the v1 layout (the engine's
26
- * `Store` always allocates one). (#245 / Phase 4 PR 4B) */
26
+ * `Store` always allocates one). */
27
27
  readonly entityIndexOff: number;
28
28
  /** Byte offset of the event ring region (ECS signal payloads shared
29
- * with the Zig sim). 0 means absent. (#247 / Phase 4 PR 4C) */
29
+ * with the Zig sim). 0 means absent. */
30
30
  readonly eventRingOff: number;
31
31
  /** Byte offset of the region-table directory — a `RegionTableEntry[]`
32
32
  * (`(region_id, byte_offset, byte_length)` triples) holding one entry
@@ -35,9 +35,9 @@ export interface StoreHeader {
35
35
  * its region with `findRegionOffset(view, header, id)` (TS) /
36
36
  * `abi.find_region(header_addr, id)` (Zig). Replaces the five game-named
37
37
  * offset fields (`terrain_off`/`spatial_grid_off`/… ) the SAB header
38
- * used to hard-code. (#623 de-game the SAB substrate; ADR-0018.) */
38
+ * used to hard-code. This de-games the SAB substrate. */
39
39
  readonly regionTableOff: number;
40
- /** Number of `RegionTableEntry` records at `region_table_off`. (#623) */
40
+ /** Number of `RegionTableEntry` records at `region_table_off`. */
41
41
  readonly regionTableCount: number;
42
42
  /** Byte offset of the sim-bindings region — an opaque block of `u16`
43
43
  * `(component_id, field_id)` IDs (layout owned by the game, in
@@ -48,14 +48,14 @@ export interface StoreHeader {
48
48
  * them as call args. Present only when the consumer opts into a WASM backend
49
49
  * by passing `bindingsRegionBytes` to `createColumnStore`; 0 = absent (a
50
50
  * pure-TS game pays nothing for this region). The size is a runtime input,
51
- * not an engine ABI constant, since #625. (v5 / "SAB-is-the-interface".) */
51
+ * not an engine ABI constant. (v5 / "SAB-is-the-interface".) */
52
52
  readonly bindingsOff: number;
53
53
  }
54
54
  export declare function writeStoreHeader(view: DataView, h: StoreHeader): void;
55
55
  export declare function readStoreHeader(view: DataView): StoreHeader;
56
56
  /** Increment `view_stamp` in place after a host-side SAB reallocation. The
57
57
  * monotonic counter is the trigger for cached-view invalidation on the TS
58
- * side and for re-pointing in WASM. (#171 §8.1) */
58
+ * side and for re-pointing in WASM. */
59
59
  export declare function bumpViewStamp(view: DataView): number;
60
60
  /** True iff the buffer's first four bytes are `STORE_MAGIC` AND the ABI
61
61
  * version matches the current build. Used by both TS and WASM as a
@@ -1 +1 @@
1
- {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../src/core/store/header.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkFG;AAoBH,OAAO,EACN,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,CAAC;AAEF,MAAM,WAAW,WAAW;IAC3B;4CACwC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;mCAC+B;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;mEAC+D;IAC/D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,+BAA+B;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,sEAAsE;IACtE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,0EAA0E;IAC1E,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,kEAAkE;IAClE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,0EAA0E;IAC1E,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;;;+DAG2D;IAC3D,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC;mEAC+D;IAC/D,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B;;;;;;;0EAOsE;IACtE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,yEAAyE;IACzE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC;;;;;;;;;gFAS4E;IAC5E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,GAAG,IAAI,CAcrE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,GAAG,WAAW,CAgB3D;AAED;;mDAEmD;AACnD,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAIpD;AAED;;+DAE+D;AAC/D,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAKlD"}
1
+ {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../src/core/store/header.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiFG;AAoBH,OAAO,EACN,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,CAAC;AAEF,MAAM,WAAW,WAAW;IAC3B;4CACwC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;mCAC+B;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;uDACmD;IACnD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,+BAA+B;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,sEAAsE;IACtE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,0EAA0E;IAC1E,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,sDAAsD;IACtD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,qDAAqD;IACrD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;;;wCAGoC;IACpC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC;4CACwC;IACxC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B;;;;;;;6DAOyD;IACzD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,kEAAkE;IAClE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC;;;;;;;;;oEASgE;IAChE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,GAAG,IAAI,CAcrE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,GAAG,WAAW,CAgB3D;AAED;;uCAEuC;AACvC,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAIpD;AAED;;+DAE+D;AAC/D,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAKlD"}
@@ -26,7 +26,7 @@ export interface TailArchetypeLayout {
26
26
  }[];
27
27
  }
28
28
  /** Tail-cursor column placement — the single home for the in-place paths'
29
- * layout rule and the 2³¹ offset cap (#382). Starting at `startCursor`
29
+ * layout rule and the 2³¹ offset cap. Starting at `startCursor`
30
30
  * (the current buffer byteLength), each archetype's columns are placed
31
31
  * `alignUp(cursor, stride)` then advanced by `stride * rowCapacity`; the
32
32
  * final tail (last column's advance, not re-aligned) becomes the grown
@@ -81,12 +81,12 @@ export declare function tailCursorBytes(old: ColumnStoreInternal): number;
81
81
  * separately via `snapshotPrefixRegions`.
82
82
  *
83
83
  * Also re-applies the descriptor-region headroom policy
84
- * (`reservedDescriptorBytes`, #541). Unlike the prefix regions this is NOT
84
+ * (`reservedDescriptorBytes`). Unlike the prefix regions this is NOT
85
85
  * read from the SAB bytes — it's a JS-side policy carried on
86
86
  * `ColumnStoreInternal._reservedDescriptorBytes` — but it belongs here for the
87
87
  * same reason: without it the realloc'd store drops to zero descriptor
88
88
  * headroom and every later `extendColumnStore` takes the slow path forever.
89
- * Re-reserving the same margin (additive, see `planLayout`) keeps the #237
89
+ * Re-reserving the same margin (additive, see `planLayout`) keeps the
90
90
  * in-place fast path alive across reallocs.
91
91
  */
92
92
  export declare function optionsFromOld(old: ColumnStore): CreateColumnStoreOptions;
@@ -143,9 +143,9 @@ export declare function restoreColumnSnapshots(newStore: ColumnStore, snapshots:
143
143
  * (command ring, entity-index) BEFORE the allocator call — the
144
144
  * wasmMemoryAllocator may detach `old`'s views on grow, so everything
145
145
  * needed is captured first. The prefix-region preservation is the
146
- * contract `Store` relies on to keep its entity table across resizes
147
- * (#245); `optionsFromOld` re-reserves regions and descriptor headroom
148
- * (#541) so the republished store keeps its layout and fast paths.
146
+ * contract `Store` relies on to keep its entity table across resizes;
147
+ * `optionsFromOld` re-reserves regions and descriptor headroom
148
+ * so the republished store keeps its layout and fast paths.
149
149
  * 2. `createColumnStore` with the derived options (fresh buffer; the same
150
150
  * growable allocator carries forward so the new buffer also grows in
151
151
  * place).
@@ -154,7 +154,7 @@ export declare function restoreColumnSnapshots(newStore: ColumnStore, snapshots:
154
154
  * overwrite the empty state `createColumnStore` initialised.
155
155
  * 4. Bump `view_stamp` from the pre-capture value and patch the returned
156
156
  * header so its cached `viewStamp` matches the buffer bytes just
157
- * written — `createColumnStore` stamped it 0 (#386). `capacity` /
157
+ * written — `createColumnStore` stamped it 0. `capacity` /
158
158
  * `archetype_count` are already correct (createColumnStore sized them),
159
159
  * so the spread carries them — and the internal `_allocator` /
160
160
  * `_regionBytes` fields — through unchanged.
@@ -26,7 +26,7 @@ export interface TailArchetypeLayout {
26
26
  }[];
27
27
  }
28
28
  /** Tail-cursor column placement — the single home for the in-place paths'
29
- * layout rule and the 2³¹ offset cap (#382). Starting at `startCursor`
29
+ * layout rule and the 2³¹ offset cap. Starting at `startCursor`
30
30
  * (the current buffer byteLength), each archetype's columns are placed
31
31
  * `alignUp(cursor, stride)` then advanced by `stride * rowCapacity`; the
32
32
  * final tail (last column's advance, not re-aligned) becomes the grown
@@ -81,12 +81,12 @@ export declare function tailCursorBytes(old: ColumnStoreInternal): number;
81
81
  * separately via `snapshotPrefixRegions`.
82
82
  *
83
83
  * Also re-applies the descriptor-region headroom policy
84
- * (`reservedDescriptorBytes`, #541). Unlike the prefix regions this is NOT
84
+ * (`reservedDescriptorBytes`). Unlike the prefix regions this is NOT
85
85
  * read from the SAB bytes — it's a JS-side policy carried on
86
86
  * `ColumnStoreInternal._reservedDescriptorBytes` — but it belongs here for the
87
87
  * same reason: without it the realloc'd store drops to zero descriptor
88
88
  * headroom and every later `extendColumnStore` takes the slow path forever.
89
- * Re-reserving the same margin (additive, see `planLayout`) keeps the #237
89
+ * Re-reserving the same margin (additive, see `planLayout`) keeps the
90
90
  * in-place fast path alive across reallocs.
91
91
  */
92
92
  export declare function optionsFromOld(old: ColumnStore): CreateColumnStoreOptions;
@@ -143,9 +143,9 @@ export declare function restoreColumnSnapshots(newStore: ColumnStore, snapshots:
143
143
  * (command ring, entity-index) BEFORE the allocator call — the
144
144
  * wasmMemoryAllocator may detach `old`'s views on grow, so everything
145
145
  * needed is captured first. The prefix-region preservation is the
146
- * contract `Store` relies on to keep its entity table across resizes
147
- * (#245); `optionsFromOld` re-reserves regions and descriptor headroom
148
- * (#541) so the republished store keeps its layout and fast paths.
146
+ * contract `Store` relies on to keep its entity table across resizes;
147
+ * `optionsFromOld` re-reserves regions and descriptor headroom
148
+ * so the republished store keeps its layout and fast paths.
149
149
  * 2. `createColumnStore` with the derived options (fresh buffer; the same
150
150
  * growable allocator carries forward so the new buffer also grows in
151
151
  * place).
@@ -154,7 +154,7 @@ export declare function restoreColumnSnapshots(newStore: ColumnStore, snapshots:
154
154
  * overwrite the empty state `createColumnStore` initialised.
155
155
  * 4. Bump `view_stamp` from the pre-capture value and patch the returned
156
156
  * header so its cached `viewStamp` matches the buffer bytes just
157
- * written — `createColumnStore` stamped it 0 (#386). `capacity` /
157
+ * written — `createColumnStore` stamped it 0. `capacity` /
158
158
  * `archetype_count` are already correct (createColumnStore sized them),
159
159
  * so the spread carries them — and the internal `_allocator` /
160
160
  * `_regionBytes` fields — through unchanged.
@@ -5,7 +5,7 @@ export declare const FNV1A_OFFSET_BASIS = 2166136261;
5
5
  export declare const FNV1A_PRIME = 16777619;
6
6
  /** One FNV-1a round folding a single **byte** (the low 8 bits of `b`) into the
7
7
  * running `hash`: `hash = imul((hash ^ (b & 0xff)) >>> 0, PRIME) >>> 0`. The
8
- * single canonical definition of the byte step (#498) — reused by `fnv1a32`
8
+ * single canonical definition of the byte step — reused by `fnv1a32`
9
9
  * here, by the sparse-store `schemaFingerprint`, and by the server determinism
10
10
  * byte/u32 folds, so the constants and the round live in exactly one place.
11
11
  *
@@ -16,7 +16,7 @@ export declare function fnv1aStep(hash: number, b: number): number;
16
16
  /** One FNV-1a round folding a full 32-bit **word** into `hash` — the whole word
17
17
  * xored at once, not four byte rounds. A coarser fold than per-byte FNV-1a, but
18
18
  * equally deterministic and ~4× cheaper, which is why `Store.stateHash` folds
19
- * its columns this way (#326). This is the canonical word-step definition its
19
+ * its columns this way. This is the canonical word-step definition its
20
20
  * cold sparse/relation folds call; its hot dense-column inner loop inlines this
21
21
  * exact step for speed and must stay in sync. Same `>>> 0` reasoning as
22
22
  * `fnv1aStep`. */
@@ -30,7 +30,7 @@ export declare function fnv1aStepWord(hash: number, word: number): number;
30
30
  export declare function fnv1a32(bytes: Uint8Array): number;
31
31
  /** FNV-1a 32-bit hash of the entire SAB region — header + descriptors +
32
32
  * column bytes. The canonical state identifier for cross-replay determinism
33
- * checks (#171 plan exit criterion §6.1.7).
33
+ * checks.
34
34
  *
35
35
  * The snapshot view is zero-copy (`snapshotColumnStore` is a view, not a
36
36
  * copy), so this is one scan over the live SAB with no allocation. */
@@ -5,7 +5,7 @@ export declare const FNV1A_OFFSET_BASIS = 2166136261;
5
5
  export declare const FNV1A_PRIME = 16777619;
6
6
  /** One FNV-1a round folding a single **byte** (the low 8 bits of `b`) into the
7
7
  * running `hash`: `hash = imul((hash ^ (b & 0xff)) >>> 0, PRIME) >>> 0`. The
8
- * single canonical definition of the byte step (#498) — reused by `fnv1a32`
8
+ * single canonical definition of the byte step — reused by `fnv1a32`
9
9
  * here, by the sparse-store `schemaFingerprint`, and by the server determinism
10
10
  * byte/u32 folds, so the constants and the round live in exactly one place.
11
11
  *
@@ -16,7 +16,7 @@ export declare function fnv1aStep(hash: number, b: number): number;
16
16
  /** One FNV-1a round folding a full 32-bit **word** into `hash` — the whole word
17
17
  * xored at once, not four byte rounds. A coarser fold than per-byte FNV-1a, but
18
18
  * equally deterministic and ~4× cheaper, which is why `Store.stateHash` folds
19
- * its columns this way (#326). This is the canonical word-step definition its
19
+ * its columns this way. This is the canonical word-step definition its
20
20
  * cold sparse/relation folds call; its hot dense-column inner loop inlines this
21
21
  * exact step for speed and must stay in sync. Same `>>> 0` reasoning as
22
22
  * `fnv1aStep`. */
@@ -30,7 +30,7 @@ export declare function fnv1aStepWord(hash: number, word: number): number;
30
30
  export declare function fnv1a32(bytes: Uint8Array): number;
31
31
  /** FNV-1a 32-bit hash of the entire SAB region — header + descriptors +
32
32
  * column bytes. The canonical state identifier for cross-replay determinism
33
- * checks (#171 plan exit criterion §6.1.7).
33
+ * checks.
34
34
  *
35
35
  * The snapshot view is zero-copy (`snapshotColumnStore` is a view, not a
36
36
  * copy), so this is one scan over the live SAB with no allocation. */
@@ -131,14 +131,14 @@ export declare class Editor {
131
131
  undo: number;
132
132
  redo: number;
133
133
  };
134
- /** `true` when `undo()` would do something — allocation-free (M10). */
134
+ /** `true` when `undo()` would do something — allocation-free. */
135
135
  get canUndo(): boolean;
136
- /** `true` when `redo()` would do something — allocation-free (M10). */
136
+ /** `true` when `redo()` would do something — allocation-free. */
137
137
  get canRedo(): boolean;
138
138
  /**
139
139
  * Subscribe to undo/redo-stack changes: fires after every commit, undo,
140
140
  * redo, and clear — the push signal an "Undo (3)" affordance needs instead
141
- * of polling `depths()` per frame (M10). Returns an unsubscribe function.
141
+ * of polling `depths()` per frame. Returns an unsubscribe function.
142
142
  * Callbacks run synchronously in subscription order; read `canUndo` /
143
143
  * `canRedo` / `depths()` inside.
144
144
  */
@@ -146,7 +146,7 @@ export declare class Editor {
146
146
  private notify;
147
147
  /** Read one committed `(entity, component, field)` slot through the reader
148
148
  * this editor was constructed with — the default read for `fieldHandle`
149
- * when no channel thunk is supplied (M11). */
149
+ * when no channel thunk is supplied. */
150
150
  committedField(entityId: EntityID, def: ComponentDef, field: string): number | undefined;
151
151
  /**
152
152
  * The pending value the editor believes for a field that the committed read
@@ -131,14 +131,14 @@ export declare class Editor {
131
131
  undo: number;
132
132
  redo: number;
133
133
  };
134
- /** `true` when `undo()` would do something — allocation-free (M10). */
134
+ /** `true` when `undo()` would do something — allocation-free. */
135
135
  get canUndo(): boolean;
136
- /** `true` when `redo()` would do something — allocation-free (M10). */
136
+ /** `true` when `redo()` would do something — allocation-free. */
137
137
  get canRedo(): boolean;
138
138
  /**
139
139
  * Subscribe to undo/redo-stack changes: fires after every commit, undo,
140
140
  * redo, and clear — the push signal an "Undo (3)" affordance needs instead
141
- * of polling `depths()` per frame (M10). Returns an unsubscribe function.
141
+ * of polling `depths()` per frame. Returns an unsubscribe function.
142
142
  * Callbacks run synchronously in subscription order; read `canUndo` /
143
143
  * `canRedo` / `depths()` inside.
144
144
  */
@@ -146,7 +146,7 @@ export declare class Editor {
146
146
  private notify;
147
147
  /** Read one committed `(entity, component, field)` slot through the reader
148
148
  * this editor was constructed with — the default read for `fieldHandle`
149
- * when no channel thunk is supplied (M11). */
149
+ * when no channel thunk is supplied. */
150
150
  committedField(entityId: EntityID, def: ComponentDef, field: string): number | undefined;
151
151
  /**
152
152
  * The pending value the editor believes for a field that the committed read
@@ -1 +1 @@
1
- {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../../src/extensions/editor/editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../../src/extensions/editor/editor.ts"],"names":[],"mappings":"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"}