Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,12 +33,12 @@
{
"name": "hyperfleet-code-review",
"source": "./hyperfleet-code-review",
"description": "Code review skills for HyperFleet: /review-local reviews local branch changes against HyperFleet standards, architecture checks, and mechanical code patterns. /review-pr provides full PR review with JIRA validation, impact analysis, and interactive recommendations."
"description": "Code review skills for HyperFleet: /review-local reviews local branch changes against HyperFleet standards. /review-pr provides full PR review with JIRA validation, impact analysis, and interactive recommendations."
},
{
"name": "hyperfleet-bugs-triage",
"source": "./hyperfleet-bugs-triage",
"description": "Interactive JIRA bug triage (New->Backlog) and GitHub issue triage for openshift-hyperfleet repositories"
"name": "hyperfleet-work-triage",
"source": "./hyperfleet-work-triage",
"description": "Work triage skills for HyperFleet: /bugs-triage for interactive JIRA bug and GitHub issue triage. /open-prs surfaces and prioritizes open PRs across the org using GitHub + JIRA context with multi-factor scoring and confidence levels."
}
]
}
12 changes: 6 additions & 6 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,17 +31,17 @@ hyperfleet-<name>/ <- each plugin
| `hyperfleet-operational-readiness` | Operational readiness audit | 1 skill | - | - |
| `hyperfleet-devtools` | Dev productivity | 1 skill | 1 command | 1 agent |
| `hyperfleet-adapter-authoring` | Adapter authoring | 1 skill | - | - |
| `hyperfleet-bugs-triage` | Bug & issue triage | 1 skill | - | - |
| `hyperfleet-work-triage` | Work triage (bugs, issues, PR prioritization) | 2 skills | - | - |

### Key Plugin: `hyperfleet-code-review`

The most complex plugin. Its review-pr skill has the following structure:
- **`/review-pr`** — full PR review with 6 steps: input validation, data gathering, JIRA check, parallel analysis (10 groups of mechanical code checks), consistency check, interactive output. Uses `output-format.md` and `group-01` through `group-10` check definitions.
- **`/review-local`** — local branch review against HyperFleet standards. Uses check definitions from `checks/` and reference data from `config/`.

- `SKILL.md` — main workflow (6 steps: input validation, data gathering, JIRA check, parallel analysis, consistency check, output)
- `output-format.md` — interactive pagination format and notification behavior
- `group-01-error-handling.md` through `group-10-performance.md` — 10 groups of automated code checks (error handling & wrapping, concurrency, exhaustiveness, resource lifecycle, code quality, testing & coverage, naming & organization, security, code hygiene, performance)
### Key Plugin: `hyperfleet-work-triage`

Its review-local skill produces a structured local branch review report. It uses check definitions from `checks/` and reference data from `config/`.
- **`/bugs-triage`** — interactive JIRA bug triage (New→Backlog) and GitHub issue triage for openshift-hyperfleet repositories. Uses shared `references/github-repos.md` for repo scope.
- **`/open-prs`** — surfaces and prioritizes open PRs across the org using 8-factor weighted scoring (JIRA priority, blocking impact, staleness, risk, review progress, size, CI status, story points) with confidence levels. Uses `prioritization-algorithm.md` for scoring rubrics and `output-format.md` for tiered presentation. Shares `references/github-repos.md` with `/bugs-triage`.

## Conventions

Expand Down
9 changes: 0 additions & 9 deletions hyperfleet-bugs-triage/.claude-plugin/plugin.json

This file was deleted.

61 changes: 0 additions & 61 deletions hyperfleet-bugs-triage/README.md

This file was deleted.

9 changes: 9 additions & 0 deletions hyperfleet-work-triage/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"name": "hyperfleet-work-triage",
"version": "0.2.0",
"description": "Work triage skills for HyperFleet: /bugs-triage for interactive JIRA bug and GitHub issue triage. /open-prs surfaces and prioritizes open PRs across the org using GitHub + JIRA context with multi-factor scoring and confidence levels.",
"author": {
"name": "Rafael Benevides",
"email": "rbenevid@redhat.com"
}
}
File renamed without changes.
59 changes: 59 additions & 0 deletions hyperfleet-work-triage/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# hyperfleet-work-triage

Work triage skills for HyperFleet: bug/issue triage and PR prioritization.

## Installation

```bash
/install hyperfleet-work-triage@openshift-hyperfleet/hyperfleet-claude-plugins
```

## Skills

### `/bugs-triage` — Bug & Issue Triage

```bash
/bugs-triage # Triage both JIRA bugs and GitHub issues
/bugs-triage jira # Triage only JIRA bugs
/bugs-triage github # Triage only GitHub issues
```

**What it does:**

- **JIRA Bug Triage:** Fetches all bugs with status "New" in HYPERFLEET, skips assigned ones, and for each bug recommends an action (move to Backlog, request info, close, convert to RFE, escalate)
- **GitHub Issues Triage:** Fetches untriaged issues across all repos, checks if already tracked in JIRA or resolved by PRs, and recommends an action (accept as Bug/RFE, help, reject, duplicate)
- Reports bugs/issues open for more than 3 sprints (6 weeks)

### `/open-prs` — Intelligent PR Review Queue

```bash
/open-prs # Compact ranked list (default)
/open-prs --explain # Full reasoning + factor breakdowns
/open-prs --repo hyperfleet-api # Scope to one repo
/open-prs --component Adapter # Filter by JIRA component
```

**What it does:**

- Scans all repos in the org for open PRs (parallel queries)
- Cross-references with JIRA: priority, sprint deadlines, story points, blocking chains
- Reads PR diffs and ticket descriptions to understand actual urgency
- Checks CI status from all sources (GitHub Actions + Prow)
- Detects unresolved reviewer comments and author responsiveness
- Applies 8-factor weighted scoring with confidence levels
- Groups PRs into 4 tiers: Immediate Attention, Should Review Soon, When You Have Time, Informational
- Works without JIRA CLI (graceful degradation with reduced confidence)

## Prerequisites

- [GitHub CLI](https://cli.github.com/) (`gh`) — authenticated with access to openshift-hyperfleet repos (required)
- [jira-cli](https://github.com/ankitpokhrel/jira-cli) — configured for the HYPERFLEET project (required for `/bugs-triage`, optional for `/open-prs`)
Comment on lines +49 to +50
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/open-prs requires jq and refuses to run without it (SKILL.md line 59: "stop and tell the user — jq is required"). Consider adding it to the prerequisites:

Suggested change
- [GitHub CLI](https://cli.github.com/) (`gh`) — authenticated with access to openshift-hyperfleet repos (required)
- [jira-cli](https://github.com/ankitpokhrel/jira-cli) — configured for the HYPERFLEET project (required for `/bugs-triage`, optional for `/open-prs`)
- [GitHub CLI](https://cli.github.com/) (`gh`) — authenticated with access to openshift-hyperfleet repos (required)
- [jira-cli](https://github.com/ankitpokhrel/jira-cli) — configured for the HYPERFLEET project (required for `/bugs-triage`, optional for `/open-prs`)
- [jq](https://jqlang.github.io/jq/) — JSON processor (required for `/open-prs`). Install via `brew install jq` or `apt-get install jq`


## Shared Reference Data

| File | Used by | Purpose |
|------|---------|---------|
| `references/github-repos.md` | Both skills | Repositories in scope |
Comment thread
tirthct marked this conversation as resolved.
| `skills/bugs-triage/references/owners.csv` | `/bugs-triage` | Component/domain owners for assignee suggestions |

Ticket creation (formatting, Activity Types, Story Points) is delegated to the `hyperfleet-jira:jira-ticket-creator` skill.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# GitHub Repositories in Triage Scope
# GitHub Repositories in Scope
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file includes much more repos than the original: https://github.com/openshift-hyperfleet/hyperfleet-claude-plugins/blob/main/hyperfleet-bugs-triage/skills/bugs-triage/references/github-repos.md - he original github-repos.md only had core HyperFleet repos in triage scope

Is this intentional?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed the irrelevant repos as discussed


Only issues from these `openshift-hyperfleet` repositories should be triaged.
Issues from repos not listed here should be skipped.
Repositories in the `openshift-hyperfleet` organization that are actively maintained.
Used by `/bugs-triage` (issue triage) and `/open-prs` (PR prioritization).
Comment thread
tirthct marked this conversation as resolved.

## Core Components
Comment thread
coderabbitai[bot] marked this conversation as resolved.

Expand All @@ -22,6 +22,10 @@ Issues from repos not listed here should be skipped.
- `hyperfleet-e2e`
- `maestro-cli`

## API & Specifications

- `hyperfleet-api-spec`

## Documentation & Tooling

- `architecture`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ argument-hint: "[jira|github] (default: both)"
Load these files as needed during triage:

- `references/owners.csv` — Component/domain owners for assignee suggestions
Comment thread
tirthct marked this conversation as resolved.
- `references/github-repos.md` — GitHub repositories in triage scope (skip issues from unlisted repos)
- `../../references/github-repos.md` — GitHub repositories in triage scope (skip issues from unlisted repos)

## Ticket Creation

Expand Down Expand Up @@ -150,7 +150,7 @@ Present in a table and ask the user to re-evaluate or close each one:

### Step 1: Fetch untriaged issues

Read `references/github-repos.md` to get the list of repos in scope. For each repo name, build a `repo:openshift-hyperfleet/<name>` token and include all of them in the `-f q=` parameter. Fetch issues that are either unlabeled or have `hf-needs-triage` but NOT already triaged labels:
Read `../../references/github-repos.md` to get the list of repos in scope. For each repo name, build a `repo:openshift-hyperfleet/<name>` token and include all of them in the `-f q=` parameter. Fetch issues that are either unlabeled or have `hf-needs-triage` but NOT already triaged labels:

```bash
gh api search/issues -X GET \
Expand Down
Loading