aontu 0.62.0 → 0.64.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 (373) hide show
  1. package/README.md +7 -7
  2. package/dist/agentsmd.js +0 -27
  3. package/dist/agentsmd.js.map +1 -1
  4. package/dist/alias.js.map +1 -1
  5. package/dist/allow.js +0 -92
  6. package/dist/allow.js.map +1 -1
  7. package/dist/aontu.d.ts +3 -3
  8. package/dist/aontu.js +4 -84
  9. package/dist/aontu.js.map +1 -1
  10. package/dist/aontumodel.d.ts +4 -0
  11. package/dist/aontumodel.js +27 -0
  12. package/dist/aontumodel.js.map +1 -0
  13. package/dist/casing.d.ts +5 -0
  14. package/dist/casing.js +90 -0
  15. package/dist/casing.js.map +1 -0
  16. package/dist/cli.d.ts +2 -2
  17. package/dist/cli.js +228 -935
  18. package/dist/cli.js.map +1 -1
  19. package/dist/ctx.js +0 -48
  20. package/dist/ctx.js.map +1 -1
  21. package/dist/diff.js +0 -32
  22. package/dist/diff.js.map +1 -1
  23. package/dist/err.js +0 -40
  24. package/dist/err.js.map +1 -1
  25. package/dist/escape.js +0 -45
  26. package/dist/escape.js.map +1 -1
  27. package/dist/exactjson.d.ts +0 -35
  28. package/dist/exactjson.js +0 -131
  29. package/dist/exactjson.js.map +1 -1
  30. package/dist/format.js +13 -203
  31. package/dist/format.js.map +1 -1
  32. package/dist/grammar.d.ts +9 -0
  33. package/dist/grammar.js +54 -0
  34. package/dist/grammar.js.map +1 -0
  35. package/dist/graph.js +0 -26
  36. package/dist/graph.js.map +1 -1
  37. package/dist/hcanon.js +0 -82
  38. package/dist/hcanon.js.map +1 -1
  39. package/dist/helpdoc.js +2 -2
  40. package/dist/helpdoc.js.map +1 -1
  41. package/dist/hints.d.ts +0 -6
  42. package/dist/hints.js +57 -55
  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 +17 -915
  50. package/dist/lang.js.map +1 -1
  51. package/dist/lsp-server.js +0 -16
  52. package/dist/lsp-server.js.map +1 -1
  53. package/dist/lsp.d.ts +1 -1
  54. package/dist/lsp.js +12 -159
  55. package/dist/lsp.js.map +1 -1
  56. package/dist/mcp-server.js +0 -26
  57. package/dist/mcp-server.js.map +1 -1
  58. package/dist/mcp.js +0 -149
  59. package/dist/mcp.js.map +1 -1
  60. package/dist/mod-tool.js +16 -131
  61. package/dist/mod-tool.js.map +1 -1
  62. package/dist/mod.js +0 -162
  63. package/dist/mod.js.map +1 -1
  64. package/dist/patch.js +0 -217
  65. package/dist/patch.js.map +1 -1
  66. package/dist/profile.d.ts +9 -0
  67. package/dist/profile.js +28 -0
  68. package/dist/profile.js.map +1 -0
  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.js +0 -61
  76. package/dist/relation.js.map +1 -1
  77. package/dist/report-sarif.d.ts +0 -11
  78. package/dist/report-sarif.js +0 -28
  79. package/dist/report-sarif.js.map +1 -1
  80. package/dist/sig.js +0 -35
  81. package/dist/sig.js.map +1 -1
  82. package/dist/sigdecl.js +1 -1
  83. package/dist/sigdecl.js.map +1 -1
  84. package/dist/siggate.js +0 -4
  85. package/dist/siggate.js.map +1 -1
  86. package/dist/site.js +3 -29
  87. package/dist/site.js.map +1 -1
  88. package/dist/subsume.d.ts +0 -10
  89. package/dist/subsume.js +0 -137
  90. package/dist/subsume.js.map +1 -1
  91. package/dist/template.d.ts +2 -1
  92. package/dist/template.js +58 -138
  93. package/dist/template.js.map +1 -1
  94. package/dist/trace.d.ts +21 -0
  95. package/dist/trace.js +107 -0
  96. package/dist/trace.js.map +1 -0
  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 +13 -248
  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 +2 -0
  125. package/dist/val/CmpFuncVal.js +49 -72
  126. package/dist/val/CmpFuncVal.js.map +1 -1
  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.js +0 -3
  141. package/dist/val/EachFuncVal.js.map +1 -1
  142. package/dist/val/EmitFuncVal.d.ts +1 -1
  143. package/dist/val/EmitFuncVal.js +6 -119
  144. package/dist/val/EmitFuncVal.js.map +1 -1
  145. package/dist/val/ExpectVal.js +0 -62
  146. package/dist/val/ExpectVal.js.map +1 -1
  147. package/dist/val/FilterFuncVal.js +0 -25
  148. package/dist/val/FilterFuncVal.js.map +1 -1
  149. package/dist/val/FuncBaseVal.d.ts +1 -0
  150. package/dist/val/FuncBaseVal.js +7 -127
  151. package/dist/val/FuncBaseVal.js.map +1 -1
  152. package/dist/val/GraphAtomVal.js +0 -15
  153. package/dist/val/GraphAtomVal.js.map +1 -1
  154. package/dist/val/HideFuncVal.js +0 -13
  155. package/dist/val/HideFuncVal.js.map +1 -1
  156. package/dist/val/IntegerVal.js +0 -61
  157. package/dist/val/IntegerVal.js.map +1 -1
  158. package/dist/val/JunctionVal.js +0 -20
  159. package/dist/val/JunctionVal.js.map +1 -1
  160. package/dist/val/KeyFuncVal.js +0 -46
  161. package/dist/val/KeyFuncVal.js.map +1 -1
  162. package/dist/val/ListVal.js +0 -57
  163. package/dist/val/ListVal.js.map +1 -1
  164. package/dist/val/LowerFuncVal.js +0 -11
  165. package/dist/val/LowerFuncVal.js.map +1 -1
  166. package/dist/val/MapVal.js +0 -151
  167. package/dist/val/MapVal.js.map +1 -1
  168. package/dist/val/MatchFuncVal.js +0 -27
  169. package/dist/val/MatchFuncVal.js.map +1 -1
  170. package/dist/val/{FormFuncVal.d.ts → MaybeFuncVal.d.ts} +5 -5
  171. package/dist/val/MaybeFuncVal.js +50 -0
  172. package/dist/val/MaybeFuncVal.js.map +1 -0
  173. package/dist/val/MoveFuncVal.js +0 -18
  174. package/dist/val/MoveFuncVal.js.map +1 -1
  175. package/dist/val/NilVal.js +0 -60
  176. package/dist/val/NilVal.js.map +1 -1
  177. package/dist/val/NomFuncVal.js +18 -54
  178. package/dist/val/NomFuncVal.js.map +1 -1
  179. package/dist/val/NumberVal.js +0 -15
  180. package/dist/val/NumberVal.js.map +1 -1
  181. package/dist/val/OpBaseVal.d.ts +1 -0
  182. package/dist/val/OpBaseVal.js +3 -15
  183. package/dist/val/OpBaseVal.js.map +1 -1
  184. package/dist/val/PackFuncVal.js +0 -34
  185. package/dist/val/PackFuncVal.js.map +1 -1
  186. package/dist/val/PathFuncVal.js +0 -6
  187. package/dist/val/PathFuncVal.js.map +1 -1
  188. package/dist/val/PathVal.js +0 -41
  189. package/dist/val/PathVal.js.map +1 -1
  190. package/dist/val/PlaceVal.js +0 -25
  191. package/dist/val/PlaceVal.js.map +1 -1
  192. package/dist/val/PlusOpVal.d.ts +1 -7
  193. package/dist/val/PlusOpVal.js +13 -74
  194. package/dist/val/PlusOpVal.js.map +1 -1
  195. package/dist/val/PrefFuncVal.js +0 -1
  196. package/dist/val/PrefFuncVal.js.map +1 -1
  197. package/dist/val/PrefVal.js +0 -167
  198. package/dist/val/PrefVal.js.map +1 -1
  199. package/dist/val/RecurseVal.js +0 -55
  200. package/dist/val/RecurseVal.js.map +1 -1
  201. package/dist/val/RefVal.js +0 -282
  202. package/dist/val/RefVal.js.map +1 -1
  203. package/dist/val/ReferFuncVal.js +3 -232
  204. package/dist/val/ReferFuncVal.js.map +1 -1
  205. package/dist/val/ScalarKindVal.js +0 -49
  206. package/dist/val/ScalarKindVal.js.map +1 -1
  207. package/dist/val/ScalarVal.js +0 -11
  208. package/dist/val/ScalarVal.js.map +1 -1
  209. package/dist/val/StrFuncVal.js +0 -18
  210. package/dist/val/StrFuncVal.js.map +1 -1
  211. package/dist/val/SuperFuncVal.js +0 -32
  212. package/dist/val/SuperFuncVal.js.map +1 -1
  213. package/dist/val/TopVal.js +0 -1
  214. package/dist/val/TopVal.js.map +1 -1
  215. package/dist/val/TranslateFuncVal.js +1 -3
  216. package/dist/val/TranslateFuncVal.js.map +1 -1
  217. package/dist/val/UpperFuncVal.js +0 -11
  218. package/dist/val/UpperFuncVal.js.map +1 -1
  219. package/dist/val/Val.d.ts +1 -0
  220. package/dist/val/Val.js +2 -133
  221. package/dist/val/Val.js.map +1 -1
  222. package/dist/val/VarVal.js +0 -12
  223. package/dist/val/VarVal.js.map +1 -1
  224. package/dist/val/arith.js +0 -37
  225. package/dist/val/arith.js.map +1 -1
  226. package/dist/val/caserange.js +0 -61
  227. package/dist/val/caserange.js.map +1 -1
  228. package/dist/val/members.js +0 -6
  229. package/dist/val/members.js.map +1 -1
  230. package/dist/val/numcmp.js +0 -11
  231. package/dist/val/numcmp.js.map +1 -1
  232. package/dist/val/numkind.js +0 -145
  233. package/dist/val/numkind.js.map +1 -1
  234. package/dist/val/valutil.js +0 -16
  235. package/dist/val/valutil.js.map +1 -1
  236. package/dist/vet.js +0 -461
  237. package/dist/vet.js.map +1 -1
  238. package/dist/view.js +0 -414
  239. package/dist/view.js.map +1 -1
  240. package/dist/walk.js +0 -41
  241. package/dist/walk.js.map +1 -1
  242. package/grammar/aontu.abnf +8 -6
  243. package/grammar/aontu.gbnf +4 -4
  244. package/grammar/aontu.lark +4 -4
  245. package/grammar/aontu.tmLanguage.json +1 -1
  246. package/package.json +4 -2
  247. package/skill/tasks.md +9 -7
  248. package/src/agentsmd.ts +0 -35
  249. package/src/alias.ts +0 -39
  250. package/src/allow.ts +1 -96
  251. package/src/aontu.ts +4 -116
  252. package/src/aontumodel.ts +26 -0
  253. package/src/casing.ts +95 -0
  254. package/src/cli.ts +258 -1024
  255. package/src/ctx.ts +0 -103
  256. package/src/diff.ts +0 -40
  257. package/src/err.ts +0 -40
  258. package/src/escape.ts +0 -46
  259. package/src/exactjson.ts +0 -131
  260. package/src/format.ts +14 -257
  261. package/src/grammar.ts +72 -0
  262. package/src/graph.ts +0 -61
  263. package/src/hcanon.ts +0 -82
  264. package/src/helpdoc.ts +2 -2
  265. package/src/hints.ts +69 -57
  266. package/src/jsonschema.ts +0 -123
  267. package/src/keyorder.ts +0 -42
  268. package/src/lang.ts +19 -931
  269. package/src/lsp-server.ts +0 -16
  270. package/src/lsp.ts +12 -180
  271. package/src/mcp-server.ts +0 -31
  272. package/src/mcp.ts +0 -169
  273. package/src/mod-tool.ts +18 -159
  274. package/src/mod.ts +0 -178
  275. package/src/patch.ts +0 -232
  276. package/src/profile.ts +42 -0
  277. package/src/provenance.ts +0 -183
  278. package/src/query.ts +0 -84
  279. package/src/reach.ts +0 -53
  280. package/src/relation.ts +0 -84
  281. package/src/report-sarif.ts +0 -48
  282. package/src/sig.ts +0 -35
  283. package/src/sigdecl.ts +1 -1
  284. package/src/siggate.ts +0 -30
  285. package/src/site.ts +3 -29
  286. package/src/subsume.ts +1 -161
  287. package/src/template.ts +69 -140
  288. package/src/trace.ts +157 -0
  289. package/src/trim.ts +0 -53
  290. package/src/type.ts +2 -45
  291. package/src/unify.ts +14 -257
  292. package/src/utility.ts +0 -31
  293. package/src/val/AbnfFuncVal.ts +181 -0
  294. package/src/val/AbsentVal.ts +54 -0
  295. package/src/val/AggFuncVal.ts +152 -188
  296. package/src/val/ArithFuncVal.ts +0 -20
  297. package/src/val/BagVal.ts +1 -78
  298. package/src/val/BigDecimalVal.ts +0 -16
  299. package/src/val/BigIntegerVal.ts +0 -16
  300. package/src/val/CloseFuncVal.ts +0 -9
  301. package/src/val/CmpFuncVal.ts +68 -184
  302. package/src/val/ConjunctVal.ts +0 -33
  303. package/src/val/ConstraintVal.ts +2 -537
  304. package/src/val/ContainerKindVal.ts +0 -18
  305. package/src/val/CopyFuncVal.ts +0 -5
  306. package/src/val/Decimal.ts +1 -185
  307. package/src/val/DeprecateFuncVal.ts +0 -10
  308. package/src/val/DisjunctVal.ts +0 -157
  309. package/src/val/EachFuncVal.ts +0 -40
  310. package/src/val/EmitFuncVal.ts +8 -208
  311. package/src/val/ExpectVal.ts +0 -62
  312. package/src/val/FilterFuncVal.ts +0 -55
  313. package/src/val/FuncBaseVal.ts +9 -130
  314. package/src/val/GraphAtomVal.ts +0 -42
  315. package/src/val/HideFuncVal.ts +0 -15
  316. package/src/val/IntegerVal.ts +0 -61
  317. package/src/val/JunctionVal.ts +0 -20
  318. package/src/val/KeyFuncVal.ts +0 -48
  319. package/src/val/ListVal.ts +0 -59
  320. package/src/val/LowerFuncVal.ts +0 -12
  321. package/src/val/MapVal.ts +0 -151
  322. package/src/val/MatchFuncVal.ts +0 -59
  323. package/src/val/MaybeFuncVal.ts +86 -0
  324. package/src/val/MoveFuncVal.ts +0 -20
  325. package/src/val/NilVal.ts +0 -60
  326. package/src/val/NomFuncVal.ts +10 -99
  327. package/src/val/NumberVal.ts +0 -16
  328. package/src/val/OpBaseVal.ts +4 -17
  329. package/src/val/PackFuncVal.ts +0 -63
  330. package/src/val/PathFuncVal.ts +0 -32
  331. package/src/val/PathVal.ts +0 -66
  332. package/src/val/PlaceVal.ts +0 -45
  333. package/src/val/PlusOpVal.ts +18 -75
  334. package/src/val/PrefFuncVal.ts +0 -1
  335. package/src/val/PrefVal.ts +0 -179
  336. package/src/val/RecurseVal.ts +0 -81
  337. package/src/val/RefVal.ts +1 -285
  338. package/src/val/ReferFuncVal.ts +4 -255
  339. package/src/val/ScalarKindVal.ts +0 -50
  340. package/src/val/ScalarVal.ts +0 -12
  341. package/src/val/StrFuncVal.ts +0 -44
  342. package/src/val/SuperFuncVal.ts +0 -42
  343. package/src/val/TopVal.ts +0 -1
  344. package/src/val/TranslateFuncVal.ts +1 -51
  345. package/src/val/UpperFuncVal.ts +0 -12
  346. package/src/val/Val.ts +3 -192
  347. package/src/val/VarVal.ts +0 -15
  348. package/src/val/arith.ts +0 -92
  349. package/src/val/caserange.ts +0 -62
  350. package/src/val/members.ts +0 -23
  351. package/src/val/numcmp.ts +1 -27
  352. package/src/val/numkind.ts +0 -149
  353. package/src/val/valutil.ts +0 -16
  354. package/src/vet.ts +1 -582
  355. package/src/view.ts +0 -507
  356. package/src/walk.ts +0 -41
  357. package/dist/lower.d.ts +0 -23
  358. package/dist/lower.js +0 -578
  359. package/dist/lower.js.map +0 -1
  360. package/dist/render.d.ts +0 -53
  361. package/dist/render.js +0 -547
  362. package/dist/render.js.map +0 -1
  363. package/dist/std.d.ts +0 -3
  364. package/dist/std.js +0 -672
  365. package/dist/std.js.map +0 -1
  366. package/dist/val/FormFuncVal.js +0 -55
  367. package/dist/val/FormFuncVal.js.map +0 -1
  368. package/dist/val/NamerFuncVal.d.ts +0 -12
  369. package/dist/val/NamerFuncVal.js +0 -176
  370. package/dist/val/NamerFuncVal.js.map +0 -1
  371. package/src/lower.ts +0 -636
  372. package/src/render.ts +0 -732
  373. package/src/std.ts +0 -683
package/dist/mcp.js CHANGED
@@ -10,30 +10,6 @@ exports.callTool = callTool;
10
10
  exports.serverInstructions = serverInstructions;
11
11
  exports.handle = handle;
12
12
  exports.parseError = parseError;
13
- // THE MCP TOOL LIBRARY (G7 phase 6,
14
- // docs/capability-review/g7-machine-access.md; completed to the full
15
- // CLI verb surface by the use-case review's MCP recommendation,
16
- // use-cases/SUPPORT.md): the verbs an agent calls, over the Model
17
- // Context Protocol, as a transport-free library. The split follows
18
- // the LSP's (docs/lsp.md): this file is the protocol and the tools,
19
- // ts/src/mcp-server.ts is stdio and nothing else, and the whole thing
20
- // is testable without a socket.
21
- //
22
- // Every tool returns THE SAME JSON CONTRACT THE CLI PRINTS. That is
23
- // the point of the surface: an agent that has read `aontu vet
24
- // --format json` output knows what the `vet` tool answers, and a
25
- // report copied from one to the other is the same object. The tools
26
- // add no vocabulary of their own.
27
- //
28
- // The server evaluates under a CONFINED resolver (G5, docs/trust.md):
29
- // a caller hands source text, and text that could reach out through
30
- // `@"..."` is exactly what a server must not run unconfined. By
31
- // default every include is denied; a server started with
32
- // `--root <dir>` (ts/src/mcp-server.ts) resolves includes confined
33
- // below that root instead — the CLI's `--trust root:<dir>` posture —
34
- // and lets every document argument arrive as a `<name>Path` file
35
- // under the same root. The package-resolver leg is never enabled
36
- // here.
37
13
  const node_fs_1 = require("node:fs");
38
14
  const node_path_1 = require("node:path");
39
15
  const aontu_1 = require("./aontu");
@@ -48,29 +24,11 @@ const jsonschema_1 = require("./jsonschema");
48
24
  const relation_1 = require("./relation");
49
25
  const reach_1 = require("./reach");
50
26
  const view_1 = require("./view");
51
- const render_1 = require("./render");
52
27
  const patch_1 = require("./patch");
53
28
  exports.MCP_PROTOCOL = '2024-11-05';
54
- // JSON-RPC's own codes, the three a server this small can raise.
55
29
  const PARSE_ERROR = -32700;
56
30
  const METHOD_NOT_FOUND = -32601;
57
31
  const INVALID_PARAMS = -32602;
58
- // The trust profile a served evaluation runs under: no includes at
59
- // all — or, when the server was started with --root, includes
60
- // realpath-confined below that root (the CLI's `--trust root:<dir>`
61
- // semantics; docs/trust.md). The package-resolver leg is enabled by
62
- // neither.
63
- //
64
- // The profile is INJECTED into every tool by callTool rather than
65
- // applied by each tool for itself. That is deliberate: four of the six
66
- // original tools once called the library with no profile at all, so a
67
- // served `@"x.js"` was require()d in the server process, while the
68
- // module header claimed confinement. (That particular include is
69
- // refused outright now -- ADR-012 -- but a served document could still
70
- // read every file the server can.) A tool that must remember to
71
- // confine itself is a tool that eventually forgets, and the forgetting
72
- // is silent. With the profile arriving as an argument, a tool cannot
73
- // run unconfined without visibly discarding it.
74
32
  function servedTrust(root) {
75
33
  return null == root
76
34
  ? { include: 'none' }
@@ -79,35 +37,12 @@ function servedTrust(root) {
79
37
  function served(trust) {
80
38
  return new aontu_1.Aontu({ trust });
81
39
  }
82
- // DOES THIS DOCUMENT STAND UP UNDER THE SERVED PROFILE — or the
83
- // finding that says why not. This is the confinement gate for the
84
- // engines that take no trust profile, and parse is the whole include
85
- // story: `@"..."` resolves at parse time (ts/src/lang.ts), so a
86
- // document whose confined parse is clean either has no includes at
87
- // all (capability 'none') or resolves every one below the root — and
88
- // an engine that then re-resolves the same closure under the default
89
- // profile reads exactly the files the confined parse proved in
90
- // bounds. A parse that fails for any reason refuses the call: an
91
- // engine's own answer for a document this profile cannot read is not
92
- // an answer this server may compute.
93
40
  function confinedParseFailure(src, trust, path) {
94
41
  const aontu = served(trust);
95
42
  const ctx = aontu.ctx({ collect: true });
96
43
  aontu.parse(src, null == path ? undefined : { path }, ctx);
97
44
  return 0 < ctx.err.length ? (0, query_1.evalFailure)(ctx) : undefined;
98
45
  }
99
- // Confinement is realpath-then-prefix-check, mirroring the include
100
- // resolver's own rule (ts/src/lang.ts, docs/trust.md): the file's
101
- // real path must sit below the root's real path, so a symlink inside
102
- // the root pointing outside it is an escape, not a loophole.
103
- //
104
- // A path that does not (fully) exist cannot be realpath'd whole, and
105
- // falling back to the LEXICAL form compares apples to oranges when the
106
- // root itself sits behind a symlink -- on macOS a root under /var
107
- // realpaths to /private/var, so a merely-missing file inside it read
108
- // as an escape instead of "cannot read" (the CI failure that bought
109
- // this comment). Realpath the deepest EXISTING ancestor and re-attach
110
- // the rest, so both sides of the prefix check are in real coordinates.
111
46
  function realpathOf(p) {
112
47
  try {
113
48
  return (0, node_fs_1.realpathSync)(p);
@@ -232,8 +167,6 @@ const TOOLS = [
232
167
  docs: ['src'],
233
168
  run: (a, trust, paths) => summaryOf(str(a.src), trust, paths.src),
234
169
  },
235
- // The evolution and change verbs (the use-case review's "MCP is a
236
- // read-only subset" gap, use-cases/09-agent-tools/README.md gap 11).
237
170
  {
238
171
  name: 'subsume',
239
172
  description: 'Does the general document admit every instance the specific ' +
@@ -345,11 +278,6 @@ const TOOLS = [
345
278
  },
346
279
  required: ['source'],
347
280
  docs: ['source'],
348
- // The pre-parse finding rides `errors`, exactly where the engine
349
- // puts its own reason for a document that does not stand up
350
- // (ts/src/relation.ts, the review's finding F). NOT `findings`:
351
- // RelationFinding is its own vocabulary (code, relation, at,
352
- // detail) and a document with no graph has no graph findings.
353
281
  refuse: (_a, finding) => ({ verdict: 'error', findings: [], errors: [finding] }),
354
282
  run: (a, _trust, paths) => (0, relation_1.relationCheck)(str(a.source), { path: paths.source }),
355
283
  },
@@ -552,9 +480,6 @@ const TOOLS = [
552
480
  },
553
481
  required: ['source'],
554
482
  docs: ['source'],
555
- // The pre-parse finding rides `errors`, exactly where the engine
556
- // puts its own reason for a document that does not stand up
557
- // (ts/src/trim.ts, the review's finding F).
558
483
  refuse: (_a, finding) => ({ verdict: 'error', redundant: [], errors: [finding] }),
559
484
  run: (a, _trust, paths) => (0, trim_1.trimCheck)(str(a.source), { path: paths.source }),
560
485
  },
@@ -584,41 +509,6 @@ const TOOLS = [
584
509
  at: null == a.at ? undefined : str(a.at), path: paths.source,
585
510
  }),
586
511
  },
587
- {
588
- name: 'render',
589
- description: 'Render a document that evaluates to an aontu:code instance: ' +
590
- 'evaluate it, vet the value at `at` against the bundled ' +
591
- 'vocabulary, and fold code.units into bytes. Returns verdict ' +
592
- '(ok | lossy | error), the units -- each a path, a language and ' +
593
- 'its text -- and a `lossy` list of what the renderer could not ' +
594
- 'check (a fragment says nothing about the target\'s syntax; a ' +
595
- 'text escape or a raw block is verbatim). The tool never writes: ' +
596
- 'the caller receives the units as text and places them itself.',
597
- properties: {
598
- source: { type: 'string', description: 'The document' },
599
- at: {
600
- type: 'string',
601
- description: 'Render the value at this path of the document ($.a.b)',
602
- },
603
- unit: {
604
- type: 'string',
605
- description: 'Render only the unit with this path',
606
- },
607
- strict: {
608
- type: 'boolean',
609
- description: 'Refuse the opaque escapes (a text declaration, a raw block)',
610
- },
611
- },
612
- required: ['source'],
613
- docs: ['source'],
614
- refuse: (_a, finding) => ({ verdict: 'error', units: [], lossy: [], errors: [finding] }),
615
- run: (a, _trust, paths) => (0, render_1.render)(str(a.source), {
616
- at: null == a.at ? undefined : str(a.at),
617
- unit: null == a.unit ? undefined : str(a.unit),
618
- strict: true === a.strict,
619
- path: paths.source,
620
- }),
621
- },
622
512
  ];
623
513
  function str(v) {
624
514
  return 'string' === typeof v ? v : '';
@@ -711,8 +601,6 @@ function policyCompatOf(newSrc, trust, path) {
711
601
  return 'backward' === m || 'forward' === m || 'full' === m || 'none' === m
712
602
  ? m : undefined;
713
603
  }
714
- // The declared mode: the mode argument overrides the document's own
715
- // policy; neither means backward (v1-valid documents stay valid).
716
604
  function breakingMode(a, trust, paths) {
717
605
  return a.mode ?? policyCompatOf(str(a.new), trust, paths.new) ?? 'backward';
718
606
  }
@@ -726,8 +614,6 @@ function breakingOf(a, trust, paths) {
726
614
  old: { src: str(a.old), url: paths.old ?? 'old', path: paths.old },
727
615
  new: { src: str(a.new), url: paths.new ?? 'new', path: paths.new },
728
616
  };
729
- // backward: the NEW document is the general side — every old
730
- // instance must still be admitted. forward: the old one is.
731
617
  const checks = [];
732
618
  if ('backward' === mode || 'full' === mode) {
733
619
  checks.push({ general: sides.new, specific: sides.old });
@@ -751,10 +637,6 @@ function breakingOf(a, trust, paths) {
751
637
  }
752
638
  return { verdict: BREAKING_VERDICT[worst], mode, findings };
753
639
  }
754
- // ---------------------------------------------------------------------
755
- // The set tool: the CLI's `set` verb minus the filesystem — the patch
756
- // engine (ts/src/patch.ts) already answers with the new overlay text,
757
- // and the caller owns the write.
758
640
  // The assignments arrive structured ({path, value}) rather than as the
759
641
  // CLI's `<path>=<value>` spelling, and are re-joined for the engine's
760
642
  // parseAssignment — so the path must not smuggle a `=` that would move
@@ -784,12 +666,6 @@ function setError(overlay, finding) {
784
666
  };
785
667
  }
786
668
  function setOf(a, trust, paths) {
787
- // THE ASSIGNMENT VALUES ARE DOCUMENTS TOO: each one is appended (or
788
- // spliced) into the overlay and evaluated there by the engine's
789
- // final vet, so a value that smuggles an include — or a newline and
790
- // then an include — gets the same confined pre-parse as the
791
- // documents themselves, wrapped exactly as the engine's own
792
- // spanValue wraps a fragment (ts/src/patch.ts).
793
669
  for (const x of a.assignments) {
794
670
  const denied = confinedParseFailure('v: ' + x.value, trust, paths.overlay);
795
671
  if (null != denied) {
@@ -802,13 +678,6 @@ function setOf(a, trust, paths) {
802
678
  inPlace: true === a.inPlace,
803
679
  });
804
680
  }
805
- // ---------------------------------------------------------------------
806
- // The tool list as MCP spells it: a name, a description, and a JSON
807
- // Schema for the arguments. With a served root, every document
808
- // property gains its `<name>Path` file alternative — and comes OFF the
809
- // `required` list, because JSON Schema's `required` cannot say "one of
810
- // the two"; callTool's own argument check still refuses a call that
811
- // carries neither.
812
681
  function toolList(root) {
813
682
  return TOOLS.map((t) => {
814
683
  const properties = { ...t.properties };
@@ -837,17 +706,6 @@ function toolList(root) {
837
706
  function refusal(text) {
838
707
  return { content: [{ type: 'text', text }], isError: true };
839
708
  }
840
- // One tool call. A tool that REFUSES (an invalid document, a path that
841
- // names nothing, a document the served profile cannot read) is not a
842
- // protocol error: it answers with its own report and `isError` false,
843
- // because the report IS the answer the agent asked for. `isError` is
844
- // reserved for a call that could not be made at all — an unknown tool,
845
- // a missing or malformed argument, a file argument the server cannot
846
- // serve.
847
- // `opts.tools` is injectable for the same reason the watch loop's
848
- // waiter is: the catch below is defensive code no document reaches --
849
- // every verb answers with a report rather than throwing -- and code
850
- // the suite cannot execute is code the ADR-002 floor cannot hold.
851
709
  function callTool(name, args, opts) {
852
710
  const root = opts?.root;
853
711
  const tools = opts?.tools ?? TOOLS;
@@ -857,13 +715,6 @@ function callTool(name, args, opts) {
857
715
  }
858
716
  const a = { ...(args ?? {}) };
859
717
  const paths = {};
860
- // THE FILE ALTERNATIVES (--root). A document that did not arrive as
861
- // inline text may arrive as a `<name>Path` file — served only when
862
- // the operator granted a root at startup, confined below it by the
863
- // same realpath rule the include resolver applies, and recorded in
864
- // `paths` so the engine resolves the file's own relative includes
865
- // from its directory (the CLI's rule for a named file). Inline text
866
- // wins when a caller sends both.
867
718
  for (const doc of tool.docs ?? []) {
868
719
  if ('string' === typeof a[doc]) {
869
720
  continue;
package/dist/mcp.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
package/dist/mod-tool.js CHANGED
@@ -8,23 +8,6 @@ exports.modTidy = modTidy;
8
8
  exports.modVerify = modVerify;
9
9
  exports.modVendor = modVendor;
10
10
  exports.modManifest = modManifest;
11
- // MODULE TOOLING (G6 phase 3, docs/capability-review/g6-distribution.md):
12
- // the LOCAL half — `aontu mod tidy`, `verify`, `vendor` and
13
- // `manifest`.
14
- //
15
- // Evaluation never touches the network, and neither does this: `tidy`
16
- // resolves versions and rewrites the lockfile from what is already in
17
- // the local stores, `verify` asks whether the stores still MEAN what
18
- // the lockfile pins and changes nothing, and `vendor` materialises the
19
- // locked closure into the project. Fetching and publishing are the
20
- // network half, and are not in this build (see the register).
21
- //
22
- // MINIMUM VERSION SELECTION, not a solver: each module declares the
23
- // MINIMUM version of each dependency it needs, and the selected version
24
- // is the maximum of those minima over the closure. Deterministic, and
25
- // deterministic without backtracking — the lockfile CONFIRMS the
26
- // resolution rather than determining it, which is why a tidy run can be
27
- // re-run to the same bytes.
28
11
  const node_fs_1 = require("node:fs");
29
12
  const node_path_1 = require("node:path");
30
13
  const mod_1 = require("./mod");
@@ -48,10 +31,6 @@ function declaredDeps(file, options) {
48
31
  }
49
32
  return out;
50
33
  }
51
- // Numeric-dotted version order: `1.10.0` is above `1.9.0`, which
52
- // STRING order gets wrong, and that is the whole reason this is not a
53
- // `<` on the text. A part that is not a number compares as text, after
54
- // every number — a pre-release tag is below no version and above none.
55
34
  function versionCompare(a, b) {
56
35
  const ap = a.split('.');
57
36
  const bp = b.split('.');
@@ -76,21 +55,6 @@ function versionCompare(a, b) {
76
55
  }
77
56
  return 0;
78
57
  }
79
- // A dependency or lockfile key as a module ref this tooling may ACT
80
- // on, or undefined.
81
- //
82
- // Two ways to be unusable, one answer. A key that is not module-shaped
83
- // names nothing the resolver can find; a key that is shaped but whose
84
- // path cannot legally be a directory (`..` in it, a reserved device
85
- // name) must not be turned into one, which is the whole of the
86
- // traversal fix on this side. Both land in the caller's `missing`
87
- // bucket, because from the report's point of view they are the same
88
- // fact: the lockfile names something that cannot be resolved here.
89
- //
90
- // A STALE LOCKFILE IS THE REASON THIS EXISTS AT ALL. `resolveModule`
91
- // gates the evaluator, but `tidy`, `verify` and `vendor` read a
92
- // lockfile straight off disk -- one that may have been committed
93
- // before the gate existed -- so the gate has to be here too.
94
58
  function usableRef(mod) {
95
59
  const ref = (0, mod_1.parseModuleRef)(mod);
96
60
  if (undefined === ref || undefined !== (0, mod_1.validateModulePath)(ref.path)) {
@@ -132,20 +96,11 @@ function readLock(root) {
132
96
  }
133
97
  return out;
134
98
  }
135
- // The lockfile TEXT: canonical Aontu, one line, keys sorted. Built as
136
- // source and canonicalised by the engine rather than printed by hand,
137
- // so "canonical form" means what the language means by it and cannot
138
- // drift from it.
139
99
  function lockText(entries, options) {
140
100
  const parts = entries.map((e) => JSON.stringify(e.mod) + ':{' +
141
101
  '"canon":' + JSON.stringify(e.canon) + ',' +
142
102
  '"oci":' + JSON.stringify(e.oci) + ',' +
143
103
  '"v":' + JSON.stringify(e.v) + '}');
144
- // Canonicalised by the ENGINE rather than printed by hand, so
145
- // "canonical form" means what the language means by it and cannot
146
- // drift from it. For a map of scalars that canon is also JSON, which
147
- // is what lets the resolver read a pin back without an evaluator
148
- // (ts/src/mod.ts lockHash).
149
104
  return options.eval('{"lock":{' + parts.join(',') + '}}', 'mod-lock.aon').canon;
150
105
  }
151
106
  // `aontu mod tidy`: resolve the closure by MVS and rewrite the lockfile.
@@ -153,10 +108,6 @@ function modTidy(root, options) {
153
108
  const previous = readLock(root);
154
109
  const selected = {};
155
110
  const missing = [];
156
- // The closure, breadth-first from the project's own declarations. A
157
- // module already selected at a version at least as high contributes
158
- // nothing new, which is what makes this terminate without a cycle
159
- // check: the selected version only ever rises.
160
111
  let frontier = declaredDeps((0, node_path_1.join)(root, 'mod.aon'), options);
161
112
  for (; 0 < Object.keys(frontier).length;) {
162
113
  const next = {};
@@ -199,16 +150,8 @@ function modTidy(root, options) {
199
150
  const ref = usableRef(mod);
200
151
  const dir = storeDir(root, ref, previous[mod]?.canon ?? '', options);
201
152
  const main = (0, node_path_1.join)(dir, mainOf(dir, options));
202
- // RECOMPUTED, never carried over: the pin is what the module in
203
- // this store MEANS, and a tidy that copied the old hash forward
204
- // would pin what it used to mean.
205
153
  const got = (0, node_fs_1.existsSync)(main) ?
206
154
  options.eval((0, node_fs_1.readFileSync)(main, 'utf8'), main) : undefined;
207
- // A NIL PIN IS WORSE THAN NO PIN. A module that does not stand up
208
- // hashes to canonHash(nil) -- the same string for every broken
209
- // module -- so writing it would put a plausible, uninformative
210
- // pin in the lockfile and silently void the "breaks on any
211
- // semantic change in the closure" contract (BUGS.md §31).
212
155
  if (null != got && !got.ok) {
213
156
  unevaluable.push(mod);
214
157
  continue;
@@ -249,33 +192,11 @@ function mainOf(dir, options) {
249
192
  const main = gen?.mod?.main;
250
193
  return 'string' === typeof main && '' !== main ? main : 'main.aon';
251
194
  }
252
- // `aontu mod verify`: does every locked module still MEAN what the
253
- // lockfile pins? Recompute and compare, and CHANGE NOTHING.
254
- //
255
- // The verb exists because `tidy` cannot answer this question. Tidy
256
- // recomputes and REWRITES by design -- a pin is what a module means
257
- // now -- so tampering with a vendored module and running tidy makes
258
- // the lockfile agree with the tampering, `verdict: ok`, and the next
259
- // evaluation passes. That is correct for the job tidy does and useless
260
- // as a gate, which left a CI job that tidies before evaluating with no
261
- // integrity protection at all (use-cases/BUGS.md §32). Verification is
262
- // a question; answering it must not be an edit.
263
195
  function modVerify(root, options) {
264
196
  const locked = readLock(root);
265
197
  const verified = [];
266
198
  const mismatched = [];
267
199
  const missing = [];
268
- // NOTHING TO CHECK IS NOT A PASS. A project with no lockfile at all
269
- // -- or one whose lockfile predates a dependency someone added --
270
- // would otherwise verify clean, because the loop below walks what is
271
- // LOCKED and there is nothing locked to walk. That is the same shape
272
- // as the defect this verb exists to close: absence reading as
273
- // agreement. Every dependency the project itself declares must be in
274
- // the lockfile before the pins mean anything, and the repair is a
275
- // tidy rather than a fetch. Transitive dependencies need no separate
276
- // check: a locked module's own imports are resolved when its pin is
277
- // recomputed, so one that is unreachable makes its DEPENDANT fail to
278
- // evaluate and lands in `mismatched` below.
279
200
  const declared = declaredDeps((0, node_path_1.join)(root, 'mod.aon'), options);
280
201
  const unlocked = Object.keys(declared)
281
202
  .filter((mod) => null == locked[mod]).sort();
@@ -295,10 +216,6 @@ function modVerify(root, options) {
295
216
  missing.push(mod);
296
217
  continue;
297
218
  }
298
- // A module that no longer stands up is not a match: it has no
299
- // meaning to compare, and reporting `got: <hash of nil>` would
300
- // print the same string for every broken module. The empty `got`
301
- // says the store holds something that does not evaluate.
302
219
  const got = options.eval((0, node_fs_1.readFileSync)(main, 'utf8'), main);
303
220
  const want = locked[mod].canon;
304
221
  if (got.ok && want === got.hash) {
@@ -334,17 +251,6 @@ function modVendor(root, options) {
334
251
  missing.push(mod);
335
252
  continue;
336
253
  }
337
- // WHY THERE IS NO CONTAINMENT CHECK ON `to`, at the one write site
338
- // that copied a tree outside the project: `usableRef` above is the
339
- // gate, and after it a store path CANNOT escape. Every element is
340
- // non-empty and neither begins nor ends with `.`, so none is `.`
341
- // or `..`; MODULE_RE's element class admits no `/`, no `\` and no
342
- // leading slash, so no element can re-root the join. A second
343
- // lexical check here would be unreachable code, which ADR-002 asks
344
- // to be deleted rather than excluded -- so the invariant is pinned
345
- // by a test that drives the escape through this verb instead.
346
- // ANY NEW CALLER of moduleDir must go through usableRef too;
347
- // `mod get` is the next one.
348
254
  const to = (0, mod_1.moduleDir)(vendorRoot, ref);
349
255
  if (from !== to) {
350
256
  copyTree(from, to);
@@ -373,31 +279,9 @@ function copyTree(from, to) {
373
279
  }
374
280
  }
375
281
  }
376
- // THE PUBLISH BOUNDARY (G6 phase 4,
377
- // docs/capability-review/g6-distribution.md). A module is an OCI
378
- // artifact, and what a publish PUSHES is a manifest: a config media
379
- // type, one layer holding the module's source tree, and annotations
380
- // carrying the module path, its version and its canon-hash.
381
- //
382
- // The push needs a registry, which this build does not have. Everything
383
- // the push would ASSERT is local, and that is what `aontu mod manifest`
384
- // answers: the exact artifact description, computed the way the
385
- // registry would be told it, plus the gate that decides whether it may
386
- // be minted at all.
387
- //
388
- // WHY THE ANNOTATION MATTERS MORE THAN THE BYTES. "Has the truth
389
- // changed?" is one annotation read and a string compare -- no download,
390
- // no parse -- because the canon-hash pins MEANING rather than text. A
391
- // consumer holding `aon1-oQs6…` can ask a registry index whether the
392
- // module still hashes to it, and a reformat, a comment or a file split
393
- // will not move it.
394
282
  // The config media type the design fixes: an Aontu module is not an
395
283
  // image, and the type is what tells a registry so.
396
284
  exports.MODULE_CONFIG_MEDIA_TYPE = 'application/vnd.aontu.module.v1+json';
397
- // The canon-hash annotation. OCI asks a custom key to be the reverse
398
- // DNS of a domain its author controls, and the project's own home is
399
- // the only domain it has -- inventing an `aontu.dev` would be a claim
400
- // it cannot back. The two facts OCI already has keys for use those.
401
285
  exports.MODULE_ANNOTATION_CANON = 'com.github.rjrodger.aontu.canon';
402
286
  exports.MODULE_ANNOTATION_MAJOR = 'com.github.rjrodger.aontu.major';
403
287
  function modSelf(dir, options) {
@@ -414,18 +298,10 @@ function modSelf(dir, options) {
414
298
  main: '' === str('main') ? 'main.aon' : str('main'),
415
299
  };
416
300
  }
417
- // The leading numeric component of a version, which is the major an
418
- // import spells. Empty when the version does not start with one: a
419
- // version whose major cannot be read cannot be published under a
420
- // module path, because the path is where the major lives.
421
301
  function majorOf(version) {
422
302
  const m = /^(\d+)/.exec(version);
423
303
  return null == m ? '' : m[1];
424
304
  }
425
- // Every file of a module's source tree, relative and forward-slashed.
426
- // `aontu_meta/vendor/` is excluded: a published module carries its own
427
- // sources, not a copy of everyone else's -- a consumer resolves the
428
- // closure itself, and a nested vendor tree would publish the world.
429
305
  function layerFiles(dir, prefix = '') {
430
306
  const out = [];
431
307
  for (const name of (0, node_fs_1.readdirSync)(dir).sort()) {
@@ -475,7 +351,22 @@ function modManifest(root, options, against) {
475
351
  };
476
352
  }
477
353
  const newSrc = (0, node_fs_1.readFileSync)(main, 'utf8');
478
- const canon = options.eval(newSrc, main).hash;
354
+ const got = options.eval(newSrc, main);
355
+ // Nothing to pin: `tidy` refuses the same way.
356
+ if (!got.ok) {
357
+ return {
358
+ verdict: 'error',
359
+ mod,
360
+ version: self.version,
361
+ canon: '',
362
+ config: exports.MODULE_CONFIG_MEDIA_TYPE,
363
+ files: [],
364
+ annotations: {},
365
+ missing: [self.main],
366
+ findings: [],
367
+ };
368
+ }
369
+ const canon = got.hash;
479
370
  const report = {
480
371
  verdict: 'ok',
481
372
  mod,
@@ -505,15 +396,9 @@ function modManifest(root, options, against) {
505
396
  report.missing = [prior.main];
506
397
  return report;
507
398
  }
508
- // A MAJOR BUMP IS WHERE BREAKING IS ALLOWED. The major lives in the
509
- // module path, so a consumer of `@1` never sees `@2` unless it asks:
510
- // checking compatibility across majors would forbid the one change
511
- // the version scheme exists to express.
512
399
  if (majorOf(prior.version) !== major) {
513
400
  return report;
514
401
  }
515
- // Backward compatibility: the NEW version is the general side, so
516
- // every instance the old one admitted must still be admitted.
517
402
  const gate = (0, subsume_1.subsume)(newSrc, (0, node_fs_1.readFileSync)(priorMain, 'utf8'), {
518
403
  generalUrl: main,
519
404
  specificUrl: priorMain,