@cortexkit/aft-bridge 0.48.0 → 0.49.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.
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Host-neutral error adaptation for agent tool failures.
3
+ *
4
+ * The Rust response owns the logical code, message, and structured fields. Host
5
+ * adapters may attach those values to their native error surface, but must not
6
+ * rewrite the contract-owned message while doing so.
7
+ */
8
+ export interface AftToolErrorCause {
9
+ code: string;
10
+ message: string;
11
+ response: Record<string, unknown>;
12
+ }
13
+ export declare class AftToolError extends Error {
14
+ readonly code: string;
15
+ readonly response: Record<string, unknown>;
16
+ readonly cause: AftToolErrorCause;
17
+ constructor(message: string, code: string, response: Record<string, unknown>);
18
+ }
19
+ /**
20
+ * Lift a failed bridge response into a host error without losing its logical
21
+ * code or structured response fields.
22
+ */
23
+ export declare function toolErrorFromResponse(command: string, response: Record<string, unknown>): AftToolError;
24
+ //# sourceMappingURL=error-contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-contract.d.ts","sourceRoot":"","sources":["../src/error-contract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,qBAAa,YAAa,SAAQ,KAAK;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,SAAiB,KAAK,EAAE,iBAAiB,CAAC;gBAE9B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAO7E;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,YAAY,CAQd"}
@@ -0,0 +1,23 @@
1
+ export class AftToolError extends Error {
2
+ code;
3
+ response;
4
+ constructor(message, code, response) {
5
+ const cause = { code, message, response };
6
+ super(message, { cause });
7
+ this.name = "AftToolError";
8
+ this.code = code;
9
+ this.response = response;
10
+ }
11
+ }
12
+ /**
13
+ * Lift a failed bridge response into a host error without losing its logical
14
+ * code or structured response fields.
15
+ */
16
+ export function toolErrorFromResponse(command, response) {
17
+ const code = typeof response.code === "string" && response.code.length > 0 ? response.code : "unknown_error";
18
+ const message = typeof response.message === "string" && response.message.length > 0
19
+ ? response.message
20
+ : `${command} failed`;
21
+ return new AftToolError(message, code, response);
22
+ }
23
+ //# sourceMappingURL=error-contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-contract.js","sourceRoot":"","sources":["../src/error-contract.ts"],"names":[],"mappings":"AAaA,MAAM,OAAO,YAAa,SAAQ,KAAK;IAC5B,IAAI,CAAS;IACb,QAAQ,CAA0B;IAG3C,YAAY,OAAe,EAAE,IAAY,EAAE,QAAiC;QAC1E,MAAM,KAAK,GAAsB,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;QAC7D,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAe,EACf,QAAiC;IAEjC,MAAM,IAAI,GACR,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC;IAClG,MAAM,OAAO,GACX,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QACjE,CAAC,CAAC,QAAQ,CAAC,OAAO;QAClB,CAAC,CAAC,GAAG,OAAO,SAAS,CAAC;IAC1B,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC"}
package/dist/index.d.ts CHANGED
@@ -24,6 +24,7 @@ export type { RotatingLogOptions } from "./durable-log.js";
24
24
  export { DEFAULT_LOG_BYTES, DEFAULT_LOG_GENERATIONS, RotatingLogSink, resolveAftLogPath, resolveAftStorageRoot, } from "./durable-log.js";
25
25
  export type { EditSummaryInput } from "./edit-summary.js";
26
26
  export { formatEditSummary } from "./edit-summary.js";
27
+ export { AftToolError, type AftToolErrorCause, toolErrorFromResponse } from "./error-contract.js";
27
28
  export { compressionSavingsPercent, formatTokenCount } from "./format.js";
28
29
  export { stripJsoncSymbols } from "./jsonc.js";
29
30
  export type { Logger, LogMeta } from "./logger.js";
@@ -32,6 +33,7 @@ export { ensureStorageMigrated, getMigrationStatus, migrateAftConfigFile, resolv
32
33
  export type { ResolvedNpm } from "./npm-resolver.js";
33
34
  export { isNpmAvailable, npmSpawnEnv, probeNpmVersion, resolveNpm, } from "./npm-resolver.js";
34
35
  export { __test__ as __onnxTest__, cleanupOnnxRuntime, ensureOnnxRuntime, getManualInstallHint, isOrtAutoDownloadSupported, } from "./onnx-runtime.js";
36
+ export { InvalidRequestError, isWellFormedUnicodeString, prepareCanonicalEditArguments, prepareCanonicalPathArguments, } from "./path-aliases.js";
35
37
  export type { LegacyAftConfigSource, ResolvedAftConfigPaths } from "./paths.js";
36
38
  export { decodeFileUrl, markAnnouncementSeen, repairRootScopedStorageFile, resolveCortexKitConfigPaths, resolveCortexKitProjectConfigPath, resolveCortexKitUserConfigPath, resolveHarnessStoragePath, resolveLegacyAftConfigSources, shouldShowAnnouncement, } from "./paths.js";
37
39
  export { PLATFORM_ARCH_MAP, PLATFORM_ASSET_MAP } from "./platform.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -25,6 +25,8 @@ export { downloadBinary, ensureBinary, getBinaryName, getCacheDir, getCachedBina
25
25
  // --- durable module/plugin logs ---
26
26
  export { DEFAULT_LOG_BYTES, DEFAULT_LOG_GENERATIONS, RotatingLogSink, resolveAftLogPath, resolveAftStorageRoot, } from "./durable-log.js";
27
27
  export { formatEditSummary } from "./edit-summary.js";
28
+ // --- host-neutral agent tool errors ---
29
+ export { AftToolError, toolErrorFromResponse } from "./error-contract.js";
28
30
  // --- compact UI formatting ---
29
31
  export { compressionSavingsPercent, formatTokenCount } from "./format.js";
30
32
  // --- jsonc helpers ---
@@ -34,6 +36,7 @@ export { ensureStorageMigrated, getMigrationStatus, migrateAftConfigFile, resolv
34
36
  export { isNpmAvailable, npmSpawnEnv, probeNpmVersion, resolveNpm, } from "./npm-resolver.js";
35
37
  // --- ONNX runtime ---
36
38
  export { __test__ as __onnxTest__, cleanupOnnxRuntime, ensureOnnxRuntime, getManualInstallHint, isOrtAutoDownloadSupported, } from "./onnx-runtime.js";
39
+ export { InvalidRequestError, isWellFormedUnicodeString, prepareCanonicalEditArguments, prepareCanonicalPathArguments, } from "./path-aliases.js";
37
40
  export { decodeFileUrl, markAnnouncementSeen, repairRootScopedStorageFile, resolveCortexKitConfigPaths, resolveCortexKitProjectConfigPath, resolveCortexKitUserConfigPath, resolveHarnessStoragePath, resolveLegacyAftConfigSources, shouldShowAnnouncement, } from "./paths.js";
38
41
  // --- platform helpers ---
39
42
  export { PLATFORM_ARCH_MAP, PLATFORM_ASSET_MAP } from "./platform.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Canonical path aliases accepted at host and subc preparation boundaries.
3
+ *
4
+ * Compatibility is intentionally about decoded string values only. The
5
+ * preparation layer must not trim, normalize, fold case, rewrite separators,
6
+ * or resolve paths before comparing the two spellings.
7
+ */
8
+ import { AftToolError } from "./error-contract.js";
9
+ export type CanonicalPathTool = "read" | "write" | "edit" | "zoom" | "callgraph" | "safety" | "move" | "import" | "refactor" | "grep" | "search" | "conflicts";
10
+ export declare class InvalidRequestError extends AftToolError {
11
+ constructor(message: string);
12
+ }
13
+ /** Return false for lone UTF-16 surrogate code units. */
14
+ export declare function isWellFormedUnicodeString(value: string): boolean;
15
+ /**
16
+ * Prepare raw arguments for one registered tool before schema validation.
17
+ *
18
+ * The returned object is a fresh object, and nested zoom targets are copied,
19
+ * so an alias conflict or invalid value cannot partially mutate caller state.
20
+ */
21
+ export declare function prepareCanonicalPathArguments(toolName: string, rawArguments: unknown): Record<string, unknown>;
22
+ /**
23
+ * Normalize a raw edit request before a host has parsed or stripped it.
24
+ *
25
+ * Edit has compatibility-only top-level fields that are intentionally absent
26
+ * from its published schema. This function therefore owns mode selection,
27
+ * item-family validation, and scalar coercion instead of relying on a typed
28
+ * execute handler that may never see those fields.
29
+ */
30
+ export declare function prepareCanonicalEditArguments(toolName: string, rawArguments: unknown): Record<string, unknown>;
31
+ //# sourceMappingURL=path-aliases.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"path-aliases.d.ts","sourceRoot":"","sources":["../src/path-aliases.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,MAAM,MAAM,iBAAiB,GACzB,MAAM,GACN,OAAO,GACP,MAAM,GACN,MAAM,GACN,WAAW,GACX,QAAQ,GACR,MAAM,GACN,QAAQ,GACR,UAAU,GACV,MAAM,GACN,QAAQ,GACR,WAAW,CAAC;AAEhB,qBAAa,mBAAoB,SAAQ,YAAY;gBACvC,OAAO,EAAE,MAAM;CAQ5B;AAED,yDAAyD;AACzD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAYhE;AAmID;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,OAAO,GACpB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAqCzB;AAyBD;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,OAAO,GACpB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAgFzB"}
@@ -0,0 +1,478 @@
1
+ /**
2
+ * Canonical path aliases accepted at host and subc preparation boundaries.
3
+ *
4
+ * Compatibility is intentionally about decoded string values only. The
5
+ * preparation layer must not trim, normalize, fold case, rewrite separators,
6
+ * or resolve paths before comparing the two spellings.
7
+ */
8
+ import { AftToolError } from "./error-contract.js";
9
+ export class InvalidRequestError extends AftToolError {
10
+ constructor(message) {
11
+ super(message, "invalid_request", {
12
+ success: false,
13
+ code: "invalid_request",
14
+ message,
15
+ });
16
+ this.name = "InvalidRequestError";
17
+ }
18
+ }
19
+ /** Return false for lone UTF-16 surrogate code units. */
20
+ export function isWellFormedUnicodeString(value) {
21
+ for (let index = 0; index < value.length; index++) {
22
+ const codeUnit = value.charCodeAt(index);
23
+ if (codeUnit >= 0xd800 && codeUnit <= 0xdbff) {
24
+ const next = value.charCodeAt(index + 1);
25
+ if (next < 0xdc00 || next > 0xdfff || Number.isNaN(next))
26
+ return false;
27
+ index++;
28
+ }
29
+ else if (codeUnit >= 0xdc00 && codeUnit <= 0xdfff) {
30
+ return false;
31
+ }
32
+ }
33
+ return true;
34
+ }
35
+ function hasOwn(record, key) {
36
+ return Object.hasOwn(record, key);
37
+ }
38
+ function invalidPathValue(property) {
39
+ throw new InvalidRequestError(`'${property}' must be a non-empty well-formed Unicode string`);
40
+ }
41
+ function pathValue(record, property) {
42
+ const value = record[property];
43
+ if (typeof value !== "string" || value.length === 0 || !isWellFormedUnicodeString(value)) {
44
+ invalidPathValue(property);
45
+ }
46
+ return value;
47
+ }
48
+ function normalizeAliasPair(record, canonical, legacy, required) {
49
+ const hasCanonical = hasOwn(record, canonical);
50
+ const hasLegacy = hasOwn(record, legacy);
51
+ if (!hasCanonical && !hasLegacy) {
52
+ if (required) {
53
+ throw new InvalidRequestError(`'${canonical}' is required`);
54
+ }
55
+ return;
56
+ }
57
+ if (hasCanonical && hasLegacy) {
58
+ let canonicalValue;
59
+ let legacyValue;
60
+ try {
61
+ canonicalValue = pathValue(record, canonical);
62
+ legacyValue = pathValue(record, legacy);
63
+ }
64
+ catch {
65
+ throw new InvalidRequestError(`Invalid request: '${canonical}' and '${legacy}' must both be non-empty well-formed Unicode strings`);
66
+ }
67
+ if (canonicalValue !== legacyValue) {
68
+ throw new InvalidRequestError(`Invalid request: '${canonical}' and '${legacy}' must contain equal decoded strings`);
69
+ }
70
+ delete record[legacy];
71
+ return;
72
+ }
73
+ if (hasCanonical) {
74
+ pathValue(record, canonical);
75
+ return;
76
+ }
77
+ record[canonical] = pathValue(record, legacy);
78
+ delete record[legacy];
79
+ }
80
+ function validateOptionalCanonicalPath(record, property) {
81
+ if (hasOwn(record, property))
82
+ pathValue(record, property);
83
+ }
84
+ function normalizeZoomTargets(record) {
85
+ if (!hasOwn(record, "targets"))
86
+ return;
87
+ const targets = record.targets;
88
+ const normalizeTarget = (target, index) => {
89
+ if (!target || typeof target !== "object" || Array.isArray(target)) {
90
+ throw new InvalidRequestError(`'targets[${index}].path' must be a non-empty string`);
91
+ }
92
+ const source = target;
93
+ // Model calls sometimes serialize an omitted target as an entirely empty
94
+ // target object. Preserve that sentinel so the tool can ignore it while
95
+ // still rejecting any target that supplies a real symbol with an empty path.
96
+ const emptyTarget = source.symbol === "" &&
97
+ ((hasOwn(source, "path") && source.path === "") ||
98
+ (hasOwn(source, "filePath") && source.filePath === ""));
99
+ if (emptyTarget)
100
+ return { ...source };
101
+ const normalized = { ...source };
102
+ try {
103
+ normalizeAliasPair(normalized, "path", "filePath", true);
104
+ }
105
+ catch (error) {
106
+ if (error instanceof InvalidRequestError) {
107
+ throw new InvalidRequestError(error.message
108
+ .replace("'filePath'", `'targets[${index}].filePath'`)
109
+ .replace("'path'", `'targets[${index}].path'`));
110
+ }
111
+ throw error;
112
+ }
113
+ return normalized;
114
+ };
115
+ if (Array.isArray(targets)) {
116
+ if (targets.length === 0)
117
+ return;
118
+ record.targets = targets.map(normalizeTarget);
119
+ return;
120
+ }
121
+ if (targets && typeof targets === "object") {
122
+ record.targets = normalizeTarget(targets, 0);
123
+ }
124
+ }
125
+ function bareToolName(toolName) {
126
+ const bare = toolName.startsWith("aft_") ? toolName.slice(4) : toolName;
127
+ if (bare === "read" ||
128
+ bare === "write" ||
129
+ bare === "edit" ||
130
+ bare === "zoom" ||
131
+ bare === "callgraph" ||
132
+ bare === "safety" ||
133
+ bare === "move" ||
134
+ bare === "import" ||
135
+ bare === "refactor" ||
136
+ bare === "grep" ||
137
+ bare === "search" ||
138
+ bare === "conflicts") {
139
+ return bare;
140
+ }
141
+ return undefined;
142
+ }
143
+ /**
144
+ * Prepare raw arguments for one registered tool before schema validation.
145
+ *
146
+ * The returned object is a fresh object, and nested zoom targets are copied,
147
+ * so an alias conflict or invalid value cannot partially mutate caller state.
148
+ */
149
+ export function prepareCanonicalPathArguments(toolName, rawArguments) {
150
+ if (!rawArguments || typeof rawArguments !== "object" || Array.isArray(rawArguments)) {
151
+ throw new InvalidRequestError("tool arguments must be an object");
152
+ }
153
+ const tool = bareToolName(toolName);
154
+ const record = { ...rawArguments };
155
+ if (!tool)
156
+ return record;
157
+ switch (tool) {
158
+ case "read":
159
+ case "write":
160
+ case "edit":
161
+ case "move":
162
+ case "import":
163
+ case "refactor":
164
+ normalizeAliasPair(record, "path", "filePath", true);
165
+ break;
166
+ case "zoom":
167
+ normalizeAliasPair(record, "path", "filePath", false);
168
+ normalizeZoomTargets(record);
169
+ break;
170
+ case "callgraph":
171
+ normalizeAliasPair(record, "path", "filePath", true);
172
+ normalizeAliasPair(record, "toPath", "toFile", false);
173
+ break;
174
+ case "safety":
175
+ normalizeAliasPair(record, "path", "filePath", false);
176
+ break;
177
+ case "grep":
178
+ case "search":
179
+ case "conflicts":
180
+ validateOptionalCanonicalPath(record, "path");
181
+ break;
182
+ }
183
+ return record;
184
+ }
185
+ const EDIT_ROOT_COMPATIBILITY_KEYS = new Set([
186
+ "oldString",
187
+ "newString",
188
+ "replaceAll",
189
+ "occurrence",
190
+ ]);
191
+ const EDIT_ROOT_CANONICAL_KEYS = new Set(["path", "appendContent", "edits", "symbol", "content"]);
192
+ const EDIT_ITEM_KEYS = new Set([
193
+ "oldString",
194
+ "newString",
195
+ "replaceAll",
196
+ "occurrence",
197
+ "startLine",
198
+ "endLine",
199
+ "content",
200
+ ]);
201
+ const ASCII_WHITESPACE = /^[\t\n\v\f\r ]+$/;
202
+ const ASCII_TRIM = /^[\t\n\v\f\r ]+|[\t\n\v\f\r ]+$/g;
203
+ const MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER;
204
+ /**
205
+ * Normalize a raw edit request before a host has parsed or stripped it.
206
+ *
207
+ * Edit has compatibility-only top-level fields that are intentionally absent
208
+ * from its published schema. This function therefore owns mode selection,
209
+ * item-family validation, and scalar coercion instead of relying on a typed
210
+ * execute handler that may never see those fields.
211
+ */
212
+ export function prepareCanonicalEditArguments(toolName, rawArguments) {
213
+ if (!rawArguments || typeof rawArguments !== "object" || Array.isArray(rawArguments)) {
214
+ throw new InvalidRequestError("tool arguments must be an object");
215
+ }
216
+ const raw = rawArguments;
217
+ const record = copyOwnProperties(raw);
218
+ normalizeEditPathAlias(record);
219
+ const suppliedLineFields = ["startLine", "endLine"].filter((key) => hasOwn(record, key));
220
+ if (suppliedLineFields.length > 0) {
221
+ throw new InvalidRequestError(`edit: top-level ${suppliedLineFields.map((key) => `'${key}'`).join(" and ")} are invalid; ` +
222
+ "line-range fields are valid only inside 'edits[]'. " +
223
+ "Use edits: [{ startLine, endLine, content }].");
224
+ }
225
+ const isOpenCodeRetiredBoundary = toolName === "aft_edit";
226
+ const retiredFields = ["file", "mode"].filter((key) => hasOwn(record, key));
227
+ if (retiredFields.length > 0 && isOpenCodeRetiredBoundary) {
228
+ throw new InvalidRequestError("aft_edit: the retired `mode`/`file` edit form is no longer supported; use `path` with " +
229
+ "exactly one of `appendContent`, `edits`, or `symbol` plus `content`.");
230
+ }
231
+ const unknownRootKeys = Object.getOwnPropertyNames(record)
232
+ .filter((key) => !EDIT_ROOT_CANONICAL_KEYS.has(key) &&
233
+ !EDIT_ROOT_COMPATIBILITY_KEYS.has(key) &&
234
+ key !== "filePath")
235
+ .sort();
236
+ if (unknownRootKeys.length > 0) {
237
+ throw new InvalidRequestError(formatUnknownKeys(unknownRootKeys));
238
+ }
239
+ const modes = editModesPresent(record);
240
+ if (modes.length > 1) {
241
+ throw new InvalidRequestError(`edit: conflicting modes: ${modes.join(", ")}`);
242
+ }
243
+ if (modes.length === 0) {
244
+ throw new InvalidRequestError("edit: exactly one of `appendContent`, `edits`, or `symbol` plus `content` is required");
245
+ }
246
+ const mode = modes[0];
247
+ if (mode === "appendContent") {
248
+ if (typeof record.appendContent !== "string") {
249
+ throw new InvalidRequestError("edit: 'appendContent' must be a string");
250
+ }
251
+ }
252
+ else if (mode === "edits") {
253
+ const parsedEdits = parseEditArray(record.edits);
254
+ record.edits = parsedEdits.map((item, index) => normalizeEditItem(item, index));
255
+ }
256
+ else if (mode === "symbol/content") {
257
+ if (!hasOwn(record, "symbol") || typeof record.symbol !== "string") {
258
+ throw new InvalidRequestError("edit: 'symbol' must be a string when symbol mode is selected");
259
+ }
260
+ if (!hasOwn(record, "content") || typeof record.content !== "string") {
261
+ throw new InvalidRequestError("edit: symbol mode requires both 'symbol' and 'content' string properties");
262
+ }
263
+ }
264
+ else {
265
+ const item = {};
266
+ for (const key of EDIT_ROOT_COMPATIBILITY_KEYS) {
267
+ if (hasOwn(record, key))
268
+ item[key] = record[key];
269
+ }
270
+ record.edits = [normalizeEditItem(item, 0)];
271
+ for (const key of EDIT_ROOT_COMPATIBILITY_KEYS)
272
+ delete record[key];
273
+ }
274
+ // Canonical-only path validation is deliberately last. Alias conflicts and
275
+ // legacy-only aliases must be decided during preparation, but a malformed
276
+ // canonical-only path must not hide a higher-precedence edit contract error.
277
+ validateEditPath(record);
278
+ return record;
279
+ }
280
+ function normalizeEditPathAlias(record) {
281
+ const hasCanonical = hasOwn(record, "path");
282
+ const hasLegacy = hasOwn(record, "filePath");
283
+ if (!hasCanonical && !hasLegacy)
284
+ return;
285
+ if (hasCanonical && hasLegacy) {
286
+ let canonical;
287
+ let legacy;
288
+ try {
289
+ canonical = pathValue(record, "path");
290
+ legacy = pathValue(record, "filePath");
291
+ }
292
+ catch {
293
+ throw new InvalidRequestError("Invalid request: 'path' and 'filePath' must both be non-empty well-formed Unicode strings");
294
+ }
295
+ if (canonical !== legacy) {
296
+ throw new InvalidRequestError("Invalid request: 'path' and 'filePath' must contain equal decoded strings");
297
+ }
298
+ delete record.filePath;
299
+ return;
300
+ }
301
+ if (!hasCanonical) {
302
+ record.path = pathValue(record, "filePath");
303
+ delete record.filePath;
304
+ }
305
+ }
306
+ function validateEditPath(record) {
307
+ if (!hasOwn(record, "path")) {
308
+ throw new InvalidRequestError("'path' is required");
309
+ }
310
+ pathValue(record, "path");
311
+ }
312
+ function formatUnknownKeys(keys) {
313
+ return `Unrecognized keys: ${keys.map((key) => `"${key}"`).join(", ")}`;
314
+ }
315
+ function editModesPresent(record) {
316
+ const modes = [];
317
+ if (hasOwn(record, "appendContent"))
318
+ modes.push("appendContent");
319
+ if (hasOwn(record, "edits"))
320
+ modes.push("edits");
321
+ if (hasOwn(record, "symbol") || hasOwn(record, "content"))
322
+ modes.push("symbol/content");
323
+ if (["oldString", "newString", "replaceAll", "occurrence"].some((key) => hasOwn(record, key))) {
324
+ modes.push("oldString/newString");
325
+ }
326
+ return modes;
327
+ }
328
+ function parseEditArray(value) {
329
+ if (typeof value === "string") {
330
+ let parsed;
331
+ try {
332
+ parsed = JSON.parse(value);
333
+ }
334
+ catch {
335
+ throw new InvalidRequestError("edit: 'edits' must contain valid JSON representing an array");
336
+ }
337
+ if (!Array.isArray(parsed)) {
338
+ throw new InvalidRequestError("edit: 'edits' JSON must have an array root");
339
+ }
340
+ if (parsed.length === 0) {
341
+ throw new InvalidRequestError("edit: 'edits' array must not be empty");
342
+ }
343
+ return parsed;
344
+ }
345
+ if (!Array.isArray(value)) {
346
+ throw new InvalidRequestError("edit: 'edits' must be a non-empty array");
347
+ }
348
+ if (value.length === 0) {
349
+ throw new InvalidRequestError("edit: 'edits' array must not be empty");
350
+ }
351
+ return value;
352
+ }
353
+ function normalizeEditItem(value, index) {
354
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
355
+ throw new InvalidRequestError(`edit: edits[${index}] must be an object`);
356
+ }
357
+ const source = value;
358
+ const item = copyOwnProperties(source);
359
+ normalizeItemAlias(item, "oldString", "oldText");
360
+ normalizeItemAlias(item, "newString", "newText");
361
+ const hasFindField = ["oldString", "newString", "replaceAll", "occurrence"].some((key) => hasOwn(item, key));
362
+ const hasRangeField = ["startLine", "endLine", "content"].some((key) => hasOwn(item, key));
363
+ if (hasFindField && hasRangeField) {
364
+ throw new InvalidRequestError(`edit: edits[${index}] mixes find/replace and line-range fields`);
365
+ }
366
+ if (hasFindField) {
367
+ if (!hasOwn(item, "oldString") || typeof item.oldString !== "string") {
368
+ throw new InvalidRequestError(`edit: edits[${index}] requires string 'oldString'`);
369
+ }
370
+ if (hasOwn(item, "newString") && typeof item.newString !== "string") {
371
+ throw new InvalidRequestError(`edit: edits[${index}].newString must be a string`);
372
+ }
373
+ coerceEditScalars(item, index);
374
+ validateEditItemKeys(item, index);
375
+ return item;
376
+ }
377
+ if (hasRangeField) {
378
+ for (const key of ["startLine", "endLine"]) {
379
+ // Models routinely send stringified line numbers ("3"); coerce exact
380
+ // integer strings before validating, matching the other edit scalars.
381
+ const value = item[key];
382
+ if (typeof value === "string" && /^[0-9]+$/.test(value.trim())) {
383
+ item[key] = Number(value.trim());
384
+ }
385
+ if (!hasOwn(item, key) || !isPositiveSafeInteger(item[key])) {
386
+ throw new InvalidRequestError(`edit: edits[${index}].${key} must be a positive integer`);
387
+ }
388
+ }
389
+ if (item.startLine > item.endLine) {
390
+ throw new InvalidRequestError(`edit: edits[${index}] requires startLine <= endLine`);
391
+ }
392
+ if (!hasOwn(item, "content") || typeof item.content !== "string") {
393
+ throw new InvalidRequestError(`edit: edits[${index}] requires string 'content'`);
394
+ }
395
+ validateEditItemKeys(item, index);
396
+ return item;
397
+ }
398
+ throw new InvalidRequestError(`edit: edits[${index}] must be a find/replace or line-range item`);
399
+ }
400
+ function normalizeItemAlias(item, canonical, legacy) {
401
+ if (hasOwn(item, legacy)) {
402
+ if (!hasOwn(item, canonical))
403
+ item[canonical] = item[legacy];
404
+ delete item[legacy];
405
+ }
406
+ }
407
+ function validateEditItemKeys(item, index) {
408
+ const unknown = Object.getOwnPropertyNames(item)
409
+ .filter((key) => !EDIT_ITEM_KEYS.has(key))
410
+ .sort();
411
+ if (unknown.length > 0) {
412
+ throw new InvalidRequestError(`edit: edits[${index}] contains ${formatUnknownKeys(unknown)}`);
413
+ }
414
+ }
415
+ function coerceEditScalars(item, index) {
416
+ if (hasOwn(item, "replaceAll") && hasOwn(item, "occurrence")) {
417
+ throw new InvalidRequestError(`edit: edits[${index}] cannot contain both 'replaceAll' and 'occurrence'`);
418
+ }
419
+ if (hasOwn(item, "replaceAll"))
420
+ item.replaceAll = coerceEditBoolean(item.replaceAll, index);
421
+ if (hasOwn(item, "occurrence")) {
422
+ const occurrence = coerceEditOccurrence(item.occurrence, index);
423
+ if (occurrence === undefined)
424
+ delete item.occurrence;
425
+ else
426
+ item.occurrence = occurrence;
427
+ }
428
+ }
429
+ function coerceEditBoolean(value, index) {
430
+ if (typeof value === "boolean")
431
+ return value;
432
+ if (typeof value === "number" && Number.isFinite(value) && (value === 0 || value === 1)) {
433
+ return value === 1;
434
+ }
435
+ if (typeof value === "string") {
436
+ if (value === "1")
437
+ return true;
438
+ if (value === "0")
439
+ return false;
440
+ if (/^(?:true|false)$/i.test(value))
441
+ return value.toLowerCase() === "true";
442
+ }
443
+ throw new InvalidRequestError(`edit: edits[${index}].replaceAll must be a boolean, true/false string, or 0/1`);
444
+ }
445
+ function coerceEditOccurrence(value, index) {
446
+ if (value === null)
447
+ return undefined;
448
+ if (typeof value === "string") {
449
+ const trimmed = value.replace(ASCII_TRIM, "");
450
+ if (trimmed.length === 0 || ASCII_WHITESPACE.test(trimmed))
451
+ return undefined;
452
+ if (!/^[+]?[0-9]+$/.test(trimmed)) {
453
+ throw new InvalidRequestError(`edit: edits[${index}].occurrence must be a positive integer`);
454
+ }
455
+ try {
456
+ const parsed = BigInt(trimmed);
457
+ if (parsed < 1n || parsed > BigInt(MAX_SAFE_INTEGER))
458
+ throw new Error("out of range");
459
+ return Number(parsed);
460
+ }
461
+ catch {
462
+ throw new InvalidRequestError(`edit: edits[${index}].occurrence must be a positive integer`);
463
+ }
464
+ }
465
+ if (typeof value === "number" && isPositiveSafeInteger(value))
466
+ return value;
467
+ throw new InvalidRequestError(`edit: edits[${index}].occurrence must be a positive integer`);
468
+ }
469
+ function isPositiveSafeInteger(value) {
470
+ return typeof value === "number" && Number.isSafeInteger(value) && value >= 1;
471
+ }
472
+ function copyOwnProperties(source) {
473
+ const copy = Object.create(null);
474
+ for (const key of Object.getOwnPropertyNames(source))
475
+ copy[key] = source[key];
476
+ return copy;
477
+ }
478
+ //# sourceMappingURL=path-aliases.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"path-aliases.js","sourceRoot":"","sources":["../src/path-aliases.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cortexkit/aft-bridge",
3
- "version": "0.48.0",
3
+ "version": "0.49.0",
4
4
  "type": "module",
5
5
  "description": "Shared NDJSON bridge transport, binary resolution, and ONNX runtime helpers for AFT agent-host plugins (OpenCode, Pi)",
6
6
  "license": "MIT",