issue_tree
    Preparing search index...

    Interface CachedIssue

    A raw issue as persisted in the cache (spec §5.2 full field set).

    Core identity fields: source, repo, number, databaseId, title, body, state, stateReason, url, createdAt, updatedAt, closedAt, closed.

    Author / editor fields: author, editor, authorAssociation.

    Lock / pin fields: locked, activeLockReason, isPinned.

    Timestamps: lastEditedAt, publishedAt.

    Taxonomy fields: labels, issueType, milestone.

    Participant fields: assignees, participants.

    Reaction fields: reactionGroups.

    Hierarchy fields: parent, subIssues, trackedIssues, trackedInIssues, subIssuesSummary, linkedBranches.

    PR linkage: closedByPullRequests.

    Duplicate detection: duplicateOf.

    Comments: comments (empty until phase 3).

    interface CachedIssue {
        activeLockReason: string | null;
        assignees: string[];
        author: string | null;
        authorAssociation: string;
        body: string;
        closed: boolean;
        closedAt: string | null;
        closedByPullRequests: {
            number: number;
            repo: string;
            state: string;
            title: string;
            url: string;
        }[];
        comments: CachedComment[];
        createdAt: string;
        databaseId: number
        | null;
        duplicateOf: string | null;
        editor: string | null;
        isPinned: boolean;
        issueType: string | null;
        labels: string[];
        lastEditedAt: string | null;
        linkedBranches: string[];
        locked: boolean;
        milestone: { dueOn: string | null; state: string; title: string } | null;
        number: number;
        parent: string | null;
        participants: string[];
        publishedAt: string | null;
        reactionGroups: { content: string; count: number }[];
        repo: string;
        source: IssueSource;
        state: "OPEN" | "CLOSED";
        stateReason: string | null;
        subIssues: string[];
        subIssuesSummary: {
            completed: number;
            percentCompleted: number;
            total: number;
        };
        title: string;
        trackedInIssues: string[];
        trackedIssues: string[];
        updatedAt: string;
        url: string;
    }
    Index

    Properties

    activeLockReason: string | null

    Reason the conversation is locked, or null when unlocked or unspecified.

    assignees: string[]

    Assignee logins.

    author: string | null

    Author login, or null when the author has been deleted.

    authorAssociation: string

    Author's association with the repo (OWNER, MEMBER, CONTRIBUTOR, NONE, ...).

    body: string

    Issue body markdown; empty string when GitHub returned null.

    closed: boolean

    True when the issue is currently closed.

    closedAt: string | null

    ISO timestamp the issue was closed, or null when still open.

    closedByPullRequests: {
        number: number;
        repo: string;
        state: string;
        title: string;
        url: string;
    }[]

    Pull requests that, when merged, would close this issue.

    Type Declaration

    • number: number

      PR number within its repository.

    • repo: string

      "owner/name" of the PR's repository.

    • state: string

      PR state (OPEN, CLOSED, MERGED).

    • title: string

      PR title.

    • url: string

      Canonical GitHub URL for the PR.

    comments: CachedComment[]

    Comments on this issue. Empty until phase 3 fetches them.

    createdAt: string

    ISO timestamp the issue was created.

    databaseId: number | null

    GitHub's internal numeric database id, or null when not exposed.

    duplicateOf: string | null

    Canonical issue key this one is a duplicate of (from the MARKED_AS_DUPLICATE_EVENT slice), or null.

    editor: string | null

    Last editor login, or null when never edited or the editor was deleted.

    isPinned: boolean

    True when the issue is pinned on the repository.

    issueType: string | null

    GitHub Projects issue-type name (e.g. Bug, Feature), or null when unset.

    labels: string[]

    Label names attached to the issue, in GitHub's order.

    lastEditedAt: string | null

    ISO timestamp the body/title was last edited, or null when never edited.

    linkedBranches: string[]

    Names of branches GitHub has linked to this issue.

    locked: boolean

    True when conversation is locked.

    milestone: { dueOn: string | null; state: string; title: string } | null

    Milestone the issue belongs to, or null when none is assigned.

    Type Declaration

    • { dueOn: string | null; state: string; title: string }
      • dueOn: string | null

        ISO due-date timestamp, or null when no due date is set.

      • state: string

        Milestone state (OPEN / CLOSED).

      • title: string

        Milestone title.

    • null
    number: number

    Issue number within the repository.

    parent: string | null

    Parent issue key in "owner/repo#n" form, or null when this issue has no parent.

    participants: string[]

    Participant logins (everyone who has commented or otherwise engaged).

    publishedAt: string | null

    ISO timestamp the issue was published, or null when not yet published.

    reactionGroups: { content: string; count: number }[]

    Per-emoji reaction totals on the issue body.

    Type Declaration

    • content: string

      GitHub reaction content code (e.g. THUMBS_UP, HEART).

    • count: number

      Number of users who reacted with that emoji.

    repo: string

    The issue's repository in "owner/name" form.

    source: IssueSource

    Whether this issue came from a full repo scan or as an external blocker fetch.

    state: "OPEN" | "CLOSED"

    Raw GitHub state.

    stateReason: string | null

    State qualifier (e.g. COMPLETED, NOT_PLANNED, DUPLICATE), or null when unset.

    subIssues: string[]

    Sub-issue keys in "owner/repo#n" form.

    subIssuesSummary: { completed: number; percentCompleted: number; total: number }

    Aggregate progress numbers for this issue's sub-issues.

    Type Declaration

    • completed: number

      Number of sub-issues currently closed.

    • percentCompleted: number

      Whole-number percent complete (0-100).

    • total: number

      Total number of sub-issues.

    title: string

    Issue title.

    trackedInIssues: string[]

    Issue keys that track this issue back.

    trackedIssues: string[]

    Issue keys this issue tracks (Projects v2 "tracked issues").

    updatedAt: string

    ISO timestamp the issue was last updated.

    url: string

    Canonical GitHub URL for the issue.