GitHub Issue Standard - joeroberts/release-radar GitHub Wiki

GitHub Issue Standard

This document defines how we use GitHub Issues and related planning features. It is the reference for agents working with our issues and for skills that perform GitHub planning or backlog management.

The operating procedures belong in the relevant skills. This standard defines the objects, relationships, metadata, and requirements those skills must follow.

1. Planning objects and relationships

Object What it represents Example Usage rules
Project Ongoing planning and visibility for application development. Release Radar Development Contains the application’s planned and active work, organized around delivery milestones.
Milestone A defined delivery checkpoint or release target. Documentation and Workflow Baseline Defines the delivery outcome and completion criteria. A due date is set when agreed.
Epic A goal contributing to the milestone, decomposed into related stories. Establish GitHub development standards and skills Has the epic label and a milestone. Its stories and delivery tasks must have that same milestone.
User story An outcome that contributes to its epic. An agent can create issues that comply with the GitHub Issue Standard Has acceptance criteria and a native parent link to its epic.
Delivery task Bounded execution work contributing to a story. Add issue-creation skill evaluations for required metadata Has a verifiable result and a native parent link to its story.
Issue The GitHub record used to track an epic, story, task, bug, or maintenance item. Correct missing milestone assignment in issue creation Contains the required issue content and classification labels.
Sub-issue An issue linked beneath a parent through GitHub’s native hierarchy. The evaluation task linked beneath the issue-creation story Establishes decomposition; does not replace milestone or Project membership.
Label Metadata identifying work type, component, severity, or an impediment. epic, type:bug, type:chore, component:skills Uses the approved taxonomy. Every issue requires a work-type label, including standalone issues.
View A filtered presentation of Project items. Current milestone, Ready work, Blocked work Displays existing Project items through filters and fields; does not establish another hierarchy.
Iteration A recurring execution timebox within the planning process. Iteration 12: October 5–16 Identifies the timebox selected for work. It does not replace or change the issue’s milestone.

Our organizational structure:

Project
└── Milestone
    └── Epic
        └── User story
            └── Delivery task

Milestone consistency is mandatory: an epic, all its stories, and all their delivery tasks must share the epic’s milestone. Work intended for a different milestone must be organized under a separate epic for that milestone. The earlier cross-milestone exception is removed.

A standalone bug or maintenance issue may have no parent when there is no meaningful epic or story. It must still have its Project membership and the appropriate type:bug or type:chore label, plus other applicable metadata. Selected delivery work must have a milestone. Missing parentage does not exempt an issue from classification.

2. Required issue content

Every issue must contain:

Content Requirement
Outcome The result the work must achieve.
Scope What is included and any material exclusions.
Acceptance criteria Observable, verifiable conditions for completion.
Context Relevant specifications, decisions, dependencies, and related work.

Before execution, the issue must identify its responsible assignee and applicable Project. Parent, milestone, iteration, and blocking relationships must be present where relevant.

Implementation pull requests and commits must be linked as they become available.

All work must have a ticket. The ticket defines bounded work and records its results; it does not independently authorize unrelated work or external actions.

3. Metadata rules

The following taxonomy is the draft baseline. Adoption must account for existing labels rather than create an overlapping taxonomy. Publishing the standard does not itself relabel existing issues.

Metadata Values or naming rule Required usage
Work type type:feature, type:bug, type:chore, type:tech-debt, type:research Exactly one primary work type after triage.
Epic marker epic Required on epic issues. Identifies hierarchy level independently of work type.
Component component:<name> Apply when the affected component is known. Multiple components are permitted. Names must come from the repository’s defined component taxonomy.
Priority Project field: High, Medium, Low Required before an issue enters Ready. An unset value means unassessed, not Low.
Severity severity:critical, severity:major, severity:minor Required for assessed bugs. Describes impact independently of priority.
Impediment status:blocked, status:feedback-needed Apply while the condition exists. The issue must explain the cause or required information.
Workflow state Project Status field Use the states defined in Section 4. Do not duplicate ordinary workflow states in labels.
Assignee GitHub assignee Required before execution. Identifies the person or account responsible for the issue.
Delivery target Milestone Required when work contributes to a defined delivery checkpoint.
Timebox Project iteration field Required for work selected into an iteration when iteration-based planning is in use.

Work types

Type Meaning
Feature New or changed user capability.
Bug Behavior that fails an established requirement.
Chore Routine maintenance without a new capability.
Technical debt Structural improvement addressing a known maintenance or development cost.
Research Investigation intended to produce findings or a decision.

The epic marker describes an issue’s level in the hierarchy. Work type describes its primary purpose. An epic may therefore carry both epic and a work-type label.

Priority

Priority expresses the relative importance of delivering work.

Priority Meaning
High Takes precedence over Medium and Low work when selecting eligible work.
Medium Normal delivery priority.
Low Lower relative urgency; selected after higher-priority eligible work unless explicitly directed otherwise.

Priority does not eliminate dependency, readiness, or authorization requirements. It does not establish an exact ordering between issues with the same value.

Severity

Severity expresses the impact of a defect.

Severity Meaning
Critical A core capability is unavailable without a reasonable workaround, or confirmed data loss or security impact requires immediate escalation.
Major Substantial functionality is impaired, but impact is contained or a workaround exists.
Minor Limited impairment with low operational impact.

Severity does not automatically set priority or authorize interruption, emergency changes, or expanded scope.

Label consistency

  • Labels must have clear descriptions and consistent names.
  • Labels with different names must not duplicate the same meaning.
  • Colors must support readability; color alone must not convey meaning.
  • New labels must address a recurring classification need that existing labels cannot represent.
  • Ordinary issue creation must use the established taxonomy rather than invent a parallel one.
  • Changes to the taxonomy must identify how existing labels and affected issues will be handled.
  • Label removal must account for the classification information that would be lost.

Each planning attribute must have one authoritative location. For example, priority belongs in the Priority field and workflow state belongs in Status; separately maintained labels must not compete with those values.

4. Board states

State Meaning Required condition
Backlog Captured work that is not ready for execution. The issue identifies the requested work and any information still needed.
Ready Understood work eligible for selection. Scope, acceptance criteria, priority, and relevant dependencies are sufficiently defined. No unresolved prerequisite prevents execution.
In Progress Work is actively being executed. An assignee is responsible and execution is authorized.
In Review The deliverable awaits required verification, independent review, or delivery checks. The candidate deliverable and evidence needed for review are available.
Done The work has met its acceptance criteria and completed its authorized delivery obligations. Results and verification are recorded, and no required completion work remains.

Board state must reflect actual work rather than an intended next action.

Blocked work retains its current workflow state and carries the appropriate impediment label. The issue must identify the blocking cause, related dependency where applicable, and what is needed to unblock it.

A closed issue marked not planned is not completed delivery and must not be represented as Done. Reports must distinguish completed work from work that was declined, cancelled, or closed as a duplicate.

A parent issue is complete only when its own outcome and acceptance criteria are satisfied. Closed children alone do not establish parent completion.

5. Compliance and review criteria

Review area Pass criteria
Scope coverage Every issue or planning object named in the assignment appears in the result, or is explicitly identified as unchanged, inaccessible, or excluded with a reason.
Project placement Each issue belongs to the intended development Project. Any proposed additional Project identifies the distinct planning need it serves.
Milestone consistency Each epic has a milestone. Every descendant has the same milestone. No descendant is unassigned or assigned to another milestone.
Hierarchy Each story has its intended epic as its native parent; each delivery task has its intended story as its native parent. Standalone exceptions have an appropriate work-type label.
Dependencies Each stated execution prerequisite is represented by a blocking relationship when tracked as an issue. Related links are not incorrectly used as parentage or blocking dependencies.
Issue outcome Names the observable result and the user, agent, or system that benefits. An activity such as “investigate labels” alone fails; “document the approved label taxonomy and its usage rules” identifies a result.
Issue scope Identifies the behavior, artifact, or component being changed. Material exclusions and boundaries are stated so the assignee can distinguish required work from adjacent work.
Acceptance criteria Each criterion describes an observable condition with a pass/fail result. Claims such as “works correctly,” “is robust,” or “is clear” fail unless accompanied by conditions that establish what those terms mean.
Issue context Links the governing standard or specification and any known prerequisite or decision needed to perform the work. Unresolved inputs are explicitly identified rather than silently assumed.
Metadata Required labels and fields are populated with approved values. Exactly one primary work-type label is present; epics also carry epic. Priority, severity, and workflow state are not conflated.
Workflow state Evidence supports the state: Ready meets readiness conditions; In Progress has an active assignment; In Review has a reviewable deliverable; Done has completed acceptance and delivery evidence.
Completion Each acceptance criterion has a recorded result. Required reviews and authorized delivery steps are complete. Parent completion is checked against the parent’s own criteria.
Authorization Applied changes match the authorized objects and actions. Additional changes have explicit authorization recorded.
Exceptions Each departure identifies the rule, rationale, scope, approving authority, and duration or ending condition. The approval applies to the work being reviewed.

For example, this acceptance criterion fails:

Issues have appropriate metadata.

This passes:

Every epic has the epic label and exactly one approved work-type label. Its stories and delivery tasks have the same milestone as the epic. The reviewer reports any missing or conflicting assignments.

A required finding must identify:

  • The requirement that was not met.
  • The observed deviation.
  • The correction needed.

The review result is Pass when applicable requirements are satisfied or covered by valid exceptions. It is Changes required when unresolved noncompliance remains.

Optional improvements and reviewer preferences are not blocking requirements.

Skills derived from this standard must use these requirements as evaluation criteria. Evaluations must cover both compliant behavior and relevant failures, including incomplete metadata, incorrect relationships, unauthorized changes, and premature completion.

6. Exceptions

An exception is a bounded, approved departure from a specific requirement. It is justified when following that requirement would not reasonably serve the actual work and an alternative is necessary.

The exception record must identify:

  • The affected requirement.
  • The reason for the departure.
  • The alternative and its consequences.
  • The affected scope.
  • The approving authority.
  • Its duration or ending condition.
  • How normal compliance will resume, where applicable.

The owner or an explicitly designated exception authority must approve the departure before it is used. Agents cannot approve their own exceptions.

The affected issue must link to the approval. An exception applies only to its recorded scope and duration; previous exceptions do not establish standing permission.

This exception mechanism cannot override STOP instructions, security restrictions, or external-action authorization requirements.

7. Records and canonical sources

GitHub issues hold current work, status, acceptance records, useful decisions, verification results, and remaining blockers. They must not become per-turn diaries.

Ticket-owned implementation plans live in the Wiki. The owning issue links to the plan and its reviewed revision rather than duplicating its full text.

The Wiki is canonical for development standards, product specifications, and architecture decisions. Code, assets, and documentation that must match the implementation remain repository-owned.

This document is the authoritative reference for how we use GitHub Issues and related planning features. Relevant skills define the operating procedures and reference these requirements rather than maintaining competing definitions.

Publishing or revising this standard does not itself restructure the backlog, modify Project configuration, or migrate labels.

⚠️ **GitHub.com Fallback** ⚠️