manageTaskLabels
Adds and/or removes per-beta labels on a single task, and returns the task's resulting labels. Get assignable ids from listBetaLabels (create new labels with createBetaLabels) — these are NOT the workspace ticket tags from listTicketTags or the tester tags from listTesterTags. Labels are manager-internal and assigning one sends no notification, but on a running or paused beta project a label change does mark the beta as having unpublished changes (commitTaskChanges will report something to publish). Adding a label the task already has, or removing one it does not have, is a no-op. On a draft or scheduled beta project the change is applied immediately. On a running or paused beta project the change is STAGED: testers do not see it until commitTaskChanges publishes all staged changes (revertTaskChanges discards them; getBetaTasks with version 'unpublished' shows the staged state). While staging, these tools accept BOTH the live id and the staged id of a task or step, but always respond with the STAGED row — expect ids you did not pass in, with liveVersionId linking back to the live row. Content of finished or archived beta projects cannot be edited.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| taskId | Yes | ID of the task, from getBetaTasks. Never invent ids. | |
| productId | Yes | ID of the beta project to query. Get valid IDs from the listProducts tool. | |
| addLabelIds | No | Label ids to add, from listBetaLabels. | |
| removeLabelIds | No | Label ids to remove, from listBetaLabels. |