@almadar/runtime 6.50.0 → 6.51.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
- import { createTickScheduler, EventBus, createUnifiedLoader, MockPersistenceAdapter, InMemoryPersistence, preprocessSchema, normalizeCallSiteConfigToValues, StateMachineManager, parseDurationString, validateEventPayload, formatPayloadValidationError, collectDeclaredConfigDefaults, collectDeclaredEntityDefaults, EffectExecutor } from './chunk-3FYWURKS.js';
2
- export { InMemoryPersistence, collectDeclaredConfigDefaults } from './chunk-3FYWURKS.js';
1
+ import { createTickScheduler, EventBus, createUnifiedLoader, MockPersistenceAdapter, InMemoryPersistence, preprocessSchema, normalizeCallSiteConfigToValues, StateMachineManager, parseDurationString, validateEventPayload, formatPayloadValidationError, collectDeclaredConfigDefaults, collectDeclaredEntityDefaults, EffectExecutor } from './chunk-BNTXTICR.js';
2
+ export { InMemoryPersistence, collectDeclaredConfigDefaults } from './chunk-BNTXTICR.js';
3
3
  import { isValidCronExpression } from './chunk-OU3ITB5S.js';
4
4
  import { createContextFromBindings, resolveCallSitePayloadCaptures, applyRowAccess, checkMutationAccess, accessDeniedMessage } from './chunk-XLMDWRMB.js';
5
5
  import './chunk-T4VDAB4C.js';
@@ -4579,12 +4579,13 @@ async function preprocessSchema(schema, options) {
4579
4579
  design: resolvedOrbital.original.design,
4580
4580
  // Gap #22: pass through auxiliary entities so OrbitalServerRuntime's
4581
4581
  // mock-seed branch registers SearchResult / FilterTarget / PagedItem
4582
- // alongside the molecule's primary entity. Without this, an inlined
4583
- // .orb that has `auxiliaryEntities` populated by the Rust inline
4584
- // phase still loses them here, and `(set @entity.searchTerm ...)` /
4585
- // `(fetch SearchResult ...)` from no-rebind imports hit unregistered
4586
- // persistence and silently no-op.
4587
- auxiliaryEntities: resolvedOrbital.original.auxiliaryEntities
4582
+ // alongside the molecule's primary entity and DERIVE them for
4583
+ // no-rebind imported traits. L1-emitted registry .orbs carry no
4584
+ // auxiliaryEntities (only the Rust inline phase adds them, and the
4585
+ // runtime path never runs it), so a trait imported without `-> Entity`
4586
+ // stays bound to its atom's own entity while that entity was never
4587
+ // registered or seeded here — hard zero rows.
4588
+ auxiliaryEntities: deriveAuxiliaryEntities(resolvedOrbital)
4588
4589
  };
4589
4590
  preprocessedOrbitals.push(preprocessedOrbital);
4590
4591
  }
@@ -4602,6 +4603,25 @@ async function preprocessSchema(schema, options) {
4602
4603
  }
4603
4604
  };
4604
4605
  }
4606
+ function deriveAuxiliaryEntities(resolvedOrbital) {
4607
+ const combined = [...resolvedOrbital.original.auxiliaryEntities ?? []];
4608
+ const seen = /* @__PURE__ */ new Set([resolvedOrbital.entity.name]);
4609
+ for (const aux of combined) {
4610
+ if (typeof aux !== "string" && "name" in aux && typeof aux.name === "string") {
4611
+ seen.add(aux.name);
4612
+ }
4613
+ }
4614
+ for (const rt of resolvedOrbital.traits) {
4615
+ if (rt.source.type !== "imported" || rt.linkedEntity) continue;
4616
+ const imported = resolvedOrbital.imports.orbitals.get(rt.source.alias);
4617
+ const entity = imported?.orbital?.entity;
4618
+ if (!entity || typeof entity === "string" || !("fields" in entity) || !entity.name) continue;
4619
+ if (seen.has(entity.name)) continue;
4620
+ seen.add(entity.name);
4621
+ combined.push(entity);
4622
+ }
4623
+ return combined.length > 0 ? combined : void 0;
4624
+ }
4605
4625
  function getIsolatedCollectionName(orbitalName, entitySharing) {
4606
4626
  const info = entitySharing[orbitalName];
4607
4627
  if (!info) {
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import { EffectExecutor } from './chunk-3FYWURKS.js';
2
- export { EffectExecutor, EventBus, HANDLER_MANIFEST, InMemoryPersistence, MockPersistenceAdapter, StateMachineManager, TickScheduler, buildEmitsFromTraits, collectDeclaredConfigDefaults, collectDeclaredEntityDefaults, createInitialTraitState, createMockPersistence, createTestExecutor, createTickScheduler, createUnifiedLoader, findInitialState, findTransition, formatPayloadValidationError, getIsolatedCollectionName, getNamespacedEvent, isBrowser, isElectron, isNamespacedEvent, isNode, isValidDurationString, normalizeCallSiteConfigToValues, normalizeEventKey, parseDurationString, parseNamespacedEvent, preprocessSchema, processEvent, validateEventPayload, validatePayloadShapes } from './chunk-3FYWURKS.js';
1
+ import { EffectExecutor } from './chunk-BNTXTICR.js';
2
+ export { EffectExecutor, EventBus, HANDLER_MANIFEST, InMemoryPersistence, MockPersistenceAdapter, StateMachineManager, TickScheduler, buildEmitsFromTraits, collectDeclaredConfigDefaults, collectDeclaredEntityDefaults, createInitialTraitState, createMockPersistence, createTestExecutor, createTickScheduler, createUnifiedLoader, findInitialState, findTransition, formatPayloadValidationError, getIsolatedCollectionName, getNamespacedEvent, isBrowser, isElectron, isNamespacedEvent, isNode, isValidDurationString, normalizeCallSiteConfigToValues, normalizeEventKey, parseDurationString, parseNamespacedEvent, preprocessSchema, processEvent, validateEventPayload, validatePayloadShapes } from './chunk-BNTXTICR.js';
3
3
  export { cronMatches, cronMinuteKey, isValidCronExpression, parseCron, parseCronField } from './chunk-OU3ITB5S.js';
4
4
  import { createContextFromBindings, applyRowAccess, checkMutationAccess, accessDeniedMessage } from './chunk-XLMDWRMB.js';
5
5
  export { CALLSITE_PAYLOAD_PREFIX, applyRowAccess, checkMutationAccess, containsBindings, createContextFromBindings, createMinimalContext, deferEntityBindings, extractBindings, interpolateProps, interpolateValue, resolveCallSitePayloadCaptures } from './chunk-XLMDWRMB.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@almadar/runtime",
3
- "version": "6.50.0",
3
+ "version": "6.51.0",
4
4
  "description": "Interpreted runtime for Almadar orbital applications (OrbitalServerRuntime)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -57,7 +57,7 @@
57
57
  "access": "public"
58
58
  },
59
59
  "dependencies": {
60
- "@almadar/core": "^10.51.0",
60
+ "@almadar/core": "^10.52.0",
61
61
  "@almadar/evaluator": "^2.39.0",
62
62
  "@almadar/logger": "^1.11.0",
63
63
  "@almadar/server": "^2.34.0",