panopticon-cli 0.6.8 → 0.6.9

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 (89) hide show
  1. package/dist/{agents-D_2oRFVf.js → agents-BQOqo27C.js} +1 -1
  2. package/dist/{agents-CfFDs52G.js → agents-DezveQ1x.js} +4 -4
  3. package/dist/{agents-CfFDs52G.js.map → agents-DezveQ1x.js.map} +1 -1
  4. package/dist/cli/index.js +34 -34
  5. package/dist/{config-yaml-DGbLSMCa.js → config-yaml-BHD2Qdd8.js} +22 -1
  6. package/dist/config-yaml-BHD2Qdd8.js.map +1 -0
  7. package/dist/{config-yaml-Dqt4FWQH.js → config-yaml-IlSnFzJQ.js} +1 -1
  8. package/dist/dashboard/{agent-enrichment-DdO7ZqjI.js → agent-enrichment-BKZjVvlL.js} +3 -3
  9. package/dist/dashboard/{agent-enrichment-DdO7ZqjI.js.map → agent-enrichment-BKZjVvlL.js.map} +1 -1
  10. package/dist/dashboard/{agent-enrichment-dLeGE1fX.js → agent-enrichment-iY3_PylI.js} +1 -1
  11. package/dist/dashboard/{agents-DCpQQ_W5.js → agents-BQWA-Vps.js} +4 -4
  12. package/dist/dashboard/{agents-DCpQQ_W5.js.map → agents-BQWA-Vps.js.map} +1 -1
  13. package/dist/dashboard/{agents-Dgh2TjSp.js → agents-Dinc9j_8.js} +1 -1
  14. package/dist/dashboard/{config-yaml-DkresmrS.js → config-yaml-CNNnB4Mu.js} +1 -1
  15. package/dist/dashboard/{config-yaml-DSfYpzN6.js → config-yaml-DUu0JI25.js} +22 -1
  16. package/dist/dashboard/{config-yaml-DSfYpzN6.js.map → config-yaml-DUu0JI25.js.map} +1 -1
  17. package/dist/dashboard/{factory-C8nhLGHB.js → factory-CBY0WWeE.js} +2 -2
  18. package/dist/dashboard/{factory-C8nhLGHB.js.map → factory-CBY0WWeE.js.map} +1 -1
  19. package/dist/dashboard/{inspect-agent-7eour7EA.js → inspect-agent-KKOeNR7E.js} +3 -3
  20. package/dist/dashboard/{inspect-agent-7eour7EA.js.map → inspect-agent-KKOeNR7E.js.map} +1 -1
  21. package/dist/dashboard/{issue-service-singleton-Wv4xBm3y.js → issue-service-singleton-BCZ62hLj.js} +3 -3
  22. package/dist/dashboard/{issue-service-singleton-Wv4xBm3y.js.map → issue-service-singleton-BCZ62hLj.js.map} +1 -1
  23. package/dist/dashboard/{issue-service-singleton-Co__-6kL.js → issue-service-singleton-BGKf0A95.js} +1 -1
  24. package/dist/dashboard/{lifecycle-BcUmtkR4.js → lifecycle-Dpgg-IeP.js} +1 -1
  25. package/dist/dashboard/{merge-agent-CGN3TT0a.js → merge-agent-CqvQu-n_.js} +1 -1
  26. package/dist/dashboard/{merge-agent-yudQOPZc.js → merge-agent-Dxxc4JEE.js} +5 -5
  27. package/dist/dashboard/{merge-agent-yudQOPZc.js.map → merge-agent-Dxxc4JEE.js.map} +1 -1
  28. package/dist/dashboard/public/assets/{dist-C-wcq54x.js → dist-DS1gmhe1.js} +1 -1
  29. package/dist/dashboard/public/assets/index-DjGsaJLv.js +212 -0
  30. package/dist/dashboard/public/index.html +1 -1
  31. package/dist/dashboard/{review-status-BtXqWBhS.js → review-status-Dww2OKUX.js} +1 -1
  32. package/dist/dashboard/{review-status-Bymwzh2i.js → review-status-d_wOE-XQ.js} +3 -3
  33. package/dist/dashboard/{review-status-Bymwzh2i.js.map → review-status-d_wOE-XQ.js.map} +1 -1
  34. package/dist/dashboard/server.js +97 -97
  35. package/dist/dashboard/settings-BHlDG7TK.js.map +1 -1
  36. package/dist/dashboard/{spawn-planning-session-D5hrVdWM.js → spawn-planning-session-D5uEpHzf.js} +1 -1
  37. package/dist/dashboard/{spawn-planning-session-33Jf-d5T.js → spawn-planning-session-DtbNfA2Q.js} +3 -3
  38. package/dist/dashboard/{spawn-planning-session-33Jf-d5T.js.map → spawn-planning-session-DtbNfA2Q.js.map} +1 -1
  39. package/dist/dashboard/{specialist-context-DGukHSn8.js → specialist-context-CEKqWqyF.js} +4 -4
  40. package/dist/dashboard/{specialist-context-DGukHSn8.js.map → specialist-context-CEKqWqyF.js.map} +1 -1
  41. package/dist/dashboard/{specialist-logs-CIw4qfTy.js → specialist-logs-CBGVRoQF.js} +1 -1
  42. package/dist/dashboard/{specialists-Cp-PgspS.js → specialists-sIFlMd3s.js} +1 -1
  43. package/dist/dashboard/{specialists-B_zrayaP.js → specialists-saEYE0-z.js} +20 -20
  44. package/dist/dashboard/{specialists-B_zrayaP.js.map → specialists-saEYE0-z.js.map} +1 -1
  45. package/dist/dashboard/{test-agent-queue-ypF_ecHo.js → test-agent-queue-7jXB2KkN.js} +3 -3
  46. package/dist/dashboard/{test-agent-queue-ypF_ecHo.js.map → test-agent-queue-7jXB2KkN.js.map} +1 -1
  47. package/dist/dashboard/{tracker-config-BP59uH4V.js → tracker-config-BX6ijWOc.js} +1 -1
  48. package/dist/dashboard/{tracker-config-e7ph1QqT.js → tracker-config-tD22z5sv.js} +2 -2
  49. package/dist/dashboard/{tracker-config-e7ph1QqT.js.map → tracker-config-tD22z5sv.js.map} +1 -1
  50. package/dist/dashboard/{work-agent-prompt-fCg67nyo.js → work-agent-prompt-D3tPzPvb.js} +2 -2
  51. package/dist/dashboard/{work-agent-prompt-fCg67nyo.js.map → work-agent-prompt-D3tPzPvb.js.map} +1 -1
  52. package/dist/dashboard/{work-type-router-CWVW2Wk_.js → work-type-router-7kwLSwrP.js} +4 -2
  53. package/dist/dashboard/work-type-router-7kwLSwrP.js.map +1 -0
  54. package/dist/dashboard/{work-type-router-Di5gCQwh.js → work-type-router-ByOOudGz.js} +1 -1
  55. package/dist/dashboard/workflows-BDpPjK18.js +2 -0
  56. package/dist/dashboard/{workflows-BSMipN07.js → workflows-DcEeDkbS.js} +3 -3
  57. package/dist/dashboard/{workflows-BSMipN07.js.map → workflows-DcEeDkbS.js.map} +1 -1
  58. package/dist/{factory-BRBGw6OB.js → factory-BR48tuUR.js} +1 -1
  59. package/dist/{factory-DzsOiZVc.js → factory-D6LJaZ__.js} +2 -2
  60. package/dist/{factory-DzsOiZVc.js.map → factory-D6LJaZ__.js.map} +1 -1
  61. package/dist/index.d.ts +1 -1
  62. package/dist/index.js +3 -3
  63. package/dist/{merge-agent-DlUiUanN.js → merge-agent-BBwHwpn2.js} +3 -3
  64. package/dist/{merge-agent-DlUiUanN.js.map → merge-agent-BBwHwpn2.js.map} +1 -1
  65. package/dist/{review-status-DEDvCKMP.js → review-status-Ba6llgCb.js} +3 -3
  66. package/dist/{review-status-DEDvCKMP.js.map → review-status-Ba6llgCb.js.map} +1 -1
  67. package/dist/{review-status-D6H2WOw8.js → review-status-Chxzuwn2.js} +1 -1
  68. package/dist/{settings-BcWPTrua.js → settings-A-CWz_ph.js} +6 -2
  69. package/dist/{settings-BcWPTrua.js.map → settings-A-CWz_ph.js.map} +1 -1
  70. package/dist/{specialist-context-BAUWL1Fl.js → specialist-context-B3lknlwi.js} +4 -4
  71. package/dist/{specialist-context-BAUWL1Fl.js.map → specialist-context-B3lknlwi.js.map} +1 -1
  72. package/dist/{specialist-logs-DQKKQV9B.js → specialist-logs-DDyY4xqo.js} +1 -1
  73. package/dist/{specialists-D7Kj5o6s.js → specialists-DvTYu1VZ.js} +20 -20
  74. package/dist/{specialists-D7Kj5o6s.js.map → specialists-DvTYu1VZ.js.map} +1 -1
  75. package/dist/{specialists-Bfb9ATzw.js → specialists-DyB4IRlM.js} +1 -1
  76. package/dist/sync-CLVqiGl4.js +2 -0
  77. package/dist/{sync-DMfgd389.js → sync-DTHFlEc-.js} +2 -2
  78. package/dist/{sync-DMfgd389.js.map → sync-DTHFlEc-.js.map} +1 -1
  79. package/dist/{tracker-BhYYvU3p.js → tracker-CYpb7oUa.js} +2 -2
  80. package/dist/{tracker-BhYYvU3p.js.map → tracker-CYpb7oUa.js.map} +1 -1
  81. package/dist/{work-type-router-CHjciPyS.js → work-type-router-oCgTPXsP.js} +4 -2
  82. package/dist/work-type-router-oCgTPXsP.js.map +1 -0
  83. package/package.json +1 -1
  84. package/dist/config-yaml-DGbLSMCa.js.map +0 -1
  85. package/dist/dashboard/public/assets/index-DKlrFY1k.js +0 -212
  86. package/dist/dashboard/work-type-router-CWVW2Wk_.js.map +0 -1
  87. package/dist/dashboard/workflows-DaYWQIS2.js +0 -2
  88. package/dist/sync-TL6y-8K6.js +0 -2
  89. package/dist/work-type-router-CHjciPyS.js.map +0 -1
@@ -3,8 +3,8 @@ import { G as init_paths, W as getPanopticonHome, b as PANOPTICON_HOME, h as COS
3
3
  import { a as init_config, i as getDevrootPath } from "./config-BQNKsi9G.js";
4
4
  import { _ as projects_exports, c as getProject, p as init_projects } from "./projects-Bk-5QhFQ.js";
5
5
  import { f as waitForClaudePrompt, n as capturePaneAsync, o as init_tmux, r as confirmDelivery, u as sendKeysAsync } from "./tmux-D6Ah4I8z.js";
6
- import { c as popFromHook, l as pushToHook, n as init_work_type_router, r as checkHook, s as init_hooks, t as getModelId } from "./work-type-router-CHjciPyS.js";
7
- import { n as init_config_yaml, r as loadConfig } from "./config-yaml-DGbLSMCa.js";
6
+ import { c as popFromHook, l as pushToHook, n as init_work_type_router, r as checkHook, s as init_hooks, t as getModelId } from "./work-type-router-oCgTPXsP.js";
7
+ import { n as init_config_yaml, r as loadConfig } from "./config-yaml-BHD2Qdd8.js";
8
8
  import { a as getProviderForModel, i as getProviderEnv, n as clearCredentialFileAuth, s as init_providers, u as setupCredentialFileAuth } from "./providers-DSU1vfQF.js";
9
9
  import { n as notifyPipeline, t as init_pipeline_notifier } from "./pipeline-notifier-XgDdCdvT.js";
10
10
  import { appendFileSync, existsSync, mkdirSync, readFileSync, readdirSync, renameSync, statSync, unlinkSync, writeFileSync } from "fs";
@@ -1553,9 +1553,9 @@ function recordWake(name, sessionId) {
1553
1553
  */
1554
1554
  async function spawnEphemeralSpecialist(projectKey, specialistType, task) {
1555
1555
  ensureProjectSpecialistDir(projectKey, specialistType);
1556
- const { loadContextDigest } = await import("./specialist-context-BAUWL1Fl.js");
1556
+ const { loadContextDigest } = await import("./specialist-context-B3lknlwi.js");
1557
1557
  const contextDigest = loadContextDigest(projectKey, specialistType);
1558
- const { createRunLog } = await import("./specialist-logs-DQKKQV9B.js");
1558
+ const { createRunLog } = await import("./specialist-logs-DDyY4xqo.js");
1559
1559
  const { runId, filePath: logFilePath } = createRunLog(projectKey, specialistType, task.issueId, contextDigest || void 0);
1560
1560
  setCurrentRun(projectKey, specialistType, runId);
1561
1561
  incrementProjectRunCount(projectKey, specialistType);
@@ -1574,7 +1574,7 @@ ${basePrompt}`;
1574
1574
  try {
1575
1575
  const { stdout: sessions } = await execAsync("tmux list-sessions -F \"#{session_name}\" 2>/dev/null || echo \"\"", { encoding: "utf-8" });
1576
1576
  if (sessions.split("\n").map((s) => s.trim()).includes(tmuxSession)) {
1577
- const { getAgentRuntimeState } = await import("./agents-D_2oRFVf.js");
1577
+ const { getAgentRuntimeState } = await import("./agents-BQOqo27C.js");
1578
1578
  const existingState = getAgentRuntimeState(tmuxSession);
1579
1579
  if (existingState?.state === "active") {
1580
1580
  if (await isRunning(specialistType, projectKey)) return {
@@ -1583,7 +1583,7 @@ ${basePrompt}`;
1583
1583
  error: "specialist_busy"
1584
1584
  };
1585
1585
  console.log(`[specialist] ${tmuxSession} state=active but not running — clearing stale state`);
1586
- const { saveAgentRuntimeState } = await import("./agents-D_2oRFVf.js");
1586
+ const { saveAgentRuntimeState } = await import("./agents-BQOqo27C.js");
1587
1587
  saveAgentRuntimeState(tmuxSession, {
1588
1588
  state: "idle",
1589
1589
  lastActivity: (/* @__PURE__ */ new Date()).toISOString(),
@@ -1653,7 +1653,7 @@ script -qfec "bash '${innerScript}'" /dev/null 2>&1 | tee -a "${logFilePath}"
1653
1653
  `, { mode: 493 });
1654
1654
  await execAsync(`tmux kill-session -t "${tmuxSession}" 2>/dev/null || true`, { encoding: "utf-8" });
1655
1655
  await execAsync(`tmux new-session -d -s "${tmuxSession}" -c "${cwd}"${envFlags} "bash '${launcherScript}'"`, { encoding: "utf-8" });
1656
- const { saveAgentRuntimeState } = await import("./agents-D_2oRFVf.js");
1656
+ const { saveAgentRuntimeState } = await import("./agents-BQOqo27C.js");
1657
1657
  saveAgentRuntimeState(tmuxSession, {
1658
1658
  state: "active",
1659
1659
  lastActivity: (/* @__PURE__ */ new Date()).toISOString(),
@@ -1976,7 +1976,7 @@ async function terminateSpecialist(projectKey, specialistType) {
1976
1976
  console.error(`[specialist] Failed to kill tmux session ${tmuxSession}:`, error);
1977
1977
  }
1978
1978
  if (metadata.currentRun) {
1979
- const { finalizeRunLog } = await import("./specialist-logs-DQKKQV9B.js");
1979
+ const { finalizeRunLog } = await import("./specialist-logs-DDyY4xqo.js");
1980
1980
  try {
1981
1981
  finalizeRunLog(projectKey, specialistType, metadata.currentRun, {
1982
1982
  status: metadata.lastRunStatus || "incomplete",
@@ -1989,12 +1989,12 @@ async function terminateSpecialist(projectKey, specialistType) {
1989
1989
  }
1990
1990
  const key = `${projectKey}-${specialistType}`;
1991
1991
  gracePeriodStates.delete(key);
1992
- const { saveAgentRuntimeState } = await import("./agents-D_2oRFVf.js");
1992
+ const { saveAgentRuntimeState } = await import("./agents-BQOqo27C.js");
1993
1993
  saveAgentRuntimeState(tmuxSession, {
1994
1994
  state: "suspended",
1995
1995
  lastActivity: (/* @__PURE__ */ new Date()).toISOString()
1996
1996
  });
1997
- const { scheduleDigestGeneration } = await import("./specialist-context-BAUWL1Fl.js");
1997
+ const { scheduleDigestGeneration } = await import("./specialist-context-B3lknlwi.js");
1998
1998
  scheduleDigestGeneration(projectKey, specialistType);
1999
1999
  scheduleLogCleanup(projectKey, specialistType);
2000
2000
  }
@@ -2007,7 +2007,7 @@ async function terminateSpecialist(projectKey, specialistType) {
2007
2007
  function scheduleLogCleanup(projectKey, specialistType) {
2008
2008
  Promise.resolve().then(async () => {
2009
2009
  try {
2010
- const { cleanupOldLogs } = await import("./specialist-logs-DQKKQV9B.js");
2010
+ const { cleanupOldLogs } = await import("./specialist-logs-DDyY4xqo.js");
2011
2011
  const { getSpecialistRetention } = await import("./projects-DhU7rAVN.js");
2012
2012
  const retention = getSpecialistRetention(projectKey);
2013
2013
  const deleted = cleanupOldLogs(projectKey, specialistType, {
@@ -2260,7 +2260,7 @@ async function getSpecialistStatus(name, projectKey) {
2260
2260
  const sessionId = getSessionId(name, projectKey);
2261
2261
  const running = await isRunning(name, projectKey);
2262
2262
  const contextTokens = countContextTokens(name);
2263
- const { getAgentRuntimeState } = await import("./agents-D_2oRFVf.js");
2263
+ const { getAgentRuntimeState } = await import("./agents-BQOqo27C.js");
2264
2264
  const runtimeState = getAgentRuntimeState(getTmuxSessionName(name, projectKey));
2265
2265
  let state;
2266
2266
  if (runtimeState) switch (runtimeState.state) {
@@ -2437,7 +2437,7 @@ async function wakeSpecialist(name, taskPrompt, options = {}) {
2437
2437
  const sessionId = getSessionId(name);
2438
2438
  const wasAlreadyRunning = await isRunning(name);
2439
2439
  if (wasAlreadyRunning && !options.skipBusyGuard) {
2440
- const { getAgentRuntimeState } = await import("./agents-D_2oRFVf.js");
2440
+ const { getAgentRuntimeState } = await import("./agents-BQOqo27C.js");
2441
2441
  const runtimeState = getAgentRuntimeState(tmuxSession);
2442
2442
  if (runtimeState?.state === "active") {
2443
2443
  console.warn(`[specialist] ${name} is busy (working on ${runtimeState.currentIssue}), refusing to interrupt`);
@@ -2532,7 +2532,7 @@ async function wakeSpecialist(name, taskPrompt, options = {}) {
2532
2532
  };
2533
2533
  }
2534
2534
  recordWake(name, sessionId || void 0);
2535
- const { saveAgentRuntimeState } = await import("./agents-D_2oRFVf.js");
2535
+ const { saveAgentRuntimeState } = await import("./agents-BQOqo27C.js");
2536
2536
  saveAgentRuntimeState(tmuxSession, {
2537
2537
  state: "active",
2538
2538
  lastActivity: (/* @__PURE__ */ new Date()).toISOString(),
@@ -2641,14 +2641,14 @@ CRITICAL: Do NOT delete the feature branch.`;
2641
2641
  }
2642
2642
  if (totalChangedFiles === 0) {
2643
2643
  console.log(`[specialist] review-agent: stale branch detected for ${task.issueId} — 0 files changed vs main`);
2644
- const { setReviewStatus } = await import("./review-status-D6H2WOw8.js");
2644
+ const { setReviewStatus } = await import("./review-status-Chxzuwn2.js");
2645
2645
  setReviewStatus(task.issueId.toUpperCase(), {
2646
2646
  reviewStatus: "passed",
2647
2647
  reviewNotes: "No changes to review — branch identical to main (already merged or stale)"
2648
2648
  });
2649
2649
  console.log(`[specialist] review-agent: auto-passed ${task.issueId} (stale branch)`);
2650
2650
  const tmuxSession = getTmuxSessionName("review-agent");
2651
- const { saveAgentRuntimeState } = await import("./agents-D_2oRFVf.js");
2651
+ const { saveAgentRuntimeState } = await import("./agents-BQOqo27C.js");
2652
2652
  saveAgentRuntimeState(tmuxSession, {
2653
2653
  state: "idle",
2654
2654
  lastActivity: (/* @__PURE__ */ new Date()).toISOString()
@@ -2942,7 +2942,7 @@ async function wakeSpecialistOrQueue(name, task, options = {}) {
2942
2942
  console.warn(`[specialist] Task readiness check failed for ${vbriefItemId}: ${readinessErr.message}`);
2943
2943
  }
2944
2944
  const running = await isRunning(name);
2945
- const { getAgentRuntimeState } = await import("./agents-D_2oRFVf.js");
2945
+ const { getAgentRuntimeState } = await import("./agents-BQOqo27C.js");
2946
2946
  const tmuxSession = getTmuxSessionName(name);
2947
2947
  const runtimeState = getAgentRuntimeState(tmuxSession);
2948
2948
  const idle = runtimeState?.state === "idle" || runtimeState?.state === "suspended";
@@ -2971,7 +2971,7 @@ async function wakeSpecialistOrQueue(name, task, options = {}) {
2971
2971
  error: msg
2972
2972
  };
2973
2973
  }
2974
- const { saveAgentRuntimeState } = await import("./agents-D_2oRFVf.js");
2974
+ const { saveAgentRuntimeState } = await import("./agents-BQOqo27C.js");
2975
2975
  saveAgentRuntimeState(tmuxSession, {
2976
2976
  state: "active",
2977
2977
  lastActivity: (/* @__PURE__ */ new Date()).toISOString(),
@@ -3114,7 +3114,7 @@ async function sendFeedbackToAgent(feedback) {
3114
3114
  return false;
3115
3115
  }
3116
3116
  try {
3117
- const { messageAgent } = await import("./agents-D_2oRFVf.js");
3117
+ const { messageAgent } = await import("./agents-BQOqo27C.js");
3118
3118
  await messageAgent(agentSession, `SPECIALIST FEEDBACK: ${fromSpecialist} reported ${feedback.feedbackType.toUpperCase()} for ${toIssueId}.\nRead and address: ${fileResult.relativePath}`);
3119
3119
  console.log(`[specialist] Sent feedback from ${fromSpecialist} to ${agentSession} (file: ${fileResult.relativePath})`);
3120
3120
  return true;
@@ -3248,4 +3248,4 @@ var init_specialists = __esmMin((() => {
3248
3248
  //#endregion
3249
3249
  export { updateContextTokens as $, initSpecialistsDirectory as A, formatCost as At, loadRegistry as B, init_io as Bt, getSessionGeneration as C, getProjectDirs as Ct, getSpecialistStatus as D, checkBudget as Dt, getSpecialistState as E, parseClaudeSession as Et, isInitialized as F, getWeeklySummary as Ft, sendFeedbackToAgent as G, recordWake as H, updateItemStatus as Ht, isRunning as I, init_cost as It, signalSpecialistCompletion as J, setCurrentRun as K, listProjectsWithSpecialists as L, readIssueCosts as Lt, initializeEnabledSpecialists as M, getAllBudgets as Mt, initializeSpecialist as N, getDailySummary as Nt, getTmuxSessionName as O, createBudget as Ot, isEnabled as P, getMonthlySummary as Pt, terminateSpecialist as Q, listSessionFiles as R, readTodayCosts as Rt, getSessionFilePath as S, parseLogMetadata as St, getSpecialistMetadata as T, init_jsonl_parser as Tt, resumeGracePeriod as U, updateSubItemStatus as Ut, pauseGracePeriod as V, readWorkspacePlan as Vt, saveRegistry as W, startGracePeriod as X, spawnEphemeralSpecialist as Y, submitToSpecialistQueue as Z, getGracePeriodState as _, getRunLogSize as _t, completeSpecialistTask as a, wakeSpecialistWithTask as at, getProjectSpecialistDir as b, isRunLogActive as bt, enableSpecialist as c, checkLogSizeLimit as ct, findSessionFile as d, createRunLog as dt, updateProjectSpecialistMetadata as et, getAllProjectSpecialistStatuses as f, finalizeRunLog as ft, getFeedbackStats as g, getRunLogPath as gt, getEnabledSpecialists as h, getRunLog as ht, clearSessionId as i, wakeSpecialistOrQueue as it, init_specialists as j, generateReport as jt, incrementProjectRunCount as k, deleteBudget as kt, ensureProjectSpecialistDir as l, cleanupAllLogs as lt, getAllSpecialists as m, getRecentRunLogs as mt, bumpSessionGeneration as n, updateSpecialistMetadata as nt, countContextTokens as o, MAX_LOG_SIZE as ot, getAllSpecialistStatus as p, generateRunId as pt, setSessionId as q, checkSpecialistQueue as r, wakeSpecialist as rt, disableSpecialist as s, appendToRunLog as st, buildTestAgentPromptContent as t, updateRunStatus as tt, exitGracePeriod as u, cleanupOldLogs as ut, getNextSpecialistTask as v, getRunsDirectory as vt, getSessionId as w, getSessionFiles as wt, getProjectSpecialistMetadata as x, listRunLogs as xt, getPendingFeedback as y, init_specialist_logs as yt, listSpecialistsForProject as z, summarizeCosts as zt };
3250
3250
 
3251
- //# sourceMappingURL=specialists-D7Kj5o6s.js.map
3251
+ //# sourceMappingURL=specialists-DvTYu1VZ.js.map