@cortexkit/aft-bridge 0.58.2 → 0.59.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/dist/bash-format.d.ts.map +1 -1
- package/dist/bash-format.js +5 -0
- package/dist/bash-format.js.map +1 -1
- package/dist/bash-hints.d.ts +76 -30
- package/dist/bash-hints.d.ts.map +1 -1
- package/dist/bash-hints.js +218 -47
- package/dist/bash-hints.js.map +1 -1
- package/dist/bash-host-fallback.d.ts +27 -0
- package/dist/bash-host-fallback.d.ts.map +1 -1
- package/dist/bash-host-fallback.js +55 -16
- package/dist/bash-host-fallback.js.map +1 -1
- package/dist/binary-identity.d.ts +13 -0
- package/dist/binary-identity.d.ts.map +1 -1
- package/dist/binary-identity.js +91 -2
- package/dist/binary-identity.js.map +1 -1
- package/dist/bridge.d.ts +12 -3
- package/dist/bridge.d.ts.map +1 -1
- package/dist/bridge.js +80 -38
- package/dist/bridge.js.map +1 -1
- package/dist/callgraph-format.d.ts.map +1 -1
- package/dist/callgraph-format.js +7 -7
- package/dist/callgraph-format.js.map +1 -1
- package/dist/child-process.d.ts.map +1 -1
- package/dist/child-process.js +10 -1
- package/dist/child-process.js.map +1 -1
- package/dist/config-error.d.ts +2 -2
- package/dist/config-error.js +2 -2
- package/dist/config-watch.d.ts +2 -0
- package/dist/config-watch.d.ts.map +1 -1
- package/dist/config-watch.js +35 -0
- package/dist/config-watch.js.map +1 -1
- package/dist/durable-log.d.ts +11 -0
- package/dist/durable-log.d.ts.map +1 -1
- package/dist/durable-log.js +67 -24
- package/dist/durable-log.js.map +1 -1
- package/dist/error-contract.d.ts +14 -5
- package/dist/error-contract.d.ts.map +1 -1
- package/dist/error-contract.js +42 -9
- package/dist/error-contract.js.map +1 -1
- package/dist/feature-config.d.ts +35 -18
- package/dist/feature-config.d.ts.map +1 -1
- package/dist/feature-config.js +161 -94
- package/dist/feature-config.js.map +1 -1
- package/dist/index.d.ts +8 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -7
- package/dist/index.js.map +1 -1
- package/dist/location-lifecycle.d.ts.map +1 -1
- package/dist/location-lifecycle.js +4 -2
- package/dist/location-lifecycle.js.map +1 -1
- package/dist/message-detach.d.ts +8 -0
- package/dist/message-detach.d.ts.map +1 -1
- package/dist/message-detach.js +32 -0
- package/dist/message-detach.js.map +1 -1
- package/dist/migration-notices.d.ts.map +1 -1
- package/dist/migration-notices.js +12 -5
- package/dist/migration-notices.js.map +1 -1
- package/dist/migration.d.ts +1 -0
- package/dist/migration.d.ts.map +1 -1
- package/dist/migration.js +39 -12
- package/dist/migration.js.map +1 -1
- package/dist/onnx-runtime.d.ts.map +1 -1
- package/dist/onnx-runtime.js +37 -32
- package/dist/onnx-runtime.js.map +1 -1
- package/dist/path-display.d.ts +5 -0
- package/dist/path-display.d.ts.map +1 -0
- package/dist/path-display.js +21 -0
- package/dist/path-display.js.map +1 -0
- package/dist/paths.d.ts.map +1 -1
- package/dist/paths.js +7 -6
- package/dist/paths.js.map +1 -1
- package/dist/private-storage.d.ts +9 -0
- package/dist/private-storage.d.ts.map +1 -0
- package/dist/private-storage.js +75 -0
- package/dist/private-storage.js.map +1 -0
- package/dist/protocol.d.ts +4 -0
- package/dist/protocol.d.ts.map +1 -1
- package/dist/revivable-transport.d.ts +4 -2
- package/dist/revivable-transport.d.ts.map +1 -1
- package/dist/revivable-transport.js +48 -19
- package/dist/revivable-transport.js.map +1 -1
- package/dist/storage-paths.d.ts +3 -4
- package/dist/storage-paths.d.ts.map +1 -1
- package/dist/storage-paths.js +4 -5
- package/dist/storage-paths.js.map +1 -1
- package/dist/subc-transport.d.ts +61 -3
- package/dist/subc-transport.d.ts.map +1 -1
- package/dist/subc-transport.js +383 -43
- package/dist/subc-transport.js.map +1 -1
- package/dist/tar-executable.d.ts +1 -1
- package/dist/tar-executable.d.ts.map +1 -1
- package/dist/tar-executable.js +16 -2
- package/dist/tar-executable.js.map +1 -1
- package/dist/test-child-environment.d.ts +8 -0
- package/dist/test-child-environment.d.ts.map +1 -0
- package/dist/test-child-environment.js +105 -0
- package/dist/test-child-environment.js.map +1 -0
- package/dist/transport.d.ts +14 -0
- package/dist/transport.d.ts.map +1 -1
- package/dist/transport.js +17 -0
- package/dist/transport.js.map +1 -1
- package/dist/zoom-format.d.ts +1 -0
- package/dist/zoom-format.d.ts.map +1 -1
- package/dist/zoom-format.js +5 -1
- package/dist/zoom-format.js.map +1 -1
- package/package.json +2 -2
package/dist/feature-config.d.ts
CHANGED
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
* Feature-based configuration policy shared by the OpenCode and Pi plugins.
|
|
3
3
|
*
|
|
4
4
|
* Mirrors `crates/aft/src/feature_config.rs`: the literal tool inventory, the
|
|
5
|
-
*
|
|
6
|
-
*
|
|
5
|
+
* table of retired keys, the per-block translation of those keys into
|
|
6
|
+
* canonical `disabled_tools` / `indexes` / `github` / `lsp` leaves (retired
|
|
7
|
+
* keys are never refused),
|
|
7
8
|
* validation of a resolved configuration, and the migration-notice projection
|
|
8
9
|
* digest. The config parity fixtures and the shared notice-projection fixture
|
|
9
10
|
* (`crates/aft/tests/fixtures/feature_config/notice_projection.json`) keep the
|
|
@@ -16,14 +17,13 @@ export type CanonicalTool = (typeof CANONICAL_TOOLS)[number];
|
|
|
16
17
|
export declare const HOST_TOOL_NAMES: readonly ["apply_patch", "bash", "edit", "glob", "grep", "read", "write"];
|
|
17
18
|
/** Disables applied when the user base makes no registration choice. */
|
|
18
19
|
export declare const DEFAULT_DISABLED_TOOLS: readonly ["aft_delete", "aft_move"];
|
|
19
|
-
/** Historical prefixed tool names
|
|
20
|
+
/** Historical prefixed tool names that disabled lists may still contain. */
|
|
20
21
|
export declare const LEGACY_TOOL_ALIASES: Readonly<Record<string, string>>;
|
|
21
22
|
/** Names the historical bash registration gate removed (canonical names). */
|
|
22
23
|
export declare const BASH_GATE_DISABLES: readonly ["bash", "bash_kill", "bash_status", "bash_watch", "bash_write"];
|
|
23
24
|
export declare const MIGRATION_POLICY_ID = "feature-config-v1";
|
|
24
25
|
export declare const POLICY_INTRODUCED_MINOR: readonly [number, number];
|
|
25
|
-
|
|
26
|
-
/** Retired config paths and the replacement named in their rejection. */
|
|
26
|
+
/** Retired config paths and their replacement. */
|
|
27
27
|
export declare const RETIRED_PATHS: ReadonlyArray<readonly [string, string]>;
|
|
28
28
|
/** Index leaf, immediate legacy key and optional experimental alias. */
|
|
29
29
|
export declare const INDEX_INPUTS: ReadonlyArray<readonly [string, string, string | undefined]>;
|
|
@@ -38,26 +38,27 @@ export declare function isKnownTool(name: string): boolean;
|
|
|
38
38
|
export declare function isProjectProtectedTool(name: string): boolean;
|
|
39
39
|
/** Literal disabled set a legacy `tool_surface` value translates to. */
|
|
40
40
|
export declare function surfaceDisables(surface: unknown): string[] | undefined;
|
|
41
|
-
export type PolicyPhase = "window" | "rejecting";
|
|
42
|
-
/** Policy phase for a package version (major/minor only; patch ignored). */
|
|
43
|
-
export declare function policyPhaseForVersion(version: string): PolicyPhase;
|
|
44
41
|
export interface TranslationWarning {
|
|
45
42
|
code: string;
|
|
46
43
|
key: string;
|
|
47
44
|
message: string;
|
|
48
45
|
/**
|
|
49
46
|
* Deliver through the once-per-identity migration notice channel instead of
|
|
50
|
-
* warning on every load. Set for notes about files that are already fixed
|
|
51
|
-
*
|
|
47
|
+
* warning on every load. Set for notes about files that are already fixed,
|
|
48
|
+
* which would otherwise repeat forever.
|
|
52
49
|
*/
|
|
53
50
|
once?: boolean;
|
|
54
51
|
}
|
|
55
52
|
export interface DocumentTranslation {
|
|
56
|
-
/** Rejection diagnostics; any entry aborts the whole candidate load. */
|
|
57
|
-
errors: string[];
|
|
58
53
|
warnings: TranslationWarning[];
|
|
59
54
|
/** True when a retired key or alias was supplied (a migration notice applies). */
|
|
60
55
|
legacyInput: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Every retired key the document supplied, sorted and de-duplicated. A key
|
|
58
|
+
* inside a harness block carries its `harnesses.<id>.` prefix; a prefixed
|
|
59
|
+
* tool name inside `disabled_tools` is listed by that name.
|
|
60
|
+
*/
|
|
61
|
+
retiredKeys: string[];
|
|
61
62
|
/**
|
|
62
63
|
* True when some block set the retired top-level `enabled: false`. It is
|
|
63
64
|
* translated into a disabled_tools list only, so indexes keep building;
|
|
@@ -67,16 +68,28 @@ export interface DocumentTranslation {
|
|
|
67
68
|
}
|
|
68
69
|
type JsonRecord = Record<string, unknown>;
|
|
69
70
|
export declare function sortedUnique(names: Iterable<string>): string[];
|
|
71
|
+
/** `lsp.idle_minutes` default and range; mirrors `crates/aft/src/config.rs`. */
|
|
72
|
+
export declare const LSP_IDLE_MINUTES_DEFAULT = 60;
|
|
73
|
+
export declare const LSP_IDLE_MINUTES_MIN = 5;
|
|
74
|
+
export declare const LSP_IDLE_MINUTES_MAX = 1440;
|
|
70
75
|
/**
|
|
71
76
|
* What a retired `enabled: false` no longer does. The translation only hides
|
|
72
77
|
* tools; it never stops indexing, so a user who relied on it to keep AFT out
|
|
73
78
|
* of a repository must also switch the indexes off.
|
|
74
79
|
*/
|
|
75
80
|
export declare const RETIRED_ENABLED_FALSE_INDEXES_NOTE = "enabled: false no longer turns AFT off: it is translated to disabling every tool, but the trigram, semantic and callgraph indexes still build. To keep AFT from indexing this repository, also set indexes.trigram, indexes.semantic and indexes.callgraph to false.";
|
|
76
|
-
/** The once-per-identity migration notice for a config file that used retired keys. */
|
|
77
|
-
export declare function legacyConfigNoticeMessage(configPath: string, translation: Pick<DocumentTranslation, "retiredEnabledFalse">): string;
|
|
78
81
|
/**
|
|
79
|
-
*
|
|
82
|
+
* The once-per-identity notice for a project config file whose retired keys
|
|
83
|
+
* were translated in memory. The file itself is never written: it is shared
|
|
84
|
+
* through its repository. Mirrors `project_retired_keys_notice` in
|
|
85
|
+
* `crates/aft/src/feature_config.rs`.
|
|
86
|
+
*/
|
|
87
|
+
export declare function legacyConfigNoticeMessage(configPath: string, translation: Pick<DocumentTranslation, "retiredEnabledFalse" | "retiredKeys">): string;
|
|
88
|
+
/**
|
|
89
|
+
* Translate every block (base plus each `harnesses.<id>`) in place. Retired
|
|
90
|
+
* keys are never refused: their current equivalents then pass through the
|
|
91
|
+
* normal user/project trust rules, exactly as if the file had spelled them
|
|
92
|
+
* out.
|
|
80
93
|
*
|
|
81
94
|
* Only the user file's base block receives the absent-base default
|
|
82
95
|
* (`aft_move`/`aft_delete`) when its legacy keys generate disables: that
|
|
@@ -84,7 +97,7 @@ export declare function legacyConfigNoticeMessage(configPath: string, translatio
|
|
|
84
97
|
* contributes only the names its own legacy keys imply, so a legacy key in a
|
|
85
98
|
* repository can never re-disable tools the user enabled.
|
|
86
99
|
*/
|
|
87
|
-
export declare function translateConfigDocument(map: JsonRecord,
|
|
100
|
+
export declare function translateConfigDocument(map: JsonRecord, tier: "user" | "project"): DocumentTranslation;
|
|
88
101
|
/** Distinct unknown names in a resolved disabled list, sorted. */
|
|
89
102
|
export declare function unknownDisabledTools(disabled: readonly string[]): string[];
|
|
90
103
|
/**
|
|
@@ -109,7 +122,7 @@ export declare function noticeDigest(projection: unknown): string;
|
|
|
109
122
|
* are spelled as `npx @cortexkit/aft …`: users reach this notice through the
|
|
110
123
|
* plugin, with no `aft` command on their PATH.
|
|
111
124
|
*/
|
|
112
|
-
export declare const SEMANTIC_COST_NOTICE = "AFT indexes now default on; the local semantic backend may download an ONNX runtime and model and use CPU. Run npx @cortexkit/aft setup to change indexes.semantic
|
|
125
|
+
export declare const SEMANTIC_COST_NOTICE = "AFT indexes now default on; the local semantic backend may download an ONNX runtime and model and use CPU. Run npx @cortexkit/aft setup to change indexes.semantic.";
|
|
113
126
|
/**
|
|
114
127
|
* Identity of the semantic cost notice. It is a constant rather than a digest
|
|
115
128
|
* of the config file, so the notice is delivered once per user config path and
|
|
@@ -158,7 +171,11 @@ export interface ResolvedIndexesConfig {
|
|
|
158
171
|
callgraph: boolean;
|
|
159
172
|
}
|
|
160
173
|
export declare const DEFAULT_INDEXES: ResolvedIndexesConfig;
|
|
161
|
-
/**
|
|
174
|
+
/**
|
|
175
|
+
* Whole-load rejection: the candidate config must not be used at all. Raised
|
|
176
|
+
* when a resolved configuration lacks its registration list or an index
|
|
177
|
+
* switch; retired keys are translated and never raise it.
|
|
178
|
+
*/
|
|
162
179
|
export declare class ConfigRejectedError extends Error {
|
|
163
180
|
readonly errors: string[];
|
|
164
181
|
constructor(errors: string[], source?: string);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature-config.d.ts","sourceRoot":"","sources":["../src/feature-config.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"feature-config.d.ts","sourceRoot":"","sources":["../src/feature-config.ts"],"names":[],"mappings":"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"}
|
package/dist/feature-config.js
CHANGED
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
* Feature-based configuration policy shared by the OpenCode and Pi plugins.
|
|
3
3
|
*
|
|
4
4
|
* Mirrors `crates/aft/src/feature_config.rs`: the literal tool inventory, the
|
|
5
|
-
*
|
|
6
|
-
*
|
|
5
|
+
* table of retired keys, the per-block translation of those keys into
|
|
6
|
+
* canonical `disabled_tools` / `indexes` / `github` / `lsp` leaves (retired
|
|
7
|
+
* keys are never refused),
|
|
7
8
|
* validation of a resolved configuration, and the migration-notice projection
|
|
8
9
|
* digest. The config parity fixtures and the shared notice-projection fixture
|
|
9
10
|
* (`crates/aft/tests/fixtures/feature_config/notice_projection.json`) keep the
|
|
@@ -48,7 +49,7 @@ export const HOST_TOOL_NAMES = [
|
|
|
48
49
|
];
|
|
49
50
|
/** Disables applied when the user base makes no registration choice. */
|
|
50
51
|
export const DEFAULT_DISABLED_TOOLS = ["aft_delete", "aft_move"];
|
|
51
|
-
/** Historical prefixed tool names
|
|
52
|
+
/** Historical prefixed tool names that disabled lists may still contain. */
|
|
52
53
|
export const LEGACY_TOOL_ALIASES = {
|
|
53
54
|
aft_read: "read",
|
|
54
55
|
aft_write: "write",
|
|
@@ -68,8 +69,7 @@ export const BASH_GATE_DISABLES = [
|
|
|
68
69
|
];
|
|
69
70
|
export const MIGRATION_POLICY_ID = "feature-config-v1";
|
|
70
71
|
export const POLICY_INTRODUCED_MINOR = [0, 58];
|
|
71
|
-
|
|
72
|
-
/** Retired config paths and the replacement named in their rejection. */
|
|
72
|
+
/** Retired config paths and their replacement. */
|
|
73
73
|
export const RETIRED_PATHS = [
|
|
74
74
|
["tool_surface", "disabled_tools"],
|
|
75
75
|
["hoist_builtin_tools", "disabled_tools"],
|
|
@@ -118,29 +118,9 @@ export function surfaceDisables(surface) {
|
|
|
118
118
|
return undefined;
|
|
119
119
|
}
|
|
120
120
|
}
|
|
121
|
-
function parseMinor(version) {
|
|
122
|
-
const match = /^v?(\d+)\.(\d+)/.exec(version.trim());
|
|
123
|
-
if (!match)
|
|
124
|
-
return undefined;
|
|
125
|
-
return [Number(match[1]), Number(match[2])];
|
|
126
|
-
}
|
|
127
|
-
/** Policy phase for a package version (major/minor only; patch ignored). */
|
|
128
|
-
export function policyPhaseForVersion(version) {
|
|
129
|
-
const minor = parseMinor(version);
|
|
130
|
-
if (!minor)
|
|
131
|
-
return "window";
|
|
132
|
-
const [major, min] = minor;
|
|
133
|
-
const [rejectMajor, rejectMinor] = POLICY_REJECT_FROM_MINOR;
|
|
134
|
-
return major > rejectMajor || (major === rejectMajor && min >= rejectMinor)
|
|
135
|
-
? "rejecting"
|
|
136
|
-
: "window";
|
|
137
|
-
}
|
|
138
121
|
function isRecord(value) {
|
|
139
122
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
140
123
|
}
|
|
141
|
-
function removed(old, replacement) {
|
|
142
|
-
return `removed_config_key:${old}:use:${replacement}`;
|
|
143
|
-
}
|
|
144
124
|
function hasPath(map, path) {
|
|
145
125
|
const dot = path.indexOf(".");
|
|
146
126
|
if (dot < 0)
|
|
@@ -163,15 +143,127 @@ function falseRuntimeGates(map) {
|
|
|
163
143
|
export function sortedUnique(names) {
|
|
164
144
|
return [...new Set(names)].sort();
|
|
165
145
|
}
|
|
146
|
+
/** `lsp.idle_minutes` default and range; mirrors `crates/aft/src/config.rs`. */
|
|
147
|
+
export const LSP_IDLE_MINUTES_DEFAULT = 60;
|
|
148
|
+
export const LSP_IDLE_MINUTES_MIN = 5;
|
|
149
|
+
export const LSP_IDLE_MINUTES_MAX = 1440;
|
|
150
|
+
function recordRetired(out, prefix, key) {
|
|
151
|
+
out.legacyInput = true;
|
|
152
|
+
out.retiredKeys.push(`${prefix}${key}`);
|
|
153
|
+
}
|
|
154
|
+
function superseded(out, key, message) {
|
|
155
|
+
out.warnings.push({ code: "superseded_legacy_config", key, message });
|
|
156
|
+
}
|
|
157
|
+
function nestedBool(map, container, leaf) {
|
|
158
|
+
const inner = map[container];
|
|
159
|
+
return isRecord(inner) && typeof inner[leaf] === "boolean" ? inner[leaf] : undefined;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Translate the GitHub enable aliases (`gh_read.enabled`, `gh_shim.enabled`)
|
|
163
|
+
* of one block into `github.read` / `github.shim`, exactly as `doctor --fix`
|
|
164
|
+
* rewrites them. Precedence: the canonical leaf, then the `false` that a
|
|
165
|
+
* `github.enabled: false` in the same block sets for every leaf, then the
|
|
166
|
+
* alias. The aliases are removed; `gh_shim.binary_path` is kept.
|
|
167
|
+
*/
|
|
168
|
+
function translateGithubAliases(map, prefix, out) {
|
|
169
|
+
const masterOff = nestedBool(map, "github", "enabled") === false;
|
|
170
|
+
for (const [alias, leaf, retiredKey] of [
|
|
171
|
+
["gh_read", "read", "gh_read"],
|
|
172
|
+
["gh_shim", "shim", "gh_shim.enabled"],
|
|
173
|
+
]) {
|
|
174
|
+
const aliasBlock = map[alias];
|
|
175
|
+
const supplied = alias === "gh_read"
|
|
176
|
+
? Object.hasOwn(map, alias)
|
|
177
|
+
: isRecord(aliasBlock) && Object.hasOwn(aliasBlock, "enabled");
|
|
178
|
+
if (!supplied)
|
|
179
|
+
continue;
|
|
180
|
+
recordRetired(out, prefix, retiredKey);
|
|
181
|
+
const aliasValue = isRecord(aliasBlock) && typeof aliasBlock.enabled === "boolean"
|
|
182
|
+
? aliasBlock.enabled
|
|
183
|
+
: undefined;
|
|
184
|
+
if (aliasValue !== undefined) {
|
|
185
|
+
const canonical = nestedBool(map, "github", leaf);
|
|
186
|
+
if (canonical !== undefined) {
|
|
187
|
+
if (canonical !== aliasValue) {
|
|
188
|
+
superseded(out, `${prefix}${retiredKey}`, `${alias}.enabled=${aliasValue} is ignored because github.${leaf}=${canonical} is set`);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
else if (masterOff) {
|
|
192
|
+
if (aliasValue) {
|
|
193
|
+
superseded(out, `${prefix}${retiredKey}`, `${alias}.enabled=true is ignored because github.enabled=false switches github.${leaf} off`);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
else {
|
|
197
|
+
if (!Object.hasOwn(map, "github"))
|
|
198
|
+
map.github = {};
|
|
199
|
+
if (isRecord(map.github))
|
|
200
|
+
map.github[leaf] = aliasValue;
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
if (alias === "gh_read") {
|
|
204
|
+
delete map.gh_read;
|
|
205
|
+
}
|
|
206
|
+
else if (isRecord(aliasBlock)) {
|
|
207
|
+
delete aliasBlock.enabled;
|
|
208
|
+
if (Object.keys(aliasBlock).length === 0)
|
|
209
|
+
delete map.gh_shim;
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
/** Remove `container.leaf` when present, dropping the container if that left it empty. */
|
|
214
|
+
function takeNested(map, container, leaf) {
|
|
215
|
+
const inner = map[container];
|
|
216
|
+
if (!isRecord(inner) || !Object.hasOwn(inner, leaf))
|
|
217
|
+
return { found: false };
|
|
218
|
+
const value = inner[leaf];
|
|
219
|
+
delete inner[leaf];
|
|
220
|
+
if (Object.keys(inner).length === 0)
|
|
221
|
+
delete map[container];
|
|
222
|
+
return { found: true, value };
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Translate the retired inspect/LSP keys of one block, exactly as
|
|
226
|
+
* `doctor --fix` rewrites them: `idle.lsp_ttl_minutes` becomes
|
|
227
|
+
* `lsp.idle_minutes` (clamped to its range) unless that is already set, and
|
|
228
|
+
* the two inspect keys that never had an effect are dropped.
|
|
229
|
+
*/
|
|
230
|
+
function translateInspectLspPaths(map, prefix, out) {
|
|
231
|
+
const ttl = takeNested(map, "idle", "lsp_ttl_minutes");
|
|
232
|
+
if (ttl.found) {
|
|
233
|
+
recordRetired(out, prefix, "idle.lsp_ttl_minutes");
|
|
234
|
+
if (isRecord(map.lsp) && map.lsp.idle_minutes !== undefined) {
|
|
235
|
+
superseded(out, `${prefix}idle.lsp_ttl_minutes`, "idle.lsp_ttl_minutes is ignored because lsp.idle_minutes is set");
|
|
236
|
+
}
|
|
237
|
+
else {
|
|
238
|
+
const raw = typeof ttl.value === "number" && Number.isSafeInteger(ttl.value)
|
|
239
|
+
? ttl.value
|
|
240
|
+
: LSP_IDLE_MINUTES_DEFAULT;
|
|
241
|
+
const minutes = Math.min(LSP_IDLE_MINUTES_MAX, Math.max(LSP_IDLE_MINUTES_MIN, raw));
|
|
242
|
+
if (!Object.hasOwn(map, "lsp"))
|
|
243
|
+
map.lsp = {};
|
|
244
|
+
if (isRecord(map.lsp))
|
|
245
|
+
map.lsp.idle_minutes = minutes;
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
for (const leaf of ["tier2_soft_deadline_ms", "max_drill_down_items"]) {
|
|
249
|
+
if (takeNested(map, "inspect", leaf).found)
|
|
250
|
+
recordRetired(out, prefix, `inspect.${leaf}`);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Translate the retired keys of one tier/harness block in place.
|
|
255
|
+
*
|
|
256
|
+
* The false runtime gates (`backup.enabled`, `inspect.enabled`, `bash`,
|
|
257
|
+
* `bash.enabled`) are current keys and only switch their behaviour off; they
|
|
258
|
+
* never remove a tool registration. Only `disabled_tools` does that.
|
|
259
|
+
*/
|
|
166
260
|
function translateBlock(map,
|
|
167
261
|
// True only for the user file's base block, the one place the absent-base
|
|
168
262
|
// default disables may be added.
|
|
169
|
-
userBase,
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
out.errors.push(removed("gh_shim", "github.shim"));
|
|
174
|
-
}
|
|
263
|
+
userBase, blockLabel, out) {
|
|
264
|
+
const prefix = blockLabel === "base" ? "" : `${blockLabel}.`;
|
|
265
|
+
translateGithubAliases(map, prefix, out);
|
|
266
|
+
translateInspectLspPaths(map, prefix, out);
|
|
175
267
|
let explicitList;
|
|
176
268
|
const rawList = map.disabled_tools;
|
|
177
269
|
if (Array.isArray(rawList) && rawList.every((entry) => typeof entry === "string")) {
|
|
@@ -179,30 +271,15 @@ userBase, phase, blockLabel, out) {
|
|
|
179
271
|
const host = LEGACY_TOOL_ALIASES[name];
|
|
180
272
|
if (host === undefined)
|
|
181
273
|
return name;
|
|
182
|
-
out
|
|
183
|
-
if (phase === "rejecting")
|
|
184
|
-
out.errors.push(removed(name, host));
|
|
274
|
+
recordRetired(out, prefix, name);
|
|
185
275
|
return host;
|
|
186
276
|
});
|
|
187
277
|
}
|
|
188
|
-
const
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
const gates = falseRuntimeGates(map);
|
|
192
|
-
if (phase === "rejecting") {
|
|
193
|
-
for (const path of suppliedPaths) {
|
|
194
|
-
const replacement = RETIRED_PATHS.find(([old]) => old === path)?.[1] ?? "disabled_tools";
|
|
195
|
-
out.errors.push(removed(path, replacement));
|
|
196
|
-
}
|
|
197
|
-
if (gates.length > 0 && explicitList === undefined) {
|
|
198
|
-
out.warnings.push({
|
|
199
|
-
code: "legacy_runtime_gate_runtime_only",
|
|
200
|
-
key: blockLabel,
|
|
201
|
-
message: `${gates.join(", ")} now restricts runtime behavior only and no longer removes tool registrations; list tools in disabled_tools to unregister them`,
|
|
202
|
-
});
|
|
203
|
-
}
|
|
204
|
-
return;
|
|
278
|
+
for (const [path] of RETIRED_PATHS) {
|
|
279
|
+
if (hasPath(map, path))
|
|
280
|
+
recordRetired(out, prefix, path);
|
|
205
281
|
}
|
|
282
|
+
const gates = falseRuntimeGates(map);
|
|
206
283
|
if (explicitList !== undefined)
|
|
207
284
|
map.disabled_tools = explicitList;
|
|
208
285
|
for (const [leaf, legacy, experimental] of INDEX_INPUTS) {
|
|
@@ -229,20 +306,12 @@ userBase, phase, blockLabel, out) {
|
|
|
229
306
|
}
|
|
230
307
|
if (canonical !== undefined) {
|
|
231
308
|
if (canonical !== value) {
|
|
232
|
-
out
|
|
233
|
-
code: "superseded_legacy_config",
|
|
234
|
-
key,
|
|
235
|
-
message: `${key}=${value} is ignored because indexes.${leaf}=${canonical} is set`,
|
|
236
|
-
});
|
|
309
|
+
superseded(out, key, `${key}=${value} is ignored because indexes.${leaf}=${canonical} is set`);
|
|
237
310
|
}
|
|
238
311
|
}
|
|
239
312
|
else if (chosen !== undefined) {
|
|
240
313
|
if (chosen !== value) {
|
|
241
|
-
out
|
|
242
|
-
code: "superseded_legacy_config",
|
|
243
|
-
key,
|
|
244
|
-
message: `${key}=${value} is ignored because ${legacy}=${chosen} takes precedence`,
|
|
245
|
-
});
|
|
314
|
+
superseded(out, key, `${key}=${value} is ignored because ${legacy}=${chosen} takes precedence`);
|
|
246
315
|
}
|
|
247
316
|
}
|
|
248
317
|
else {
|
|
@@ -265,11 +334,7 @@ userBase, phase, blockLabel, out) {
|
|
|
265
334
|
if (!Object.hasOwn(github, leaf))
|
|
266
335
|
github[leaf] = false;
|
|
267
336
|
else if (github[leaf] === true) {
|
|
268
|
-
out.
|
|
269
|
-
code: "superseded_legacy_config",
|
|
270
|
-
key: "github.enabled",
|
|
271
|
-
message: `github.enabled=false is ignored for github.${leaf} because github.${leaf}=true is set`,
|
|
272
|
-
});
|
|
337
|
+
superseded(out, "github.enabled", `github.enabled=false is ignored for github.${leaf} because github.${leaf}=true is set`);
|
|
273
338
|
}
|
|
274
339
|
}
|
|
275
340
|
}
|
|
@@ -311,21 +376,19 @@ userBase, phase, blockLabel, out) {
|
|
|
311
376
|
message: RETIRED_ENABLED_FALSE_INDEXES_NOTE,
|
|
312
377
|
});
|
|
313
378
|
}
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
for (const name of BASH_GATE_DISABLES)
|
|
321
|
-
generated.add(name);
|
|
379
|
+
if (gates.length > 0 && explicitList === undefined) {
|
|
380
|
+
out.warnings.push({
|
|
381
|
+
code: "legacy_runtime_gate_runtime_only",
|
|
382
|
+
key: blockLabel,
|
|
383
|
+
message: `${gates.join(", ")} now restricts runtime behavior only and no longer removes tool registrations; list tools in disabled_tools to unregister them`,
|
|
384
|
+
});
|
|
322
385
|
}
|
|
323
386
|
if (explicitList !== undefined) {
|
|
324
387
|
if (explicitSurface || generated.size > 0) {
|
|
325
388
|
out.warnings.push({
|
|
326
389
|
code: "superseded_legacy_config",
|
|
327
390
|
key: blockLabel,
|
|
328
|
-
message: "disabled_tools is set explicitly, so legacy tool_surface/hoist_builtin_tools/enabled
|
|
391
|
+
message: "disabled_tools is set explicitly, so legacy tool_surface/hoist_builtin_tools/enabled do not change registration",
|
|
329
392
|
once: true,
|
|
330
393
|
});
|
|
331
394
|
}
|
|
@@ -343,13 +406,6 @@ userBase, phase, blockLabel, out) {
|
|
|
343
406
|
}
|
|
344
407
|
if (list !== undefined)
|
|
345
408
|
map.disabled_tools = list;
|
|
346
|
-
if (gates.length > 0) {
|
|
347
|
-
out.warnings.push({
|
|
348
|
-
code: "legacy_runtime_gate_requires_fix",
|
|
349
|
-
key: blockLabel,
|
|
350
|
-
message: `${gates.join(", ")} still removes tool registrations during this release only; run \`npx @cortexkit/aft doctor --fix\` to record the choice in disabled_tools`,
|
|
351
|
-
});
|
|
352
|
-
}
|
|
353
409
|
}
|
|
354
410
|
/**
|
|
355
411
|
* What a retired `enabled: false` no longer does. The translation only hides
|
|
@@ -357,13 +413,21 @@ userBase, phase, blockLabel, out) {
|
|
|
357
413
|
* of a repository must also switch the indexes off.
|
|
358
414
|
*/
|
|
359
415
|
export const RETIRED_ENABLED_FALSE_INDEXES_NOTE = "enabled: false no longer turns AFT off: it is translated to disabling every tool, but the trigram, semantic and callgraph indexes still build. To keep AFT from indexing this repository, also set indexes.trigram, indexes.semantic and indexes.callgraph to false.";
|
|
360
|
-
/**
|
|
416
|
+
/**
|
|
417
|
+
* The once-per-identity notice for a project config file whose retired keys
|
|
418
|
+
* were translated in memory. The file itself is never written: it is shared
|
|
419
|
+
* through its repository. Mirrors `project_retired_keys_notice` in
|
|
420
|
+
* `crates/aft/src/feature_config.rs`.
|
|
421
|
+
*/
|
|
361
422
|
export function legacyConfigNoticeMessage(configPath, translation) {
|
|
362
|
-
const base =
|
|
423
|
+
const base = `${configPath} uses retired keys (${translation.retiredKeys.join(", ")}); AFT applied their current equivalents, with the same limits a project config has for those keys. Run \`npx @cortexkit/aft doctor --fix\` to update the file.`;
|
|
363
424
|
return translation.retiredEnabledFalse ? `${base} ${RETIRED_ENABLED_FALSE_INDEXES_NOTE}` : base;
|
|
364
425
|
}
|
|
365
426
|
/**
|
|
366
|
-
* Translate
|
|
427
|
+
* Translate every block (base plus each `harnesses.<id>`) in place. Retired
|
|
428
|
+
* keys are never refused: their current equivalents then pass through the
|
|
429
|
+
* normal user/project trust rules, exactly as if the file had spelled them
|
|
430
|
+
* out.
|
|
367
431
|
*
|
|
368
432
|
* Only the user file's base block receives the absent-base default
|
|
369
433
|
* (`aft_move`/`aft_delete`) when its legacy keys generate disables: that
|
|
@@ -371,21 +435,21 @@ export function legacyConfigNoticeMessage(configPath, translation) {
|
|
|
371
435
|
* contributes only the names its own legacy keys imply, so a legacy key in a
|
|
372
436
|
* repository can never re-disable tools the user enabled.
|
|
373
437
|
*/
|
|
374
|
-
export function translateConfigDocument(map,
|
|
438
|
+
export function translateConfigDocument(map, tier) {
|
|
375
439
|
const out = {
|
|
376
|
-
errors: [],
|
|
377
440
|
warnings: [],
|
|
378
441
|
legacyInput: false,
|
|
442
|
+
retiredKeys: [],
|
|
379
443
|
retiredEnabledFalse: false,
|
|
380
444
|
};
|
|
381
|
-
translateBlock(map, tier === "user",
|
|
445
|
+
translateBlock(map, tier === "user", "base", out);
|
|
382
446
|
if (isRecord(map.harnesses)) {
|
|
383
447
|
for (const [name, block] of Object.entries(map.harnesses)) {
|
|
384
448
|
if (isRecord(block))
|
|
385
|
-
translateBlock(block, false,
|
|
449
|
+
translateBlock(block, false, `harnesses.${name}`, out);
|
|
386
450
|
}
|
|
387
451
|
}
|
|
388
|
-
out.
|
|
452
|
+
out.retiredKeys = sortedUnique(out.retiredKeys);
|
|
389
453
|
return out;
|
|
390
454
|
}
|
|
391
455
|
/** Distinct unknown names in a resolved disabled list, sorted. */
|
|
@@ -529,7 +593,7 @@ export function noticeDigest(projection) {
|
|
|
529
593
|
* are spelled as `npx @cortexkit/aft …`: users reach this notice through the
|
|
530
594
|
* plugin, with no `aft` command on their PATH.
|
|
531
595
|
*/
|
|
532
|
-
export const SEMANTIC_COST_NOTICE = "AFT indexes now default on; the local semantic backend may download an ONNX runtime and model and use CPU. Run npx @cortexkit/aft setup to change indexes.semantic
|
|
596
|
+
export const SEMANTIC_COST_NOTICE = "AFT indexes now default on; the local semantic backend may download an ONNX runtime and model and use CPU. Run npx @cortexkit/aft setup to change indexes.semantic.";
|
|
533
597
|
/**
|
|
534
598
|
* Identity of the semantic cost notice. It is a constant rather than a digest
|
|
535
599
|
* of the config file, so the notice is delivered once per user config path and
|
|
@@ -590,12 +654,15 @@ export const DEFAULT_INDEXES = {
|
|
|
590
654
|
semantic: true,
|
|
591
655
|
callgraph: true,
|
|
592
656
|
};
|
|
593
|
-
/**
|
|
657
|
+
/**
|
|
658
|
+
* Whole-load rejection: the candidate config must not be used at all. Raised
|
|
659
|
+
* when a resolved configuration lacks its registration list or an index
|
|
660
|
+
* switch; retired keys are translated and never raise it.
|
|
661
|
+
*/
|
|
594
662
|
export class ConfigRejectedError extends Error {
|
|
595
663
|
errors;
|
|
596
664
|
constructor(errors, source) {
|
|
597
|
-
super(`AFT configuration${source ? ` at ${source}` : ""} was rejected: ${errors.join(", ")}
|
|
598
|
-
"Run `npx @cortexkit/aft doctor --fix` to migrate removed keys.");
|
|
665
|
+
super(`AFT configuration${source ? ` at ${source}` : ""} was rejected: ${errors.join(", ")}.`);
|
|
599
666
|
this.name = "ConfigRejectedError";
|
|
600
667
|
this.errors = errors;
|
|
601
668
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature-config.js","sourceRoot":"","sources":["../src/feature-config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"feature-config.js","sourceRoot":"","sources":["../src/feature-config.ts"],"names":[],"mappings":"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"}
|