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.
- package/README.md +7 -7
- package/dist/agentsmd.js +0 -27
- package/dist/agentsmd.js.map +1 -1
- package/dist/alias.js.map +1 -1
- package/dist/allow.js +0 -92
- package/dist/allow.js.map +1 -1
- package/dist/aontu.d.ts +3 -3
- package/dist/aontu.js +4 -84
- package/dist/aontu.js.map +1 -1
- package/dist/aontumodel.d.ts +4 -0
- package/dist/aontumodel.js +27 -0
- package/dist/aontumodel.js.map +1 -0
- package/dist/casing.d.ts +5 -0
- package/dist/casing.js +90 -0
- package/dist/casing.js.map +1 -0
- package/dist/cli.d.ts +2 -2
- package/dist/cli.js +228 -935
- package/dist/cli.js.map +1 -1
- package/dist/ctx.js +0 -48
- package/dist/ctx.js.map +1 -1
- package/dist/diff.js +0 -32
- package/dist/diff.js.map +1 -1
- package/dist/err.js +0 -40
- package/dist/err.js.map +1 -1
- package/dist/escape.js +0 -45
- package/dist/escape.js.map +1 -1
- package/dist/exactjson.d.ts +0 -35
- package/dist/exactjson.js +0 -131
- package/dist/exactjson.js.map +1 -1
- package/dist/format.js +13 -203
- package/dist/format.js.map +1 -1
- package/dist/grammar.d.ts +9 -0
- package/dist/grammar.js +54 -0
- package/dist/grammar.js.map +1 -0
- package/dist/graph.js +0 -26
- package/dist/graph.js.map +1 -1
- package/dist/hcanon.js +0 -82
- package/dist/hcanon.js.map +1 -1
- package/dist/helpdoc.js +2 -2
- package/dist/helpdoc.js.map +1 -1
- package/dist/hints.d.ts +0 -6
- package/dist/hints.js +57 -55
- package/dist/hints.js.map +1 -1
- package/dist/jsonschema.js +0 -114
- package/dist/jsonschema.js.map +1 -1
- package/dist/keyorder.d.ts +0 -7
- package/dist/keyorder.js +0 -41
- package/dist/keyorder.js.map +1 -1
- package/dist/lang.js +17 -915
- package/dist/lang.js.map +1 -1
- package/dist/lsp-server.js +0 -16
- package/dist/lsp-server.js.map +1 -1
- package/dist/lsp.d.ts +1 -1
- package/dist/lsp.js +12 -159
- package/dist/lsp.js.map +1 -1
- package/dist/mcp-server.js +0 -26
- package/dist/mcp-server.js.map +1 -1
- package/dist/mcp.js +0 -149
- package/dist/mcp.js.map +1 -1
- package/dist/mod-tool.js +16 -131
- package/dist/mod-tool.js.map +1 -1
- package/dist/mod.js +0 -162
- package/dist/mod.js.map +1 -1
- package/dist/patch.js +0 -217
- package/dist/patch.js.map +1 -1
- package/dist/profile.d.ts +9 -0
- package/dist/profile.js +28 -0
- package/dist/profile.js.map +1 -0
- package/dist/provenance.js +0 -140
- package/dist/provenance.js.map +1 -1
- package/dist/query.js +0 -75
- package/dist/query.js.map +1 -1
- package/dist/reach.js +0 -43
- package/dist/reach.js.map +1 -1
- package/dist/relation.js +0 -61
- package/dist/relation.js.map +1 -1
- package/dist/report-sarif.d.ts +0 -11
- package/dist/report-sarif.js +0 -28
- package/dist/report-sarif.js.map +1 -1
- package/dist/sig.js +0 -35
- package/dist/sig.js.map +1 -1
- package/dist/sigdecl.js +1 -1
- package/dist/sigdecl.js.map +1 -1
- package/dist/siggate.js +0 -4
- package/dist/siggate.js.map +1 -1
- package/dist/site.js +3 -29
- package/dist/site.js.map +1 -1
- package/dist/subsume.d.ts +0 -10
- package/dist/subsume.js +0 -137
- package/dist/subsume.js.map +1 -1
- package/dist/template.d.ts +2 -1
- package/dist/template.js +58 -138
- package/dist/template.js.map +1 -1
- package/dist/trace.d.ts +21 -0
- package/dist/trace.js +107 -0
- package/dist/trace.js.map +1 -0
- package/dist/trim.js +0 -41
- package/dist/trim.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/type.js.map +1 -1
- package/dist/unify.js +13 -248
- package/dist/unify.js.map +1 -1
- package/dist/utility.js +0 -22
- package/dist/utility.js.map +1 -1
- package/dist/val/AbnfFuncVal.d.ts +18 -0
- package/dist/val/AbnfFuncVal.js +132 -0
- package/dist/val/AbnfFuncVal.js.map +1 -0
- package/dist/val/AbsentVal.d.ts +11 -0
- package/dist/val/AbsentVal.js +30 -0
- package/dist/val/AbsentVal.js.map +1 -0
- package/dist/val/AggFuncVal.d.ts +10 -1
- package/dist/val/AggFuncVal.js +104 -116
- package/dist/val/AggFuncVal.js.map +1 -1
- package/dist/val/ArithFuncVal.js +0 -12
- package/dist/val/ArithFuncVal.js.map +1 -1
- package/dist/val/BagVal.js +1 -78
- package/dist/val/BagVal.js.map +1 -1
- package/dist/val/BigDecimalVal.js +0 -16
- package/dist/val/BigDecimalVal.js.map +1 -1
- package/dist/val/BigIntegerVal.js +0 -16
- package/dist/val/BigIntegerVal.js.map +1 -1
- package/dist/val/CloseFuncVal.js +0 -9
- package/dist/val/CloseFuncVal.js.map +1 -1
- package/dist/val/CmpFuncVal.d.ts +2 -0
- package/dist/val/CmpFuncVal.js +49 -72
- package/dist/val/CmpFuncVal.js.map +1 -1
- package/dist/val/ConjunctVal.js +0 -29
- package/dist/val/ConjunctVal.js.map +1 -1
- package/dist/val/ConstraintVal.js +0 -500
- package/dist/val/ConstraintVal.js.map +1 -1
- package/dist/val/ContainerKindVal.js +0 -2
- package/dist/val/ContainerKindVal.js.map +1 -1
- package/dist/val/CopyFuncVal.js +0 -3
- package/dist/val/CopyFuncVal.js.map +1 -1
- package/dist/val/Decimal.js +0 -179
- package/dist/val/Decimal.js.map +1 -1
- package/dist/val/DeprecateFuncVal.js.map +1 -1
- package/dist/val/DisjunctVal.js +0 -152
- package/dist/val/DisjunctVal.js.map +1 -1
- package/dist/val/EachFuncVal.js +0 -3
- package/dist/val/EachFuncVal.js.map +1 -1
- package/dist/val/EmitFuncVal.d.ts +1 -1
- package/dist/val/EmitFuncVal.js +6 -119
- package/dist/val/EmitFuncVal.js.map +1 -1
- package/dist/val/ExpectVal.js +0 -62
- package/dist/val/ExpectVal.js.map +1 -1
- package/dist/val/FilterFuncVal.js +0 -25
- package/dist/val/FilterFuncVal.js.map +1 -1
- package/dist/val/FuncBaseVal.d.ts +1 -0
- package/dist/val/FuncBaseVal.js +7 -127
- package/dist/val/FuncBaseVal.js.map +1 -1
- package/dist/val/GraphAtomVal.js +0 -15
- package/dist/val/GraphAtomVal.js.map +1 -1
- package/dist/val/HideFuncVal.js +0 -13
- package/dist/val/HideFuncVal.js.map +1 -1
- package/dist/val/IntegerVal.js +0 -61
- package/dist/val/IntegerVal.js.map +1 -1
- package/dist/val/JunctionVal.js +0 -20
- package/dist/val/JunctionVal.js.map +1 -1
- package/dist/val/KeyFuncVal.js +0 -46
- package/dist/val/KeyFuncVal.js.map +1 -1
- package/dist/val/ListVal.js +0 -57
- package/dist/val/ListVal.js.map +1 -1
- package/dist/val/LowerFuncVal.js +0 -11
- package/dist/val/LowerFuncVal.js.map +1 -1
- package/dist/val/MapVal.js +0 -151
- package/dist/val/MapVal.js.map +1 -1
- package/dist/val/MatchFuncVal.js +0 -27
- package/dist/val/MatchFuncVal.js.map +1 -1
- package/dist/val/{FormFuncVal.d.ts → MaybeFuncVal.d.ts} +5 -5
- package/dist/val/MaybeFuncVal.js +50 -0
- package/dist/val/MaybeFuncVal.js.map +1 -0
- package/dist/val/MoveFuncVal.js +0 -18
- package/dist/val/MoveFuncVal.js.map +1 -1
- package/dist/val/NilVal.js +0 -60
- package/dist/val/NilVal.js.map +1 -1
- package/dist/val/NomFuncVal.js +18 -54
- package/dist/val/NomFuncVal.js.map +1 -1
- package/dist/val/NumberVal.js +0 -15
- package/dist/val/NumberVal.js.map +1 -1
- package/dist/val/OpBaseVal.d.ts +1 -0
- package/dist/val/OpBaseVal.js +3 -15
- package/dist/val/OpBaseVal.js.map +1 -1
- package/dist/val/PackFuncVal.js +0 -34
- package/dist/val/PackFuncVal.js.map +1 -1
- package/dist/val/PathFuncVal.js +0 -6
- package/dist/val/PathFuncVal.js.map +1 -1
- package/dist/val/PathVal.js +0 -41
- package/dist/val/PathVal.js.map +1 -1
- package/dist/val/PlaceVal.js +0 -25
- package/dist/val/PlaceVal.js.map +1 -1
- package/dist/val/PlusOpVal.d.ts +1 -7
- package/dist/val/PlusOpVal.js +13 -74
- package/dist/val/PlusOpVal.js.map +1 -1
- package/dist/val/PrefFuncVal.js +0 -1
- package/dist/val/PrefFuncVal.js.map +1 -1
- package/dist/val/PrefVal.js +0 -167
- package/dist/val/PrefVal.js.map +1 -1
- package/dist/val/RecurseVal.js +0 -55
- package/dist/val/RecurseVal.js.map +1 -1
- package/dist/val/RefVal.js +0 -282
- package/dist/val/RefVal.js.map +1 -1
- package/dist/val/ReferFuncVal.js +3 -232
- package/dist/val/ReferFuncVal.js.map +1 -1
- package/dist/val/ScalarKindVal.js +0 -49
- package/dist/val/ScalarKindVal.js.map +1 -1
- package/dist/val/ScalarVal.js +0 -11
- package/dist/val/ScalarVal.js.map +1 -1
- package/dist/val/StrFuncVal.js +0 -18
- package/dist/val/StrFuncVal.js.map +1 -1
- package/dist/val/SuperFuncVal.js +0 -32
- package/dist/val/SuperFuncVal.js.map +1 -1
- package/dist/val/TopVal.js +0 -1
- package/dist/val/TopVal.js.map +1 -1
- package/dist/val/TranslateFuncVal.js +1 -3
- package/dist/val/TranslateFuncVal.js.map +1 -1
- package/dist/val/UpperFuncVal.js +0 -11
- package/dist/val/UpperFuncVal.js.map +1 -1
- package/dist/val/Val.d.ts +1 -0
- package/dist/val/Val.js +2 -133
- package/dist/val/Val.js.map +1 -1
- package/dist/val/VarVal.js +0 -12
- package/dist/val/VarVal.js.map +1 -1
- package/dist/val/arith.js +0 -37
- package/dist/val/arith.js.map +1 -1
- package/dist/val/caserange.js +0 -61
- package/dist/val/caserange.js.map +1 -1
- package/dist/val/members.js +0 -6
- package/dist/val/members.js.map +1 -1
- package/dist/val/numcmp.js +0 -11
- package/dist/val/numcmp.js.map +1 -1
- package/dist/val/numkind.js +0 -145
- package/dist/val/numkind.js.map +1 -1
- package/dist/val/valutil.js +0 -16
- package/dist/val/valutil.js.map +1 -1
- package/dist/vet.js +0 -461
- package/dist/vet.js.map +1 -1
- package/dist/view.js +0 -414
- package/dist/view.js.map +1 -1
- package/dist/walk.js +0 -41
- package/dist/walk.js.map +1 -1
- package/grammar/aontu.abnf +8 -6
- package/grammar/aontu.gbnf +4 -4
- package/grammar/aontu.lark +4 -4
- package/grammar/aontu.tmLanguage.json +1 -1
- package/package.json +4 -2
- package/skill/tasks.md +9 -7
- package/src/agentsmd.ts +0 -35
- package/src/alias.ts +0 -39
- package/src/allow.ts +1 -96
- package/src/aontu.ts +4 -116
- package/src/aontumodel.ts +26 -0
- package/src/casing.ts +95 -0
- package/src/cli.ts +258 -1024
- package/src/ctx.ts +0 -103
- package/src/diff.ts +0 -40
- package/src/err.ts +0 -40
- package/src/escape.ts +0 -46
- package/src/exactjson.ts +0 -131
- package/src/format.ts +14 -257
- package/src/grammar.ts +72 -0
- package/src/graph.ts +0 -61
- package/src/hcanon.ts +0 -82
- package/src/helpdoc.ts +2 -2
- package/src/hints.ts +69 -57
- package/src/jsonschema.ts +0 -123
- package/src/keyorder.ts +0 -42
- package/src/lang.ts +19 -931
- package/src/lsp-server.ts +0 -16
- package/src/lsp.ts +12 -180
- package/src/mcp-server.ts +0 -31
- package/src/mcp.ts +0 -169
- package/src/mod-tool.ts +18 -159
- package/src/mod.ts +0 -178
- package/src/patch.ts +0 -232
- package/src/profile.ts +42 -0
- package/src/provenance.ts +0 -183
- package/src/query.ts +0 -84
- package/src/reach.ts +0 -53
- package/src/relation.ts +0 -84
- package/src/report-sarif.ts +0 -48
- package/src/sig.ts +0 -35
- package/src/sigdecl.ts +1 -1
- package/src/siggate.ts +0 -30
- package/src/site.ts +3 -29
- package/src/subsume.ts +1 -161
- package/src/template.ts +69 -140
- package/src/trace.ts +157 -0
- package/src/trim.ts +0 -53
- package/src/type.ts +2 -45
- package/src/unify.ts +14 -257
- package/src/utility.ts +0 -31
- package/src/val/AbnfFuncVal.ts +181 -0
- package/src/val/AbsentVal.ts +54 -0
- package/src/val/AggFuncVal.ts +152 -188
- package/src/val/ArithFuncVal.ts +0 -20
- package/src/val/BagVal.ts +1 -78
- package/src/val/BigDecimalVal.ts +0 -16
- package/src/val/BigIntegerVal.ts +0 -16
- package/src/val/CloseFuncVal.ts +0 -9
- package/src/val/CmpFuncVal.ts +68 -184
- package/src/val/ConjunctVal.ts +0 -33
- package/src/val/ConstraintVal.ts +2 -537
- package/src/val/ContainerKindVal.ts +0 -18
- package/src/val/CopyFuncVal.ts +0 -5
- package/src/val/Decimal.ts +1 -185
- package/src/val/DeprecateFuncVal.ts +0 -10
- package/src/val/DisjunctVal.ts +0 -157
- package/src/val/EachFuncVal.ts +0 -40
- package/src/val/EmitFuncVal.ts +8 -208
- package/src/val/ExpectVal.ts +0 -62
- package/src/val/FilterFuncVal.ts +0 -55
- package/src/val/FuncBaseVal.ts +9 -130
- package/src/val/GraphAtomVal.ts +0 -42
- package/src/val/HideFuncVal.ts +0 -15
- package/src/val/IntegerVal.ts +0 -61
- package/src/val/JunctionVal.ts +0 -20
- package/src/val/KeyFuncVal.ts +0 -48
- package/src/val/ListVal.ts +0 -59
- package/src/val/LowerFuncVal.ts +0 -12
- package/src/val/MapVal.ts +0 -151
- package/src/val/MatchFuncVal.ts +0 -59
- package/src/val/MaybeFuncVal.ts +86 -0
- package/src/val/MoveFuncVal.ts +0 -20
- package/src/val/NilVal.ts +0 -60
- package/src/val/NomFuncVal.ts +10 -99
- package/src/val/NumberVal.ts +0 -16
- package/src/val/OpBaseVal.ts +4 -17
- package/src/val/PackFuncVal.ts +0 -63
- package/src/val/PathFuncVal.ts +0 -32
- package/src/val/PathVal.ts +0 -66
- package/src/val/PlaceVal.ts +0 -45
- package/src/val/PlusOpVal.ts +18 -75
- package/src/val/PrefFuncVal.ts +0 -1
- package/src/val/PrefVal.ts +0 -179
- package/src/val/RecurseVal.ts +0 -81
- package/src/val/RefVal.ts +1 -285
- package/src/val/ReferFuncVal.ts +4 -255
- package/src/val/ScalarKindVal.ts +0 -50
- package/src/val/ScalarVal.ts +0 -12
- package/src/val/StrFuncVal.ts +0 -44
- package/src/val/SuperFuncVal.ts +0 -42
- package/src/val/TopVal.ts +0 -1
- package/src/val/TranslateFuncVal.ts +1 -51
- package/src/val/UpperFuncVal.ts +0 -12
- package/src/val/Val.ts +3 -192
- package/src/val/VarVal.ts +0 -15
- package/src/val/arith.ts +0 -92
- package/src/val/caserange.ts +0 -62
- package/src/val/members.ts +0 -23
- package/src/val/numcmp.ts +1 -27
- package/src/val/numkind.ts +0 -149
- package/src/val/valutil.ts +0 -16
- package/src/vet.ts +1 -582
- package/src/view.ts +0 -507
- package/src/walk.ts +0 -41
- package/dist/lower.d.ts +0 -23
- package/dist/lower.js +0 -578
- package/dist/lower.js.map +0 -1
- package/dist/render.d.ts +0 -53
- package/dist/render.js +0 -547
- package/dist/render.js.map +0 -1
- package/dist/std.d.ts +0 -3
- package/dist/std.js +0 -672
- package/dist/std.js.map +0 -1
- package/dist/val/FormFuncVal.js +0 -55
- package/dist/val/FormFuncVal.js.map +0 -1
- package/dist/val/NamerFuncVal.d.ts +0 -12
- package/dist/val/NamerFuncVal.js +0 -176
- package/dist/val/NamerFuncVal.js.map +0 -1
- package/src/lower.ts +0 -636
- package/src/render.ts +0 -732
- 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
|
|
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,
|