@nac3/forge-cli 0.2.1-alpha.60 → 1.0.1

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 (303) hide show
  1. package/README.md +5 -1
  2. package/dist/agents/bridge.d.ts.map +1 -1
  3. package/dist/agents/bridge.js +27 -0
  4. package/dist/agents/bridge.js.map +1 -1
  5. package/dist/agents/config_resolver.d.ts.map +1 -1
  6. package/dist/agents/config_resolver.js +15 -15
  7. package/dist/agents/config_resolver.js.map +1 -1
  8. package/dist/agents/runner.d.ts +8 -0
  9. package/dist/agents/runner.d.ts.map +1 -1
  10. package/dist/agents/runner.js +58 -11
  11. package/dist/agents/runner.js.map +1 -1
  12. package/dist/agents/system_prompt.d.ts.map +1 -1
  13. package/dist/agents/system_prompt.js +2 -1
  14. package/dist/agents/system_prompt.js.map +1 -1
  15. package/dist/bin/yf.d.ts.map +1 -1
  16. package/dist/bin/yf.js +18 -0
  17. package/dist/bin/yf.js.map +1 -1
  18. package/dist/chat/claude.d.ts +13 -0
  19. package/dist/chat/claude.d.ts.map +1 -1
  20. package/dist/chat/claude.js +95 -10
  21. package/dist/chat/claude.js.map +1 -1
  22. package/dist/chat/claude_cli.d.ts +10 -0
  23. package/dist/chat/claude_cli.d.ts.map +1 -1
  24. package/dist/chat/claude_cli.js +97 -16
  25. package/dist/chat/claude_cli.js.map +1 -1
  26. package/dist/chat/completion_hallucination_detector.d.ts +11 -0
  27. package/dist/chat/completion_hallucination_detector.d.ts.map +1 -1
  28. package/dist/chat/completion_hallucination_detector.js +37 -2
  29. package/dist/chat/completion_hallucination_detector.js.map +1 -1
  30. package/dist/chat/doctrine_digest.d.ts.map +1 -1
  31. package/dist/chat/doctrine_digest.js +10 -6
  32. package/dist/chat/doctrine_digest.js.map +1 -1
  33. package/dist/chat/panel.d.ts.map +1 -1
  34. package/dist/chat/panel.js +923 -50
  35. package/dist/chat/panel.js.map +1 -1
  36. package/dist/chat/refusal_detector.d.ts.map +1 -1
  37. package/dist/chat/refusal_detector.js +2 -1
  38. package/dist/chat/refusal_detector.js.map +1 -1
  39. package/dist/chat/server.d.ts +1 -0
  40. package/dist/chat/server.d.ts.map +1 -1
  41. package/dist/chat/server.js +960 -73
  42. package/dist/chat/server.js.map +1 -1
  43. package/dist/chat/session_projects.d.ts +31 -0
  44. package/dist/chat/session_projects.d.ts.map +1 -0
  45. package/dist/chat/session_projects.js +36 -0
  46. package/dist/chat/session_projects.js.map +1 -0
  47. package/dist/chat/session_store.d.ts +32 -0
  48. package/dist/chat/session_store.d.ts.map +1 -0
  49. package/dist/chat/session_store.js +58 -0
  50. package/dist/chat/session_store.js.map +1 -0
  51. package/dist/chat/tooling_section.d.ts +11 -0
  52. package/dist/chat/tooling_section.d.ts.map +1 -0
  53. package/dist/chat/tooling_section.js +70 -0
  54. package/dist/chat/tooling_section.js.map +1 -0
  55. package/dist/chat/tools/app_backend_dispatch.d.ts.map +1 -1
  56. package/dist/chat/tools/app_backend_dispatch.js +44 -1
  57. package/dist/chat/tools/app_backend_dispatch.js.map +1 -1
  58. package/dist/chat/tools/fs_editor.d.ts.map +1 -1
  59. package/dist/chat/tools/fs_editor.js +53 -3
  60. package/dist/chat/tools/fs_editor.js.map +1 -1
  61. package/dist/chat/tools/graph.js +2 -2
  62. package/dist/chat/tools/graph.js.map +1 -1
  63. package/dist/chat/tools/keys.d.ts.map +1 -1
  64. package/dist/chat/tools/keys.js +5 -18
  65. package/dist/chat/tools/keys.js.map +1 -1
  66. package/dist/chat/tools/nac3_invoke.d.ts.map +1 -1
  67. package/dist/chat/tools/nac3_invoke.js +16 -7
  68. package/dist/chat/tools/nac3_invoke.js.map +1 -1
  69. package/dist/chat/tools/shell.d.ts +6 -0
  70. package/dist/chat/tools/shell.d.ts.map +1 -1
  71. package/dist/chat/tools/shell.js +39 -0
  72. package/dist/chat/tools/shell.js.map +1 -1
  73. package/dist/chat/tools/workflow.d.ts +20 -0
  74. package/dist/chat/tools/workflow.d.ts.map +1 -1
  75. package/dist/chat/tools/workflow.js +98 -0
  76. package/dist/chat/tools/workflow.js.map +1 -1
  77. package/dist/chat/tools.d.ts.map +1 -1
  78. package/dist/chat/tools.js +79 -1
  79. package/dist/chat/tools.js.map +1 -1
  80. package/dist/chat/turn_control.d.ts +42 -0
  81. package/dist/chat/turn_control.d.ts.map +1 -0
  82. package/dist/chat/turn_control.js +53 -0
  83. package/dist/chat/turn_control.js.map +1 -0
  84. package/dist/commands/brain.js +1 -1
  85. package/dist/commands/chat.d.ts.map +1 -1
  86. package/dist/commands/chat.js +61 -10
  87. package/dist/commands/chat.js.map +1 -1
  88. package/dist/commands/graph.js +9 -9
  89. package/dist/commands/graph.js.map +1 -1
  90. package/dist/commands/keys_setup.d.ts +10 -28
  91. package/dist/commands/keys_setup.d.ts.map +1 -1
  92. package/dist/commands/keys_setup.js +54 -228
  93. package/dist/commands/keys_setup.js.map +1 -1
  94. package/dist/commands/license.d.ts.map +1 -1
  95. package/dist/commands/license.js +52 -28
  96. package/dist/commands/license.js.map +1 -1
  97. package/dist/commands/mcp.d.ts.map +1 -1
  98. package/dist/commands/mcp.js +62 -6
  99. package/dist/commands/mcp.js.map +1 -1
  100. package/dist/commands/mobile.d.ts +1 -1
  101. package/dist/commands/mobile.d.ts.map +1 -1
  102. package/dist/commands/mobile.js +32 -28
  103. package/dist/commands/mobile.js.map +1 -1
  104. package/dist/commands/onboard.d.ts +19 -0
  105. package/dist/commands/onboard.d.ts.map +1 -0
  106. package/dist/commands/onboard.js +126 -0
  107. package/dist/commands/onboard.js.map +1 -0
  108. package/dist/commands/pending.d.ts.map +1 -1
  109. package/dist/commands/pending.js +25 -1
  110. package/dist/commands/pending.js.map +1 -1
  111. package/dist/commands/projects.js +25 -1
  112. package/dist/commands/projects.js.map +1 -1
  113. package/dist/commands/review-screens.js +28 -1
  114. package/dist/commands/review-screens.js.map +1 -1
  115. package/dist/commands/workflow.d.ts +18 -0
  116. package/dist/commands/workflow.d.ts.map +1 -0
  117. package/dist/commands/workflow.js +253 -0
  118. package/dist/commands/workflow.js.map +1 -0
  119. package/dist/core/brain_config.d.ts +2 -0
  120. package/dist/core/brain_config.d.ts.map +1 -1
  121. package/dist/core/brain_config.js +18 -3
  122. package/dist/core/brain_config.js.map +1 -1
  123. package/dist/core/cf_tunnel.d.ts.map +1 -1
  124. package/dist/core/cf_tunnel.js +8 -2
  125. package/dist/core/cf_tunnel.js.map +1 -1
  126. package/dist/core/cost_router.d.ts.map +1 -1
  127. package/dist/core/cost_router.js +11 -2
  128. package/dist/core/cost_router.js.map +1 -1
  129. package/dist/core/desktop_open.d.ts +16 -0
  130. package/dist/core/desktop_open.d.ts.map +1 -0
  131. package/dist/core/desktop_open.js +114 -0
  132. package/dist/core/desktop_open.js.map +1 -0
  133. package/dist/core/keys_envelope.d.ts.map +1 -1
  134. package/dist/core/keys_envelope.js +5 -1
  135. package/dist/core/keys_envelope.js.map +1 -1
  136. package/dist/core/limits_config.d.ts +5 -0
  137. package/dist/core/limits_config.d.ts.map +1 -1
  138. package/dist/core/limits_config.js +5 -0
  139. package/dist/core/limits_config.js.map +1 -1
  140. package/dist/core/logger.d.ts.map +1 -1
  141. package/dist/core/logger.js +3 -0
  142. package/dist/core/logger.js.map +1 -1
  143. package/dist/core/pairing.d.ts +6 -0
  144. package/dist/core/pairing.d.ts.map +1 -1
  145. package/dist/core/pairing.js +41 -2
  146. package/dist/core/pairing.js.map +1 -1
  147. package/dist/core/provider_keys.d.ts.map +1 -1
  148. package/dist/core/provider_keys.js +25 -12
  149. package/dist/core/provider_keys.js.map +1 -1
  150. package/dist/core/provider_models.js +1 -1
  151. package/dist/deploy/cloudflare.d.ts.map +1 -1
  152. package/dist/deploy/cloudflare.js +13 -2
  153. package/dist/deploy/cloudflare.js.map +1 -1
  154. package/dist/design/yujin_design_resolver.d.ts +16 -0
  155. package/dist/design/yujin_design_resolver.d.ts.map +1 -1
  156. package/dist/design/yujin_design_resolver.js +103 -20
  157. package/dist/design/yujin_design_resolver.js.map +1 -1
  158. package/dist/docs/doctrine/default-design-system.md +32 -0
  159. package/dist/docs/doctrine/office-tools.md +20 -0
  160. package/dist/docs/doctrine/pizarron.md +40 -0
  161. package/dist/docs/doctrine/verb-composition.md +16 -0
  162. package/dist/docs/doctrine/workflow-kinds.md +39 -22
  163. package/dist/docs/doctrine/workflow.md +12 -4
  164. package/dist/license/auto_sync.d.ts +22 -0
  165. package/dist/license/auto_sync.d.ts.map +1 -0
  166. package/dist/license/auto_sync.js +91 -0
  167. package/dist/license/auto_sync.js.map +1 -0
  168. package/dist/license/handle_key.d.ts +32 -0
  169. package/dist/license/handle_key.d.ts.map +1 -0
  170. package/dist/license/handle_key.js +56 -0
  171. package/dist/license/handle_key.js.map +1 -0
  172. package/dist/license/hito4_client.d.ts.map +1 -1
  173. package/dist/license/hito4_client.js +63 -25
  174. package/dist/license/hito4_client.js.map +1 -1
  175. package/dist/llm/gemini_client.d.ts.map +1 -1
  176. package/dist/llm/gemini_client.js +5 -2
  177. package/dist/llm/gemini_client.js.map +1 -1
  178. package/dist/llm/managed_client.d.ts.map +1 -1
  179. package/dist/llm/managed_client.js +14 -9
  180. package/dist/llm/managed_client.js.map +1 -1
  181. package/dist/mcp/plan_bridges.d.ts +17 -0
  182. package/dist/mcp/plan_bridges.d.ts.map +1 -0
  183. package/dist/mcp/plan_bridges.js +119 -0
  184. package/dist/mcp/plan_bridges.js.map +1 -0
  185. package/dist/migrate/ai-apply.d.ts.map +1 -1
  186. package/dist/migrate/ai-apply.js +25 -2
  187. package/dist/migrate/ai-apply.js.map +1 -1
  188. package/dist/nac3/internal_manifest.d.ts.map +1 -1
  189. package/dist/nac3/internal_manifest.js +200 -10
  190. package/dist/nac3/internal_manifest.js.map +1 -1
  191. package/dist/nac3/verb_tier_map.d.ts.map +1 -1
  192. package/dist/nac3/verb_tier_map.js +3 -0
  193. package/dist/nac3/verb_tier_map.js.map +1 -1
  194. package/dist/onboarding/concierge_client.d.ts +34 -0
  195. package/dist/onboarding/concierge_client.d.ts.map +1 -0
  196. package/dist/onboarding/concierge_client.js +80 -0
  197. package/dist/onboarding/concierge_client.js.map +1 -0
  198. package/dist/onboarding/next_step.d.ts +32 -0
  199. package/dist/onboarding/next_step.d.ts.map +1 -0
  200. package/dist/onboarding/next_step.js +60 -0
  201. package/dist/onboarding/next_step.js.map +1 -0
  202. package/dist/pending/store.d.ts +7 -0
  203. package/dist/pending/store.d.ts.map +1 -1
  204. package/dist/pending/store.js +19 -0
  205. package/dist/pending/store.js.map +1 -1
  206. package/dist/pending/types.d.ts +20 -0
  207. package/dist/pending/types.d.ts.map +1 -1
  208. package/dist/pending/types.js.map +1 -1
  209. package/dist/reader/parsers/epub.d.ts.map +1 -1
  210. package/dist/reader/parsers/epub.js +6 -1
  211. package/dist/reader/parsers/epub.js.map +1 -1
  212. package/dist/relay/board_snapshot.d.ts +69 -0
  213. package/dist/relay/board_snapshot.d.ts.map +1 -0
  214. package/dist/relay/board_snapshot.js +149 -0
  215. package/dist/relay/board_snapshot.js.map +1 -0
  216. package/dist/relay/command_consumer.d.ts +97 -0
  217. package/dist/relay/command_consumer.d.ts.map +1 -0
  218. package/dist/relay/command_consumer.js +135 -0
  219. package/dist/relay/command_consumer.js.map +1 -0
  220. package/dist/relay/mock_relay.d.ts +34 -0
  221. package/dist/relay/mock_relay.d.ts.map +1 -0
  222. package/dist/relay/mock_relay.js +93 -0
  223. package/dist/relay/mock_relay.js.map +1 -0
  224. package/dist/relay/relay_client.d.ts +28 -0
  225. package/dist/relay/relay_client.d.ts.map +1 -0
  226. package/dist/relay/relay_client.js +80 -0
  227. package/dist/relay/relay_client.js.map +1 -0
  228. package/dist/relay/relay_publisher.d.ts +59 -0
  229. package/dist/relay/relay_publisher.d.ts.map +1 -0
  230. package/dist/relay/relay_publisher.js +101 -0
  231. package/dist/relay/relay_publisher.js.map +1 -0
  232. package/dist/relay/types.d.ts +54 -0
  233. package/dist/relay/types.d.ts.map +1 -0
  234. package/dist/relay/types.js +8 -0
  235. package/dist/relay/types.js.map +1 -0
  236. package/dist/semantic_graph/ast_extract.d.ts +5 -0
  237. package/dist/semantic_graph/ast_extract.d.ts.map +1 -1
  238. package/dist/semantic_graph/ast_extract.js +46 -0
  239. package/dist/semantic_graph/ast_extract.js.map +1 -1
  240. package/dist/semantic_graph/derive.d.ts +12 -0
  241. package/dist/semantic_graph/derive.d.ts.map +1 -1
  242. package/dist/semantic_graph/derive.js +325 -6
  243. package/dist/semantic_graph/derive.js.map +1 -1
  244. package/dist/semantic_graph/store.d.ts +9 -0
  245. package/dist/semantic_graph/store.d.ts.map +1 -1
  246. package/dist/semantic_graph/store.js +23 -1
  247. package/dist/semantic_graph/store.js.map +1 -1
  248. package/dist/semantic_graph/types.d.ts +1 -1
  249. package/dist/semantic_graph/types.d.ts.map +1 -1
  250. package/dist/support/github_dispatcher.d.ts.map +1 -1
  251. package/dist/support/github_dispatcher.js +30 -2
  252. package/dist/support/github_dispatcher.js.map +1 -1
  253. package/dist/tasks/supervisor.d.ts +88 -0
  254. package/dist/tasks/supervisor.d.ts.map +1 -0
  255. package/dist/tasks/supervisor.js +308 -0
  256. package/dist/tasks/supervisor.js.map +1 -0
  257. package/dist/tasks/task_type.d.ts +11 -0
  258. package/dist/tasks/task_type.d.ts.map +1 -0
  259. package/dist/tasks/task_type.js +21 -0
  260. package/dist/tasks/task_type.js.map +1 -0
  261. package/dist/vault/store.d.ts.map +1 -1
  262. package/dist/vault/store.js +6 -1
  263. package/dist/vault/store.js.map +1 -1
  264. package/dist/version.d.ts +3 -5
  265. package/dist/version.d.ts.map +1 -1
  266. package/dist/version.js +3 -5
  267. package/dist/version.js.map +1 -1
  268. package/dist/voice/providers/google.d.ts.map +1 -1
  269. package/dist/voice/providers/google.js +6 -4
  270. package/dist/voice/providers/google.js.map +1 -1
  271. package/dist/workflow/config.d.ts +43 -0
  272. package/dist/workflow/config.d.ts.map +1 -0
  273. package/dist/workflow/config.js +199 -0
  274. package/dist/workflow/config.js.map +1 -0
  275. package/dist/workflow/instances.d.ts +40 -0
  276. package/dist/workflow/instances.d.ts.map +1 -0
  277. package/dist/workflow/instances.js +122 -0
  278. package/dist/workflow/instances.js.map +1 -0
  279. package/dist/workflow/multi_view.d.ts +27 -0
  280. package/dist/workflow/multi_view.d.ts.map +1 -0
  281. package/dist/workflow/multi_view.js +76 -0
  282. package/dist/workflow/multi_view.js.map +1 -0
  283. package/dist/workflow/orchestrator.d.ts +111 -0
  284. package/dist/workflow/orchestrator.d.ts.map +1 -0
  285. package/dist/workflow/orchestrator.js +241 -0
  286. package/dist/workflow/orchestrator.js.map +1 -0
  287. package/docs/doctrine/default-design-system.md +32 -0
  288. package/docs/doctrine/office-tools.md +20 -0
  289. package/docs/doctrine/pizarron.md +40 -0
  290. package/docs/doctrine/verb-composition.md +16 -0
  291. package/docs/doctrine/workflow-kinds.md +39 -22
  292. package/docs/doctrine/workflow.md +12 -4
  293. package/package.json +2 -1
  294. package/src/i18n/catalogs/ar.json +223 -210
  295. package/src/i18n/catalogs/de.json +223 -210
  296. package/src/i18n/catalogs/en.json +223 -210
  297. package/src/i18n/catalogs/es.json +223 -210
  298. package/src/i18n/catalogs/fr.json +223 -210
  299. package/src/i18n/catalogs/hi.json +223 -210
  300. package/src/i18n/catalogs/it.json +223 -210
  301. package/src/i18n/catalogs/ja.json +223 -210
  302. package/src/i18n/catalogs/pt.json +223 -210
  303. package/src/i18n/catalogs/zh.json +223 -210
@@ -190,7 +190,14 @@ export class ClaudeClient {
190
190
  const STREAK_LIMIT = 4;
191
191
  let lastFailVerb = null;
192
192
  let failStreak = 0;
193
+ let interrupted = false;
193
194
  for (let round = 0; round <= maxRounds; round++) {
195
+ /* Controlled-fall interrupt: stop at the round boundary so already
196
+ * applied tool calls stay + the conversation is left consistent. */
197
+ if (req.signal?.aborted) {
198
+ interrupted = true;
199
+ break;
200
+ }
194
201
  const body = {
195
202
  model,
196
203
  max_tokens: maxTokens,
@@ -237,15 +244,50 @@ export class ClaudeClient {
237
244
  input_schema: t.input_schema,
238
245
  }));
239
246
  }
240
- const resp = await this.fetchImpl('https://api.anthropic.com/v1/messages', {
241
- method: 'POST',
242
- headers: {
243
- 'content-type': 'application/json',
244
- 'x-api-key': this.apiKey,
245
- 'anthropic-version': '2023-06-01',
246
- },
247
- body: JSON.stringify(body),
248
- });
247
+ let resp;
248
+ /* A transient network blip on the provider call used to surface to
249
+ * the user verbatim as "fetch failed" (undici TypeError). Retry a
250
+ * couple times with backoff; on final failure raise a clear message
251
+ * instead of the raw error. An interrupt still wins immediately. */
252
+ let netAttempt = 0;
253
+ for (;;) {
254
+ try {
255
+ resp = await this.fetchImpl('https://api.anthropic.com/v1/messages', {
256
+ method: 'POST',
257
+ headers: {
258
+ 'content-type': 'application/json',
259
+ 'x-api-key': this.apiKey,
260
+ 'anthropic-version': '2023-06-01',
261
+ },
262
+ body: JSON.stringify(body),
263
+ ...(req.signal ? { signal: req.signal } : {}),
264
+ });
265
+ break;
266
+ }
267
+ catch (e) {
268
+ /* an interrupt mid-request surfaces as an AbortError -> treat as
269
+ * a controlled stop and return what completed so far. */
270
+ if (req.signal?.aborted || (e instanceof Error && e.name === 'AbortError')) {
271
+ interrupted = true;
272
+ break;
273
+ }
274
+ if (netAttempt < 2 && isTransientNetworkError(e)) {
275
+ netAttempt++;
276
+ await new Promise((r) => setTimeout(r, netAttempt === 1 ? 600 : 1500));
277
+ if (req.signal?.aborted) {
278
+ interrupted = true;
279
+ break;
280
+ }
281
+ continue;
282
+ }
283
+ throw new ClaudeApiError('No pude conectar con el proveedor del brain (' + describeNetError(e)
284
+ + '). Revisa tu conexion y reintenta.', 0);
285
+ }
286
+ }
287
+ if (interrupted)
288
+ break;
289
+ if (!resp)
290
+ break; /* unreachable when not interrupted; narrows the type */
249
291
  if (!resp.ok) {
250
292
  const detail = await safeText(resp);
251
293
  throw new ClaudeApiError('Claude API ' + resp.status + ': ' + detail.slice(0, 500), resp.status);
@@ -393,7 +435,22 @@ export class ClaudeClient {
393
435
  }
394
436
  messages.push({ role: 'user', content: toolResultBlocks });
395
437
  }
396
- /* Unreachable: the loop exits via return or throw. */
438
+ /* Controlled-fall interrupt: the loop broke between rounds. Return
439
+ * what completed so far, flagged, instead of throwing. */
440
+ if (interrupted) {
441
+ const partial = (lastText && lastText.trim().length > 0)
442
+ ? lastText + '\n\n[Interrumpido por el usuario.]'
443
+ : '[Turno interrumpido por el usuario. Lo que se alcanzo a hacer quedo aplicado.]';
444
+ return {
445
+ text: partial,
446
+ tokensIn: totalTokensIn,
447
+ tokensOut: totalTokensOut,
448
+ model: usedModel,
449
+ toolRounds,
450
+ interrupted: true,
451
+ };
452
+ }
453
+ /* Unreachable in normal flow: the loop exits via return or throw. */
397
454
  throw new ClaudeApiError('tool_use loop terminated unexpectedly', 500);
398
455
  }
399
456
  }
@@ -405,4 +462,32 @@ async function safeText(r) {
405
462
  return '(no body)';
406
463
  }
407
464
  }
465
+ /* A retry-worthy network failure on the provider fetch. undici raises a
466
+ * TypeError "fetch failed" whose real cause carries the errno code, so we
467
+ * inspect both the error and its .cause. */
468
+ function isTransientNetworkError(e) {
469
+ if (!(e instanceof Error))
470
+ return false;
471
+ const cause = e.cause;
472
+ const code = e.code || cause?.code || '';
473
+ const TRANSIENT = [
474
+ 'ECONNRESET', 'ETIMEDOUT', 'ENOTFOUND', 'EAI_AGAIN', 'ECONNREFUSED',
475
+ 'EPIPE', 'UND_ERR_CONNECT_TIMEOUT', 'UND_ERR_SOCKET', 'UND_ERR_HEADERS_TIMEOUT',
476
+ ];
477
+ if (code && TRANSIENT.includes(code))
478
+ return true;
479
+ /* undici wraps the socket error as TypeError: fetch failed. */
480
+ return e.name === 'TypeError' && /fetch failed/i.test(e.message || '');
481
+ }
482
+ /* Short, user-facing reason for a network failure (errno code or trimmed
483
+ * message) -- never the raw stack. */
484
+ function describeNetError(e) {
485
+ const cause = e?.cause;
486
+ const code = e?.code || cause?.code;
487
+ if (code)
488
+ return String(code);
489
+ if (e instanceof Error && e.message)
490
+ return e.message.slice(0, 80);
491
+ return 'red';
492
+ }
408
493
  //# sourceMappingURL=claude.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/chat/claude.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/chat/claude.ts"],"names":[],"mappings":"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"}
@@ -70,6 +70,16 @@ export interface ClaudeCliClientOptions {
70
70
  * a canned stdout JSONL stream without running the real binary. */
71
71
  spawnImpl?: (cmd: string, args: string[], opts: Record<string, unknown>) => ChildProcess;
72
72
  }
73
+ /** True when `m` is a Claude model `claude -p` accepts (full id or the
74
+ * opus/sonnet/haiku aliases). Non-Claude ids (gemini, gpt, ...) must NOT
75
+ * be passed to claude -p -- Plan mode always runs the Claude
76
+ * subscription. */
77
+ export declare function isClaudeCliModel(m: string): boolean;
78
+ /** Map any resolved model id/alias to the stable CLI alias `claude -p`
79
+ * accepts (opus|sonnet|haiku). A full id (claude-opus-4-8) or a
80
+ * non-Claude id (gemini-*) both resolve to a sane Claude tier so the
81
+ * subscription turn never 404s on an "unknown model". */
82
+ export declare function toCliModelAlias(m: string | undefined): string;
73
83
  export declare class ClaudeCliClient implements ChatLLMClient {
74
84
  private readonly opts;
75
85
  /** Cache of the generated mcp-config path (written once). */
@@ -1 +1 @@
1
- {"version":3,"file":"claude_cli.d.ts","sourceRoot":"","sources":["../../src/chat/claude_cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude_cli.d.ts","sourceRoot":"","sources":["../../src/chat/claude_cli.ts"],"names":[],"mappings":"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"}
@@ -45,6 +45,8 @@ import * as os from 'node:os';
45
45
  import * as path from 'node:path';
46
46
  import { fileURLToPath } from 'node:url';
47
47
  import { tForLang, currentLanguage } from '../i18n/index.js';
48
+ import { mcpEnabledSync } from '../mcp/config.js';
49
+ import { readPlanBridgesSync } from '../mcp/plan_bridges.js';
48
50
  import { ClaudeApiError } from './claude.js';
49
51
  /** PND-064 slice B -- absolute path to the compiled forge_panel MCP
50
52
  * server. At runtime this module is dist/chat/claude_cli.js, so the
@@ -73,6 +75,29 @@ function flattenMessages(messages) {
73
75
  }
74
76
  return lines.join('\n\n');
75
77
  }
78
+ /** True when `m` is a Claude model `claude -p` accepts (full id or the
79
+ * opus/sonnet/haiku aliases). Non-Claude ids (gemini, gpt, ...) must NOT
80
+ * be passed to claude -p -- Plan mode always runs the Claude
81
+ * subscription. */
82
+ export function isClaudeCliModel(m) {
83
+ const s = String(m).trim().toLowerCase();
84
+ return s.startsWith('claude') || s === 'opus' || s === 'sonnet' || s === 'haiku' || s === 'default';
85
+ }
86
+ /** Map any resolved model id/alias to the stable CLI alias `claude -p`
87
+ * accepts (opus|sonnet|haiku). A full id (claude-opus-4-8) or a
88
+ * non-Claude id (gemini-*) both resolve to a sane Claude tier so the
89
+ * subscription turn never 404s on an "unknown model". */
90
+ export function toCliModelAlias(m) {
91
+ const s = String(m || '').trim().toLowerCase();
92
+ if (s.includes('opus'))
93
+ return 'opus';
94
+ if (s.includes('haiku'))
95
+ return 'haiku';
96
+ if (s.includes('sonnet'))
97
+ return 'sonnet';
98
+ /* gemini/unknown/empty -> default the subscription turn to sonnet. */
99
+ return 'sonnet';
100
+ }
76
101
  export class ClaudeCliClient {
77
102
  opts;
78
103
  /** Cache of the generated mcp-config path (written once). */
@@ -122,19 +147,32 @@ export class ClaudeCliClient {
122
147
  }
123
148
  catch { /* exists */ }
124
149
  const cfgPath = path.join(dir, 'panel-mcp-' + process.pid + '.json');
125
- const cfg = {
126
- mcpServers: {
127
- [PANEL_MCP_SERVER]: {
128
- command: process.execPath, /* node */
129
- args: [panelServerScriptPath()],
130
- env: {
131
- FORGE_PANEL_PORT: String(this.opts.panelBridge.port),
132
- FORGE_PANEL_TOKEN: this.opts.panelBridge.token,
133
- },
150
+ const mcpServers = {
151
+ [PANEL_MCP_SERVER]: {
152
+ command: process.execPath, /* node */
153
+ args: [panelServerScriptPath()],
154
+ env: {
155
+ FORGE_PANEL_PORT: String(this.opts.panelBridge.port),
156
+ FORGE_PANEL_TOKEN: this.opts.panelBridge.token,
134
157
  },
135
158
  },
136
159
  };
137
- writeFileSync(cfgPath, JSON.stringify(cfg), 'utf-8');
160
+ /* PND-029 (Plan-mode MCP) -- when the MCP feature flag is ON, merge
161
+ * the user's configured EXTERNAL MCP servers into the same config.
162
+ * claude -p spawns + discovers them natively; no Forge runtime
163
+ * needed in Plan. The panel bridge always wins its own name. */
164
+ try {
165
+ if (mcpEnabledSync()) {
166
+ const external = readPlanBridgesSync();
167
+ for (const [name, def] of Object.entries(external)) {
168
+ if (name === PANEL_MCP_SERVER)
169
+ continue;
170
+ mcpServers[name] = def;
171
+ }
172
+ }
173
+ }
174
+ catch { /* bridges are best-effort; never break a chat turn */ }
175
+ writeFileSync(cfgPath, JSON.stringify({ mcpServers }), 'utf-8');
138
176
  this.mcpConfigPath = cfgPath;
139
177
  return cfgPath;
140
178
  }
@@ -145,12 +183,21 @@ export class ClaudeCliClient {
145
183
  if (this.opts.permissionMode === 'bypassPermissions') {
146
184
  args.push('--dangerously-skip-permissions');
147
185
  }
148
- if (this.opts.model) {
149
- args.push('--model', this.opts.model);
150
- }
151
- else if (req.model) {
152
- args.push('--model', req.model);
153
- }
186
+ /* Plan mode ALWAYS runs `claude -p` (the Claude subscription), so the
187
+ * model passed must be a Claude model. The eco/frontier config can
188
+ * resolve to a non-Claude id (e.g. gemini for the eco tier, or a
189
+ * retired claude-opus-4-7) -- passing that to `claude -p` yields a
190
+ * 404 / "unknown model". So we only pass --model when it is a Claude
191
+ * model; otherwise we omit it and let `claude -p` use the
192
+ * subscription's current default. */
193
+ /* Pablo 2026-06-15 -- a FULL id like 'claude-opus-4-8' makes the
194
+ * subscription `claude -p` 404 ("unknown model"); the CLI reliably
195
+ * accepts only the stable ALIASES opus/sonnet/haiku. Map the
196
+ * resolved model (full id or alias) to its CLI alias and pass that.
197
+ * Non-Claude ids (gemini for eco) map to a sensible Claude tier so
198
+ * the subscription turn still runs. */
199
+ const candidateModel = this.opts.model ?? req.model;
200
+ args.push('--model', toCliModelAlias(candidateModel));
154
201
  /* alpha.59z.163 PND-027 -- the HTTP path splits system into
155
202
  * cached prefix + uncached dynamic suffix for Anthropic's prompt
156
203
  * cache. `claude -p --append-system-prompt` takes a single
@@ -208,6 +255,11 @@ export class ClaudeCliClient {
208
255
  stdio: ['pipe', 'pipe', 'pipe'],
209
256
  windowsHide: true,
210
257
  env: childEnv,
258
+ /* Run in the ACTIVE project so `claude -p` operates there, not in
259
+ * the launch cwd. Follows a hot project switch. (Pablo 2026-06-15)
260
+ * Without this the subprocess always ran in C:\yujin-forge while
261
+ * the panel injected a different project -> "two contexts". */
262
+ ...(req.cwd ? { cwd: req.cwd } : {}),
211
263
  });
212
264
  const events = [];
213
265
  let stdoutBuf = '';
@@ -293,6 +345,35 @@ export class ClaudeCliClient {
293
345
  catch { /* ignore */ }
294
346
  finalize(new ClaudeApiError('claude -p timed out after ' + this.opts.timeoutMs + 'ms', 504));
295
347
  }, this.opts.timeoutMs);
348
+ /* Interrupt (panel "Detener" / relay control): kill the subprocess
349
+ * gracefully (SIGTERM, SIGKILL fallback) and resolve with a
350
+ * controlled-fall result. Resolving twice is a no-op, so a late
351
+ * child-close that also finalizes is harmless. */
352
+ if (req.signal) {
353
+ const onAbort = () => {
354
+ clearTimeout(timer);
355
+ try {
356
+ child.kill('SIGTERM');
357
+ }
358
+ catch { /* ignore */ }
359
+ const k = setTimeout(() => { try {
360
+ child.kill('SIGKILL');
361
+ }
362
+ catch { /* ignore */ } }, 2000);
363
+ if (typeof k.unref === 'function')
364
+ k.unref();
365
+ resolve({
366
+ text: '[Turno interrumpido por el usuario. Lo que se alcanzo a hacer quedo aplicado.]',
367
+ tokensIn: 0, tokensOut: 0,
368
+ model: this.opts.model ?? req.model ?? 'claude-code-cli',
369
+ toolRounds: [], interrupted: true,
370
+ });
371
+ };
372
+ if (req.signal.aborted)
373
+ onAbort();
374
+ else
375
+ req.signal.addEventListener('abort', onAbort, { once: true });
376
+ }
296
377
  const onStream = req.onStreamEvent;
297
378
  /* round counter matches the HTTP path's tool_round_start /
298
379
  * _done semantics: one round per tool_use the model invoked,
@@ -1 +1 @@
1
- {"version":3,"file":"claude_cli.js","sourceRoot":"","sources":["../../src/chat/claude_cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude_cli.js","sourceRoot":"","sources":["../../src/chat/claude_cli.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@
18
18
  *
19
19
  * ASCII-only.
20
20
  */
21
+ export declare function clampPhrase(s: string, max?: number): string;
21
22
  export interface HallucinationCheck {
22
23
  /** True when the reply contains a "doing the work" phrase AND
23
24
  * no tool was invoked in the turn. */
@@ -36,5 +37,15 @@ export interface HallucinationCheck {
36
37
  * fires. Independent of is_hallucinated. */
37
38
  is_confused: boolean;
38
39
  }
40
+ export type PanelClaimKind = 'pizarron' | 'task' | null;
41
+ /** Did the reply CLAIM a pizarron/task action? Pairs a claim verb with a
42
+ * pizarron/document/task noun. Conservative: both must be present. The
43
+ * caller pairs this with "did a pizarron/task tool actually fire?" to
44
+ * catch the narrate-without-execute case. */
45
+ export declare function checkClaimedPanelAction(reply_text: string): {
46
+ claimed: boolean;
47
+ kind: PanelClaimKind;
48
+ phrase: string;
49
+ };
39
50
  export declare function checkCompletionHallucination(reply_text: string, tool_uses_in_turn: number): HallucinationCheck;
40
51
  //# sourceMappingURL=completion_hallucination_detector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"completion_hallucination_detector.d.ts","sourceRoot":"","sources":["../../src/chat/completion_hallucination_detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AA2CH,MAAM,WAAW,kBAAkB;IACjC;2CACuC;IACvC,eAAe,EAAE,OAAO,CAAC;IACzB,6DAA6D;IAC7D,cAAc,EAAE,MAAM,CAAC;IACvB;qDACiD;IACjD,UAAU,EAAE,OAAO,CAAC;IACpB;2DACuD;IACvD,SAAS,EAAE,OAAO,CAAC;IACnB;;;iDAG6C;IAC7C,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,MAAM,GACxB,kBAAkB,CAiCpB"}
1
+ {"version":3,"file":"completion_hallucination_detector.d.ts","sourceRoot":"","sources":["../../src/chat/completion_hallucination_detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAaH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,SAAM,GAAG,MAAM,CAKxD;AAqCD,MAAM,WAAW,kBAAkB;IACjC;2CACuC;IACvC,eAAe,EAAE,OAAO,CAAC;IACzB,6DAA6D;IAC7D,cAAc,EAAE,MAAM,CAAC;IACvB;qDACiD;IACjD,UAAU,EAAE,OAAO,CAAC;IACpB;2DACuD;IACvD,SAAS,EAAE,OAAO,CAAC;IACnB;;;iDAG6C;IAC7C,WAAW,EAAE,OAAO,CAAC;CACtB;AAYD,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,IAAI,CAAC;AAExD;;;8CAG8C;AAC9C,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,cAAc,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAStH;AAED,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,MAAM,GACxB,kBAAkB,CAiCpB"}
@@ -24,6 +24,18 @@
24
24
  * is over its head. We surface those separately so the chat server
25
25
  * can write the same next-turn frontier hint without forcing a full
26
26
  * hallucination flag. */
27
+ /* PND-067 -- a plain `.slice(0, 120)` cuts by UTF-16 code units, so it can
28
+ * split a surrogate pair (emoji / astral char) at the boundary and leave a
29
+ * lone surrogate; once JSON.stringify'd into hallucinations.jsonl that reads
30
+ * back as a replacement char (the "mojibake"). Clamp to 120 units but drop a
31
+ * dangling lone high surrogate so the stored phrase is always well-formed. */
32
+ export function clampPhrase(s, max = 120) {
33
+ let out = (s || '').slice(0, max);
34
+ const last = out.charCodeAt(out.length - 1);
35
+ if (last >= 0xD800 && last <= 0xDBFF)
36
+ out = out.slice(0, -1); /* lone high surrogate */
37
+ return out;
38
+ }
27
39
  const CONFUSION_PATTERNS = [
28
40
  /\b(?:mis\s+disculpas|disculpa(?:me)?|mil\s+disculpas|perd[oó]n(?:ame)?)\b/i,
29
41
  /\b(?:hubo\s+un\s+error|tuve\s+un\s+error|se\s+produjo\s+un\s+error|error\s+en\s+la\s+comunicaci[oó]n|me\s+confund[ií])\b/i,
@@ -55,6 +67,29 @@ const PROOF_PATTERNS = [
55
67
  const REFUSAL_PATTERNS = [
56
68
  /\b(?:no\s+puedo|no\s+tengo\s+(?:la\s+)?capacidad|no\s+puedo\s+mostrar(?:te)?|cannot|can'?t)\b/i,
57
69
  ];
70
+ /* Pablo 2026-06-15 -- a sharper, DOMAIN-specific claim: the model says
71
+ * it opened a pizarron document / tab or created a task. Opus 4.8 narra
72
+ * esto ("ya abrí el documento", "te lo abrí en el pizarron", "cree la
73
+ * tarea") sin emitir la tool, mientras Gemini la ejecuta. Lo detectamos
74
+ * por separado para FORZAR la re-emision del turno (no solo loguear). */
75
+ const PANEL_CLAIM_VERBS = /\b(?:abr[ií]|abro|te\s+(?:lo\s+)?abr[ií]|lo\s+abr[ií]|ya\s+(?:te\s+)?(?:lo\s+)?abr[ií]|dej[eé]\s+abierto|qued[oó]\s+abierto|est[aá]\s+abierto|gener[eé]|cre[eé]|arm[eé]|agregu[eé]|abierto\s+(?:el|en\s+el)|opened|created|generated|added)\b/i;
76
+ const PANEL_NOUNS = /\b(?:pizarr[oó]n|documento|doc\b|pesta[nñ]a|especificaciones|tarea|task)\b/i;
77
+ /** Did the reply CLAIM a pizarron/task action? Pairs a claim verb with a
78
+ * pizarron/document/task noun. Conservative: both must be present. The
79
+ * caller pairs this with "did a pizarron/task tool actually fire?" to
80
+ * catch the narrate-without-execute case. */
81
+ export function checkClaimedPanelAction(reply_text) {
82
+ const text = (reply_text || '').trim();
83
+ if (!text)
84
+ return { claimed: false, kind: null, phrase: '' };
85
+ const v = PANEL_CLAIM_VERBS.exec(text);
86
+ const n = PANEL_NOUNS.exec(text);
87
+ if (!v || !n)
88
+ return { claimed: false, kind: null, phrase: '' };
89
+ const noun = n[0].toLowerCase();
90
+ const kind = (noun === 'tarea' || noun === 'task') ? 'task' : 'pizarron';
91
+ return { claimed: true, kind, phrase: clampPhrase(v[0] + ' ... ' + n[0]) };
92
+ }
58
93
  export function checkCompletionHallucination(reply_text, tool_uses_in_turn) {
59
94
  const text = (reply_text || '').trim();
60
95
  if (!text) {
@@ -67,7 +102,7 @@ export function checkCompletionHallucination(reply_text, tool_uses_in_turn) {
67
102
  const m = re.exec(text);
68
103
  if (m) {
69
104
  is_refusal = true;
70
- matched_phrase = m[0].slice(0, 120);
105
+ matched_phrase = clampPhrase(m[0]);
71
106
  break;
72
107
  }
73
108
  }
@@ -84,7 +119,7 @@ export function checkCompletionHallucination(reply_text, tool_uses_in_turn) {
84
119
  if (m) {
85
120
  return {
86
121
  is_hallucinated: true,
87
- matched_phrase: matched_phrase || m[0].slice(0, 120),
122
+ matched_phrase: matched_phrase || clampPhrase(m[0]),
88
123
  is_refusal,
89
124
  has_proof,
90
125
  is_confused,
@@ -1 +1 @@
1
- {"version":3,"file":"completion_hallucination_detector.js","sourceRoot":"","sources":["../../src/chat/completion_hallucination_detector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;;;yBAKyB;AACzB,MAAM,kBAAkB,GAAa;IACnC,4EAA4E;IAC5E,2HAA2H;IAC3H,kIAAkI;IAClI,8GAA8G;CAC/G,CAAC;AAEF;;sBAEsB;AACtB,MAAM,iBAAiB,GAAa;IAClC,4KAA4K;IAC5K,sNAAsN;IACtN,kHAAkH;IAClH,oGAAoG;IACpG,gPAAgP;IAChP,qHAAqH;CACtH,CAAC;AAEF;;mEAEmE;AACnE,MAAM,cAAc,GAAa;IAC/B,gDAAgD,EAAK,+BAA+B;IACpF,mCAAmC;IACnC,KAAK,EAAkD,uCAAuC;CAC/F,CAAC;AAEF;;+DAE+D;AAC/D,MAAM,gBAAgB,GAAa;IACjC,gGAAgG;CACjG,CAAC;AAqBF,MAAM,UAAU,4BAA4B,CAC1C,UAAkB,EAClB,iBAAyB;IAEzB,MAAM,IAAI,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;IACjH,CAAC;IACD,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,cAAc,GAAG,EAAE,CAAC;IACxB,KAAK,MAAM,EAAE,IAAI,gBAAgB,EAAE,CAAC;QAClC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,EAAE,CAAC;YAAC,UAAU,GAAG,IAAI,CAAC;YAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAAC,MAAM;QAAC,CAAC;IAC3E,CAAC;IACD,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACnE,IAAI,iBAAiB,GAAG,CAAC,EAAE,CAAC;QAC1B,mEAAmE;QACnE,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;IACxF,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;IACxF,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,iBAAiB,EAAE,CAAC;QACnC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,EAAE,CAAC;YACN,OAAO;gBACL,eAAe,EAAE,IAAI;gBACrB,cAAc,EAAE,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;gBACpD,UAAU;gBACV,SAAS;gBACT,WAAW;aACZ,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;AACxF,CAAC"}
1
+ {"version":3,"file":"completion_hallucination_detector.js","sourceRoot":"","sources":["../../src/chat/completion_hallucination_detector.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"doctrine_digest.d.ts","sourceRoot":"","sources":["../../src/chat/doctrine_digest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,WAAW,mBAAmB;IAClC,sDAAsD;IACtD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,eAAe,EAAE,mBAAmB,EA6EhD,CAAC;AAEF,6DAA6D;AAC7D,wBAAgB,WAAW,IAAI,MAAM,EAAE,CAEtC;AAED;uEACuE;AACvE,wBAAgB,wBAAwB,IAAI,MAAM,EAAE,CAenD"}
1
+ {"version":3,"file":"doctrine_digest.d.ts","sourceRoot":"","sources":["../../src/chat/doctrine_digest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,WAAW,mBAAmB;IAClC,sDAAsD;IACtD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,eAAe,EAAE,mBAAmB,EAiFhD,CAAC;AAEF,6DAA6D;AAC7D,wBAAgB,WAAW,IAAI,MAAM,EAAE,CAEtC;AAED;uEACuE;AACvE,wBAAgB,wBAAwB,IAAI,MAAM,EAAE,CAenD"}