@askexenow/exe-os 0.9.331 → 0.9.332

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 (167) hide show
  1. package/dist/{backfill-metadata-AVWHS332.js → backfill-metadata-FDQVVGRQ.js} +1 -1
  2. package/dist/{behaviors-ZV6HNI2M.js → behaviors-SAS6JALZ.js} +2 -2
  3. package/dist/bin/agentic-ontology-backfill.js +1 -1
  4. package/dist/bin/agentic-reflection-backfill.js +1 -1
  5. package/dist/bin/agentic-semantic-label.js +1 -1
  6. package/dist/bin/backfill-conversations.js +1 -1
  7. package/dist/bin/backfill-responses.js +1 -1
  8. package/dist/bin/backfill-vectors.js +2 -2
  9. package/dist/bin/bulk-sync-postgres.js +3 -3
  10. package/dist/bin/cleanup-stale-review-tasks.js +3 -3
  11. package/dist/bin/cli.js +6 -6
  12. package/dist/bin/deferred-daemon-restart.js +33 -33
  13. package/dist/bin/exe-assign.js +1 -1
  14. package/dist/bin/exe-boot.js +7 -7
  15. package/dist/bin/exe-cloud.js +3 -3
  16. package/dist/bin/exe-dispatch.js +3 -3
  17. package/dist/bin/exe-doctor.js +1 -1
  18. package/dist/bin/exe-export-behaviors.js +4 -4
  19. package/dist/bin/exe-forget.js +3 -3
  20. package/dist/bin/exe-gateway.js +5 -5
  21. package/dist/bin/exe-heartbeat.js +3 -3
  22. package/dist/bin/exe-kill.js +5 -5
  23. package/dist/bin/exe-launch-agent.js +6 -6
  24. package/dist/bin/exe-pending-messages.js +4 -4
  25. package/dist/bin/exe-pending-notifications.js +3 -3
  26. package/dist/bin/exe-pending-reviews.js +3 -3
  27. package/dist/bin/exe-review.js +4 -4
  28. package/dist/bin/exe-search.js +2 -2
  29. package/dist/bin/exe-session-cleanup.js +5 -5
  30. package/dist/bin/exe-settings.js +3 -3
  31. package/dist/bin/exe-start-codex.js +3 -3
  32. package/dist/bin/exe-start-opencode.js +3 -3
  33. package/dist/bin/exe-status.js +4 -4
  34. package/dist/bin/exe-team.js +1 -1
  35. package/dist/bin/git-sweep.js +3 -3
  36. package/dist/bin/graph-backfill.js +1 -1
  37. package/dist/bin/graph-export.js +2 -2
  38. package/dist/bin/import-history.js +2 -2
  39. package/dist/bin/install.js +33 -33
  40. package/dist/bin/intercom-check.js +4 -4
  41. package/dist/bin/mcp-sessions.js +2 -2
  42. package/dist/bin/orchestration-metrics.js +1 -1
  43. package/dist/bin/scan-tasks.js +3 -3
  44. package/dist/bin/setup.js +1 -1
  45. package/dist/bin/shard-migrate.js +1 -1
  46. package/dist/{capacity-monitor-VNAUNTTH.js → capacity-monitor-I6TX3OZA.js} +4 -4
  47. package/dist/{catchup-brief-5ELWS6IF.js → catchup-brief-RAZTRECT.js} +4 -4
  48. package/dist/{chunk-LKB2VIIV.js → chunk-267TDVN7.js} +1 -1
  49. package/dist/{chunk-7RDZDCWY.js → chunk-2ES3ACCO.js} +4 -4
  50. package/dist/{chunk-ZSMF37M6.js → chunk-3KAYKHVB.js} +64 -4
  51. package/dist/{chunk-UJRZD77V.js → chunk-3PHTJIC3.js} +1 -1
  52. package/dist/{chunk-QAYGX7KA.js → chunk-4X3VWI22.js} +1 -1
  53. package/dist/{chunk-GTCJU2RF.js → chunk-5CZ2ZH6L.js} +1 -1
  54. package/dist/{chunk-5JILQMRS.js → chunk-6AY7VXSF.js} +6 -6
  55. package/dist/{chunk-UX5YA6ZY.js → chunk-7YTO3LHB.js} +2 -2
  56. package/dist/{chunk-RY7UV6CU.js → chunk-B3ZUS3UU.js} +1 -1
  57. package/dist/{chunk-CPXFQBBN.js → chunk-BST5NSJC.js} +1 -1
  58. package/dist/{chunk-CERY66PJ.js → chunk-EC4O5ITE.js} +1 -1
  59. package/dist/{chunk-DSL5D3TH.js → chunk-FZQBWOIB.js} +2 -2
  60. package/dist/{chunk-W7F3ZBHH.js → chunk-HG7ZX2UT.js} +47 -47
  61. package/dist/{chunk-YL5S6I3R.js → chunk-HRUI3Q42.js} +2 -2
  62. package/dist/{chunk-CASOKILE.js → chunk-IVN7UUKK.js} +6 -6
  63. package/dist/{chunk-JCBQQIUV.js → chunk-J53PHGGC.js} +1 -1
  64. package/dist/{chunk-BGCJZQGQ.js → chunk-JRRNRSZC.js} +1 -1
  65. package/dist/{chunk-GSFGVYCG.js → chunk-JRTJKLON.js} +2 -2
  66. package/dist/{chunk-D5SZ3U5L.js → chunk-KNLQAVLI.js} +37 -6
  67. package/dist/{chunk-MTX3FQRR.js → chunk-L6CLX2QF.js} +1 -1
  68. package/dist/{chunk-MNLSPTWM.js → chunk-LB5B4NJ6.js} +1 -1
  69. package/dist/{chunk-4NGPNH3F.js → chunk-M6E76DMO.js} +1 -1
  70. package/dist/{chunk-O6RMSGXQ.js → chunk-MPUIO6GF.js} +1 -1
  71. package/dist/{chunk-IJYBKQDJ.js → chunk-N2J6FWMQ.js} +2 -2
  72. package/dist/{chunk-XDJEPGMF.js → chunk-NUPU7TRA.js} +1 -1
  73. package/dist/{chunk-N5ACQ7C2.js → chunk-OEA44GCC.js} +1 -1
  74. package/dist/{chunk-KKZPF6YI.js → chunk-OIMQGA62.js} +1 -1
  75. package/dist/{chunk-QXXG2MCZ.js → chunk-OXZHAERM.js} +29 -3
  76. package/dist/{chunk-OV7OFYIR.js → chunk-QGVXUTHX.js} +1 -1
  77. package/dist/{chunk-KCHIJUYX.js → chunk-QUZ4VK3R.js} +1 -1
  78. package/dist/{chunk-OLQYIAOQ.js → chunk-RGBABIFH.js} +3 -3
  79. package/dist/{chunk-MTHQR76V.js → chunk-T5JJBIUB.js} +4 -4
  80. package/dist/{chunk-DDA7IAWM.js → chunk-TK7ZDWU3.js} +2 -2
  81. package/dist/{chunk-QOMCLPQI.js → chunk-TQM7RGOB.js} +2 -2
  82. package/dist/{chunk-MZ2MBZ3E.js → chunk-YDUS2DFZ.js} +1 -1
  83. package/dist/{chunk-ZWWHEX3Y.js → chunk-YFYUNROP.js} +1 -1
  84. package/dist/{chunk-EQCYEYCJ.js → chunk-ZJSH3L6R.js} +1 -1
  85. package/dist/{cleanup-graph-garbage-FD34BPLR.js → cleanup-graph-garbage-6QGLERF2.js} +1 -1
  86. package/dist/{crm-webhook-6YDLPLVH.js → crm-webhook-DHFRIRLN.js} +2 -2
  87. package/dist/{cto-delegation-gate-JMO6VVTO.js → cto-delegation-gate-Z7UVTVYO.js} +2 -2
  88. package/dist/{daemon-orchestration-U5HW7YT5.js → daemon-orchestration-XWDFUFJG.js} +6 -6
  89. package/dist/{documents-TXMACEEP.js → documents-OMKCMWR7.js} +2 -2
  90. package/dist/{dreaming-KJ4P52EC.js → dreaming-SDFWY5FY.js} +3 -3
  91. package/dist/{exe-export-PH23G3F7.js → exe-export-BY6IFTEP.js} +3 -3
  92. package/dist/{exe-import-QCAFH4AM.js → exe-import-55UKB2X7.js} +3 -3
  93. package/dist/{exe-key-MGEOBRCI.js → exe-key-F3BM5GEW.js} +33 -33
  94. package/dist/{exe-snapshot-DDSSZ377.js → exe-snapshot-RGIJJ2ZX.js} +5 -5
  95. package/dist/{fast-db-init-6KBEZK66.js → fast-db-init-OZDG42SZ.js} +1 -1
  96. package/dist/gateway/index.js +6 -6
  97. package/dist/hooks/bug-report-worker.js +5 -5
  98. package/dist/hooks/codex-stop-task-finalizer.js +5 -5
  99. package/dist/hooks/commit-complete.js +5 -5
  100. package/dist/hooks/error-recall.js +7 -4
  101. package/dist/hooks/ingest.js +2 -2
  102. package/dist/hooks/instructions-loaded.js +1 -1
  103. package/dist/hooks/manifest.json +18 -18
  104. package/dist/hooks/notification.js +1 -1
  105. package/dist/hooks/post-compact.js +3 -3
  106. package/dist/hooks/post-tool-combined.js +2 -2
  107. package/dist/hooks/pre-compact.js +4 -4
  108. package/dist/hooks/pre-tool-use.js +7 -7
  109. package/dist/hooks/prompt-submit.js +16 -16
  110. package/dist/hooks/session-end.js +6 -6
  111. package/dist/hooks/session-start.js +6 -6
  112. package/dist/hooks/stop.js +6 -6
  113. package/dist/hooks/subagent-stop.js +3 -3
  114. package/dist/hooks/summary-worker.js +6 -6
  115. package/dist/index.js +10 -10
  116. package/dist/{intercom-queue-4A7XH72M.js → intercom-queue-JFBMDV6J.js} +2 -2
  117. package/dist/lib/cloud-sync.js +3 -3
  118. package/dist/lib/consolidation.js +2 -2
  119. package/dist/lib/exe-daemon.js +28 -28
  120. package/dist/lib/hybrid-search.js +2 -2
  121. package/dist/lib/messaging.js +3 -3
  122. package/dist/lib/schedules.js +2 -2
  123. package/dist/lib/skill-learning.js +3 -3
  124. package/dist/lib/store.js +1 -1
  125. package/dist/lib/tasks.js +4 -4
  126. package/dist/lib/tmux-routing.js +2 -2
  127. package/dist/mcp/register-tools.js +32 -32
  128. package/dist/mcp/server.js +33 -33
  129. package/dist/mcp/tools/create-task.js +5 -5
  130. package/dist/mcp/tools/deactivate-behavior.js +3 -3
  131. package/dist/mcp/tools/list-tasks.js +5 -5
  132. package/dist/mcp/tools/send-message.js +4 -4
  133. package/dist/mcp/tools/update-task.js +5 -5
  134. package/dist/{memory-cards-7Z66A6AF.js → memory-cards-7YIZUWSJ.js} +1 -1
  135. package/dist/{memory-pressure-watchdog-Z25XTMNY.js → memory-pressure-watchdog-MZWX4YIA.js} +3 -3
  136. package/dist/{notifications-3MIUQXX6.js → notifications-42Z4ZRNV.js} +2 -2
  137. package/dist/{orchestrator-IKRGCGWD.js → orchestrator-ALAA4P6M.js} +3 -3
  138. package/dist/{pipeline-router-BNKNM454.js → pipeline-router-F226AZRB.js} +1 -1
  139. package/dist/{projection-worker-RIOEZPKQ.js → projection-worker-UL2HHHPO.js} +1 -1
  140. package/dist/{reranker-WHMDMYZP.js → reranker-G24KWZKH.js} +1 -1
  141. package/dist/{review-polling-FDHBFWSY.js → review-polling-REHBTRU6.js} +3 -3
  142. package/dist/runtime/index.js +4 -4
  143. package/dist/{session-events-GM2OUFON.js → session-events-F3DPBY4P.js} +3 -3
  144. package/dist/{session-kill-telemetry-XN6LYPWA.js → session-kill-telemetry-USNB6ND7.js} +3 -3
  145. package/dist/{session-scope-3OGEPOW7.js → session-scope-CJQE4LVB.js} +2 -2
  146. package/dist/{setup-wizard-ISCAH4EV.js → setup-wizard-S6XYW2WH.js} +1 -1
  147. package/dist/{skill-refinement-X4HZANPI.js → skill-refinement-XXYCXA2U.js} +1 -1
  148. package/dist/{task-enforcement-7GXGH6DB.js → task-enforcement-ZKB2VZ6W.js} +3 -3
  149. package/dist/{task-scope-J3OMPV5A.js → task-scope-CATQQNVX.js} +2 -2
  150. package/dist/{tasks-crud-NGMRLJH5.js → tasks-crud-RDWLWYWV.js} +2 -2
  151. package/dist/{tasks-notify-4OZXON6S.js → tasks-notify-CKT5A6WK.js} +3 -3
  152. package/dist/{tasks-review-U5QEKLNP.js → tasks-review-UXWXJ6H3.js} +2 -2
  153. package/dist/{telemetry-upload-QCM44FAE.js → telemetry-upload-UUJULBSV.js} +1 -1
  154. package/dist/tui/App.js +19 -19
  155. package/dist/{tui-data-YPS2SMWF.js → tui-data-7SQLIY2O.js} +2 -2
  156. package/dist/{worker-gate-M6OGQF7H.js → worker-gate-2O27EXUE.js} +1 -1
  157. package/dist/{workflow-engine-OVVJRMD2.js → workflow-engine-QGSEQV2Z.js} +2 -2
  158. package/package.json +1 -1
  159. package/release-notes.json +4 -3
  160. /package/dist/{chunk-ME3WDWL6.js → chunk-26GM62C3.js} +0 -0
  161. /package/dist/{chunk-TOEQZTYB.js → chunk-3HIYBZ62.js} +0 -0
  162. /package/dist/{chunk-BPH6YPHA.js → chunk-BAXNI3A5.js} +0 -0
  163. /package/dist/{chunk-VV422PGC.js → chunk-CDVA67B2.js} +0 -0
  164. /package/dist/{chunk-NPAGBSEN.js → chunk-G3UK4TTT.js} +0 -0
  165. /package/dist/{chunk-N4G4M6LE.js → chunk-VYLDGF4D.js} +0 -0
  166. /package/dist/{chunk-YOOK5NOZ.js → chunk-YWIOFMHL.js} +0 -0
  167. /package/dist/{core-memory-YHACNEAS.js → core-memory-KMBRE2HU.js} +0 -0
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-75H4R62K.js";
4
4
  import {
5
5
  initStore
6
- } from "./chunk-KKZPF6YI.js";
6
+ } from "./chunk-OIMQGA62.js";
7
7
  import {
8
8
  getClient,
9
9
  isInitialized
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  executeAction,
3
3
  substituteTemplate
4
- } from "./chunk-N4G4M6LE.js";
4
+ } from "./chunk-VYLDGF4D.js";
5
5
 
6
6
  // src/automation/workflow-engine.ts
7
7
  import { randomUUID } from "crypto";
@@ -2,7 +2,7 @@ import {
2
2
  dispatchTaskToEmployee,
3
3
  markTaskNotificationsRead,
4
4
  notifyTaskDone
5
- } from "./chunk-YL5S6I3R.js";
5
+ } from "./chunk-HRUI3Q42.js";
6
6
  import {
7
7
  cleanupReviewFile,
8
8
  createTaskCore,
@@ -11,7 +11,7 @@ import {
11
11
  sessionScopeFilter,
12
12
  updateTaskStatus,
13
13
  writeNotification
14
- } from "./chunk-ZSMF37M6.js";
14
+ } from "./chunk-3KAYKHVB.js";
15
15
  import {
16
16
  orgBus
17
17
  } from "./chunk-MP2AFCGL.js";
@@ -61,7 +61,7 @@ async function cascadeUnblock(taskId, baseDir, now) {
61
61
  }
62
62
  if (unblockedRows.rows.length > 0 && !process.env.VITEST) {
63
63
  try {
64
- const { dispatchTaskToEmployee: dispatchTaskToEmployee2 } = await import("./tasks-notify-4OZXON6S.js");
64
+ const { dispatchTaskToEmployee: dispatchTaskToEmployee2 } = await import("./tasks-notify-CKT5A6WK.js");
65
65
  const dispatched = /* @__PURE__ */ new Set();
66
66
  for (const ur of unblockedRows.rows) {
67
67
  const assignee = String(ur.assigned_to);
@@ -86,7 +86,7 @@ async function cascadeUnblock(taskId, baseDir, now) {
86
86
  }
87
87
  } catch {
88
88
  try {
89
- const { queueIntercom } = await import("./intercom-queue-4A7XH72M.js");
89
+ const { queueIntercom } = await import("./intercom-queue-JFBMDV6J.js");
90
90
  const dispatched = /* @__PURE__ */ new Set();
91
91
  for (const ur of unblockedRows.rows) {
92
92
  const assignee = String(ur.assigned_to);
@@ -289,7 +289,7 @@ async function updateTask(input) {
289
289
  try {
290
290
  process.stderr.write(`[tasks] EVENT: tmux delivery failed for reviewer="${reviewer}". Queueing for daemon delivery.
291
291
  `);
292
- const { queueIntercom } = await import("./intercom-queue-4A7XH72M.js");
292
+ const { queueIntercom } = await import("./intercom-queue-JFBMDV6J.js");
293
293
  const { resolveExeSession } = await import("./lib/tmux-routing.js");
294
294
  const exeSession = row.session_scope ? String(row.session_scope) : resolveExeSession();
295
295
  if (exeSession) {
@@ -333,7 +333,7 @@ async function updateTask(input) {
333
333
  await markTaskNotificationsRead(taskFile);
334
334
  if (isCompletionReviewTransition && !isCoordinator && row.reviewer) {
335
335
  try {
336
- const { writeNotification: writeNotification2 } = await import("./notifications-3MIUQXX6.js");
336
+ const { writeNotification: writeNotification2 } = await import("./notifications-42Z4ZRNV.js");
337
337
  const reviewer = String(row.reviewer);
338
338
  await writeNotification2({
339
339
  agentId: reviewer,
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  recordSessionKill
3
- } from "./chunk-MNLSPTWM.js";
3
+ } from "./chunk-LB5B4NJ6.js";
4
4
  import {
5
5
  sessionScopeFilter,
6
6
  verifyPaneAtCapacity,
7
7
  writeNotification
8
- } from "./chunk-ZSMF37M6.js";
8
+ } from "./chunk-3KAYKHVB.js";
9
9
  import {
10
10
  listSessions
11
11
  } from "./chunk-3HMHSTHQ.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getCurrentSessionScope,
3
3
  strictSessionScopeFilter
4
- } from "./chunk-ZSMF37M6.js";
4
+ } from "./chunk-3KAYKHVB.js";
5
5
  import {
6
6
  getProjectName
7
7
  } from "./chunk-OPU3NYOO.js";
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  reserveVersions,
6
6
  vectorToBlob
7
- } from "./chunk-KKZPF6YI.js";
7
+ } from "./chunk-OIMQGA62.js";
8
8
  import {
9
9
  getClient
10
10
  } from "./chunk-BIM763ML.js";
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-VGMACSEV.js";
8
8
  import {
9
9
  vectorToBlob
10
- } from "./chunk-KKZPF6YI.js";
10
+ } from "./chunk-OIMQGA62.js";
11
11
  import {
12
12
  extractKeywords,
13
13
  keywordsToString
@@ -2,10 +2,10 @@ import {
2
2
  listWorkflowDefinitions,
3
3
  runWorkflow,
4
4
  startWorkflow
5
- } from "./chunk-GTCJU2RF.js";
5
+ } from "./chunk-5CZ2ZH6L.js";
6
6
  import {
7
7
  ingest
8
- } from "./chunk-ME3WDWL6.js";
8
+ } from "./chunk-26GM62C3.js";
9
9
  import {
10
10
  initCRMBridge
11
11
  } from "./chunk-ML4S5SHZ.js";
@@ -2,7 +2,7 @@ import {
2
2
  exportOrchestration,
3
3
  importOrchestration,
4
4
  validatePackage
5
- } from "./chunk-JCBQQIUV.js";
5
+ } from "./chunk-J53PHGGC.js";
6
6
  import {
7
7
  runDriftProbes
8
8
  } from "./chunk-QQCZLNUC.js";
@@ -14,7 +14,7 @@ import {
14
14
  ingestDocument,
15
15
  listDocumentsByWorkspace,
16
16
  updateChunksImportance
17
- } from "./chunk-CPXFQBBN.js";
17
+ } from "./chunk-BST5NSJC.js";
18
18
  import {
19
19
  analyzeBlastRadius,
20
20
  buildCodeContextIndex,
@@ -29,11 +29,11 @@ import {
29
29
  } from "./chunk-ORU5LDIT.js";
30
30
  import {
31
31
  DreamingEngine
32
- } from "./chunk-O6RMSGXQ.js";
32
+ } from "./chunk-MPUIO6GF.js";
33
33
  import {
34
34
  isRerankerAvailable,
35
35
  rerankWithScores
36
- } from "./chunk-TOEQZTYB.js";
36
+ } from "./chunk-3HIYBZ62.js";
37
37
  import {
38
38
  getEntityByName,
39
39
  getEntityNeighbors,
@@ -44,10 +44,10 @@ import {
44
44
  } from "./chunk-CRCB5S7I.js";
45
45
  import {
46
46
  AUTO_WAKE_MAX_RETRIES
47
- } from "./chunk-MTHQR76V.js";
47
+ } from "./chunk-T5JJBIUB.js";
48
48
  import {
49
49
  listRecentSessionEvents
50
- } from "./chunk-RY7UV6CU.js";
50
+ } from "./chunk-B3ZUS3UU.js";
51
51
  import {
52
52
  DEFAULT_EXPLORE_DURATION_MS,
53
53
  getPlayMode,
@@ -74,10 +74,10 @@ import {
74
74
  } from "./chunk-32SXNM3G.js";
75
75
  import {
76
76
  createOrRefreshResumeTask
77
- } from "./chunk-UX5YA6ZY.js";
77
+ } from "./chunk-7YTO3LHB.js";
78
78
  import {
79
79
  registerUpdateTask
80
- } from "./chunk-D5SZ3U5L.js";
80
+ } from "./chunk-KNLQAVLI.js";
81
81
  import {
82
82
  registerCreateReminder
83
83
  } from "./chunk-XWH7QGCU.js";
@@ -89,7 +89,7 @@ import {
89
89
  } from "./chunk-5EP4TCZ2.js";
90
90
  import {
91
91
  registerDeactivateBehavior
92
- } from "./chunk-ZWWHEX3Y.js";
92
+ } from "./chunk-YFYUNROP.js";
93
93
  import {
94
94
  completeReminder,
95
95
  createReminder,
@@ -97,28 +97,28 @@ import {
97
97
  } from "./chunk-IJTCNN5I.js";
98
98
  import {
99
99
  registerSendMessage
100
- } from "./chunk-UJRZD77V.js";
100
+ } from "./chunk-3PHTJIC3.js";
101
101
  import {
102
102
  registerCreateTask
103
- } from "./chunk-OLQYIAOQ.js";
103
+ } from "./chunk-RGBABIFH.js";
104
104
  import {
105
105
  registerListTasks
106
- } from "./chunk-QXXG2MCZ.js";
106
+ } from "./chunk-OXZHAERM.js";
107
107
  import {
108
108
  TOKENS_PER_IDLE_MINUTE,
109
109
  countKillsSince,
110
110
  sumTokensSavedSince
111
- } from "./chunk-MNLSPTWM.js";
111
+ } from "./chunk-LB5B4NJ6.js";
112
112
  import {
113
113
  registerImportConversations
114
- } from "./chunk-MTX3FQRR.js";
114
+ } from "./chunk-L6CLX2QF.js";
115
115
  import {
116
116
  createSchedule,
117
117
  parseHumanCron
118
- } from "./chunk-QAYGX7KA.js";
118
+ } from "./chunk-4X3VWI22.js";
119
119
  import {
120
120
  status
121
- } from "./chunk-DDA7IAWM.js";
121
+ } from "./chunk-TK7ZDWU3.js";
122
122
  import {
123
123
  evaluateGlobalSpendCap,
124
124
  getAgentSpend
@@ -141,7 +141,7 @@ import {
141
141
  formatReport,
142
142
  runAudit,
143
143
  shouldFixShards
144
- } from "./chunk-IJYBKQDJ.js";
144
+ } from "./chunk-N2J6FWMQ.js";
145
145
  import {
146
146
  formatDegradations,
147
147
  getRetrievalHealth
@@ -175,14 +175,14 @@ import {
175
175
  cloudSync,
176
176
  getCloudReuploadRequired,
177
177
  markCloudReuploadRequired
178
- } from "./chunk-LKB2VIIV.js";
178
+ } from "./chunk-267TDVN7.js";
179
179
  import {
180
180
  createARecord
181
181
  } from "./chunk-X2Z5GT3V.js";
182
182
  import {
183
183
  findSimilarTrajectories,
184
184
  hashSignature
185
- } from "./chunk-EQCYEYCJ.js";
185
+ } from "./chunk-ZJSH3L6R.js";
186
186
  import {
187
187
  GHOST_BEHAVIOR_SQL,
188
188
  deactivateBehavior,
@@ -191,13 +191,13 @@ import {
191
191
  reactivateBehavior,
192
192
  storeBehavior,
193
193
  storeReflexBehavior
194
- } from "./chunk-KCHIJUYX.js";
194
+ } from "./chunk-QUZ4VK3R.js";
195
195
  import {
196
196
  countUnconsolidated,
197
197
  groupMemories,
198
198
  runConsolidation,
199
199
  selectUnconsolidated
200
- } from "./chunk-CERY66PJ.js";
200
+ } from "./chunk-EC4O5ITE.js";
201
201
  import {
202
202
  entityId,
203
203
  mergeEntities
@@ -214,17 +214,17 @@ import {
214
214
  } from "./chunk-5RACW3LX.js";
215
215
  import {
216
216
  updateTask
217
- } from "./chunk-5JILQMRS.js";
217
+ } from "./chunk-6AY7VXSF.js";
218
218
  import {
219
219
  fastDbInit
220
- } from "./chunk-NPAGBSEN.js";
220
+ } from "./chunk-G3UK4TTT.js";
221
221
  import {
222
222
  MAX_CONCURRENT_WORKERS
223
- } from "./chunk-MZ2MBZ3E.js";
223
+ } from "./chunk-YDUS2DFZ.js";
224
224
  import {
225
225
  hybridSearch,
226
226
  recentRecords
227
- } from "./chunk-CASOKILE.js";
227
+ } from "./chunk-IVN7UUKK.js";
228
228
  import {
229
229
  buildFtsMatch,
230
230
  tokenizeForFts
@@ -234,7 +234,7 @@ import {
234
234
  flushBatch,
235
235
  initStore,
236
236
  writeMemory
237
- } from "./chunk-KKZPF6YI.js";
237
+ } from "./chunk-OIMQGA62.js";
238
238
  import {
239
239
  getActiveAgent
240
240
  } from "./chunk-EOYVD5U3.js";
@@ -246,7 +246,7 @@ import {
246
246
  sessionScopeFilter,
247
247
  updateTaskStatus,
248
248
  writeCheckpoint
249
- } from "./chunk-ZSMF37M6.js";
249
+ } from "./chunk-3KAYKHVB.js";
250
250
  import {
251
251
  listSessions
252
252
  } from "./chunk-3HMHSTHQ.js";
@@ -288,7 +288,7 @@ import {
288
288
  isScheduledTrigger,
289
289
  loadTriggers,
290
290
  sanitizeParam
291
- } from "./chunk-N4G4M6LE.js";
291
+ } from "./chunk-VYLDGF4D.js";
292
292
  import {
293
293
  pushConversationToCRM
294
294
  } from "./chunk-ML4S5SHZ.js";
@@ -515,7 +515,7 @@ function registerRecallMyMemory(server) {
515
515
  }) => {
516
516
  try {
517
517
  if (!isInitialized()) {
518
- const { fastDbInit: fastDbInit2 } = await import("./fast-db-init-6KBEZK66.js");
518
+ const { fastDbInit: fastDbInit2 } = await import("./fast-db-init-OZDG42SZ.js");
519
519
  await fastDbInit2();
520
520
  }
521
521
  if (!recent && !query) {
@@ -1962,7 +1962,7 @@ function registerMemory(server) {
1962
1962
  if (action === "core_get" || action === "core_set" || action === "core_delete") {
1963
1963
  const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-AIK6FSYE.js");
1964
1964
  const { agentId } = getActiveAgent2();
1965
- const { getCoreMemory, setCoreMemory, deleteCoreMemory, formatCoreMemoryBlock } = await import("./core-memory-YHACNEAS.js");
1965
+ const { getCoreMemory, setCoreMemory, deleteCoreMemory, formatCoreMemoryBlock } = await import("./core-memory-KMBRE2HU.js");
1966
1966
  if (action === "core_get") {
1967
1967
  const entries = await getCoreMemory(agentId);
1968
1968
  const block = formatCoreMemoryBlock(entries);
@@ -2014,7 +2014,7 @@ function registerMemory(server) {
2014
2014
  if (!storeTrigger || !storeTriggerAction) {
2015
2015
  return errorResult('memory action "store" with kind="reflex" requires trigger and trigger_action fields');
2016
2016
  }
2017
- const { formatReflexContent, storeReflexBehavior: storeReflexBehavior2 } = await import("./behaviors-ZV6HNI2M.js");
2017
+ const { formatReflexContent, storeReflexBehavior: storeReflexBehavior2 } = await import("./behaviors-SAS6JALZ.js");
2018
2018
  const reflexText = formatReflexContent(storeTrigger, storeTriggerAction);
2019
2019
  legacyArgs.text ??= reflexText;
2020
2020
  legacyArgs.query ??= reflexText;
@@ -2710,7 +2710,7 @@ function registerResumeEmployee(server) {
2710
2710
  },
2711
2711
  async ({ agent_id, project_name }) => {
2712
2712
  if (!isInitialized()) {
2713
- const { fastDbInit: fastDbInit2 } = await import("./fast-db-init-6KBEZK66.js");
2713
+ const { fastDbInit: fastDbInit2 } = await import("./fast-db-init-OZDG42SZ.js");
2714
2714
  await fastDbInit2();
2715
2715
  }
2716
2716
  const client = getClient();
@@ -2736,7 +2736,7 @@ function registerResumeEmployee(server) {
2736
2736
  };
2737
2737
  }
2738
2738
  try {
2739
- const { isTmuxSessionAlive } = await import("./tasks-crud-NGMRLJH5.js");
2739
+ const { isTmuxSessionAlive } = await import("./tasks-crud-RDWLWYWV.js");
2740
2740
  const now = (/* @__PURE__ */ new Date()).toISOString();
2741
2741
  for (const row of openTasks.rows) {
2742
2742
  const status2 = String(row.status);
@@ -2764,7 +2764,7 @@ function registerResumeEmployee(server) {
2764
2764
  }
2765
2765
  let checkpointInfo = "";
2766
2766
  try {
2767
- const { readLatestCheckpoint } = await import("./tasks-crud-NGMRLJH5.js");
2767
+ const { readLatestCheckpoint } = await import("./tasks-crud-RDWLWYWV.js");
2768
2768
  const checkpoint = await readLatestCheckpoint(agent_id);
2769
2769
  if (checkpoint) {
2770
2770
  const filesTouched = checkpoint.files_touched?.length > 0 ? checkpoint.files_touched.join(", ") : "none";
@@ -3180,7 +3180,7 @@ function registerTask(server) {
3180
3180
  const missing2 = missingRequiredFields2(args, REQUIRED_FIELDS2.create_group);
3181
3181
  if (missing2.length > 0) return errorResult2(`task action "create_group" missing required field(s): ${missing2.join(", ")}`);
3182
3182
  try {
3183
- const { createTaskGroup } = await import("./tasks-crud-NGMRLJH5.js");
3183
+ const { createTaskGroup } = await import("./tasks-crud-RDWLWYWV.js");
3184
3184
  const group = await createTaskGroup({
3185
3185
  title: args.title,
3186
3186
  coordinator: args.coordinator,
@@ -3199,7 +3199,7 @@ function registerTask(server) {
3199
3199
  const missing2 = missingRequiredFields2(args, REQUIRED_FIELDS2.group_status);
3200
3200
  if (missing2.length > 0) return errorResult2(`task action "group_status" missing required field(s): ${missing2.join(", ")}`);
3201
3201
  try {
3202
- const { getGroupStatus } = await import("./tasks-crud-NGMRLJH5.js");
3202
+ const { getGroupStatus } = await import("./tasks-crud-RDWLWYWV.js");
3203
3203
  const status2 = await getGroupStatus(args.group_id);
3204
3204
  return { content: [{ type: "text", text: JSON.stringify(status2, null, 2) }] };
3205
3205
  } catch (err) {
@@ -3211,7 +3211,7 @@ function registerTask(server) {
3211
3211
  const missing2 = missingRequiredFields2(args, REQUIRED_FIELDS2.group_results);
3212
3212
  if (missing2.length > 0) return errorResult2(`task action "group_results" missing required field(s): ${missing2.join(", ")}`);
3213
3213
  try {
3214
- const { getGroupResults } = await import("./tasks-crud-NGMRLJH5.js");
3214
+ const { getGroupResults } = await import("./tasks-crud-RDWLWYWV.js");
3215
3215
  const results = await getGroupResults(args.group_id);
3216
3216
  return { content: [{ type: "text", text: JSON.stringify(results, null, 2) }] };
3217
3217
  } catch (err) {
@@ -4102,7 +4102,7 @@ function registerDocument(server) {
4102
4102
  const { action: _action, ...legacyArgs } = input;
4103
4103
  if (action === "list" && (legacyArgs.workspace_id === void 0 || legacyArgs.workspace_id === null || legacyArgs.workspace_id === "")) {
4104
4104
  try {
4105
- const { resolveDefaultWorkspaceId, listWorkspaces } = await import("./documents-TXMACEEP.js");
4105
+ const { resolveDefaultWorkspaceId, listWorkspaces } = await import("./documents-OMKCMWR7.js");
4106
4106
  const defaultId = await resolveDefaultWorkspaceId();
4107
4107
  if (defaultId) {
4108
4108
  legacyArgs.workspace_id = defaultId;
@@ -5129,7 +5129,7 @@ async function handleTrigger(limit) {
5129
5129
  if (rows.rows.length === 0) {
5130
5130
  return text3("No conversations found to re-process.");
5131
5131
  }
5132
- const { ingest } = await import("./pipeline-router-BNKNM454.js");
5132
+ const { ingest } = await import("./pipeline-router-F226AZRB.js");
5133
5133
  const results = [];
5134
5134
  for (const row of rows.rows) {
5135
5135
  const r = row;
@@ -5996,7 +5996,7 @@ async function handleCleanupGarbage(args) {
5996
5996
  const doMerge = !garbageOnly;
5997
5997
  let mod;
5998
5998
  try {
5999
- mod = await import("./cleanup-graph-garbage-FD34BPLR.js");
5999
+ mod = await import("./cleanup-graph-garbage-6QGLERF2.js");
6000
6000
  } catch (err) {
6001
6001
  return errorResult7(`cleanup_garbage: failed to load cleanup module \u2014 ${err instanceof Error ? err.message : String(err)}`);
6002
6002
  }
@@ -6876,7 +6876,7 @@ async function getAgentSessionLoad() {
6876
6876
  return { sessions: [], totalLive: 0, busySessions: 0, idleSessions: 0 };
6877
6877
  }
6878
6878
  const { getClient: getClient2 } = await import("./lib/database.js");
6879
- const { sessionScopeFilter: sessionScopeFilter2 } = await import("./task-scope-J3OMPV5A.js");
6879
+ const { sessionScopeFilter: sessionScopeFilter2 } = await import("./task-scope-CATQQNVX.js");
6880
6880
  const client = getClient2();
6881
6881
  const scope = sessionScopeFilter2();
6882
6882
  for (const s of liveAgentSessions) {
@@ -9707,7 +9707,7 @@ function buildHandlers5() {
9707
9707
  }
9708
9708
  async function handleDreaming(action, args) {
9709
9709
  try {
9710
- const { DreamingEngine: DreamingEngine2 } = await import("./dreaming-KJ4P52EC.js");
9710
+ const { DreamingEngine: DreamingEngine2 } = await import("./dreaming-SDFWY5FY.js");
9711
9711
  const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-AIK6FSYE.js");
9712
9712
  const { getClient: getClient2 } = await import("./lib/database.js");
9713
9713
  const agentId = args.agent_id ?? getActiveAgent2().agentId;
@@ -9866,7 +9866,7 @@ function registerConfig(server) {
9866
9866
  }
9867
9867
  if (action === "closeout") {
9868
9868
  try {
9869
- const { DreamingEngine: DreamingEngine2 } = await import("./dreaming-KJ4P52EC.js");
9869
+ const { DreamingEngine: DreamingEngine2 } = await import("./dreaming-SDFWY5FY.js");
9870
9870
  const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-AIK6FSYE.js");
9871
9871
  const { writeMemory: writeMemory2, flushBatch: flushBatch2 } = await import("./lib/store.js");
9872
9872
  const { randomUUID: randomUUID2 } = await import("crypto");
@@ -10838,7 +10838,7 @@ Use /exe-forget to remove any that this supersedes.`;
10838
10838
  }]
10839
10839
  };
10840
10840
  }
10841
- const { bulkPurgeGhostBehaviors } = await import("./behaviors-ZV6HNI2M.js");
10841
+ const { bulkPurgeGhostBehaviors } = await import("./behaviors-SAS6JALZ.js");
10842
10842
  const res = await bulkPurgeGhostBehaviors({ batchSize: 5e3, vacuum: true });
10843
10843
  return {
10844
10844
  content: [{
@@ -10949,7 +10949,7 @@ Use /exe-forget to remove any that this supersedes.`;
10949
10949
  return { content: [{ type: "text", text: `Behavior not found: ${behavior_id}` }], isError: true };
10950
10950
  }
10951
10951
  const row2 = result4.rows[0];
10952
- const { reactivateBehavior: reactivateBehavior2 } = await import("./behaviors-ZV6HNI2M.js");
10952
+ const { reactivateBehavior: reactivateBehavior2 } = await import("./behaviors-SAS6JALZ.js");
10953
10953
  const wasReactivated = await reactivateBehavior2(behavior_id);
10954
10954
  if (!wasReactivated) {
10955
10955
  return { content: [{ type: "text", text: `Behavior ${behavior_id} is already active.` }] };
@@ -11470,7 +11470,7 @@ function registerWorkflowTool(server) {
11470
11470
  getWorkflowInstance,
11471
11471
  listWorkflowInstances,
11472
11472
  approveWorkflowStep
11473
- } = await import("./workflow-engine-OVVJRMD2.js");
11473
+ } = await import("./workflow-engine-QGSEQV2Z.js");
11474
11474
  try {
11475
11475
  switch (input.action) {
11476
11476
  case "create_workflow": {
@@ -14370,7 +14370,7 @@ async function handleOrchestrationHealth() {
14370
14370
  async function handleWorkMap() {
14371
14371
  try {
14372
14372
  const { getAgentLivenessReport } = await import("./agent-heartbeat-I5UPGXAU.js");
14373
- const { classifyRole } = await import("./session-kill-telemetry-XN6LYPWA.js");
14373
+ const { classifyRole } = await import("./session-kill-telemetry-USNB6ND7.js");
14374
14374
  const { buildSessionDeathSummary } = await import("./orchestration-health-read-EJWVUARG.js");
14375
14375
  const { getPaneCwd } = await import("./lib/tmux-status.js");
14376
14376
  const live = getAgentLivenessReport();
@@ -5,7 +5,7 @@ import {
5
5
  notifyParentExe,
6
6
  resolveExeSession,
7
7
  sendIntercom
8
- } from "./chunk-ZSMF37M6.js";
8
+ } from "./chunk-3KAYKHVB.js";
9
9
  import {
10
10
  getTransport
11
11
  } from "./chunk-RMOBQ6A5.js";
@@ -68,7 +68,7 @@ async function dispatchTaskToEmployee(input) {
68
68
  let crossProject = false;
69
69
  if (input.projectName) {
70
70
  try {
71
- const { assertSessionScope } = await import("./session-scope-3OGEPOW7.js");
71
+ const { assertSessionScope } = await import("./session-scope-CJQE4LVB.js");
72
72
  const check = assertSessionScope("dispatch_task", input.projectName);
73
73
  if (check.reason === "cross_session_denied") {
74
74
  crossProject = true;
@@ -8,7 +8,7 @@ import {
8
8
  buildStatusFilter,
9
9
  buildWikiScopeFilter,
10
10
  searchMemories
11
- } from "./chunk-KKZPF6YI.js";
11
+ } from "./chunk-OIMQGA62.js";
12
12
  import {
13
13
  blobToVector
14
14
  } from "./chunk-OTVEIJUQ.js";
@@ -359,7 +359,7 @@ async function hybridSearch(queryText, agentId, options) {
359
359
  let rerankerAvailable = false;
360
360
  if (process.env.EXE_IS_DAEMON === "1") {
361
361
  try {
362
- const { isRerankerAvailable } = await import("./reranker-WHMDMYZP.js");
362
+ const { isRerankerAvailable } = await import("./reranker-G24KWZKH.js");
363
363
  rerankerAvailable = isRerankerAvailable();
364
364
  } catch {
365
365
  }
@@ -427,7 +427,7 @@ async function hybridSearch(queryText, agentId, options) {
427
427
  ]).catch(() => []),
428
428
  includeStructuredCards ? (async () => {
429
429
  try {
430
- const { searchMemoryCards } = await import("./memory-cards-7Z66A6AF.js");
430
+ const { searchMemoryCards } = await import("./memory-cards-7YIZUWSJ.js");
431
431
  return await searchMemoryCards(effectiveQuery, agentId, fetchOptions);
432
432
  } catch {
433
433
  return [];
@@ -561,7 +561,7 @@ async function hybridSearch(queryText, agentId, options) {
561
561
  try {
562
562
  let rerankedRecords;
563
563
  if (graphContextMap.size > 0) {
564
- const { rerankWithContext } = await import("./reranker-WHMDMYZP.js");
564
+ const { rerankWithContext } = await import("./reranker-G24KWZKH.js");
565
565
  const candidates = merged.map((m) => ({
566
566
  text: m.raw_text,
567
567
  context: graphContextMap.get(m.id)
@@ -569,7 +569,7 @@ async function hybridSearch(queryText, agentId, options) {
569
569
  const scored = await rerankWithContext(effectiveQuery, candidates, rerankReturnLimit);
570
570
  rerankedRecords = scored.map((s) => merged[s.index]);
571
571
  } else {
572
- const { rerank } = await import("./reranker-WHMDMYZP.js");
572
+ const { rerank } = await import("./reranker-G24KWZKH.js");
573
573
  rerankedRecords = await rerank(effectiveQuery, merged, rerankReturnLimit);
574
574
  }
575
575
  if (rerankedRecords.length > 0) {
@@ -939,7 +939,7 @@ async function lightweightSearch(queryText, agentId, options) {
939
939
  }
940
940
  if (options?.includeStructuredCards !== true) return results;
941
941
  try {
942
- const { searchMemoryCards } = await import("./memory-cards-7Z66A6AF.js");
942
+ const { searchMemoryCards } = await import("./memory-cards-7YIZUWSJ.js");
943
943
  const cardResults = await searchMemoryCards(queryText, agentId, options);
944
944
  if (cardResults.length > 0) {
945
945
  return rrfMergeMulti([results, cardResults], limit, RRF_K, [1, 0.85]);
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-A47MXY2I.js";
4
4
  import {
5
5
  isGhostBehaviorRow
6
- } from "./chunk-KCHIJUYX.js";
6
+ } from "./chunk-QUZ4VK3R.js";
7
7
  import {
8
8
  getClient,
9
9
  getIdentity,
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-WCGNCH3Q.js";
4
4
  import {
5
5
  registerAllTools
6
- } from "./chunk-W7F3ZBHH.js";
6
+ } from "./chunk-HG7ZX2UT.js";
7
7
 
8
8
  // src/mcp/mcp-surface-hash.ts
9
9
  function computeMcpSurfaceHash() {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  sessionScopeFilter
3
- } from "./chunk-ZSMF37M6.js";
3
+ } from "./chunk-3KAYKHVB.js";
4
4
 
5
5
  // src/lib/git-task-sweep.ts
6
6
  import { execSync } from "child_process";
@@ -238,7 +238,7 @@ async function sweepTasks(projectName, options = {}) {
238
238
  }
239
239
  if (!dryRun) {
240
240
  try {
241
- const { updateTaskStatus } = await import("./tasks-crud-NGMRLJH5.js");
241
+ const { updateTaskStatus } = await import("./tasks-crud-RDWLWYWV.js");
242
242
  await updateTaskStatus({
243
243
  taskId: task.id,
244
244
  status: "needs_review",
@@ -1,12 +1,35 @@
1
1
  import {
2
2
  updateTask
3
- } from "./chunk-5JILQMRS.js";
3
+ } from "./chunk-6AY7VXSF.js";
4
4
  import {
5
5
  TASK_ALREADY_CLAIMED_PREFIX
6
- } from "./chunk-ZSMF37M6.js";
6
+ } from "./chunk-3KAYKHVB.js";
7
+ import {
8
+ getAgentContext
9
+ } from "./chunk-GJV3WDWM.js";
10
+ import {
11
+ isCoordinatorName
12
+ } from "./chunk-BIM763ML.js";
7
13
 
8
14
  // src/mcp/tools/update-task.ts
9
15
  import { z } from "zod";
16
+ import { execFileSync } from "child_process";
17
+ function resolveCallerSessionForUpdate() {
18
+ const contextual = getAgentContext()?.sessionHint || process.env.EXE_SESSION_NAME || process.env.EXE_SESSION || void 0;
19
+ if (contextual) return contextual;
20
+ if (getAgentContext()) return void 0;
21
+ if (process.env.VITEST === "true" || process.env.NODE_ENV === "test") return void 0;
22
+ try {
23
+ const session = execFileSync(
24
+ "tmux",
25
+ ["display-message", "-p", "#{session_name}"],
26
+ { encoding: "utf8", timeout: 1500 }
27
+ ).trim();
28
+ return session || void 0;
29
+ } catch {
30
+ return void 0;
31
+ }
32
+ }
10
33
  function registerUpdateTask(server) {
11
34
  server.registerTool(
12
35
  "update_task",
@@ -42,10 +65,18 @@ function registerUpdateTask(server) {
42
65
  try {
43
66
  const { getActiveAgent: getAgent } = await import("./active-agent-AIK6FSYE.js");
44
67
  callerAgentId = getAgent().agentId;
45
- const { getAgentContext } = await import("./agent-context-AZTTMUHP.js");
46
- callerSession = getAgentContext()?.sessionHint || process.env.EXE_SESSION_NAME || process.env.EXE_SESSION || void 0;
68
+ callerSession = resolveCallerSessionForUpdate();
47
69
  } catch {
48
70
  }
71
+ if (status === "in_progress" && callerAgentId && !isCoordinatorName(callerAgentId) && !callerSession && process.env.VITEST !== "true" && process.env.NODE_ENV !== "test") {
72
+ return {
73
+ content: [{
74
+ type: "text",
75
+ text: "Refusing to claim task without a concrete caller tmux session. Parallel employee instances require exact session binding (X-Exe-Session/EXE_SESSION) so one instance cannot claim another instance's assigned task/worktree. Reconnect MCP or use the task dispatch signal from the correct session."
76
+ }],
77
+ isError: true
78
+ };
79
+ }
49
80
  let task;
50
81
  try {
51
82
  task = await updateTask({
@@ -86,10 +117,10 @@ File: ${task.taskFile}`;
86
117
  if (isTerminal && task.reviewer) {
87
118
  try {
88
119
  const { notifyCoordinatorTaskCompletion } = await import("./lib/tmux-routing.js");
89
- const { isCoordinatorName } = await import("./lib/employees.js");
120
+ const { isCoordinatorName: isCoordinatorName2 } = await import("./lib/employees.js");
90
121
  const reviewer = String(task.reviewer);
91
122
  const coordinatorSession = task.sessionScope;
92
- if (coordinatorSession && isCoordinatorName(reviewer)) {
123
+ if (coordinatorSession && isCoordinatorName2(reviewer)) {
93
124
  notifyCoordinatorTaskCompletion(coordinatorSession, callerAgentId ?? "agent", task.title);
94
125
  }
95
126
  } catch {