@rallycry/conveyor-agent 10.13.66 → 10.13.67

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.
@@ -2435,6 +2435,13 @@ var DeleteSubtaskRequestSchema = z4.object({
2435
2435
  sessionId: z4.string(),
2436
2436
  subtaskId: z4.string()
2437
2437
  });
2438
+ var SetSubtaskParentRequestSchema = z4.object({
2439
+ sessionId: z4.string(),
2440
+ taskId: z4.string().min(1),
2441
+ detach: z4.boolean().optional(),
2442
+ ordinal: z4.number().int().nonnegative().optional(),
2443
+ followParentStatus: z4.boolean().optional()
2444
+ });
2438
2445
  var GetTaskPropertiesRequestSchema = z4.object({
2439
2446
  sessionId: z4.string()
2440
2447
  });
@@ -2893,6 +2900,16 @@ var CreateProjectTaskRequestSchema = z5.object({
2893
2900
  subProjectId: z5.string().nullable().optional(),
2894
2901
  requestingUserId: z5.string().optional()
2895
2902
  });
2903
+ var SetProjectTaskParentRequestSchema = z5.object({
2904
+ projectId: z5.string(),
2905
+ /** Card to move — id or slug. */
2906
+ taskId: z5.string().min(1),
2907
+ /** New parent (id or slug), or null to detach. */
2908
+ parentTaskId: z5.string().min(1).nullable(),
2909
+ ordinal: z5.number().int().nonnegative().optional(),
2910
+ followParentStatus: z5.boolean().optional(),
2911
+ requestingUserId: z5.string().optional()
2912
+ }).strict();
2896
2913
  var UpdateProjectTaskRequestSchema = z5.object({
2897
2914
  projectId: z5.string(),
2898
2915
  taskId: z5.string(),
@@ -10792,11 +10809,46 @@ var listSubtasksContract = defineToolContract({
10792
10809
  }
10793
10810
  }
10794
10811
  });
10812
+ var SET_PARENT_ORDINAL = "Position among the new parent's children. Defaults to after every existing sibling. A detached card has no siblings to order against, so it only matters when you adopt.";
10813
+ var SET_PARENT_WARNINGS = "The move is reported, never refused: a card that already has a pull request, live compute, a release, children of its own, or dependency edges that now cross packs comes back with a warning in the result. Its branch is NOT re-cut against the new parent's feature branch.";
10814
+ var setTaskParentContract = defineToolContract({
10815
+ name: "set_task_parent",
10816
+ agent: {
10817
+ description: `Adopt an EXISTING card into this card's pack, or eject one of this card's children. The card keeps its own chat, plan, and history \u2014 it moves under (or out from) the current card, inherits the board, and lands after the current children. To make a NEW child use create_subtask instead. ${SET_PARENT_WARNINGS}`,
10818
+ fields: {
10819
+ taskId: f.string({
10820
+ desc: "Id, slug, or branch name of the card to move. Must live in this project."
10821
+ }),
10822
+ detach: f.optional(
10823
+ f.boolean({
10824
+ desc: "Eject the card from this pack instead of adopting it \u2014 it becomes a standalone card and stops following the parent's status. The card must already be a child of the current card."
10825
+ })
10826
+ ),
10827
+ ordinal: f.optional(f.number({ desc: SET_PARENT_ORDINAL })),
10828
+ followParentStatus: f.optional(f.boolean({ desc: AGENT_FOLLOW_PARENT_STATUS }))
10829
+ }
10830
+ },
10831
+ mcp: {
10832
+ description: `Re-parent an existing card: pass a parentTaskId to adopt it into that card's pack, or null to detach it into a standalone card. The card keeps its chat, plan, and history; adopting also moves it to the parent's board and orders it after the parent's existing children. Use create_subtask for a NEW child, and move_card to move a card to another PROJECT. Pass projectId to target a specific project; otherwise the configured default project is used. ${SET_PARENT_WARNINGS}`,
10833
+ fields: {
10834
+ projectId: mcpProjectId,
10835
+ taskId: f.string({ desc: "Id or slug of the card to move" }),
10836
+ parentTaskId: f.nullable(
10837
+ f.string({
10838
+ desc: "Id or slug of the new parent, or null to detach the card from its current parent. Must be in the same project, and can be neither the card itself nor one of its own descendants."
10839
+ })
10840
+ ),
10841
+ ordinal: f.optional(f.number({ desc: SET_PARENT_ORDINAL })),
10842
+ followParentStatus: f.optional(f.boolean({ desc: MCP_FOLLOW_PARENT_STATUS }))
10843
+ }
10844
+ }
10845
+ });
10795
10846
  var subtasksContracts = [
10796
10847
  createSubtaskContract,
10797
10848
  updateSubtaskContract,
10798
10849
  deleteSubtaskContract,
10799
- listSubtasksContract
10850
+ listSubtasksContract,
10851
+ setTaskParentContract
10800
10852
  ];
10801
10853
  var mcpTaskIdOrSlug = f.string({ desc: "The task ID or slug" });
10802
10854
  var listTaskFilesContract = defineToolContract({
@@ -12039,12 +12091,33 @@ function buildCreateSubtaskTool(connection) {
12039
12091
  });
12040
12092
  const unmatched = result.unmatchedTags ?? [];
12041
12093
  const tagNote = unmatched.length > 0 ? ` These tag names matched no project tag and were skipped: ${unmatched.join(", ")}. Use list_tags to see the glossary.` : "";
12094
+ return textResult(`Subtask created with ID: ${result.id} (slug: ${result.slug})${tagNote}`);
12095
+ } catch (error) {
12042
12096
  return textResult(
12043
- `Subtask created with ID: ${result.id} (slug: ${result.slug})${tagNote}`
12097
+ `Failed to create subtask: ${error instanceof Error ? error.message : "Unknown error"}`
12044
12098
  );
12099
+ }
12100
+ }
12101
+ );
12102
+ }
12103
+ function buildSetTaskParentTool(connection) {
12104
+ return defineContractTool(
12105
+ setTaskParentContract,
12106
+ async ({ taskId, detach, ordinal, followParentStatus }) => {
12107
+ try {
12108
+ const result = await connection.call("setSubtaskParent", {
12109
+ sessionId: connection.sessionId,
12110
+ taskId,
12111
+ ...detach !== void 0 && { detach },
12112
+ ...ordinal !== void 0 && { ordinal },
12113
+ ...followParentStatus !== void 0 && { followParentStatus }
12114
+ });
12115
+ const warnings = result.warnings.length > 0 ? ` Warnings: ${result.warnings.join(", ")}.` : "";
12116
+ const move = detach ? `Card ${result.slug} detached \u2014 it is now a standalone card` : `Card ${result.slug} adopted into this pack`;
12117
+ return textResult(`${move} (status: ${result.status}).${warnings}`);
12045
12118
  } catch (error) {
12046
12119
  return textResult(
12047
- `Failed to create subtask: ${error instanceof Error ? error.message : "Unknown error"}`
12120
+ `Failed to set task parent: ${error instanceof Error ? error.message : "Unknown error"}`
12048
12121
  );
12049
12122
  }
12050
12123
  }
@@ -12191,6 +12264,7 @@ function buildPmTools(connection, options) {
12191
12264
  const tools = [
12192
12265
  buildUpdateTaskTool(connection),
12193
12266
  buildCreateSubtaskTool(connection),
12267
+ buildSetTaskParentTool(connection),
12194
12268
  buildUpdateSubtaskTool(connection),
12195
12269
  buildDeleteSubtaskTool(connection),
12196
12270
  buildListSubtasksTool(connection)
package/dist/cli.js CHANGED
@@ -35,7 +35,7 @@ import {
35
35
  sampleKeyUsage,
36
36
  statWorkspacePath,
37
37
  workspacePathExists
38
- } from "./chunk-75FUOUYX.js";
38
+ } from "./chunk-XPZPR6NS.js";
39
39
  import {
40
40
  reportBootMilestone
41
41
  } from "./chunk-KG4ORL3Y.js";
package/dist/index.js CHANGED
@@ -13,7 +13,7 @@ import {
13
13
  unshallowRepo,
14
14
  updateRemoteToken,
15
15
  workspacePathExists
16
- } from "./chunk-75FUOUYX.js";
16
+ } from "./chunk-XPZPR6NS.js";
17
17
  import "./chunk-KG4ORL3Y.js";
18
18
  import "./chunk-IA45XHOA.js";
19
19
  import {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rallycry/conveyor-agent",
3
- "version": "10.13.66",
3
+ "version": "10.13.67",
4
4
  "description": "Conveyor Agent Runner v10 - PTY harness for the task chat (SDK harness for audit/project-chat). Agent-as-User architecture with BaseService patterns. Works locally too.",
5
5
  "keywords": [
6
6
  "agent",
@@ -40,7 +40,7 @@
40
40
  "@modelcontextprotocol/sdk": "^1.12.1",
41
41
  "node-pty": "^1.0.0",
42
42
  "socket.io-client": "^4.8.3",
43
- "tar": "^7.5.19",
43
+ "tar": "^7.5.21",
44
44
  "zod": "^4.0.0"
45
45
  },
46
46
  "devDependencies": {