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
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # aontu
2
2
 
3
3
  **JSON structure unifier.** A small language, and an engine that merges
4
- partial structures into one consistent result—or reports exactly
4
+ partial structures into one consistent result: or reports exactly
5
5
  where they conflict.
6
6
 
7
7
  Schema, defaults and data are the same kind of thing, combined by one
@@ -18,7 +18,7 @@ npm install -g aontu
18
18
  ```aontu
19
19
  # a schema, a default, and data — one notation, one operation
20
20
  port: integer
21
- port: *8080 | integer
21
+ port: *8080|integer
22
22
  host: string
23
23
  host: "localhost"
24
24
  ```
@@ -61,8 +61,8 @@ report.findings // located, coded, with the sites that conflicted
61
61
 
62
62
  **Evaluating a document you did not write runs it.** `@"…"` resolves
63
63
  through the filesystem and package chain by default, so pass a `trust`
64
- profile—`{ include: 'none' }`, a virtual file set, or a confined
65
- root—whenever the source is not yours. See
64
+ profile (`{ include: 'none' }`, a virtual file set, or a confined
65
+ root) whenever the source is not yours. See
66
66
  [the trust contract](https://github.com/rjrodger/aontu/blob/main/docs/trust.md).
67
67
 
68
68
  ## Two implementations, one specification
@@ -8,6 +8,7 @@ export type AgentsMdReport = {
8
8
  stanza: string;
9
9
  };
10
10
  export type AgentsMdOptions = {
11
+ depth?: number;
11
12
  name?: string;
12
13
  path?: string;
13
14
  trust?: TrustOptions;
package/dist/agentsmd.js CHANGED
@@ -5,16 +5,6 @@ exports.agentsMd = agentsMd;
5
5
  exports.agentsMdSplice = agentsMdSplice;
6
6
  /* Copyright (c) 2025 Richard Rodger, MIT License */
7
7
  const utility_1 = require("./utility");
8
- // THE AGENTS.md STANZA (G7 phase 6,
9
- // docs/capability-review/g7-machine-access.md): generated FROM the
10
- // definition, so the prose entrypoint cannot drift from the formal
11
- // source it points at.
12
- //
13
- // A hand-written "here is where the config lives" paragraph is stale
14
- // the first time a key is renamed. This one is derived: the root keys
15
- // come from the document, the pin comes from G6's canon-hash, and the
16
- // commands are spelled with paths that exist. Re-running the verb
17
- // after an edit produces the stanza that edit implies.
18
8
  const aontu_1 = require("./aontu");
19
9
  const hcanon_1 = require("./hcanon");
20
10
  const query_1 = require("./query");
@@ -36,13 +26,10 @@ function agentsMd(src, opts) {
36
26
  return { findings: [(0, query_2.evalFailure)(ctx)], ok: false, stanza: '' };
37
27
  }
38
28
  const keys = true === v.isMap ? Object.keys(v.peg).sort(keyorder_1.cmpCodePoint) : [];
39
- // THE SHAPE IS A SECOND EVALUATION, and it runs under the same
40
- // include options as the first. Taking `path` alone made it a
41
- // narrower reader than the stanza around it: a document whose keys
42
- // arrive through a `--text-ext` include listed those keys and then
43
- // reported an EMPTY shape, because the read the shape came from
44
- // refused the include the read above it had just honoured.
45
- const shape = (0, query_1.get)(src, '$', { view: 'types', depth: 2, path: options.path, ...(0, utility_1.includeOpts)(options) });
29
+ const shape = (0, query_1.get)(src, '$', {
30
+ view: 'types', depth: options.depth ?? 2,
31
+ path: options.path, ...(0, utility_1.includeOpts)(options),
32
+ });
46
33
  // A REAL path, so the example command works as written: the first
47
34
  // root key when there is one, the root itself when there is not.
48
35
  const example = 0 < keys.length ? '$.' + keys[0] : '$';
@@ -76,6 +63,9 @@ function agentsMd(src, opts) {
76
63
  '# change it without editing it',
77
64
  'aontu set ' + example + '=<value> --entry ' + name +
78
65
  ' --overlay overlay.aon',
66
+ '',
67
+ '# the language itself, offline: the whole grammar on one page',
68
+ 'aontu help language',
79
69
  '```',
80
70
  '',
81
71
  'Regenerate this section with `aontu agentsmd ' + name + '`.',
@@ -83,11 +73,6 @@ function agentsMd(src, opts) {
83
73
  ];
84
74
  return { findings: [], ok: true, stanza: lines.join('\n') + '\n' };
85
75
  }
86
- // Splice the stanza into an existing document: replace what stands
87
- // between the markers, or append when there is nothing to replace. A
88
- // document is otherwise LEFT ALONE — the rest of an AGENTS.md is
89
- // someone's prose, and a generator that rewrote it would be a
90
- // generator nobody dared run twice.
91
76
  function agentsMdSplice(existing, stanza) {
92
77
  const from = existing.indexOf(exports.AGENTSMD_BEGIN);
93
78
  const to = existing.indexOf(exports.AGENTSMD_END);
@@ -96,12 +81,6 @@ function agentsMdSplice(existing, stanza) {
96
81
  ? existing : existing + '\n';
97
82
  return head + ('' === existing ? '' : '\n') + stanza;
98
83
  }
99
- // Skip the end marker's line terminator, whatever it is, and only if
100
- // it is there. The full note is on the Go twin (go/agentsmd.go): `+1`
101
- // assumed one byte and got the CR of a CRLF document, leaving the LF
102
- // to become a blank line on every regeneration -- and past the end of
103
- // a document whose marker is its last content, where Go panicked and
104
- // this side quietly did not.
105
84
  let end = to + exports.AGENTSMD_END.length;
106
85
  if ('\r' === existing[end]) {
107
86
  end++;
@@ -1 +1 @@
1
- {"version":3,"file":"agentsmd.js","sourceRoot":"","sources":["../src/agentsmd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentsmd.js","sourceRoot":"","sources":["../src/agentsmd.ts"],"names":[],"mappings":"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"}
package/dist/alias.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"alias.js","sourceRoot":"","sources":["../src/alias.ts"],"names":[],"mappings":";AAAA,yDAAyD;;QA8GvD,aAAa;AAlEf,yCAAyC;AACzC,yCAA4C;AAG5C,SAAS,aAAa,CAAC,IAAS,EAAE,OAAyB;IACzD,IAAI,IAAI,KAAM,IAAY,CAAC,KAAK,EAAE,CAAC;QACjC,OAAM;IACR,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAAO,CAAA;IAE3B,MAAM,KAAK,GAAG,CAAC,CAAM,EAAE,KAAe,EAAQ,EAAE;QAC9C,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,OAAM;QACR,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAEX,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,IAAI,GAAuB,CAAC,CAAC,SAAS,CAAA;YAC5C,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,OAAM;YACR,CAAC;YACD,CAAC,CAAC,SAAS,GAAG,SAAS,CAAA;YACvB,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,OAAM;YACR,CAAC;YACD,MAAM,MAAM,GACV,OAAO,CAAC,GAAG,CAAC,IAAA,sBAAa,EAAC,CAAC,CAAC,CAAC,IAAK,IAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAC1D,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,OAAM;YACR,CAAC;YACD,CAAC,CAAC,SAAS,GAAG,MAAM,CAAA;YACpB,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,CAAA;YAC/B,OAAM;QACR,CAAC;QAED,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;YACrB,8DAA8D;YAC9D,6DAA6D;YAC7D,8BAA8B;YAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;iBAC5B,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;iBAC/C,IAAI,CAAC,uBAAY,CAAC,CAAA;YACrB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YACxB,CAAC;QACH,CAAC;aACI,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;gBACtB,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YACjB,CAAC;QACH,CAAC;aACI,IAAI,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YAC/C,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACrB,CAAC;QAED,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACnE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QAC3B,CAAC;IACH,CAAC,CAAA;IAED,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;AACjB,CAAC,CAAC,iCAAiC"}
1
+ {"version":3,"file":"alias.js","sourceRoot":"","sources":["../src/alias.ts"],"names":[],"mappings":";AAAA,yDAAyD;;QAuEvD,aAAa;AAlEf,yCAAyC;AACzC,yCAA4C;AAG5C,SAAS,aAAa,CAAC,IAAS,EAAE,OAAyB;IACzD,IAAI,IAAI,KAAM,IAAY,CAAC,KAAK,EAAE,CAAC;QACjC,OAAM;IACR,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAAO,CAAA;IAE3B,MAAM,KAAK,GAAG,CAAC,CAAM,EAAE,KAAe,EAAQ,EAAE;QAC9C,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,OAAM;QACR,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAEX,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,IAAI,GAAuB,CAAC,CAAC,SAAS,CAAA;YAC5C,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,OAAM;YACR,CAAC;YACD,CAAC,CAAC,SAAS,GAAG,SAAS,CAAA;YACvB,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,OAAM;YACR,CAAC;YACD,MAAM,MAAM,GACV,OAAO,CAAC,GAAG,CAAC,IAAA,sBAAa,EAAC,CAAC,CAAC,CAAC,IAAK,IAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAC1D,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,OAAM;YACR,CAAC;YACD,CAAC,CAAC,SAAS,GAAG,MAAM,CAAA;YACpB,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,CAAA;YAC/B,OAAM;QACR,CAAC;QAED,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;YACrB,8DAA8D;YAC9D,6DAA6D;YAC7D,8BAA8B;YAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;iBAC5B,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;iBAC/C,IAAI,CAAC,uBAAY,CAAC,CAAA;YACrB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YACxB,CAAC;QACH,CAAC;aACI,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;gBACtB,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YACjB,CAAC;QACH,CAAC;aACI,IAAI,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YAC/C,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACrB,CAAC;QAED,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACnE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QAC3B,CAAC;IACH,CAAC,CAAA;IAED,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;AACjB,CAAC,CAAC,iCAAiC"}
@@ -0,0 +1,23 @@
1
+ import type { VetFinding } from './vet';
2
+ import type { IncludeOptions } from './utility';
3
+ export declare const ALLOW_AT = "$.roles";
4
+ export type AllowVerdict = 'allowed' | 'refused' | 'error';
5
+ export type AllowReason = 'allow' | 'deny' | 'uncovered' | 'no_role';
6
+ export type AllowDecision = {
7
+ path: string;
8
+ allowed: boolean;
9
+ reason: AllowReason;
10
+ by?: string;
11
+ pattern?: string;
12
+ };
13
+ export type AllowReport = {
14
+ verdict: AllowVerdict;
15
+ role: string;
16
+ paths: AllowDecision[];
17
+ findings: VetFinding[];
18
+ };
19
+ export type AllowOptions = IncludeOptions & {
20
+ path?: string;
21
+ at?: string;
22
+ };
23
+ export declare function allow(src: string, role: string, paths: string[], opts?: AllowOptions): AllowReport;
package/dist/allow.js ADDED
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+ /* Copyright (c) 2025 Richard Rodger, MIT License */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ALLOW_AT = void 0;
5
+ exports.allow = allow;
6
+ const aontu_1 = require("./aontu");
7
+ const ConjunctVal_1 = require("./val/ConjunctVal");
8
+ const vet_1 = require("./vet");
9
+ const query_1 = require("./query");
10
+ const utility_1 = require("./utility");
11
+ // Where the roles map lives when the caller does not say.
12
+ exports.ALLOW_AT = '$.roles';
13
+ const ENTRY = 'string & re("^[$]") & re("[^.]$")';
14
+ // The shape every role must satisfy, in the language: a list of
15
+ // subtree entries to allow, and optionally one to deny.
16
+ const ROLE_SHAPE = `{ allow: [&: ${ENTRY}] deny?: [&: ${ENTRY}] }`;
17
+ function shapeSource(at) {
18
+ const keys = (0, query_1.pathParts)(at).map((p) => JSON.stringify(p));
19
+ return 0 === keys.length
20
+ ? '&: ' + ROLE_SHAPE
21
+ : keys.join(': ') + ': { &: ' + ROLE_SHAPE + ' }';
22
+ }
23
+ // `$.a.b` for a segment list, `$` for none: the spelling every report
24
+ // uses for a path, whatever the caller wrote.
25
+ function pathText(parts) {
26
+ return '$' + (0 < parts.length ? '.' + parts.join('.') : '');
27
+ }
28
+ function finding(code, path, message, note) {
29
+ return {
30
+ code,
31
+ class: 'reference',
32
+ severity: 'error',
33
+ path,
34
+ message,
35
+ sites: [],
36
+ ...(null == note ? {} : { note }),
37
+ };
38
+ }
39
+ function readEntries(list, by, ctx) {
40
+ const entries = [];
41
+ for (let i = 0; i < list.peg.length; i++) {
42
+ const el = list.peg[i];
43
+ const before = ctx.err.length;
44
+ const text = true === el.isString ? el.peg : el.gen(ctx);
45
+ if (before < ctx.err.length) {
46
+ const err = ctx.err[before];
47
+ return { entries, finding: finding(err.why, `${by}.${i}`, err.msg) };
48
+ }
49
+ entries.push({ parts: (0, query_1.pathParts)(text), text, by: `${by}.${i}` });
50
+ }
51
+ return { entries };
52
+ }
53
+ // One segment of an entry against one segment of a path: `*` matches
54
+ // any key, anything else matches itself.
55
+ function segmentMatches(pattern, segment) {
56
+ return '*' === pattern || pattern === segment;
57
+ }
58
+ function intersects(entry, path) {
59
+ const n = Math.min(entry.length, path.length);
60
+ for (let i = 0; i < n; i++) {
61
+ if (!segmentMatches(entry[i], path[i])) {
62
+ return false;
63
+ }
64
+ }
65
+ return true;
66
+ }
67
+ function covers(entry, path) {
68
+ return entry.length <= path.length && intersects(entry, path);
69
+ }
70
+ function decide(asked, allows, denies) {
71
+ const parts = (0, query_1.pathParts)(asked);
72
+ const path = pathText(parts);
73
+ for (const d of denies) {
74
+ if (intersects(d.parts, parts)) {
75
+ return { path, allowed: false, reason: 'deny', by: d.by, pattern: d.text };
76
+ }
77
+ }
78
+ for (const a of allows) {
79
+ if (covers(a.parts, parts)) {
80
+ return { path, allowed: true, reason: 'allow', by: a.by, pattern: a.text };
81
+ }
82
+ }
83
+ return { path, allowed: false, reason: 'uncovered' };
84
+ }
85
+ function errorReport(role, f) {
86
+ return { verdict: 'error', role, paths: [], findings: [f] };
87
+ }
88
+ // Evaluate the role model, select the role, and decide every path.
89
+ function allow(src, role, paths, opts) {
90
+ const options = opts ?? {};
91
+ const at = pathText((0, query_1.pathParts)(options.at ?? exports.ALLOW_AT));
92
+ const aontu = new aontu_1.Aontu((0, utility_1.includeOpts)(options));
93
+ const ctx = aontu.ctx({ collect: true });
94
+ const parseOpts = null == options.path ? undefined : { path: options.path };
95
+ const shape = aontu.parse(shapeSource(at), undefined, ctx);
96
+ const model = aontu.parse(src, parseOpts, ctx);
97
+ if (0 < ctx.err.length) {
98
+ return errorReport(role, (0, query_1.evalFailure)(ctx));
99
+ }
100
+ const root = aontu.unify(new ConjunctVal_1.ConjunctVal({ peg: [model, shape] }, ctx), undefined, ctx);
101
+ if (0 < ctx.err.length || true === root.isNil) {
102
+ return errorReport(role, (0, query_1.evalFailure)(ctx));
103
+ }
104
+ const roles = (0, vet_1.anchorAt)(root, at);
105
+ const atRole = `${at}.${role}`;
106
+ if (!Object.prototype.hasOwnProperty.call(roles.peg, role)) {
107
+ const near = (0, query_1.nearestKey)(role, Object.keys(roles.peg));
108
+ return {
109
+ verdict: 'refused',
110
+ role,
111
+ paths: paths.map((p) => ({
112
+ path: pathText((0, query_1.pathParts)(p)), allowed: false, reason: 'no_role',
113
+ })),
114
+ findings: [finding('no_path', atRole, `The role ${role} is not declared at ${at} in this document.`, null == near ? undefined : `did you mean ${near}?`)],
115
+ };
116
+ }
117
+ const node = roles.peg[role];
118
+ const allows = readEntries(node.peg.allow, `${atRole}.allow`, ctx);
119
+ if (null != allows.finding) {
120
+ return errorReport(role, allows.finding);
121
+ }
122
+ const denies = readEntries(node.peg.deny, `${atRole}.deny`, ctx);
123
+ if (null != denies.finding) {
124
+ return errorReport(role, denies.finding);
125
+ }
126
+ const decisions = paths.map((p) => decide(p, allows.entries, denies.entries));
127
+ // Nothing asked is nothing allowed: a gate that answered `allowed`
128
+ // to an empty question would let a caller that dropped its
129
+ // arguments through.
130
+ const allowed = 0 < decisions.length && decisions.every((d) => d.allowed);
131
+ return {
132
+ verdict: allowed ? 'allowed' : 'refused',
133
+ role,
134
+ paths: decisions,
135
+ findings: [],
136
+ };
137
+ }
138
+ //# sourceMappingURL=allow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allow.js","sourceRoot":"","sources":["../src/allow.ts"],"names":[],"mappings":"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"}
package/dist/aontu.d.ts CHANGED
@@ -14,6 +14,8 @@ import { get, why } from './query';
14
14
  import { patch } from './patch';
15
15
  import { diff } from './diff';
16
16
  import { agentsMd } from './agentsmd';
17
+ import { allow } from './allow';
18
+ export type { AllowDecision, AllowOptions, AllowReason, AllowReport, AllowVerdict, } from './allow';
17
19
  import { graphOf } from './graph';
18
20
  import { relationCheck } from './relation';
19
21
  import { view, viewSet, viewTree } from './view';
@@ -21,7 +23,7 @@ import { render, renderValue, renderProfile } from './render';
21
23
  import { desugarTemplate, resugarTemplate, markerFor } from './template';
22
24
  import { format, unifiedDiff } from './format';
23
25
  export type { LintFinding, FormatReport, FormatOptions } from './format';
24
- declare const VERSION = "0.61.0";
26
+ declare const VERSION = "0.63.0";
25
27
  declare class Aontu {
26
28
  opts: AontuOptions;
27
29
  lang: Lang;
@@ -35,5 +37,5 @@ declare function runparse(src: string, lang: Lang, ctx: AontuContext): Val;
35
37
  declare const util: {
36
38
  runparse: typeof runparse;
37
39
  };
38
- export { VERSION, Aontu, AontuOptions, AontuContext, AontuError, setColor, colorActive, Val, Lang, runparse, util, formatExplain, exactJSON, Decimal, vet, sarifReport, subsume, trimCheck, hcanon, canonHash, get, why, patch, diff, agentsMd, graphOf, relationCheck, view, viewSet, viewTree, render, renderValue, renderProfile, desugarTemplate, resugarTemplate, markerFor, format, unifiedDiff, };
40
+ export { VERSION, Aontu, AontuOptions, AontuContext, AontuError, setColor, colorActive, Val, Lang, runparse, util, formatExplain, exactJSON, Decimal, vet, sarifReport, subsume, trimCheck, hcanon, canonHash, get, why, patch, diff, agentsMd, allow, graphOf, relationCheck, view, viewSet, viewTree, render, renderValue, renderProfile, desugarTemplate, resugarTemplate, markerFor, format, unifiedDiff, };
39
41
  export default Aontu;
package/dist/aontu.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /* Copyright (c) 2021-2025 Richard Rodger, MIT License */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.unifiedDiff = exports.format = exports.markerFor = exports.resugarTemplate = exports.desugarTemplate = exports.renderProfile = exports.renderValue = exports.render = exports.viewTree = exports.viewSet = exports.view = exports.relationCheck = exports.graphOf = exports.agentsMd = exports.diff = exports.patch = exports.why = exports.get = exports.canonHash = exports.hcanon = exports.trimCheck = exports.subsume = exports.sarifReport = exports.vet = exports.Decimal = exports.exactJSON = exports.formatExplain = exports.util = exports.Lang = exports.colorActive = exports.setColor = exports.AontuError = exports.AontuContext = exports.Aontu = exports.VERSION = void 0;
4
+ exports.unifiedDiff = exports.format = exports.markerFor = exports.resugarTemplate = exports.desugarTemplate = exports.renderProfile = exports.renderValue = exports.render = exports.viewTree = exports.viewSet = exports.view = exports.relationCheck = exports.graphOf = exports.allow = exports.agentsMd = exports.diff = exports.patch = exports.why = exports.get = exports.canonHash = exports.hcanon = exports.trimCheck = exports.subsume = exports.sarifReport = exports.vet = exports.Decimal = exports.exactJSON = exports.formatExplain = exports.util = exports.Lang = exports.colorActive = exports.setColor = exports.AontuError = exports.AontuContext = exports.Aontu = exports.VERSION = void 0;
5
5
  exports.runparse = runparse;
6
6
  const lang_1 = require("./lang");
7
7
  Object.defineProperty(exports, "Lang", { enumerable: true, get: function () { return lang_1.Lang; } });
@@ -39,6 +39,8 @@ const diff_1 = require("./diff");
39
39
  Object.defineProperty(exports, "diff", { enumerable: true, get: function () { return diff_1.diff; } });
40
40
  const agentsmd_1 = require("./agentsmd");
41
41
  Object.defineProperty(exports, "agentsMd", { enumerable: true, get: function () { return agentsmd_1.agentsMd; } });
42
+ const allow_1 = require("./allow");
43
+ Object.defineProperty(exports, "allow", { enumerable: true, get: function () { return allow_1.allow; } });
42
44
  const graph_1 = require("./graph");
43
45
  Object.defineProperty(exports, "graphOf", { enumerable: true, get: function () { return graph_1.graphOf; } });
44
46
  const relation_1 = require("./relation");
@@ -58,21 +60,8 @@ Object.defineProperty(exports, "markerFor", { enumerable: true, get: function ()
58
60
  const format_1 = require("./format");
59
61
  Object.defineProperty(exports, "format", { enumerable: true, get: function () { return format_1.format; } });
60
62
  Object.defineProperty(exports, "unifiedDiff", { enumerable: true, get: function () { return format_1.unifiedDiff; } });
61
- // VERSION is the Aontu npm package version, and mirrors
62
- // go/aontu.go's `Version` (which tracks the Go module version
63
- // separately — the two version series are independent).
64
- //
65
- // Kept in step with package.json by the `version` npm lifecycle script,
66
- // which runs on `npm version` / `npm run repo-bump`. version.test.ts
67
- // fails if the two ever drift.
68
- const VERSION = '0.61.0';
63
+ const VERSION = '0.63.0';
69
64
  exports.VERSION = VERSION;
70
- // A module file's VALUE, as far as it goes. COLLECTED, not raised: a
71
- // module file that does not stand up has no `mod.main` to read, and
72
- // the default entry name is the answer -- the resolution itself fails
73
- // later, on the file that is not there, rather than here on a metadata
74
- // read. That is what a collecting context does, so there is nothing to
75
- // catch: it answers what it could generate and records the rest.
76
65
  function genQuiet(val, aontu) {
77
66
  return val.gen(aontu.ctx({ collect: true }));
78
67
  }
@@ -82,9 +71,6 @@ class Aontu {
82
71
  this.opts.mod = {
83
72
  ...(this.opts.mod ?? {}),
84
73
  eval: this.opts.mod?.eval ?? ((src, path) => {
85
- // One deeper: a module verified from inside a module
86
- // verification is one more level of nesting, and the resolver
87
- // refuses past its bound (MODULE_MAX_DEPTH in ts/src/mod.ts).
88
74
  const inner = new Aontu({
89
75
  ...this.opts,
90
76
  mod: {
@@ -115,12 +101,6 @@ class Aontu {
115
101
  const ac = new ctx_1.AontuContext(cfg);
116
102
  return ac;
117
103
  }
118
- // Parse source into a matching Val AST, not yet unified.
119
- //
120
- // NOTE: the returned Val is SINGLE-USE — unify()/generate() refine the
121
- // tree in place (see Val.unify), so do not unify or generate the same
122
- // parsed Val more than once, and do not share it across threads. Call
123
- // parse() again for a fresh tree.
124
104
  parse(src, opts, ac) {
125
105
  let out;
126
106
  let errs = [];
@@ -134,12 +114,6 @@ class Aontu {
134
114
  errs.push(out);
135
115
  }
136
116
  else {
137
- // A version-control conflict marker is refused BEFORE the parse
138
- // (issue #5). None of `<`, `=` or `>` is an aontu operator, so a
139
- // marker line is ordinary text and `<<<<<<< HEAD` parsed happily
140
- // into the two-string list ["<<<<<<<","HEAD"] -- an unresolved
141
- // merge became a plausible document instead of an error, and the
142
- // report of it read as a failed `<` operation.
143
117
  const marker = findConflictMarker(src);
144
118
  if (-1 !== marker.offset) {
145
119
  const nil = (0, err_1.makeNilErr)(ac, 'merge_conflict');
@@ -151,10 +125,6 @@ class Aontu {
151
125
  }
152
126
  if (0 === errs.length) {
153
127
  out = runparse(src, this.lang, ac);
154
- // The include MANIFEST (G5, docs/trust.md): the resolved include
155
- // closure as `{ path, capability }`, sorted and deduplicated so
156
- // it is deterministic — the "file set" of hermeticity clause 1
157
- // made observable. Content hashing and pinning stay with G6.
158
128
  out.deps = manifestOf(ac.manifest);
159
129
  ac.root = out;
160
130
  }
@@ -189,10 +159,6 @@ class Aontu {
189
159
  // 'internal' NilVal.
190
160
  out = uni.res;
191
161
  out.deps = pval.deps;
192
- // THE DERIVED STRUCTURE (G4 phase 3): the edge set, computed
193
- // once from the unified tree. Cheap on a document with no links
194
- // — one guarded walk — and the thing impact analysis and the
195
- // relation checks are traversals over.
196
162
  out.graph = (0, graph_1.graphOf)(out);
197
163
  out.err = errs;
198
164
  ac.root = out;
@@ -200,19 +166,6 @@ class Aontu {
200
166
  handleErrors(errs, out, ac);
201
167
  return out;
202
168
  }
203
- // Generate output structure from source, which must parse and fully unify.
204
- //
205
- // The result is made of NATIVE values, and D9 puts two beyond what
206
- // `JSON.stringify` can write: a `biginteger` (a `0d` literal with no
207
- // fraction or exponent) generates as a native `bigint`, and a
208
- // `bigdecimal` generates as a `Decimal`. Both are exact at any
209
- // magnitude, which is the whole point of the leaves -- and both are
210
- // confined to documents that opt in, so a `0d`-free document generates
211
- // exactly what it always did.
212
- //
213
- // Serialise the result with `exactJSON` (exported alongside this
214
- // class), NOT with `JSON.stringify`: the latter throws on a bigint and
215
- // has no way to write exact digits as a JSON number.
216
169
  generate(src, opts, ac) {
217
170
  try {
218
171
  let out = undefined;
@@ -221,28 +174,10 @@ class Aontu {
221
174
  let pval = this.parse(src, undefined, ac);
222
175
  if (undefined !== pval && 0 === pval.err.length) {
223
176
  let uval = this.unify(pval, undefined, ac);
224
- // console.log('AONTU-GENERATE-UVAL', uval.constructor, uval.mark)
225
177
  if (undefined !== uval && 0 === uval.err.length) {
226
178
  out = uval.isNil ? (ac.adderr(uval), undefined)
227
179
  : 0 < ac.err.length ? undefined
228
180
  : uval.gen(ac);
229
- // The relation verdict (RELATIONS P2): declarations the
230
- // graph atoms registered during unification are decided
231
- // HERE, where no more information can arrive -- the sizing
232
- // atoms' model. A violated declaration is a located
233
- // evaluation error at the offending edge, and the generated
234
- // value is discarded below.
235
- //
236
- // AFTER GENERATION, and only when generation SUCCEEDED. A
237
- // document that cannot be generated has no finished model
238
- // to have a graph verdict about: an unsettled disjunction
239
- // leaves alternatives the graph walk cannot read, so a
240
- // mirror the document writes is absent from the edge set
241
- // and `inverse(n)` reports it missing -- a false finding,
242
- // and one that buried the `disjunct_no_gen` that actually
243
- // stopped the document. The check that a broken document is
244
- // not blamed on its relations (`relations` verb, finding F)
245
- // holds here too.
246
181
  if (!uval.isNil && 0 === ac.err.length) {
247
182
  (0, relation_1.relationErrors)(ac, uval);
248
183
  if (0 < ac.err.length) {
@@ -295,17 +230,6 @@ function handleErrors(errs, out, ac) {
295
230
  }
296
231
  }
297
232
  }
298
- // Locate the first version-control conflict marker in a source, as a
299
- // 1-based row and column (offset -1 when there is none).
300
- //
301
- // The shape is git's, and it is matched exactly: SEVEN of `<`, `=` or `>`
302
- // at the very start of a line, then either the end of that line or a
303
- // space before the branch label. Requiring the run length and the line
304
- // start is what keeps a document that legitimately writes `a:"<<<<<<<"`,
305
- // or a row of `=` inside a string, from being refused -- the marker is
306
- // recognised as the artifact it is, not as a suspicious character.
307
- //
308
- // Kept byte-identical to findConflictMarker in go/lang.go.
309
233
  function findConflictMarker(src) {
310
234
  const miss = { offset: -1, row: -1, col: -1 };
311
235
  let offset = 0;
package/dist/aontu.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"aontu.js","sourceRoot":"","sources":["../src/aontu.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aontu.js","sourceRoot":"","sources":["../src/aontu.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ declare const AONTU_SCHEME = "aontu:";
2
+ declare const AONTU_SOURCES: Record<string, string>;
3
+ declare const AONTU_MODELS: string[];
4
+ export { AONTU_SCHEME, AONTU_SOURCES, AONTU_MODELS };
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ /* Copyright (c) 2025 Richard Rodger, MIT License */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.AONTU_MODELS = exports.AONTU_SOURCES = exports.AONTU_SCHEME = void 0;
5
+ // GENERATED by ts/scripts/aontu.cjs (`make aontu`) from aontu/ —
6
+ // DO NOT EDIT. The tree is the source;
7
+ // ts/test/aontumodel.test.ts asserts this copy is identical with
8
+ // it.
9
+ const AONTU_SCHEME = 'aontu:';
10
+ exports.AONTU_SCHEME = AONTU_SCHEME;
11
+ const AONTU_SOURCES = {
12
+ "aontu:code": "# aontu:code --- THE OUTPUT VOCABULARY. A transform evaluates to an\n# instance of this schema and 'aontu render' turns it into bytes. The\n# root is not type()-marked because render reads the instance through\n# generate(). EXPERIMENTAL until the distribution layer can version it\n# by canon-hash.\n\n%name = string & re(\"^[A-Za-z_][A-Za-z0-9_]*$\") & length(min(1) & max(255))\n\n%text = close({ k:\"text\" lang:string & length(min(1)) text:string })\n\n%doc = close({\n text: string\n deprecated?: close({ msg?:string use?:string since?:string })\n})\n\n%check = close({ c:\"min\" n:number exclusive: *false|boolean })\n | close({ c:\"max\" n:number exclusive: *false|boolean })\n | close({ c:\"re\" p:string })\n | close({ c:\"len\" min?:integer & min(0) max?:integer & min(0) })\n | close({ c:\"unique\" key?:%name })\n | close({ c:\"ne\" n: [&: string|number|boolean] })\n | close({ c:\"must\" note:string })\n\n%prim = close({\n k: \"prim\"\n prim: \"string\"|\"int\"|\"bigint\"|\"float\"|\"decimal\"|\"bool\"|\"null\"|\"any\"\n})\n\n%ref = close({ k:\"ref\" name:%name unit?:string })\n%leaf = %prim|%ref|%text\n\n%type = %leaf\n | close({ k:\"list\" n:%leaf })\n | close({ k:\"map\" key:%leaf n:%leaf })\n | close({ k:\"opt\" n:%leaf })\n | close({ k:\"union\" n: [&: %leaf] })\n | close({ k:\"lit\" n: [&: string|number|boolean|null] })\n\n%field = close({\n name: %name\n type: %type\n optional: *false|boolean\n doc?: %doc\n default?: string|number|boolean|null\n check?: [&: %check]\n rel?: close({ to:string name?:string })\n x?: {}\n})\n\n%member = close({ name:%name value?:string|number doc?:%doc x?: {} })\n\n%param = close({\n name: %name\n type: %type\n default?: string|number|boolean|null\n x?: {}\n})\n\n# THE FRAGMENT ALGEBRA. A line's inline pieces hold no terminator; a\n# blank is its terminators alone; a raw is the one piece that may carry\n# terminators, re-indented to its depth unless it says not to.\n%inline = string & re(\"^[^\\n\\r]*$\")|%ref\n%line = close({ k:\"line\" at: *0|integer & min(0) & max(64) n: [&: %inline] })\n%blank = close({ k:\"blank\" n: *1|integer & min(1) & max(16) })\n\n%raw = close({\n k: \"raw\"\n at: *0|integer & min(0) & max(64)\n text: string\n reindent: *true|boolean\n})\n\n%piece = %line|%blank|%raw|string & re(\"^[^\\n\\r]*$\")\n%frag = close({ k:\"frag\" n: [&: %piece] })\n%body = %frag|close({ k:\"abstract\" })\n\n%record = close({\n k: \"record\"\n name: %name\n doc?: %doc\n open: *false|boolean\n fields: [&: %field]\n entity?: string\n check?: [&: %check]\n x?: {}\n})\n\n%enum = close({ k:\"enum\" name:%name doc?:%doc members: [&: %member] x?: {} })\n\n%alias = close({\n k: \"alias\"\n name: %name\n doc?: %doc\n type: %type\n check?: [&: %check]\n x?: {}\n})\n\n%const = close({\n k: \"const\"\n name: %name\n doc?: %doc\n type?: %type\n value: string|number|boolean|null\n x?: {}\n})\n\n%func = close({\n k: \"func\"\n name: %name\n doc?: %doc\n params: [&: %param]\n returns?: %type\n body: %body\n x?: {}\n})\n\n%decl = %record|%enum|%alias|%const|%func|%text|%frag\n\n%import = close({\n from: string & length(min(1))\n names?: [&: %name]\n alias?: %name\n x?: {}\n})\n\n%unit = close({\n path: string & length(min(1))\n lang: string & length(min(1))\n pkg?: string\n doc?: %doc\n imports?: [&: %import]\n decls: [&: %decl]\n profile?: {}\n x?: {}\n})\n\n%source = close({ path?:string hash?:string & re(\"^aon1-[A-Za-z0-9_-]+$\") })\n\naontu: Code: close({ source?:%source units: [&: %unit] })\n",
13
+ "aontu:render": "# aontu:render --- THE RENDER VOCABULARY. A profile is the data\n# 'aontu render' applies to a unit of one language, and only data: a\n# field belongs here if the renderer applies it without looking at the\n# shape of any node. The root is not type()-marked because a profile is\n# read through generate(). EXPERIMENTAL, versioned by canon-hash later.\n\n%name = string & re(\"^[A-Za-z_][A-Za-z0-9_]*$\")\n\n%case = \"as-is\"|\"camel\"|\"pascal\"|\"snake\"|\"screaming\"|\"kebab\"\n\n%comment = close({ open?:string prefix?:string close?:string })\n\n%form = close({\n open: *\"\"|string\n close: *\"\"|string\n prec: *9|integer & min(0) & max(9)\n childPrec: *0|integer & min(0) & max(9)\n})\n\n%profile = close({\n lang: string & length(min(1))\n lowering?: \"typescript\"|\"go\"\n indent: close({\n unit: *\" \"|string & length(min(1))\n width: *2|integer & min(0) & max(16)\n })\n comment?: close({ line?:%comment block?:%comment doc?:%comment })\n str?: close({\n quote: *\"\\\"\"|string & length(min(1) & max(1))\n escape: { &: string }\n })\n ident?: close({\n chars: *\"ascii-word\"|\"ascii-word\"\n reserved?: [&: string]\n case?: close({\n record?: %case\n field?: %case\n enum?: %case\n member?: %case\n const?: %case\n func?: %case\n param?: %case\n alias?: %case\n })\n acronyms?: [&: %name]\n })\n types?: close({\n prim?: { &: string }\n list?: %form\n map?: %form\n opt?: %form\n union?: %form\n lit?: %form\n })\n template?: close({\n marker: string & length(min(1))\n close?: string & length(min(1))\n ext?: [&: string & re(\"^[A-Za-z0-9_+-]+$\")]\n })\n banner?: string\n})\n\n# Profile names the schema; Lang is where one lands. type() so naming\n# the schema neither generates it nor asks a document to fill it.\naontu: render: { Profile:type(%profile) Lang:%profile }\n",
14
+ "aontu:render/lang/go": "# aontu:render/lang/go --- THE GO PROFILE. Indentation, comment forms, string\n# escapes, identifier case and type forms. Lowering a declaration to a\n# struct is code; what the renderer applies without looking at a node's\n# shape is here. EXPERIMENTAL until the distribution layer can version\n# it by canon-hash.\n\n@\"aontu:render\"\n\naontu: render: Lang: {\n lang: \"go\"\n lowering: \"go\"\n indent: { unit:\"\\t\" width:1 }\n comment: line: prefix: \"// \"\n comment: block: { open:\"/*\" close:\"*/\" }\n comment: doc: prefix: \"// \"\n str: quote: \"\\\"\"\n str: escape: {\n \"7\": \"\\\\a\"\n \"8\": \"\\\\b\"\n \"9\": \"\\\\t\"\n \"10\": \"\\\\n\"\n \"11\": \"\\\\v\"\n \"12\": \"\\\\f\"\n \"13\": \"\\\\r\"\n \"34\": \"\\\\\\\"\"\n \"92\": \"\\\\\\\\\"\n }\n ident: {\n chars: \"ascii-word\"\n reserved: [\n \"break\"\n \"case\"\n \"chan\"\n \"const\"\n \"continue\"\n \"default\"\n \"defer\"\n \"else\"\n \"fallthrough\"\n \"for\"\n \"func\"\n \"go\"\n \"goto\"\n \"if\"\n \"import\"\n \"interface\"\n \"map\"\n \"package\"\n \"range\"\n \"return\"\n \"select\"\n \"struct\"\n \"switch\"\n \"type\"\n \"var\"\n ]\n case: record: \"pascal\"\n case: field: \"pascal\"\n case: enum: \"pascal\"\n case: member: \"pascal\"\n case: const: \"pascal\"\n case: func: \"pascal\"\n case: param: \"camel\"\n case: alias: \"pascal\"\n acronyms: [\n \"ACL\"\n \"API\"\n \"ASCII\"\n \"CPU\"\n \"CSS\"\n \"DNS\"\n \"EOF\"\n \"GUID\"\n \"HTML\"\n \"HTTP\"\n \"HTTPS\"\n \"ID\"\n \"IP\"\n \"JSON\"\n \"LHS\"\n \"QPS\"\n \"RAM\"\n \"RHS\"\n \"RPC\"\n \"SLA\"\n \"SMTP\"\n \"SQL\"\n \"SSH\"\n \"TCP\"\n \"TLS\"\n \"TTL\"\n \"UDP\"\n \"UI\"\n \"UID\"\n \"UUID\"\n \"URI\"\n \"URL\"\n \"UTF8\"\n \"VM\"\n \"XML\"\n \"XMPP\"\n \"XSRF\"\n \"XSS\"\n ]\n }\n types: prim: {\n string: \"string\"\n int: \"int64\"\n bigint: \"string\"\n float: \"float64\"\n decimal: \"string\"\n bool: \"bool\"\n null: \"any\"\n any: \"any\"\n }\n types: list: open: \"[]\"\n types: map: open: \"map[\"\n types: opt: open: \"*\"\n banner: \"Code generated by aontu from {path}. DO NOT EDIT.\"\n}\n",
15
+ "aontu:render/lang/markdown": "# aontu:render/lang/markdown --- THE MARKDOWN PROFILE. No declarations to\n# lower, so this is the text profile plus markdown's own two: the HTML\n# comment form and the template marker its files carry. EXPERIMENTAL\n# until the distribution layer can version it by canon-hash.\n\n@\"aontu:render\"\n\naontu: render: Lang: lang: \"markdown\"\naontu: render: Lang: indent: { unit:\" \" width:2 }\naontu: render: Lang: comment: block: { open:\"<!--\" close:\"-->\" }\naontu: render: Lang: template: { marker:\"<!---\" ext: [\"md\" \"markdown\"] }\n",
16
+ "aontu:render/lang/text": "# aontu:render/lang/text --- THE TEXT PROFILE. Indentation and nothing else:\n# a fold over fragments applies nothing else. Every language without a\n# lowering renders under it. EXPERIMENTAL until the distribution layer\n# can version it by canon-hash.\n\n@\"aontu:render\"\n\naontu: render: Lang: { lang:\"text\" indent: { unit:\" \" width:2 } }\n",
17
+ "aontu:render/lang/typescript": "# aontu:render/lang/typescript --- THE TYPESCRIPT PROFILE. Indentation,\n# comment forms, string escapes, identifier case and type forms.\n# Lowering a declaration to an interface is code; what the renderer\n# applies without looking at a node's shape is here. EXPERIMENTAL until\n# the distribution layer can version it by canon-hash.\n\n@\"aontu:render\"\n\naontu: render: Lang: {\n lang: \"typescript\"\n lowering: \"typescript\"\n indent: { unit:\" \" width:2 }\n comment: line: prefix: \"// \"\n comment: block: { open:\"/*\" prefix:\" * \" close:\" */\" }\n comment: doc: { open:\"/**\" prefix:\" * \" close:\" */\" }\n str: quote: \"\\\"\"\n str: escape: {\n \"8\": \"\\\\b\"\n \"9\": \"\\\\t\"\n \"10\": \"\\\\n\"\n \"12\": \"\\\\f\"\n \"13\": \"\\\\r\"\n \"34\": \"\\\\\\\"\"\n \"92\": \"\\\\\\\\\"\n }\n ident: {\n chars: \"ascii-word\"\n reserved: [\n \"await\"\n \"break\"\n \"case\"\n \"catch\"\n \"class\"\n \"const\"\n \"continue\"\n \"debugger\"\n \"default\"\n \"delete\"\n \"do\"\n \"else\"\n \"enum\"\n \"export\"\n \"extends\"\n \"false\"\n \"finally\"\n \"for\"\n \"function\"\n \"if\"\n \"implements\"\n \"import\"\n \"in\"\n \"instanceof\"\n \"interface\"\n \"let\"\n \"new\"\n \"null\"\n \"package\"\n \"private\"\n \"protected\"\n \"public\"\n \"return\"\n \"static\"\n \"super\"\n \"switch\"\n \"this\"\n \"throw\"\n \"true\"\n \"try\"\n \"typeof\"\n \"var\"\n \"void\"\n \"while\"\n \"with\"\n \"yield\"\n ]\n case: record: \"pascal\"\n case: field: \"camel\"\n case: enum: \"pascal\"\n case: member: \"pascal\"\n case: const: \"camel\"\n case: func: \"camel\"\n case: param: \"camel\"\n case: alias: \"pascal\"\n acronyms: []\n }\n types: prim: {\n string: \"string\"\n int: \"number\"\n bigint: \"bigint\"\n float: \"number\"\n decimal: \"string\"\n bool: \"boolean\"\n null: \"null\"\n any: \"unknown\"\n }\n types: list: { close:\"[]\" childPrec:2 }\n types: map: { open:\"Record<\" close:\">\" }\n types: opt: { close:\" | null\" prec:1 childPrec:2 }\n types: union: { prec:1 childPrec:2 }\n types: lit: prec: 1\n banner: \"Code generated by aontu from {path}. DO NOT EDIT.\"\n}\n",
18
+ "aontu:system": "# aontu:system --- the SYSTEM VOCABULARY. EXPERIMENTAL until the\n# distribution layer can version it by canon-hash.\n\naontu: System: {\n Port: type({ direction: *in|out|inout protocol?:string })\n\n Component: type({ ports?: { &: $.aontu.System.Port } })\n\n # Written out rather than Component & { kind: service }: a reference\n # to a type()-marked member does not survive the include.\n Service: type({ kind:service ports?: { &: $.aontu.System.Port } })\n\n # A grammar, not re(): the identifier shape is a quantified group\n # holding a quantifier, which re() refuses. hide()n so a schema's\n # grammar does not generate into the document it checks.\n semverPreRelease: hide(\n abnf(\n `pre-release = pre-release-id *( \".\" pre-release-id )\npre-release-id = \"0\" [ *digit alnum-tail ]\n / positive-digit *digit [ alnum-tail ] / alnum-tail\nalnum-tail = non-digit *id-char\nid-char = digit / non-digit\nnon-digit = letter / \"-\"\ndigit = \"0\" / positive-digit\npositive-digit = %x31-39\nletter = %x41-5A / %x61-7A\n`\n )\n )\n semverBuild: hide(\n abnf(\n `build = build-id *( \".\" build-id )\nbuild-id = 1*id-char\nid-char = digit / non-digit\nnon-digit = letter / \"-\"\ndigit = \"0\" / positive-digit\npositive-digit = %x31-39\nletter = %x41-5A / %x61-7A\n`\n )\n )\n\n # major minor patch pre-release build, tail defaulted.\n Semver: type(\n [\n integer & min(0)\n *0|(integer & min(0))\n *0|(integer & min(0))\n *\"\"|parse($.aontu.System.semverPreRelease)\n *\"\"|parse($.aontu.System.semverBuild)\n ] & length(5)\n )\n}\n",
19
+ "aontu:view": "# aontu:view --- the FIGURE VOCABULARY. EXPERIMENTAL until the\n# distribution layer can version it by canon-hash.\n\naontu: View: Figure: type({\n kind: doc|lattice|tree|matrix|graph|layer|sets|layers\n | ladder\n out: string\n\n # Every kind.\n as?: text|mermaid|dot|er|svg\n at?: string\n maxRows?: integer & min(0)\n\n # doc.\n depth?: integer & min(0)\n\n # tree, matrix, layer, graph.\n relation?: string\n relations?: [&: string]\n roots?: [&: string]\n\n # matrix.\n order?: canon|partition\n closure?: boolean\n\n # graph, layer.\n groupBy?: string\n label?: string\n layers?: [&: string]\n edges?: upward|all|none\n\n # sets, layers.\n sets?: string\n member?: string\n universe?: string\n minDegree?: integer & min(0)\n maxCols?: integer & min(0)\n minSize?: integer & min(0)\n})\n"
20
+ };
21
+ exports.AONTU_SOURCES = AONTU_SOURCES;
22
+ const AONTU_MODELS = [
23
+ "aontu:code",
24
+ "aontu:render",
25
+ "aontu:render/lang/go",
26
+ "aontu:render/lang/markdown",
27
+ "aontu:render/lang/text",
28
+ "aontu:render/lang/typescript",
29
+ "aontu:system",
30
+ "aontu:view"
31
+ ];
32
+ exports.AONTU_MODELS = AONTU_MODELS;
33
+ //# sourceMappingURL=aontumodel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aontumodel.js","sourceRoot":"","sources":["../src/aontumodel.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,iEAAiE;AACjE,uCAAuC;AACvC,iEAAiE;AACjE,MAAM;AAEN,MAAM,YAAY,GAAG,QAAQ,CAAA;QAwBpB,YAAY;AAtBrB,MAAM,aAAa,GAA2B;IAC5C,YAAY,EAAE,o+GAAo+G;IACl/G,cAAc,EAAE,i3DAAi3D;IACj4D,sBAAsB,EAAE,47EAA47E;IACp9E,4BAA4B,EAAE,oiBAAoiB;IAClkB,wBAAwB,EAAE,+VAA+V;IACzX,8BAA8B,EAAE,44EAA44E;IAC56E,cAAc,EAAE,0kDAA0kD;IAC1lD,YAAY,EAAE,wzBAAwzB;CACv0B,CAAA;QAasB,aAAa;AAXpC,MAAM,YAAY,GAAa;IAC7B,YAAY;IACZ,cAAc;IACd,sBAAsB;IACtB,4BAA4B;IAC5B,wBAAwB;IACxB,8BAA8B;IAC9B,cAAc;IACd,YAAY;CACb,CAAA;QAEqC,YAAY"}