@almadar/core 10.91.0 → 10.93.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.
Files changed (34) hide show
  1. package/dist/builders.d.ts +3 -3
  2. package/dist/builders.js +2 -1
  3. package/dist/builders.js.map +1 -1
  4. package/dist/{effect-Bt8vKHwd.d.ts → effect-BnSE0gKt.d.ts} +26 -3
  5. package/dist/{entityAccess-BdDX85rM.d.ts → entityAccess-DtWseAgf.d.ts} +1 -1
  6. package/dist/factory/index.d.ts +4 -4
  7. package/dist/factory/index.js +402 -38
  8. package/dist/factory/index.js.map +1 -1
  9. package/dist/factory-runtime/index.d.ts +3 -3
  10. package/dist/factory-runtime/index.js +6 -2
  11. package/dist/factory-runtime/index.js.map +1 -1
  12. package/dist/{index-rOBf1Oag.d.ts → index-CWArRU6P.d.ts} +19 -10
  13. package/dist/index.d.ts +11 -72
  14. package/dist/index.js +597 -141
  15. package/dist/index.js.map +1 -1
  16. package/dist/mock/index.d.ts +4 -4
  17. package/dist/patterns/component-mapping.json +6 -1
  18. package/dist/patterns/event-contracts.json +1 -1
  19. package/dist/patterns/index.d.ts +1243 -85
  20. package/dist/patterns/index.js +547 -42
  21. package/dist/patterns/index.js.map +1 -1
  22. package/dist/patterns/integrators-registry.json +136 -1
  23. package/dist/patterns/patterns-registry.json +403 -39
  24. package/dist/patterns/registry.json +403 -39
  25. package/dist/patterns/services-registry.json +136 -1
  26. package/dist/{schema-ovDTDQz9.d.ts → schema-DFmFFcLs.d.ts} +25 -25
  27. package/dist/state-machine/index.js +19 -4
  28. package/dist/state-machine/index.js.map +1 -1
  29. package/dist/{trait-C3e3btfn.d.ts → trait-DSMzclmJ.d.ts} +10 -1
  30. package/dist/types/index.d.ts +5 -5
  31. package/dist/types/index.js +31 -2
  32. package/dist/types/index.js.map +1 -1
  33. package/dist/{types-rh0naR6C.d.ts → types-DzkFdgNJ.d.ts} +2 -2
  34. package/package.json +1 -1
@@ -1105,6 +1105,9 @@ function maskSecretConfigValues(config, values) {
1105
1105
  }
1106
1106
  return masked;
1107
1107
  }
1108
+ function canonicalizeUnboundTraitOverride(fieldType, value) {
1109
+ return fieldType === "trait" && value === "none" ? null : value;
1110
+ }
1108
1111
  function overrideDeclaredKnobs(declared, overrides) {
1109
1112
  const out = { ...declared };
1110
1113
  for (const key of Object.keys(overrides)) {
@@ -1114,7 +1117,7 @@ function overrideDeclaredKnobs(declared, overrides) {
1114
1117
  `overrideDeclaredKnobs: config override "${key}" is not a declared knob (ORB_O_CONFIG_UNKNOWN_KEY). Declared: ${Object.keys(declared).join(", ") || "(none)"}`
1115
1118
  );
1116
1119
  }
1117
- out[key] = { ...field, default: overrides[key] };
1120
+ out[key] = { ...field, default: canonicalizeUnboundTraitOverride(field.type, overrides[key]) };
1118
1121
  }
1119
1122
  return out;
1120
1123
  }
@@ -1138,7 +1141,8 @@ var ConfigFieldDeclarationSchema = z.object({
1138
1141
  synonyms: z.string().optional(),
1139
1142
  items: ConfigFieldItemsDeclarationSchema.optional(),
1140
1143
  properties: z.lazy(() => z.record(TraitEntityFieldSchema)).optional(),
1141
- forwardedFrom: z.string().optional()
1144
+ forwardedFrom: z.string().optional(),
1145
+ payloadFor: z.string().optional()
1142
1146
  });
1143
1147
  var DeclaredTraitConfigSchema = z.record(
1144
1148
  ConfigFieldDeclarationSchema
@@ -2703,6 +2707,7 @@ var PATTERN_TYPES = [
2703
2707
  "game-icon",
2704
2708
  "game-menu",
2705
2709
  "game-shell",
2710
+ "gantt",
2706
2711
  "generic-app-template",
2707
2712
  "geometric-pattern",
2708
2713
  "gradient-divider",
@@ -2990,6 +2995,14 @@ var KNOWN_VALIDATION_ERROR_CODES = {
2990
2995
  ORB_BINDING_TRAIT_UNKNOWN: "ORB_BINDING_TRAIT_UNKNOWN",
2991
2996
  ORB_BINDING_UNKNOWN_ENTITY: "ORB_BINDING_UNKNOWN_ENTITY",
2992
2997
  ORB_BINDING_UNKNOWN_ROOT: "ORB_BINDING_UNKNOWN_ROOT",
2998
+ // Closed circuit (`ORB_CIRCUIT_*`, `phases/validation/closed_circuit.rs`).
2999
+ // Pre-existing gap: most other ORB_CIRCUIT_* codes the compiler already
3000
+ // emits (e.g. ORB_CIRCUIT_FAILURE_ARM_MISSING, ORB_CIRCUIT_DEAD_BODILESS_ACTION)
3001
+ // are not yet documented here — out of this task's scope, ledgered for a
3002
+ // follow-up sweep.
3003
+ ORB_CIRCUIT_VIEWER_STRANDED: "ORB_CIRCUIT_VIEWER_STRANDED",
3004
+ // Embed / composition (`@trait.X`, `phases/embed_graph.rs`)
3005
+ ORB_EMBED_CONFIG_FORWARD_MULTI_REFERRER: "ORB_EMBED_CONFIG_FORWARD_MULTI_REFERRER",
2993
3006
  // Entity / field
2994
3007
  ORB_E_DUPLICATE_FIELD: "ORB_E_DUPLICATE_FIELD",
2995
3008
  ORB_E_EMPTY_ENUM_VALUES: "ORB_E_EMPTY_ENUM_VALUES",
@@ -3000,6 +3013,9 @@ var KNOWN_VALIDATION_ERROR_CODES = {
3000
3013
  ORB_E_MISSING_COLLECTION: "ORB_E_MISSING_COLLECTION",
3001
3014
  ORB_E_MISSING_NAME: "ORB_E_MISSING_NAME",
3002
3015
  ORB_E_NO_FIELDS: "ORB_E_NO_FIELDS",
3016
+ // Entity ownership / access (`owner_fields_from_schema`,
3017
+ // `phases/validation/entity_access.rs`)
3018
+ ORB_ENTITY_OWNER_COLUMN_UNSCOPED: "ORB_ENTITY_OWNER_COLUMN_UNSCOPED",
3003
3019
  // Effect / emit
3004
3020
  ORB_EFF_CALL_SERVICE_MISSING_ACTION: "ORB_EFF_CALL_SERVICE_MISSING_ACTION",
3005
3021
  ORB_EFF_CALL_SERVICE_MISSING_HANDLERS: "ORB_EFF_CALL_SERVICE_MISSING_HANDLERS",
@@ -3030,6 +3046,8 @@ var KNOWN_VALIDATION_ERROR_CODES = {
3030
3046
  // Orbital
3031
3047
  ORB_O_MISSING_PAGES: "ORB_O_MISSING_PAGES",
3032
3048
  // Page
3049
+ ORB_PAGE_SECOND_CONTENT_BODY: "ORB_PAGE_SECOND_CONTENT_BODY",
3050
+ ORB_PAGE_UNREACHABLE: "ORB_PAGE_UNREACHABLE",
3033
3051
  ORB_P_DUPLICATE_PATH: "ORB_P_DUPLICATE_PATH",
3034
3052
  ORB_P_EMPTY_TRAITS: "ORB_P_EMPTY_TRAITS",
3035
3053
  ORB_P_INVALID_PATH: "ORB_P_INVALID_PATH",
@@ -3045,6 +3063,14 @@ var KNOWN_VALIDATION_ERROR_CODES = {
3045
3063
  ORB_QUERY_UNKNOWN_SINGLETON: "ORB_QUERY_UNKNOWN_SINGLETON",
3046
3064
  ORB_QUERY_UNSUPPORTED_PATTERN: "ORB_QUERY_UNSUPPORTED_PATTERN",
3047
3065
  ORB_QUERY_UNUSED_SINGLETON: "ORB_QUERY_UNUSED_SINGLETON",
3066
+ // Render config vs. linked-entity data shape (`config_type.rs`)
3067
+ ORB_RENDER_GROUPBY_ENUM_COLUMN_GAP: "ORB_RENDER_GROUPBY_ENUM_COLUMN_GAP",
3068
+ // A render-ui embeds `@config.<knob>` where `<knob>` is a `trait`-typed
3069
+ // config field whose resolved value is `none` (unbound), unguarded by an
3070
+ // `(if @config.<knob> ...)` wrapping it in the same effect list — an
3071
+ // unbound trait knob's embed renders nothing (`trait_validator.rs`,
3072
+ // owner ruling 2026-09-13: a `trait`-typed config knob may be `none`).
3073
+ ORB_RENDER_UNBOUND_TRAIT_KNOB_EMBEDDED: "ORB_RENDER_UNBOUND_TRAIT_KNOB_EMBEDDED",
3048
3074
  // Render-UI binding + prop validation
3049
3075
  ORB_RUI_BINDING_TYPE_MISMATCH: "ORB_RUI_BINDING_TYPE_MISMATCH",
3050
3076
  ORB_RUI_ELEMENT_SHAPE_MISMATCH: "ORB_RUI_ELEMENT_SHAPE_MISMATCH",
@@ -3063,6 +3089,8 @@ var KNOWN_VALIDATION_ERROR_CODES = {
3063
3089
  ORB_S_EMPTY_VERSION: "ORB_S_EMPTY_VERSION",
3064
3090
  ORB_S_MISSING_NAME: "ORB_S_MISSING_NAME",
3065
3091
  ORB_S_NO_ORBITALS: "ORB_S_NO_ORBITALS",
3092
+ // Theme (app-level vs. per-orbital config pin, `theme.rs`)
3093
+ ORB_THEME_PIN_CONTRADICTS_APP: "ORB_THEME_PIN_CONTRADICTS_APP",
3066
3094
  // UI slots
3067
3095
  ORB_SLOT_CONTENTION: "ORB_SLOT_CONTENTION",
3068
3096
  ORB_SLOT_CONTENTION_RUNTIME: "ORB_SLOT_CONTENTION_RUNTIME",
@@ -3126,6 +3154,7 @@ var KNOWN_VALIDATION_ERROR_CODES = {
3126
3154
  ORB_X_DUPLICATE_ENTITY: "ORB_X_DUPLICATE_ENTITY",
3127
3155
  ORB_X_EVENT_COLLISION: "ORB_X_EVENT_COLLISION",
3128
3156
  ORB_X_INTERNAL_EVENT_EXPOSED: "ORB_X_INTERNAL_EVENT_EXPOSED",
3157
+ ORB_X_LISTEN_SOURCE_NEVER_PRODUCES: "ORB_X_LISTEN_SOURCE_NEVER_PRODUCES",
3129
3158
  ORB_X_LISTEN_SOURCE_UNRESOLVED: "ORB_X_LISTEN_SOURCE_UNRESOLVED",
3130
3159
  ORB_X_MISSING_ORBITAL_NAME: "ORB_X_MISSING_ORBITAL_NAME",
3131
3160
  ORB_X_ORPHAN_LISTENER: "ORB_X_ORPHAN_LISTENER",