@rallycry/conveyor-agent 8.3.3 → 8.4.0

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.
@@ -11,7 +11,7 @@ import {
11
11
  ensureClaudeCredentials,
12
12
  removeConveyorCredentials,
13
13
  sessionTranscriptPath
14
- } from "./chunk-VBVE7I5Y.js";
14
+ } from "./chunk-5QDQRKND.js";
15
15
 
16
16
  // src/setup/bootstrap.ts
17
17
  var BOOTSTRAP_TIMEOUT_MS = 3e4;
@@ -8778,7 +8778,7 @@ function buildStopTaskTool(connection, getRequestingUserId) {
8778
8778
  function buildMergePRTool(connection, getRequestingUserId) {
8779
8779
  const projectId = connection.projectId;
8780
8780
  return defineTool(
8781
- "merge_pr",
8781
+ "approve_and_merge_pr",
8782
8782
  "Approve and merge a task's PR. Preconditions: task in ReviewPR with an open PR. Returns { merged }: false means automerge queued \u2014 wait for status to flip to ReviewDev.",
8783
8783
  { task_id: z15.string().describe("The task ID whose PR should be approved and merged") },
8784
8784
  async ({ task_id }) => {
@@ -8958,11 +8958,23 @@ function buildProjectSuggestionDependencyTools(connection, getRequestingUserId =
8958
8958
  function errorMessage(error) {
8959
8959
  return error instanceof Error ? error.message : "Unknown error";
8960
8960
  }
8961
+ var DESCRIPTION_PREVIEW_CHARS = 300;
8962
+ function summarizeTask(task) {
8963
+ if (typeof task !== "object" || task === null) return task;
8964
+ const { plan, description, ...rest } = task;
8965
+ const summary = { ...rest };
8966
+ summary.description = typeof description === "string" && description.length > DESCRIPTION_PREVIEW_CHARS ? `${description.slice(0, DESCRIPTION_PREVIEW_CHARS)}\u2026 [truncated \u2014 use get_project_task for the full description]` : description ?? null;
8967
+ summary.hasPlan = typeof plan === "string" && plan.length > 0;
8968
+ return summary;
8969
+ }
8970
+ function summarizeTasks(tasks) {
8971
+ return Array.isArray(tasks) ? tasks.map(summarizeTask) : tasks;
8972
+ }
8961
8973
  function buildListTasksTool(connection) {
8962
8974
  const projectId = connection.projectId;
8963
8975
  return defineTool(
8964
8976
  "list_tasks",
8965
- "List tasks in the project. Optionally filter by status or assignment (a specific assignee, or unassigned tasks).",
8977
+ "List tasks in the project. Optionally filter by status or assignment (a specific assignee, or unassigned tasks). Returns summaries \u2014 plan omitted, description truncated; use get_project_task for full details.",
8966
8978
  {
8967
8979
  status: z17.string().optional().describe("Filter by task status"),
8968
8980
  assigneeId: z17.string().optional().describe("Filter by assigned user ID"),
@@ -8972,7 +8984,7 @@ function buildListTasksTool(connection) {
8972
8984
  async (params) => {
8973
8985
  try {
8974
8986
  const tasks = await connection.call("listProjectTasks", { projectId, ...params });
8975
- return textResult(JSON.stringify(tasks, null, 2));
8987
+ return textResult(JSON.stringify(summarizeTasks(tasks), null, 2));
8976
8988
  } catch (error) {
8977
8989
  return textResult(`Failed to list tasks: ${errorMessage(error)}`);
8978
8990
  }
@@ -9001,7 +9013,7 @@ function buildSearchTasksTool(connection) {
9001
9013
  const projectId = connection.projectId;
9002
9014
  return defineTool(
9003
9015
  "search_tasks",
9004
- "Search tasks by tags, text query, status filters, or assignment.",
9016
+ "Search tasks by tags, text query, status filters, or assignment. Returns summaries \u2014 plan omitted, description truncated; use get_project_task for full details.",
9005
9017
  {
9006
9018
  tagNames: z17.array(z17.string()).optional().describe("Filter by tag names"),
9007
9019
  searchQuery: z17.string().optional().describe("Text search in title/description"),
@@ -9013,7 +9025,7 @@ function buildSearchTasksTool(connection) {
9013
9025
  async (params) => {
9014
9026
  try {
9015
9027
  const tasks = await connection.call("searchProjectTasks", { projectId, ...params });
9016
- return textResult(JSON.stringify(tasks, null, 2));
9028
+ return textResult(JSON.stringify(summarizeTasks(tasks), null, 2));
9017
9029
  } catch (error) {
9018
9030
  return textResult(`Failed to search tasks: ${errorMessage(error)}`);
9019
9031
  }
@@ -10099,7 +10111,7 @@ var ProjectRunner = class {
10099
10111
  async handleAuditTags(request) {
10100
10112
  this.connection.emitStatus("busy");
10101
10113
  try {
10102
- const { handleTagAudit } = await import("./tag-audit-handler-22DR2KRE.js");
10114
+ const { handleTagAudit } = await import("./tag-audit-handler-5VABVMRE.js");
10103
10115
  await handleTagAudit(request, this.connection, this.projectDir);
10104
10116
  } catch (error) {
10105
10117
  const msg = parseErrorMessage(error);
@@ -10122,7 +10134,7 @@ var ProjectRunner = class {
10122
10134
  async handleAuditTasks(request) {
10123
10135
  this.connection.emitStatus("busy");
10124
10136
  try {
10125
- const { handleTaskAudit } = await import("./task-audit-handler-YIESAVO7.js");
10137
+ const { handleTaskAudit } = await import("./task-audit-handler-CSMHTJHU.js");
10126
10138
  await handleTaskAudit(request, this.connection, this.projectDir);
10127
10139
  } catch (error) {
10128
10140
  const msg = parseErrorMessage(error);
@@ -10263,4 +10275,4 @@ export {
10263
10275
  loadConveyorConfig,
10264
10276
  unshallowRepo
10265
10277
  };
10266
- //# sourceMappingURL=chunk-TELYL5WO.js.map
10278
+ //# sourceMappingURL=chunk-OOPM5RT4.js.map