dsh-thinking-guard 0.1.17 → 0.1.20

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 (79) hide show
  1. package/README.md +40 -130
  2. package/cordis.patch.yml +5 -0
  3. package/lib/client.d.ts +8 -2
  4. package/lib/client.d.ts.map +1 -1
  5. package/lib/client.js +4627 -6732
  6. package/lib/guard-core.js +74 -15
  7. package/lib/guard-core.js.map +1 -1
  8. package/lib/guard-loop-core.js +158 -24
  9. package/lib/guard-loop-core.js.map +1 -1
  10. package/lib/guard.js +228 -85
  11. package/lib/guard.js.map +1 -1
  12. package/lib/host-face.js +1 -0
  13. package/lib/host-face.js.map +1 -1
  14. package/lib/index.js +11 -1
  15. package/lib/index.js.map +1 -1
  16. package/lib/invoke.js +16 -10
  17. package/lib/invoke.js.map +1 -1
  18. package/lib/policy-state.js +29 -1
  19. package/lib/policy-state.js.map +1 -1
  20. package/lib/policy.js +178 -10
  21. package/lib/policy.js.map +1 -1
  22. package/lib/registry.js +12 -2
  23. package/lib/registry.js.map +1 -1
  24. package/lib/server/call-index-remote.js +110 -0
  25. package/lib/server/call-index-remote.js.map +1 -0
  26. package/lib/server/remote.js +13 -0
  27. package/lib/server/remote.js.map +1 -1
  28. package/lib/types/guard-core.d.ts +91 -6
  29. package/lib/types/guard-core.d.ts.map +1 -1
  30. package/lib/types/guard-loop-core.d.ts +64 -3
  31. package/lib/types/guard-loop-core.d.ts.map +1 -1
  32. package/lib/types/guard.d.ts +7 -1
  33. package/lib/types/guard.d.ts.map +1 -1
  34. package/lib/types/host-face.d.ts.map +1 -1
  35. package/lib/types/index.d.ts +5 -0
  36. package/lib/types/index.d.ts.map +1 -1
  37. package/lib/types/invoke.d.ts.map +1 -1
  38. package/lib/types/policy-state.d.ts +6 -0
  39. package/lib/types/policy-state.d.ts.map +1 -1
  40. package/lib/types/policy.d.ts +34 -3
  41. package/lib/types/policy.d.ts.map +1 -1
  42. package/lib/types/registry.d.ts.map +1 -1
  43. package/lib/types/server/call-index-remote.d.ts +17 -0
  44. package/lib/types/server/call-index-remote.d.ts.map +1 -0
  45. package/lib/types/server/remote.d.ts +9 -0
  46. package/lib/types/server/remote.d.ts.map +1 -1
  47. package/lib/types/usage/call-index-core.d.ts +152 -0
  48. package/lib/types/usage/call-index-core.d.ts.map +1 -0
  49. package/lib/types/usage/call-index-host-face.d.ts +44 -0
  50. package/lib/types/usage/call-index-host-face.d.ts.map +1 -0
  51. package/lib/types/usage/call-index-host.d.ts +7 -0
  52. package/lib/types/usage/call-index-host.d.ts.map +1 -0
  53. package/lib/types/usage/call-index-query.d.ts +97 -0
  54. package/lib/types/usage/call-index-query.d.ts.map +1 -0
  55. package/lib/types/usage/call-index-runtime.d.ts +46 -0
  56. package/lib/types/usage/call-index-runtime.d.ts.map +1 -0
  57. package/lib/types/usage/call-index-scope.d.ts +59 -0
  58. package/lib/types/usage/call-index-scope.d.ts.map +1 -0
  59. package/lib/types/usage/call-index-wire.d.ts +286 -0
  60. package/lib/types/usage/call-index-wire.d.ts.map +1 -0
  61. package/lib/types/usage/session-index.d.ts +149 -0
  62. package/lib/types/usage/session-index.d.ts.map +1 -0
  63. package/lib/usage/call-index-core.js +761 -0
  64. package/lib/usage/call-index-core.js.map +1 -0
  65. package/lib/usage/call-index-host-face.js +77 -0
  66. package/lib/usage/call-index-host-face.js.map +1 -0
  67. package/lib/usage/call-index-host.js +13 -0
  68. package/lib/usage/call-index-host.js.map +1 -0
  69. package/lib/usage/call-index-query.js +669 -0
  70. package/lib/usage/call-index-query.js.map +1 -0
  71. package/lib/usage/call-index-runtime.js +376 -0
  72. package/lib/usage/call-index-runtime.js.map +1 -0
  73. package/lib/usage/call-index-scope.js +79 -0
  74. package/lib/usage/call-index-scope.js.map +1 -0
  75. package/lib/usage/call-index-wire.js +490 -0
  76. package/lib/usage/call-index-wire.js.map +1 -0
  77. package/lib/usage/session-index.js +600 -0
  78. package/lib/usage/session-index.js.map +1 -0
  79. package/package.json +5 -5
package/lib/invoke.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"invoke.js","sourceRoot":"","sources":["../src/invoke.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invoke.js","sourceRoot":"","sources":["../src/invoke.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  import { randomUUID } from 'node:crypto';
3
3
  import { mkdir, readFile, rename, rmdir, stat, unlink, writeFile } from 'node:fs/promises';
4
4
  import { dirname } from 'node:path';
5
+ import { normalizeRepeatThresholds } from "./guard-loop-core.js";
5
6
  function emptyState() {
6
7
  return {
7
8
  tiers: { tool: new Map(), skill: new Map() },
@@ -58,6 +59,17 @@ function parseGuard(value) {
58
59
  throw new Error(`guard.${key} must be a boolean`);
59
60
  state[key] = field;
60
61
  }
62
+ const thresholds = record['repeatThresholds'];
63
+ if (thresholds !== undefined) {
64
+ // Same validator the settings page uses: a hand-edited state file cannot
65
+ // smuggle in an unsorted, duplicated or out-of-range list.
66
+ try {
67
+ state['repeatThresholds'] = normalizeRepeatThresholds(thresholds, 'guard.repeatThresholds');
68
+ }
69
+ catch (error) {
70
+ throw new Error(error.message);
71
+ }
72
+ }
61
73
  return state;
62
74
  }
63
75
  function parseMenuState(source) {
@@ -238,6 +250,12 @@ export async function writeSearchState(file, change) {
238
250
  await replaceState(file, { ...state, search });
239
251
  });
240
252
  }
253
+ /** Structural equality for a threshold list, so a re-save reports "no change". */
254
+ function sameThresholds(a, b) {
255
+ if (a === undefined || b === undefined)
256
+ return a === b;
257
+ return a.length === b.length && a.every((value, index) => value === b[index]);
258
+ }
241
259
  /** Merge one instance's Guard switch changes with the latest file. */
242
260
  export async function writeGuardState(file, change) {
243
261
  const keys = Object.keys(change);
@@ -249,7 +267,17 @@ export async function writeGuardState(file, change) {
249
267
  const guard = { ...state.guard };
250
268
  for (const key of keys) {
251
269
  const next = change[key];
252
- if (next === undefined || state.guard[key] === next)
270
+ if (next === undefined)
271
+ continue;
272
+ if (key === 'repeatThresholds') {
273
+ const thresholds = normalizeRepeatThresholds(next, 'guard.repeatThresholds');
274
+ if (sameThresholds(state.guard.repeatThresholds, thresholds))
275
+ continue;
276
+ guard.repeatThresholds = thresholds;
277
+ changed = true;
278
+ continue;
279
+ }
280
+ if (state.guard[key] === next)
253
281
  continue;
254
282
  guard[key] = next;
255
283
  changed = true;
@@ -1 +1 @@
1
- {"version":3,"file":"policy-state.js","sourceRoot":"","sources":["../src/policy-state.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC1F,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAiCnC,SAAS,UAAU;IACjB,OAAO;QACL,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE;QAC5C,MAAM,EAAE,EAAE,YAAY,EAAE,IAAI,GAAG,EAAE,EAAE;QACnC,KAAK,EAAE,EAAE;KACV,CAAA;AACH,CAAC;AAED,SAAS,MAAM,CAAC,KAAc,EAAE,KAAa;IAC3C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,oBAAoB,CAAC,CAAA;IAC/C,CAAC;IACD,OAAO,KAAgC,CAAA;AACzC,CAAC;AAED,SAAS,YAAY,CAAC,KAAc,EAAE,GAAW;IAC/C,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,GAAG,EAAE,CAAA;IACzC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAA;IAClD,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,OAAO,EAAE,CAAC;QACnC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,UAAU,CAAC,EAAE,CAAC;YAC9F,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,iCAAiC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAChF,CAAC;IACH,CAAC;IACD,OAAO,IAAI,GAAG,CAAC,OAAsC,CAAC,CAAA;AACxD,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,YAAY,EAAE,IAAI,GAAG,EAAE,EAAE,CAAA;IAC3D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,cAAc,CAAC,CAAA;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAA;IACvC,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC;QACrG,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;IAC7E,CAAC;IACD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC9C,IAAI,MAAM,CAAC,cAAc,CAAC,KAAK,SAAS,EAAE,CAAC;QACzC,KAAK,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC;YACvG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxG,MAAM,IAAI,KAAK,CAAC,qDAAqD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAC7F,CAAC;YACD,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;IACD,OAAO,EAAE,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,KAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,CAAA;AAC/F,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAA;IAClC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;IAC3C,MAAM,KAAK,GAA4B,EAAE,CAAA;IACzC,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,sBAAsB,CAAU,EAAE,CAAC;QAClH,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACzB,IAAI,KAAK,KAAK,SAAS;YAAE,SAAQ;QACjC,IAAI,OAAO,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,SAAS,GAAG,oBAAoB,CAAC,CAAA;QACjF,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IACpB,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,cAAc,CAAC,MAAc;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAY,EAAE,YAAY,CAAC,CAAA;IAClE,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QAClF,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;IACnD,CAAC;IACD,OAAO;QACL,KAAK,EAAE;YACL,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;YAC5C,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;SAChD;QACD,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC7F,+EAA+E;QAC/E,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;KACnC,CAAA;AACH,CAAC;AAED,sFAAsF;AACtF,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY;IAC9C,IAAI,MAAc,CAAA;IAClB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,UAAU,EAAE,CAAA;QAC3E,MAAM,KAAK,CAAA;IACb,CAAC;IACD,OAAO,cAAc,CAAC,MAAM,CAAC,CAAA;AAC/B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY;IAC9C,OAAO,CAAC,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;AAC1C,CAAC;AAED,6EAA6E;AAC7E,SAAS,iBAAiB,CAAC,MAAc;IACvC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAY,EAAE,wBAAwB,CAAC,CAAA;IAC9E,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;IACpC,MAAM,KAAK,GAAG,QAAQ,KAAK,IAAI,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzF,CAAC,CAAE,QAAoC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACxE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC9C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,SAAQ;QAClH,MAAM,WAAW,GAAI,KAAiC,CAAC,aAAa,CAAC,CAAA;QACrE,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YAAE,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;IACjH,CAAC;IACD,OAAO;QACL,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9G,YAAY;KACb,CAAA;AACH,CAAC;AAED,uGAAuG;AACvG,KAAK,UAAU,aAAa,CAAI,IAAY,EAAE,MAAwB;IACpE,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC/C,MAAM,IAAI,GAAG,GAAG,IAAI,OAAO,CAAA;IAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAA;IACpC,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,IAAI,CAAC,CAAA;YACjB,MAAK;QACP,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAA;YACnE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;YAC7E,IAAI,GAAG,GAAG,MAAM;gBAAE,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YAC1D,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,IAAI,EAAE,CAAC,CAAA;YAC7F,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;QACvD,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACH,OAAO,MAAM,MAAM,EAAE,CAAA;IACvB,CAAC;YAAS,CAAC;QACT,MAAM,KAAK,CAAC,IAAI,CAAC,CAAA;IACnB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,IAAY,EAAE,KAAgB;IACxD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,OAAO,EAAE,CAAC;QACV,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;QAC3C,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;QAC7C,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,MAAM,EAAE;YACN,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxG,YAAY,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;SACxG;KACF,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAA;IAClB,MAAM,SAAS,GAAG,GAAG,IAAI,QAAQ,UAAU,EAAE,EAAE,CAAA;IAC/C,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;QAClF,MAAM,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAC9C,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC;AAED,sEAAsE;AACtE,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,IAAY,EAAE,UAAkB;IAC7E,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,KAAK,CAAA;IACrF,IAAI,MAAc,CAAA;IAClB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IAC7C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAA;QACpE,MAAM,KAAK,CAAA;IACb,CAAC;IACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;IACxC,OAAO,aAAa,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAA;QACvC,2EAA2E;QAC3E,qEAAqE;QACrE,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,CAAA;QACrG,IAAI,CAAC,YAAY;YAAE,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QACzE,0EAA0E;QAC1E,kEAAkE;QAClE,IAAI,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,MAAM,EAAE,CAAC;YACzE,MAAM,MAAM,CAAC,UAAU,EAAE,GAAG,UAAU,aAAa,UAAU,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;gBACnF,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;oBAAE,MAAM,KAAK,CAAA;YACrE,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,OAAO,CAAC,YAAY,CAAA;IACtB,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,kEAAkE;AAClE,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAY,EAAE,KAAgB;IACjE,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACjE,OAAO,aAAa,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAA;QACvC,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,CAAU,EAAE,CAAC;YAC9C,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI;oBAAE,SAAQ;gBAClD,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;gBACjC,OAAO,GAAG,IAAI,CAAA;YAChB,CAAC;QACH,CAAC;QACD,IAAI,OAAO;YAAE,MAAM,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5C,OAAO,OAAO,CAAA;IAChB,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,kFAAkF;AAClF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAY,EACZ,MAAuH;IAEvH,MAAM,aAAa,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;QACnC,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAA;QACvC,MAAM,MAAM,GAAgB;YAC1B,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,KAAK,CAAC,MAAM,CAAC,eAAe;YACvE,YAAY,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC;SACjD,CAAA;QACD,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,MAAM,CAAC,WAAW,CAAC,KAAK,KAAK,SAAS;gBAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;;gBACzF,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAChF,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAA;QACvC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAA;YACrF,IAAI,OAAO,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,QAAQ,QAAQ,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACtF,CAAC;aAAM,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,eAAe,KAAK,SAAS;eACrF,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;YAC9D,MAAM,IAAI,KAAK,CAAC,YAAY,MAAM,CAAC,eAAe,MAAM,CAAC,CAAA;QAC3D,CAAC;QACD,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;IAChD,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,sEAAsE;AACtE,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY,EAAE,MAAkB;IACpE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAyB,CAAA;IACxD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACnC,OAAO,aAAa,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,CAAA;QACvC,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,MAAM,KAAK,GAA4B,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;QACzD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;YACxB,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI;gBAAE,SAAQ;YAC7D,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;YACjB,OAAO,GAAG,IAAI,CAAA;QAChB,CAAC;QACD,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAA;QAC1B,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;QAC7C,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,sDAAsD;AACtD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAY;IAC/C,OAAO,CAAC,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;AAC1C,CAAC"}
1
+ {"version":3,"file":"policy-state.js","sourceRoot":"","sources":["../src/policy-state.ts"],"names":[],"mappings":"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"}
package/lib/policy.js CHANGED
@@ -9,6 +9,8 @@ import { dirname, join } from 'node:path';
9
9
  import { escapeText } from '@deepseek-ai/dsh-skill';
10
10
  import { serverNameOf } from "./registry.js";
11
11
  import { readGuardState, readTierState, writeGuardState, writeTierState } from "./policy-state.js";
12
+ import { DEFAULT_REPEAT_THRESHOLDS, normalizeRepeatThresholds, } from "./guard-loop-core.js";
13
+ import { processGuardStats } from "./guard-core.js";
12
14
  import { LocationRegistry, defaultLocationConfig, } from "./locations.js";
13
15
  /** The default timer: Node's own `setTimeout` / `clearTimeout`. */
14
16
  export const systemTimer = {
@@ -168,6 +170,7 @@ export const DEFAULT_GUARD_SWITCHES = {
168
170
  duplicateDetection: true,
169
171
  alternatingCycleDetection: true,
170
172
  noProgressProtection: true,
173
+ repeatThresholds: DEFAULT_REPEAT_THRESHOLDS,
171
174
  };
172
175
  /**
173
176
  * Keep the guidance of Resident tools and drop the rest from the prompt text.
@@ -237,8 +240,18 @@ export async function apply(ctx, config = {}) {
237
240
  throw new Error(`cannot load capability tier state from ${stateFile}: ${String(error)}`);
238
241
  }
239
242
  }
240
- /** Live Guard switches: defaults, patch config, then persisted UI choices. */
241
- let guardSwitches = { ...DEFAULT_GUARD_SWITCHES, ...savedGuard };
243
+ /**
244
+ * Live Guard switches: defaults, then persisted UI choices.
245
+ *
246
+ * A state file written before `repeatThresholds` existed simply has no such
247
+ * field, and the spread keeps the shipped default — that is the backward
248
+ * compatibility path, no migration step needed.
249
+ */
250
+ let guardSwitches = {
251
+ ...DEFAULT_GUARD_SWITCHES,
252
+ ...savedGuard,
253
+ repeatThresholds: savedGuard.repeatThresholds ?? DEFAULT_GUARD_SWITCHES.repeatThresholds,
254
+ };
242
255
  const locations = new LocationRegistry(ctx, {
243
256
  patchFile,
244
257
  skillsDir: (config.skillsDir ?? defaults.skillsDir).trim(),
@@ -427,6 +440,19 @@ export async function apply(ctx, config = {}) {
427
440
  isDisabledCapability(id, kind) {
428
441
  return service.classifyCapability(id, kind) === 'disabled';
429
442
  },
443
+ isHiddenOnlyByPolicy(agent, name) {
444
+ // Fail closed on every axis: no agent, no recorded proof, a name this
445
+ // policy never denied, or a name that is currently visible (so there is
446
+ // nothing to lift) all answer `false`.
447
+ if (agent === undefined || agent === null)
448
+ return false;
449
+ const owned = policyOwnedHiddenNames.get(agent);
450
+ if (owned === undefined || !owned.has(name))
451
+ return false;
452
+ if (service.classifyTool(name) !== 'on-demand')
453
+ return false;
454
+ return !visibleTo(agent, name);
455
+ },
430
456
  metaTools() {
431
457
  return metaTools;
432
458
  },
@@ -482,6 +508,12 @@ export async function apply(ctx, config = {}) {
482
508
  throw new Error(`updateGuard: ${key} must be a boolean`);
483
509
  next[key] = value;
484
510
  }
511
+ if (change.repeatThresholds !== undefined) {
512
+ // Throws on anything but 1-5 strictly increasing integers in 2..50, so an
513
+ // illegal list is rejected here instead of silently ignored by the detector
514
+ // (which fails open and would look like "the setting does nothing").
515
+ next.repeatThresholds = normalizeRepeatThresholds(change.repeatThresholds, 'updateGuard: repeatThresholds');
516
+ }
485
517
  // Persist first: a disk failure must not leave the live process claiming a
486
518
  // switch the next reload would not honour.
487
519
  if (stateFile.length > 0) {
@@ -495,6 +527,9 @@ export async function apply(ctx, config = {}) {
495
527
  guardSwitches = next;
496
528
  ctx.logger.info(`capability-policy: Guard switches updated: ${JSON.stringify(next)}`);
497
529
  },
530
+ getGuardStats() {
531
+ return processGuardStats.snapshot();
532
+ },
498
533
  classifyAll() {
499
534
  // The registry default maxResults (20) would truncate the management
500
535
  // surface: enumerate every indexed capability, not just the top-20.
@@ -572,6 +607,93 @@ export async function apply(ctx, config = {}) {
572
607
  // previous one before applying the next.
573
608
  /** Per-agent restriction disposer and the exact deny list it encodes. */
574
609
  const onDemandRestrictions = new WeakMap();
610
+ /**
611
+ * Per-agent names this policy can PROVE it hides on its own.
612
+ *
613
+ * `meta_invoke` has to execute an On-demand tool that this policy masked out
614
+ * of the caller's view, i.e. read a definition the caller cannot see. Doing
615
+ * that for every name classified On-demand is the bypass this set replaces:
616
+ * classification states how THIS plugin treats a name, never whether somebody
617
+ * else also denies it.
618
+ *
619
+ * The proof is taken in the one moment the caller's view is free of this
620
+ * policy's own mask — after the previous restriction is disposed and before
621
+ * the next one is installed (see `applyOnDemandRestriction`). A name still
622
+ * absent in that window is hidden by a third party as well and is therefore
623
+ * never recorded.
624
+ *
625
+ * Both halves fail closed: a missing entry (unknown agent, nothing applied,
626
+ * the apply threw) reads as "not ours", and the post-install re-check drops
627
+ * any name this deny list demonstrably does not hide.
628
+ *
629
+ * Staleness is not possible at read time, because the set is recomputed
630
+ * synchronously from every `tools/change` — including the one a third-party
631
+ * `tools.restrict()` emits after its filter is already live — while a forward
632
+ * always runs in a later task than the change that could affect it.
633
+ */
634
+ const policyOwnedHiddenNames = new WeakMap();
635
+ /**
636
+ * Install one agent's deny list, recording the disposer it produced.
637
+ *
638
+ * `restrict()` rejects the whole call when any name is no longer a known
639
+ * global tool, so a late or racing registration can make an otherwise valid
640
+ * list fail. That must not fail the caller: the agent then simply keeps the
641
+ * tool declared, which is what the previous code did and what the warning
642
+ * records. Returns the installed entry, or `undefined` when nothing landed —
643
+ * in which case no name may be attributed to this policy.
644
+ */
645
+ const installOnDemandRestriction = (agent, deny) => {
646
+ const scopedTools = agent.ctx.get('tools');
647
+ if (scopedTools === undefined)
648
+ return undefined;
649
+ try {
650
+ const entry = { dispose: scopedTools.restrict({ deny }), deny };
651
+ onDemandRestrictions.set(agent, entry);
652
+ return entry;
653
+ }
654
+ catch (error) {
655
+ ctx.logger.warn(`capability-policy: cannot apply On-demand restriction for agent ${String(agent.id)}: ${String(error)}`);
656
+ return undefined;
657
+ }
658
+ };
659
+ /**
660
+ * Whether `name` is currently visible to `agent` as a registered definition.
661
+ *
662
+ * Reads the same view the forward reads (`tools.get(name, scope)`), through
663
+ * the public service only — no Cordis internals. Used both for the attribution
664
+ * window (this policy's mask lifted) and for the post-install re-check.
665
+ */
666
+ const visibleTo = (agent, name) => ctx.tools.get(name, agent) !== undefined;
667
+ /**
668
+ * The names among `deny` whose invisibility is caused by this policy alone.
669
+ *
670
+ * Caller contract: this policy's own restriction is currently NOT installed
671
+ * for `agent`, so whatever is still hidden is hidden by somebody else.
672
+ */
673
+ const namesHiddenOnlyByPolicy = (agent, deny) => {
674
+ const owned = new Set();
675
+ for (const name of deny) {
676
+ if (visibleTo(agent, name))
677
+ owned.add(name);
678
+ }
679
+ return owned;
680
+ };
681
+ /**
682
+ * Count of `tools/change` broadcasts observed so far.
683
+ *
684
+ * The attribution window is only trustworthy while nothing else changes the
685
+ * tool view inside it. `installOnDemandRestriction()` calls `restrict()`, which
686
+ * emits `tools/change` SYNCHRONOUSLY, and a third-party listener registered
687
+ * after this policy runs inside that same emit — it can append its own
688
+ * restriction while our sample is still being evaluated. The sample would then
689
+ * wrongly credit that name to us. Comparing this counter across the window
690
+ * detects exactly that.
691
+ *
692
+ * Incremented by the existing `tools/change` listener below (which also
693
+ * re-applies the restriction) rather than by a listener of its own, so the
694
+ * plugin keeps one subscription per event.
695
+ */
696
+ let toolsChangeCount = 0;
575
697
  /**
576
698
  * Agents this policy has seen created and not yet disposed.
577
699
  *
@@ -611,6 +733,20 @@ export async function apply(ctx, config = {}) {
611
733
  * without it the nested pass would dispose the restriction the outer pass just
612
734
  * installed and leave two intersecting masks live, permanently hiding tools
613
735
  * the current policy considers Resident.
736
+ *
737
+ * This is also the only place attribution is decided. Between
738
+ * `previous.dispose()` and `installOnDemandRestriction()` the caller's view
739
+ * carries every restriction except this policy's own, so a name visible there
740
+ * is hidden by this policy alone, and a name still hidden there is hidden by
741
+ * somebody else too.
742
+ *
743
+ * The window is NOT immune to concurrent changes, despite running inside one
744
+ * synchronous listener invocation: `installOnDemandRestriction()` calls
745
+ * `restrict()`, which emits `tools/change` synchronously, and a third-party
746
+ * listener mounted after this policy runs inside that emit and can append its
747
+ * own restriction right then. So the sample is bracketed by a `tools/change`
748
+ * counter; if the count moved, somebody else touched the view mid-window and
749
+ * the attribution is discarded wholesale (fail closed) instead of trusted.
614
750
  */
615
751
  let applying = false;
616
752
  const applyOnDemandRestriction = (agent, force = false) => {
@@ -630,18 +766,43 @@ export async function apply(ctx, config = {}) {
630
766
  onDemandRestrictions.delete(agent);
631
767
  previous.dispose();
632
768
  }
769
+ // Attribution window: this policy's mask is off, so this sample proves
770
+ // which of `deny` are invisible only because of a third party.
771
+ //
772
+ // Bracket the sample with the `tools/change` counter. Installing the new
773
+ // restriction emits `tools/change` synchronously, and a third-party
774
+ // listener mounted after this policy runs inside that emit — it can append
775
+ // its own deny while we are still holding the sample, which would make us
776
+ // credit a name we do not actually hide. The count must therefore move by
777
+ // EXACTLY the one emit our own install produces; anything more means
778
+ // somebody else touched the view, so the attribution is dropped wholesale
779
+ // rather than partially trusted.
780
+ const changeBaseline = toolsChangeCount;
781
+ const owned = deny.length === 0 ? new Set() : namesHiddenOnlyByPolicy(agent, deny);
782
+ policyOwnedHiddenNames.set(agent, owned);
633
783
  if (deny.length === 0)
634
784
  return;
635
- const scopedTools = agent.ctx.get('tools');
636
- if (scopedTools === undefined)
785
+ if (installOnDemandRestriction(agent, deny) === undefined) {
786
+ // Nothing was installed, so nothing is hidden by this policy: an entry
787
+ // here would let the forward lift a mask that does not exist.
788
+ policyOwnedHiddenNames.set(agent, new Set());
789
+ return;
790
+ }
791
+ // Our own `restrict()` contributes exactly one emit. More than that means a
792
+ // third party appended a restriction inside our install emit, so the
793
+ // sample no longer proves anything: clear it and let the forward fail
794
+ // closed. The next `tools/change` recomputes it from a clean window.
795
+ if (toolsChangeCount - changeBaseline > 1) {
796
+ policyOwnedHiddenNames.set(agent, new Set());
637
797
  return;
638
- try {
639
- onDemandRestrictions.set(agent, { dispose: scopedTools.restrict({ deny }), deny });
640
798
  }
641
- catch (error) {
642
- // A late restriction on a disposing agent must not fail the caller; the
643
- // next assembly then simply keeps the tool declared.
644
- ctx.logger.warn(`capability-policy: cannot apply On-demand restriction for agent ${String(agent.id)}: ${String(error)}`);
799
+ // Post-install re-check: a name this list claims to hide but which is
800
+ // still visible cannot be attributed to it. `restrict()` only masks the
801
+ // names it was given, so this can only fire on a view that disagrees —
802
+ // fail closed rather than forward an unproven name.
803
+ for (const name of owned) {
804
+ if (visibleTo(agent, name))
805
+ owned.delete(name);
645
806
  }
646
807
  }
647
808
  finally {
@@ -663,6 +824,10 @@ export async function apply(ctx, config = {}) {
663
824
  });
664
825
  ctx.on('agent/disposed', ({ agent }) => {
665
826
  restrictedAgents.delete(agent);
827
+ // Drop the attribution before anything else: once this policy's mask is
828
+ // gone, a name still hidden here is hidden by a third party, and a stale
829
+ // entry must never authorise a forward on its behalf.
830
+ policyOwnedHiddenNames.delete(agent);
666
831
  const entry = onDemandRestrictions.get(agent);
667
832
  if (entry === undefined)
668
833
  return;
@@ -674,6 +839,9 @@ export async function apply(ctx, config = {}) {
674
839
  // the global tool set changes. The unchanged-list guard keeps this from
675
840
  // looping on the `tools/change` that `restrict()` itself emits.
676
841
  ctx.on('tools/change', () => {
842
+ // Count first: the attribution window compares this across its own install,
843
+ // and a third-party listener may run after this one inside the same emit.
844
+ toolsChangeCount += 1;
677
845
  reapplyOnDemandRestrictions();
678
846
  });
679
847
  // Disabled capabilities are a hard deny at the execution surface, not just a
package/lib/policy.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"policy.js","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../src/policy.ts"],"names":[],"mappings":"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"}
package/lib/registry.js CHANGED
@@ -650,8 +650,18 @@ export async function apply(ctx, config = {}) {
650
650
  // Index the global tool view eagerly. The first explicit refresh enumerates
651
651
  // preset standing scopes; the optional-service injection above also triggers
652
652
  // a full pass if agentPresets is mounted after this plugin.
653
- void rebuildTools();
654
- void refreshSkills();
653
+ //
654
+ // This MUST go through `runRebuild`, not a bare `rebuildTools()` +
655
+ // `refreshSkills()` pair. Those two calls bypass the `rebuilding` single-flight
656
+ // flag, so the eager mount-time pass could run CONCURRENTLY with a `runRebuild`
657
+ // started by the `agentPresets` injection or an explicit `refresh()`. The epoch
658
+ // guards only protect which snapshot gets PUBLISHED; they do not stop the
659
+ // losing run from already having enumerated every preset scope. The observable
660
+ // damage was an extra `agentPresets.acquireScope()` per overlapping run, which
661
+ // made `requested.get('coding-plus')` read 3 instead of 2 whenever the eager
662
+ // pass overlapped the test's explicit refresh — the intermittent
663
+ // `tests/registry.spec.ts` failure.
664
+ void runRebuild();
655
665
  ctx.effect(() => () => {
656
666
  stopped = true;
657
667
  if (timer !== undefined)