pub const ISSUE_COPY_DETAILS: &str = "query($id0:ID!,$id1:ID!,$id2:ID!,$id3:ID!,$id4:ID!,$id5:ID!,$id6:ID!,$id7:ID!,$id8:ID!,$id9:ID!,$id10:ID!,$id11:ID!,$id12:ID!,$id13:ID!,$id14:ID!,$id15:ID!,$id16:ID!,$id17:ID!,$id18:ID!,$id19:ID!,$id20:ID!,$project:ID!,$children:Boolean!,$first:Int!,$nestedFirst:Int!,$boardItems:Int!,$duplicates:Boolean!,$relationshipEvents:[IssueTimelineItemsItemType!]=[BLOCKED_BY_ADDED_EVENT,BLOCKED_BY_REMOVED_EVENT,BLOCKING_ADDED_EVENT,BLOCKING_REMOVED_EVENT,PARENT_ISSUE_ADDED_EVENT,PARENT_ISSUE_REMOVED_EVENT]){\n i0:node(id:$id0){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i1:node(id:$id1){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i2:node(id:$id2){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i3:node(id:$id3){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i4:node(id:$id4){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i5:node(id:$id5){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i6:node(id:$id6){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i7:node(id:$id7){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i8:node(id:$id8){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i9:node(id:$id9){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i10:node(id:$id10){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i11:node(id:$id11){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i12:node(id:$id12){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i13:node(id:$id13){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i14:node(id:$id14){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i15:node(id:$id15){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i16:node(id:$id16){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i17:node(id:$id17){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i18:node(id:$id18){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i19:node(id:$id19){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n i20:node(id:$id20){__typename ...BoardIssue ... on Issue{comments(first:$first){nodes{id author{login} createdAt updatedAt body url}pageInfo{hasNextPage endCursor}} blockedBy(first:$nestedFirst){nodes{...Related}pageInfo{hasNextPage endCursor}}}}\n children:node(id:$project) @include(if:$children){... on Issue{id subIssues(first:$nestedFirst){nodes{id title} pageInfo{hasNextPage}}}}\n } fragment BoardIssue on Issue{__typename id number title body url createdAt updatedAt state stateReason(enableDuplicate:$duplicates) repository{nameWithOwner} parent{id} subIssuesSummary{total} commentCount:comments{totalCount} relationshipEvents:timelineItems(itemTypes:$relationshipEvents){totalCount}\n labels(first:$nestedFirst){nodes{id name color}pageInfo{hasNextPage}}\n projectItems(first:$boardItems){nodes{id updatedAt project{id number}\n fieldValues(first:$nestedFirst){nodes{\n ... on ProjectV2ItemFieldSingleSelectValue{name field{\n ... on ProjectV2SingleSelectField{id name options{id name}}\n }}\n ... on ProjectV2ItemFieldTextValue{text field{... on ProjectV2Field{id name}}}\n }pageInfo{hasNextPage}}}pageInfo{hasNextPage endCursor}}} fragment Related on Issue{id title body parent{id} subIssuesSummary{total}}";Expand description
ISSUE_DETAILS as a copy reads the tasks it carries: each item with the first page of
its comments and its blockedBy — the edges a copy reads of every task next, which
ISSUE carries and ISSUE_DETAILS does not — COPY_DETAIL_BATCH
at a time, so a copy of a changed task costs this read and nothing else.
A document of its own rather than a widening of ISSUE_DETAILS, whose batch size is
what task show-many is priced by and which reads no edge.
children, read only while $children holds, is which issues the issue $project has
as sub-issues — each one’s id and title, the page $nestedFirst allows — so that a
project copy, which reads its project and every task at once, knows from this same read
which tasks the project holds at the destination, and its orphan check is answered by it
rather than by a listing of the project.