@fundamental-engine/core 0.9.2 → 0.9.3

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 (97) hide show
  1. package/README.md +12 -11
  2. package/dist/agents/event-agent.d.ts.map +1 -1
  3. package/dist/agents/event-agent.js +13 -9
  4. package/dist/agents/event-agent.js.map +1 -1
  5. package/dist/config/forces.config.js +2 -2
  6. package/dist/config/forces.config.js.map +1 -1
  7. package/dist/conformance/run.d.ts +2 -2
  8. package/dist/conformance/run.d.ts.map +1 -1
  9. package/dist/conformance/run.js +30 -27
  10. package/dist/conformance/run.js.map +1 -1
  11. package/dist/conformance/types.d.ts +3 -0
  12. package/dist/conformance/types.d.ts.map +1 -1
  13. package/dist/contracts/guards.d.ts +3 -1
  14. package/dist/contracts/guards.d.ts.map +1 -1
  15. package/dist/contracts/guards.js.map +1 -1
  16. package/dist/contracts/passport.d.ts.map +1 -1
  17. package/dist/contracts/passport.js +9 -0
  18. package/dist/contracts/passport.js.map +1 -1
  19. package/dist/core/accretion.d.ts +1 -1
  20. package/dist/core/accretion.d.ts.map +1 -1
  21. package/dist/core/accretion.js +1 -1
  22. package/dist/core/accretion.js.map +1 -1
  23. package/dist/core/events.d.ts +3 -3
  24. package/dist/core/events.d.ts.map +1 -1
  25. package/dist/core/events.js +1 -1
  26. package/dist/core/feedback-sink.d.ts +1 -1
  27. package/dist/core/feedback-sink.d.ts.map +1 -1
  28. package/dist/core/feedback-sink.js +1 -2
  29. package/dist/core/feedback-sink.js.map +1 -1
  30. package/dist/core/field.d.ts.map +1 -1
  31. package/dist/core/field.js +697 -82
  32. package/dist/core/field.js.map +1 -1
  33. package/dist/core/frame-harness.d.ts +2 -2
  34. package/dist/core/frame-harness.d.ts.map +1 -1
  35. package/dist/core/frame-harness.js +2 -2
  36. package/dist/core/frame-harness.js.map +1 -1
  37. package/dist/core/geometry.d.ts +9 -0
  38. package/dist/core/geometry.d.ts.map +1 -1
  39. package/dist/core/geometry.js +16 -0
  40. package/dist/core/geometry.js.map +1 -1
  41. package/dist/core/host.d.ts +95 -21
  42. package/dist/core/host.d.ts.map +1 -1
  43. package/dist/core/host.js +53 -1
  44. package/dist/core/host.js.map +1 -1
  45. package/dist/core/integrator.d.ts +22 -0
  46. package/dist/core/integrator.d.ts.map +1 -1
  47. package/dist/core/integrator.js +118 -15
  48. package/dist/core/integrator.js.map +1 -1
  49. package/dist/core/reactions.d.ts +7 -0
  50. package/dist/core/reactions.d.ts.map +1 -1
  51. package/dist/core/reactions.js +7 -0
  52. package/dist/core/reactions.js.map +1 -1
  53. package/dist/core/render-modes.d.ts +64 -0
  54. package/dist/core/render-modes.d.ts.map +1 -1
  55. package/dist/core/render-modes.js +165 -0
  56. package/dist/core/render-modes.js.map +1 -1
  57. package/dist/core/scanner.d.ts +29 -3
  58. package/dist/core/scanner.d.ts.map +1 -1
  59. package/dist/core/scanner.js +41 -3
  60. package/dist/core/scanner.js.map +1 -1
  61. package/dist/core/spatial-hash.d.ts +8 -0
  62. package/dist/core/spatial-hash.d.ts.map +1 -1
  63. package/dist/core/spatial-hash.js +26 -3
  64. package/dist/core/spatial-hash.js.map +1 -1
  65. package/dist/core/types.d.ts +308 -13
  66. package/dist/core/types.d.ts.map +1 -1
  67. package/dist/forces/extended.d.ts.map +1 -1
  68. package/dist/forces/extended.js +8 -2
  69. package/dist/forces/extended.js.map +1 -1
  70. package/dist/forces/natural.d.ts.map +1 -1
  71. package/dist/forces/natural.js +11 -12
  72. package/dist/forces/natural.js.map +1 -1
  73. package/dist/index.d.ts +1 -1
  74. package/dist/index.js +1 -1
  75. package/dist/recipes/compile.d.ts.map +1 -1
  76. package/dist/recipes/compile.js +3 -1
  77. package/dist/recipes/compile.js.map +1 -1
  78. package/dist/recipes/schema.d.ts +1 -1
  79. package/dist/recipes/schema.d.ts.map +1 -1
  80. package/dist/recipes/schema.js +1 -0
  81. package/dist/recipes/schema.js.map +1 -1
  82. package/dist/record/record.d.ts +1 -1
  83. package/dist/record/record.d.ts.map +1 -1
  84. package/dist/semantic/layers.d.ts +16 -2
  85. package/dist/semantic/layers.d.ts.map +1 -1
  86. package/dist/semantic/layers.js +20 -3
  87. package/dist/semantic/layers.js.map +1 -1
  88. package/dist/semantic/materials.js +3 -3
  89. package/dist/semantic/materials.js.map +1 -1
  90. package/dist/semantic/states.js +1 -1
  91. package/dist/semantic/states.js.map +1 -1
  92. package/dist/version.d.ts +1 -1
  93. package/dist/version.js +1 -1
  94. package/dist/visual/visualization.d.ts.map +1 -1
  95. package/dist/visual/visualization.js +4 -0
  96. package/dist/visual/visualization.js.map +1 -1
  97. package/package.json +2 -1
@@ -1,3 +1,4 @@
1
+ import { devWarnNoOp } from "../contracts/guards.js";
1
2
  /** meaning → field metric (definition §11 / interaction §15 DataAgent merged). */
2
3
  export const SEMANTIC_LAYERS = {
3
4
  importance: { metric: 'attention', response: 'strength / attention, stronger presence' },
@@ -14,14 +15,30 @@ export const SEMANTIC_LAYERS = {
14
15
  };
15
16
  /**
16
17
  * Convert a semantic value (0..1) into the `ElementMetrics` contribution it implies, for the layers
17
- * whose target metric is a real ElementMetric (status→phase and hierarchy→potential are conceptual
18
- * and returned as `{}`). Pure.
18
+ * whose target metric is a real ElementMetric.
19
+ *
20
+ * Any layer whose target is a CONCEPTUAL/VISUAL lane rather than a scalar `ElementMetrics` channel
21
+ * returns `{}` — today that is `status` (→ `phase`); the `SemanticMapping` type also permits
22
+ * `potential`, and it is handled the same way. There is no numeric metric to drive. This is
23
+ * intentional, but it used to be silent; a dev-only warn (deduped per layer, compiled out in
24
+ * production) now explains *why* the result is empty so a caller doesn't debug a mysterious no-op.
25
+ *
26
+ * Resolution order when co-occurring layers drive the SAME metric channel: `semanticToMetrics` is
27
+ * per-layer, so it never merges — the CALLER decides. Because the ElementMetrics contributions are a
28
+ * flat object, the last write wins when spread/merged in declaration order. The channels that collide:
29
+ * - `attention` ← `importance` + `priority`
30
+ * - `heat` ← `urgency` + `recency`
31
+ * - `memory` ← `relationship` + `history`
32
+ * Feed the higher-authority layer LAST (or max/sum them yourself) if both are present; the default
33
+ * object-spread order is "last layer wins", not additive. Pure.
19
34
  */
20
35
  export function semanticToMetrics(layer, value) {
21
36
  const m = SEMANTIC_LAYERS[layer];
22
37
  const v = value < 0 ? 0 : value > 1 ? 1 : value;
23
- if (m.metric === 'phase' || m.metric === 'potential')
38
+ if (m.metric === 'phase' || m.metric === 'potential') {
39
+ devWarnNoOp('NOOP_CONCEPTUAL_LAYER', `semanticToMetrics('${layer}') returned {} — the '${layer}' layer maps to the conceptual/visual '${m.metric}' lane (${m.response}), which has no scalar ElementMetrics channel. Drive it through the phase/potential visualization, not as a metric.`);
24
40
  return {};
41
+ }
25
42
  return { [m.metric]: v };
26
43
  }
27
44
  //# sourceMappingURL=layers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"layers.js","sourceRoot":"","sources":["../../src/semantic/layers.ts"],"names":[],"mappings":"AA6BA,kFAAkF;AAClF,MAAM,CAAC,MAAM,eAAe,GAAqD;IAC/E,UAAU,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,yCAAyC,EAAE;IACxF,UAAU,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,mCAAmC,EAAE;IAClF,WAAW,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,8BAA8B,EAAE;IAC5E,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,yBAAyB,EAAE;IAChE,YAAY,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,0BAA0B,EAAE;IACxE,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,qCAAqC,EAAE;IAC9E,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,0CAA0C,EAAE;IACjF,SAAS,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,0BAA0B,EAAE;IACvE,aAAa,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE;IAC/D,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,iCAAiC,EAAE;IACxE,QAAQ,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,iBAAiB,EAAE;CAC/D,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAoB,EAAE,KAAa;IACnE,MAAM,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAChD,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW;QAAE,OAAO,EAAE,CAAC;IAChE,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAoB,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"layers.js","sourceRoot":"","sources":["../../src/semantic/layers.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAuBrD,kFAAkF;AAClF,MAAM,CAAC,MAAM,eAAe,GAAqD;IAC/E,UAAU,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,yCAAyC,EAAE;IACxF,UAAU,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,mCAAmC,EAAE;IAClF,WAAW,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,8BAA8B,EAAE;IAC5E,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,yBAAyB,EAAE;IAChE,YAAY,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,0BAA0B,EAAE;IACxE,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,qCAAqC,EAAE;IAC9E,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,0CAA0C,EAAE;IACjF,SAAS,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,0BAA0B,EAAE;IACvE,aAAa,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE;IAC/D,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,iCAAiC,EAAE;IACxE,QAAQ,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,iBAAiB,EAAE;CAC/D,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAoB,EAAE,KAAa;IACnE,MAAM,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAChD,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QACrD,WAAW,CACT,uBAAuB,EACvB,sBAAsB,KAAK,yBAAyB,KAAK,0CAA0C,CAAC,CAAC,MAAM,WAAW,CAAC,CAAC,QAAQ,qHAAqH,CACtP,CAAC;QACF,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAoB,CAAC;AAC7C,CAAC"}
@@ -1,10 +1,10 @@
1
1
  export const INTERACTION_MATERIALS = {
2
- glass: { tokens: ['lens', 'wall'], note: 'lens + reflect + low drag' },
3
- rubber: { tokens: ['tether', 'viscosity'], note: 'spring + damping' },
2
+ glass: { tokens: ['lens', 'wall'], note: 'lens + wall + low viscosity' },
3
+ rubber: { tokens: ['tether', 'viscosity'], note: 'tether + viscosity' },
4
4
  liquid: { tokens: ['cohesion', 'pressure'], render: ['metaballs'], note: 'cohesion + pressure' },
5
5
  plasma: { tokens: ['fieldflow', 'thermal'], render: ['trails', 'field-lines'], note: 'fieldflow + thermal + trails' },
6
6
  dust: { tokens: ['diffuse'], note: 'diffuse + low mass' },
7
- metal: { tokens: ['magnetism', 'wall'], note: 'magnetism + reflect' },
7
+ metal: { tokens: ['magnetism', 'wall'], note: 'magnetism + wall' },
8
8
  fabric: { tokens: ['link', 'shear'], note: 'link + shear' },
9
9
  paper: { tokens: ['memory'], note: 'low motion + memory' },
10
10
  stone: { tokens: ['wall'], note: 'high mass + low response' },
@@ -1 +1 @@
1
- {"version":3,"file":"materials.js","sourceRoot":"","sources":["../../src/semantic/materials.ts"],"names":[],"mappings":"AA6BA,MAAM,CAAC,MAAM,qBAAqB,GAA0D;IAC1F,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE;IACtE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE;IACrE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE;IAChG,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,IAAI,EAAE,8BAA8B,EAAE;IACrH,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE;IACzD,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE;IACrE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE;IAC3D,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE;IAC1D,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE;IAC7D,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,4BAA4B,EAAE;CACjG,CAAC;AAEF,mDAAmD;AACnD,MAAM,UAAU,YAAY,CAAC,QAA6B;IACxD,OAAO,qBAAqB,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"materials.js","sourceRoot":"","sources":["../../src/semantic/materials.ts"],"names":[],"mappings":"AA6BA,MAAM,CAAC,MAAM,qBAAqB,GAA0D;IAC1F,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE;IACxE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE;IACvE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE;IAChG,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,IAAI,EAAE,8BAA8B,EAAE;IACrH,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE;IACzD,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAClE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE;IAC3D,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE;IAC1D,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE;IAC7D,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,4BAA4B,EAAE;CACjG,CAAC;AAEF,mDAAmD;AACnD,MAAM,UAAU,YAAY,CAAC,QAA6B;IACxD,OAAO,qBAAqB,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC"}
@@ -14,7 +14,7 @@ export const FIELD_STATES = {
14
14
  critical: 'reduce sources / warn',
15
15
  celebrating: 'burst / emission',
16
16
  hovered: 'attract',
17
- pressed: 'sink (absorb)',
17
+ pressed: 'sink (capture)',
18
18
  loading: 'stream / swirl',
19
19
  success: 'release',
20
20
  error: 'repel + thermal',
@@ -1 +1 @@
1
- {"version":3,"file":"states.js","sourceRoot":"","sources":["../../src/semantic/states.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAmBH,sEAAsE;AACtE,MAAM,CAAC,MAAM,YAAY,GAAyC;IAChE,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,oBAAoB;IAC7B,SAAS,EAAE,iBAAiB;IAC5B,UAAU,EAAE,QAAQ;IACpB,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,mBAAmB;IAC5B,QAAQ,EAAE,uBAAuB;IACjC,WAAW,EAAE,kBAAkB;IAC/B,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,eAAe;IACxB,OAAO,EAAE,gBAAgB;IACzB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,iBAAiB;CACzB,CAAC;AAEF,+CAA+C;AAC/C,MAAM,UAAU,YAAY,CAAC,CAAS;IACpC,OAAO,CAAC,IAAI,YAAY,CAAC;AAC3B,CAAC"}
1
+ {"version":3,"file":"states.js","sourceRoot":"","sources":["../../src/semantic/states.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAmBH,sEAAsE;AACtE,MAAM,CAAC,MAAM,YAAY,GAAyC;IAChE,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,oBAAoB;IAC7B,SAAS,EAAE,iBAAiB;IAC5B,UAAU,EAAE,QAAQ;IACpB,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,mBAAmB;IAC5B,QAAQ,EAAE,uBAAuB;IACjC,WAAW,EAAE,kBAAkB;IAC/B,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,gBAAgB;IACzB,OAAO,EAAE,gBAAgB;IACzB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,iBAAiB;CACzB,CAAC;AAEF,+CAA+C;AAC/C,MAAM,UAAU,YAAY,CAAC,CAAS;IACpC,OAAO,CAAC,IAAI,YAAY,CAAC;AAC3B,CAAC"}
package/dist/version.d.ts CHANGED
@@ -4,5 +4,5 @@
4
4
  * with `packages/core/package.json` by `version.test.ts` (the build fails if they drift), so the
5
5
  * release bump is the single source of truth.
6
6
  */
7
- export declare const FIELD_VERSION = "0.9.2";
7
+ export declare const FIELD_VERSION = "0.9.3";
8
8
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -4,5 +4,5 @@
4
4
  * with `packages/core/package.json` by `version.test.ts` (the build fails if they drift), so the
5
5
  * release bump is the single source of truth.
6
6
  */
7
- export const FIELD_VERSION = '0.9.2';
7
+ export const FIELD_VERSION = '0.9.3';
8
8
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.d.ts","sourceRoot":"","sources":["../../src/visual/visualization.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,uEAAuE;AACvE,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,cAAc,EAAE,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC;IAChD,4BAA4B;IAC5B,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,sGAAsG;AACtG,eAAO,MAAM,yBAAyB,EAAE,SAAS,qBAAqB,EAcrE,CAAC;AAEF,+DAA+D;AAC/D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC;CAC/B;AAED,0GAA0G;AAC1G,eAAO,MAAM,YAAY,EAAE,SAAS,cAAc,EAiBjD,CAAC;AAEF,iGAAiG;AACjG,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CASzE,CAAC"}
1
+ {"version":3,"file":"visualization.d.ts","sourceRoot":"","sources":["../../src/visual/visualization.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,uEAAuE;AACvE,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,cAAc,EAAE,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC;IAChD,4BAA4B;IAC5B,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,sGAAsG;AACtG,eAAO,MAAM,yBAAyB,EAAE,SAAS,qBAAqB,EAcrE,CAAC;AAEF,+DAA+D;AAC/D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC;CAC/B;AAED,0GAA0G;AAC1G,eAAO,MAAM,YAAY,EAAE,SAAS,cAAc,EAqBjD,CAAC;AAEF,iGAAiG;AACjG,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CASzE,CAAC"}
@@ -32,6 +32,10 @@ export const RENDER_MODES = [
32
32
  { mode: 'inspector', type: 'debug', shows: 'bodies, agents, metrics, contracts', status: 'shipped' },
33
33
  { mode: 'causality', type: 'debug', shows: 'contribution sources', status: 'shipped' },
34
34
  { mode: 'prediction', type: 'debug', shows: 'ghost trajectory', status: 'shipped' },
35
+ { mode: 'knockout', type: 'matter', shows: 'matter as negative space in a field wash', status: 'shipped' },
36
+ { mode: 'redshift', type: 'matter', shows: 'Doppler + gravitational spectral shift', status: 'shipped' },
37
+ { mode: 'blackbody', type: 'matter', shows: 'energy as thermal color', status: 'shipped' },
38
+ { mode: 'depth', type: 'matter', shows: 'the z lane — parallax, occlusion, defocus', status: 'shipped' },
35
39
  ];
36
40
  /** Named visualization presets (viz-taxonomy "Visualization Presets") as render-layer stacks. */
37
41
  export const VISUALIZATION_PRESETS = {
@@ -1 +1 @@
1
- {"version":3,"file":"visualization.js","sourceRoot":"","sources":["../../src/visual/visualization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"visualization.js","sourceRoot":"","sources":["../../src/visual/visualization.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-engine/core",
3
- "version": "0.9.2",
3
+ "version": "0.9.3",
4
4
  "description": "A reciprocal DOM-physics field — elements bend the field; the field's density bends them back.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -49,6 +49,7 @@
49
49
  "access": "public"
50
50
  },
51
51
  "devDependencies": {
52
+ "@types/node": "^22.0.0",
52
53
  "typescript": "^5.9.3"
53
54
  },
54
55
  "scripts": {