From d15c7288c0212a063f90cdb1f57090a496cd23f0 Mon Sep 17 00:00:00 2001 From: sriramveeraghanta Date: Tue, 28 Jul 2026 17:29:27 +0530 Subject: [PATCH 1/3] docs: rewrite work item copy section for the unified copy flow plane-ee#8543 replaced the "Copy in same project / Copy in different project" submenu with a single "Make a copy" modal with a destination project picker, and reconciled three divergent copy implementations against one spec. The existing section documented the old submenu and was wrong about behavior in both directions: it claimed a same-project copy keeps the title (it now gets a "(Copy)" suffix), and described a cross-project copy as only adapting the identifier and default state while omitting that assignees, labels, modules, cycle, estimate and custom property values are all cleared. Replaces the two sub-sections with a same-vs-different comparison table covering every field in the PR's spec, a note on why project-scoped fields cannot cross the boundary, the custom-properties-into-description fallback, and the epic / archived-item limits. Drops the #copy-in-same-project and #copy-in-different-project anchors. Nothing in the source tree links to them. Claude-Session: https://claude.ai/code/session_01Tjjd2h2NfSWbhnMn1EKGj2 --- docs/core-concepts/issues/overview.md | 45 +++++++++++++++++++++------ 1 file changed, 35 insertions(+), 10 deletions(-) diff --git a/docs/core-concepts/issues/overview.md b/docs/core-concepts/issues/overview.md index 643568a..3db9392 100644 --- a/docs/core-concepts/issues/overview.md +++ b/docs/core-concepts/issues/overview.md @@ -101,19 +101,44 @@ A work item in Project A can be a sub-work item of a work item in Project B. The ## Duplicate work items -When you need to create similar work items or replicate a work item's structure and properties, Plane lets you duplicate existing work items either within the same project or across different projects. +Use **Make a copy** to replicate a work item — either in its own project or in another project in the workspace. It's a quick way to spin up recurring tasks, reuse a well-structured work item as a template, or hand work off to another team. + +Click the **•••** menu in the work item header and select **Make a copy**. In the modal, pick the destination project — it defaults to the current one — and confirm. The copy always gets a fresh ID from the destination project's sequence. + +### What gets copied + +How much of the original carries over depends on whether you copy in place or into a different project. Labels, modules, cycles, and estimates belong to a single project, so they can't follow a work item across the boundary. + +| Property | Same project | Different project | +| --------------------- | ---------------- | ----------------------------------- | +| Title | ` (Copy)` | Unchanged | +| Work item type | Retained | Destination project's default type | +| State | Retained | Destination project's default state | +| Priority | Retained | Retained | +| Start and due dates | Retained | Retained | +| Description | Copied | Copied | +| Links and attachments | Copied | Copied | +| Assignees | Retained | Cleared | +| Labels | Retained | Cleared | +| Modules | Retained | Cleared | +| Cycle | Retained | Cleared | +| Estimate | Retained | Cleared | +| Custom properties | Retained | Appended to the description as text | +| Releases | Retained | Retained | +| Sub-work items | Not copied | Not copied | +| Customer requests | Not copied | Not copied | + +The copy is also linked back to the original with a **Duplicate of** relation, so you can always trace where it came from. -To duplicate a work item, click the **•••** menu in the work item header and select **Make a copy**. You'll see two options: - -### Copy in same project - -Creates an identical work item within the current project with all the same properties, description, and settings. The new work item gets a fresh identifier and maintains the same title, description, state, and priority attributes. - -### Copy in different project +::: tip +Custom property values are project-specific, so they can't be carried into another project's properties. Instead of dropping them, Plane writes them into the bottom of the copied work item's description — nothing is lost, but you'll need to re-enter them against the destination project's own properties if you want them as structured values. +::: -Duplicates the work item to another project in your workspace. This is particularly useful when you have similar tasks across multiple projects or want to move work items between teams. The copied work item adapts to the destination project's identifier format and default state. +### Notes and limits -Duplicating work items is perfect for replicating recurring tasks, or moving work between project phases while maintaining all the essential context and settings. +- **Epics** can only be copied into a project that has epics enabled. If the destination project doesn't, the copy is skipped. +- **Archived work items** are copied as active work items, not as archived ones. +- Copying multiple work items at once via [bulk operations](/core-concepts/issues/bulk-ops) follows exactly the same rules as copying a single one. ## Add dependencies From 021fefa2c842f08cdc189654dcae84e3ac38a296 Mon Sep 17 00:00:00 2001 From: sriramveeraghanta <veeraghanta.sriram@gmail.com> Date: Tue, 28 Jul 2026 17:38:40 +0530 Subject: [PATCH 2/3] docs: correct the epic limit on work item copy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two errors in one line. The guard in _resolve_copy_type only runs on the cross-project branch — same-project copies return original_issue.type before it is reached — so the limit is not the blanket rule the note implied. And "skipped" described bulk behavior: the single-item duplicate endpoint returns 400 with "Epics are not enabled for the selected project", so the user gets an error and no copy. Splits the two cases and moves the skip-and-continue behavior to the bulk bullet, which is the only place it applies. Claude-Session: https://claude.ai/code/session_01Tjjd2h2NfSWbhnMn1EKGj2 --- docs/core-concepts/issues/overview.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/core-concepts/issues/overview.md b/docs/core-concepts/issues/overview.md index 3db9392..1896b8d 100644 --- a/docs/core-concepts/issues/overview.md +++ b/docs/core-concepts/issues/overview.md @@ -136,9 +136,9 @@ Custom property values are project-specific, so they can't be carried into anoth ### Notes and limits -- **Epics** can only be copied into a project that has epics enabled. If the destination project doesn't, the copy is skipped. +- **Epics** copied into a different project need an Epic type in the destination — that is, the destination project must have [Work item types](/core-concepts/issues/epics) enabled. If it doesn't, Plane refuses the copy with an error instead of demoting the epic to a regular work item. Copying an epic within its own project always works. - **Archived work items** are copied as active work items, not as archived ones. -- Copying multiple work items at once via [bulk operations](/core-concepts/issues/bulk-ops) follows exactly the same rules as copying a single one. +- Copying multiple work items at once via [bulk operations](/core-concepts/issues/bulk-ops) follows the same field rules as copying a single one. The one difference is the epic case above: in a bulk copy, epics that can't land in the destination are skipped and the rest of the selection still copies. ## Add dependencies From aae139ffc8983558ec3f11b144717cbc5134694a Mon Sep 17 00:00:00 2001 From: sriramveeraghanta <veeraghanta.sriram@gmail.com> Date: Tue, 28 Jul 2026 17:46:49 +0530 Subject: [PATCH 3/3] docs: document bulk copy on the bulk operations page MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The duplicate section pointed at bulk-ops as the reference for bulk copying, but that page never mentioned Make a copy at all — the link landed on a page with no copy content. Adds a Copy work items section covering the bulk-specific parts (the 1000-item cap, create permission in the destination, the background run, and epics being skipped in a mixed selection), deferring the field-by-field rules to the table in the duplicate section rather than duplicating them. Retargets the overview link at that section. Claude-Session: https://claude.ai/code/session_01Tjjd2h2NfSWbhnMn1EKGj2 --- docs/core-concepts/issues/bulk-ops.md | 13 +++++++++++++ docs/core-concepts/issues/overview.md | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/docs/core-concepts/issues/bulk-ops.md b/docs/core-concepts/issues/bulk-ops.md index ea26eef..ea9c48c 100644 --- a/docs/core-concepts/issues/bulk-ops.md +++ b/docs/core-concepts/issues/bulk-ops.md @@ -31,6 +31,19 @@ You can modify several properties across multiple work items simultaneously: - Set or modify modules - Add or update start and due dates +## Copy work items + +Select the work items you want, then choose **Make a copy** from the bulk actions. Pick a destination project — it defaults to the current one — and confirm. + +Which properties survive the copy depends on whether the destination is the same project or a different one. See [What gets copied](/core-concepts/issues/overview#what-gets-copied) for the full field-by-field breakdown; bulk copies follow the same rules as copying a single work item. + +A few things specific to copying in bulk: + +- You can copy up to **1000 work items** at a time. +- You need permission to create work items in the destination project. +- The copy runs in the background, so the new work items appear in the destination project shortly after you confirm rather than all at once. +- If the selection contains epics and the destination project has no Epic type, those epics are skipped and the rest of the selection still copies. + ## Subscribe to multiple work items If you need to keep track of several work items at once, you can subscribe to multiple work items in a single operation. This ensures you'll receive notifications about any updates to those work items. diff --git a/docs/core-concepts/issues/overview.md b/docs/core-concepts/issues/overview.md index 1896b8d..9c4cec6 100644 --- a/docs/core-concepts/issues/overview.md +++ b/docs/core-concepts/issues/overview.md @@ -138,7 +138,7 @@ Custom property values are project-specific, so they can't be carried into anoth - **Epics** copied into a different project need an Epic type in the destination — that is, the destination project must have [Work item types](/core-concepts/issues/epics) enabled. If it doesn't, Plane refuses the copy with an error instead of demoting the epic to a regular work item. Copying an epic within its own project always works. - **Archived work items** are copied as active work items, not as archived ones. -- Copying multiple work items at once via [bulk operations](/core-concepts/issues/bulk-ops) follows the same field rules as copying a single one. The one difference is the epic case above: in a bulk copy, epics that can't land in the destination are skipped and the rest of the selection still copies. +- You can copy work items in bulk, too. The field rules above apply there as well — see [Copy work items](/core-concepts/issues/bulk-ops#copy-work-items) for the selection limit, permissions, and how epics in a mixed selection are handled. ## Add dependencies