pybao-cli 1.4.52 → 1.4.53

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 (147) hide show
  1. package/dist/REPL-ETXBX4GD.js +46 -0
  2. package/dist/{acp-QYEU24FQ.js → acp-BBK67FZZ.js} +29 -29
  3. package/dist/{agentsValidate-755OIS5R.js → agentsValidate-BCIRX632.js} +7 -7
  4. package/dist/{ask-DZPBLG26.js → ask-VG4YM3A7.js} +28 -28
  5. package/dist/{autoUpdater-TYGW5WLI.js → autoUpdater-ZTZNG6MQ.js} +3 -3
  6. package/dist/{chunk-BRKYVW3X.js → chunk-33IRPD3C.js} +3 -3
  7. package/dist/{chunk-DWNHYJME.js → chunk-5N2LR5UC.js} +4 -4
  8. package/dist/{chunk-VSGJTKCW.js → chunk-6JK5BGNC.js} +1 -1
  9. package/dist/{chunk-GFD2DNDU.js → chunk-A4J6UBNK.js} +2 -2
  10. package/dist/{chunk-NXAHOIRY.js → chunk-AFVEZLTD.js} +2 -2
  11. package/dist/{chunk-OX2MB4Q2.js → chunk-B4JRDZFF.js} +3 -3
  12. package/dist/{chunk-WTHNVU5P.js → chunk-CJ44MBCI.js} +3 -3
  13. package/dist/{chunk-2HMRIM4L.js → chunk-CO4JIH76.js} +48 -136
  14. package/dist/{chunk-2HMRIM4L.js.map → chunk-CO4JIH76.js.map} +2 -2
  15. package/dist/{chunk-2BHQOW7O.js → chunk-ERGKRFDJ.js} +4 -4
  16. package/dist/{chunk-EBSC7C7P.js → chunk-HKKI5CUW.js} +3 -3
  17. package/dist/{chunk-4LMBJZXO.js → chunk-IEWJUZZ4.js} +1 -1
  18. package/dist/{chunk-CACSIWAN.js → chunk-IZQSETD3.js} +1 -1
  19. package/dist/{chunk-KMM3X3B5.js → chunk-J5FWFAJE.js} +5 -32
  20. package/dist/chunk-J5FWFAJE.js.map +7 -0
  21. package/dist/{chunk-OBAKKVHK.js → chunk-JK4U5YCO.js} +1 -1
  22. package/dist/{chunk-KFQPMAFO.js → chunk-JMNAD5PO.js} +3 -3
  23. package/dist/{chunk-NCHARDNR.js → chunk-JXFMOIM3.js} +1 -1
  24. package/dist/{chunk-NCHARDNR.js.map → chunk-JXFMOIM3.js.map} +1 -1
  25. package/dist/{chunk-OMMS565Z.js → chunk-KQBOSZTO.js} +2 -2
  26. package/dist/{chunk-FTYUYN6L.js → chunk-KURHDENJ.js} +1 -1
  27. package/dist/{chunk-SEIO7WV7.js → chunk-MDTAHWRA.js} +1 -1
  28. package/dist/{chunk-XDWCDTQK.js → chunk-MKAUTQIV.js} +2 -2
  29. package/dist/{chunk-FVNXJG2K.js → chunk-N7BSSU3C.js} +2 -2
  30. package/dist/{chunk-H6QOGXMT.js → chunk-N7HOL2FL.js} +3 -3
  31. package/dist/{chunk-LHL4VQUV.js → chunk-OF6NW3CH.js} +1 -1
  32. package/dist/{chunk-RCASKKDU.js → chunk-OTLOWUV5.js} +2 -2
  33. package/dist/{chunk-VTHHH4MB.js → chunk-R7JCTOLR.js} +4 -4
  34. package/dist/{chunk-232RVCMQ.js → chunk-R7WBU6WF.js} +3 -3
  35. package/dist/{chunk-EF6YCOC4.js → chunk-SLX2OHBV.js} +4 -4
  36. package/dist/{chunk-R3QXCIEI.js → chunk-T7TN326S.js} +1 -1
  37. package/dist/{chunk-LTNUANEK.js → chunk-XO4WYS66.js} +39 -110
  38. package/dist/{chunk-LTNUANEK.js.map → chunk-XO4WYS66.js.map} +2 -2
  39. package/dist/{chunk-CIPSRLKQ.js → chunk-YSI7SECE.js} +1 -1
  40. package/dist/{cli-WGYHJPFZ.js → cli-ETJKNFLN.js} +88 -88
  41. package/dist/cli-ETJKNFLN.js.map +7 -0
  42. package/dist/commands-Y3MZUUJF.js +50 -0
  43. package/dist/{config-AGAJCFQD.js → config-E2UT2BHP.js} +4 -4
  44. package/dist/{context-ZOZD4S7X.js → context-NF6UL2WQ.js} +6 -6
  45. package/dist/{customCommands-4GSMRRC4.js → customCommands-K5TOBWOG.js} +4 -4
  46. package/dist/{env-RPUIAXPD.js → env-YPNG4GCZ.js} +2 -2
  47. package/dist/{file-HFMWEHAT.js → file-5HB5JDXE.js} +4 -4
  48. package/dist/index.js +3 -3
  49. package/dist/{llm-CP2G3BZQ.js → llm-HPFALZTO.js} +29 -29
  50. package/dist/{llmLazy-7GLWRPMO.js → llmLazy-XVV3PCWC.js} +1 -1
  51. package/dist/{loader-RJUX5HRI.js → loader-F4IFI6TI.js} +4 -4
  52. package/dist/{lsp-4PS6EN3E.js → lsp-OXYIZORL.js} +6 -6
  53. package/dist/{lspAnchor-QPHIEGKU.js → lspAnchor-PE3Z6SSS.js} +6 -6
  54. package/dist/{mcp-Z5GOR6OF.js → mcp-OUNIDN7C.js} +7 -7
  55. package/dist/{mentionProcessor-ZPSEF4XC.js → mentionProcessor-SR75ZPZL.js} +5 -5
  56. package/dist/{messages-7PZIS7S6.js → messages-RIUPLGZZ.js} +1 -1
  57. package/dist/{model-OMBFATWA.js → model-6CB447EG.js} +5 -5
  58. package/dist/{openai-ZFDYT7H5.js → openai-NMN24LHZ.js} +5 -5
  59. package/dist/{outputStyles-LK7EH6PS.js → outputStyles-S4QVJQ2M.js} +4 -4
  60. package/dist/{pluginRuntime-PFAQAL5X.js → pluginRuntime-VVPWXAOG.js} +6 -6
  61. package/dist/{pluginValidation-F6UPGXZP.js → pluginValidation-4X76H7AS.js} +6 -6
  62. package/dist/prompts-6WUAD4N6.js +52 -0
  63. package/dist/{pybAgentSessionLoad-PQX3FKEC.js → pybAgentSessionLoad-FQQDJPAZ.js} +4 -4
  64. package/dist/{pybAgentSessionResume-FTGMQQ4B.js → pybAgentSessionResume-FW2PPCMQ.js} +4 -4
  65. package/dist/{pybAgentStreamJsonSession-GQZLIIQS.js → pybAgentStreamJsonSession-ANEZ2MDI.js} +1 -1
  66. package/dist/{pybHooks-7SOKY4A3.js → pybHooks-VX6L72CF.js} +4 -4
  67. package/dist/query-KOXXXDL6.js +54 -0
  68. package/dist/{registry-HEA2CKWA.js → registry-CS624VEB.js} +5 -5
  69. package/dist/{ripgrep-S4IOHQNI.js → ripgrep-E3KEWB5J.js} +3 -3
  70. package/dist/{skillMarketplace-GLH5WP4Y.js → skillMarketplace-ZDK43624.js} +3 -3
  71. package/dist/{state-DYO5HDW5.js → state-NPZMMSLQ.js} +2 -2
  72. package/dist/{theme-FMEMGZ2J.js → theme-EDG2CUW3.js} +5 -5
  73. package/dist/{toolPermissionSettings-J2R2EOVJ.js → toolPermissionSettings-YAZJAQU7.js} +6 -6
  74. package/dist/tools-B2QJ3TNV.js +51 -0
  75. package/dist/{userInput-IZB262ZP.js → userInput-PJ4OVVPF.js} +30 -30
  76. package/package.json +1 -1
  77. package/dist/REPL-5YY25SRP.js +0 -46
  78. package/dist/chunk-KMM3X3B5.js.map +0 -7
  79. package/dist/cli-WGYHJPFZ.js.map +0 -7
  80. package/dist/commands-6JEO2KAK.js +0 -50
  81. package/dist/prompts-3I2J4KDX.js +0 -52
  82. package/dist/query-MZKEYXCU.js +0 -54
  83. package/dist/tools-OLRB4MMF.js +0 -51
  84. /package/dist/{REPL-5YY25SRP.js.map → REPL-ETXBX4GD.js.map} +0 -0
  85. /package/dist/{acp-QYEU24FQ.js.map → acp-BBK67FZZ.js.map} +0 -0
  86. /package/dist/{agentsValidate-755OIS5R.js.map → agentsValidate-BCIRX632.js.map} +0 -0
  87. /package/dist/{ask-DZPBLG26.js.map → ask-VG4YM3A7.js.map} +0 -0
  88. /package/dist/{autoUpdater-TYGW5WLI.js.map → autoUpdater-ZTZNG6MQ.js.map} +0 -0
  89. /package/dist/{chunk-BRKYVW3X.js.map → chunk-33IRPD3C.js.map} +0 -0
  90. /package/dist/{chunk-DWNHYJME.js.map → chunk-5N2LR5UC.js.map} +0 -0
  91. /package/dist/{chunk-VSGJTKCW.js.map → chunk-6JK5BGNC.js.map} +0 -0
  92. /package/dist/{chunk-GFD2DNDU.js.map → chunk-A4J6UBNK.js.map} +0 -0
  93. /package/dist/{chunk-NXAHOIRY.js.map → chunk-AFVEZLTD.js.map} +0 -0
  94. /package/dist/{chunk-OX2MB4Q2.js.map → chunk-B4JRDZFF.js.map} +0 -0
  95. /package/dist/{chunk-WTHNVU5P.js.map → chunk-CJ44MBCI.js.map} +0 -0
  96. /package/dist/{chunk-2BHQOW7O.js.map → chunk-ERGKRFDJ.js.map} +0 -0
  97. /package/dist/{chunk-EBSC7C7P.js.map → chunk-HKKI5CUW.js.map} +0 -0
  98. /package/dist/{chunk-4LMBJZXO.js.map → chunk-IEWJUZZ4.js.map} +0 -0
  99. /package/dist/{chunk-CACSIWAN.js.map → chunk-IZQSETD3.js.map} +0 -0
  100. /package/dist/{chunk-OBAKKVHK.js.map → chunk-JK4U5YCO.js.map} +0 -0
  101. /package/dist/{chunk-KFQPMAFO.js.map → chunk-JMNAD5PO.js.map} +0 -0
  102. /package/dist/{chunk-OMMS565Z.js.map → chunk-KQBOSZTO.js.map} +0 -0
  103. /package/dist/{chunk-FTYUYN6L.js.map → chunk-KURHDENJ.js.map} +0 -0
  104. /package/dist/{chunk-SEIO7WV7.js.map → chunk-MDTAHWRA.js.map} +0 -0
  105. /package/dist/{chunk-XDWCDTQK.js.map → chunk-MKAUTQIV.js.map} +0 -0
  106. /package/dist/{chunk-FVNXJG2K.js.map → chunk-N7BSSU3C.js.map} +0 -0
  107. /package/dist/{chunk-H6QOGXMT.js.map → chunk-N7HOL2FL.js.map} +0 -0
  108. /package/dist/{chunk-LHL4VQUV.js.map → chunk-OF6NW3CH.js.map} +0 -0
  109. /package/dist/{chunk-RCASKKDU.js.map → chunk-OTLOWUV5.js.map} +0 -0
  110. /package/dist/{chunk-VTHHH4MB.js.map → chunk-R7JCTOLR.js.map} +0 -0
  111. /package/dist/{chunk-232RVCMQ.js.map → chunk-R7WBU6WF.js.map} +0 -0
  112. /package/dist/{chunk-EF6YCOC4.js.map → chunk-SLX2OHBV.js.map} +0 -0
  113. /package/dist/{chunk-R3QXCIEI.js.map → chunk-T7TN326S.js.map} +0 -0
  114. /package/dist/{chunk-CIPSRLKQ.js.map → chunk-YSI7SECE.js.map} +0 -0
  115. /package/dist/{commands-6JEO2KAK.js.map → commands-Y3MZUUJF.js.map} +0 -0
  116. /package/dist/{config-AGAJCFQD.js.map → config-E2UT2BHP.js.map} +0 -0
  117. /package/dist/{context-ZOZD4S7X.js.map → context-NF6UL2WQ.js.map} +0 -0
  118. /package/dist/{customCommands-4GSMRRC4.js.map → customCommands-K5TOBWOG.js.map} +0 -0
  119. /package/dist/{env-RPUIAXPD.js.map → env-YPNG4GCZ.js.map} +0 -0
  120. /package/dist/{file-HFMWEHAT.js.map → file-5HB5JDXE.js.map} +0 -0
  121. /package/dist/{llm-CP2G3BZQ.js.map → llm-HPFALZTO.js.map} +0 -0
  122. /package/dist/{llmLazy-7GLWRPMO.js.map → llmLazy-XVV3PCWC.js.map} +0 -0
  123. /package/dist/{loader-RJUX5HRI.js.map → loader-F4IFI6TI.js.map} +0 -0
  124. /package/dist/{lsp-4PS6EN3E.js.map → lsp-OXYIZORL.js.map} +0 -0
  125. /package/dist/{lspAnchor-QPHIEGKU.js.map → lspAnchor-PE3Z6SSS.js.map} +0 -0
  126. /package/dist/{mcp-Z5GOR6OF.js.map → mcp-OUNIDN7C.js.map} +0 -0
  127. /package/dist/{mentionProcessor-ZPSEF4XC.js.map → mentionProcessor-SR75ZPZL.js.map} +0 -0
  128. /package/dist/{messages-7PZIS7S6.js.map → messages-RIUPLGZZ.js.map} +0 -0
  129. /package/dist/{model-OMBFATWA.js.map → model-6CB447EG.js.map} +0 -0
  130. /package/dist/{openai-ZFDYT7H5.js.map → openai-NMN24LHZ.js.map} +0 -0
  131. /package/dist/{outputStyles-LK7EH6PS.js.map → outputStyles-S4QVJQ2M.js.map} +0 -0
  132. /package/dist/{pluginRuntime-PFAQAL5X.js.map → pluginRuntime-VVPWXAOG.js.map} +0 -0
  133. /package/dist/{pluginValidation-F6UPGXZP.js.map → pluginValidation-4X76H7AS.js.map} +0 -0
  134. /package/dist/{prompts-3I2J4KDX.js.map → prompts-6WUAD4N6.js.map} +0 -0
  135. /package/dist/{pybAgentSessionLoad-PQX3FKEC.js.map → pybAgentSessionLoad-FQQDJPAZ.js.map} +0 -0
  136. /package/dist/{pybAgentSessionResume-FTGMQQ4B.js.map → pybAgentSessionResume-FW2PPCMQ.js.map} +0 -0
  137. /package/dist/{pybAgentStreamJsonSession-GQZLIIQS.js.map → pybAgentStreamJsonSession-ANEZ2MDI.js.map} +0 -0
  138. /package/dist/{pybHooks-7SOKY4A3.js.map → pybHooks-VX6L72CF.js.map} +0 -0
  139. /package/dist/{query-MZKEYXCU.js.map → query-KOXXXDL6.js.map} +0 -0
  140. /package/dist/{registry-HEA2CKWA.js.map → registry-CS624VEB.js.map} +0 -0
  141. /package/dist/{ripgrep-S4IOHQNI.js.map → ripgrep-E3KEWB5J.js.map} +0 -0
  142. /package/dist/{skillMarketplace-GLH5WP4Y.js.map → skillMarketplace-ZDK43624.js.map} +0 -0
  143. /package/dist/{state-DYO5HDW5.js.map → state-NPZMMSLQ.js.map} +0 -0
  144. /package/dist/{theme-FMEMGZ2J.js.map → theme-EDG2CUW3.js.map} +0 -0
  145. /package/dist/{toolPermissionSettings-J2R2EOVJ.js.map → toolPermissionSettings-YAZJAQU7.js.map} +0 -0
  146. /package/dist/{tools-OLRB4MMF.js.map → tools-B2QJ3TNV.js.map} +0 -0
  147. /package/dist/{userInput-IZB262ZP.js.map → userInput-PJ4OVVPF.js.map} +0 -0
@@ -15,7 +15,6 @@ import {
15
15
  NotebookEditTool,
16
16
  SkillTool,
17
17
  SlashCommandTool,
18
- TaskStoreConflictError,
19
18
  WebFetchTool,
20
19
  WebSearchTool,
21
20
  applyMarkdown,
@@ -37,57 +36,57 @@ import {
37
36
  runWithTaskListEnv,
38
37
  runWithTaskListId,
39
38
  updateTask
40
- } from "./chunk-2HMRIM4L.js";
39
+ } from "./chunk-CO4JIH76.js";
41
40
  import {
42
41
  queryLLM
43
- } from "./chunk-EF6YCOC4.js";
42
+ } from "./chunk-SLX2OHBV.js";
44
43
  import {
45
44
  FallbackToolUseRejectedMessage,
46
45
  MCPTool,
47
46
  getClients,
48
47
  getMCPTools
49
- } from "./chunk-DWNHYJME.js";
48
+ } from "./chunk-5N2LR5UC.js";
50
49
  import {
51
50
  emitReminderEvent
52
- } from "./chunk-KMM3X3B5.js";
51
+ } from "./chunk-J5FWFAJE.js";
53
52
  import {
54
53
  getActiveAgents,
55
54
  getAgentByType,
56
55
  getAvailableAgentTypes
57
- } from "./chunk-XDWCDTQK.js";
56
+ } from "./chunk-MKAUTQIV.js";
58
57
  import {
59
58
  INTERRUPT_MESSAGE,
60
59
  createAssistantMessage,
61
60
  createUserMessage,
62
61
  getLastAssistantMessageId
63
- } from "./chunk-CIPSRLKQ.js";
62
+ } from "./chunk-YSI7SECE.js";
64
63
  import {
65
64
  formatDuration,
66
65
  formatNumber
67
66
  } from "./chunk-OUXHGDLH.js";
68
67
  import {
69
68
  getAbsolutePath
70
- } from "./chunk-GFD2DNDU.js";
69
+ } from "./chunk-A4J6UBNK.js";
71
70
  import {
72
71
  LspFacade,
73
72
  formatDiagnosticsPretty
74
- } from "./chunk-2BHQOW7O.js";
73
+ } from "./chunk-ERGKRFDJ.js";
75
74
  import {
76
75
  getModelManager
77
- } from "./chunk-232RVCMQ.js";
76
+ } from "./chunk-R7WBU6WF.js";
78
77
  import {
79
78
  getContext
80
- } from "./chunk-VTHHH4MB.js";
79
+ } from "./chunk-R7JCTOLR.js";
81
80
  import {
82
81
  filesToTree,
83
82
  ripGrepWithStatus
84
- } from "./chunk-VSGJTKCW.js";
83
+ } from "./chunk-6JK5BGNC.js";
85
84
  import {
86
85
  getTheme
87
- } from "./chunk-FTYUYN6L.js";
86
+ } from "./chunk-KURHDENJ.js";
88
87
  import {
89
88
  debug
90
- } from "./chunk-CACSIWAN.js";
89
+ } from "./chunk-IZQSETD3.js";
91
90
  import {
92
91
  BunShell,
93
92
  getCwd,
@@ -98,7 +97,7 @@ import {
98
97
  overwriteLog,
99
98
  readTaskOutput,
100
99
  resolveXdgDataPath
101
- } from "./chunk-LHL4VQUV.js";
100
+ } from "./chunk-OF6NW3CH.js";
102
101
 
103
102
  // src/tools/index.ts
104
103
  import { memoize as memoize2 } from "lodash-es";
@@ -777,7 +776,7 @@ async function analyzeOutputWithLsp(output, exitCode) {
777
776
  if (exitCode !== 0 || errorCount > 0 || warningCount > 0) {
778
777
  try {
779
778
  const { isAbsolute: isAbsolute3, resolve: resolve4 } = await import("path");
780
- const { getSessionRoot: getSessionRoot2 } = await import("./state-DYO5HDW5.js");
779
+ const { getSessionRoot: getSessionRoot2 } = await import("./state-NPZMMSLQ.js");
781
780
  const lines = output.split("\n");
782
781
  const uniqueFiles = /* @__PURE__ */ new Set();
783
782
  const lspSuggestions = [];
@@ -1150,7 +1149,7 @@ var DeleteTool = {
1150
1149
  }
1151
1150
  if (!force) {
1152
1151
  try {
1153
- const { LspFacade: LspFacade2 } = await import("./lsp-4PS6EN3E.js");
1152
+ const { LspFacade: LspFacade2 } = await import("./lsp-OXYIZORL.js");
1154
1153
  const referenceDetail = await LspFacade2.checkFileReferences(fullPath);
1155
1154
  if (referenceDetail) {
1156
1155
  failedItems.push(
@@ -3040,7 +3039,7 @@ function formatTaskDetails(task) {
3040
3039
  return description ?? blockedText;
3041
3040
  }
3042
3041
  function getStatusIcon(status) {
3043
- if (status === "done" || status === "archived") return "\u2705";
3042
+ if (status === "done" || status === "deleted") return "\u2705";
3044
3043
  if (status === "in_progress") return "\u{1F504}";
3045
3044
  if (status === "blocked") return "\u26D4";
3046
3045
  return "\u23F8\uFE0F";
@@ -3053,7 +3052,7 @@ function getStatusColor(status) {
3053
3052
  function renderTask(task) {
3054
3053
  const details = formatTaskDetails(task);
3055
3054
  const color = getStatusColor(task.status);
3056
- const isFinished = task.status === "done" || task.status === "archived";
3055
+ const isFinished = task.status === "done" || task.status === "deleted";
3057
3056
  return /* @__PURE__ */ React9.createElement(Box9, { key: task.id, flexDirection: "column" }, /* @__PURE__ */ React9.createElement(Box9, { flexDirection: "row", gap: 1 }, /* @__PURE__ */ React9.createElement(Text9, null, "\u23BF"), /* @__PURE__ */ React9.createElement(Text9, { color, dimColor: isFinished }, getStatusIcon(task.status)), /* @__PURE__ */ React9.createElement(
3058
3057
  Text9,
3059
3058
  {
@@ -3089,13 +3088,13 @@ function ListRenderer({
3089
3088
  }
3090
3089
  function TaskList(props) {
3091
3090
  const tasks = props.tasks ?? listTasks({ listId: props.listId });
3092
- const visibleTasks = tasks.filter((task) => task.status !== "archived");
3091
+ const visibleTasks = tasks.filter((task) => task.status !== "deleted");
3093
3092
  const computed = calculateReadyBlocked(visibleTasks);
3094
3093
  const ready = (props.ready ?? computed.ready).filter(
3095
- (task) => task.status !== "archived"
3094
+ (task) => task.status !== "deleted"
3096
3095
  );
3097
3096
  const blocked = (props.blocked ?? computed.blocked).filter(
3098
- (task) => task.status !== "archived"
3097
+ (task) => task.status !== "deleted"
3099
3098
  );
3100
3099
  const total = visibleTasks.length;
3101
3100
  if (total === 0) {
@@ -3134,7 +3133,8 @@ var jsonValueSchema = z9.lazy(
3134
3133
  );
3135
3134
  var metadataSchema = z9.record(jsonValueSchema);
3136
3135
  function mapStatusToOutput(status) {
3137
- if (status === "done" || status === "archived") return "completed";
3136
+ if (status === "done") return "completed";
3137
+ if (status === "deleted") return "deleted";
3138
3138
  if (status === "blocked") return "pending";
3139
3139
  return status;
3140
3140
  }
@@ -3143,7 +3143,6 @@ function toTaskListItem(task) {
3143
3143
  id: task.id,
3144
3144
  subject: task.subject,
3145
3145
  status: mapStatusToOutput(task.status),
3146
- owner: task.assignee,
3147
3146
  blockedBy: task.blockedBy ?? []
3148
3147
  };
3149
3148
  }
@@ -3154,15 +3153,9 @@ function toTaskDetail(task) {
3154
3153
  description: task.description,
3155
3154
  activeForm: task.activeForm,
3156
3155
  status: mapStatusToOutput(task.status),
3157
- tags: task.tags,
3158
- assignee: task.assignee,
3159
3156
  metadata: task.metadata,
3160
- archived: task.archived,
3161
3157
  blocks: task.blocks ?? [],
3162
- blockedBy: task.blockedBy ?? [],
3163
- parent: task.parent,
3164
- related: task.related ?? [],
3165
- legacyTodoId: task.legacyTodoId
3158
+ blockedBy: task.blockedBy ?? []
3166
3159
  };
3167
3160
  }
3168
3161
  function toTaskGetDetail(task) {
@@ -3215,7 +3208,6 @@ NOTE that you should not use this tool if you are only updating status or detail
3215
3208
  - listId is optional; omit to use the default list.
3216
3209
  - TaskCreate only supports single-task creation; create multiple tasks one by one.
3217
3210
  - For multi-step plans, create the structured task list without dependencies and add blockedBy later via TaskUpdate.
3218
- - status can be pending, in_progress, blocked, done, or archived.
3219
3211
  - activeForm is required and must not equal subject.
3220
3212
  - blockedBy is always stored as an array (empty when not used).
3221
3213
  - description and blockedBy are kept separate in JSON; any joining is only for terminal rendering.
@@ -3459,7 +3451,7 @@ import { z as z12 } from "zod";
3459
3451
 
3460
3452
  // src/tools/interaction/TaskListTool/prompt.ts
3461
3453
  var DESCRIPTION8 = "Review planned tasks, readiness, and blockers";
3462
- var PROMPT8 = `Use this tool to list tasks and understand readiness. It returns ready and blocked groupings to help prioritize work. TaskList only returns id/subject/status/owner/blockedBy for summaries; use TaskGet for details.
3454
+ var PROMPT8 = `Use this tool to list tasks and understand readiness. It returns ready and blocked groupings to help prioritize work. TaskList only returns id/subject/status/blockedBy for summaries; use TaskGet for details.
3463
3455
 
3464
3456
  ## When to Use This Tool
3465
3457
  Use this tool proactively in these scenarios:
@@ -3478,7 +3470,7 @@ Skip using this tool when:
3478
3470
  NOTE that TaskList is for summaries and readiness; use TaskGet for details.
3479
3471
 
3480
3472
  ## Input Notes
3481
- - status filters the returned items; omit to exclude archived tasks by default.
3473
+ - status filters the returned items; omit to exclude deleted tasks by default.
3482
3474
  - blockedBy may be empty early in planning and will appear as dependencies are added.
3483
3475
 
3484
3476
  ## Examples of When to Use TaskList
@@ -3504,19 +3496,20 @@ Assistant: I'll list tasks to show the updated ready/blocked breakdown.
3504
3496
 
3505
3497
  // src/tools/interaction/TaskListTool/TaskListTool.tsx
3506
3498
  var inputSchema11 = z12.strictObject({
3507
- status: z12.enum(["pending", "in_progress", "completed"]).optional()
3499
+ status: z12.enum(["pending", "in_progress", "completed", "deleted"]).optional()
3508
3500
  });
3509
3501
  var filterByStatus = (tasks, statuses) => {
3510
3502
  if (!statuses || statuses.length === 0) {
3511
- return tasks.filter((item) => item.status !== "archived");
3503
+ return tasks.filter((item) => item.status !== "deleted");
3512
3504
  }
3513
3505
  const allowed = new Set(statuses);
3514
3506
  return tasks.filter((item) => allowed.has(item.status));
3515
3507
  };
3516
3508
  var mapStatusFilterInput = (input) => {
3517
3509
  if (!input) return void 0;
3518
- if (input === "completed") return ["done", "archived"];
3519
- if (input === "pending") return ["pending"];
3510
+ if (input === "completed") return ["done"];
3511
+ if (input === "deleted") return ["deleted"];
3512
+ if (input === "pending") return ["pending", "blocked"];
3520
3513
  return ["in_progress"];
3521
3514
  };
3522
3515
  var TaskListTool = {
@@ -3587,10 +3580,10 @@ var PROMPT9 = `Use this tool to update an existing task. It is the primary way t
3587
3580
  ## When to Use This Tool
3588
3581
  Use this tool proactively in these scenarios:
3589
3582
 
3590
- 1. You need to change task fields (subject/description/status/tags).
3591
- 2. You need to adjust dependencies (blockedBy, parent, related).
3592
- 3. You need to move a task across states (pending \u2192 in_progress \u2192 done).
3593
- 4. You are moving a task across states (pending \u2192 in_progress \u2192 done).
3583
+ 1. You need to change task fields (subject/description/status).
3584
+ 2. You need to adjust dependencies (blockedBy).
3585
+ 3. You need to move a task across states (pending \u2192 in_progress \u2192 completed).
3586
+ 4. You are moving a task across states (pending \u2192 in_progress \u2192 completed).
3594
3587
 
3595
3588
  ## When NOT to Use This Tool
3596
3589
 
@@ -3603,11 +3596,9 @@ NOTE that TaskUpdate should be used when you need to persist task changes.
3603
3596
  ## Input Notes
3604
3597
  - taskId is required.
3605
3598
  - listId is optional; omit to use the default list.
3606
- - If you provide status=done/archived and a parent exists, parent must already be completed.
3607
3599
  - Dependencies are validated for cycles; invalid cycles will be rejected.
3608
3600
  - Use TaskUpdate to add blockedBy after tasks are created.
3609
3601
  - You can set metadata.planFinalized="true" to trigger a full dependency validation pass.
3610
- - If an update fails due to a conflict, refetch the task and retry.
3611
3602
  - activeForm must be provided; it is not generated from subject.
3612
3603
  - blockedBy is always stored as an array (empty when not used).
3613
3604
  - description and blockedBy are kept separate in JSON; any joining is only for terminal rendering.
@@ -3620,7 +3611,7 @@ NOTE that TaskUpdate should be used when you need to persist task changes.
3620
3611
  ## Status Notes
3621
3612
  - Use in_progress for the task you are actively working on.
3622
3613
  - Use blocked when dependencies prevent progress and set blockedBy.
3623
- - Use done or archived only when all child/parent constraints are satisfied.
3614
+ - Use completed only when all dependencies are satisfied.
3624
3615
 
3625
3616
  ## Examples of When to Use TaskUpdate
3626
3617
 
@@ -3642,15 +3633,9 @@ Assistant: I'll set metadata.planFinalized to trigger the global validation.
3642
3633
  *Updates metadata.planFinalized to "true"*
3643
3634
  </example>
3644
3635
 
3645
- <example>
3646
- User: The task update failed due to a conflict.
3647
- Assistant: I'll refetch the task and retry the update.
3648
- *Fetches task, then updates again*
3649
- </example>
3650
3636
  `;
3651
3637
 
3652
3638
  // src/tools/interaction/TaskUpdateTool/TaskUpdateTool.tsx
3653
- var isCompletedStatus = (status) => status === "done" || status === "archived";
3654
3639
  var normalizeDeps = (items) => [...items ?? []].filter(Boolean).sort();
3655
3640
  var mergeDeps = (current, additions) => {
3656
3641
  const merged = [];
@@ -3682,11 +3667,10 @@ var mergeMetadata = (existing, updates) => {
3682
3667
  var mapStatusInput = (status) => {
3683
3668
  if (!status) return void 0;
3684
3669
  if (status === "completed") return "done";
3685
- if (status === "deleted") return "archived";
3670
+ if (status === "deleted") return "deleted";
3686
3671
  return status;
3687
3672
  };
3688
3673
  var depsChanged = (prev, next) => {
3689
- if (prev.parent !== next.parent) return true;
3690
3674
  const prevBlockedBy = normalizeDeps(prev.blockedBy);
3691
3675
  const nextBlockedBy = normalizeDeps(next.blockedBy);
3692
3676
  if (prevBlockedBy.length !== nextBlockedBy.length) return true;
@@ -3699,19 +3683,11 @@ var depsChanged = (prev, next) => {
3699
3683
  for (let i = 0; i < prevBlocks.length; i += 1) {
3700
3684
  if (prevBlocks[i] !== nextBlocks[i]) return true;
3701
3685
  }
3702
- const prevRelated = normalizeDeps(prev.related);
3703
- const nextRelated = normalizeDeps(next.related);
3704
- if (prevRelated.length !== nextRelated.length) return true;
3705
- for (let i = 0; i < prevRelated.length; i += 1) {
3706
- if (prevRelated[i] !== nextRelated[i]) return true;
3707
- }
3708
3686
  return false;
3709
3687
  };
3710
3688
  var getDepsSnapshot = (task) => ({
3711
3689
  blocks: task.blocks ?? [],
3712
- blockedBy: task.blockedBy ?? [],
3713
- parent: task.parent,
3714
- related: task.related ?? []
3690
+ blockedBy: task.blockedBy ?? []
3715
3691
  });
3716
3692
  var getMissingBlockedBy = (blockedBy, ids) => (blockedBy ?? []).filter((id) => !ids.has(id));
3717
3693
  var isPlanFinalized = (metadata) => {
@@ -3734,7 +3710,6 @@ var inputSchema12 = z13.strictObject({
3734
3710
  description: z13.string().optional(),
3735
3711
  activeForm: z13.string().optional(),
3736
3712
  status: z13.enum(["pending", "in_progress", "completed", "deleted"]).optional(),
3737
- owner: z13.string().optional(),
3738
3713
  metadata: metadataSchema.optional(),
3739
3714
  addBlockedBy: z13.array(z13.string()).optional(),
3740
3715
  addBlocks: z13.array(z13.string()).optional()
@@ -3806,7 +3781,6 @@ var TaskUpdateTool = {
3806
3781
  description: input.description ?? existing.description,
3807
3782
  activeForm: input.activeForm ?? existing.activeForm,
3808
3783
  status: mappedStatus ?? existing.status,
3809
- assignee: input.owner ?? existing.assignee,
3810
3784
  metadata: mergedMetadata ?? existing.metadata,
3811
3785
  blockedBy: mergedBlockedBy
3812
3786
  };
@@ -3885,7 +3859,7 @@ var TaskUpdateTool = {
3885
3859
  }
3886
3860
  const nextMetadata = mergedMetadata ?? existing.metadata;
3887
3861
  if (isPlanFinalized(nextMetadata) && !isPlanFinalized(existing.metadata)) {
3888
- const activeTasks = candidateTasks.filter((task) => task.status !== "archived");
3862
+ const activeTasks = candidateTasks.filter((task) => task.status !== "deleted");
3889
3863
  const ordered = [...activeTasks].sort(compareTaskId);
3890
3864
  const firstTaskId = ordered[0]?.id;
3891
3865
  for (const task of activeTasks) {
@@ -3916,27 +3890,6 @@ var TaskUpdateTool = {
3916
3890
  }
3917
3891
  }
3918
3892
  }
3919
- if (mappedStatus && isCompletedStatus(mappedStatus)) {
3920
- const parentId = updatedTask.parent;
3921
- if (parentId) {
3922
- const parentTask = tasks.find((task) => task.id === parentId);
3923
- if (!parentTask || !isCompletedStatus(parentTask.status)) {
3924
- yield {
3925
- type: "result",
3926
- data: createTaskToolError({
3927
- type: "validation",
3928
- code: "TASK_PARENT_INCOMPLETE",
3929
- message: "Cannot complete task while parent is incomplete",
3930
- details: {
3931
- taskId: existing.id,
3932
- parentId
3933
- }
3934
- })
3935
- };
3936
- return;
3937
- }
3938
- }
3939
- }
3940
3893
  try {
3941
3894
  for (const task of tasks) {
3942
3895
  if (!addBlocksTargets.has(task.id)) continue;
@@ -3962,7 +3915,6 @@ var TaskUpdateTool = {
3962
3915
  description: input.description,
3963
3916
  activeForm: input.activeForm,
3964
3917
  status: mappedStatus,
3965
- assignee: input.owner,
3966
3918
  metadata: metadataUpdate,
3967
3919
  blockedBy: mergedBlockedBy
3968
3920
  }
@@ -4001,29 +3953,6 @@ var TaskUpdateTool = {
4001
3953
  }
4002
3954
  };
4003
3955
  } catch (error) {
4004
- if (error instanceof TaskStoreConflictError) {
4005
- emitReminderEvent("task:conflict_detected", {
4006
- listId,
4007
- taskId: error.taskId,
4008
- expected: error.expectedBaseVersion,
4009
- actual: error.actualBaseVersion,
4010
- timestamp: Date.now()
4011
- });
4012
- yield {
4013
- type: "result",
4014
- data: createTaskToolError({
4015
- type: "conflict",
4016
- code: error.code,
4017
- message: error.message,
4018
- details: {
4019
- taskId: error.taskId,
4020
- expected: error.expectedBaseVersion,
4021
- actual: error.actualBaseVersion
4022
- }
4023
- })
4024
- };
4025
- return;
4026
- }
4027
3956
  const message = error instanceof Error ? error.message : "Task update failed";
4028
3957
  yield {
4029
3958
  type: "result",