aontu 0.63.0 → 0.65.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 (101) hide show
  1. package/README.md +8 -8
  2. package/dist/agentsmd.js +3 -3
  3. package/dist/agentsmd.js.map +1 -1
  4. package/dist/aontu.d.ts +3 -3
  5. package/dist/aontu.js +4 -6
  6. package/dist/aontu.js.map +1 -1
  7. package/dist/aontumodel.js +6 -12
  8. package/dist/aontumodel.js.map +1 -1
  9. package/dist/casing.d.ts +5 -0
  10. package/dist/casing.js +90 -0
  11. package/dist/casing.js.map +1 -0
  12. package/dist/cli.d.ts +16 -3
  13. package/dist/cli.js +653 -455
  14. package/dist/cli.js.map +1 -1
  15. package/dist/compat.d.ts +7 -0
  16. package/dist/compat.js +113 -0
  17. package/dist/compat.js.map +1 -0
  18. package/dist/helpdoc.js +5 -5
  19. package/dist/helpdoc.js.map +1 -1
  20. package/dist/hints.js +14 -5
  21. package/dist/hints.js.map +1 -1
  22. package/dist/lang.d.ts +1 -0
  23. package/dist/lang.js +8 -0
  24. package/dist/lang.js.map +1 -1
  25. package/dist/lsp.d.ts +1 -1
  26. package/dist/mcp.js +0 -36
  27. package/dist/mcp.js.map +1 -1
  28. package/dist/mod.d.ts +18 -3
  29. package/dist/mod.js +117 -46
  30. package/dist/mod.js.map +1 -1
  31. package/dist/pkg-net.d.ts +227 -0
  32. package/dist/pkg-net.js +1598 -0
  33. package/dist/pkg-net.js.map +1 -0
  34. package/dist/pkg-zip.d.ts +8 -0
  35. package/dist/pkg-zip.js +196 -0
  36. package/dist/pkg-zip.js.map +1 -0
  37. package/dist/pkg.d.ts +159 -0
  38. package/dist/pkg.js +767 -0
  39. package/dist/pkg.js.map +1 -0
  40. package/dist/profile.d.ts +9 -0
  41. package/dist/profile.js +28 -0
  42. package/dist/profile.js.map +1 -0
  43. package/dist/report-sarif.js +1 -1
  44. package/dist/report-sarif.js.map +1 -1
  45. package/dist/subsume.d.ts +3 -1
  46. package/dist/subsume.js +2 -0
  47. package/dist/subsume.js.map +1 -1
  48. package/dist/trace.d.ts +21 -0
  49. package/dist/trace.js +107 -0
  50. package/dist/trace.js.map +1 -0
  51. package/dist/tsconfig.tsbuildinfo +1 -1
  52. package/dist/unify.js +1 -6
  53. package/dist/unify.js.map +1 -1
  54. package/dist/val/CmpFuncVal.d.ts +2 -0
  55. package/dist/val/CmpFuncVal.js +47 -13
  56. package/dist/val/CmpFuncVal.js.map +1 -1
  57. package/dist/val/NomFuncVal.js +11 -13
  58. package/dist/val/NomFuncVal.js.map +1 -1
  59. package/dist/val/ReferFuncVal.js +3 -0
  60. package/dist/val/ReferFuncVal.js.map +1 -1
  61. package/package.json +1 -1
  62. package/skill/SKILL.md +3 -3
  63. package/skill/error-codes.md +4 -4
  64. package/skill/examples.md +4 -4
  65. package/skill/grammar-card.md +1 -1
  66. package/skill/init/check.sh +2 -2
  67. package/skill/tasks.md +14 -12
  68. package/src/agentsmd.ts +3 -3
  69. package/src/aontu.ts +3 -8
  70. package/src/aontumodel.ts +6 -12
  71. package/src/casing.ts +95 -0
  72. package/src/cli.ts +758 -495
  73. package/src/compat.ts +148 -0
  74. package/src/helpdoc.ts +5 -5
  75. package/src/hints.ts +14 -7
  76. package/src/lang.ts +9 -1
  77. package/src/mcp.ts +0 -39
  78. package/src/mod.ts +142 -51
  79. package/src/pkg-net.ts +1945 -0
  80. package/src/pkg-zip.ts +228 -0
  81. package/src/pkg.ts +1018 -0
  82. package/src/profile.ts +42 -0
  83. package/src/report-sarif.ts +1 -1
  84. package/src/subsume.ts +2 -2
  85. package/src/trace.ts +157 -0
  86. package/src/unify.ts +1 -6
  87. package/src/val/CmpFuncVal.ts +66 -20
  88. package/src/val/NomFuncVal.ts +3 -5
  89. package/src/val/ReferFuncVal.ts +4 -0
  90. package/dist/lower.d.ts +0 -23
  91. package/dist/lower.js +0 -528
  92. package/dist/lower.js.map +0 -1
  93. package/dist/mod-tool.d.ts +0 -58
  94. package/dist/mod-tool.js +0 -403
  95. package/dist/mod-tool.js.map +0 -1
  96. package/dist/render.d.ts +0 -53
  97. package/dist/render.js +0 -432
  98. package/dist/render.js.map +0 -1
  99. package/src/lower.ts +0 -586
  100. package/src/mod-tool.ts +0 -561
  101. package/src/render.ts +0 -580
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pkg-net.js","sourceRoot":"","sources":["../src/pkg-net.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export type ZipEntry = {
2
+ path: string;
3
+ data: Uint8Array;
4
+ };
5
+ export declare function cmpBytes(a: string, b: string): number;
6
+ export declare function sha256Hex(data: Uint8Array): string;
7
+ export declare function zipCanonical(entries: ZipEntry[]): Uint8Array;
8
+ export declare function unzipCanonical(zip: Uint8Array): ZipEntry[];
@@ -0,0 +1,196 @@
1
+ "use strict";
2
+ /* Copyright (c) 2025 Richard Rodger, MIT License */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.cmpBytes = cmpBytes;
5
+ exports.sha256Hex = sha256Hex;
6
+ exports.zipCanonical = zipCanonical;
7
+ exports.unzipCanonical = unzipCanonical;
8
+ const node_crypto_1 = require("node:crypto");
9
+ const LOCAL_SIG = 0x04034b50;
10
+ const CENTRAL_SIG = 0x02014b50;
11
+ const END_SIG = 0x06054b50;
12
+ const DOS_EPOCH_DATE = 0x0021;
13
+ let CRC_TABLE;
14
+ function crc32(data) {
15
+ if (undefined === CRC_TABLE) {
16
+ CRC_TABLE = new Uint32Array(256);
17
+ for (let n = 0; n < 256; n++) {
18
+ let c = n;
19
+ for (let k = 0; k < 8; k++) {
20
+ c = 0 !== (c & 1) ? 0xedb88320 ^ (c >>> 1) : c >>> 1;
21
+ }
22
+ CRC_TABLE[n] = c >>> 0;
23
+ }
24
+ }
25
+ let crc = 0xffffffff;
26
+ for (let i = 0; i < data.length; i++) {
27
+ crc = CRC_TABLE[(crc ^ data[i]) & 0xff] ^ (crc >>> 8);
28
+ }
29
+ return (crc ^ 0xffffffff) >>> 0;
30
+ }
31
+ function cmpBytes(a, b) {
32
+ return a < b ? -1 : a > b ? 1 : 0;
33
+ }
34
+ function sha256Hex(data) {
35
+ return 'sha256:' + (0, node_crypto_1.createHash)('sha256').update(data).digest('hex');
36
+ }
37
+ class Writer {
38
+ constructor() {
39
+ this.parts = [];
40
+ this.size = 0;
41
+ }
42
+ u16(n) {
43
+ this.bytes(new Uint8Array([n & 0xff, (n >>> 8) & 0xff]));
44
+ }
45
+ u32(n) {
46
+ this.bytes(new Uint8Array([
47
+ n & 0xff, (n >>> 8) & 0xff, (n >>> 16) & 0xff, (n >>> 24) & 0xff
48
+ ]));
49
+ }
50
+ bytes(b) {
51
+ this.parts.push(b);
52
+ this.size += b.length;
53
+ }
54
+ out() {
55
+ const all = new Uint8Array(this.size);
56
+ let at = 0;
57
+ for (const p of this.parts) {
58
+ all.set(p, at);
59
+ at += p.length;
60
+ }
61
+ return all;
62
+ }
63
+ }
64
+ function zipCanonical(entries) {
65
+ const sorted = [...entries].sort((a, b) => cmpBytes(a.path, b.path));
66
+ const w = new Writer();
67
+ const central = new Writer();
68
+ const enc = new TextEncoder();
69
+ for (const e of sorted) {
70
+ const name = enc.encode(e.path);
71
+ const crc = crc32(e.data);
72
+ const offset = w.size;
73
+ w.u32(LOCAL_SIG);
74
+ w.u16(10);
75
+ w.u16(0);
76
+ w.u16(0);
77
+ w.u16(0);
78
+ w.u16(DOS_EPOCH_DATE);
79
+ w.u32(crc);
80
+ w.u32(e.data.length);
81
+ w.u32(e.data.length);
82
+ w.u16(name.length);
83
+ w.u16(0);
84
+ w.bytes(name);
85
+ w.bytes(e.data);
86
+ central.u32(CENTRAL_SIG);
87
+ central.u16(10);
88
+ central.u16(10);
89
+ central.u16(0);
90
+ central.u16(0);
91
+ central.u16(0);
92
+ central.u16(DOS_EPOCH_DATE);
93
+ central.u32(crc);
94
+ central.u32(e.data.length);
95
+ central.u32(e.data.length);
96
+ central.u16(name.length);
97
+ central.u16(0);
98
+ central.u16(0);
99
+ central.u16(0);
100
+ central.u16(0);
101
+ central.u32(0);
102
+ central.u32(offset);
103
+ central.bytes(name);
104
+ }
105
+ const cdOffset = w.size;
106
+ const cd = central.out();
107
+ w.bytes(cd);
108
+ w.u32(END_SIG);
109
+ w.u16(0);
110
+ w.u16(0);
111
+ w.u16(sorted.length);
112
+ w.u16(sorted.length);
113
+ w.u32(cd.length);
114
+ w.u32(cdOffset);
115
+ w.u16(0);
116
+ return w.out();
117
+ }
118
+ function u16(b, at) {
119
+ return b[at] | (b[at + 1] << 8);
120
+ }
121
+ function u32(b, at) {
122
+ return (b[at] | (b[at + 1] << 8) | (b[at + 2] << 16)) + b[at + 3] * 0x1000000;
123
+ }
124
+ // Read a canonical archive, refusing any shape the writer above would
125
+ // not have produced: the digest was taken over the canonical bytes, so
126
+ // a non-canonical archive is a corrupted one whatever it unpacks to.
127
+ function unzipCanonical(zip) {
128
+ const bad = (why) => {
129
+ throw new Error('archive is not canonical: ' + why);
130
+ };
131
+ if (zip.length < 22 || END_SIG !== u32(zip, zip.length - 22)) {
132
+ bad('no end record');
133
+ }
134
+ const end = zip.length - 22;
135
+ const count = u16(zip, end + 10);
136
+ const cdSize = u32(zip, end + 12);
137
+ const cdOffset = u32(zip, end + 16);
138
+ if (0 !== u16(zip, end + 4) || 0 !== u16(zip, end + 6) ||
139
+ count !== u16(zip, end + 8) || 0 !== u16(zip, end + 20) ||
140
+ cdOffset + cdSize !== end) {
141
+ bad('end record');
142
+ }
143
+ const dec = new TextDecoder('utf-8', { fatal: true });
144
+ const out = [];
145
+ let at = cdOffset;
146
+ let prev;
147
+ let expectLocal = 0;
148
+ for (let i = 0; i < count; i++) {
149
+ if (at + 46 > end || CENTRAL_SIG !== u32(zip, at)) {
150
+ bad('central directory');
151
+ }
152
+ const crc = u32(zip, at + 16);
153
+ const csize = u32(zip, at + 20);
154
+ const usize = u32(zip, at + 24);
155
+ const nameLen = u16(zip, at + 28);
156
+ const offset = u32(zip, at + 42);
157
+ if (10 !== u16(zip, at + 4) || 10 !== u16(zip, at + 6) ||
158
+ 0 !== u16(zip, at + 8) || 0 !== u16(zip, at + 10) ||
159
+ 0 !== u16(zip, at + 12) || DOS_EPOCH_DATE !== u16(zip, at + 14) ||
160
+ csize !== usize || 0 !== u16(zip, at + 30) || 0 !== u16(zip, at + 32) ||
161
+ 0 !== u16(zip, at + 34) || 0 !== u16(zip, at + 36) ||
162
+ 0 !== u32(zip, at + 38) || offset !== expectLocal) {
163
+ bad('entry ' + i);
164
+ }
165
+ const name = dec.decode(zip.subarray(at + 46, at + 46 + nameLen));
166
+ if (undefined !== prev && 0 <= cmpBytes(prev, name)) {
167
+ bad('entries out of order at ' + name);
168
+ }
169
+ prev = name;
170
+ at += 46 + nameLen;
171
+ if (offset + 30 + nameLen > cdOffset || LOCAL_SIG !== u32(zip, offset) ||
172
+ 10 !== u16(zip, offset + 4) || 0 !== u16(zip, offset + 6) ||
173
+ 0 !== u16(zip, offset + 8) || 0 !== u16(zip, offset + 10) ||
174
+ DOS_EPOCH_DATE !== u16(zip, offset + 12) || crc !== u32(zip, offset + 14) ||
175
+ usize !== u32(zip, offset + 18) || usize !== u32(zip, offset + 22) ||
176
+ nameLen !== u16(zip, offset + 26) || 0 !== u16(zip, offset + 28) ||
177
+ name !== dec.decode(zip.subarray(offset + 30, offset + 30 + nameLen))) {
178
+ bad('local header of ' + name);
179
+ }
180
+ const start = offset + 30 + nameLen;
181
+ if (start + usize > cdOffset) {
182
+ bad('data of ' + name);
183
+ }
184
+ const data = zip.slice(start, start + usize);
185
+ if (crc32(data) !== crc) {
186
+ bad('checksum of ' + name);
187
+ }
188
+ out.push({ path: name, data });
189
+ expectLocal = start + usize;
190
+ }
191
+ if (expectLocal !== cdOffset) {
192
+ bad('trailing bytes');
193
+ }
194
+ return out;
195
+ }
196
+ //# sourceMappingURL=pkg-zip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pkg-zip.js","sourceRoot":"","sources":["../src/pkg-zip.ts"],"names":[],"mappings":"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"}
package/dist/pkg.d.ts ADDED
@@ -0,0 +1,159 @@
1
+ export declare const VERSION_RE: RegExp;
2
+ export declare const ARCHIVE_LIMITS: {
3
+ bytes: number;
4
+ unpacked: number;
5
+ files: number;
6
+ fileBytes: number;
7
+ };
8
+ export type LockEntry = {
9
+ key: string;
10
+ v: string;
11
+ canon: string;
12
+ archive: string;
13
+ manifest?: string;
14
+ pkg?: string;
15
+ };
16
+ export type PkgTidyReport = {
17
+ verdict: 'ok' | 'missing' | 'error';
18
+ lock: LockEntry[];
19
+ missing: string[];
20
+ unevaluable: string[];
21
+ forbidden: string[];
22
+ };
23
+ export type PkgMismatch = {
24
+ key: string;
25
+ pin: 'archive' | 'manifest' | 'canon';
26
+ want: string;
27
+ got: string;
28
+ };
29
+ export type PkgVerifyReport = {
30
+ verdict: 'ok' | 'mismatch' | 'unlocked' | 'missing';
31
+ verified: string[];
32
+ mismatched: PkgMismatch[];
33
+ unlocked: string[];
34
+ missing: string[];
35
+ };
36
+ export type PkgVendorReport = {
37
+ verdict: 'ok' | 'missing';
38
+ vendored: string[];
39
+ missing: string[];
40
+ };
41
+ export type PkgRefreezeReport = {
42
+ verdict: 'ok' | 'missing' | 'error';
43
+ repinned: {
44
+ key: string;
45
+ from: string;
46
+ to: string;
47
+ }[];
48
+ unchanged: string[];
49
+ missing: string[];
50
+ unevaluable: string[];
51
+ };
52
+ export type PkgTreeNode = {
53
+ key: string;
54
+ v: string;
55
+ deps: string[];
56
+ };
57
+ export type PkgTreeReport = {
58
+ verdict: 'ok' | 'missing';
59
+ root: string;
60
+ nodes: PkgTreeNode[];
61
+ missing: string[];
62
+ };
63
+ export type PkgToolEval = (src: string, path: string) => {
64
+ gen: any;
65
+ hash: string;
66
+ canon: string;
67
+ ok: boolean;
68
+ };
69
+ export type PkgToolOptions = {
70
+ cache?: string;
71
+ eval: PkgToolEval;
72
+ };
73
+ export type Dependency = {
74
+ v: string;
75
+ pkg?: string;
76
+ };
77
+ export declare function declaredDeps(file: string, options: PkgToolOptions): Record<string, Dependency>;
78
+ export declare function versionCompare(a: string, b: string): number;
79
+ export declare function usableKey(key: string): boolean;
80
+ export declare function storeDir(root: string, key: string, canon: string, pkg: string, options: PkgToolOptions, v?: string): string | undefined;
81
+ export declare function downloadedCanon(cache: string, pkg: string, v: string): string | undefined;
82
+ export declare function readLock(root: string): Record<string, LockEntry>;
83
+ export declare function lockText(entries: LockEntry[], options: PkgToolOptions): string;
84
+ export declare const LOCK_HEADER = "# pkg-lock.aon (generated by `aontu sync`; do not edit)\n";
85
+ export declare function writeLock(root: string, entries: LockEntry[], options: PkgToolOptions): void;
86
+ export type PackageSelf = {
87
+ path: string;
88
+ version: string;
89
+ main: string;
90
+ publish: 'public' | 'private';
91
+ moved?: string;
92
+ retract: string[];
93
+ };
94
+ export declare function packageSelf(dir: string, options: PkgToolOptions): PackageSelf;
95
+ export declare const ARCHIVE_SOURCE_EXT: string[];
96
+ export declare const ARCHIVE_DATA_EXT: string[];
97
+ export declare const ARCHIVE_TEXT_EXT: string[];
98
+ export declare const ARCHIVE_NAMED: string[];
99
+ export declare function archiveAdmits(rel: string): boolean;
100
+ export type ArchiveFile = {
101
+ path: string;
102
+ digest: string;
103
+ size: number;
104
+ };
105
+ export type Archive = {
106
+ zip: Uint8Array;
107
+ digest: string;
108
+ size: number;
109
+ files: ArchiveFile[];
110
+ forbidden: string[];
111
+ };
112
+ export declare function archiveOf(dir: string): Archive;
113
+ export declare function storedManifest(dir: string): {
114
+ digest: string;
115
+ files: ArchiveFile[];
116
+ } | undefined;
117
+ export declare function pkgTidy(root: string, options: PkgToolOptions): PkgTidyReport;
118
+ export declare function pkgResolve(root: string, options: PkgToolOptions): PkgTidyReport;
119
+ export declare function targetOf(key: string, dep?: Dependency, prev?: LockEntry): string;
120
+ export declare function pkgVerify(root: string, options: PkgToolOptions): PkgVerifyReport;
121
+ export declare function pkgVendor(root: string, options: PkgToolOptions): PkgVendorReport;
122
+ export declare function vendorCopy(from: string, to: string): void;
123
+ export declare function copyTree(from: string, to: string): void;
124
+ export declare function archiveOverCaps(archive: Archive): string[];
125
+ export declare const REL_PATH_MAX_ELEMENTS = 32;
126
+ export declare function relPathError(p: string): string | undefined;
127
+ export declare function pkgRefreeze(root: string, options: PkgToolOptions): PkgRefreezeReport;
128
+ export declare function pkgTree(root: string, options: PkgToolOptions): PkgTreeReport;
129
+ export declare const MANIFEST_SCHEMA = "aontu-package/v1";
130
+ export type ManifestModule = {
131
+ path: string;
132
+ main: string;
133
+ canon: string;
134
+ };
135
+ export type PkgManifest = {
136
+ schema: typeof MANIFEST_SCHEMA;
137
+ package: string;
138
+ version: string;
139
+ publish: 'public' | 'private';
140
+ archive: {
141
+ format: 'zip';
142
+ digest: string;
143
+ size: number;
144
+ files: ArchiveFile[];
145
+ };
146
+ modules: ManifestModule[];
147
+ deps: Record<string, Dependency>;
148
+ retract?: string[];
149
+ moved?: string;
150
+ };
151
+ export type PkgManifestReport = {
152
+ verdict: 'ok' | 'breaking' | 'undecided' | 'error';
153
+ manifest?: PkgManifest;
154
+ missing: string[];
155
+ forbidden: string[];
156
+ findings: any[];
157
+ };
158
+ export declare function pkgManifest(root: string, options: PkgToolOptions, against?: string): PkgManifestReport;
159
+ export declare function manifestText(m: PkgManifest, options: PkgToolOptions, extra?: Record<string, any>): string;