@aster-cloud/aster-lang-ts 1.0.29 → 1.0.31

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 (291) hide show
  1. package/dist/scripts/aster.js +11 -26
  2. package/dist/scripts/aster.js.map +1 -1
  3. package/dist/scripts/corpus-loader.d.ts +17 -0
  4. package/dist/scripts/corpus-loader.d.ts.map +1 -0
  5. package/dist/scripts/corpus-loader.js +60 -0
  6. package/dist/scripts/corpus-loader.js.map +1 -0
  7. package/dist/scripts/emit-classfiles-core.js +5 -13
  8. package/dist/scripts/emit-classfiles-core.js.map +1 -1
  9. package/dist/scripts/emit-classfiles.js +7 -12
  10. package/dist/scripts/emit-classfiles.js.map +1 -1
  11. package/dist/scripts/generate_error_codes.js +2 -0
  12. package/dist/scripts/generate_error_codes.js.map +1 -1
  13. package/dist/scripts/golden.js +4 -1
  14. package/dist/scripts/golden.js.map +1 -1
  15. package/dist/scripts/test-lossless-golden.js +2 -1
  16. package/dist/scripts/test-lossless-golden.js.map +1 -1
  17. package/dist/scripts/validate_error_codes.js +1 -0
  18. package/dist/scripts/validate_error_codes.js.map +1 -1
  19. package/dist/scripts/verify-lexicon-sync.js +5 -1
  20. package/dist/scripts/verify-lexicon-sync.js.map +1 -1
  21. package/dist/src/ast/ast.d.ts +1 -1
  22. package/dist/src/ast/ast.d.ts.map +1 -1
  23. package/dist/src/ast/ast.js +2 -1
  24. package/dist/src/ast/ast.js.map +1 -1
  25. package/dist/src/browser.d.ts +7 -0
  26. package/dist/src/browser.d.ts.map +1 -1
  27. package/dist/src/browser.js +4 -0
  28. package/dist/src/browser.js.map +1 -1
  29. package/dist/src/cli/utils/gradle-env.d.ts +9 -0
  30. package/dist/src/cli/utils/gradle-env.d.ts.map +1 -0
  31. package/dist/src/cli/utils/gradle-env.js +18 -0
  32. package/dist/src/cli/utils/gradle-env.js.map +1 -0
  33. package/dist/src/cli/utils/out-dir.d.ts +18 -0
  34. package/dist/src/cli/utils/out-dir.d.ts.map +1 -0
  35. package/dist/src/cli/utils/out-dir.js +49 -0
  36. package/dist/src/cli/utils/out-dir.js.map +1 -0
  37. package/dist/src/cnl-printer.d.ts +10 -0
  38. package/dist/src/cnl-printer.d.ts.map +1 -0
  39. package/dist/src/cnl-printer.js +360 -0
  40. package/dist/src/cnl-printer.js.map +1 -0
  41. package/dist/src/config/lexicons/de-DE.d.ts.map +1 -1
  42. package/dist/src/config/lexicons/de-DE.js +8 -2
  43. package/dist/src/config/lexicons/de-DE.js.map +1 -1
  44. package/dist/src/config/lexicons/en-US.d.ts.map +1 -1
  45. package/dist/src/config/lexicons/en-US.js +8 -4
  46. package/dist/src/config/lexicons/en-US.js.map +1 -1
  47. package/dist/src/config/lexicons/hi-IN.d.ts.map +1 -1
  48. package/dist/src/config/lexicons/hi-IN.js +8 -2
  49. package/dist/src/config/lexicons/hi-IN.js.map +1 -1
  50. package/dist/src/config/lexicons/template.d.ts.map +1 -1
  51. package/dist/src/config/lexicons/template.js +12 -0
  52. package/dist/src/config/lexicons/template.js.map +1 -1
  53. package/dist/src/config/lexicons/zh-CN.d.ts.map +1 -1
  54. package/dist/src/config/lexicons/zh-CN.js +9 -3
  55. package/dist/src/config/lexicons/zh-CN.js.map +1 -1
  56. package/dist/src/config/semantic.d.ts +6 -0
  57. package/dist/src/config/semantic.d.ts.map +1 -1
  58. package/dist/src/config/semantic.js +8 -0
  59. package/dist/src/config/semantic.js.map +1 -1
  60. package/dist/src/config/token-kind.d.ts +12 -0
  61. package/dist/src/config/token-kind.d.ts.map +1 -1
  62. package/dist/src/config/token-kind.js +18 -0
  63. package/dist/src/config/token-kind.js.map +1 -1
  64. package/dist/src/core/core_ir.d.ts +1 -1
  65. package/dist/src/core/core_ir.d.ts.map +1 -1
  66. package/dist/src/core/core_ir.js +3 -1
  67. package/dist/src/core/core_ir.js.map +1 -1
  68. package/dist/src/core/interpreter.d.ts.map +1 -1
  69. package/dist/src/core/interpreter.js +222 -18
  70. package/dist/src/core/interpreter.js.map +1 -1
  71. package/dist/src/cst/cst_printer.d.ts.map +1 -1
  72. package/dist/src/cst/cst_printer.js +66 -32
  73. package/dist/src/cst/cst_printer.js.map +1 -1
  74. package/dist/src/diagnostics/diagnostics.d.ts +1 -0
  75. package/dist/src/diagnostics/diagnostics.d.ts.map +1 -1
  76. package/dist/src/diagnostics/diagnostics.js +1 -0
  77. package/dist/src/diagnostics/diagnostics.js.map +1 -1
  78. package/dist/src/diagnostics/error_codes.d.ts +10 -2
  79. package/dist/src/diagnostics/error_codes.d.ts.map +1 -1
  80. package/dist/src/diagnostics/error_codes.js +64 -0
  81. package/dist/src/diagnostics/error_codes.js.map +1 -1
  82. package/dist/src/effects/effect_inference.js +1 -1
  83. package/dist/src/effects/effect_inference.js.map +1 -1
  84. package/dist/src/formatter.d.ts +3 -0
  85. package/dist/src/formatter.d.ts.map +1 -1
  86. package/dist/src/formatter.js +8 -261
  87. package/dist/src/formatter.js.map +1 -1
  88. package/dist/src/frontend/transformers.d.ts.map +1 -1
  89. package/dist/src/frontend/transformers.js +10 -2
  90. package/dist/src/frontend/transformers.js.map +1 -1
  91. package/dist/src/governance/controls-registry.data.d.ts +40 -0
  92. package/dist/src/governance/controls-registry.data.d.ts.map +1 -0
  93. package/dist/src/governance/controls-registry.data.js +35 -0
  94. package/dist/src/governance/controls-registry.data.js.map +1 -0
  95. package/dist/src/governance/controls.d.ts +23 -0
  96. package/dist/src/governance/controls.d.ts.map +1 -0
  97. package/dist/src/governance/controls.js +77 -0
  98. package/dist/src/governance/controls.js.map +1 -0
  99. package/dist/src/index.d.ts +4 -0
  100. package/dist/src/index.d.ts.map +1 -1
  101. package/dist/src/index.js +2 -0
  102. package/dist/src/index.js.map +1 -1
  103. package/dist/src/lower_to_core.js +1 -1
  104. package/dist/src/lower_to_core.js.map +1 -1
  105. package/dist/src/lsp/completion.d.ts +22 -1
  106. package/dist/src/lsp/completion.d.ts.map +1 -1
  107. package/dist/src/lsp/completion.js +42 -1
  108. package/dist/src/lsp/completion.js.map +1 -1
  109. package/dist/src/lsp/debounce-map.d.ts +16 -0
  110. package/dist/src/lsp/debounce-map.d.ts.map +1 -0
  111. package/dist/src/lsp/debounce-map.js +32 -0
  112. package/dist/src/lsp/debounce-map.js.map +1 -0
  113. package/dist/src/lsp/server.js +6 -8
  114. package/dist/src/lsp/server.js.map +1 -1
  115. package/dist/src/lsp/utils.d.ts.map +1 -1
  116. package/dist/src/lsp/utils.js +2 -0
  117. package/dist/src/lsp/utils.js.map +1 -1
  118. package/dist/src/lsp/workspace/file-watcher.d.ts +1 -0
  119. package/dist/src/lsp/workspace/file-watcher.d.ts.map +1 -1
  120. package/dist/src/lsp/workspace/file-watcher.js +24 -14
  121. package/dist/src/lsp/workspace/file-watcher.js.map +1 -1
  122. package/dist/src/manifest.d.ts +2 -0
  123. package/dist/src/manifest.d.ts.map +1 -1
  124. package/dist/src/manifest.js.map +1 -1
  125. package/dist/src/package/manifest-parser.d.ts +10 -0
  126. package/dist/src/package/manifest-parser.d.ts.map +1 -1
  127. package/dist/src/package/manifest-parser.js +27 -28
  128. package/dist/src/package/manifest-parser.js.map +1 -1
  129. package/dist/src/package/manifest-schema.d.ts +15 -0
  130. package/dist/src/package/manifest-schema.d.ts.map +1 -0
  131. package/dist/src/package/manifest-schema.js +116 -0
  132. package/dist/src/package/manifest-schema.js.map +1 -0
  133. package/dist/src/parser/context.d.ts +2 -0
  134. package/dist/src/parser/context.d.ts.map +1 -1
  135. package/dist/src/parser/context.js +1 -0
  136. package/dist/src/parser/context.js.map +1 -1
  137. package/dist/src/parser/decl-parser.d.ts.map +1 -1
  138. package/dist/src/parser/decl-parser.js +26 -10
  139. package/dist/src/parser/decl-parser.js.map +1 -1
  140. package/dist/src/parser/expr-stmt-parser.d.ts +4 -1
  141. package/dist/src/parser/expr-stmt-parser.d.ts.map +1 -1
  142. package/dist/src/parser/expr-stmt-parser.js +147 -6
  143. package/dist/src/parser/expr-stmt-parser.js.map +1 -1
  144. package/dist/src/parser/import-parser.d.ts +12 -0
  145. package/dist/src/parser/import-parser.d.ts.map +1 -1
  146. package/dist/src/parser/import-parser.js +28 -0
  147. package/dist/src/parser/import-parser.js.map +1 -1
  148. package/dist/src/parser.js +1 -1
  149. package/dist/src/parser.js.map +1 -1
  150. package/dist/src/typecheck/browser.d.ts +3 -0
  151. package/dist/src/typecheck/browser.d.ts.map +1 -1
  152. package/dist/src/typecheck/browser.js +10 -1
  153. package/dist/src/typecheck/browser.js.map +1 -1
  154. package/dist/src/typecheck/context.d.ts +3 -0
  155. package/dist/src/typecheck/context.d.ts.map +1 -1
  156. package/dist/src/typecheck/context.js.map +1 -1
  157. package/dist/src/typecheck/expression.d.ts +6 -0
  158. package/dist/src/typecheck/expression.d.ts.map +1 -1
  159. package/dist/src/typecheck/expression.js +54 -2
  160. package/dist/src/typecheck/expression.js.map +1 -1
  161. package/dist/src/typecheck/generics.d.ts.map +1 -1
  162. package/dist/src/typecheck/generics.js +3 -0
  163. package/dist/src/typecheck/generics.js.map +1 -1
  164. package/dist/src/typecheck/governance.d.ts +43 -0
  165. package/dist/src/typecheck/governance.d.ts.map +1 -0
  166. package/dist/src/typecheck/governance.js +162 -0
  167. package/dist/src/typecheck/governance.js.map +1 -0
  168. package/dist/src/typecheck/module.d.ts.map +1 -1
  169. package/dist/src/typecheck/module.js +10 -1
  170. package/dist/src/typecheck/module.js.map +1 -1
  171. package/dist/src/typecheck/statement.d.ts.map +1 -1
  172. package/dist/src/typecheck/statement.js +2 -2
  173. package/dist/src/typecheck/statement.js.map +1 -1
  174. package/dist/src/typecheck/type_system.d.ts.map +1 -1
  175. package/dist/src/typecheck/type_system.js +4 -0
  176. package/dist/src/typecheck/type_system.js.map +1 -1
  177. package/dist/src/typecheck/verdict_signatures.d.ts +19 -0
  178. package/dist/src/typecheck/verdict_signatures.d.ts.map +1 -0
  179. package/dist/src/typecheck/verdict_signatures.js +23 -0
  180. package/dist/src/typecheck/verdict_signatures.js.map +1 -0
  181. package/dist/src/types/base.d.ts +2 -0
  182. package/dist/src/types/base.d.ts.map +1 -1
  183. package/dist/test/helpers/sibling-source.d.ts +10 -0
  184. package/dist/test/helpers/sibling-source.d.ts.map +1 -0
  185. package/dist/test/helpers/sibling-source.js +20 -0
  186. package/dist/test/helpers/sibling-source.js.map +1 -0
  187. package/dist/test/unit/allocation-budget.test.d.ts +2 -0
  188. package/dist/test/unit/allocation-budget.test.d.ts.map +1 -0
  189. package/dist/test/unit/allocation-budget.test.js +160 -0
  190. package/dist/test/unit/allocation-budget.test.js.map +1 -0
  191. package/dist/test/unit/apply-call.test.js +5 -0
  192. package/dist/test/unit/apply-call.test.js.map +1 -1
  193. package/dist/test/unit/canonicalizer/possessive-anchor.test.js +10 -0
  194. package/dist/test/unit/canonicalizer/possessive-anchor.test.js.map +1 -1
  195. package/dist/test/unit/cli/gradle-env-guard.test.d.ts +2 -0
  196. package/dist/test/unit/cli/gradle-env-guard.test.d.ts.map +1 -0
  197. package/dist/test/unit/cli/gradle-env-guard.test.js +53 -0
  198. package/dist/test/unit/cli/gradle-env-guard.test.js.map +1 -0
  199. package/dist/test/unit/cli/gradle-env.test.d.ts +2 -0
  200. package/dist/test/unit/cli/gradle-env.test.d.ts.map +1 -0
  201. package/dist/test/unit/cli/gradle-env.test.js +31 -0
  202. package/dist/test/unit/cli/gradle-env.test.js.map +1 -0
  203. package/dist/test/unit/cli/out-dir.test.d.ts +2 -0
  204. package/dist/test/unit/cli/out-dir.test.d.ts.map +1 -0
  205. package/dist/test/unit/cli/out-dir.test.js +96 -0
  206. package/dist/test/unit/cli/out-dir.test.js.map +1 -0
  207. package/dist/test/unit/formatter-corpus-roundtrip.test.d.ts +2 -0
  208. package/dist/test/unit/formatter-corpus-roundtrip.test.d.ts.map +1 -0
  209. package/dist/test/unit/formatter-corpus-roundtrip.test.js +190 -0
  210. package/dist/test/unit/formatter-corpus-roundtrip.test.js.map +1 -0
  211. package/dist/test/unit/formatter-roundtrip.test.d.ts +2 -0
  212. package/dist/test/unit/formatter-roundtrip.test.d.ts.map +1 -0
  213. package/dist/test/unit/formatter-roundtrip.test.js +125 -0
  214. package/dist/test/unit/formatter-roundtrip.test.js.map +1 -0
  215. package/dist/test/unit/governance/controls-registry-parity.test.d.ts +2 -0
  216. package/dist/test/unit/governance/controls-registry-parity.test.d.ts.map +1 -0
  217. package/dist/test/unit/governance/controls-registry-parity.test.js +28 -0
  218. package/dist/test/unit/governance/controls-registry-parity.test.js.map +1 -0
  219. package/dist/test/unit/governance/controls-registry-profiles.test.d.ts +2 -0
  220. package/dist/test/unit/governance/controls-registry-profiles.test.d.ts.map +1 -0
  221. package/dist/test/unit/governance/controls-registry-profiles.test.js +106 -0
  222. package/dist/test/unit/governance/controls-registry-profiles.test.js.map +1 -0
  223. package/dist/test/unit/governance/governance-check.test.d.ts +2 -0
  224. package/dist/test/unit/governance/governance-check.test.d.ts.map +1 -0
  225. package/dist/test/unit/governance/governance-check.test.js +169 -0
  226. package/dist/test/unit/governance/governance-check.test.js.map +1 -0
  227. package/dist/test/unit/governance/profile-check.test.d.ts +2 -0
  228. package/dist/test/unit/governance/profile-check.test.d.ts.map +1 -0
  229. package/dist/test/unit/governance/profile-check.test.js +139 -0
  230. package/dist/test/unit/governance/profile-check.test.js.map +1 -0
  231. package/dist/test/unit/governance/verdict-typecheck.test.d.ts +2 -0
  232. package/dist/test/unit/governance/verdict-typecheck.test.d.ts.map +1 -0
  233. package/dist/test/unit/governance/verdict-typecheck.test.js +80 -0
  234. package/dist/test/unit/governance/verdict-typecheck.test.js.map +1 -0
  235. package/dist/test/unit/interpreter/verdict-builtins.test.d.ts +2 -0
  236. package/dist/test/unit/interpreter/verdict-builtins.test.d.ts.map +1 -0
  237. package/dist/test/unit/interpreter/verdict-builtins.test.js +72 -0
  238. package/dist/test/unit/interpreter/verdict-builtins.test.js.map +1 -0
  239. package/dist/test/unit/list-numeric-fail-loud.test.d.ts +2 -0
  240. package/dist/test/unit/list-numeric-fail-loud.test.d.ts.map +1 -0
  241. package/dist/test/unit/list-numeric-fail-loud.test.js +83 -0
  242. package/dist/test/unit/list-numeric-fail-loud.test.js.map +1 -0
  243. package/dist/test/unit/lossless-mirror.test.d.ts +2 -0
  244. package/dist/test/unit/lossless-mirror.test.d.ts.map +1 -0
  245. package/dist/test/unit/lossless-mirror.test.js +41 -0
  246. package/dist/test/unit/lossless-mirror.test.js.map +1 -0
  247. package/dist/test/unit/lossless-reflow.test.d.ts +2 -0
  248. package/dist/test/unit/lossless-reflow.test.d.ts.map +1 -0
  249. package/dist/test/unit/lossless-reflow.test.js +84 -0
  250. package/dist/test/unit/lossless-reflow.test.js.map +1 -0
  251. package/dist/test/unit/lowering/lowering.test.js +35 -35
  252. package/dist/test/unit/lowering/lowering.test.js.map +1 -1
  253. package/dist/test/unit/lsp/control-completion.test.d.ts +2 -0
  254. package/dist/test/unit/lsp/control-completion.test.d.ts.map +1 -0
  255. package/dist/test/unit/lsp/control-completion.test.js +46 -0
  256. package/dist/test/unit/lsp/control-completion.test.js.map +1 -0
  257. package/dist/test/unit/lsp/debounce-map.test.d.ts +2 -0
  258. package/dist/test/unit/lsp/debounce-map.test.d.ts.map +1 -0
  259. package/dist/test/unit/lsp/debounce-map.test.js +47 -0
  260. package/dist/test/unit/lsp/debounce-map.test.js.map +1 -0
  261. package/dist/test/unit/lsp/file-watcher-restart.test.d.ts +2 -0
  262. package/dist/test/unit/lsp/file-watcher-restart.test.d.ts.map +1 -0
  263. package/dist/test/unit/lsp/file-watcher-restart.test.js +40 -0
  264. package/dist/test/unit/lsp/file-watcher-restart.test.js.map +1 -0
  265. package/dist/test/unit/manifest-parser.test.js +8 -0
  266. package/dist/test/unit/manifest-parser.test.js.map +1 -1
  267. package/dist/test/unit/manifest-schema.test.d.ts +7 -5
  268. package/dist/test/unit/manifest-schema.test.d.ts.map +1 -1
  269. package/dist/test/unit/manifest-schema.test.js +48 -10
  270. package/dist/test/unit/manifest-schema.test.js.map +1 -1
  271. package/dist/test/unit/parser/governance-sugar.test.d.ts +2 -0
  272. package/dist/test/unit/parser/governance-sugar.test.d.ts.map +1 -0
  273. package/dist/test/unit/parser/governance-sugar.test.js +258 -0
  274. package/dist/test/unit/parser/governance-sugar.test.js.map +1 -0
  275. package/dist/test/unit/parser/module-header.test.d.ts +2 -0
  276. package/dist/test/unit/parser/module-header.test.d.ts.map +1 -0
  277. package/dist/test/unit/parser/module-header.test.js +25 -0
  278. package/dist/test/unit/parser/module-header.test.js.map +1 -0
  279. package/dist/test/unit/parser/positional-annotation-args.test.d.ts +2 -0
  280. package/dist/test/unit/parser/positional-annotation-args.test.d.ts.map +1 -0
  281. package/dist/test/unit/parser/positional-annotation-args.test.js +26 -0
  282. package/dist/test/unit/parser/positional-annotation-args.test.js.map +1 -0
  283. package/dist/test/unit/parser/prefix-operator-call.test.d.ts +2 -0
  284. package/dist/test/unit/parser/prefix-operator-call.test.d.ts.map +1 -0
  285. package/dist/test/unit/parser/prefix-operator-call.test.js +69 -0
  286. package/dist/test/unit/parser/prefix-operator-call.test.js.map +1 -0
  287. package/dist/test/unit/scripts/corpus-loader.test.d.ts +2 -0
  288. package/dist/test/unit/scripts/corpus-loader.test.d.ts.map +1 -0
  289. package/dist/test/unit/scripts/corpus-loader.test.js +85 -0
  290. package/dist/test/unit/scripts/corpus-loader.test.js.map +1 -0
  291. package/package.json +1 -1
@@ -73,6 +73,14 @@ export const ERROR_MESSAGES = {
73
73
  ["W074" /* ErrorCode.PII_SINK_UNKNOWN */]: "PII data may flow to {sinkKind} without annotation",
74
74
  ["W105" /* ErrorCode.WORKFLOW_RETRY_INCONSISTENT */]: "Workflow retry configuration may be unreasonable: {reason}",
75
75
  ["W106" /* ErrorCode.WORKFLOW_TIMEOUT_UNREASONABLE */]: "Workflow timeout configuration may be unreasonable: {reason}",
76
+ ["W700" /* ErrorCode.GOV_VERDICT_RULE_MISSING_ID */]: "Rule '{rule}' returns Verdict but has no @id annotation",
77
+ ["E701" /* ErrorCode.GOV_DUPLICATE_RULE_ID */]: "Duplicate rule @id '{id}' on rules: {rules}",
78
+ ["E702" /* ErrorCode.GOV_ANNOTATION_ARG_INVALID */]: "Annotation @{annotation} on rule '{rule}' expects exactly one string literal argument",
79
+ ["E703" /* ErrorCode.GOV_VERDICT_CALL_ARITY */]: "{func} expects {expected} argument(s), got {actual}",
80
+ ["W704" /* ErrorCode.GOV_CONTROL_UNREGISTERED */]: "Control '{control}' on rule '{rule}' is not registered (controls registry {version})",
81
+ ["E705" /* ErrorCode.GOV_PROFILE_UNKNOWN */]: "Module '{module}' declares unknown profile '{profile}' (controls registry {version})",
82
+ ["E706" /* ErrorCode.GOV_PROFILE_VIOLATION */]: "Rule '{rule}' violates profile '{profile}': {requirement}",
83
+ ["E707" /* ErrorCode.GOV_CHECK_UNAVAILABLE */]: "Governance check could not run for module '{module}' (profile '{profile}'); saving is blocked until it succeeds",
76
84
  };
77
85
  export const ERROR_METADATA = {
78
86
  ["E001" /* ErrorCode.TYPE_MISMATCH */]: {
@@ -579,6 +587,62 @@ export const ERROR_METADATA = {
579
587
  message: "Workflow timeout configuration may be unreasonable: {reason}",
580
588
  help: "Check whether the timeout value is too large or too small.",
581
589
  },
590
+ ["W700" /* ErrorCode.GOV_VERDICT_RULE_MISSING_ID */]: {
591
+ code: "W700" /* ErrorCode.GOV_VERDICT_RULE_MISSING_ID */,
592
+ category: 'governance',
593
+ severity: 'warning',
594
+ message: "Rule '{rule}' returns Verdict but has no @id annotation",
595
+ help: "Add @id(\"RULE-001\") so every decision can be traced to a stable rule identity.",
596
+ },
597
+ ["E701" /* ErrorCode.GOV_DUPLICATE_RULE_ID */]: {
598
+ code: "E701" /* ErrorCode.GOV_DUPLICATE_RULE_ID */,
599
+ category: 'governance',
600
+ severity: 'error',
601
+ message: "Duplicate rule @id '{id}' on rules: {rules}",
602
+ help: "Rule ids must be unique within a module. Give each rule its own @id.",
603
+ },
604
+ ["E702" /* ErrorCode.GOV_ANNOTATION_ARG_INVALID */]: {
605
+ code: "E702" /* ErrorCode.GOV_ANNOTATION_ARG_INVALID */,
606
+ category: 'governance',
607
+ severity: 'error',
608
+ message: "Annotation @{annotation} on rule '{rule}' expects exactly one string literal argument",
609
+ help: "Write @id(\"RULE-001\"), @reason(\"...\") or @control(\"EU_AI_ACT:ART14\").",
610
+ },
611
+ ["E703" /* ErrorCode.GOV_VERDICT_CALL_ARITY */]: {
612
+ code: "E703" /* ErrorCode.GOV_VERDICT_CALL_ARITY */,
613
+ category: 'governance',
614
+ severity: 'error',
615
+ message: "{func} expects {expected} argument(s), got {actual}",
616
+ help: "Verdict.allow() takes no arguments; Verdict.deny(reason) and Verdict.escalate(reason) take one Text; Verdict.require_approval(role, reason) takes two Text.",
617
+ },
618
+ ["W704" /* ErrorCode.GOV_CONTROL_UNREGISTERED */]: {
619
+ code: "W704" /* ErrorCode.GOV_CONTROL_UNREGISTERED */,
620
+ category: 'governance',
621
+ severity: 'warning',
622
+ message: "Control '{control}' on rule '{rule}' is not registered (controls registry {version})",
623
+ help: "Use a registered key such as EU_AI_ACT:ART14, or add it to aster-lang-locales controls/registry.json (format FRAMEWORK:ARTICLE, at most 64 characters).",
624
+ },
625
+ ["E705" /* ErrorCode.GOV_PROFILE_UNKNOWN */]: {
626
+ code: "E705" /* ErrorCode.GOV_PROFILE_UNKNOWN */,
627
+ category: 'governance',
628
+ severity: 'error',
629
+ message: "Module '{module}' declares unknown profile '{profile}' (controls registry {version})",
630
+ help: "Use a profile defined in aster-lang-locales controls/registry.json, such as governed or eu-ai-act-high-risk.",
631
+ },
632
+ ["E706" /* ErrorCode.GOV_PROFILE_VIOLATION */]: {
633
+ code: "E706" /* ErrorCode.GOV_PROFILE_VIOLATION */,
634
+ category: 'governance',
635
+ severity: 'error',
636
+ message: "Rule '{rule}' violates profile '{profile}': {requirement}",
637
+ help: "Satisfy the profile requirement or remove the Profile declaration.",
638
+ },
639
+ ["E707" /* ErrorCode.GOV_CHECK_UNAVAILABLE */]: {
640
+ code: "E707" /* ErrorCode.GOV_CHECK_UNAVAILABLE */,
641
+ category: 'governance',
642
+ severity: 'error',
643
+ message: "Governance check could not run for module '{module}' (profile '{profile}'); saving is blocked until it succeeds",
644
+ help: "Retry later; this is a service fault, not a policy violation.",
645
+ },
582
646
  };
583
647
  /**
584
648
  * 使用命名参数填充错误消息模板。
@@ -1 +1 @@
1
- {"version":3,"file":"error_codes.js","sourceRoot":"","sources":["../../../src/diagnostics/error_codes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error_codes.js","sourceRoot":"","sources":["../../../src/diagnostics/error_codes.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ import { originToSpan } from '../typecheck/pure.js';
11
11
  */
12
12
  const PURE_STDLIB_NAMESPACES = new Set([
13
13
  'Text', 'List', 'Map', 'Maybe', 'Option', 'Result', 'Date', 'Decimal',
14
- 'Int', 'Float', 'Bool', 'Json',
14
+ 'Int', 'Float', 'Bool', 'Json', 'Verdict',
15
15
  ]);
16
16
  /** 判断一个 builtin 名是否属于已知纯 stdlib(如 `Text.concat`)。 */
17
17
  function isKnownPureBuiltin(name) {
@@ -1 +1 @@
1
- {"version":3,"file":"effect_inference.js","sourceRoot":"","sources":["../../../src/effects/effect_inference.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"effect_inference.js","sourceRoot":"","sources":["../../../src/effects/effect_inference.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,11 @@
1
+ import type { Lexicon } from './config/lexicons/types.js';
1
2
  export declare function formatCNL(text: string, opts?: {
2
3
  mode?: 'lossless' | 'normalize';
3
4
  reflow?: boolean;
4
5
  preserveComments?: boolean;
5
6
  preserveStandaloneComments?: boolean;
7
+ /** 源文所用词法包(缺省 en-US);输出一律为英文 CNL */
8
+ lexicon?: Lexicon;
6
9
  }): string;
7
10
  /**
8
11
  * 供测试对拍的钩子:按**生产同序**依次跑两条占位符模式。
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../src/formatter.ts"],"names":[],"mappings":"AAoBA,wBAAgB,SAAS,CACvB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAAC,0BAA0B,CAAC,EAAE,OAAO,CAAA;CAAE,GAC7H,MAAM,CAwIR;AAED;;;;;GAKG;AACH,wBAAgB,qCAAqC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK1E"}
1
+ {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../src/formatter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAM1D,wBAAgB,SAAS,CACvB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE;IACL,IAAI,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,oCAAoC;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,MAAM,CAyIR;AAED;;;;;GAKG;AACH,wBAAgB,qCAAqC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK1E"}
@@ -1,10 +1,11 @@
1
1
  import { canonicalize } from './frontend/canonicalizer.js';
2
2
  import { lex } from './frontend/lexer.js';
3
- import { parse } from './parser.js';
3
+ import { parseWithLexicon } from './parser.js';
4
4
  import { buildCst, buildCstLossless } from './cst/cst_builder.js';
5
5
  import { printCNLFromCst } from './cst/cst_printer.js';
6
- import { DefaultAstVisitor } from './ast/ast_visitor.js';
6
+ import { printModule } from './cnl-printer.js';
7
7
  export function formatCNL(text, opts) {
8
+ const lexicon = opts?.lexicon;
8
9
  if (opts?.mode === 'lossless') {
9
10
  try {
10
11
  const cst = buildCstLossless(text);
@@ -99,15 +100,15 @@ export function formatCNL(text, opts) {
99
100
  .replace(/<expr>\s*\./g, 'none.');
100
101
  const sanitized = !hasPlaceholder ? withPlaceholdersFixed
101
102
  : replaceLineAnchoredPlaceholder(withPlaceholdersFixed, PLACEHOLDER_ANY_CORE, () => 'Return none.');
102
- const can = canonicalize(sanitized);
103
+ const can = canonicalize(sanitized, lexicon);
103
104
  let tokens;
104
105
  let originalTokens; // For extracting comments from original text
105
106
  try {
106
- tokens = lex(can);
107
+ tokens = lex(can, lexicon);
107
108
  // When preserving comments, lex the original text to extract comment tokens
108
109
  if (opts?.preserveComments) {
109
110
  try {
110
- originalTokens = lex(text);
111
+ originalTokens = lex(text, lexicon);
111
112
  }
112
113
  catch {
113
114
  // If original fails to lex, fall back to no comment preservation
@@ -121,8 +122,8 @@ export function formatCNL(text, opts) {
121
122
  let formatted;
122
123
  const cst = buildCst(text, originalTokens ?? tokens);
123
124
  try {
124
- const ast = parse(tokens).ast;
125
- formatted = simpleFormatModule(ast);
125
+ const ast = parseWithLexicon(tokens, lexicon).ast;
126
+ formatted = printModule(ast);
126
127
  }
127
128
  catch {
128
129
  // If the source doesn't parse, return it unchanged
@@ -284,258 +285,4 @@ function reattachInlineComments(original, formatted, inline, includeStandalone)
284
285
  }
285
286
  return fmtLines.join('\n');
286
287
  }
287
- function indent(n) {
288
- return ' '.repeat(n);
289
- }
290
- function joinWithCommas(parts) {
291
- return parts.join(', ');
292
- }
293
- // No doc-comment preservation in output; we keep formatting deterministic
294
- class AstFormatterVisitor extends DefaultAstVisitor {
295
- out = [];
296
- firstDecl = true;
297
- // 语句/表达式格式化使用的方法族,供外部函数委托调用
298
- fmtBlock(b, lvl) {
299
- const lines = b.statements.map(s => indent(lvl) + this.fmtStmt(s, lvl));
300
- return lines.join('\n');
301
- }
302
- fmtStmt(s, lvl) {
303
- switch (s.kind) {
304
- case 'Let': {
305
- const anyExpr = s.expr;
306
- if (anyExpr && anyExpr.kind === 'Lambda') {
307
- const lam = anyExpr;
308
- const ps = lam.params.map((p) => `${p.name}: ${this.fmtType(p.type)}`).join(', ');
309
- const header = `Let ${s.name} be function with ${ps}, produce ${this.fmtType(lam.retType)}:`;
310
- const body = this.fmtBlock(lam.body, lvl + 1);
311
- return `${header}\n${body}`;
312
- }
313
- return `Let ${s.name} be ${this.fmtExpr(s.expr)}.`;
314
- }
315
- case 'Set':
316
- return `Set ${s.name} to ${this.fmtExpr(s.expr)}.`;
317
- case 'Return':
318
- return `Return ${this.fmtExpr(s.expr)}.`;
319
- case 'Start':
320
- return `Start ${s.name} as async ${this.fmtExpr(s.expr)}.`;
321
- case 'Wait': {
322
- const names = s.names;
323
- const inner = names.length <= 2 ? names.join(' and ') : names.slice(0, -1).join(', ') + ' and ' + names[names.length - 1];
324
- return `Wait for ${inner}.`;
325
- }
326
- case 'If': {
327
- const head = `If ${this.fmtExpr(s.cond)},:`;
328
- const thenB = '\n' + this.fmtBlock(s.thenBlock, lvl + 1);
329
- const elseB = s.elseBlock ? `\n${indent(lvl)}Otherwise,:\n${this.fmtBlock(s.elseBlock, lvl + 1)}` : '';
330
- return `${head}${thenB}${elseB}`;
331
- }
332
- case 'Match': {
333
- const head = `Match ${this.fmtExpr(s.expr)}:`;
334
- const cases = s.cases
335
- .map(c => {
336
- const pat = this.fmtPattern(c.pattern);
337
- if (c.body.kind === 'Return')
338
- return `${indent(lvl + 1)}When ${pat}, Return ${this.fmtExpr(c.body.expr)}.`;
339
- return `${indent(lvl + 1)}When ${pat},:\n${this.fmtBlock(c.body, lvl + 2)}`;
340
- })
341
- .join('\n');
342
- return `${head}\n${cases}`;
343
- }
344
- case 'Block':
345
- return this.fmtBlock(s, lvl);
346
- default:
347
- return `${this.fmtExpr(s)}.`;
348
- }
349
- }
350
- fmtPattern(p) {
351
- switch (p.kind) {
352
- case 'PatternNull':
353
- return 'null';
354
- case 'PatternInt':
355
- return String(p.value);
356
- case 'PatternName':
357
- return p.name;
358
- case 'PatternCtor': {
359
- if (p.args && p.args.length > 0)
360
- return `${p.typeName}(${p.args.map((pp) => this.fmtPattern(pp)).join(', ')})`;
361
- if (p.names && p.names.length > 0)
362
- return `${p.typeName}(${p.names.join(', ')})`;
363
- return p.typeName;
364
- }
365
- default:
366
- return '<pattern>';
367
- }
368
- }
369
- fmtExpr(e) {
370
- switch (e.kind) {
371
- case 'Name':
372
- return e.name;
373
- case 'Bool':
374
- return e.value ? 'true' : 'false';
375
- case 'Null':
376
- return 'null';
377
- case 'Int':
378
- return String(e.value);
379
- case 'Long':
380
- return String(e.value) + 'L';
381
- case 'Double': {
382
- const v = e.value;
383
- if (Number.isFinite(v) && Math.floor(v) === v)
384
- return v.toFixed(1);
385
- return String(v);
386
- }
387
- case 'String':
388
- return JSON.stringify(e.value);
389
- case 'None':
390
- return 'none';
391
- case 'Ok':
392
- return `ok of ${this.fmtExpr(e.expr)}`;
393
- case 'Err':
394
- return `err of ${this.fmtExpr(e.expr)}`;
395
- case 'Some':
396
- return `some of ${this.fmtExpr(e.expr)}`;
397
- case 'Construct':
398
- return `${e.typeName} with ${e.fields.map(f => this.fmtConstructField(f)).join(', ')}`;
399
- case 'Call': {
400
- const t = e.target;
401
- const target = t.kind === 'Name' ? t.name : `(${this.fmtExpr(t)})`;
402
- const args = e.args.map(a => this.fmtExpr(a)).join(', ');
403
- return `${target}(${args})`;
404
- }
405
- case 'Lambda': {
406
- const ps = e.params.map(p => `${p.name}: ${this.fmtType(p.type)}`).join(', ');
407
- return `function with ${ps}, produce ${this.fmtType(e.retType)}:\n${this.fmtBlock(e.body, 1)}`;
408
- }
409
- case 'IfExpr':
410
- // ADR 0019 G2b:表达式级 if。
411
- return `if ${this.fmtExpr(e.cond)} then ${this.fmtExpr(e.thenE)} else ${this.fmtExpr(e.elseE)}`;
412
- default:
413
- return '<expr>';
414
- }
415
- }
416
- fmtConstructField(f) {
417
- return `${f.name} = ${this.fmtExpr(f.expr)}`;
418
- }
419
- fmtType(t) {
420
- switch (t.kind) {
421
- case 'TypeName':
422
- return t.name;
423
- case 'Maybe':
424
- return `${this.fmtType(t.type)}` + '?';
425
- case 'Option':
426
- return `Option of ${this.fmtType(t.type)}`;
427
- case 'Result':
428
- return `Result of ${this.fmtType(t.ok)} and ${this.fmtType(t.err)}`;
429
- case 'List':
430
- return `List of ${this.fmtType(t.type)}`;
431
- case 'Map':
432
- return `Map ${this.fmtType(t.key)} to ${this.fmtType(t.val)}`;
433
- case 'TypeApp':
434
- return `${t.base} of ${t.args.map(a => this.fmtType(a)).join(', ')}`;
435
- case 'TypeVar':
436
- return t.name;
437
- case 'FuncType':
438
- return `(${t.params.map(p => this.fmtType(p)).join(', ')}) -> ${this.fmtType(t.ret)}`;
439
- case 'TypePii':
440
- return `@pii(${t.sensitivity}, ${t.category}) ${this.fmtType(t.baseType)}`;
441
- default:
442
- return '<type>';
443
- }
444
- }
445
- format(m) {
446
- this.out = [];
447
- this.firstDecl = true;
448
- this.visitModule(m, undefined);
449
- return this.out.join('\n');
450
- }
451
- visitModule(m, _ctx) {
452
- if (m.name) {
453
- this.out.push(`Module ${m.name}.`);
454
- // 在模块头和第一个declaration之间添加空行
455
- if (m.decls.length > 0)
456
- this.out.push('');
457
- }
458
- for (const d of m.decls)
459
- this.visitDeclaration(d, undefined);
460
- }
461
- visitDeclaration(d, _ctx) {
462
- // 在声明之间插入空行
463
- if (!this.firstDecl)
464
- this.out.push('');
465
- this.firstDecl = false;
466
- this.out.push(formatDecl(d));
467
- }
468
- }
469
- function simpleFormatModule(m) {
470
- return new AstFormatterVisitor().format(m);
471
- }
472
- function formatDecl(d) {
473
- switch (d.kind) {
474
- case 'Import': {
475
- const asPart = d.asName ? ` as ${d.asName}` : '';
476
- return `Use ${d.name}${asPart}.`;
477
- }
478
- case 'Data':
479
- return formatData(d);
480
- case 'Enum':
481
- return formatEnum(d);
482
- case 'Func':
483
- return formatFunc(d);
484
- default:
485
- return '// Unsupported declaration';
486
- }
487
- }
488
- function formatData(d) {
489
- const fields = d.fields.map(f => `${f.name} as ${formatType(f.type)}`);
490
- const tail = fields.length ? ` has ${joinWithCommas(fields)}` : '';
491
- return `Define ${d.name}${tail}.`;
492
- }
493
- function formatEnum(e) {
494
- const vars = e.variants.join(', ');
495
- return `Define ${e.name} as one of ${vars}.`;
496
- }
497
- function formatFunc(f) {
498
- const params = formatParams(f.params);
499
- const hasEff = !!(f.effects && f.effects.length > 0);
500
- const capsTxt = formatEffectCaps(f);
501
- const effTxt = hasEff ? ` It performs ${formatEffects(f.effects)}${capsTxt}` : '';
502
- if (!f.body) {
503
- return `Rule ${f.name}${params}, produce ${formatType(f.retType)}.${effTxt}`.trimEnd();
504
- }
505
- const header = hasEff
506
- ? `Rule ${f.name}${params}, produce ${formatType(f.retType)}.${effTxt}:`
507
- : `Rule ${f.name}${params}, produce ${formatType(f.retType)}:`;
508
- const body = formatBlock(f.body, 1);
509
- return `${header}\n${body}`;
510
- }
511
- function formatEffectCaps(f) {
512
- const caps = f.effectCaps;
513
- const isExplicit = f.effectCapsExplicit;
514
- if (caps.length === 0)
515
- return '';
516
- if (!isExplicit)
517
- return '';
518
- if (!f.effects || f.effects.length === 0)
519
- return '';
520
- return ` [${caps.join(', ')}]`;
521
- }
522
- function formatEffects(effs) {
523
- if (effs.length === 1)
524
- return effs[0];
525
- return effs.slice(0, -1).join(' and ') + ' and ' + effs[effs.length - 1];
526
- }
527
- function formatParams(ps) {
528
- if (!ps || ps.length === 0)
529
- return '';
530
- const inner = ps.map(p => `${p.name} as ${formatType(p.type)}`);
531
- return ` given ${joinWithCommas(inner)}`;
532
- }
533
- function formatBlock(b, lvl) {
534
- const v = new AstFormatterVisitor();
535
- return v.fmtBlock(b, lvl);
536
- }
537
- function formatType(t) {
538
- const v = new AstFormatterVisitor();
539
- return v.fmtType(t);
540
- }
541
288
  //# sourceMappingURL=formatter.js.map