@cortexkit/aft-bridge 0.63.5 → 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 (59) hide show
  1. package/dist/bash-format.d.ts +5 -0
  2. package/dist/bash-format.d.ts.map +1 -1
  3. package/dist/bash-format.js +7 -0
  4. package/dist/bash-format.js.map +1 -1
  5. package/dist/bash-hints.d.ts +12 -5
  6. package/dist/bash-hints.d.ts.map +1 -1
  7. package/dist/bash-hints.js +88 -62
  8. package/dist/bash-hints.js.map +1 -1
  9. package/dist/bash-host-fallback.d.ts +4 -8
  10. package/dist/bash-host-fallback.d.ts.map +1 -1
  11. package/dist/bash-host-fallback.js +7 -8
  12. package/dist/bash-host-fallback.js.map +1 -1
  13. package/dist/bash-permissions.d.ts +1 -0
  14. package/dist/bash-permissions.d.ts.map +1 -1
  15. package/dist/bash-permissions.js +23 -11
  16. package/dist/bash-permissions.js.map +1 -1
  17. package/dist/bridge.d.ts +2 -0
  18. package/dist/bridge.d.ts.map +1 -1
  19. package/dist/bridge.js +26 -5
  20. package/dist/bridge.js.map +1 -1
  21. package/dist/callgraph-format.d.ts.map +1 -1
  22. package/dist/callgraph-format.js +64 -6
  23. package/dist/callgraph-format.js.map +1 -1
  24. package/dist/config-watch.d.ts +3 -1
  25. package/dist/config-watch.d.ts.map +1 -1
  26. package/dist/config-watch.js +108 -9
  27. package/dist/config-watch.js.map +1 -1
  28. package/dist/feature-config.d.ts +95 -11
  29. package/dist/feature-config.d.ts.map +1 -1
  30. package/dist/feature-config.js +307 -35
  31. package/dist/feature-config.js.map +1 -1
  32. package/dist/index.d.ts +4 -2
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +4 -2
  35. package/dist/index.js.map +1 -1
  36. package/dist/lsp-github-install.d.ts +7 -0
  37. package/dist/lsp-github-install.d.ts.map +1 -1
  38. package/dist/lsp-github-install.js +14 -10
  39. package/dist/lsp-github-install.js.map +1 -1
  40. package/dist/lsp-npm-policy.d.ts.map +1 -1
  41. package/dist/lsp-npm-policy.js +4 -3
  42. package/dist/lsp-npm-policy.js.map +1 -1
  43. package/dist/lsp-npm-selection.d.ts +22 -0
  44. package/dist/lsp-npm-selection.d.ts.map +1 -0
  45. package/dist/lsp-npm-selection.js +97 -0
  46. package/dist/lsp-npm-selection.js.map +1 -0
  47. package/dist/npm-resolver.d.ts +4 -0
  48. package/dist/npm-resolver.d.ts.map +1 -1
  49. package/dist/npm-resolver.js +20 -0
  50. package/dist/npm-resolver.js.map +1 -1
  51. package/dist/subc-transport.d.ts +6 -1
  52. package/dist/subc-transport.d.ts.map +1 -1
  53. package/dist/subc-transport.js +45 -15
  54. package/dist/subc-transport.js.map +1 -1
  55. package/dist/wait-clock.d.ts +31 -0
  56. package/dist/wait-clock.d.ts.map +1 -0
  57. package/dist/wait-clock.js +80 -0
  58. package/dist/wait-clock.js.map +1 -0
  59. package/package.json +2 -2
@@ -3,14 +3,16 @@
3
3
  *
4
4
  * Mirrors `crates/aft/src/feature_config.rs`: the literal tool inventory, the
5
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),
6
+ * canonical `disabled_tools` / `indexes` / `github` / `lsp` / `idle` leaves
7
+ * (the names retired in 0.62 or earlier, and the data-layer keys from
8
+ * `DATA_LAYER_KEYS_REFUSED_FROM` on, are refused by `removedConfigKeyErrors`),
8
9
  * validation of a resolved configuration, and the migration-notice projection
9
10
  * digest. The config parity fixtures and the shared notice-projection fixture
10
11
  * (`crates/aft/tests/fixtures/feature_config/notice_projection.json`) keep the
11
12
  * two implementations equal.
12
13
  */
13
14
  import { createHash } from "node:crypto";
15
+ import { createRequire } from "node:module";
14
16
  /** Every agent-visible tool name a registration adapter may publish (sorted). */
15
17
  export const CANONICAL_TOOLS = [
16
18
  "aft_callgraph",
@@ -73,24 +75,178 @@ export const REMOVED_OPENCODE_PATHS = [
73
75
  "opencode.server_url",
74
76
  "opencode.server_password_env",
75
77
  ];
76
- /** Removed transport settings fail only in the base and first-level harness blocks. */
77
- export function removedConfigKeyErrors(value) {
78
+ /**
79
+ * Keys the per-repository data store leaves with nothing to do. User config
80
+ * refuses them; project config drops them with their existing no-effect notice.
81
+ * Mirrors `REMOVED_DATA_LAYER_PATHS` in
82
+ * `crates/aft/src/feature_config.rs`.
83
+ */
84
+ export const REMOVED_DATA_LAYER_PATHS = [
85
+ "views.callgraph_copies",
86
+ "views.enabled",
87
+ "worktree.ram_overlay",
88
+ ];
89
+ /**
90
+ * `views.idle_checkout_hours` and the key that replaces it. Translated like any
91
+ * retired key (and the user file rewritten) until
92
+ * `DATA_LAYER_KEYS_REFUSED_FROM`, then refused.
93
+ */
94
+ export const RETIRED_IDLE_CHECKOUT_HOURS = [
95
+ "views.idle_checkout_hours",
96
+ "idle.checkout_hours",
97
+ ];
98
+ /**
99
+ * First release, as [major, minor], that refuses the keys in
100
+ * `DATA_LAYER_RETIRED_PATHS` with `removed_config_key`. Earlier releases
101
+ * translate or keep them, with a notice.
102
+ */
103
+ export const DATA_LAYER_KEYS_REFUSED_FROM = [0, 65];
104
+ /** The remaining version-gated rename; removed no-effect keys refuse only user config. */
105
+ export const DATA_LAYER_RETIRED_PATHS = ["views.idle_checkout_hours"];
106
+ /** `idle.checkout_hours` default and range; mirrors `crates/aft/src/config.rs`. */
107
+ export const IDLE_CHECKOUT_HOURS_DEFAULT = 168;
108
+ export const IDLE_CHECKOUT_HOURS_MIN = 1;
109
+ export const IDLE_CHECKOUT_HOURS_MAX = 24 * 365;
110
+ /** The [major, minor] release a version string names, ignoring patch and suffixes. */
111
+ export function parseRelease(version) {
112
+ const match = /^(\d+)\.(\d+)(?:\.|$)/.exec(version);
113
+ return match ? [Number(match[1]), Number(match[2])] : undefined;
114
+ }
115
+ /** Manifests that carry this code's release: the bridge, or a bundle that inlines it. */
116
+ const AFT_PACKAGE_NAMES = new Set([
117
+ "@cortexkit/aft-bridge",
118
+ "@cortexkit/aft-opencode",
119
+ "@cortexkit/aft-pi",
120
+ "@cortexkit/aft",
121
+ ]);
122
+ /**
123
+ * This code's release, read from the nearest AFT package manifest above it.
124
+ * The bridge is also bundled into the plugins and the CLI at different
125
+ * depths, and every AFT package is released with the same version, so the
126
+ * first AFT manifest found names the release. [0, 0] when none is found,
127
+ * which refuses nothing.
128
+ */
129
+ function readRunningRelease() {
130
+ const req = createRequire(import.meta.url);
131
+ for (const candidate of ["../package.json", "../../package.json", "../../../package.json"]) {
132
+ try {
133
+ const manifest = req(candidate);
134
+ if (manifest.name && AFT_PACKAGE_NAMES.has(manifest.name) && manifest.version) {
135
+ return parseRelease(manifest.version) ?? [0, 0];
136
+ }
137
+ }
138
+ catch {
139
+ // Not at this depth; try the next.
140
+ }
141
+ }
142
+ return [0, 0];
143
+ }
144
+ let runningRelease;
145
+ let runningReleaseOverrideForTest;
146
+ /** Pin release-sensitive tests independently of package versions; reset with undefined after each test. */
147
+ export function setRunningReleaseForTest(release) {
148
+ runningReleaseOverrideForTest = release;
149
+ }
150
+ /** The [major, minor] release of this package, read once. */
151
+ export function getRunningRelease() {
152
+ if (runningReleaseOverrideForTest)
153
+ return runningReleaseOverrideForTest;
154
+ runningRelease ??= readRunningRelease();
155
+ return runningRelease;
156
+ }
157
+ function releaseAtLeast(release, floor) {
158
+ return release[0] !== floor[0] ? release[0] > floor[0] : release[1] >= floor[1];
159
+ }
160
+ /** `0.65.0` for `DATA_LAYER_KEYS_REFUSED_FROM`, as notices print it. */
161
+ function refusedFromVersion() {
162
+ return `${DATA_LAYER_KEYS_REFUSED_FROM[0]}.${DATA_LAYER_KEYS_REFUSED_FROM[1]}.0`;
163
+ }
164
+ /**
165
+ * Removed settings fail only in the base and first-level harness blocks. The
166
+ * data-layer keys fail only from `DATA_LAYER_KEYS_REFUSED_FROM`, judged by
167
+ * `release` (this package's own release unless a test names one). The names
168
+ * retired in 0.62 or earlier (`REFUSED_RETIRED_PATHS` and the prefixed tool
169
+ * names) fail only when `refuseRetired` is true. The plugins pass false for
170
+ * both files: the AFT binary rewrites the user file to current keys when it
171
+ * loads it, and a project file loads with a notice rather than leaving a
172
+ * repository without AFT. Mirrors `removed_config_key_errors` in
173
+ * `crates/aft/src/feature_config.rs`, which always refuses them; the binary
174
+ * applies it to the user file only.
175
+ */
176
+ export function removedConfigKeyErrors(value, release = getRunningRelease(), refuseRetired = true) {
78
177
  if (!isRecord(value))
79
178
  return [];
80
- const errors = removedOpencodeKeyErrors(value);
179
+ const errors = removedBlockKeyErrors(value, release, refuseRetired);
81
180
  if (isRecord(value.harnesses)) {
82
181
  for (const [name, block] of Object.entries(value.harnesses)) {
83
182
  if (!isRecord(block))
84
183
  continue;
85
- for (const error of removedOpencodeKeyErrors(block)) {
184
+ for (const error of removedBlockKeyErrors(block, release, refuseRetired)) {
86
185
  errors.push(error.replace("removed_config_key:", `removed_config_key:harnesses.${name}.`));
87
186
  }
88
187
  }
89
188
  }
90
189
  return errors;
91
190
  }
92
- function removedOpencodeKeyErrors(value) {
93
- return REMOVED_OPENCODE_PATHS.filter((path) => hasPath(value, path)).map((path) => `removed_config_key:${path}; run aft doctor --fix`);
191
+ function removedBlockKeyErrors(value, release, refuseRetired) {
192
+ const paths = REMOVED_OPENCODE_PATHS.filter((path) => hasPath(value, path));
193
+ if (refuseRetired)
194
+ paths.push(...refusedRetiredNames(value));
195
+ if (refuseRetired && releaseAtLeast(release, DATA_LAYER_KEYS_REFUSED_FROM))
196
+ paths.push(...DATA_LAYER_RETIRED_PATHS.filter((path) => hasPath(value, path)));
197
+ return paths.map((path) => `removed_config_key:${path}; run npx @cortexkit/aft doctor --fix`);
198
+ }
199
+ /**
200
+ * Names retired in 0.62 or earlier, refused from 0.64, in the order a refusal
201
+ * lists them. A config that still sets one is refused with
202
+ * `removed_config_key`; `doctor --fix` (or the automatic rewrite of the user
203
+ * file) replaces it with its current equivalent or deletes it. Names retired
204
+ * more recently (`bridge.hang_threshold`) are not
205
+ * listed: they are still translated, with a notice. Mirrors
206
+ * `REFUSED_RETIRED_PATHS` in `crates/aft/src/feature_config.rs`.
207
+ */
208
+ export const REFUSED_RETIRED_PATHS = [
209
+ "sandbox.enabled",
210
+ "tool_surface",
211
+ "hoist_builtin_tools",
212
+ "enabled",
213
+ "search_index",
214
+ "experimental_search_index",
215
+ "semantic_search",
216
+ "experimental_semantic_search",
217
+ "callgraph_store",
218
+ "github.enabled",
219
+ "gh_read",
220
+ "gh_shim.enabled",
221
+ "experimental_lsp_ty",
222
+ "experimental_bash_rewrite",
223
+ "experimental_bash_compress",
224
+ "experimental_bash_background",
225
+ "experimental.bash",
226
+ "idle.lsp_ttl_minutes",
227
+ "inspect.tier2_soft_deadline_ms",
228
+ "inspect.max_drill_down_items",
229
+ "views.callgraph_copies",
230
+ "views.enabled",
231
+ "worktree.ram_overlay",
232
+ ];
233
+ /**
234
+ * The refused retired names one block sets: the paths in
235
+ * `REFUSED_RETIRED_PATHS`, then each prefixed tool name (`LEGACY_TOOL_ALIASES`)
236
+ * its `disabled_tools` list contains, once each and by its bare name, as the
237
+ * retired-key notices list it.
238
+ */
239
+ function refusedRetiredNames(block) {
240
+ const names = REFUSED_RETIRED_PATHS.filter((path) => hasPath(block, path));
241
+ if (Array.isArray(block.disabled_tools)) {
242
+ for (const name of block.disabled_tools) {
243
+ if (typeof name !== "string" || !Object.hasOwn(LEGACY_TOOL_ALIASES, name))
244
+ continue;
245
+ if (!names.includes(name))
246
+ names.push(name);
247
+ }
248
+ }
249
+ return names;
94
250
  }
95
251
  /** Retired config paths and their replacement. */
96
252
  export const RETIRED_PATHS = [
@@ -284,10 +440,16 @@ function translateInspectLspPaths(map, prefix, out) {
284
440
  * dropped on load and removed by `doctor --fix`, and the notice says so.
285
441
  * `bridge.hang_threshold` counted request timeouts toward restarting the
286
442
  * bridge; a timeout now fails only its own request, and the bridge's hang
287
- * watchdog judges a stuck child by its silence instead. Mirrors
288
- * `REMOVED_NO_EFFECT_PATHS` in `crates/aft/src/feature_config.rs`.
443
+ * watchdog judges a stuck child by its silence instead.
444
+ * `inspect.tier2_idle_minutes` delayed the whole-repository analyses the
445
+ * OpenCode plugin started when a session went idle; those analyses now run
446
+ * only when `aft_inspect` is called. Mirrors `REMOVED_NO_EFFECT_PATHS` in
447
+ * `crates/aft/src/feature_config.rs`.
289
448
  */
290
- export const REMOVED_NO_EFFECT_PATHS = ["bridge.hang_threshold"];
449
+ export const REMOVED_NO_EFFECT_PATHS = [
450
+ "bridge.hang_threshold",
451
+ "inspect.tier2_idle_minutes",
452
+ ];
291
453
  /** Drop the retired keys that no longer do anything, exactly as `doctor --fix` removes them. */
292
454
  function dropNoEffectPaths(map, prefix, out) {
293
455
  for (const path of REMOVED_NO_EFFECT_PATHS) {
@@ -298,9 +460,67 @@ function dropNoEffectPaths(map, prefix, out) {
298
460
  }
299
461
  }
300
462
  /**
301
- * Translate flat experimental aliases to nested settings. Graduating
302
- * experimental.bash explicitly sets omitted feature flags to false;
303
- * otherwise the current default-on bash settings would silently enable them.
463
+ * The `idle.checkout_hours` value a retired `views.idle_checkout_hours` value
464
+ * becomes: a whole number clamped to the current range, or the default for
465
+ * anything else. Mirrors `retired_idle_checkout_hours` in
466
+ * `crates/aft/src/feature_config.rs`.
467
+ */
468
+ export function retiredIdleCheckoutHours(value) {
469
+ const raw = typeof value === "number" && Number.isSafeInteger(value) ? value : IDLE_CHECKOUT_HOURS_DEFAULT;
470
+ return Math.min(IDLE_CHECKOUT_HOURS_MAX, Math.max(IDLE_CHECKOUT_HOURS_MIN, raw));
471
+ }
472
+ /**
473
+ * Translate the keys the data-layer cutover retires in one block:
474
+ * `views.idle_checkout_hours` becomes `idle.checkout_hours` (clamped to its
475
+ * range) unless that is already set, exactly as `doctor --fix` rewrites it.
476
+ * Removed no-effect keys are dropped before strict schema validation.
477
+ */
478
+ function translateDataLayerPaths(map, prefix, out) {
479
+ const [retired, replacement] = RETIRED_IDLE_CHECKOUT_HOURS;
480
+ const hours = takeNested(map, "views", "idle_checkout_hours");
481
+ if (hours.found) {
482
+ recordRetired(out, prefix, retired);
483
+ if (isRecord(map.idle) && map.idle.checkout_hours !== undefined) {
484
+ superseded(out, `${prefix}${retired}`, `${retired} is ignored because ${replacement} is set`);
485
+ }
486
+ else {
487
+ if (!Object.hasOwn(map, "idle"))
488
+ map.idle = {};
489
+ if (isRecord(map.idle))
490
+ map.idle.checkout_hours = retiredIdleCheckoutHours(hours.value);
491
+ }
492
+ }
493
+ for (const path of REMOVED_DATA_LAYER_PATHS) {
494
+ const [container, leaf] = path.split(".");
495
+ if (container && leaf && takeNested(map, container, leaf).found)
496
+ recordRetired(out, prefix, path);
497
+ }
498
+ }
499
+ /**
500
+ * Delete the removed data-layer keys from a translated document, base and
501
+ * harness blocks alike, emptying containers as `doctor --fix` does. Used to
502
+ * preview what `doctor --fix` will remove. Load-time translation also drops them.
503
+ */
504
+ export function dropRemovedDataLayerKeys(map) {
505
+ const blocks = [map];
506
+ if (isRecord(map.harnesses)) {
507
+ for (const block of Object.values(map.harnesses))
508
+ if (isRecord(block))
509
+ blocks.push(block);
510
+ }
511
+ for (const block of blocks) {
512
+ for (const path of REMOVED_DATA_LAYER_PATHS) {
513
+ const [container, leaf] = path.split(".");
514
+ if (container && leaf)
515
+ takeNested(block, container, leaf);
516
+ }
517
+ }
518
+ }
519
+ /**
520
+ * Translate flat experimental aliases to nested settings and move the
521
+ * `experimental.bash` block to top-level `bash`. Graduating a block that sets
522
+ * a feature flag explicitly sets its omitted flags to false; otherwise the
523
+ * current default-on bash settings would silently enable them.
304
524
  */
305
525
  function translateExperimentalPaths(map, prefix, out) {
306
526
  for (const [oldKey, leaf] of [
@@ -335,24 +555,29 @@ function translateExperimentalPaths(map, prefix, out) {
335
555
  const experimental = map.experimental;
336
556
  const legacy = experimental.bash;
337
557
  if (isRecord(legacy)) {
338
- if (!["rewrite", "compress", "background"].some((leaf) => Object.hasOwn(legacy, leaf)))
339
- return;
558
+ if (Object.keys(legacy).length === 0)
559
+ recordRetired(out, prefix, "experimental.bash");
340
560
  for (const leaf of Object.keys(legacy))
341
561
  recordRetired(out, prefix, `experimental.bash.${leaf}`);
342
562
  if (Object.hasOwn(map, "bash")) {
343
563
  superseded(out, "experimental.bash", 'experimental.bash is ignored because top-level "bash" is already set');
344
564
  }
345
565
  else {
346
- const bash = {
347
- rewrite: legacy.rewrite === true,
348
- compress: legacy.compress === true,
349
- background: legacy.background === true,
350
- };
566
+ const bash = {};
567
+ // A block with only reminder settings never opted into the feature
568
+ // flags, so they keep their current defaults instead of being written
569
+ // as false.
570
+ if (["rewrite", "compress", "background"].some((leaf) => Object.hasOwn(legacy, leaf))) {
571
+ bash.rewrite = legacy.rewrite === true;
572
+ bash.compress = legacy.compress === true;
573
+ bash.background = legacy.background === true;
574
+ }
351
575
  for (const leaf of ["long_running_reminder_enabled", "long_running_reminder_interval_ms"]) {
352
576
  if (Object.hasOwn(legacy, leaf))
353
577
  bash[leaf] = legacy[leaf];
354
578
  }
355
- map.bash = bash;
579
+ if (Object.keys(bash).length > 0)
580
+ map.bash = bash;
356
581
  }
357
582
  }
358
583
  else {
@@ -376,6 +601,7 @@ userBase, blockLabel, out) {
376
601
  const prefix = blockLabel === "base" ? "" : `${blockLabel}.`;
377
602
  translateGithubAliases(map, prefix, out);
378
603
  translateInspectLspPaths(map, prefix, out);
604
+ translateDataLayerPaths(map, prefix, out);
379
605
  dropNoEffectPaths(map, prefix, out);
380
606
  translateExperimentalPaths(map, prefix, out);
381
607
  if (isRecord(map.sandbox) && Object.hasOwn(map.sandbox, "enabled")) {
@@ -414,11 +640,9 @@ userBase, blockLabel, out) {
414
640
  return host;
415
641
  });
416
642
  }
643
+ // `experimental.bash` was already recorded, leaf by leaf, and removed by
644
+ // `translateExperimentalPaths`.
417
645
  for (const [path] of RETIRED_PATHS) {
418
- // A block with only reminder settings never opted into experimental
419
- // bash features. Leave it unchanged instead of adding false flags.
420
- if (path === "experimental.bash")
421
- continue;
422
646
  if (hasPath(map, path))
423
647
  recordRetired(out, prefix, path);
424
648
  }
@@ -573,6 +797,10 @@ export const NO_EFFECT_RETIRED_NOTES = [
573
797
  "inspect.max_drill_down_items",
574
798
  "inspect.max_drill_down_items never had an effect, so the setting can be removed.",
575
799
  ],
800
+ [
801
+ "inspect.tier2_idle_minutes",
802
+ "inspect.tier2_idle_minutes no longer does anything: AFT runs whole-repository analyses only when aft_inspect is called, so the setting can be removed.",
803
+ ],
576
804
  [
577
805
  "inspect.tier2_soft_deadline_ms",
578
806
  "inspect.tier2_soft_deadline_ms never had an effect, so the setting can be removed.",
@@ -580,15 +808,47 @@ export const NO_EFFECT_RETIRED_NOTES = [
580
808
  ];
581
809
  /** The no-effect sentence for a retired key, which may carry a `harnesses.<id>.` prefix. */
582
810
  function noEffectNote(key) {
583
- return NO_EFFECT_RETIRED_NOTES.find(([path]) => key === path || key.endsWith(`.${path}`))?.[1];
811
+ return [...NO_EFFECT_RETIRED_NOTES, ...REMOVED_DATA_LAYER_NOTES].find(([path]) => namesPath(key, path))?.[1];
812
+ }
813
+ /** Whether `key`, which may carry a `harnesses.<id>.` prefix, is `path`. */
814
+ function namesPath(key, path) {
815
+ return key === path || key.endsWith(`.${path}`);
816
+ }
817
+ /**
818
+ * Why each removed data-layer key no longer does anything, in
819
+ * `REMOVED_DATA_LAYER_PATHS` order. Mirrors `REMOVED_DATA_LAYER_NOTES` in
820
+ * `crates/aft/src/feature_config.rs`.
821
+ */
822
+ export const REMOVED_DATA_LAYER_NOTES = [
823
+ [
824
+ "views.callgraph_copies",
825
+ "views.callgraph_copies is gone because no checkout borrows another checkout's call graph any more.",
826
+ ],
827
+ [
828
+ "views.enabled",
829
+ "views.enabled is gone because AFT now keeps one index store per repository and always uses it.",
830
+ ],
831
+ [
832
+ "worktree.ram_overlay",
833
+ "worktree.ram_overlay is gone because every worktree now has its own index state, so there is no borrowed index to patch in memory.",
834
+ ],
835
+ ];
836
+ /**
837
+ * The sentence saying a user file that still names `views.idle_checkout_hours` will
838
+ * be refused. Mirrors `retired_idle_checkout_hours_note` in
839
+ * `crates/aft/src/feature_config.rs`.
840
+ */
841
+ export function retiredIdleCheckoutHoursNote() {
842
+ const [retired, replacement] = RETIRED_IDLE_CHECKOUT_HOURS;
843
+ return `${retired} is now ${replacement}; from ${refusedFromVersion()} AFT refuses a user config file that still sets ${retired}.`;
584
844
  }
585
845
  /**
586
846
  * The once-per-identity notice for a project config file whose retired keys
587
847
  * were translated in memory. The file itself is never written: it is shared
588
848
  * through its repository. Keys that no longer do anything get only their own
589
849
  * sentence, after the sentence about the keys whose current equivalents were
590
- * applied (omitted when there are none). Mirrors `project_retired_keys_notice`
591
- * in `crates/aft/src/feature_config.rs`.
850
+ * applied (omitted when there are none). Mirrors `project_retired_keys_notice` in
851
+ * `crates/aft/src/feature_config.rs`.
592
852
  */
593
853
  export function legacyConfigNoticeMessage(configPath, translation) {
594
854
  const equivalents = translation.retiredKeys.filter((key) => noEffectNote(key) === undefined);
@@ -598,8 +858,11 @@ export function legacyConfigNoticeMessage(configPath, translation) {
598
858
  parts.push(`${configPath} uses retired keys (${equivalents.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.`);
599
859
  if (translation.retiredEnabledFalse)
600
860
  parts.push(RETIRED_ENABLED_FALSE_INDEXES_NOTE);
861
+ if (equivalents.some((key) => namesPath(key, RETIRED_IDLE_CHECKOUT_HOURS[0]))) {
862
+ parts.push(retiredIdleCheckoutHoursNote());
863
+ }
601
864
  }
602
- for (const [, note] of NO_EFFECT_RETIRED_NOTES) {
865
+ for (const [, note] of [...NO_EFFECT_RETIRED_NOTES, ...REMOVED_DATA_LAYER_NOTES]) {
603
866
  if (noEffect.has(note))
604
867
  parts.push(note);
605
868
  }
@@ -607,9 +870,11 @@ export function legacyConfigNoticeMessage(configPath, translation) {
607
870
  }
608
871
  /**
609
872
  * Translate every block (base plus each `harnesses.<id>`) in place. Retired
610
- * keys are never refused: their current equivalents then pass through the
873
+ * keys are not refused here: their current equivalents then pass through the
611
874
  * normal user/project trust rules, exactly as if the file had spelled them
612
- * out.
875
+ * out. (`removedConfigKeyErrors` refuses the names retired in 0.62 or earlier
876
+ * and the data-layer keys from `DATA_LAYER_KEYS_REFUSED_FROM`, before
877
+ * translation runs; `doctor --fix` still uses this translation for them.)
613
878
  *
614
879
  * Only the user file's base block receives the absent-base default
615
880
  * (`aft_move`/`aft_delete`) when its legacy keys generate disables: that
@@ -675,8 +940,14 @@ function projectBlock(block) {
675
940
  const legacyPaths = {};
676
941
  // Retired keys with no replacement are projected too: otherwise adding one
677
942
  // to a file whose notice was already acknowledged would keep the old digest
678
- // and the saved record would hide the new notice.
679
- for (const path of [...RETIRED_PATHS.map(([retired]) => retired), ...REMOVED_NO_EFFECT_PATHS]) {
943
+ // and the saved record would hide the new notice. The data-layer keys are
944
+ // projected for the same reason.
945
+ for (const path of [
946
+ ...RETIRED_PATHS.map(([retired]) => retired),
947
+ ...REMOVED_NO_EFFECT_PATHS,
948
+ ...DATA_LAYER_RETIRED_PATHS,
949
+ ...REMOVED_DATA_LAYER_PATHS,
950
+ ]) {
680
951
  const dot = path.indexOf(".");
681
952
  if (dot < 0) {
682
953
  if (Object.hasOwn(block, path))
@@ -843,7 +1114,8 @@ export const DEFAULT_INDEXES = {
843
1114
  * Whole-load rejection: the candidate config must not be used at all. Raised
844
1115
  * for malformed input documents or security-sensitive sections, or when a
845
1116
  * resolved configuration lacks its registration list or index switches.
846
- * Retired keys are translated before validation and never raise it.
1117
+ * Older retired keys translate before validation; removed data-layer keys
1118
+ * raise it in user config.
847
1119
  */
848
1120
  export class ConfigRejectedError extends Error {
849
1121
  errors;
@@ -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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"}