> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ravenna.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Parent & child tickets

> Create parent and child ticket relationships across channels and workspaces to break down complex projects and coordinate cross-team work.

Create parent-child relationships between tickets to organize complex work into manageable components. Parent and child tickets can exist across different <Tooltip headline="Channels" tip="Channels organize tickets by team, topic, or workflow" cta="Learn about channels" href="/documentation/platform/channels">channels</Tooltip> and <Tooltip headline="Workspaces" tip="Separate environments for different teams or departments" cta="Learn about workspaces" href="/documentation/platform/workspaces/overview">workspaces</Tooltip>, enabling cross-team collaboration and process tracking.

<View title="Human" icon="user">
  ***

  ## Understanding parent-child relationships

  Parent tickets contain one or more child tickets (also called subtickets). Use this hierarchy to break down large projects into smaller work items while maintaining clear connections between related tickets.

  <Info>
    Parent and child tickets can exist in different channels and workspaces. This allows teams like IT and HR to collaborate and track shared processes while maintaining separate work environments.
  </Info>

  ***

  ## Add parent tickets

  Establish a parent-child relationship by adding a parent to an existing ticket:

  <AccordionGroup>
    <Accordion title="From ticket details" icon="ticket" defaultOpen>
      <Steps>
        <Step title="Open ticket">
          Navigate to the ticket details page.
        </Step>

        <Step title="Open relations menu">
          Click the actions dropdown and select **Relations > Add Parent Ticket**.
        </Step>

        <Step title="Select parent">
          Browse and select an existing ticket to serve as the parent.
        </Step>

        <Step title="Confirm">
          Click **Save** to establish the relationship.
        </Step>
      </Steps>
    </Accordion>

    <Accordion title="From ticket lists" icon="list">
      <Steps>
        <Step title="Locate ticket">
          Find the ticket in any ticket list or table view.
        </Step>

        <Step title="Open relations menu">
          Click the actions dropdown in the rightmost column and select **Relations > Add Parent Ticket**.
        </Step>

        <Step title="Select parent">
          Browse and select an existing ticket to serve as the parent.
        </Step>

        <Step title="Confirm">
          Click **Save** to establish the relationship.
        </Step>
      </Steps>
    </Accordion>
  </AccordionGroup>

  ***

  ## Add child tickets

  Add child tickets (subtickets) to a parent ticket:

  <AccordionGroup>
    <Accordion title="From ticket details" icon="plus" defaultOpen>
      Click the **Add Subticket** button in the ticket details page to create a new child ticket.
    </Accordion>

    <Accordion title="From actions menu" icon="menu">
      Click the actions dropdown, select **Relations > Add Subticket**, then create the new child ticket.
    </Accordion>

    <Accordion title="During ticket creation" icon="file-plus">
      When creating a new ticket, specify a parent ticket to establish the relationship immediately.
    </Accordion>
  </AccordionGroup>

  ***

  ## View relationships

  <AccordionGroup>
    <Accordion title="Parent information" icon="arrow-up" defaultOpen>
      Child tickets display their parent ticket number and channel prefix. In ticket lists, child tickets show a parent badge you can click to navigate to the parent.
    </Accordion>

    <Accordion title="Child tickets list" icon="list">
      Parent tickets show a list of their child tickets with titles, descriptions, status, and priority. In ticket lists, parent tickets display a count of their child tickets.
    </Accordion>

    <Accordion title="Cross-channel and cross-workspace relationships" icon="shuffle">
      Parent and child tickets can exist in different channels and workspaces, maintaining relationships across teams, departments, and project areas. This enables collaboration between teams like IT and HR while each team maintains their own workspace.
    </Accordion>

    <Accordion title="Grouping and sorting" icon="layers">
      Group or sort tickets by parent in ticket lists and tables to see all related work items together.
    </Accordion>
  </AccordionGroup>

  ***

  ## Manage relationships

  <AccordionGroup>
    <Accordion title="Archive behavior" icon="archive" defaultOpen>
      Archiving a parent ticket automatically archives all child tickets throughout the entire hierarchy. This ensures completed or paused projects are properly organized.
    </Accordion>

    <Accordion title="Unarchive behavior" icon="archive-restore">
      Unarchiving a parent ticket automatically unarchives all child tickets, restoring the complete project structure with relationships intact. This applies to both individual and bulk unarchive actions from the ticket list.
    </Accordion>

    <Accordion title="Delete behavior" icon="trash">
      Deleting a parent ticket permanently deletes all child tickets throughout the entire hierarchy. This ensures clean data organization when removing projects.

      <Warning>
        Deleting a parent ticket permanently deletes all child tickets. This action cannot be undone.
      </Warning>
    </Accordion>
  </AccordionGroup>
</View>

<View title="Agent" icon="bot">
  ## Mental model

  Parent-child relationships create a hierarchy between tickets. A parent ticket represents a larger piece of work, and its child tickets (subtickets) represent the component parts. Each ticket in the hierarchy is a full ticket with its own status, assignee, channel, and lifecycle.

  Key distinction: parent-child tickets vs tasks.

  | Feature             | Parent-child tickets                             | Tasks                                  |
  | ------------------- | ------------------------------------------------ | -------------------------------------- |
  | **Nature**          | Each is a full ticket with independent lifecycle | Checklist items within a single ticket |
  | **Status**          | Each has its own status workflow                 | Complete/incomplete only               |
  | **Cross-workspace** | Parent and child can be in different workspaces  | Tasks exist within one ticket          |
  | **Assignee**        | Each ticket has its own assignee                 | Tasks can have multiple assignees      |
  | **Depth**           | Unlimited nesting                                | 3 levels maximum                       |
  | **Notifications**   | Each ticket has independent notifications        | Task assignees become ticket followers |

  Use parent-child tickets when component work needs independent tracking, different assignees with full ticket lifecycle, or cross-team visibility. Use tasks for simple checklists within a single ticket.

  ***

  ## Relations vs links vs sharing

  | Mechanism                    | Connects                        | Purpose                                              |
  | ---------------------------- | ------------------------------- | ---------------------------------------------------- |
  | **Relations (parent-child)** | Ticket to ticket within Ravenna | Hierarchical work breakdown with cascade behaviors   |
  | **Links**                    | Ticket to external URL          | Reference to external resources (Jira, GitHub, docs) |
  | **Sharing**                  | Ticket to additional channels   | Cross-team visibility without moving the ticket      |
  | **Moving**                   | Ticket to different workspace   | Full ownership transfer                              |

  ***

  ## Cascade behaviors

  Parent-child relationships have important cascade behaviors:

  * **Archive**: Archiving a parent archives all children recursively through the entire hierarchy.
  * **Unarchive**: Unarchiving a parent unarchives all children recursively. You can also bulk unarchive by selecting multiple archived tickets from the ticket list.
  * **Delete**: Deleting a parent permanently deletes all children recursively. This is irreversible.

  These cascades apply to the entire descendant tree, not just direct children.

  ***

  ## Cross-workspace relationships

  Parent and child tickets can exist in different channels and workspaces. This enables patterns like:

  * An IT parent ticket with HR child tickets for onboarding processes.
  * A project management parent ticket with engineering, design, and QA child tickets in their respective workspaces.

  Cross-workspace relationships are visible from both sides. Child tickets display their parent's ticket number and channel prefix. Parent tickets list their children with status and priority.

  ***

  ## Relations in views

  * Tickets can be grouped or sorted by parent in list and table views.
  * Parent tickets display a count of child tickets.
  * Child tickets show a parent badge that links to the parent.

  ***

  ## Constraints and gotchas

  * A ticket can have at most one parent. A ticket can have many children.
  * Deleting a parent permanently deletes all descendants. This is the most destructive cascade behavior in the system.
  * Archiving and unarchiving cascade through the entire hierarchy.
  * Parent-child relationships are maintained across workspace moves. If a child ticket is moved to a different workspace, the relationship persists.
  * There is no "related tickets" relationship type. Only parent-child hierarchy exists. For non-hierarchical connections, use links.
  * Child ticket status does not automatically update the parent. Completing all children does not close the parent.
  * Creating a child ticket from the parent's detail page automatically establishes the relationship.
</View>
