@caupulican/pi-adaptative 0.86.3 → 0.86.5

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 (226) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/dist/core/agent-paths.d.ts +13 -0
  3. package/dist/core/agent-paths.d.ts.map +1 -1
  4. package/dist/core/agent-paths.js +23 -0
  5. package/dist/core/agent-paths.js.map +1 -1
  6. package/dist/core/autonomy/bounded-completion.d.ts +7 -0
  7. package/dist/core/autonomy/bounded-completion.d.ts.map +1 -1
  8. package/dist/core/autonomy/bounded-completion.js +12 -4
  9. package/dist/core/autonomy/bounded-completion.js.map +1 -1
  10. package/dist/core/autonomy/lane-tool-surface.d.ts +2 -0
  11. package/dist/core/autonomy/lane-tool-surface.d.ts.map +1 -1
  12. package/dist/core/autonomy/lane-tool-surface.js +6 -3
  13. package/dist/core/autonomy/lane-tool-surface.js.map +1 -1
  14. package/dist/core/autonomy/subagent-prompt.js +1 -1
  15. package/dist/core/autonomy/subagent-prompt.js.map +1 -1
  16. package/dist/core/background-lane-controller.d.ts +25 -2
  17. package/dist/core/background-lane-controller.d.ts.map +1 -1
  18. package/dist/core/background-lane-controller.js +67 -0
  19. package/dist/core/background-lane-controller.js.map +1 -1
  20. package/dist/core/delegation/replay-safe-mailbox-bounds.d.ts +4 -0
  21. package/dist/core/delegation/replay-safe-mailbox-bounds.d.ts.map +1 -0
  22. package/dist/core/delegation/replay-safe-mailbox-bounds.js +20 -0
  23. package/dist/core/delegation/replay-safe-mailbox-bounds.js.map +1 -0
  24. package/dist/core/delegation/sanitized-context-fork.d.ts +25 -0
  25. package/dist/core/delegation/sanitized-context-fork.d.ts.map +1 -0
  26. package/dist/core/delegation/sanitized-context-fork.js +299 -0
  27. package/dist/core/delegation/sanitized-context-fork.js.map +1 -0
  28. package/dist/core/delegation/session-root-mailbox.d.ts +75 -0
  29. package/dist/core/delegation/session-root-mailbox.d.ts.map +1 -0
  30. package/dist/core/delegation/session-root-mailbox.js +627 -0
  31. package/dist/core/delegation/session-root-mailbox.js.map +1 -0
  32. package/dist/core/delegation/worker-agent-control-coordinator.d.ts +102 -9
  33. package/dist/core/delegation/worker-agent-control-coordinator.d.ts.map +1 -1
  34. package/dist/core/delegation/worker-agent-control-coordinator.js +1307 -125
  35. package/dist/core/delegation/worker-agent-control-coordinator.js.map +1 -1
  36. package/dist/core/delegation/worker-agent-control.d.ts +183 -8
  37. package/dist/core/delegation/worker-agent-control.d.ts.map +1 -1
  38. package/dist/core/delegation/worker-agent-control.js +778 -48
  39. package/dist/core/delegation/worker-agent-control.js.map +1 -1
  40. package/dist/core/delegation/worker-attempt-executor.d.ts +9 -0
  41. package/dist/core/delegation/worker-attempt-executor.d.ts.map +1 -1
  42. package/dist/core/delegation/worker-attempt-executor.js +479 -214
  43. package/dist/core/delegation/worker-attempt-executor.js.map +1 -1
  44. package/dist/core/delegation/worker-authority-resolver.d.ts +9 -0
  45. package/dist/core/delegation/worker-authority-resolver.d.ts.map +1 -1
  46. package/dist/core/delegation/worker-authority-resolver.js +21 -2
  47. package/dist/core/delegation/worker-authority-resolver.js.map +1 -1
  48. package/dist/core/delegation/worker-context-fork-store.d.ts +71 -0
  49. package/dist/core/delegation/worker-context-fork-store.d.ts.map +1 -0
  50. package/dist/core/delegation/worker-context-fork-store.js +437 -0
  51. package/dist/core/delegation/worker-context-fork-store.js.map +1 -0
  52. package/dist/core/delegation/worker-context-inheritance-policy.d.ts +18 -0
  53. package/dist/core/delegation/worker-context-inheritance-policy.d.ts.map +1 -0
  54. package/dist/core/delegation/worker-context-inheritance-policy.js +28 -0
  55. package/dist/core/delegation/worker-context-inheritance-policy.js.map +1 -0
  56. package/dist/core/delegation/worker-conversation-revision.d.ts +31 -0
  57. package/dist/core/delegation/worker-conversation-revision.d.ts.map +1 -0
  58. package/dist/core/delegation/worker-conversation-revision.js +203 -0
  59. package/dist/core/delegation/worker-conversation-revision.js.map +1 -0
  60. package/dist/core/delegation/worker-conversation-store.d.ts +130 -18
  61. package/dist/core/delegation/worker-conversation-store.d.ts.map +1 -1
  62. package/dist/core/delegation/worker-conversation-store.js +1263 -79
  63. package/dist/core/delegation/worker-conversation-store.js.map +1 -1
  64. package/dist/core/delegation/worker-delegation-controller.d.ts +29 -2
  65. package/dist/core/delegation/worker-delegation-controller.d.ts.map +1 -1
  66. package/dist/core/delegation/worker-delegation-controller.js +625 -111
  67. package/dist/core/delegation/worker-delegation-controller.js.map +1 -1
  68. package/dist/core/delegation/worker-delegation-request.d.ts +2 -0
  69. package/dist/core/delegation/worker-delegation-request.d.ts.map +1 -1
  70. package/dist/core/delegation/worker-delegation-request.js.map +1 -1
  71. package/dist/core/delegation/worker-dispatch-scheduler.d.ts +20 -1
  72. package/dist/core/delegation/worker-dispatch-scheduler.d.ts.map +1 -1
  73. package/dist/core/delegation/worker-dispatch-scheduler.js +210 -37
  74. package/dist/core/delegation/worker-dispatch-scheduler.js.map +1 -1
  75. package/dist/core/delegation/worker-fleet-limits.d.ts +38 -0
  76. package/dist/core/delegation/worker-fleet-limits.d.ts.map +1 -0
  77. package/dist/core/delegation/worker-fleet-limits.js +113 -0
  78. package/dist/core/delegation/worker-fleet-limits.js.map +1 -0
  79. package/dist/core/delegation/worker-lane-projection.d.ts +1 -0
  80. package/dist/core/delegation/worker-lane-projection.d.ts.map +1 -1
  81. package/dist/core/delegation/worker-lane-projection.js +6 -2
  82. package/dist/core/delegation/worker-lane-projection.js.map +1 -1
  83. package/dist/core/delegation/worker-lifecycle.d.ts +20 -3
  84. package/dist/core/delegation/worker-lifecycle.d.ts.map +1 -1
  85. package/dist/core/delegation/worker-lifecycle.js +42 -18
  86. package/dist/core/delegation/worker-lifecycle.js.map +1 -1
  87. package/dist/core/delegation/worker-notification-coordinator.d.ts +4 -0
  88. package/dist/core/delegation/worker-notification-coordinator.d.ts.map +1 -1
  89. package/dist/core/delegation/worker-notification-coordinator.js +45 -4
  90. package/dist/core/delegation/worker-notification-coordinator.js.map +1 -1
  91. package/dist/core/delegation/worker-provider-turn-protocol.d.ts +50 -0
  92. package/dist/core/delegation/worker-provider-turn-protocol.d.ts.map +1 -0
  93. package/dist/core/delegation/worker-provider-turn-protocol.js +185 -0
  94. package/dist/core/delegation/worker-provider-turn-protocol.js.map +1 -0
  95. package/dist/core/delegation/worker-recovery-coordinator.d.ts +45 -4
  96. package/dist/core/delegation/worker-recovery-coordinator.d.ts.map +1 -1
  97. package/dist/core/delegation/worker-recovery-coordinator.js +223 -17
  98. package/dist/core/delegation/worker-recovery-coordinator.js.map +1 -1
  99. package/dist/core/delegation/worker-retry-policy.d.ts +36 -0
  100. package/dist/core/delegation/worker-retry-policy.d.ts.map +1 -0
  101. package/dist/core/delegation/worker-retry-policy.js +41 -0
  102. package/dist/core/delegation/worker-retry-policy.js.map +1 -0
  103. package/dist/core/delegation/worker-runner.d.ts +3 -1
  104. package/dist/core/delegation/worker-runner.d.ts.map +1 -1
  105. package/dist/core/delegation/worker-runner.js +4 -2
  106. package/dist/core/delegation/worker-runner.js.map +1 -1
  107. package/dist/core/delegation/worker-task-view.d.ts +43 -0
  108. package/dist/core/delegation/worker-task-view.d.ts.map +1 -0
  109. package/dist/core/delegation/worker-task-view.js +194 -0
  110. package/dist/core/delegation/worker-task-view.js.map +1 -0
  111. package/dist/core/delegation/worker-terminal-handoff-coordinator.d.ts +55 -0
  112. package/dist/core/delegation/worker-terminal-handoff-coordinator.d.ts.map +1 -0
  113. package/dist/core/delegation/worker-terminal-handoff-coordinator.js +179 -0
  114. package/dist/core/delegation/worker-terminal-handoff-coordinator.js.map +1 -0
  115. package/dist/core/delegation/worker-tree-budget-coordinator.d.ts +2 -2
  116. package/dist/core/delegation/worker-tree-budget-coordinator.d.ts.map +1 -1
  117. package/dist/core/delegation/worker-tree-budget-coordinator.js +12 -46
  118. package/dist/core/delegation/worker-tree-budget-coordinator.js.map +1 -1
  119. package/dist/core/keybindings.d.ts +10 -0
  120. package/dist/core/keybindings.d.ts.map +1 -1
  121. package/dist/core/keybindings.js +2 -0
  122. package/dist/core/keybindings.js.map +1 -1
  123. package/dist/core/orchestration/attempt-ordering.d.ts +9 -0
  124. package/dist/core/orchestration/attempt-ordering.d.ts.map +1 -0
  125. package/dist/core/orchestration/attempt-ordering.js +29 -0
  126. package/dist/core/orchestration/attempt-ordering.js.map +1 -0
  127. package/dist/core/orchestration/capability-gateway.d.ts +19 -0
  128. package/dist/core/orchestration/capability-gateway.d.ts.map +1 -1
  129. package/dist/core/orchestration/capability-gateway.js +19 -2
  130. package/dist/core/orchestration/capability-gateway.js.map +1 -1
  131. package/dist/core/orchestration/contracts.d.ts +43 -3
  132. package/dist/core/orchestration/contracts.d.ts.map +1 -1
  133. package/dist/core/orchestration/contracts.js +24 -0
  134. package/dist/core/orchestration/contracts.js.map +1 -1
  135. package/dist/core/orchestration/delegation-ledger.d.ts +8 -3
  136. package/dist/core/orchestration/delegation-ledger.d.ts.map +1 -1
  137. package/dist/core/orchestration/delegation-ledger.js +148 -55
  138. package/dist/core/orchestration/delegation-ledger.js.map +1 -1
  139. package/dist/core/orchestration/event-store.d.ts +6 -3
  140. package/dist/core/orchestration/event-store.d.ts.map +1 -1
  141. package/dist/core/orchestration/event-store.js +228 -30
  142. package/dist/core/orchestration/event-store.js.map +1 -1
  143. package/dist/core/orchestration/task-runtime-codecs.d.ts +31 -0
  144. package/dist/core/orchestration/task-runtime-codecs.d.ts.map +1 -0
  145. package/dist/core/orchestration/task-runtime-codecs.js +1471 -0
  146. package/dist/core/orchestration/task-runtime-codecs.js.map +1 -0
  147. package/dist/core/orchestration/task-runtime-projection.d.ts +30 -0
  148. package/dist/core/orchestration/task-runtime-projection.d.ts.map +1 -0
  149. package/dist/core/orchestration/task-runtime-projection.js +340 -0
  150. package/dist/core/orchestration/task-runtime-projection.js.map +1 -0
  151. package/dist/core/orchestration/task-runtime-reducer.d.ts +38 -0
  152. package/dist/core/orchestration/task-runtime-reducer.d.ts.map +1 -0
  153. package/dist/core/orchestration/task-runtime-reducer.js +1270 -0
  154. package/dist/core/orchestration/task-runtime-reducer.js.map +1 -0
  155. package/dist/core/orchestration/task-runtime-state.d.ts +142 -0
  156. package/dist/core/orchestration/task-runtime-state.d.ts.map +1 -0
  157. package/dist/core/orchestration/task-runtime-state.js +14 -0
  158. package/dist/core/orchestration/task-runtime-state.js.map +1 -0
  159. package/dist/core/orchestration/task-runtime.d.ts +44 -98
  160. package/dist/core/orchestration/task-runtime.d.ts.map +1 -1
  161. package/dist/core/orchestration/task-runtime.js +357 -1113
  162. package/dist/core/orchestration/task-runtime.js.map +1 -1
  163. package/dist/core/orchestration/worker-context-fork-reference.d.ts +20 -0
  164. package/dist/core/orchestration/worker-context-fork-reference.d.ts.map +1 -0
  165. package/dist/core/orchestration/worker-context-fork-reference.js +53 -0
  166. package/dist/core/orchestration/worker-context-fork-reference.js.map +1 -0
  167. package/dist/core/research/research-runner.d.ts +2 -0
  168. package/dist/core/research/research-runner.d.ts.map +1 -1
  169. package/dist/core/research/research-runner.js +1 -0
  170. package/dist/core/research/research-runner.js.map +1 -1
  171. package/dist/core/runtime-builder.d.ts.map +1 -1
  172. package/dist/core/runtime-builder.js +8 -0
  173. package/dist/core/runtime-builder.js.map +1 -1
  174. package/dist/core/secrets/credential-project.d.ts.map +1 -1
  175. package/dist/core/secrets/credential-project.js +24 -2
  176. package/dist/core/secrets/credential-project.js.map +1 -1
  177. package/dist/core/security/secret-text.d.ts +3 -0
  178. package/dist/core/security/secret-text.d.ts.map +1 -1
  179. package/dist/core/security/secret-text.js +15 -0
  180. package/dist/core/security/secret-text.js.map +1 -1
  181. package/dist/core/settings-manager.d.ts +3 -0
  182. package/dist/core/settings-manager.d.ts.map +1 -1
  183. package/dist/core/settings-manager.js +160 -8
  184. package/dist/core/settings-manager.js.map +1 -1
  185. package/dist/core/tools/delegate.d.ts +31 -4
  186. package/dist/core/tools/delegate.d.ts.map +1 -1
  187. package/dist/core/tools/delegate.js +749 -103
  188. package/dist/core/tools/delegate.js.map +1 -1
  189. package/dist/main.d.ts.map +1 -1
  190. package/dist/main.js +1 -0
  191. package/dist/main.js.map +1 -1
  192. package/dist/modes/interactive/components/activity-lane.d.ts +5 -0
  193. package/dist/modes/interactive/components/activity-lane.d.ts.map +1 -1
  194. package/dist/modes/interactive/components/activity-lane.js +133 -49
  195. package/dist/modes/interactive/components/activity-lane.js.map +1 -1
  196. package/dist/modes/interactive/components/agents-overlay.d.ts +40 -0
  197. package/dist/modes/interactive/components/agents-overlay.d.ts.map +1 -0
  198. package/dist/modes/interactive/components/agents-overlay.js +153 -0
  199. package/dist/modes/interactive/components/agents-overlay.js.map +1 -0
  200. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  201. package/dist/modes/interactive/components/settings-selector.js +18 -13
  202. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  203. package/dist/modes/interactive/interactive-event-controller.d.ts +1 -1
  204. package/dist/modes/interactive/interactive-event-controller.d.ts.map +1 -1
  205. package/dist/modes/interactive/interactive-event-controller.js +6 -3
  206. package/dist/modes/interactive/interactive-event-controller.js.map +1 -1
  207. package/dist/modes/interactive/interactive-mode.d.ts +5 -0
  208. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  209. package/dist/modes/interactive/interactive-mode.js +51 -0
  210. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  211. package/dist/modes/interactive/key-handlers.d.ts +1 -0
  212. package/dist/modes/interactive/key-handlers.d.ts.map +1 -1
  213. package/dist/modes/interactive/key-handlers.js +1 -0
  214. package/dist/modes/interactive/key-handlers.js.map +1 -1
  215. package/docs/harness-architecture.md +61 -17
  216. package/docs/settings.md +17 -9
  217. package/docs/worker-profiles.md +6 -2
  218. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  219. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  220. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  221. package/examples/extensions/sandbox/package-lock.json +2 -2
  222. package/examples/extensions/sandbox/package.json +1 -1
  223. package/examples/extensions/with-deps/package-lock.json +2 -2
  224. package/examples/extensions/with-deps/package.json +1 -1
  225. package/npm-shrinkwrap.json +12 -12
  226. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"credential-project.d.ts","sourceRoot":"","sources":["../../../src/core/secrets/credential-project.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAuCzE,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAIlE;AA+ED,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAkB9F"}
1
+ {"version":3,"file":"credential-project.d.ts","sourceRoot":"","sources":["../../../src/core/secrets/credential-project.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAwCzE,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAIlE;AAsGD,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAkB9F"}
@@ -3,6 +3,7 @@ import { readFile, realpath, stat } from "node:fs/promises";
3
3
  import { hostname } from "node:os";
4
4
  import { basename, dirname, isAbsolute, join, resolve } from "node:path";
5
5
  const MAX_GIT_POINTER_BYTES = 4 * 1024;
6
+ const MAX_GIT_HEAD_BYTES = 1024;
6
7
  const MAX_GIT_CONFIG_BYTES = 1024 * 1024;
7
8
  function opaqueKey(kind, identity) {
8
9
  return `${kind}:${createHash("sha256").update(identity).digest("hex")}`;
@@ -61,6 +62,26 @@ async function isFile(path) {
61
62
  return false;
62
63
  }
63
64
  }
65
+ function isValidGitHead(head) {
66
+ const value = head.endsWith("\n") ? head.slice(0, -1).replace(/\r$/, "") : head;
67
+ if (/^(?:[a-f\d]{40}|[a-f\d]{64})$/i.test(value))
68
+ return true;
69
+ const reference = value.match(/^ref: (refs\/.+)$/)?.[1];
70
+ return (reference !== undefined &&
71
+ !/[\x00-\x20\x7f~^:?*[\]\\]/.test(reference) &&
72
+ !reference.includes("..") &&
73
+ !reference.includes("@{") &&
74
+ !reference.includes("//") &&
75
+ !reference.endsWith("/") &&
76
+ !reference.endsWith(".") &&
77
+ !reference.endsWith(".lock"));
78
+ }
79
+ async function isGitDirectory(path) {
80
+ if (!(await isDirectory(path)))
81
+ return false;
82
+ const head = await readBounded(join(path, "HEAD"), MAX_GIT_HEAD_BYTES);
83
+ return head !== undefined && isValidGitHead(head);
84
+ }
64
85
  async function readBounded(path, maxBytes) {
65
86
  try {
66
87
  const metadata = await stat(path);
@@ -73,7 +94,7 @@ async function readBounded(path, maxBytes) {
73
94
  }
74
95
  }
75
96
  async function resolveGitDirectory(root, marker) {
76
- if (await isDirectory(marker))
97
+ if (await isGitDirectory(marker))
77
98
  return marker;
78
99
  if (!(await isFile(marker)))
79
100
  return undefined;
@@ -81,7 +102,8 @@ async function resolveGitDirectory(root, marker) {
81
102
  const gitDirValue = pointer?.match(/^gitdir:\s*(.+?)\s*$/im)?.[1];
82
103
  if (!gitDirValue || /[\0\r\n]/.test(gitDirValue))
83
104
  return undefined;
84
- return resolve(root, gitDirValue);
105
+ const gitDir = resolve(root, gitDirValue);
106
+ return (await isGitDirectory(gitDir)) ? gitDir : undefined;
85
107
  }
86
108
  async function findGitRepository(cwd) {
87
109
  let current = await realpath(cwd).catch(() => resolve(cwd));
@@ -1 +1 @@
1
- {"version":3,"file":"credential-project.js","sourceRoot":"","sources":["../../../src/core/secrets/credential-project.ts"],"names":[],"mappings":"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","sourcesContent":["import { createHash } from \"node:crypto\";\nimport { readFile, realpath, stat } from \"node:fs/promises\";\nimport { hostname } from \"node:os\";\nimport { basename, dirname, isAbsolute, join, resolve } from \"node:path\";\nimport type { CredentialProjectIdentity } from \"./credential-manager.ts\";\n\nconst MAX_GIT_POINTER_BYTES = 4 * 1024;\nconst MAX_GIT_CONFIG_BYTES = 1024 * 1024;\n\nfunction opaqueKey(kind: \"git\" | \"local\", identity: string): string {\n\treturn `${kind}:${createHash(\"sha256\").update(identity).digest(\"hex\")}`;\n}\n\nfunction canonicalizeGitRemote(remote: string): string | undefined {\n\tconst candidate = remote.trim();\n\tif (!candidate || /[\\0\\r\\n]/.test(candidate)) return undefined;\n\n\tif (!candidate.includes(\"://\")) {\n\t\tconst scp = candidate.match(/^(?:[^@/\\s]+@)?([^:/\\s]+):(.+)$/);\n\t\tif (!scp) return undefined;\n\t\tconst host = scp[1]?.toLowerCase();\n\t\tconst path = scp[2]\n\t\t\t?.replace(/^\\/+/, \"\")\n\t\t\t.replace(/\\/+$/, \"\")\n\t\t\t.replace(/\\.git$/i, \"\");\n\t\treturn host && path ? `${host}/${path}` : undefined;\n\t}\n\n\ttry {\n\t\tconst url = new URL(candidate);\n\t\tif (![\"git:\", \"http:\", \"https:\", \"ssh:\"].includes(url.protocol) || !url.hostname) return undefined;\n\t\tconst path = url.pathname\n\t\t\t.replace(/^\\/+/, \"\")\n\t\t\t.replace(/\\/+$/, \"\")\n\t\t\t.replace(/\\.git$/i, \"\");\n\t\tif (!path) return undefined;\n\t\tconst host = `${url.hostname.toLowerCase()}${url.port ? `:${url.port}` : \"\"}`;\n\t\treturn `${host}/${path}`;\n\t} catch {\n\t\treturn undefined;\n\t}\n}\n\nexport function createPortableGitProjectKey(remote: string): string {\n\tconst canonical = canonicalizeGitRemote(remote);\n\tif (!canonical) throw new Error(\"Git remote is not portable.\");\n\treturn opaqueKey(\"git\", canonical);\n}\n\nasync function isDirectory(path: string): Promise<boolean> {\n\ttry {\n\t\treturn (await stat(path)).isDirectory();\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nasync function isFile(path: string): Promise<boolean> {\n\ttry {\n\t\treturn (await stat(path)).isFile();\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nasync function readBounded(path: string, maxBytes: number): Promise<string | undefined> {\n\ttry {\n\t\tconst metadata = await stat(path);\n\t\tif (!metadata.isFile() || metadata.size > maxBytes) return undefined;\n\t\treturn await readFile(path, \"utf8\");\n\t} catch {\n\t\treturn undefined;\n\t}\n}\n\ninterface GitRepositoryLocation {\n\troot: string;\n\tgitDir: string;\n}\n\nasync function resolveGitDirectory(root: string, marker: string): Promise<string | undefined> {\n\tif (await isDirectory(marker)) return marker;\n\tif (!(await isFile(marker))) return undefined;\n\tconst pointer = await readBounded(marker, MAX_GIT_POINTER_BYTES);\n\tconst gitDirValue = pointer?.match(/^gitdir:\\s*(.+?)\\s*$/im)?.[1];\n\tif (!gitDirValue || /[\\0\\r\\n]/.test(gitDirValue)) return undefined;\n\treturn resolve(root, gitDirValue);\n}\n\nasync function findGitRepository(cwd: string): Promise<GitRepositoryLocation | undefined> {\n\tlet current = await realpath(cwd).catch(() => resolve(cwd));\n\twhile (true) {\n\t\tconst gitDir = await resolveGitDirectory(current, join(current, \".git\"));\n\t\tif (gitDir) return { root: current, gitDir };\n\t\tconst parent = dirname(current);\n\t\tif (parent === current) return undefined;\n\t\tcurrent = parent;\n\t}\n}\n\nasync function resolveGitConfigPath(gitDir: string): Promise<string | undefined> {\n\tconst direct = join(gitDir, \"config\");\n\tif (await isFile(direct)) return direct;\n\tconst commonPointer = await readBounded(join(gitDir, \"commondir\"), MAX_GIT_POINTER_BYTES);\n\tconst commonValue = commonPointer?.trim();\n\tif (!commonValue || /[\\0\\r\\n]/.test(commonValue)) return undefined;\n\tconst commonDir = isAbsolute(commonValue) ? commonValue : resolve(gitDir, commonValue);\n\tconst shared = join(commonDir, \"config\");\n\treturn (await isFile(shared)) ? shared : undefined;\n}\n\nfunction readOriginRemote(config: string): string | undefined {\n\tlet inOrigin = false;\n\tfor (const line of config.split(/\\r?\\n/)) {\n\t\tconst section = line.match(/^\\s*\\[([^\\]]+)]\\s*$/)?.[1];\n\t\tif (section !== undefined) {\n\t\t\tinOrigin = /^remote\\s+\"origin\"$/i.test(section.trim());\n\t\t\tcontinue;\n\t\t}\n\t\tif (!inOrigin) continue;\n\t\tconst assignment = line.match(/^\\s*url\\s*=\\s*(.*?)\\s*$/i)?.[1];\n\t\tif (assignment) return assignment;\n\t}\n\treturn undefined;\n}\n\nexport async function resolveCredentialProject(cwd: string): Promise<CredentialProjectIdentity> {\n\tconst repository = await findGitRepository(cwd);\n\tconst root = repository?.root ?? (await realpath(cwd).catch(() => resolve(cwd)));\n\tif (repository) {\n\t\tconst configPath = await resolveGitConfigPath(repository.gitDir);\n\t\tconst config = configPath ? await readBounded(configPath, MAX_GIT_CONFIG_BYTES) : undefined;\n\t\tconst remote = config ? readOriginRemote(config) : undefined;\n\t\tconst canonical = remote ? canonicalizeGitRemote(remote) : undefined;\n\t\tif (canonical) {\n\t\t\treturn { key: opaqueKey(\"git\", canonical), root, label: basename(root), portable: true };\n\t\t}\n\t}\n\treturn {\n\t\tkey: opaqueKey(\"local\", `${hostname()}\\0${root}`),\n\t\troot,\n\t\tlabel: basename(root) || root,\n\t\tportable: false,\n\t};\n}\n"]}
1
+ {"version":3,"file":"credential-project.js","sourceRoot":"","sources":["../../../src/core/secrets/credential-project.ts"],"names":[],"mappings":"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","sourcesContent":["import { createHash } from \"node:crypto\";\nimport { readFile, realpath, stat } from \"node:fs/promises\";\nimport { hostname } from \"node:os\";\nimport { basename, dirname, isAbsolute, join, resolve } from \"node:path\";\nimport type { CredentialProjectIdentity } from \"./credential-manager.ts\";\n\nconst MAX_GIT_POINTER_BYTES = 4 * 1024;\nconst MAX_GIT_HEAD_BYTES = 1024;\nconst MAX_GIT_CONFIG_BYTES = 1024 * 1024;\n\nfunction opaqueKey(kind: \"git\" | \"local\", identity: string): string {\n\treturn `${kind}:${createHash(\"sha256\").update(identity).digest(\"hex\")}`;\n}\n\nfunction canonicalizeGitRemote(remote: string): string | undefined {\n\tconst candidate = remote.trim();\n\tif (!candidate || /[\\0\\r\\n]/.test(candidate)) return undefined;\n\n\tif (!candidate.includes(\"://\")) {\n\t\tconst scp = candidate.match(/^(?:[^@/\\s]+@)?([^:/\\s]+):(.+)$/);\n\t\tif (!scp) return undefined;\n\t\tconst host = scp[1]?.toLowerCase();\n\t\tconst path = scp[2]\n\t\t\t?.replace(/^\\/+/, \"\")\n\t\t\t.replace(/\\/+$/, \"\")\n\t\t\t.replace(/\\.git$/i, \"\");\n\t\treturn host && path ? `${host}/${path}` : undefined;\n\t}\n\n\ttry {\n\t\tconst url = new URL(candidate);\n\t\tif (![\"git:\", \"http:\", \"https:\", \"ssh:\"].includes(url.protocol) || !url.hostname) return undefined;\n\t\tconst path = url.pathname\n\t\t\t.replace(/^\\/+/, \"\")\n\t\t\t.replace(/\\/+$/, \"\")\n\t\t\t.replace(/\\.git$/i, \"\");\n\t\tif (!path) return undefined;\n\t\tconst host = `${url.hostname.toLowerCase()}${url.port ? `:${url.port}` : \"\"}`;\n\t\treturn `${host}/${path}`;\n\t} catch {\n\t\treturn undefined;\n\t}\n}\n\nexport function createPortableGitProjectKey(remote: string): string {\n\tconst canonical = canonicalizeGitRemote(remote);\n\tif (!canonical) throw new Error(\"Git remote is not portable.\");\n\treturn opaqueKey(\"git\", canonical);\n}\n\nasync function isDirectory(path: string): Promise<boolean> {\n\ttry {\n\t\treturn (await stat(path)).isDirectory();\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nasync function isFile(path: string): Promise<boolean> {\n\ttry {\n\t\treturn (await stat(path)).isFile();\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nfunction isValidGitHead(head: string): boolean {\n\tconst value = head.endsWith(\"\\n\") ? head.slice(0, -1).replace(/\\r$/, \"\") : head;\n\tif (/^(?:[a-f\\d]{40}|[a-f\\d]{64})$/i.test(value)) return true;\n\tconst reference = value.match(/^ref: (refs\\/.+)$/)?.[1];\n\treturn (\n\t\treference !== undefined &&\n\t\t!/[\\x00-\\x20\\x7f~^:?*[\\]\\\\]/.test(reference) &&\n\t\t!reference.includes(\"..\") &&\n\t\t!reference.includes(\"@{\") &&\n\t\t!reference.includes(\"//\") &&\n\t\t!reference.endsWith(\"/\") &&\n\t\t!reference.endsWith(\".\") &&\n\t\t!reference.endsWith(\".lock\")\n\t);\n}\n\nasync function isGitDirectory(path: string): Promise<boolean> {\n\tif (!(await isDirectory(path))) return false;\n\tconst head = await readBounded(join(path, \"HEAD\"), MAX_GIT_HEAD_BYTES);\n\treturn head !== undefined && isValidGitHead(head);\n}\n\nasync function readBounded(path: string, maxBytes: number): Promise<string | undefined> {\n\ttry {\n\t\tconst metadata = await stat(path);\n\t\tif (!metadata.isFile() || metadata.size > maxBytes) return undefined;\n\t\treturn await readFile(path, \"utf8\");\n\t} catch {\n\t\treturn undefined;\n\t}\n}\n\ninterface GitRepositoryLocation {\n\troot: string;\n\tgitDir: string;\n}\n\nasync function resolveGitDirectory(root: string, marker: string): Promise<string | undefined> {\n\tif (await isGitDirectory(marker)) return marker;\n\tif (!(await isFile(marker))) return undefined;\n\tconst pointer = await readBounded(marker, MAX_GIT_POINTER_BYTES);\n\tconst gitDirValue = pointer?.match(/^gitdir:\\s*(.+?)\\s*$/im)?.[1];\n\tif (!gitDirValue || /[\\0\\r\\n]/.test(gitDirValue)) return undefined;\n\tconst gitDir = resolve(root, gitDirValue);\n\treturn (await isGitDirectory(gitDir)) ? gitDir : undefined;\n}\n\nasync function findGitRepository(cwd: string): Promise<GitRepositoryLocation | undefined> {\n\tlet current = await realpath(cwd).catch(() => resolve(cwd));\n\twhile (true) {\n\t\tconst gitDir = await resolveGitDirectory(current, join(current, \".git\"));\n\t\tif (gitDir) return { root: current, gitDir };\n\t\tconst parent = dirname(current);\n\t\tif (parent === current) return undefined;\n\t\tcurrent = parent;\n\t}\n}\n\nasync function resolveGitConfigPath(gitDir: string): Promise<string | undefined> {\n\tconst direct = join(gitDir, \"config\");\n\tif (await isFile(direct)) return direct;\n\tconst commonPointer = await readBounded(join(gitDir, \"commondir\"), MAX_GIT_POINTER_BYTES);\n\tconst commonValue = commonPointer?.trim();\n\tif (!commonValue || /[\\0\\r\\n]/.test(commonValue)) return undefined;\n\tconst commonDir = isAbsolute(commonValue) ? commonValue : resolve(gitDir, commonValue);\n\tconst shared = join(commonDir, \"config\");\n\treturn (await isFile(shared)) ? shared : undefined;\n}\n\nfunction readOriginRemote(config: string): string | undefined {\n\tlet inOrigin = false;\n\tfor (const line of config.split(/\\r?\\n/)) {\n\t\tconst section = line.match(/^\\s*\\[([^\\]]+)]\\s*$/)?.[1];\n\t\tif (section !== undefined) {\n\t\t\tinOrigin = /^remote\\s+\"origin\"$/i.test(section.trim());\n\t\t\tcontinue;\n\t\t}\n\t\tif (!inOrigin) continue;\n\t\tconst assignment = line.match(/^\\s*url\\s*=\\s*(.*?)\\s*$/i)?.[1];\n\t\tif (assignment) return assignment;\n\t}\n\treturn undefined;\n}\n\nexport async function resolveCredentialProject(cwd: string): Promise<CredentialProjectIdentity> {\n\tconst repository = await findGitRepository(cwd);\n\tconst root = repository?.root ?? (await realpath(cwd).catch(() => resolve(cwd)));\n\tif (repository) {\n\t\tconst configPath = await resolveGitConfigPath(repository.gitDir);\n\t\tconst config = configPath ? await readBounded(configPath, MAX_GIT_CONFIG_BYTES) : undefined;\n\t\tconst remote = config ? readOriginRemote(config) : undefined;\n\t\tconst canonical = remote ? canonicalizeGitRemote(remote) : undefined;\n\t\tif (canonical) {\n\t\t\treturn { key: opaqueKey(\"git\", canonical), root, label: basename(root), portable: true };\n\t\t}\n\t}\n\treturn {\n\t\tkey: opaqueKey(\"local\", `${hostname()}\\0${root}`),\n\t\troot,\n\t\tlabel: basename(root) || root,\n\t\tportable: false,\n\t};\n}\n"]}
@@ -1,3 +1,6 @@
1
+ export declare const MAX_RETAINED_DIAGNOSTIC_CHARS = 240;
1
2
  export declare function hasSecretLikeText(text: string): boolean;
2
3
  export declare function redactKnownSecrets(text: string): string;
4
+ /** Retain one redacted diagnostic line with bounded regex work and durable output size. */
5
+ export declare function boundedRedactedDiagnosticText(text: string): string | undefined;
3
6
  //# sourceMappingURL=secret-text.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"secret-text.d.ts","sourceRoot":"","sources":["../../../src/core/security/secret-text.ts"],"names":[],"mappings":"AAgBA,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMvD"}
1
+ {"version":3,"file":"secret-text.d.ts","sourceRoot":"","sources":["../../../src/core/security/secret-text.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAGjD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMvD;AAED,2FAA2F;AAC3F,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAS9E"}
@@ -13,6 +13,8 @@ const SECRET_LIKE_PATTERNS = [
13
13
  /[?&](?:x-amz-signature|x-goog-signature|signature|sig|access_token|api[_-]?key|token|secret|password)=[^&\s]+/i,
14
14
  /\b(?:api[_-]?key|access[_-]?token|refresh[_-]?token|client[_-]?secret|account[_-]?key|private[_-]?key|sharedaccesssignature|authorization|credential|secret|password)\b\s*[:=]\s*\S+/i,
15
15
  ];
16
+ export const MAX_RETAINED_DIAGNOSTIC_CHARS = 240;
17
+ const MAX_DIAGNOSTIC_SCAN_CHARS = 4_096;
16
18
  export function hasSecretLikeText(text) {
17
19
  return SECRET_LIKE_PATTERNS.some((pattern) => pattern.test(text));
18
20
  }
@@ -23,4 +25,17 @@ export function redactKnownSecrets(text) {
23
25
  }
24
26
  return redacted;
25
27
  }
28
+ /** Retain one redacted diagnostic line with bounded regex work and durable output size. */
29
+ export function boundedRedactedDiagnosticText(text) {
30
+ const scanned = text.slice(0, MAX_DIAGNOSTIC_SCAN_CHARS);
31
+ const lineEnd = scanned.search(/[\r\n]/);
32
+ const scanTruncated = lineEnd === -1 && text.length > scanned.length;
33
+ const firstLine = (lineEnd === -1 ? scanned : scanned.slice(0, lineEnd)).trim();
34
+ if (!firstLine)
35
+ return undefined;
36
+ const redacted = redactKnownSecrets(firstLine);
37
+ if (!scanTruncated && redacted.length <= MAX_RETAINED_DIAGNOSTIC_CHARS)
38
+ return redacted;
39
+ return `${redacted.slice(0, MAX_RETAINED_DIAGNOSTIC_CHARS - 1)}…`;
40
+ }
26
41
  //# sourceMappingURL=secret-text.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"secret-text.js","sourceRoot":"","sources":["../../../src/core/security/secret-text.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,MAAM,oBAAoB,GAAsB;IAC/C,2CAA2C;IAC3C,uCAAuC;IACvC,kEAAkE;IAClE,2EAA2E;IAC3E,mCAAmC;IACnC,+BAA+B;IAC/B,gEAAgE;IAChE,+CAA+C;IAC/C,oCAAoC;IACpC,iCAAiC;IACjC,gHAAgH;IAChH,uLAAuL;CACvL,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC7C,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC9C,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,KAAK,MAAM,OAAO,IAAI,oBAAoB,EAAE,CAAC;QAC5C,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC;IAC7G,CAAC;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC","sourcesContent":["/** High-confidence credential shapes shared by outbound-query gates and diagnostic redaction. */\nconst SECRET_LIKE_PATTERNS: readonly RegExp[] = [\n\t/\\bsk-(?:proj-|ant-)?[A-Za-z0-9._-]{8,}\\b/i,\n\t/\\bsk_(?:live|test)_[A-Za-z0-9]{8,}\\b/i,\n\t/\\b(?:gh[pousr]_[A-Za-z0-9]{20,}|github_pat_[A-Za-z0-9_]{20,})\\b/i,\n\t/\\b(?:npm_[A-Za-z0-9]{20,}|pypi-[A-Za-z0-9_-]{20,}|hf_[A-Za-z0-9]{20,})\\b/i,\n\t/\\bxox[baprs]-[A-Za-z0-9-]{10,}\\b/i,\n\t/\\b(?:AKIA|ASIA)[A-Z0-9]{16}\\b/,\n\t/\\beyJ[A-Za-z0-9_-]{8,}\\.[A-Za-z0-9_-]{8,}\\.[A-Za-z0-9_-]{8,}\\b/,\n\t/\\b(?:Bearer|Basic)\\s+[A-Za-z0-9._~+/-]{8,}=*/i,\n\t/-----BEGIN [A-Z ]*PRIVATE KEY-----/,\n\t/https?:\\/\\/[^\\s/:@]+:[^\\s/@]+@/i,\n\t/[?&](?:x-amz-signature|x-goog-signature|signature|sig|access_token|api[_-]?key|token|secret|password)=[^&\\s]+/i,\n\t/\\b(?:api[_-]?key|access[_-]?token|refresh[_-]?token|client[_-]?secret|account[_-]?key|private[_-]?key|sharedaccesssignature|authorization|credential|secret|password)\\b\\s*[:=]\\s*\\S+/i,\n];\n\nexport function hasSecretLikeText(text: string): boolean {\n\treturn SECRET_LIKE_PATTERNS.some((pattern) => pattern.test(text));\n}\n\nexport function redactKnownSecrets(text: string): string {\n\tlet redacted = text;\n\tfor (const pattern of SECRET_LIKE_PATTERNS) {\n\t\tredacted = redacted.replace(new RegExp(pattern.source, `${pattern.flags.replace(\"g\", \"\")}g`), \"[REDACTED]\");\n\t}\n\treturn redacted;\n}\n"]}
1
+ {"version":3,"file":"secret-text.js","sourceRoot":"","sources":["../../../src/core/security/secret-text.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,MAAM,oBAAoB,GAAsB;IAC/C,2CAA2C;IAC3C,uCAAuC;IACvC,kEAAkE;IAClE,2EAA2E;IAC3E,mCAAmC;IACnC,+BAA+B;IAC/B,gEAAgE;IAChE,+CAA+C;IAC/C,oCAAoC;IACpC,iCAAiC;IACjC,gHAAgH;IAChH,uLAAuL;CACvL,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,CAAC;AACjD,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAExC,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC7C,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC9C,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,KAAK,MAAM,OAAO,IAAI,oBAAoB,EAAE,CAAC;QAC5C,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC;IAC7G,CAAC;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,6BAA6B,CAAC,IAAY;IACzD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,yBAAyB,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACzC,MAAM,aAAa,GAAG,OAAO,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACrE,MAAM,SAAS,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAChF,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IACjC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,CAAC,aAAa,IAAI,QAAQ,CAAC,MAAM,IAAI,6BAA6B;QAAE,OAAO,QAAQ,CAAC;IACxF,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,6BAA6B,GAAG,CAAC,CAAC,GAAG,CAAC;AACnE,CAAC","sourcesContent":["/** High-confidence credential shapes shared by outbound-query gates and diagnostic redaction. */\nconst SECRET_LIKE_PATTERNS: readonly RegExp[] = [\n\t/\\bsk-(?:proj-|ant-)?[A-Za-z0-9._-]{8,}\\b/i,\n\t/\\bsk_(?:live|test)_[A-Za-z0-9]{8,}\\b/i,\n\t/\\b(?:gh[pousr]_[A-Za-z0-9]{20,}|github_pat_[A-Za-z0-9_]{20,})\\b/i,\n\t/\\b(?:npm_[A-Za-z0-9]{20,}|pypi-[A-Za-z0-9_-]{20,}|hf_[A-Za-z0-9]{20,})\\b/i,\n\t/\\bxox[baprs]-[A-Za-z0-9-]{10,}\\b/i,\n\t/\\b(?:AKIA|ASIA)[A-Z0-9]{16}\\b/,\n\t/\\beyJ[A-Za-z0-9_-]{8,}\\.[A-Za-z0-9_-]{8,}\\.[A-Za-z0-9_-]{8,}\\b/,\n\t/\\b(?:Bearer|Basic)\\s+[A-Za-z0-9._~+/-]{8,}=*/i,\n\t/-----BEGIN [A-Z ]*PRIVATE KEY-----/,\n\t/https?:\\/\\/[^\\s/:@]+:[^\\s/@]+@/i,\n\t/[?&](?:x-amz-signature|x-goog-signature|signature|sig|access_token|api[_-]?key|token|secret|password)=[^&\\s]+/i,\n\t/\\b(?:api[_-]?key|access[_-]?token|refresh[_-]?token|client[_-]?secret|account[_-]?key|private[_-]?key|sharedaccesssignature|authorization|credential|secret|password)\\b\\s*[:=]\\s*\\S+/i,\n];\n\nexport const MAX_RETAINED_DIAGNOSTIC_CHARS = 240;\nconst MAX_DIAGNOSTIC_SCAN_CHARS = 4_096;\n\nexport function hasSecretLikeText(text: string): boolean {\n\treturn SECRET_LIKE_PATTERNS.some((pattern) => pattern.test(text));\n}\n\nexport function redactKnownSecrets(text: string): string {\n\tlet redacted = text;\n\tfor (const pattern of SECRET_LIKE_PATTERNS) {\n\t\tredacted = redacted.replace(new RegExp(pattern.source, `${pattern.flags.replace(\"g\", \"\")}g`), \"[REDACTED]\");\n\t}\n\treturn redacted;\n}\n\n/** Retain one redacted diagnostic line with bounded regex work and durable output size. */\nexport function boundedRedactedDiagnosticText(text: string): string | undefined {\n\tconst scanned = text.slice(0, MAX_DIAGNOSTIC_SCAN_CHARS);\n\tconst lineEnd = scanned.search(/[\\r\\n]/);\n\tconst scanTruncated = lineEnd === -1 && text.length > scanned.length;\n\tconst firstLine = (lineEnd === -1 ? scanned : scanned.slice(0, lineEnd)).trim();\n\tif (!firstLine) return undefined;\n\tconst redacted = redactKnownSecrets(firstLine);\n\tif (!scanTruncated && redacted.length <= MAX_RETAINED_DIAGNOSTIC_CHARS) return redacted;\n\treturn `${redacted.slice(0, MAX_RETAINED_DIAGNOSTIC_CHARS - 1)}…`;\n}\n"]}
@@ -188,10 +188,12 @@ export type ResolvedResearchLaneSettings = Required<Omit<ResearchLaneSettings, "
188
188
  export declare const DEFAULT_WORKER_DELEGATION_ENABLED = true;
189
189
  export declare const DEFAULT_WORKER_DELEGATION_MAX_USD = 0.5;
190
190
  export declare const DEFAULT_WORKER_DELEGATION_MAX_WALL_CLOCK_MS = 120000;
191
+ export declare const DEFAULT_WORKER_DELEGATION_MAX_CONCURRENT = 20;
191
192
  export declare const DEFAULT_WORKER_DELEGATION_WRITE_ENABLED = true;
192
193
  export declare const DEFAULT_WORKER_DELEGATION_WRITE_PATHS: readonly ["."];
193
194
  export declare const MAX_WORKER_DELEGATION_MAX_USD: number;
194
195
  export declare const MAX_WORKER_DELEGATION_MAX_WALL_CLOCK_MS: number;
196
+ export declare const MAX_WORKER_DELEGATION_MAX_CONCURRENT: number;
195
197
  export interface WorkerDelegationSettings {
196
198
  enabled?: boolean;
197
199
  orchestrationProfile?: string;
@@ -495,6 +497,7 @@ export declare class SettingsManager {
495
497
  private createProfileRegistry;
496
498
  private profileDiagnosticKeys;
497
499
  private reportProfileDiagnostic;
500
+ private reportWorkerDelegationDiagnostics;
498
501
  private getActiveProfileNamesForDiagnostics;
499
502
  private getExternalRootActiveResourceProfileNames;
500
503
  private refreshProfileRegistry;
@@ -1 +1 @@
1
- {"version":3,"file":"settings-manager.d.ts","sourceRoot":"","sources":["../../src/core/settings-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings-manager.d.ts","sourceRoot":"","sources":["../../src/core/settings-manager.ts"],"names":[],"mappings":"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"}
@@ -9,12 +9,14 @@ import { configFile, directoryProfilesDir } from "./agent-paths.js";
9
9
  import { DEFAULT_CONTEXT_GC_SETTINGS } from "./context-gc.js";
10
10
  import { DEFAULT_GOAL_AUTO_CONTINUE, DEFAULT_GOAL_AUTO_CONTINUE_DELAY_MS, DEFAULT_GOAL_CONTINUE_MAX_STALL_TURNS, DEFAULT_GOAL_CONTINUE_MAX_TURNS, DEFAULT_GOAL_CONTINUE_MAX_WALL_CLOCK_MINUTES, MAX_GOAL_AUTO_CONTINUE_DELAY_MS, MAX_GOAL_CONTINUE_MAX_STALL_TURNS, MAX_GOAL_CONTINUE_MAX_TURNS, MAX_GOAL_CONTINUE_MAX_WALL_CLOCK_MINUTES, } from "./goals/goal-continuation-defaults.js";
11
11
  import { DEFAULT_HTTP_IDLE_TIMEOUT_MS, parseHttpIdleTimeoutMs } from "./http-dispatcher.js";
12
+ import { MAX_ORCHESTRATION_IDENTIFIER_LENGTH, MAX_WORKER_AUTHORITY_PATH_LENGTH, MAX_WORKER_AUTHORITY_PATHS, } from "./orchestration/contracts.js";
12
13
  import { ProfileRegistry } from "./profile-registry.js";
13
14
  import { mergeResourceProfileMap, mergeResourceProfileSettings, normalizeResourceProfileFilter, } from "./resource-profile-blocks.js";
14
15
  import { isWorkerSession } from "./session-role.js";
15
16
  import { validateSkillName } from "./skills.js";
16
17
  import { acquireFileLockSync, LOW_LATENCY_FILE_LOCK_OPTIONS, writeFileAtomicSync } from "./util/atomic-file.js";
17
18
  import { matchesCompiledPattern } from "./util/minimatch-cache.js";
19
+ import { isPlainRecord } from "./util/value-guards.js";
18
20
  export const MEMORY_RETRIEVAL_MAX_RESULTS_MIN = 1;
19
21
  export const MEMORY_RETRIEVAL_MAX_RESULTS_MAX = 20;
20
22
  const MEMORY_RETRIEVAL_MAX_RESULTS_DEFAULT = 5;
@@ -42,10 +44,12 @@ export const MAX_RESEARCH_LANE_MAX_RUNS_PER_SESSION = 100;
42
44
  export const DEFAULT_WORKER_DELEGATION_ENABLED = true;
43
45
  export const DEFAULT_WORKER_DELEGATION_MAX_USD = 0.5;
44
46
  export const DEFAULT_WORKER_DELEGATION_MAX_WALL_CLOCK_MS = 120_000;
47
+ export const DEFAULT_WORKER_DELEGATION_MAX_CONCURRENT = 20;
45
48
  export const DEFAULT_WORKER_DELEGATION_WRITE_ENABLED = true;
46
49
  export const DEFAULT_WORKER_DELEGATION_WRITE_PATHS = ["."];
47
50
  export const MAX_WORKER_DELEGATION_MAX_USD = Number.MAX_SAFE_INTEGER;
48
51
  export const MAX_WORKER_DELEGATION_MAX_WALL_CLOCK_MS = Number.MAX_SAFE_INTEGER;
52
+ export const MAX_WORKER_DELEGATION_MAX_CONCURRENT = Number.MAX_SAFE_INTEGER;
49
53
  export const DEFAULT_WORKTREE_SYNC_POLICY = "on_land_mandatory";
50
54
  export const DEFAULT_WORKTREE_SYNC_GATE_TIMEOUT_MS = 900_000;
51
55
  export const DEFAULT_WORKTREE_SYNC_MAX_LANES = 5;
@@ -262,6 +266,126 @@ function sanitizeNumberSetting(value, fallback, min, max) {
262
266
  return fallback;
263
267
  return value;
264
268
  }
269
+ function reportInvalidWorkerDelegationField(reportDiagnostic, field, expectation) {
270
+ reportDiagnostic?.(`workerDelegation.${field} must be ${expectation}; the configured value was ignored`);
271
+ }
272
+ function normalizeWorkerDelegationWritePaths(value, reportDiagnostic) {
273
+ if (!Array.isArray(value)) {
274
+ reportInvalidWorkerDelegationField(reportDiagnostic, "writePaths", "an array of path strings");
275
+ return undefined;
276
+ }
277
+ const normalized = [];
278
+ const seen = new Set();
279
+ let canonicalized = false;
280
+ for (let index = 0; index < value.length; index++) {
281
+ const entry = value[index];
282
+ if (typeof entry !== "string") {
283
+ canonicalized = true;
284
+ continue;
285
+ }
286
+ const trimmed = entry.trim();
287
+ if (!trimmed || trimmed.length > MAX_WORKER_AUTHORITY_PATH_LENGTH || seen.has(trimmed)) {
288
+ canonicalized = true;
289
+ continue;
290
+ }
291
+ if (trimmed !== entry)
292
+ canonicalized = true;
293
+ seen.add(trimmed);
294
+ normalized.push(trimmed);
295
+ if (normalized.length === MAX_WORKER_AUTHORITY_PATHS && index < value.length - 1) {
296
+ canonicalized = true;
297
+ break;
298
+ }
299
+ }
300
+ if (canonicalized) {
301
+ reportDiagnostic?.(`workerDelegation.writePaths was normalized to at most ${MAX_WORKER_AUTHORITY_PATHS} unique, nonempty paths of at most ${MAX_WORKER_AUTHORITY_PATH_LENGTH} characters`);
302
+ }
303
+ return normalized;
304
+ }
305
+ /** Normalize one precedence layer before merging so malformed overrides cannot widen lower-scope authority. */
306
+ function normalizeWorkerDelegationLayer(value, reportDiagnostic) {
307
+ if (!isPlainRecord(value)) {
308
+ if (value !== undefined)
309
+ reportDiagnostic?.("workerDelegation must be an object; the configured value was ignored");
310
+ return undefined;
311
+ }
312
+ const normalized = {};
313
+ if (Object.hasOwn(value, "enabled")) {
314
+ if (typeof value.enabled === "boolean")
315
+ normalized.enabled = value.enabled;
316
+ else
317
+ reportInvalidWorkerDelegationField(reportDiagnostic, "enabled", "a boolean");
318
+ }
319
+ if (Object.hasOwn(value, "orchestrationProfile")) {
320
+ if (typeof value.orchestrationProfile === "string") {
321
+ const profileId = value.orchestrationProfile.trim();
322
+ if (profileId && profileId.length <= MAX_ORCHESTRATION_IDENTIFIER_LENGTH) {
323
+ normalized.orchestrationProfile = profileId;
324
+ }
325
+ else {
326
+ reportInvalidWorkerDelegationField(reportDiagnostic, "orchestrationProfile", `a nonempty string of at most ${MAX_ORCHESTRATION_IDENTIFIER_LENGTH} characters`);
327
+ }
328
+ }
329
+ else {
330
+ reportInvalidWorkerDelegationField(reportDiagnostic, "orchestrationProfile", `a nonempty string of at most ${MAX_ORCHESTRATION_IDENTIFIER_LENGTH} characters`);
331
+ }
332
+ }
333
+ if (Object.hasOwn(value, "maxUsd")) {
334
+ if (typeof value.maxUsd === "number" &&
335
+ Number.isFinite(value.maxUsd) &&
336
+ value.maxUsd >= 0 &&
337
+ value.maxUsd <= MAX_WORKER_DELEGATION_MAX_USD) {
338
+ normalized.maxUsd = value.maxUsd;
339
+ }
340
+ else {
341
+ reportInvalidWorkerDelegationField(reportDiagnostic, "maxUsd", `a finite number between 0 and ${MAX_WORKER_DELEGATION_MAX_USD}`);
342
+ }
343
+ }
344
+ if (Object.hasOwn(value, "maxWallClockMs")) {
345
+ if (typeof value.maxWallClockMs === "number" &&
346
+ Number.isSafeInteger(value.maxWallClockMs) &&
347
+ value.maxWallClockMs >= 0 &&
348
+ value.maxWallClockMs <= MAX_WORKER_DELEGATION_MAX_WALL_CLOCK_MS) {
349
+ normalized.maxWallClockMs = value.maxWallClockMs;
350
+ }
351
+ else {
352
+ reportInvalidWorkerDelegationField(reportDiagnostic, "maxWallClockMs", `a safe integer between 0 and ${MAX_WORKER_DELEGATION_MAX_WALL_CLOCK_MS}`);
353
+ }
354
+ }
355
+ if (Object.hasOwn(value, "writeEnabled")) {
356
+ if (typeof value.writeEnabled === "boolean")
357
+ normalized.writeEnabled = value.writeEnabled;
358
+ else
359
+ reportInvalidWorkerDelegationField(reportDiagnostic, "writeEnabled", "a boolean");
360
+ }
361
+ if (Object.hasOwn(value, "writePaths")) {
362
+ const writePaths = normalizeWorkerDelegationWritePaths(value.writePaths, reportDiagnostic);
363
+ if (writePaths !== undefined)
364
+ normalized.writePaths = writePaths;
365
+ }
366
+ if (Object.hasOwn(value, "maxConcurrent")) {
367
+ if (typeof value.maxConcurrent === "number" &&
368
+ Number.isSafeInteger(value.maxConcurrent) &&
369
+ value.maxConcurrent > 0 &&
370
+ value.maxConcurrent <= MAX_WORKER_DELEGATION_MAX_CONCURRENT) {
371
+ normalized.maxConcurrent = value.maxConcurrent;
372
+ }
373
+ else {
374
+ reportInvalidWorkerDelegationField(reportDiagnostic, "maxConcurrent", `a safe integer between 1 and ${MAX_WORKER_DELEGATION_MAX_CONCURRENT}`);
375
+ }
376
+ }
377
+ return normalized;
378
+ }
379
+ function mergeWorkerDelegationLayers(...layers) {
380
+ let merged;
381
+ for (const layer of layers) {
382
+ const normalized = normalizeWorkerDelegationLayer(layer);
383
+ if (!normalized)
384
+ continue;
385
+ merged = { ...(merged ?? {}), ...normalized };
386
+ }
387
+ return merged;
388
+ }
265
389
  const VALID_THINKING_LEVELS = ["off", "minimal", "low", "medium", "high", "xhigh", "max", "ultra"];
266
390
  function isThinkingLevel(value) {
267
391
  return typeof value === "string" && VALID_THINKING_LEVELS.includes(value);
@@ -482,6 +606,9 @@ export class SettingsManager {
482
606
  this.projectSettingsLoadError = projectLoadError;
483
607
  this.directoryProfileInfo = directoryProfileInfo;
484
608
  this.errors = [...initialErrors];
609
+ this.reportWorkerDelegationDiagnostics("global", this.globalSettings);
610
+ this.reportWorkerDelegationDiagnostics("project", this.projectSettings);
611
+ this.reportWorkerDelegationDiagnostics("directoryProfile", this.directoryProfileSettings);
485
612
  this.settings = this.mergeEffectiveSettings();
486
613
  this.refreshProfileRegistry();
487
614
  }
@@ -504,6 +631,13 @@ export class SettingsManager {
504
631
  this.profileDiagnosticKeys.add(key);
505
632
  this.errors.push({ scope, error: new Error(message) });
506
633
  }
634
+ reportWorkerDelegationDiagnostics(scope, settings) {
635
+ const diagnostics = [];
636
+ normalizeWorkerDelegationLayer(settings.workerDelegation, (message) => diagnostics.push(message));
637
+ if (diagnostics.length > 0) {
638
+ this.recordError(scope, new Error(`Worker delegation settings: ${diagnostics.join("; ")}`));
639
+ }
640
+ }
507
641
  getActiveProfileNamesForDiagnostics() {
508
642
  // Mirror getActiveResourceProfileNames()'s source precedence (runtime profiles from
509
643
  // --resource-profile take priority) so a bad runtime profile name still surfaces a
@@ -565,6 +699,11 @@ export class SettingsManager {
565
699
  mergeEffectiveSettings() {
566
700
  let merged = deepMergeSettings(this.globalSettings, this.projectSettings);
567
701
  merged = deepMergeSettings(merged, this.directoryProfileSettings);
702
+ const workerDelegation = mergeWorkerDelegationLayers(this.globalSettings.workerDelegation, this.projectSettings.workerDelegation, this.directoryProfileSettings.workerDelegation);
703
+ if (workerDelegation)
704
+ merged.workerDelegation = workerDelegation;
705
+ else
706
+ delete merged.workerDelegation;
568
707
  if (this.runtimeResourceProfiles !== undefined) {
569
708
  merged = deepMergeSettings(merged, {
570
709
  activeResourceProfile: this.runtimeResourceProfiles,
@@ -865,6 +1004,9 @@ export class SettingsManager {
865
1004
  if (projectLoad.error) {
866
1005
  this.recordError("project", projectLoad.error);
867
1006
  }
1007
+ else {
1008
+ this.reportWorkerDelegationDiagnostics("project", this.projectSettings);
1009
+ }
868
1010
  this.recomputeSettings();
869
1011
  }
870
1012
  async reload() {
@@ -873,6 +1015,7 @@ export class SettingsManager {
873
1015
  if (!globalLoad.error) {
874
1016
  this.globalSettings = globalLoad.settings;
875
1017
  this.globalSettingsLoadError = null;
1018
+ this.reportWorkerDelegationDiagnostics("global", this.globalSettings);
876
1019
  }
877
1020
  else {
878
1021
  this.globalSettingsLoadError = globalLoad.error;
@@ -886,6 +1029,7 @@ export class SettingsManager {
886
1029
  if (!projectLoad.error) {
887
1030
  this.projectSettings = projectLoad.settings;
888
1031
  this.projectSettingsLoadError = null;
1032
+ this.reportWorkerDelegationDiagnostics("project", this.projectSettings);
889
1033
  }
890
1034
  else {
891
1035
  this.projectSettingsLoadError = projectLoad.error;
@@ -895,6 +1039,7 @@ export class SettingsManager {
895
1039
  this.directoryProfileInfo = directoryProfileLoad.info;
896
1040
  if (!directoryProfileLoad.error) {
897
1041
  this.directoryProfileSettings = directoryProfileLoad.settings;
1042
+ this.reportWorkerDelegationDiagnostics("directoryProfile", this.directoryProfileSettings);
898
1043
  }
899
1044
  else {
900
1045
  this.recordError("directoryProfile", directoryProfileLoad.error);
@@ -945,7 +1090,15 @@ export class SettingsManager {
945
1090
  }
946
1091
  /** Apply additional overrides on top of current settings */
947
1092
  applyOverrides(overrides) {
948
- this.settings = deepMergeSettings(this.settings, overrides);
1093
+ const normalizedOverrides = { ...overrides };
1094
+ if (Object.hasOwn(overrides, "workerDelegation")) {
1095
+ const workerDelegation = normalizeWorkerDelegationLayer(overrides.workerDelegation);
1096
+ if (workerDelegation)
1097
+ normalizedOverrides.workerDelegation = workerDelegation;
1098
+ else
1099
+ delete normalizedOverrides.workerDelegation;
1100
+ }
1101
+ this.settings = deepMergeSettings(this.settings, normalizedOverrides);
949
1102
  }
950
1103
  /** Select runtime-only resource profiles, e.g. from CLI/subagent launch options. */
951
1104
  setRuntimeResourceProfiles(profileNames) {
@@ -2438,7 +2591,7 @@ export class SettingsManager {
2438
2591
  };
2439
2592
  }
2440
2593
  getWorkerDelegationSettings() {
2441
- const configured = this.settings.workerDelegation ?? {};
2594
+ const configured = normalizeWorkerDelegationLayer(this.settings.workerDelegation) ?? {};
2442
2595
  const resolved = {
2443
2596
  enabled: typeof configured.enabled === "boolean" ? configured.enabled : DEFAULT_WORKER_DELEGATION_ENABLED,
2444
2597
  maxUsd: sanitizeNumberSetting(configured.maxUsd, DEFAULT_WORKER_DELEGATION_MAX_USD, 0, MAX_WORKER_DELEGATION_MAX_USD),
@@ -2446,10 +2599,8 @@ export class SettingsManager {
2446
2599
  writeEnabled: typeof configured.writeEnabled === "boolean"
2447
2600
  ? configured.writeEnabled
2448
2601
  : DEFAULT_WORKER_DELEGATION_WRITE_ENABLED,
2449
- writePaths: Array.isArray(configured.writePaths)
2450
- ? configured.writePaths.filter((entry) => typeof entry === "string" && entry.length > 0)
2451
- : [...DEFAULT_WORKER_DELEGATION_WRITE_PATHS],
2452
- maxConcurrent: sanitizeIntegerSetting(configured.maxConcurrent, 1, 1, Number.MAX_SAFE_INTEGER),
2602
+ writePaths: configured.writePaths ? [...configured.writePaths] : [...DEFAULT_WORKER_DELEGATION_WRITE_PATHS],
2603
+ maxConcurrent: sanitizeIntegerSetting(configured.maxConcurrent, DEFAULT_WORKER_DELEGATION_MAX_CONCURRENT, 1, MAX_WORKER_DELEGATION_MAX_CONCURRENT),
2453
2604
  };
2454
2605
  if (typeof configured.orchestrationProfile === "string" && configured.orchestrationProfile.trim().length > 0) {
2455
2606
  resolved.orchestrationProfile = configured.orchestrationProfile.trim();
@@ -2461,14 +2612,15 @@ export class SettingsManager {
2461
2612
  return typeof profileId === "string" && profileId.trim().length > 0 ? profileId.trim() : undefined;
2462
2613
  }
2463
2614
  setWorkerDelegationSettings(settings, scope = "global") {
2615
+ const normalizedSettings = normalizeWorkerDelegationLayer(settings) ?? {};
2464
2616
  if (scope === "project") {
2465
2617
  const projectSettings = structuredClone(this.projectSettings);
2466
- projectSettings.workerDelegation = { ...settings };
2618
+ projectSettings.workerDelegation = normalizedSettings;
2467
2619
  this.markProjectModified("workerDelegation");
2468
2620
  this.saveProjectSettings(projectSettings);
2469
2621
  return;
2470
2622
  }
2471
- this.globalSettings.workerDelegation = { ...settings };
2623
+ this.globalSettings.workerDelegation = normalizedSettings;
2472
2624
  this.markModified("workerDelegation");
2473
2625
  this.save();
2474
2626
  }