@fundamental-engine/core 0.9.3 → 0.9.5

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 (443) hide show
  1. package/dist/config/forces.config.d.ts +1 -1
  2. package/dist/config/forces.config.d.ts.map +1 -1
  3. package/dist/config/themes.d.ts +1 -1
  4. package/dist/conformance/run.d.ts +1 -1
  5. package/dist/conformance/run.d.ts.map +1 -1
  6. package/dist/conformance/run.js +6 -6
  7. package/dist/conformance/run.js.map +1 -1
  8. package/dist/conformance/types.d.ts +1 -1
  9. package/dist/conformance/types.d.ts.map +1 -1
  10. package/dist/contracts/guards.d.ts +1 -1
  11. package/dist/contracts/guards.d.ts.map +1 -1
  12. package/dist/contracts/passport.d.ts +1 -1
  13. package/dist/contracts/passport.d.ts.map +1 -1
  14. package/dist/diagnostics/energy.d.ts +1 -1
  15. package/dist/diagnostics/energy.d.ts.map +1 -1
  16. package/dist/diagnostics/fields.d.ts +1 -1
  17. package/dist/diagnostics/fields.d.ts.map +1 -1
  18. package/dist/diagnostics/modes.d.ts +1 -1
  19. package/dist/diagnostics/modes.d.ts.map +1 -1
  20. package/dist/diagnostics/modes.js +1 -1
  21. package/dist/diagnostics/modes.js.map +1 -1
  22. package/dist/diagnostics/potential.d.ts +1 -1
  23. package/dist/diagnostics/potential.d.ts.map +1 -1
  24. package/dist/diagnostics/probes.d.ts +1 -1
  25. package/dist/diagnostics/probes.d.ts.map +1 -1
  26. package/dist/diagnostics/probes.js +1 -1
  27. package/dist/diagnostics/probes.js.map +1 -1
  28. package/dist/diagnostics/render.d.ts +1 -1
  29. package/dist/diagnostics/render.d.ts.map +1 -1
  30. package/dist/engine/accretion.d.ts.map +1 -0
  31. package/dist/engine/accretion.js.map +1 -0
  32. package/dist/engine/agents.d.ts.map +1 -0
  33. package/dist/engine/agents.js.map +1 -0
  34. package/dist/engine/attention.d.ts.map +1 -0
  35. package/dist/engine/attention.js.map +1 -0
  36. package/dist/engine/causality.d.ts.map +1 -0
  37. package/dist/engine/causality.js.map +1 -0
  38. package/dist/engine/conditions.d.ts.map +1 -0
  39. package/dist/engine/conditions.js.map +1 -0
  40. package/dist/{core → engine}/currents.d.ts +1 -1
  41. package/dist/engine/currents.d.ts.map +1 -0
  42. package/dist/engine/currents.js.map +1 -0
  43. package/dist/engine/dock.d.ts.map +1 -0
  44. package/dist/engine/dock.js.map +1 -0
  45. package/dist/{core → engine}/events.d.ts +4 -1
  46. package/dist/engine/events.d.ts.map +1 -0
  47. package/dist/{core → engine}/events.js +7 -0
  48. package/dist/engine/events.js.map +1 -0
  49. package/dist/engine/feedback-sink.d.ts.map +1 -0
  50. package/dist/engine/feedback-sink.js.map +1 -0
  51. package/dist/engine/feedback.d.ts.map +1 -0
  52. package/dist/engine/feedback.js.map +1 -0
  53. package/dist/engine/field-snapshot.d.ts.map +1 -0
  54. package/dist/engine/field-snapshot.js.map +1 -0
  55. package/dist/engine/field-store.d.ts.map +1 -0
  56. package/dist/engine/field-store.js.map +1 -0
  57. package/dist/engine/field.d.ts.map +1 -0
  58. package/dist/{core → engine}/field.js +147 -1
  59. package/dist/engine/field.js.map +1 -0
  60. package/dist/engine/fieldline-seeds.d.ts.map +1 -0
  61. package/dist/engine/fieldline-seeds.js.map +1 -0
  62. package/dist/engine/fieldlines.d.ts.map +1 -0
  63. package/dist/{core → engine}/fieldlines.js +1 -1
  64. package/dist/engine/fieldlines.js.map +1 -0
  65. package/dist/engine/flow.d.ts.map +1 -0
  66. package/dist/engine/flow.js.map +1 -0
  67. package/dist/engine/formations.d.ts.map +1 -0
  68. package/dist/engine/formations.js.map +1 -0
  69. package/dist/engine/frame-harness.d.ts.map +1 -0
  70. package/dist/engine/frame-harness.js.map +1 -0
  71. package/dist/engine/governance.d.ts.map +1 -0
  72. package/dist/engine/governance.js.map +1 -0
  73. package/dist/engine/heatmap.d.ts.map +1 -0
  74. package/dist/{core → engine}/heatmap.js +1 -1
  75. package/dist/engine/heatmap.js.map +1 -0
  76. package/dist/engine/host-headless.d.ts.map +1 -0
  77. package/dist/engine/host-headless.js.map +1 -0
  78. package/dist/engine/host.d.ts.map +1 -0
  79. package/dist/engine/host.js.map +1 -0
  80. package/dist/engine/integrator.d.ts.map +1 -0
  81. package/dist/{core → engine}/integrator.js +5 -3
  82. package/dist/engine/integrator.js.map +1 -0
  83. package/dist/engine/lane-registry.d.ts.map +1 -0
  84. package/dist/engine/lane-registry.js.map +1 -0
  85. package/dist/engine/projection-agent-json.d.ts.map +1 -0
  86. package/dist/engine/projection-agent-json.js.map +1 -0
  87. package/dist/engine/query-lens.d.ts.map +1 -0
  88. package/dist/engine/query-lens.js.map +1 -0
  89. package/dist/engine/reactions.d.ts.map +1 -0
  90. package/dist/engine/reactions.js.map +1 -0
  91. package/dist/engine/registry.d.ts.map +1 -0
  92. package/dist/engine/registry.js.map +1 -0
  93. package/dist/engine/render-backend.d.ts.map +1 -0
  94. package/dist/engine/render-backend.js.map +1 -0
  95. package/dist/{core → engine}/render-modes.d.ts +1 -1
  96. package/dist/engine/render-modes.d.ts.map +1 -0
  97. package/dist/engine/render-modes.js.map +1 -0
  98. package/dist/engine/reservoir.d.ts.map +1 -0
  99. package/dist/engine/reservoir.js.map +1 -0
  100. package/dist/engine/scalar-grid.d.ts.map +1 -0
  101. package/dist/engine/scalar-grid.js.map +1 -0
  102. package/dist/engine/scanner.d.ts.map +1 -0
  103. package/dist/engine/scanner.js.map +1 -0
  104. package/dist/engine/shadow.d.ts.map +1 -0
  105. package/dist/engine/shadow.js.map +1 -0
  106. package/dist/engine/spatial-hash.d.ts.map +1 -0
  107. package/dist/engine/spatial-hash.js.map +1 -0
  108. package/dist/engine/streamlines.d.ts.map +1 -0
  109. package/dist/engine/streamlines.js.map +1 -0
  110. package/dist/engine/surface.d.ts.map +1 -0
  111. package/dist/engine/surface.js.map +1 -0
  112. package/dist/engine/temporal.d.ts.map +1 -0
  113. package/dist/engine/temporal.js.map +1 -0
  114. package/dist/engine/thermo.d.ts.map +1 -0
  115. package/dist/engine/thermo.js.map +1 -0
  116. package/dist/{core → engine}/types.d.ts +106 -4
  117. package/dist/engine/types.d.ts.map +1 -0
  118. package/dist/engine/types.js.map +1 -0
  119. package/dist/engine/weights.d.ts.map +1 -0
  120. package/dist/engine/weights.js.map +1 -0
  121. package/dist/forces/extended.d.ts +2 -2
  122. package/dist/forces/extended.d.ts.map +1 -1
  123. package/dist/forces/extended.js +1 -1
  124. package/dist/forces/index.d.ts +2 -2
  125. package/dist/forces/index.d.ts.map +1 -1
  126. package/dist/forces/natural.d.ts +2 -2
  127. package/dist/forces/natural.d.ts.map +1 -1
  128. package/dist/forces/natural.js +1 -1
  129. package/dist/index.d.ts +39 -39
  130. package/dist/index.d.ts.map +1 -1
  131. package/dist/index.js +39 -39
  132. package/dist/index.js.map +1 -1
  133. package/dist/inspect/report.js +2 -2
  134. package/dist/inspect/report.js.map +1 -1
  135. package/dist/{core → math}/geometry.d.ts +1 -1
  136. package/dist/math/geometry.d.ts.map +1 -0
  137. package/dist/{core → math}/geometry.js.map +1 -1
  138. package/dist/{core → math}/math.d.ts.map +1 -1
  139. package/dist/{core → math}/math.js.map +1 -1
  140. package/dist/recipes/catalog.d.ts +20 -11
  141. package/dist/recipes/catalog.d.ts.map +1 -1
  142. package/dist/recipes/catalog.js +17 -9
  143. package/dist/recipes/catalog.js.map +1 -1
  144. package/dist/recipes/compile.d.ts +33 -19
  145. package/dist/recipes/compile.d.ts.map +1 -1
  146. package/dist/recipes/compile.js +17 -11
  147. package/dist/recipes/compile.js.map +1 -1
  148. package/dist/recipes/focus.d.ts +18 -0
  149. package/dist/recipes/focus.d.ts.map +1 -0
  150. package/dist/recipes/focus.js +34 -0
  151. package/dist/recipes/focus.js.map +1 -0
  152. package/dist/recipes/index.d.ts +3 -0
  153. package/dist/recipes/index.d.ts.map +1 -1
  154. package/dist/recipes/index.js +6 -3
  155. package/dist/recipes/index.js.map +1 -1
  156. package/dist/recipes/schema.d.ts +36 -21
  157. package/dist/recipes/schema.d.ts.map +1 -1
  158. package/dist/recipes/schema.js +12 -7
  159. package/dist/recipes/schema.js.map +1 -1
  160. package/dist/recipes/wayfinding.d.ts +5 -3
  161. package/dist/recipes/wayfinding.d.ts.map +1 -1
  162. package/dist/recipes/wayfinding.js +6 -2
  163. package/dist/recipes/wayfinding.js.map +1 -1
  164. package/dist/record/record.d.ts +1 -1
  165. package/dist/record/record.d.ts.map +1 -1
  166. package/dist/record/record.js +3 -3
  167. package/dist/record/record.js.map +1 -1
  168. package/dist/version.d.ts +1 -1
  169. package/dist/version.js +1 -1
  170. package/dist/visual/channels.js +1 -1
  171. package/dist/visual/mapping.js +1 -1
  172. package/dist/world/ablation/ablation.d.ts +39 -0
  173. package/dist/world/ablation/ablation.d.ts.map +1 -0
  174. package/dist/world/ablation/ablation.js +449 -0
  175. package/dist/world/ablation/ablation.js.map +1 -0
  176. package/dist/world/adapters/field-runtime.d.ts +56 -0
  177. package/dist/world/adapters/field-runtime.d.ts.map +1 -0
  178. package/dist/world/adapters/field-runtime.js +250 -0
  179. package/dist/world/adapters/field-runtime.js.map +1 -0
  180. package/dist/world/adapters/fsm-runtime.d.ts +18 -0
  181. package/dist/world/adapters/fsm-runtime.d.ts.map +1 -0
  182. package/dist/world/adapters/fsm-runtime.js +153 -0
  183. package/dist/world/adapters/fsm-runtime.js.map +1 -0
  184. package/dist/world/adapters/governor-runtime.d.ts +23 -0
  185. package/dist/world/adapters/governor-runtime.d.ts.map +1 -0
  186. package/dist/world/adapters/governor-runtime.js +185 -0
  187. package/dist/world/adapters/governor-runtime.js.map +1 -0
  188. package/dist/world/adapters/planner-runtime.d.ts +20 -0
  189. package/dist/world/adapters/planner-runtime.d.ts.map +1 -0
  190. package/dist/world/adapters/planner-runtime.js +144 -0
  191. package/dist/world/adapters/planner-runtime.js.map +1 -0
  192. package/dist/world/conformance/corpus.d.ts +89 -0
  193. package/dist/world/conformance/corpus.d.ts.map +1 -0
  194. package/dist/world/conformance/corpus.js +195 -0
  195. package/dist/world/conformance/corpus.js.map +1 -0
  196. package/dist/world/conformance/discoveries.d.ts +50 -0
  197. package/dist/world/conformance/discoveries.d.ts.map +1 -0
  198. package/dist/world/conformance/discoveries.js +71 -0
  199. package/dist/world/conformance/discoveries.js.map +1 -0
  200. package/dist/world/conformance/evidence.d.ts +37 -0
  201. package/dist/world/conformance/evidence.d.ts.map +1 -0
  202. package/dist/world/conformance/evidence.js +53 -0
  203. package/dist/world/conformance/evidence.js.map +1 -0
  204. package/dist/world/conformance/negative-results.d.ts +57 -0
  205. package/dist/world/conformance/negative-results.d.ts.map +1 -0
  206. package/dist/world/conformance/negative-results.js +73 -0
  207. package/dist/world/conformance/negative-results.js.map +1 -0
  208. package/dist/world/conformance/predictions.d.ts +66 -0
  209. package/dist/world/conformance/predictions.d.ts.map +1 -0
  210. package/dist/world/conformance/predictions.js +141 -0
  211. package/dist/world/conformance/predictions.js.map +1 -0
  212. package/dist/world/cross-substrate.d.ts +19 -0
  213. package/dist/world/cross-substrate.d.ts.map +1 -0
  214. package/dist/world/cross-substrate.js +123 -0
  215. package/dist/world/cross-substrate.js.map +1 -0
  216. package/dist/world/dynamics.d.ts +166 -0
  217. package/dist/world/dynamics.d.ts.map +1 -0
  218. package/dist/world/dynamics.js +30 -0
  219. package/dist/world/dynamics.js.map +1 -0
  220. package/dist/world/envelope.d.ts +44 -0
  221. package/dist/world/envelope.d.ts.map +1 -0
  222. package/dist/world/envelope.js +77 -0
  223. package/dist/world/envelope.js.map +1 -0
  224. package/dist/world/episodes/episodes.d.ts +64 -0
  225. package/dist/world/episodes/episodes.d.ts.map +1 -0
  226. package/dist/world/episodes/episodes.js +104 -0
  227. package/dist/world/episodes/episodes.js.map +1 -0
  228. package/dist/world/equivalence.d.ts +70 -0
  229. package/dist/world/equivalence.d.ts.map +1 -0
  230. package/dist/world/equivalence.js +205 -0
  231. package/dist/world/equivalence.js.map +1 -0
  232. package/dist/world/experiments/declarative-dynamics.d.ts +87 -0
  233. package/dist/world/experiments/declarative-dynamics.d.ts.map +1 -0
  234. package/dist/world/experiments/declarative-dynamics.js +153 -0
  235. package/dist/world/experiments/declarative-dynamics.js.map +1 -0
  236. package/dist/world/governor-equivalence.d.ts +51 -0
  237. package/dist/world/governor-equivalence.d.ts.map +1 -0
  238. package/dist/world/governor-equivalence.js +126 -0
  239. package/dist/world/governor-equivalence.js.map +1 -0
  240. package/dist/world/kernel.d.ts +49 -0
  241. package/dist/world/kernel.d.ts.map +1 -0
  242. package/dist/world/kernel.js +64 -0
  243. package/dist/world/kernel.js.map +1 -0
  244. package/dist/world/observatory/capture.d.ts +10 -0
  245. package/dist/world/observatory/capture.d.ts.map +1 -0
  246. package/dist/world/observatory/capture.js +371 -0
  247. package/dist/world/observatory/capture.js.map +1 -0
  248. package/dist/world/observatory/evidence-log.d.ts +131 -0
  249. package/dist/world/observatory/evidence-log.d.ts.map +1 -0
  250. package/dist/world/observatory/evidence-log.js +43 -0
  251. package/dist/world/observatory/evidence-log.js.map +1 -0
  252. package/dist/world/opportunity/opportunity.d.ts +85 -0
  253. package/dist/world/opportunity/opportunity.d.ts.map +1 -0
  254. package/dist/world/opportunity/opportunity.js +67 -0
  255. package/dist/world/opportunity/opportunity.js.map +1 -0
  256. package/dist/world/projection/evidence-profile.d.ts +51 -0
  257. package/dist/world/projection/evidence-profile.d.ts.map +1 -0
  258. package/dist/world/projection/evidence-profile.js +93 -0
  259. package/dist/world/projection/evidence-profile.js.map +1 -0
  260. package/dist/world/projection/projection.d.ts +162 -0
  261. package/dist/world/projection/projection.d.ts.map +1 -0
  262. package/dist/world/projection/projection.js +145 -0
  263. package/dist/world/projection/projection.js.map +1 -0
  264. package/dist/world/properties/properties.d.ts +87 -0
  265. package/dist/world/properties/properties.d.ts.map +1 -0
  266. package/dist/world/properties/properties.js +172 -0
  267. package/dist/world/properties/properties.js.map +1 -0
  268. package/dist/world/substrates/fsm.d.ts +59 -0
  269. package/dist/world/substrates/fsm.d.ts.map +1 -0
  270. package/dist/world/substrates/fsm.js +57 -0
  271. package/dist/world/substrates/fsm.js.map +1 -0
  272. package/dist/world/substrates/governor.d.ts +53 -0
  273. package/dist/world/substrates/governor.d.ts.map +1 -0
  274. package/dist/world/substrates/governor.js +73 -0
  275. package/dist/world/substrates/governor.js.map +1 -0
  276. package/dist/world/substrates/planner.d.ts +82 -0
  277. package/dist/world/substrates/planner.d.ts.map +1 -0
  278. package/dist/world/substrates/planner.js +114 -0
  279. package/dist/world/substrates/planner.js.map +1 -0
  280. package/dist/world/world.d.ts +73 -0
  281. package/dist/world/world.d.ts.map +1 -0
  282. package/dist/world/world.js +2 -0
  283. package/dist/world/world.js.map +1 -0
  284. package/package.json +1 -1
  285. package/dist/core/accretion.d.ts.map +0 -1
  286. package/dist/core/accretion.js.map +0 -1
  287. package/dist/core/agents.d.ts.map +0 -1
  288. package/dist/core/agents.js.map +0 -1
  289. package/dist/core/attention.d.ts.map +0 -1
  290. package/dist/core/attention.js.map +0 -1
  291. package/dist/core/causality.d.ts.map +0 -1
  292. package/dist/core/causality.js.map +0 -1
  293. package/dist/core/conditions.d.ts.map +0 -1
  294. package/dist/core/conditions.js.map +0 -1
  295. package/dist/core/currents.d.ts.map +0 -1
  296. package/dist/core/currents.js.map +0 -1
  297. package/dist/core/dock.d.ts.map +0 -1
  298. package/dist/core/dock.js.map +0 -1
  299. package/dist/core/events.d.ts.map +0 -1
  300. package/dist/core/events.js.map +0 -1
  301. package/dist/core/feedback-sink.d.ts.map +0 -1
  302. package/dist/core/feedback-sink.js.map +0 -1
  303. package/dist/core/feedback.d.ts.map +0 -1
  304. package/dist/core/feedback.js.map +0 -1
  305. package/dist/core/field-snapshot.d.ts.map +0 -1
  306. package/dist/core/field-snapshot.js.map +0 -1
  307. package/dist/core/field-store.d.ts.map +0 -1
  308. package/dist/core/field-store.js.map +0 -1
  309. package/dist/core/field.d.ts.map +0 -1
  310. package/dist/core/field.js.map +0 -1
  311. package/dist/core/fieldline-seeds.d.ts.map +0 -1
  312. package/dist/core/fieldline-seeds.js.map +0 -1
  313. package/dist/core/fieldlines.d.ts.map +0 -1
  314. package/dist/core/fieldlines.js.map +0 -1
  315. package/dist/core/flow.d.ts.map +0 -1
  316. package/dist/core/flow.js.map +0 -1
  317. package/dist/core/formations.d.ts.map +0 -1
  318. package/dist/core/formations.js.map +0 -1
  319. package/dist/core/frame-harness.d.ts.map +0 -1
  320. package/dist/core/frame-harness.js.map +0 -1
  321. package/dist/core/geometry.d.ts.map +0 -1
  322. package/dist/core/governance.d.ts.map +0 -1
  323. package/dist/core/governance.js.map +0 -1
  324. package/dist/core/heatmap.d.ts.map +0 -1
  325. package/dist/core/heatmap.js.map +0 -1
  326. package/dist/core/host-headless.d.ts.map +0 -1
  327. package/dist/core/host-headless.js.map +0 -1
  328. package/dist/core/host.d.ts.map +0 -1
  329. package/dist/core/host.js.map +0 -1
  330. package/dist/core/integrator.d.ts.map +0 -1
  331. package/dist/core/integrator.js.map +0 -1
  332. package/dist/core/lane-registry.d.ts.map +0 -1
  333. package/dist/core/lane-registry.js.map +0 -1
  334. package/dist/core/projection-agent-json.d.ts.map +0 -1
  335. package/dist/core/projection-agent-json.js.map +0 -1
  336. package/dist/core/query-lens.d.ts.map +0 -1
  337. package/dist/core/query-lens.js.map +0 -1
  338. package/dist/core/reactions.d.ts.map +0 -1
  339. package/dist/core/reactions.js.map +0 -1
  340. package/dist/core/registry.d.ts.map +0 -1
  341. package/dist/core/registry.js.map +0 -1
  342. package/dist/core/render-backend.d.ts.map +0 -1
  343. package/dist/core/render-backend.js.map +0 -1
  344. package/dist/core/render-modes.d.ts.map +0 -1
  345. package/dist/core/render-modes.js.map +0 -1
  346. package/dist/core/reservoir.d.ts.map +0 -1
  347. package/dist/core/reservoir.js.map +0 -1
  348. package/dist/core/scalar-grid.d.ts.map +0 -1
  349. package/dist/core/scalar-grid.js.map +0 -1
  350. package/dist/core/scanner.d.ts.map +0 -1
  351. package/dist/core/scanner.js.map +0 -1
  352. package/dist/core/shadow.d.ts.map +0 -1
  353. package/dist/core/shadow.js.map +0 -1
  354. package/dist/core/spatial-hash.d.ts.map +0 -1
  355. package/dist/core/spatial-hash.js.map +0 -1
  356. package/dist/core/streamlines.d.ts.map +0 -1
  357. package/dist/core/streamlines.js.map +0 -1
  358. package/dist/core/surface.d.ts.map +0 -1
  359. package/dist/core/surface.js.map +0 -1
  360. package/dist/core/temporal.d.ts.map +0 -1
  361. package/dist/core/temporal.js.map +0 -1
  362. package/dist/core/thermo.d.ts.map +0 -1
  363. package/dist/core/thermo.js.map +0 -1
  364. package/dist/core/types.d.ts.map +0 -1
  365. package/dist/core/types.js.map +0 -1
  366. package/dist/core/weights.d.ts.map +0 -1
  367. package/dist/core/weights.js.map +0 -1
  368. /package/dist/{core → engine}/accretion.d.ts +0 -0
  369. /package/dist/{core → engine}/accretion.js +0 -0
  370. /package/dist/{core → engine}/agents.d.ts +0 -0
  371. /package/dist/{core → engine}/agents.js +0 -0
  372. /package/dist/{core → engine}/attention.d.ts +0 -0
  373. /package/dist/{core → engine}/attention.js +0 -0
  374. /package/dist/{core → engine}/causality.d.ts +0 -0
  375. /package/dist/{core → engine}/causality.js +0 -0
  376. /package/dist/{core → engine}/conditions.d.ts +0 -0
  377. /package/dist/{core → engine}/conditions.js +0 -0
  378. /package/dist/{core → engine}/currents.js +0 -0
  379. /package/dist/{core → engine}/dock.d.ts +0 -0
  380. /package/dist/{core → engine}/dock.js +0 -0
  381. /package/dist/{core → engine}/feedback-sink.d.ts +0 -0
  382. /package/dist/{core → engine}/feedback-sink.js +0 -0
  383. /package/dist/{core → engine}/feedback.d.ts +0 -0
  384. /package/dist/{core → engine}/feedback.js +0 -0
  385. /package/dist/{core → engine}/field-snapshot.d.ts +0 -0
  386. /package/dist/{core → engine}/field-snapshot.js +0 -0
  387. /package/dist/{core → engine}/field-store.d.ts +0 -0
  388. /package/dist/{core → engine}/field-store.js +0 -0
  389. /package/dist/{core → engine}/field.d.ts +0 -0
  390. /package/dist/{core → engine}/fieldline-seeds.d.ts +0 -0
  391. /package/dist/{core → engine}/fieldline-seeds.js +0 -0
  392. /package/dist/{core → engine}/fieldlines.d.ts +0 -0
  393. /package/dist/{core → engine}/flow.d.ts +0 -0
  394. /package/dist/{core → engine}/flow.js +0 -0
  395. /package/dist/{core → engine}/formations.d.ts +0 -0
  396. /package/dist/{core → engine}/formations.js +0 -0
  397. /package/dist/{core → engine}/frame-harness.d.ts +0 -0
  398. /package/dist/{core → engine}/frame-harness.js +0 -0
  399. /package/dist/{core → engine}/governance.d.ts +0 -0
  400. /package/dist/{core → engine}/governance.js +0 -0
  401. /package/dist/{core → engine}/heatmap.d.ts +0 -0
  402. /package/dist/{core → engine}/host-headless.d.ts +0 -0
  403. /package/dist/{core → engine}/host-headless.js +0 -0
  404. /package/dist/{core → engine}/host.d.ts +0 -0
  405. /package/dist/{core → engine}/host.js +0 -0
  406. /package/dist/{core → engine}/integrator.d.ts +0 -0
  407. /package/dist/{core → engine}/lane-registry.d.ts +0 -0
  408. /package/dist/{core → engine}/lane-registry.js +0 -0
  409. /package/dist/{core → engine}/projection-agent-json.d.ts +0 -0
  410. /package/dist/{core → engine}/projection-agent-json.js +0 -0
  411. /package/dist/{core → engine}/query-lens.d.ts +0 -0
  412. /package/dist/{core → engine}/query-lens.js +0 -0
  413. /package/dist/{core → engine}/reactions.d.ts +0 -0
  414. /package/dist/{core → engine}/reactions.js +0 -0
  415. /package/dist/{core → engine}/registry.d.ts +0 -0
  416. /package/dist/{core → engine}/registry.js +0 -0
  417. /package/dist/{core → engine}/render-backend.d.ts +0 -0
  418. /package/dist/{core → engine}/render-backend.js +0 -0
  419. /package/dist/{core → engine}/render-modes.js +0 -0
  420. /package/dist/{core → engine}/reservoir.d.ts +0 -0
  421. /package/dist/{core → engine}/reservoir.js +0 -0
  422. /package/dist/{core → engine}/scalar-grid.d.ts +0 -0
  423. /package/dist/{core → engine}/scalar-grid.js +0 -0
  424. /package/dist/{core → engine}/scanner.d.ts +0 -0
  425. /package/dist/{core → engine}/scanner.js +0 -0
  426. /package/dist/{core → engine}/shadow.d.ts +0 -0
  427. /package/dist/{core → engine}/shadow.js +0 -0
  428. /package/dist/{core → engine}/spatial-hash.d.ts +0 -0
  429. /package/dist/{core → engine}/spatial-hash.js +0 -0
  430. /package/dist/{core → engine}/streamlines.d.ts +0 -0
  431. /package/dist/{core → engine}/streamlines.js +0 -0
  432. /package/dist/{core → engine}/surface.d.ts +0 -0
  433. /package/dist/{core → engine}/surface.js +0 -0
  434. /package/dist/{core → engine}/temporal.d.ts +0 -0
  435. /package/dist/{core → engine}/temporal.js +0 -0
  436. /package/dist/{core → engine}/thermo.d.ts +0 -0
  437. /package/dist/{core → engine}/thermo.js +0 -0
  438. /package/dist/{core → engine}/types.js +0 -0
  439. /package/dist/{core → engine}/weights.d.ts +0 -0
  440. /package/dist/{core → engine}/weights.js +0 -0
  441. /package/dist/{core → math}/geometry.js +0 -0
  442. /package/dist/{core → math}/math.d.ts +0 -0
  443. /package/dist/{core → math}/math.js +0 -0
@@ -0,0 +1,371 @@
1
+ /**
2
+ * Instrumentation adapter (EXPERIMENTAL, internal) — Phase O1/O2.
3
+ *
4
+ * Drives real substrates through their real `DynamicsContract` adapters and RECORDS what the runtime
5
+ * emitted. It contains no findings of its own: every derivation in the resulting bundle is the return
6
+ * value of a runtime function (`runConformance`, `evaluateOpportunity`, `project`, `detectEpisodes`,
7
+ * `runAblations`, the registries), and every registry section is passed through verbatim.
8
+ *
9
+ * The rule this file must never break: **if the runtime did not produce it, the bundle does not carry
10
+ * it.** A substrate with no captured run appears in `pendingSubstrates`, never as an empty run that
11
+ * looks like a result.
12
+ */
13
+ import { hostWorld } from "../kernel.js";
14
+ import { createWorldEnvelope } from "../envelope.js";
15
+ import { runConformance, corpus, corpusLedger } from "../conformance/corpus.js";
16
+ import { discoveries } from "../conformance/discoveries.js";
17
+ import { predictions, predictionAccuracy } from "../conformance/predictions.js";
18
+ import { negativeResults, negativeLedger } from "../conformance/negative-results.js";
19
+ import { projectionClaims, projectionEvidenceProfile } from "../projection/evidence-profile.js";
20
+ import { evaluateOpportunity } from "../opportunity/opportunity.js";
21
+ import { detectEpisodes } from "../episodes/episodes.js";
22
+ import { runAblations } from "../ablation/ablation.js";
23
+ import { project, toOpportunityProjection } from "../projection/projection.js";
24
+ import { governorDynamics } from "../adapters/governor-runtime.js";
25
+ import { fsmDynamics } from "../adapters/fsm-runtime.js";
26
+ import { plannerDynamics } from "../adapters/planner-runtime.js";
27
+ import { fieldRuntimeDynamics, worldFromCompiledPattern } from "../adapters/field-runtime.js";
28
+ import { structuralCoverage } from "../equivalence.js";
29
+ import { BUNDLE_SCHEMA, evidenceNodesFrom, } from "./evidence-log.js";
30
+ function world(id) {
31
+ return { envelope: createWorldEnvelope(id), entities: [], relations: [], invariants: [], projections: [] };
32
+ }
33
+ // ───────────────────────────────────────────────────────────────────── fixtures (inputs, not results)
34
+ const DOOR = {
35
+ id: 'door',
36
+ initial: 'closed',
37
+ states: ['closed', 'open', 'locked', 'destroyed'],
38
+ accepting: ['destroyed'],
39
+ transitions: [
40
+ { from: 'closed', on: 'open', to: 'open' },
41
+ { from: 'open', on: 'close', to: 'closed' },
42
+ { from: 'closed', on: 'lock', to: 'locked', guard: { key: 'hasKey', equals: true } },
43
+ { from: 'open', on: 'smash', to: 'destroyed', assign: { intact: false } },
44
+ ],
45
+ context: { hasKey: false, intact: true },
46
+ };
47
+ const GRAPH = {
48
+ id: 'grid',
49
+ nodes: [{ id: 'a', x: 0, y: 0 }, { id: 'b', x: 1, y: 0 }, { id: 'c', x: 2, y: 0 }, { id: 'd', x: 1, y: 1 }, { id: 'z', x: 3, y: 0 }],
50
+ edges: [
51
+ { from: 'a', to: 'b', cost: 1 }, { from: 'a', to: 'd', cost: 4 },
52
+ { from: 'b', to: 'c', cost: 1 }, { from: 'd', to: 'z', cost: 1 }, { from: 'c', to: 'z', cost: 1 },
53
+ ],
54
+ start: 'a',
55
+ goal: 'z',
56
+ heuristic: { kind: 'euclidean' },
57
+ };
58
+ function compiledPattern() {
59
+ return {
60
+ id: 'observatory', recipe: { id: 'observatory' },
61
+ bodies: [{ attributes: { 'data-body': 'attract' }, tokens: ['attract'] }],
62
+ relationships: [], feedback: [], diagnostics: [], metrics: [], conditions: [],
63
+ render: { underlay: null, overlay: [], heatmap: false, unapplied: [] },
64
+ reducedMotion: { reducedMotion: 'none', meaningWithoutMotion: '', staticOutputs: [] },
65
+ };
66
+ }
67
+ // ─────────────────────────────────────────────────────────────────────────────────── run recording
68
+ /**
69
+ * Record one substrate's execution. The transitions come from `hostWorld`, the conformance verdict
70
+ * from `runConformance` — this function decides nothing about either.
71
+ */
72
+ function recordRun(substrate, makeWorld, makeContract, inputs, extraFacts = []) {
73
+ const w = makeWorld();
74
+ const contract = makeContract(w);
75
+ const host = hostWorld(w, contract);
76
+ const transitions = [];
77
+ const evidence = [];
78
+ for (const [i, input] of inputs.entries()) {
79
+ const prefix = `${substrate}:${i}`;
80
+ const r = host.advance(input);
81
+ const nodes = evidenceNodesFrom(r.evidence, i, prefix, `${substrate}.advance`);
82
+ evidence.push(...nodes);
83
+ const snap = contract.capabilities.snapshot ? host.readState() : undefined;
84
+ const reading = snap && 'ok' in snap && snap.ok ? snap.value.reading.metrics : undefined;
85
+ transitions.push({
86
+ step: i,
87
+ input,
88
+ output: r.ok ? r.value : undefined,
89
+ lifecycle: host.lastLifecycle,
90
+ failure: r.ok ? undefined : { code: r.error.code, message: r.error.message },
91
+ reading,
92
+ evidenceIds: nodes.map((n) => n.id),
93
+ });
94
+ if (host.lastLifecycle === 'terminal')
95
+ break;
96
+ }
97
+ // state visibility, sourced from the contract's own declarations — never assumed
98
+ const last = transitions[transitions.length - 1];
99
+ const stateFacts = [
100
+ ...Object.entries(last?.reading ?? {}).map(([key, value]) => ({
101
+ key,
102
+ visibility: 'observed',
103
+ value,
104
+ basis: 'contract.snapshot() reading',
105
+ })),
106
+ ...extraFacts,
107
+ ];
108
+ if (contract.capabilities.restore) {
109
+ stateFacts.push({ key: '<full state>', visibility: 'reconstructed', basis: 'capabilities.restore = true; snapshot is restorable' });
110
+ }
111
+ const law = contract.capabilities.declareTransitionLaw && contract.describeTransitionLaw
112
+ ? contract.describeTransitionLaw()
113
+ : undefined;
114
+ const conformance = runConformance(makeWorld, makeContract, inputs);
115
+ host.dispose();
116
+ return {
117
+ run: {
118
+ substrate,
119
+ contractId: contract.identity.id,
120
+ executionKind: contract.executionKind,
121
+ capabilities: contract.capabilities,
122
+ determinism: contract.determinism,
123
+ transitions,
124
+ stateFacts,
125
+ conformance,
126
+ transitionLaw: law && law.ok ? law.value : undefined,
127
+ terminated: host.lastLifecycle === 'terminal',
128
+ },
129
+ evidence,
130
+ };
131
+ }
132
+ // ────────────────────────────────────────────────────────────────────────── projection recording
133
+ const PROJECTION_OPERATIONS = [
134
+ { id: 'publish', reversible: false, recoveryPaths: ['unpublish'] },
135
+ { id: 'unpublish', reversible: true, recoveryPaths: [] },
136
+ { id: 'delete', reversible: false, recoveryPaths: [] },
137
+ { id: 'audit', reversible: true, recoveryPaths: [] },
138
+ ];
139
+ const PROJECTION_AUTHORITY = [
140
+ { operation: 'publish', scope: 'editor', authoritySource: 'editorial-policy-v2' },
141
+ { operation: 'audit', scope: 'auditor', authoritySource: 'compliance-charter' },
142
+ ];
143
+ function projectionSource() {
144
+ const envelope = createWorldEnvelope('projection-world');
145
+ return {
146
+ envelope,
147
+ operations: PROJECTION_OPERATIONS,
148
+ snapshot: { envelope, step: 7, entities: [], metrics: { drafts: 3, published: 2, internalRiskScore: 91, moderationQueue: 5 } },
149
+ capabilities: ['publish', 'unpublish', 'audit'],
150
+ authority: PROJECTION_AUTHORITY,
151
+ evidenceIds: ['ev-publish-log', 'ev-risk-model', 'ev-moderation-trace'],
152
+ };
153
+ }
154
+ function projectionDefinitions() {
155
+ const envelope = projectionSource().envelope;
156
+ const base = {
157
+ sourceEnvelope: envelope,
158
+ invariants: [{ id: 'drafts-bounded', statement: 'drafts <= 10', reads: ['drafts'] }],
159
+ provenance: [{ id: 't1', kind: 'redact', detail: 'risk score redacted' }],
160
+ };
161
+ return [
162
+ {
163
+ ...base,
164
+ identity: { id: 'editor', version: '1' },
165
+ scope: { consumer: 'editor', kind: 'participant' },
166
+ observation: { observable: ['drafts', 'published'], hidden: ['internalRiskScore'] },
167
+ operations: { exposed: ['publish'], hidden: ['audit'], signaled: ['publish'] },
168
+ evidence: { accessible: ['ev-publish-log'], withheld: ['ev-risk-model'] },
169
+ authority: { presented: ['publish'] },
170
+ },
171
+ {
172
+ ...base,
173
+ identity: { id: 'auditor', version: '1' },
174
+ scope: { consumer: 'auditor', kind: 'agent' },
175
+ observation: { observable: ['drafts', 'internalRiskScore'], hidden: [] },
176
+ operations: { exposed: ['audit'], hidden: ['publish'], signaled: ['audit'] },
177
+ evidence: { accessible: ['ev-risk-model', 'ev-moderation-trace'], withheld: [] },
178
+ authority: { presented: ['audit'] },
179
+ },
180
+ {
181
+ ...base,
182
+ identity: { id: 'overreaching', version: '1' },
183
+ scope: { consumer: 'untrusted', kind: 'external-system' },
184
+ observation: { observable: ['drafts'], hidden: ['internalRiskScore'] },
185
+ operations: { exposed: ['publish', 'delete'], hidden: [], signaled: ['delete'] },
186
+ evidence: { accessible: ['ev-publish-log'], withheld: [] },
187
+ authority: { presented: ['publish', 'delete'] },
188
+ },
189
+ ];
190
+ }
191
+ function recordProjections() {
192
+ const source = projectionSource();
193
+ const evidence = [];
194
+ const projections = projectionDefinitions().map((definition) => {
195
+ const result = project(definition, source);
196
+ const surfaceId = `projection:${definition.identity.id}`;
197
+ evidence.push({
198
+ id: surfaceId,
199
+ kind: 'runtime-derivation',
200
+ origin: 'project()',
201
+ label: `surface ${definition.identity.id}`,
202
+ payload: result.surface,
203
+ derivedFrom: [],
204
+ });
205
+ result.anomalies.forEach((a, i) => {
206
+ evidence.push({
207
+ id: `${surfaceId}:anomaly:${i}`,
208
+ kind: 'runtime-derivation',
209
+ origin: 'project()',
210
+ label: `${a.code}: ${a.subject}`,
211
+ payload: a,
212
+ derivedFrom: [surfaceId],
213
+ });
214
+ });
215
+ const omegaProjection = toOpportunityProjection(result.surface);
216
+ const opportunities = PROJECTION_OPERATIONS.map((op) => {
217
+ const r = evaluateOpportunity({
218
+ world: { envelope: source.envelope, operations: PROJECTION_OPERATIONS },
219
+ participant: definition.scope.consumer,
220
+ state: { enabled: ['publish', 'audit', 'unpublish'], reachableOutcomes: ['publish', 'audit', 'unpublish'] },
221
+ projection: omegaProjection,
222
+ history: [],
223
+ capabilities: source.capabilities,
224
+ authority: source.authority,
225
+ }, op.id);
226
+ evidence.push({
227
+ id: `${surfaceId}:omega:${op.id}`,
228
+ kind: 'runtime-derivation',
229
+ origin: 'evaluateOpportunity()',
230
+ label: `Ω_sys ${definition.identity.id}/${op.id} → ${r.available ? 'available' : 'unavailable'}`,
231
+ payload: r,
232
+ derivedFrom: [surfaceId],
233
+ });
234
+ return r;
235
+ });
236
+ return {
237
+ definitionId: definition.identity.id,
238
+ scope: `${definition.scope.consumer} (${definition.scope.kind})`,
239
+ result,
240
+ opportunities,
241
+ evidenceIds: [surfaceId],
242
+ };
243
+ });
244
+ return { projections, evidence };
245
+ }
246
+ // ───────────────────────────────────────────────────────────────────────────── episode recording
247
+ const EPISODE_TRACE = [
248
+ { step: 1, from: 'A', to: 'B', operation: 'request', influence: 0.8 },
249
+ { step: 2, from: 'B', to: 'A', operation: 'respond', influence: 0.7 },
250
+ { step: 3, from: 'A', to: 'B', operation: 'confirm', influence: 0.6 },
251
+ { step: 9, from: 'C', to: 'D', operation: 'notify', influence: 0.5 },
252
+ { step: 11, from: 'C', to: 'E', operation: 'notify', influence: 0.5 },
253
+ { step: 20, from: 'B', to: 'A', operation: 'followup', influence: 0.2 },
254
+ ];
255
+ /** Several parameterizations, ALL retained — the mission requires alternates never overwrite. */
256
+ function recordDetections() {
257
+ const participants = ['A', 'B', 'C', 'D', 'E'];
258
+ const variants = [
259
+ {
260
+ label: 'baseline (window 5, influence ≥ 0.3)',
261
+ contract: { boundary: { participants, start: 0, end: 30 }, timescale: 1, coupling: { kind: 'direct-influence', minInfluence: 0.3 }, recurrenceWindow: 5, minimumInfluence: 0.3 },
262
+ },
263
+ {
264
+ label: 'wide window (25)',
265
+ contract: { boundary: { participants, start: 0, end: 30 }, timescale: 1, coupling: { kind: 'direct-influence', minInfluence: 0.3 }, recurrenceWindow: 25, minimumInfluence: 0.3 },
266
+ },
267
+ {
268
+ label: 'strict influence (≥ 0.65)',
269
+ contract: { boundary: { participants, start: 0, end: 30 }, timescale: 1, coupling: { kind: 'direct-influence', minInfluence: 0.65 }, recurrenceWindow: 5, minimumInfluence: 0.65 },
270
+ },
271
+ {
272
+ label: 'narrow boundary (A,B only)',
273
+ contract: { boundary: { participants: ['A', 'B'], start: 0, end: 30 }, timescale: 1, coupling: { kind: 'direct-influence', minInfluence: 0.3 }, recurrenceWindow: 5, minimumInfluence: 0.3 },
274
+ },
275
+ ];
276
+ const evidence = [];
277
+ const detections = variants.map(({ label, contract }, i) => {
278
+ const result = detectEpisodes(EPISODE_TRACE, contract, participants);
279
+ const id = `detection:${i}`;
280
+ evidence.push({
281
+ id,
282
+ kind: 'runtime-derivation',
283
+ origin: 'detectEpisodes()',
284
+ label: `${label} → ${result.episodes.length} candidate episode(s)`,
285
+ payload: result,
286
+ derivedFrom: [],
287
+ });
288
+ return { label, contract, result, evidenceId: id };
289
+ });
290
+ return { detections, evidence };
291
+ }
292
+ // ─────────────────────────────────────────────────────────────────────────────── bundle assembly
293
+ /**
294
+ * Assemble the whole bundle. Registry sections are passed through VERBATIM — a test asserts they
295
+ * deep-equal the live registries, so the Observatory cannot show a discovery the runtime does not hold.
296
+ */
297
+ export function captureBundle(revision) {
298
+ const evidence = [];
299
+ const runs = [];
300
+ const fsm = recordRun('FiniteStateMachine', () => world('fsm-world'), (w) => fsmDynamics(w, DOOR), [{ event: 'open' }, { event: 'close' }, { event: 'open' }, { event: 'smash' }, { event: 'open' }]);
301
+ runs.push(fsm.run);
302
+ evidence.push(...fsm.evidence);
303
+ const planner = recordRun('SearchPlanner', () => world('planner-world'), (w) => plannerDynamics(w, GRAPH), Array.from({ length: 12 }, () => ({ expand: 1 })));
304
+ runs.push(planner.run);
305
+ evidence.push(...planner.evidence);
306
+ const governor = recordRun('QualityGovernor', () => world('governor-world'), (w) => governorDynamics(w), [30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 10, 10, 10].map((durationMs) => ({ durationMs })));
307
+ runs.push(governor.run);
308
+ evidence.push(...governor.evidence);
309
+ // the field is lossy: its coverage classification is the runtime's own, not a judgement made here
310
+ const fieldFacts = structuralCoverage()
311
+ .filter((c) => c.classification !== 'represented')
312
+ .map((c) => ({
313
+ key: c.construct,
314
+ visibility: c.classification === 'lossy' || c.classification === 'unavailable' ? 'unavailable' : 'observed',
315
+ basis: `structuralCoverage(): ${c.classification}`,
316
+ }));
317
+ const field = recordRun('FieldRuntime', () => worldFromCompiledPattern(compiledPattern()).world, (w) => fieldRuntimeDynamics(w), Array.from({ length: 6 }, () => ({ steps: 1 })), fieldFacts);
318
+ runs.push(field.run);
319
+ evidence.push(...field.evidence);
320
+ const { projections, evidence: projectionEvidence } = recordProjections();
321
+ evidence.push(...projectionEvidence);
322
+ const { detections, evidence: detectionEvidence } = recordDetections();
323
+ evidence.push(...detectionEvidence);
324
+ const ablations = runAblations();
325
+ ablations.forEach((a, i) => {
326
+ evidence.push({
327
+ id: `ablation:${i}`,
328
+ kind: 'runtime-derivation',
329
+ origin: 'runAblations()',
330
+ label: `${a.element} / ${a.form} → ${a.classification}`,
331
+ payload: a,
332
+ derivedFrom: [],
333
+ });
334
+ });
335
+ // registry entries become evidence nodes so the Observatory can cite them like anything else
336
+ discoveries().forEach((d) => {
337
+ evidence.push({ id: d.id, kind: 'discovery', origin: 'discoveries()', label: `${d.id} ${d.concept}`, payload: d, derivedFrom: [] });
338
+ });
339
+ predictions().forEach((p) => {
340
+ evidence.push({ id: p.id, kind: 'prediction', origin: 'predictions()', label: `${p.id} ${p.grade}`, payload: p, derivedFrom: [] });
341
+ });
342
+ negativeResults().forEach((n) => {
343
+ evidence.push({ id: n.id, kind: 'negative-result', origin: 'negativeResults()', label: `${n.id} ${n.status}`, payload: n, derivedFrom: [] });
344
+ });
345
+ corpus().forEach((e) => {
346
+ evidence.push({ id: `corpus:${e.substrate}`, kind: 'registry-entry', origin: 'corpus()', label: `${e.substrate} (${e.status})`, payload: e, derivedFrom: [] });
347
+ });
348
+ const captured = new Set(runs.map((r) => r.substrate));
349
+ const pendingSubstrates = corpus().filter((e) => !captured.has(e.substrate)).map((e) => e.substrate);
350
+ return {
351
+ revision: { ...revision, bundleSchema: BUNDLE_SCHEMA },
352
+ registries: {
353
+ corpus: corpus(),
354
+ corpusLedger: corpusLedger(),
355
+ discoveries: discoveries(),
356
+ predictions: predictions(),
357
+ predictionAccuracy: predictionAccuracy(),
358
+ negativeResults: negativeResults(),
359
+ negativeLedger: negativeLedger(),
360
+ projectionClaims: projectionClaims(),
361
+ projectionProfile: projectionEvidenceProfile(),
362
+ },
363
+ runs,
364
+ projections,
365
+ detections,
366
+ ablations,
367
+ evidence,
368
+ pendingSubstrates,
369
+ };
370
+ }
371
+ //# sourceMappingURL=capture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capture.js","sourceRoot":"","sources":["../../../src/world/observatory/capture.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,131 @@
1
+ /**
2
+ * Normalized evidence log (EXPERIMENTAL, internal) — Phase O2.
3
+ *
4
+ * The Observatory is an inspection instrument, not a source of findings. This file defines the
5
+ * artifact that separates the two: the runtime EMITS an evidence log; the Observatory RENDERS it and
6
+ * derives nothing. Core exports nothing publicly and imports no DOM, so this boundary is enforced by
7
+ * the package layout rather than by convention.
8
+ *
9
+ * living system → instrumentation adapter → normalized evidence log → observatory
10
+ *
11
+ * Every visible statement in the Observatory must reduce to a node in this log, and every node names
12
+ * the runtime function that produced it (`origin`). A node with no origin cannot be displayed as a
13
+ * finding, because nothing in the runtime claimed it.
14
+ *
15
+ * Deliberately reuses existing runtime types (`OpportunityResult`, `DetectionResult`, `AblationRecord`,
16
+ * `ProjectionResult`, `DynamicsEvidence`, …) rather than restating them. New types appear ONLY where
17
+ * several sources had to be represented uniformly — the evidence node and the recorded transition.
18
+ */
19
+ import type { DynamicsCapabilities, DynamicsEvidence, DynamicsExecutionKind, DeterminismDeclaration, TransitionLifecycle } from '../dynamics.ts';
20
+ import type { OpportunityResult } from '../opportunity/opportunity.ts';
21
+ import type { DetectionContract, DetectionResult } from '../episodes/episodes.ts';
22
+ import type { AblationRecord } from '../ablation/ablation.ts';
23
+ import type { ProjectionResult } from '../projection/projection.ts';
24
+ import type { ConformanceReport, CorpusEntry, CorpusLedger } from '../conformance/corpus.ts';
25
+ import type { Discovery } from '../conformance/discoveries.ts';
26
+ import type { Prediction, PredictionAccuracy } from '../conformance/predictions.ts';
27
+ import type { NegativeResult, NegativeLedger } from '../conformance/negative-results.ts';
28
+ import type { ProjectionClaim, EvidenceProfile } from '../projection/evidence-profile.ts';
29
+ /** What a piece of evidence IS. The Observatory groups and filters by this, never by substrate. */
30
+ export type EvidenceNodeKind = 'raw-event' | 'adapter-output' | 'runtime-derivation' | 'registry-entry' | 'prediction' | 'discovery' | 'negative-result';
31
+ /**
32
+ * One node in the evidence DAG. `derivedFrom` makes every edge citable: an Observatory pane showing a
33
+ * conclusion can walk back to the inputs the runtime actually used.
34
+ */
35
+ export interface EvidenceNode {
36
+ readonly id: string;
37
+ readonly kind: EvidenceNodeKind;
38
+ /** The runtime function that produced this. Provenance — never a UI label. */
39
+ readonly origin: string;
40
+ readonly label: string;
41
+ readonly step?: number;
42
+ readonly payload: unknown;
43
+ readonly derivedFrom: readonly string[];
44
+ }
45
+ /**
46
+ * How a piece of world state became visible. `inferred` exists in the vocabulary so the Observatory can
47
+ * show that the count is ZERO — the runtime never infers state, and an absent category is invisible.
48
+ */
49
+ export type StateVisibility = 'declared' | 'observed' | 'reconstructed' | 'inferred' | 'unavailable';
50
+ export interface StateFact {
51
+ readonly key: string;
52
+ readonly visibility: StateVisibility;
53
+ readonly value?: number;
54
+ /** Why it carries this visibility, sourced from the runtime (e.g. a coverage classification). */
55
+ readonly basis: string;
56
+ readonly evidenceId?: string;
57
+ }
58
+ export interface RecordedTransition {
59
+ readonly step: number;
60
+ readonly input: unknown;
61
+ readonly output?: unknown;
62
+ readonly lifecycle: TransitionLifecycle;
63
+ readonly failure?: {
64
+ readonly code: string;
65
+ readonly message: string;
66
+ };
67
+ /** Snapshot reading AFTER this transition, when the substrate advertises snapshot. */
68
+ readonly reading?: Readonly<Record<string, number>>;
69
+ readonly evidenceIds: readonly string[];
70
+ }
71
+ export interface RecordedRun {
72
+ readonly substrate: string;
73
+ readonly contractId: string;
74
+ readonly executionKind: DynamicsExecutionKind;
75
+ readonly capabilities: DynamicsCapabilities;
76
+ readonly determinism: DeterminismDeclaration;
77
+ readonly transitions: readonly RecordedTransition[];
78
+ readonly stateFacts: readonly StateFact[];
79
+ readonly conformance: ConformanceReport;
80
+ /** Present only when the substrate can declare its law; absent is meaningful, not missing. */
81
+ readonly transitionLaw?: unknown;
82
+ readonly terminated: boolean;
83
+ }
84
+ /** One projection applied to one snapshot, with the Ω_sys it produced. Both from runtime calls. */
85
+ export interface RecordedProjection {
86
+ readonly definitionId: string;
87
+ readonly scope: string;
88
+ readonly result: ProjectionResult;
89
+ readonly opportunities: readonly OpportunityResult[];
90
+ readonly evidenceIds: readonly string[];
91
+ }
92
+ /** Episode detection at ONE parameterization. Multiple are kept; none overwrites another. */
93
+ export interface RecordedDetection {
94
+ readonly label: string;
95
+ readonly contract: DetectionContract;
96
+ readonly result: DetectionResult;
97
+ readonly evidenceId: string;
98
+ }
99
+ export interface ObservatoryRegistries {
100
+ readonly corpus: readonly CorpusEntry[];
101
+ readonly corpusLedger: CorpusLedger;
102
+ readonly discoveries: readonly Discovery[];
103
+ readonly predictions: readonly Prediction[];
104
+ readonly predictionAccuracy: PredictionAccuracy;
105
+ readonly negativeResults: readonly NegativeResult[];
106
+ readonly negativeLedger: NegativeLedger;
107
+ readonly projectionClaims: readonly ProjectionClaim[];
108
+ readonly projectionProfile: EvidenceProfile;
109
+ }
110
+ export interface BundleRevision {
111
+ /** Commit the bundle was captured at. Supplied by the emitter; the runtime does not read git. */
112
+ readonly commit: string;
113
+ readonly coreVersion: string;
114
+ readonly bundleSchema: string;
115
+ }
116
+ export interface ObservatoryBundle {
117
+ readonly revision: BundleRevision;
118
+ readonly registries: ObservatoryRegistries;
119
+ readonly runs: readonly RecordedRun[];
120
+ readonly projections: readonly RecordedProjection[];
121
+ readonly detections: readonly RecordedDetection[];
122
+ readonly ablations: readonly AblationRecord[];
123
+ /** Flat evidence DAG. Every id referenced anywhere in the bundle resolves here. */
124
+ readonly evidence: readonly EvidenceNode[];
125
+ /** Substrates in the corpus with no captured run — shown as pending, never fabricated. */
126
+ readonly pendingSubstrates: readonly string[];
127
+ }
128
+ export declare const BUNDLE_SCHEMA = "observatory-bundle/1";
129
+ /** Flattens a contract's evidence channel into log nodes. Pure re-expression; nothing is computed. */
130
+ export declare function evidenceNodesFrom(evidence: DynamicsEvidence, step: number, prefix: string, origin: string): EvidenceNode[];
131
+ //# sourceMappingURL=evidence-log.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evidence-log.d.ts","sourceRoot":"","sources":["../../../src/world/observatory/evidence-log.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ export const BUNDLE_SCHEMA = 'observatory-bundle/1';
2
+ /** Flattens a contract's evidence channel into log nodes. Pure re-expression; nothing is computed. */
3
+ export function evidenceNodesFrom(evidence, step, prefix, origin) {
4
+ const nodes = [];
5
+ evidence.declaredInputs.forEach((r, i) => {
6
+ nodes.push({ id: `${prefix}:in:${i}`, kind: 'raw-event', origin, label: `input ${r.kind}`, step, payload: r, derivedFrom: [] });
7
+ });
8
+ evidence.substrateResponses.forEach((r, i) => {
9
+ nodes.push({
10
+ id: `${prefix}:out:${i}`,
11
+ kind: 'adapter-output',
12
+ origin,
13
+ label: `response ${r.kind}`,
14
+ step,
15
+ payload: r,
16
+ derivedFrom: evidence.declaredInputs.map((_, j) => `${prefix}:in:${j}`),
17
+ });
18
+ });
19
+ evidence.executionTrace.forEach((t, i) => {
20
+ nodes.push({
21
+ id: `${prefix}:trace:${i}`,
22
+ kind: 'runtime-derivation',
23
+ origin,
24
+ label: t.summary,
25
+ step,
26
+ payload: t,
27
+ derivedFrom: evidence.substrateResponses.map((_, j) => `${prefix}:out:${j}`),
28
+ });
29
+ });
30
+ evidence.unresolvedInterpretations.forEach((o, i) => {
31
+ nodes.push({
32
+ id: `${prefix}:obligation:${i}`,
33
+ kind: 'runtime-derivation',
34
+ origin,
35
+ label: `unresolved: ${o.claim}`,
36
+ step,
37
+ payload: o,
38
+ derivedFrom: [],
39
+ });
40
+ });
41
+ return nodes;
42
+ }
43
+ //# sourceMappingURL=evidence-log.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evidence-log.js","sourceRoot":"","sources":["../../../src/world/observatory/evidence-log.ts"],"names":[],"mappings":"AA+IA,MAAM,CAAC,MAAM,aAAa,GAAG,sBAAsB,CAAC;AAEpD,sGAAsG;AACtG,MAAM,UAAU,iBAAiB,CAC/B,QAA0B,EAC1B,IAAY,EACZ,MAAc,EACd,MAAc;IAEd,MAAM,KAAK,GAAmB,EAAE,CAAC;IACjC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACvC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IAClI,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC3C,KAAK,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,GAAG,MAAM,QAAQ,CAAC,EAAE;YACxB,IAAI,EAAE,gBAAgB;YACtB,MAAM;YACN,KAAK,EAAE,YAAY,CAAC,CAAC,IAAI,EAAE;YAC3B,IAAI;YACJ,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,EAAE,CAAC;SACxE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACvC,KAAK,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,GAAG,MAAM,UAAU,CAAC,EAAE;YAC1B,IAAI,EAAE,oBAAoB;YAC1B,MAAM;YACN,KAAK,EAAE,CAAC,CAAC,OAAO;YAChB,IAAI;YACJ,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,QAAQ,CAAC,EAAE,CAAC;SAC7E,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAClD,KAAK,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE;YAC/B,IAAI,EAAE,oBAAoB;YAC1B,MAAM;YACN,KAAK,EAAE,eAAe,CAAC,CAAC,KAAK,EAAE;YAC/B,IAAI;YACJ,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,EAAE;SAChB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC"}