aontu 0.61.0 → 0.63.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 (371) hide show
  1. package/README.md +4 -4
  2. package/dist/agentsmd.d.ts +1 -0
  3. package/dist/agentsmd.js +7 -28
  4. package/dist/agentsmd.js.map +1 -1
  5. package/dist/alias.js.map +1 -1
  6. package/dist/allow.d.ts +23 -0
  7. package/dist/allow.js +138 -0
  8. package/dist/allow.js.map +1 -0
  9. package/dist/aontu.d.ts +4 -2
  10. package/dist/aontu.js +4 -80
  11. package/dist/aontu.js.map +1 -1
  12. package/dist/aontumodel.d.ts +4 -0
  13. package/dist/aontumodel.js +33 -0
  14. package/dist/aontumodel.js.map +1 -0
  15. package/dist/cli.d.ts +10 -1
  16. package/dist/cli.js +877 -479
  17. package/dist/cli.js.map +1 -1
  18. package/dist/ctx.js +0 -48
  19. package/dist/ctx.js.map +1 -1
  20. package/dist/diff.js +0 -32
  21. package/dist/diff.js.map +1 -1
  22. package/dist/err.js +0 -40
  23. package/dist/err.js.map +1 -1
  24. package/dist/escape.js +0 -45
  25. package/dist/escape.js.map +1 -1
  26. package/dist/exactjson.d.ts +0 -35
  27. package/dist/exactjson.js +0 -131
  28. package/dist/exactjson.js.map +1 -1
  29. package/dist/format.js +55 -189
  30. package/dist/format.js.map +1 -1
  31. package/dist/grammar.d.ts +9 -0
  32. package/dist/grammar.js +54 -0
  33. package/dist/grammar.js.map +1 -0
  34. package/dist/graph.js +0 -26
  35. package/dist/graph.js.map +1 -1
  36. package/dist/hcanon.js +0 -82
  37. package/dist/hcanon.js.map +1 -1
  38. package/dist/helpdoc.d.ts +16 -0
  39. package/dist/helpdoc.js +59 -0
  40. package/dist/helpdoc.js.map +1 -0
  41. package/dist/hints.d.ts +0 -6
  42. package/dist/hints.js +59 -47
  43. package/dist/hints.js.map +1 -1
  44. package/dist/jsonschema.js +0 -114
  45. package/dist/jsonschema.js.map +1 -1
  46. package/dist/keyorder.d.ts +0 -7
  47. package/dist/keyorder.js +0 -41
  48. package/dist/keyorder.js.map +1 -1
  49. package/dist/lang.js +32 -877
  50. package/dist/lang.js.map +1 -1
  51. package/dist/lower.d.ts +3 -0
  52. package/dist/lower.js +14 -61
  53. package/dist/lower.js.map +1 -1
  54. package/dist/lsp-server.js +0 -16
  55. package/dist/lsp-server.js.map +1 -1
  56. package/dist/lsp.d.ts +1 -1
  57. package/dist/lsp.js +12 -159
  58. package/dist/lsp.js.map +1 -1
  59. package/dist/mcp-server.js +0 -26
  60. package/dist/mcp-server.js.map +1 -1
  61. package/dist/mcp.js +0 -113
  62. package/dist/mcp.js.map +1 -1
  63. package/dist/mod-tool.js +0 -130
  64. package/dist/mod-tool.js.map +1 -1
  65. package/dist/mod.js +0 -162
  66. package/dist/mod.js.map +1 -1
  67. package/dist/patch.js +0 -217
  68. package/dist/patch.js.map +1 -1
  69. package/dist/provenance.js +0 -140
  70. package/dist/provenance.js.map +1 -1
  71. package/dist/query.js +0 -75
  72. package/dist/query.js.map +1 -1
  73. package/dist/reach.js +0 -43
  74. package/dist/reach.js.map +1 -1
  75. package/dist/relation.d.ts +2 -0
  76. package/dist/relation.js +3 -58
  77. package/dist/relation.js.map +1 -1
  78. package/dist/render.js +33 -143
  79. package/dist/render.js.map +1 -1
  80. package/dist/report-sarif.d.ts +0 -11
  81. package/dist/report-sarif.js +0 -28
  82. package/dist/report-sarif.js.map +1 -1
  83. package/dist/sig.js +0 -35
  84. package/dist/sig.js.map +1 -1
  85. package/dist/sigdecl.js +1 -1
  86. package/dist/sigdecl.js.map +1 -1
  87. package/dist/siggate.js +0 -4
  88. package/dist/siggate.js.map +1 -1
  89. package/dist/site.js +3 -29
  90. package/dist/site.js.map +1 -1
  91. package/dist/subsume.d.ts +0 -10
  92. package/dist/subsume.js +0 -137
  93. package/dist/subsume.js.map +1 -1
  94. package/dist/template.d.ts +2 -1
  95. package/dist/template.js +58 -138
  96. package/dist/template.js.map +1 -1
  97. package/dist/trim.js +0 -41
  98. package/dist/trim.js.map +1 -1
  99. package/dist/tsconfig.tsbuildinfo +1 -1
  100. package/dist/type.js.map +1 -1
  101. package/dist/unify.js +12 -242
  102. package/dist/unify.js.map +1 -1
  103. package/dist/utility.js +0 -22
  104. package/dist/utility.js.map +1 -1
  105. package/dist/val/AbnfFuncVal.d.ts +18 -0
  106. package/dist/val/AbnfFuncVal.js +132 -0
  107. package/dist/val/AbnfFuncVal.js.map +1 -0
  108. package/dist/val/AbsentVal.d.ts +11 -0
  109. package/dist/val/AbsentVal.js +30 -0
  110. package/dist/val/AbsentVal.js.map +1 -0
  111. package/dist/val/AggFuncVal.d.ts +10 -1
  112. package/dist/val/AggFuncVal.js +104 -116
  113. package/dist/val/AggFuncVal.js.map +1 -1
  114. package/dist/val/ArithFuncVal.js +0 -12
  115. package/dist/val/ArithFuncVal.js.map +1 -1
  116. package/dist/val/BagVal.js +1 -78
  117. package/dist/val/BagVal.js.map +1 -1
  118. package/dist/val/BigDecimalVal.js +0 -16
  119. package/dist/val/BigDecimalVal.js.map +1 -1
  120. package/dist/val/BigIntegerVal.js +0 -16
  121. package/dist/val/BigIntegerVal.js.map +1 -1
  122. package/dist/val/CloseFuncVal.js +0 -9
  123. package/dist/val/CloseFuncVal.js.map +1 -1
  124. package/dist/val/CmpFuncVal.d.ts +20 -0
  125. package/dist/val/CmpFuncVal.js +188 -0
  126. package/dist/val/CmpFuncVal.js.map +1 -0
  127. package/dist/val/ConjunctVal.js +0 -29
  128. package/dist/val/ConjunctVal.js.map +1 -1
  129. package/dist/val/ConstraintVal.js +0 -500
  130. package/dist/val/ConstraintVal.js.map +1 -1
  131. package/dist/val/ContainerKindVal.js +0 -2
  132. package/dist/val/ContainerKindVal.js.map +1 -1
  133. package/dist/val/CopyFuncVal.js +0 -3
  134. package/dist/val/CopyFuncVal.js.map +1 -1
  135. package/dist/val/Decimal.js +0 -179
  136. package/dist/val/Decimal.js.map +1 -1
  137. package/dist/val/DeprecateFuncVal.js.map +1 -1
  138. package/dist/val/DisjunctVal.js +0 -152
  139. package/dist/val/DisjunctVal.js.map +1 -1
  140. package/dist/val/EachFuncVal.d.ts +1 -2
  141. package/dist/val/EachFuncVal.js +12 -29
  142. package/dist/val/EachFuncVal.js.map +1 -1
  143. package/dist/val/EmitFuncVal.d.ts +1 -1
  144. package/dist/val/EmitFuncVal.js +6 -119
  145. package/dist/val/EmitFuncVal.js.map +1 -1
  146. package/dist/val/ExpectVal.js +0 -62
  147. package/dist/val/ExpectVal.js.map +1 -1
  148. package/dist/val/FilterFuncVal.js +0 -25
  149. package/dist/val/FilterFuncVal.js.map +1 -1
  150. package/dist/val/FuncBaseVal.d.ts +1 -0
  151. package/dist/val/FuncBaseVal.js +7 -127
  152. package/dist/val/FuncBaseVal.js.map +1 -1
  153. package/dist/val/GraphAtomVal.js +0 -15
  154. package/dist/val/GraphAtomVal.js.map +1 -1
  155. package/dist/val/HideFuncVal.js +0 -13
  156. package/dist/val/HideFuncVal.js.map +1 -1
  157. package/dist/val/IntegerVal.js +0 -61
  158. package/dist/val/IntegerVal.js.map +1 -1
  159. package/dist/val/JunctionVal.js +0 -20
  160. package/dist/val/JunctionVal.js.map +1 -1
  161. package/dist/val/KeyFuncVal.js +0 -46
  162. package/dist/val/KeyFuncVal.js.map +1 -1
  163. package/dist/val/ListVal.js +0 -57
  164. package/dist/val/ListVal.js.map +1 -1
  165. package/dist/val/LowerFuncVal.js +11 -6
  166. package/dist/val/LowerFuncVal.js.map +1 -1
  167. package/dist/val/MapVal.js +0 -151
  168. package/dist/val/MapVal.js.map +1 -1
  169. package/dist/val/MatchFuncVal.js +0 -27
  170. package/dist/val/MatchFuncVal.js.map +1 -1
  171. package/dist/val/{FormFuncVal.d.ts → MaybeFuncVal.d.ts} +5 -5
  172. package/dist/val/MaybeFuncVal.js +50 -0
  173. package/dist/val/MaybeFuncVal.js.map +1 -0
  174. package/dist/val/MoveFuncVal.js +0 -18
  175. package/dist/val/MoveFuncVal.js.map +1 -1
  176. package/dist/val/NilVal.js +2 -36
  177. package/dist/val/NilVal.js.map +1 -1
  178. package/dist/val/NomFuncVal.d.ts +12 -0
  179. package/dist/val/NomFuncVal.js +153 -0
  180. package/dist/val/NomFuncVal.js.map +1 -0
  181. package/dist/val/NumberVal.js +0 -15
  182. package/dist/val/NumberVal.js.map +1 -1
  183. package/dist/val/OpBaseVal.d.ts +1 -0
  184. package/dist/val/OpBaseVal.js +3 -15
  185. package/dist/val/OpBaseVal.js.map +1 -1
  186. package/dist/val/PackFuncVal.js +0 -34
  187. package/dist/val/PackFuncVal.js.map +1 -1
  188. package/dist/val/PathFuncVal.js +0 -6
  189. package/dist/val/PathFuncVal.js.map +1 -1
  190. package/dist/val/PathVal.js +0 -41
  191. package/dist/val/PathVal.js.map +1 -1
  192. package/dist/val/PlaceVal.js +0 -25
  193. package/dist/val/PlaceVal.js.map +1 -1
  194. package/dist/val/PlusOpVal.d.ts +1 -7
  195. package/dist/val/PlusOpVal.js +13 -74
  196. package/dist/val/PlusOpVal.js.map +1 -1
  197. package/dist/val/PrefFuncVal.js +0 -1
  198. package/dist/val/PrefFuncVal.js.map +1 -1
  199. package/dist/val/PrefVal.js +0 -167
  200. package/dist/val/PrefVal.js.map +1 -1
  201. package/dist/val/RecurseVal.js +0 -55
  202. package/dist/val/RecurseVal.js.map +1 -1
  203. package/dist/val/RefVal.js +0 -282
  204. package/dist/val/RefVal.js.map +1 -1
  205. package/dist/val/ReferFuncVal.js +0 -232
  206. package/dist/val/ReferFuncVal.js.map +1 -1
  207. package/dist/val/ScalarKindVal.js +0 -49
  208. package/dist/val/ScalarKindVal.js.map +1 -1
  209. package/dist/val/ScalarVal.js +0 -11
  210. package/dist/val/ScalarVal.js.map +1 -1
  211. package/dist/val/StrFuncVal.js +0 -18
  212. package/dist/val/StrFuncVal.js.map +1 -1
  213. package/dist/val/SuperFuncVal.js +0 -32
  214. package/dist/val/SuperFuncVal.js.map +1 -1
  215. package/dist/val/TopVal.js +0 -1
  216. package/dist/val/TopVal.js.map +1 -1
  217. package/dist/val/TranslateFuncVal.d.ts +12 -0
  218. package/dist/val/TranslateFuncVal.js +99 -0
  219. package/dist/val/TranslateFuncVal.js.map +1 -0
  220. package/dist/val/UpperFuncVal.js +11 -6
  221. package/dist/val/UpperFuncVal.js.map +1 -1
  222. package/dist/val/Val.d.ts +1 -0
  223. package/dist/val/Val.js +2 -133
  224. package/dist/val/Val.js.map +1 -1
  225. package/dist/val/VarVal.js +0 -12
  226. package/dist/val/VarVal.js.map +1 -1
  227. package/dist/val/arith.js +0 -37
  228. package/dist/val/arith.js.map +1 -1
  229. package/dist/val/caserange.d.ts +3 -0
  230. package/dist/val/caserange.js +49 -0
  231. package/dist/val/caserange.js.map +1 -0
  232. package/dist/val/members.js +0 -6
  233. package/dist/val/members.js.map +1 -1
  234. package/dist/val/numcmp.js +0 -11
  235. package/dist/val/numcmp.js.map +1 -1
  236. package/dist/val/numkind.js +0 -145
  237. package/dist/val/numkind.js.map +1 -1
  238. package/dist/val/valutil.js +0 -16
  239. package/dist/val/valutil.js.map +1 -1
  240. package/dist/vet.d.ts +12 -0
  241. package/dist/vet.js +159 -412
  242. package/dist/vet.js.map +1 -1
  243. package/dist/view.js +0 -414
  244. package/dist/view.js.map +1 -1
  245. package/dist/walk.js +0 -41
  246. package/dist/walk.js.map +1 -1
  247. package/grammar/aontu.abnf +9 -7
  248. package/grammar/aontu.gbnf +5 -5
  249. package/grammar/aontu.lark +5 -5
  250. package/grammar/aontu.tmLanguage.json +1 -1
  251. package/package.json +4 -2
  252. package/skill/SKILL.md +8 -0
  253. package/skill/init/check.sh +28 -0
  254. package/skill/init/data.aon +12 -0
  255. package/skill/init/model.aon +19 -0
  256. package/skill/tasks.md +151 -0
  257. package/src/agentsmd.ts +8 -32
  258. package/src/alias.ts +0 -39
  259. package/src/allow.ts +221 -0
  260. package/src/aontu.ts +10 -108
  261. package/src/aontumodel.ts +32 -0
  262. package/src/cli.ts +1009 -540
  263. package/src/ctx.ts +0 -103
  264. package/src/diff.ts +0 -40
  265. package/src/err.ts +0 -40
  266. package/src/escape.ts +0 -46
  267. package/src/exactjson.ts +0 -131
  268. package/src/format.ts +63 -234
  269. package/src/grammar.ts +72 -0
  270. package/src/graph.ts +0 -61
  271. package/src/hcanon.ts +0 -82
  272. package/src/helpdoc.ts +77 -0
  273. package/src/hints.ts +72 -49
  274. package/src/jsonschema.ts +0 -123
  275. package/src/keyorder.ts +0 -42
  276. package/src/lang.ts +39 -895
  277. package/src/lower.ts +15 -65
  278. package/src/lsp-server.ts +0 -16
  279. package/src/lsp.ts +12 -180
  280. package/src/mcp-server.ts +0 -31
  281. package/src/mcp.ts +0 -130
  282. package/src/mod-tool.ts +0 -158
  283. package/src/mod.ts +0 -178
  284. package/src/patch.ts +0 -232
  285. package/src/provenance.ts +0 -183
  286. package/src/query.ts +0 -84
  287. package/src/reach.ts +0 -53
  288. package/src/relation.ts +7 -71
  289. package/src/render.ts +33 -180
  290. package/src/report-sarif.ts +0 -48
  291. package/src/sig.ts +0 -35
  292. package/src/sigdecl.ts +1 -1
  293. package/src/siggate.ts +0 -30
  294. package/src/site.ts +3 -29
  295. package/src/subsume.ts +1 -161
  296. package/src/template.ts +69 -140
  297. package/src/trim.ts +0 -53
  298. package/src/type.ts +2 -45
  299. package/src/unify.ts +13 -251
  300. package/src/utility.ts +0 -31
  301. package/src/val/AbnfFuncVal.ts +181 -0
  302. package/src/val/AbsentVal.ts +54 -0
  303. package/src/val/AggFuncVal.ts +152 -188
  304. package/src/val/ArithFuncVal.ts +0 -20
  305. package/src/val/BagVal.ts +1 -78
  306. package/src/val/BigDecimalVal.ts +0 -16
  307. package/src/val/BigIntegerVal.ts +0 -16
  308. package/src/val/CloseFuncVal.ts +0 -9
  309. package/src/val/CmpFuncVal.ts +249 -0
  310. package/src/val/ConjunctVal.ts +0 -33
  311. package/src/val/ConstraintVal.ts +2 -537
  312. package/src/val/ContainerKindVal.ts +0 -18
  313. package/src/val/CopyFuncVal.ts +0 -5
  314. package/src/val/Decimal.ts +1 -185
  315. package/src/val/DeprecateFuncVal.ts +0 -10
  316. package/src/val/DisjunctVal.ts +0 -157
  317. package/src/val/EachFuncVal.ts +12 -53
  318. package/src/val/EmitFuncVal.ts +8 -208
  319. package/src/val/ExpectVal.ts +0 -62
  320. package/src/val/FilterFuncVal.ts +0 -55
  321. package/src/val/FuncBaseVal.ts +9 -130
  322. package/src/val/GraphAtomVal.ts +0 -42
  323. package/src/val/HideFuncVal.ts +0 -15
  324. package/src/val/IntegerVal.ts +0 -61
  325. package/src/val/JunctionVal.ts +0 -20
  326. package/src/val/KeyFuncVal.ts +0 -48
  327. package/src/val/ListVal.ts +0 -59
  328. package/src/val/LowerFuncVal.ts +12 -7
  329. package/src/val/MapVal.ts +0 -151
  330. package/src/val/MatchFuncVal.ts +0 -59
  331. package/src/val/MaybeFuncVal.ts +86 -0
  332. package/src/val/MoveFuncVal.ts +0 -20
  333. package/src/val/NilVal.ts +2 -36
  334. package/src/val/NomFuncVal.ts +200 -0
  335. package/src/val/NumberVal.ts +0 -16
  336. package/src/val/OpBaseVal.ts +4 -17
  337. package/src/val/PackFuncVal.ts +0 -63
  338. package/src/val/PathFuncVal.ts +0 -32
  339. package/src/val/PathVal.ts +0 -66
  340. package/src/val/PlaceVal.ts +0 -45
  341. package/src/val/PlusOpVal.ts +18 -75
  342. package/src/val/PrefFuncVal.ts +0 -1
  343. package/src/val/PrefVal.ts +0 -179
  344. package/src/val/RecurseVal.ts +0 -81
  345. package/src/val/RefVal.ts +1 -285
  346. package/src/val/ReferFuncVal.ts +0 -255
  347. package/src/val/ScalarKindVal.ts +0 -50
  348. package/src/val/ScalarVal.ts +0 -12
  349. package/src/val/StrFuncVal.ts +0 -44
  350. package/src/val/SuperFuncVal.ts +0 -42
  351. package/src/val/TopVal.ts +0 -1
  352. package/src/val/TranslateFuncVal.ts +132 -0
  353. package/src/val/UpperFuncVal.ts +12 -7
  354. package/src/val/Val.ts +3 -192
  355. package/src/val/VarVal.ts +0 -15
  356. package/src/val/arith.ts +0 -92
  357. package/src/val/caserange.ts +53 -0
  358. package/src/val/members.ts +0 -23
  359. package/src/val/numcmp.ts +1 -27
  360. package/src/val/numkind.ts +0 -149
  361. package/src/val/valutil.ts +0 -16
  362. package/src/vet.ts +209 -504
  363. package/src/view.ts +0 -507
  364. package/src/walk.ts +0 -41
  365. package/dist/std.d.ts +0 -3
  366. package/dist/std.js +0 -637
  367. package/dist/std.js.map +0 -1
  368. package/dist/val/FormFuncVal.js +0 -55
  369. package/dist/val/FormFuncVal.js.map +0 -1
  370. package/src/std.ts +0 -648
  371. package/src/val/FormFuncVal.ts +0 -119
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { AontuContext } from './ctx';
2
+ declare const PARSE_STEP_MAX = 100000;
3
+ declare const PARSE_CHECK_EVERY = 100;
4
+ declare function compileGrammar(src: string): [any, string | undefined];
5
+ declare function parseWith(grammar: any, text: string, _ctx: AontuContext): [
6
+ any,
7
+ string | undefined
8
+ ];
9
+ export { compileGrammar, parseWith, PARSE_STEP_MAX, PARSE_CHECK_EVERY, };
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ /* Copyright (c) 2026 Richard Rodger, MIT License */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.PARSE_CHECK_EVERY = exports.PARSE_STEP_MAX = void 0;
5
+ exports.compileGrammar = compileGrammar;
6
+ exports.parseWith = parseWith;
7
+ // The grammar seam, ADR-033. Twin of go/grammar.go.
8
+ const parser_1 = require("@tabnas/parser");
9
+ const abnf_1 = require("@tabnas/abnf");
10
+ // A constant, not a trust knob: this bounds a third party's grammar.
11
+ const PARSE_STEP_MAX = 100000;
12
+ exports.PARSE_STEP_MAX = PARSE_STEP_MAX;
13
+ const PARSE_CHECK_EVERY = 100;
14
+ exports.PARSE_CHECK_EVERY = PARSE_CHECK_EVERY;
15
+ const cache = new Map();
16
+ const steps = { n: 0 };
17
+ function compileGrammar(src) {
18
+ const hit = cache.get(src);
19
+ if (undefined !== hit) {
20
+ return hit;
21
+ }
22
+ let out;
23
+ try {
24
+ // Lexing off, or the engine reads `1 . 2 . 3` as `1.2.3`. The hook
25
+ // is installed here because the engine takes it at construction.
26
+ const tn = new parser_1.Tabnas({
27
+ space: { lex: false },
28
+ parse: {
29
+ budget: {
30
+ checkEveryN: PARSE_CHECK_EVERY,
31
+ onCheck: () => (steps.n += PARSE_CHECK_EVERY) <= PARSE_STEP_MAX,
32
+ }
33
+ }
34
+ });
35
+ tn.use(abnf_1.abnf);
36
+ tn.abnf(src);
37
+ out = [tn, undefined];
38
+ }
39
+ catch (e) {
40
+ out = [undefined, String(e?.message ?? e).split('\n')[0]];
41
+ }
42
+ cache.set(src, out);
43
+ return out;
44
+ }
45
+ function parseWith(grammar, text, _ctx) {
46
+ steps.n = 0;
47
+ try {
48
+ return [grammar.parse(text), undefined];
49
+ }
50
+ catch (e) {
51
+ return [undefined, String(e?.message ?? e).split('\n')[0]];
52
+ }
53
+ } /* node:coverage ignore next 8 */
54
+ //# sourceMappingURL=grammar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grammar.js","sourceRoot":"","sources":["../src/grammar.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;QAmElD,cAAc;QACd,SAAS;AAlEX,oDAAoD;AAEpD,2CAAuC;AACvC,uCAAmC;AAKnC,qEAAqE;AACrE,MAAM,cAAc,GAAG,MAAM,CAAA;QA0D3B,cAAc;AAxDhB,MAAM,iBAAiB,GAAG,GAAG,CAAA;QAyD3B,iBAAiB;AAtDnB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAqC,CAAA;AAG1D,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;AAGtB,SAAS,cAAc,CAAC,GAAW;IACjC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC1B,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;QACtB,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,IAAI,GAA8B,CAAA;IAClC,IAAI,CAAC;QACH,mEAAmE;QACnE,iEAAiE;QACjE,MAAM,EAAE,GAAG,IAAI,eAAM,CAAC;YACpB,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE;YACrB,KAAK,EAAE;gBACL,MAAM,EAAE;oBACN,WAAW,EAAE,iBAAiB;oBAC9B,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,iBAAiB,CAAC,IAAI,cAAc;iBAChE;aACF;SACF,CAAC,CAAA;QACF,EAAE,CAAC,GAAG,CAAC,WAAI,CAAC,CAAA;QACZ,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACZ,GAAG,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;IACvB,CAAC;IACD,OAAO,CAAM,EAAE,CAAC;QACd,GAAG,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACnB,OAAO,GAAG,CAAA;AACZ,CAAC;AAGD,SAAS,SAAS,CAAC,OAAY,EAAE,IAAY,EAAE,IAAkB;IAE/D,KAAK,CAAC,CAAC,GAAG,CAAC,CAAA;IACX,IAAI,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAA;IACzC,CAAC;IACD,OAAO,CAAM,EAAE,CAAC;QACd,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5D,CAAC;AACH,CAAC,CAAC,iCAAiC"}
package/dist/graph.js CHANGED
@@ -7,14 +7,6 @@ const formatPath = (path) => 0 === path.length ? '$' : '$.' + path.join('.');
7
7
  // Digits-only segments are list indices, which is exactly how the rest
8
8
  // of the engine spells them.
9
9
  const isIndex = (seg) => /^[0-9]+$/.test(seg);
10
- // The node a link starts at and the relation it hangs under, derived
11
- // from the link's own position.
12
- //
13
- // A DECLARED predicate (rel()-minted) is authoritative: the link is cut
14
- // at the key the rel() sat on, wherever that is on the way down, which
15
- // is what makes a MAP-valued relation report the relation rather than
16
- // the inner label. Without one the relation is INFERRED: strip the list
17
- // indices, and the first real key above the link is it.
18
10
  const cut = (at, relkey) => {
19
11
  if (undefined !== relkey) {
20
12
  for (let i = at.length - 1; 0 <= i; i--) {
@@ -29,11 +21,6 @@ const cut = (at, relkey) => {
29
21
  ? { from: formatPath([]), key: relkey ?? '' }
30
22
  : { from: formatPath(at.slice(0, i)), key: relkey ?? at[i] };
31
23
  };
32
- // The graph of an evaluated tree. Walks POSITIONS, not values: a
33
- // reference or a spread can put one value object at several positions,
34
- // and a walk guarded by object identity would find the first and miss
35
- // every other place it is reached. The guard is therefore the ancestor
36
- // chain — which is what a cycle actually is.
37
24
  function graphOf(root) {
38
25
  const edges = [];
39
26
  const disjunct = [];
@@ -65,11 +52,6 @@ function graphOf(root) {
65
52
  if (true === node.isGraphAtom && undefined !== node.held) {
66
53
  visit(node.held, path, ancestors, hidden, undecided);
67
54
  }
68
- // An unresolved conjunction (a link waiting on a peer that never
69
- // came, a constraint still open) holds its terms at the SAME
70
- // position; every link among them is written there, and is an
71
- // edge. This is what a match-selected branch or a deferred refer()
72
- // looks like after evaluation.
73
55
  if (true === node.isConjunct && Array.isArray(node.peg)) {
74
56
  ancestors.add(node);
75
57
  for (const term of node.peg) {
@@ -77,10 +59,6 @@ function graphOf(root) {
77
59
  }
78
60
  ancestors.delete(node);
79
61
  }
80
- // AN UNRESOLVED DISJUNCTION IS NOT A VALUE (ADR-007), so a link
81
- // under one of its arms is not an edge. Its POSITION is collected
82
- // instead, so a figure can report what the document leaves
83
- // undecided rather than drawing it or dropping it in silence.
84
62
  if (true === node.isDisjunct && Array.isArray(node.peg)) {
85
63
  ancestors.add(node);
86
64
  for (const arm of node.peg) {
@@ -97,10 +75,6 @@ function graphOf(root) {
97
75
  }
98
76
  };
99
77
  visit(root, [], new Set(), false, false);
100
- // DETERMINISTIC by construction, not by luck: edges by the position
101
- // they are written at, which is unique — one link, one place. That
102
- // holds through a conjunction too: its terms share the position, and
103
- // two links there would have had to unify into one.
104
78
  edges.sort((a, b) => (0, keyorder_1.cmpCodePoint)(a.at, b.at));
105
79
  if (0 < disjunct.length) {
106
80
  return { edges, disjunct: [...new Set(disjunct)].sort(keyorder_1.cmpCodePoint) };
package/dist/graph.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"graph.js","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"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"}
package/dist/hcanon.js CHANGED
@@ -3,56 +3,8 @@
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.hcanon = hcanon;
5
5
  exports.canonHash = canonHash;
6
- // The HASH FORM (G6 phase 0, docs/capability-review/g6-distribution.md):
7
- // exactly the unify-level canon with the additions that close its
8
- // semantic gaps, so that two documents with the same hash form have the
9
- // same meaning:
10
- //
11
- // - a CLOSED map or list renders wrapped: close({...}), close([...])
12
- // (canon drops closedness);
13
- // - the type/hide MARKS render as their builtin wrappers: type(x),
14
- // hide(x) (canon drops marks).
15
- //
16
- // Both additions reuse existing parseable syntax, so the hash form
17
- // remains valid Aontu source and round-trips:
18
- // hcanon(unify(parse(hcanon(v)))) == hcanon(v) is a spec-suite property
19
- // (test/spec/hcanon.tsv). User-facing canon is UNCHANGED — hcanon is a
20
- // separate rendering.
21
- //
22
- // An ALIAS REFERENCE left standing in a spread template renders its
23
- // EXPANSION through this same walk rather than through the reference's
24
- // own canon, so a close() or a mark on the aliased value survives into
25
- // the hash. Without that the wrappers above are absent exactly where
26
- // the alias filter has already erased the declaration that carried
27
- // them (BUGS.md §60).
28
- //
29
- // The marks PROPAGATE to every descendant at unification (walkMark), so
30
- // a wrapper is emitted only where a mark STARTS: the walk carries the
31
- // inherited marks down and a child whose mark the parent already
32
- // carries renders bare. Without that, hide({a:1}) would render every
33
- // leaf re-wrapped — still correct, never minimal, and not what the
34
- // source said.
35
- //
36
- // canonHash (G6 phase 1) is the pin built on it:
37
- // "aon1-" + base64url( SHA-256( UTF-8( hcanon(v) ) ) )
38
- // (unpadded base64url, RFC 4648 section 5). The "aon1-" scheme id
39
- // exists so a future semantically-stronger normal form is an upgrade,
40
- // not a breakage. This is a CANONICAL-TEXT hash, not a semantic
41
- // equivalence class: the failure direction is the safe one — a false
42
- // "changed" forces a needless re-review; a false "unchanged" would need
43
- // two hash forms with the same bytes and different meanings, which is
44
- // exactly the gap the close/mark wrappers exist to shut.
45
6
  const node_crypto_1 = require("node:crypto");
46
7
  const keyorder_1 = require("./keyorder");
47
- // One node's rendering, carrying the marks the ANCESTORS already
48
- // wrapped. Bags and junctions recurse structurally (their canon getters
49
- // render children through plain canon, which would drop a nested
50
- // close), and so does an expanded alias reference, for the reason its
51
- // own arm gives. Everything else — scalars, kinds, funcs, constraints,
52
- // and a reference with nothing to expand — delegates to its own canon,
53
- // whose text is already in cross-port parity. The non-Val arm mirrors
54
- // MapVal.canon's raw-peg fallback and is unreachable through an
55
- // evaluated tree (direct-tested, ADR-002).
56
8
  function render(v, inh) {
57
9
  if (true !== v?.isVal) {
58
10
  return String(v);
@@ -65,12 +17,6 @@ function render(v, inh) {
65
17
  };
66
18
  let s;
67
19
  if (true === v.isMap) {
68
- // Alias declarations are dropped here for the same reason
69
- // MapVal.canon drops them, and this is the surface where it counts:
70
- // `aon1-` pins MEANING, so a document written with aliases and the
71
- // same document written longhand must hash to one string. Two
72
- // renderers, one rule -- hcanon is not canon and does not inherit
73
- // the filter (docs/design/ALIASES.0.md §4).
74
20
  const keys = Object.keys(v.peg)
75
21
  .filter((k) => !v.aliasKeys.includes(k))
76
22
  .sort(keyorder_1.cmpCodePoint);
@@ -103,22 +49,6 @@ function render(v, inh) {
103
49
  else if (true === v.isConjunct || true === v.isDisjunct) {
104
50
  s = junctionText(v, true === v.isConjunct ? '&' : '|', inner);
105
51
  }
106
- // AN EXPANDED ALIAS REFERENCE IS RENDERED, NOT DELEGATED (BUGS.md
107
- // §60). A reference standing after unification is one inside a
108
- // spread template, and `RefVal.canon` answers with the EXPANSION's
109
- // plain canon -- which drops exactly what this renderer exists to
110
- // keep. The declaration carrying `close()` or a mark is erased by
111
- // the alias filter above, so a `close()` lost here is lost from the
112
- // hash entirely: `%A = close({n:string})` and `%A = {n:string}`,
113
- // used as `box: [&: %A]`, hashed to ONE STRING while refusing and
114
- // admitting `{n:"x",z:1}` respectively -- a change of meaning the
115
- // pin reported as no change, in the unsafe direction. Recursing
116
- // through `inner` is what makes the alias form and its longhand
117
- // twin agree again, which is ALIASES.0.md §4's own requirement.
118
- //
119
- // A reference with NO expansion still spells its name: a plain
120
- // `$.A` names a key the hash form still carries in full, and the
121
- // knot of a recursive alias inside its own template never gets one.
122
52
  else if (true === v.isRef && undefined !== v.expansion) {
123
53
  s = render(v.expansion, inner);
124
54
  }
@@ -142,14 +72,6 @@ function render(v, inh) {
142
72
  }
143
73
  return s;
144
74
  }
145
- // The JunctionVal.canon parenthesisation rule, kept: a member that is
146
- // itself a junction with more than one term keeps its parens so the
147
- // text reparses with the same structure (`(1|2)&3`, not the
148
- // differently-parsing `1|2&3`). Post-unification junctions are
149
- // flattened by norm, so no SOURCE reaches the wrapping arm -- it is
150
- // pinned by direct tests over constructed Vals in both ports, because
151
- // a hash form that could render ambiguously would be a pin that
152
- // silently agrees with a document it should not.
153
75
  function junctionText(v, sym, inner) {
154
76
  return v.peg.map((m) => true === m?.isJunction && 1 < m.peg.length
155
77
  ? '(' + render(m, inner) + ')'
@@ -162,10 +84,6 @@ function junctionText(v, sym, inner) {
162
84
  function hcanon(v) {
163
85
  return render(v, { type: false, hide: false });
164
86
  }
165
- // The canon-hash pin. Scoped to the module evaluated STANDALONE: its
166
- // own include closure resolved and unified at its own root, before any
167
- // consumer context — which is what makes the pin transitive (an edit
168
- // two includes deep changes the unified root, hence the hash).
169
87
  function canonHash(v) {
170
88
  return 'aon1-' +
171
89
  (0, node_crypto_1.createHash)('sha256').update(hcanon(v), 'utf8').digest('base64url');
@@ -1 +1 @@
1
- {"version":3,"file":"hcanon.js","sourceRoot":"","sources":["../src/hcanon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hcanon.js","sourceRoot":"","sources":["../src/hcanon.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ type HelpTopic = {
2
+ topic: string;
3
+ summary: string;
4
+ source: string;
5
+ text: string;
6
+ };
7
+ declare const HELPDOC: HelpTopic[];
8
+ type InitFile = {
9
+ file: string;
10
+ mode: number;
11
+ name: string;
12
+ text: string;
13
+ };
14
+ declare const INITDOC: InitFile[];
15
+ export type { HelpTopic, InitFile };
16
+ export { HELPDOC, INITDOC };