@manifesto-ai/compiler 1.7.0 → 1.8.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.
package/dist/esbuild.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  unpluginMel
3
- } from "./chunk-DJY6BFGK.js";
4
- import "./chunk-QXLPDCLA.js";
5
- import "./chunk-QP2LGMBA.js";
3
+ } from "./chunk-BH25NHMN.js";
4
+ import "./chunk-D62NIFP4.js";
5
+ import "./chunk-MKLDAZ2Z.js";
6
6
 
7
7
  // src/esbuild.ts
8
8
  var melPlugin = unpluginMel.esbuild;
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { PatchPath, ExprNode as ExprNode$2, Patch } from '@manifesto-ai/core';
1
+ import { ExprNode as ExprNode$2, PatchPath, Patch } from '@manifesto-ai/core';
2
2
 
3
3
  /**
4
4
  * Source Location Types
@@ -253,7 +253,7 @@ interface DomainNode extends ASTNode {
253
253
  /**
254
254
  * Domain member types
255
255
  */
256
- type DomainMember = StateNode | ComputedNode | ActionNode;
256
+ type DomainMember = StateNode | ComputedNode | ActionNode | FlowDeclNode;
257
257
  /**
258
258
  * Type declaration (v0.3.3)
259
259
  * Syntax: type Name = TypeExpr
@@ -298,6 +298,16 @@ interface ActionNode extends ASTNode {
298
298
  available?: ExprNode$1;
299
299
  body: GuardedStmtNode[];
300
300
  }
301
+ /**
302
+ * Flow declaration (v0.7.0 / ADR-013a)
303
+ * Raw AST preserves flow declarations until the expansion pass removes them.
304
+ */
305
+ interface FlowDeclNode extends ASTNode {
306
+ kind: "flow";
307
+ name: string;
308
+ params: ParamNode[];
309
+ body: FlowStmtNode[];
310
+ }
301
311
  /**
302
312
  * Parameter declaration
303
313
  */
@@ -309,11 +319,16 @@ interface ParamNode extends ASTNode {
309
319
  /**
310
320
  * Guarded statement types (top-level in action body)
311
321
  */
312
- type GuardedStmtNode = WhenStmtNode | OnceStmtNode | OnceIntentStmtNode;
322
+ type GuardedStmtNode = WhenStmtNode | OnceStmtNode | OnceIntentStmtNode | IncludeStmtNode | FailStmtNode | StopStmtNode;
323
+ /**
324
+ * Raw flow statement types (top-level in flow body).
325
+ * Parser stays permissive; validation narrows the allowed subset.
326
+ */
327
+ type FlowStmtNode = WhenStmtNode | IncludeStmtNode | OnceStmtNode | OnceIntentStmtNode | PatchStmtNode | EffectStmtNode;
313
328
  /**
314
329
  * Inner statement types (inside guards)
315
330
  */
316
- type InnerStmtNode = PatchStmtNode | EffectStmtNode | WhenStmtNode | OnceStmtNode | OnceIntentStmtNode | FailStmtNode | StopStmtNode;
331
+ type InnerStmtNode = PatchStmtNode | EffectStmtNode | WhenStmtNode | OnceStmtNode | OnceIntentStmtNode | IncludeStmtNode | FailStmtNode | StopStmtNode;
317
332
  /**
318
333
  * When guard statement
319
334
  */
@@ -339,6 +354,15 @@ interface OnceIntentStmtNode extends ASTNode {
339
354
  condition?: ExprNode$1;
340
355
  body: InnerStmtNode[];
341
356
  }
357
+ /**
358
+ * Include statement (v0.7.0 / ADR-013a)
359
+ * Raw AST preserves include sites until the expansion pass inlines them.
360
+ */
361
+ interface IncludeStmtNode extends ASTNode {
362
+ kind: "include";
363
+ flowName: string;
364
+ args: ExprNode$1[];
365
+ }
342
366
  /**
343
367
  * Patch statement
344
368
  */
@@ -638,8 +662,10 @@ declare class Parser {
638
662
  private parseStateField;
639
663
  private parseComputed;
640
664
  private parseAction;
665
+ private parseFlowDecl;
641
666
  private parseParam;
642
667
  private parseGuardedStmt;
668
+ private parseFlowStmt;
643
669
  /**
644
670
  * Skip tokens until we reach a recovery point (closing brace, guard keyword, or EOF).
645
671
  */
@@ -648,6 +674,7 @@ declare class Parser {
648
674
  private parseOnceStmt;
649
675
  private parseOnceIntentStmt;
650
676
  private parseInnerStmt;
677
+ private parseIncludeStmt;
651
678
  private parsePatchStmt;
652
679
  private parseEffectStmt;
653
680
  private parseEffectArg;
@@ -679,11 +706,14 @@ declare class Parser {
679
706
  private isUnaryContext;
680
707
  private peek;
681
708
  private peekNext;
709
+ private peekAt;
682
710
  private previous;
683
711
  private isAtEnd;
684
712
  private advance;
685
713
  private check;
686
714
  private isOnceIntentContext;
715
+ private isFlowDeclContext;
716
+ private isIncludeContext;
687
717
  private match;
688
718
  private consume;
689
719
  private error;
@@ -787,6 +817,7 @@ interface ValidationResult {
787
817
  */
788
818
  declare class SemanticValidator {
789
819
  private ctx;
820
+ private symbols;
790
821
  /**
791
822
  * Validate a MEL program
792
823
  */
@@ -800,6 +831,7 @@ declare class SemanticValidator {
800
831
  * v0.3.3: Validate state field - check for anonymous object types (W012)
801
832
  */
802
833
  private validateStateField;
834
+ private validateStateInitializer;
803
835
  /**
804
836
  * v0.3.3: Check if a type expression contains anonymous object types
805
837
  * Issues W012 warning for inline object types in state fields
@@ -817,9 +849,12 @@ declare class SemanticValidator {
817
849
  private validateOnceIntent;
818
850
  private validatePatch;
819
851
  private validateEffect;
852
+ private validateFail;
853
+ private validateStop;
820
854
  private validateCondition;
821
855
  private validateExpr;
822
856
  private validateFunctionCall;
857
+ private validatePrimitiveEquality;
823
858
  private error;
824
859
  private warn;
825
860
  }
@@ -879,6 +914,181 @@ declare function formatDiagnostic(diagnostic: Diagnostic, source?: string): stri
879
914
  */
880
915
  declare function formatDiagnostics(diagnostics: Diagnostic[], source?: string): string;
881
916
 
917
+ /**
918
+ * Lowering Context Types
919
+ *
920
+ * Defines contexts for expression and patch lowering.
921
+ *
922
+ * @see SPEC v0.4.0 §17.2
923
+ */
924
+ /**
925
+ * Allowed system path prefixes.
926
+ *
927
+ * In Translator path, only 'meta' and 'input' are allowed.
928
+ * 'system' is forbidden (requires Flow execution).
929
+ *
930
+ * @see FDR-MEL-071
931
+ */
932
+ type AllowedSysPrefix = "meta" | "input";
933
+ /**
934
+ * Context for single expression lowering.
935
+ *
936
+ * @see SPEC v0.4.0 §17.2
937
+ */
938
+ interface ExprLoweringContext {
939
+ /**
940
+ * Expression context mode.
941
+ * - 'schema': for addComputed, addConstraint, etc.
942
+ * - 'action': for guards, patches, effects
943
+ */
944
+ mode: "schema" | "action";
945
+ /**
946
+ * Allowed system path prefixes.
947
+ * In Translator path: only ["meta", "input"]
948
+ *
949
+ * @see FDR-MEL-071
950
+ */
951
+ allowSysPaths?: {
952
+ prefixes: AllowedSysPrefix[];
953
+ };
954
+ /**
955
+ * Function table version for call lowering.
956
+ */
957
+ fnTableVersion: string;
958
+ /**
959
+ * Action name (for action context).
960
+ */
961
+ actionName?: string;
962
+ /**
963
+ * Whether $item is allowed in this context.
964
+ * Only true for effect.args fields.
965
+ *
966
+ * @see FDR-MEL-068
967
+ */
968
+ allowItem?: boolean;
969
+ }
970
+ /**
971
+ * Context for patch lowering.
972
+ *
973
+ * NO mode field - Compiler determines context per op-field.
974
+ *
975
+ * @see SPEC v0.4.0 §17.2, AD-COMP-LOW-002
976
+ */
977
+ interface PatchLoweringContext {
978
+ /**
979
+ * Allowed system path prefixes.
980
+ * In Translator path: only ["meta", "input"]
981
+ *
982
+ * @see FDR-MEL-071
983
+ */
984
+ allowSysPaths?: {
985
+ prefixes: AllowedSysPrefix[];
986
+ };
987
+ /**
988
+ * Function table version for call lowering.
989
+ */
990
+ fnTableVersion: string;
991
+ /**
992
+ * Action name (for action-related ops).
993
+ */
994
+ actionName?: string;
995
+ }
996
+ /**
997
+ * Default expression lowering context for schema mode.
998
+ */
999
+ declare const DEFAULT_SCHEMA_CONTEXT: ExprLoweringContext;
1000
+ /**
1001
+ * Default expression lowering context for action mode.
1002
+ */
1003
+ declare const DEFAULT_ACTION_CONTEXT: ExprLoweringContext;
1004
+ /**
1005
+ * Context for effect.args (allows $item).
1006
+ */
1007
+ declare const EFFECT_ARGS_CONTEXT: ExprLoweringContext;
1008
+ /**
1009
+ * Default patch lowering context.
1010
+ */
1011
+ declare const DEFAULT_PATCH_CONTEXT: PatchLoweringContext;
1012
+
1013
+ /**
1014
+ * Expression Lowering
1015
+ *
1016
+ * Transforms MEL Canonical IR (8 kinds) to Core Runtime IR (30+ kinds).
1017
+ *
1018
+ * @see SPEC v0.4.0 §17
1019
+ */
1020
+
1021
+ /**
1022
+ * MEL primitive value.
1023
+ */
1024
+ type MelPrimitive = null | boolean | number | string;
1025
+ /**
1026
+ * MEL path segment.
1027
+ */
1028
+ type MelPathSegment = {
1029
+ kind: "prop";
1030
+ name: string;
1031
+ };
1032
+ /**
1033
+ * MEL path node array.
1034
+ */
1035
+ type MelPathNode = MelPathSegment[];
1036
+ /**
1037
+ * MEL system path as segment array.
1038
+ */
1039
+ type MelSystemPath = string[];
1040
+ /**
1041
+ * MEL object field.
1042
+ */
1043
+ type MelObjField = {
1044
+ key: string;
1045
+ value: MelExprNode;
1046
+ };
1047
+ /**
1048
+ * MEL Canonical IR (8 kinds).
1049
+ *
1050
+ * @see SPEC v0.4.0 §17.1.1
1051
+ */
1052
+ type MelExprNode = {
1053
+ kind: "lit";
1054
+ value: MelPrimitive;
1055
+ } | {
1056
+ kind: "var";
1057
+ name: "item";
1058
+ } | {
1059
+ kind: "sys";
1060
+ path: MelSystemPath;
1061
+ } | {
1062
+ kind: "get";
1063
+ base?: MelExprNode;
1064
+ path: MelPathNode;
1065
+ } | {
1066
+ kind: "field";
1067
+ object: MelExprNode;
1068
+ property: string;
1069
+ } | {
1070
+ kind: "call";
1071
+ fn: string;
1072
+ args: MelExprNode[];
1073
+ } | {
1074
+ kind: "obj";
1075
+ fields: MelObjField[];
1076
+ } | {
1077
+ kind: "arr";
1078
+ elements: MelExprNode[];
1079
+ };
1080
+ /**
1081
+ * Lower MEL expression to Core expression.
1082
+ *
1083
+ * @param input - MEL canonical IR expression
1084
+ * @param ctx - Lowering context
1085
+ * @returns Core runtime IR expression
1086
+ * @throws LoweringError if expression cannot be lowered
1087
+ *
1088
+ * @see SPEC v0.4.0 §17.3
1089
+ */
1090
+ declare function lowerExprNode(input: MelExprNode, ctx: ExprLoweringContext): ExprNode$2;
1091
+
882
1092
  /**
883
1093
  * IR Generator - Transforms MEL AST to Core DomainSchema
884
1094
  * Based on MEL SPEC v0.3.3 Section 5
@@ -1086,6 +1296,7 @@ type CoreExprNode = {
1086
1296
  kind: "toString";
1087
1297
  arg: CoreExprNode;
1088
1298
  };
1299
+ type CompilerExprNode = MelExprNode;
1089
1300
  /**
1090
1301
  * Core FlowNode types (matching core/schema/flow.ts)
1091
1302
  */
@@ -1117,6 +1328,34 @@ type CoreFlowNode = {
1117
1328
  code: string;
1118
1329
  message?: CoreExprNode;
1119
1330
  };
1331
+ type CompilerFlowNode = {
1332
+ kind: "seq";
1333
+ steps: CompilerFlowNode[];
1334
+ } | {
1335
+ kind: "if";
1336
+ cond: CompilerExprNode;
1337
+ then: CompilerFlowNode;
1338
+ else?: CompilerFlowNode;
1339
+ } | {
1340
+ kind: "patch";
1341
+ op: "set" | "unset" | "merge";
1342
+ path: PatchPath;
1343
+ value?: CompilerExprNode;
1344
+ } | {
1345
+ kind: "effect";
1346
+ type: string;
1347
+ params: Record<string, CompilerExprNode>;
1348
+ } | {
1349
+ kind: "call";
1350
+ flow: string;
1351
+ } | {
1352
+ kind: "halt";
1353
+ reason?: string;
1354
+ } | {
1355
+ kind: "fail";
1356
+ code: string;
1357
+ message?: CompilerExprNode;
1358
+ };
1120
1359
  /**
1121
1360
  * Field type definition
1122
1361
  */
@@ -1148,6 +1387,11 @@ interface ComputedFieldSpec {
1148
1387
  expr: CoreExprNode;
1149
1388
  description?: string;
1150
1389
  }
1390
+ interface CompilerComputedFieldSpec {
1391
+ deps: string[];
1392
+ expr: CompilerExprNode;
1393
+ description?: string;
1394
+ }
1151
1395
  /**
1152
1396
  * Computed specification
1153
1397
  */
@@ -1163,6 +1407,12 @@ interface ActionSpec {
1163
1407
  available?: CoreExprNode;
1164
1408
  description?: string;
1165
1409
  }
1410
+ interface CompilerActionSpec {
1411
+ flow: CompilerFlowNode;
1412
+ input?: FieldSpec;
1413
+ available?: CompilerExprNode;
1414
+ description?: string;
1415
+ }
1166
1416
  /**
1167
1417
  * Domain schema (output IR)
1168
1418
  */
@@ -1217,12 +1467,33 @@ interface DomainSchema {
1217
1467
  authors?: string[];
1218
1468
  };
1219
1469
  }
1470
+ interface CanonicalDomainSchema {
1471
+ id: string;
1472
+ version: string;
1473
+ hash: string;
1474
+ types: Record<string, TypeSpec>;
1475
+ state: StateSpec;
1476
+ computed: {
1477
+ fields: Record<string, CompilerComputedFieldSpec>;
1478
+ };
1479
+ actions: Record<string, CompilerActionSpec>;
1480
+ meta?: {
1481
+ name?: string;
1482
+ description?: string;
1483
+ authors?: string[];
1484
+ };
1485
+ }
1220
1486
  interface GenerateResult {
1221
1487
  schema: DomainSchema | null;
1222
1488
  diagnostics: Diagnostic[];
1223
1489
  }
1490
+ interface GenerateCanonicalResult {
1491
+ schema: CanonicalDomainSchema | null;
1492
+ diagnostics: Diagnostic[];
1493
+ }
1494
+ declare function generateCanonical(program: ProgramNode): GenerateCanonicalResult;
1224
1495
  /**
1225
- * Generate Core DomainSchema from MEL AST
1496
+ * Generate runtime-ready DomainSchema from MEL AST.
1226
1497
  */
1227
1498
  declare function generate(program: ProgramNode): GenerateResult;
1228
1499
 
@@ -1650,102 +1921,6 @@ declare function renderFragmentsByKind(fragments: PatchFragment[], options?: Fra
1650
1921
  */
1651
1922
  declare function renderAsDomain(domainName: string, fragments: PatchFragment[], options?: FragmentRenderOptions): string;
1652
1923
 
1653
- /**
1654
- * Lowering Context Types
1655
- *
1656
- * Defines contexts for expression and patch lowering.
1657
- *
1658
- * @see SPEC v0.4.0 §17.2
1659
- */
1660
- /**
1661
- * Allowed system path prefixes.
1662
- *
1663
- * In Translator path, only 'meta' and 'input' are allowed.
1664
- * 'system' is forbidden (requires Flow execution).
1665
- *
1666
- * @see FDR-MEL-071
1667
- */
1668
- type AllowedSysPrefix = "meta" | "input";
1669
- /**
1670
- * Context for single expression lowering.
1671
- *
1672
- * @see SPEC v0.4.0 §17.2
1673
- */
1674
- interface ExprLoweringContext {
1675
- /**
1676
- * Expression context mode.
1677
- * - 'schema': for addComputed, addConstraint, etc.
1678
- * - 'action': for guards, patches, effects
1679
- */
1680
- mode: "schema" | "action";
1681
- /**
1682
- * Allowed system path prefixes.
1683
- * In Translator path: only ["meta", "input"]
1684
- *
1685
- * @see FDR-MEL-071
1686
- */
1687
- allowSysPaths?: {
1688
- prefixes: AllowedSysPrefix[];
1689
- };
1690
- /**
1691
- * Function table version for call lowering.
1692
- */
1693
- fnTableVersion: string;
1694
- /**
1695
- * Action name (for action context).
1696
- */
1697
- actionName?: string;
1698
- /**
1699
- * Whether $item is allowed in this context.
1700
- * Only true for effect.args fields.
1701
- *
1702
- * @see FDR-MEL-068
1703
- */
1704
- allowItem?: boolean;
1705
- }
1706
- /**
1707
- * Context for patch lowering.
1708
- *
1709
- * NO mode field - Compiler determines context per op-field.
1710
- *
1711
- * @see SPEC v0.4.0 §17.2, AD-COMP-LOW-002
1712
- */
1713
- interface PatchLoweringContext {
1714
- /**
1715
- * Allowed system path prefixes.
1716
- * In Translator path: only ["meta", "input"]
1717
- *
1718
- * @see FDR-MEL-071
1719
- */
1720
- allowSysPaths?: {
1721
- prefixes: AllowedSysPrefix[];
1722
- };
1723
- /**
1724
- * Function table version for call lowering.
1725
- */
1726
- fnTableVersion: string;
1727
- /**
1728
- * Action name (for action-related ops).
1729
- */
1730
- actionName?: string;
1731
- }
1732
- /**
1733
- * Default expression lowering context for schema mode.
1734
- */
1735
- declare const DEFAULT_SCHEMA_CONTEXT: ExprLoweringContext;
1736
- /**
1737
- * Default expression lowering context for action mode.
1738
- */
1739
- declare const DEFAULT_ACTION_CONTEXT: ExprLoweringContext;
1740
- /**
1741
- * Context for effect.args (allows $item).
1742
- */
1743
- declare const EFFECT_ARGS_CONTEXT: ExprLoweringContext;
1744
- /**
1745
- * Default patch lowering context.
1746
- */
1747
- declare const DEFAULT_PATCH_CONTEXT: PatchLoweringContext;
1748
-
1749
1924
  /**
1750
1925
  * Lowering Error Types
1751
1926
  *
@@ -1830,81 +2005,6 @@ declare function invalidShape(description: string, path?: string[]): LoweringErr
1830
2005
  */
1831
2006
  declare function unknownNodeKind(kind: string, path?: string[]): LoweringError;
1832
2007
 
1833
- /**
1834
- * Expression Lowering
1835
- *
1836
- * Transforms MEL Canonical IR (7 kinds) to Core Runtime IR (30+ kinds).
1837
- *
1838
- * @see SPEC v0.4.0 §17
1839
- */
1840
-
1841
- /**
1842
- * MEL primitive value.
1843
- */
1844
- type MelPrimitive = null | boolean | number | string;
1845
- /**
1846
- * MEL path segment.
1847
- */
1848
- type MelPathSegment = {
1849
- kind: "prop";
1850
- name: string;
1851
- };
1852
- /**
1853
- * MEL path node array.
1854
- */
1855
- type MelPathNode = MelPathSegment[];
1856
- /**
1857
- * MEL system path as segment array.
1858
- */
1859
- type MelSystemPath = string[];
1860
- /**
1861
- * MEL object field.
1862
- */
1863
- type MelObjField = {
1864
- key: string;
1865
- value: MelExprNode;
1866
- };
1867
- /**
1868
- * MEL Canonical IR (7 kinds).
1869
- *
1870
- * @see SPEC v0.4.0 §17.1.1
1871
- */
1872
- type MelExprNode = {
1873
- kind: "lit";
1874
- value: MelPrimitive;
1875
- } | {
1876
- kind: "var";
1877
- name: "item";
1878
- } | {
1879
- kind: "sys";
1880
- path: MelSystemPath;
1881
- } | {
1882
- kind: "get";
1883
- base?: MelExprNode;
1884
- path: MelPathNode;
1885
- } | {
1886
- kind: "call";
1887
- fn: string;
1888
- args: MelExprNode[];
1889
- } | {
1890
- kind: "obj";
1891
- fields: MelObjField[];
1892
- } | {
1893
- kind: "arr";
1894
- elements: MelExprNode[];
1895
- };
1896
- /**
1897
- * Lower MEL expression to Core expression.
1898
- *
1899
- * @param input - MEL canonical IR expression
1900
- * @param ctx - Lowering context
1901
- * @returns Core runtime IR expression
1902
- * @throws LoweringError if expression cannot be lowered
1903
- *
1904
- * @see SPEC v0.4.0 §17.3
1905
- */
1906
- declare function lowerExprNode(input: MelExprNode, ctx: ExprLoweringContext): ExprNode$2;
1907
-
1908
2008
  /**
1909
2009
  * Patch Lowering
1910
2010
  *
@@ -2713,4 +2813,4 @@ declare function parseSource(source: string): ParseResult;
2713
2813
  */
2714
2814
  declare function check(source: string): Diagnostic[];
2715
2815
 
2716
- export { type ASTNode, type ActionNode, type ActionSpec, type AddActionAvailableOp, type AddComputedOp, type AddConstraintOp, type AddFieldOp, type AddTypeOp, type AllowedSysPrefix, type ArrayLiteralExprNode, type ArrayTypeNode, type BinaryExprNode, type BinaryOperator, type CompileMelDomainOptions, type CompileMelDomainResult, type CompileMelPatchOptions, type CompileMelPatchResult, type CompileOptions, type CompileResult, type CompileTrace, type ComputedFieldSpec, type ComputedNode, type ComputedSpec, type ConditionalPatchOp, type CoreExprNode, type CoreFlowNode, DEFAULT_ACTION_CONTEXT, DEFAULT_PATCH_CONTEXT, DEFAULT_SCHEMA_CONTEXT, DIAGNOSTIC_CODES, type Diagnostic, type DiagnosticCode, type DiagnosticSeverity, type DomainMember, type DomainSchema as DomainModule, type DomainNode, type DomainSchema, EFFECT_ARGS_CONTEXT, type EffectArgNode, type EffectStmtNode, type EvaluatedPatch, type EvaluatedPatchOp, type EvaluationContext, type EvaluationMeta, type EvaluationSnapshot, type ExprLoweringContext, type ExprNode$1 as ExprNode, type FailStmtNode, type FieldSpec, type FieldType, type FragmentRenderOptions, type FunctionCallExprNode, type GenerateResult, type GuardedStmtNode, type IRPatchPath, type IRPathSegment, type IdentifierExprNode, type ImportNode, type IndexAccessExprNode, type IndexSegmentNode, type InnerStmtNode, type IterationVarExprNode, KEYWORDS, type LexResult, Lexer, type LiteralExprNode, type LiteralTypeNode, type LoweredPatchOp, type LoweredTypeExpr, type LoweredTypeField, LoweringError, type LoweringErrorCode, type MelExprNode, type MelIRPatchPath, type MelIRPathSegment, type MelObjField, type MelPatchFragment, type MelPatchOp, type MelPathNode, type MelPathSegment, type MelPrimitive, type MelRuntimePatch, type MelRuntimePatchOp, type MelSystemPath, type MelTypeExpr, type MelTypeField, type ObjectLiteralExprNode, type ObjectPropertyNode, type ObjectTypeNode, type OnceIntentStmtNode, type OnceStmtNode, type ParamNode, type ParseResult, Parser, type PatchEvaluationResult, type PatchFragment, type PatchLoweringContext, type PatchOp, type PatchStmtNode, type PathNode, type PathSegmentNode, type Position, Precedence, type ProgramNode, type PropertyAccessExprNode, type PropertySegmentNode, RESERVED_KEYWORDS, type RecordTypeNode, type RelatedDiagnostic, type RenderOptions, type ExprNode as RendererExprNode, type RuntimeConditionalPatchOp, type RuntimePatchEvaluationResult, type RuntimePatchSkipReason, type SchemaConditionalPatchOp, Scope, type ScopeAnalysisResult, ScopeAnalyzer, SemanticValidator, type SetDefaultValueOp, type SetFieldTypeOp, type SimpleTypeNode, type SkippedRuntimePatch, type SourceLocation, type StateFieldNode, type StateNode, type StateSpec, type StopStmtNode, type Symbol, type SymbolKind, type SystemIdentExprNode, type TernaryExprNode, type Token, type TokenKind, type TypeDeclNode, type TypeDefinition, type TypeExpr, type TypeExprNode, type TypeField, type TypeFieldNode, type TypeSpec, type UnaryExprNode, type UnionTypeNode, type ValidationResult, type WhenStmtNode, analyzeScope, applyPatchToWorkingSnapshot, check, classifyCondition, compile, compileMelDomain, compileMelPatch, createError, createEvaluationContext, createInfo, createLocation, createPointLocation, createPosition, createToken, createWarning, evaluateCondition, evaluateConditionalPatchOps, evaluateExpr, evaluatePatchExpressions, evaluatePatches, evaluateRuntimePatches, evaluateRuntimePatchesWithTrace, extractTypeName, filterBySeverity, formatDiagnostic, formatDiagnosticCode, formatDiagnostics, generate, getBinaryPrecedence, getDiagnosticInfo, getKeywordKind, hasErrors, invalidKindForContext, invalidShape, invalidSysPath, isBinaryOp, isError, isExprNode, isKeyword, isReserved, isRightAssociative, isStmtNode, isUnaryOp, lowerExprNode, lowerPatchFragments, lowerRuntimePatch, lowerRuntimePatches, lowerSystemValues, mergeLocations, normalizeExpr, normalizeFunctionCall, parse, parseSource, renderAsDomain, renderExprNode, renderFragment, renderFragments, renderFragmentsByKind, renderPatchOp, renderTypeExpr, renderTypeField, renderValue, tokenToBinaryOp, tokenize, unknownCallFn, unknownNodeKind, unsupportedBase, validateSemantics };
2816
+ export { type ASTNode, type ActionNode, type ActionSpec, type AddActionAvailableOp, type AddComputedOp, type AddConstraintOp, type AddFieldOp, type AddTypeOp, type AllowedSysPrefix, type ArrayLiteralExprNode, type ArrayTypeNode, type BinaryExprNode, type BinaryOperator, type CanonicalDomainSchema, type CompileMelDomainOptions, type CompileMelDomainResult, type CompileMelPatchOptions, type CompileMelPatchResult, type CompileOptions, type CompileResult, type CompileTrace, type CompilerActionSpec, type CompilerComputedFieldSpec, type CompilerExprNode, type CompilerFlowNode, type ComputedFieldSpec, type ComputedNode, type ComputedSpec, type ConditionalPatchOp, type CoreExprNode, type CoreFlowNode, DEFAULT_ACTION_CONTEXT, DEFAULT_PATCH_CONTEXT, DEFAULT_SCHEMA_CONTEXT, DIAGNOSTIC_CODES, type Diagnostic, type DiagnosticCode, type DiagnosticSeverity, type DomainMember, type DomainSchema as DomainModule, type DomainNode, type DomainSchema, EFFECT_ARGS_CONTEXT, type EffectArgNode, type EffectStmtNode, type EvaluatedPatch, type EvaluatedPatchOp, type EvaluationContext, type EvaluationMeta, type EvaluationSnapshot, type ExprLoweringContext, type ExprNode$1 as ExprNode, type FailStmtNode, type FieldSpec, type FieldType, type FlowDeclNode, type FlowStmtNode, type FragmentRenderOptions, type FunctionCallExprNode, type GenerateCanonicalResult, type GenerateResult, type GuardedStmtNode, type IRPatchPath, type IRPathSegment, type IdentifierExprNode, type ImportNode, type IncludeStmtNode, type IndexAccessExprNode, type IndexSegmentNode, type InnerStmtNode, type IterationVarExprNode, KEYWORDS, type LexResult, Lexer, type LiteralExprNode, type LiteralTypeNode, type LoweredPatchOp, type LoweredTypeExpr, type LoweredTypeField, LoweringError, type LoweringErrorCode, type MelExprNode, type MelIRPatchPath, type MelIRPathSegment, type MelObjField, type MelPatchFragment, type MelPatchOp, type MelPathNode, type MelPathSegment, type MelPrimitive, type MelRuntimePatch, type MelRuntimePatchOp, type MelSystemPath, type MelTypeExpr, type MelTypeField, type ObjectLiteralExprNode, type ObjectPropertyNode, type ObjectTypeNode, type OnceIntentStmtNode, type OnceStmtNode, type ParamNode, type ParseResult, Parser, type PatchEvaluationResult, type PatchFragment, type PatchLoweringContext, type PatchOp, type PatchStmtNode, type PathNode, type PathSegmentNode, type Position, Precedence, type ProgramNode, type PropertyAccessExprNode, type PropertySegmentNode, RESERVED_KEYWORDS, type RecordTypeNode, type RelatedDiagnostic, type RenderOptions, type ExprNode as RendererExprNode, type RuntimeConditionalPatchOp, type RuntimePatchEvaluationResult, type RuntimePatchSkipReason, type SchemaConditionalPatchOp, Scope, type ScopeAnalysisResult, ScopeAnalyzer, SemanticValidator, type SetDefaultValueOp, type SetFieldTypeOp, type SimpleTypeNode, type SkippedRuntimePatch, type SourceLocation, type StateFieldNode, type StateNode, type StateSpec, type StopStmtNode, type Symbol, type SymbolKind, type SystemIdentExprNode, type TernaryExprNode, type Token, type TokenKind, type TypeDeclNode, type TypeDefinition, type TypeExpr, type TypeExprNode, type TypeField, type TypeFieldNode, type TypeSpec, type UnaryExprNode, type UnionTypeNode, type ValidationResult, type WhenStmtNode, analyzeScope, applyPatchToWorkingSnapshot, check, classifyCondition, compile, compileMelDomain, compileMelPatch, createError, createEvaluationContext, createInfo, createLocation, createPointLocation, createPosition, createToken, createWarning, evaluateCondition, evaluateConditionalPatchOps, evaluateExpr, evaluatePatchExpressions, evaluatePatches, evaluateRuntimePatches, evaluateRuntimePatchesWithTrace, extractTypeName, filterBySeverity, formatDiagnostic, formatDiagnosticCode, formatDiagnostics, generate, generateCanonical, getBinaryPrecedence, getDiagnosticInfo, getKeywordKind, hasErrors, invalidKindForContext, invalidShape, invalidSysPath, isBinaryOp, isError, isExprNode, isKeyword, isReserved, isRightAssociative, isStmtNode, isUnaryOp, lowerExprNode, lowerPatchFragments, lowerRuntimePatch, lowerRuntimePatches, lowerSystemValues, mergeLocations, normalizeExpr, normalizeFunctionCall, parse, parseSource, renderAsDomain, renderExprNode, renderFragment, renderFragments, renderFragmentsByKind, renderPatchOp, renderTypeExpr, renderTypeField, renderValue, tokenToBinaryOp, tokenize, unknownCallFn, unknownNodeKind, unsupportedBase, validateSemantics };