raise-pr

Пошаговый рабочий процесс для фиксации подготовленных изменений и открытия пул-реквеста в репозитории lightspeed-service.

npx skills add https://github.com/openshift/lightspeed-service --skill raise-pr

Create a PR

Step 1: Branch

git fetch upstream
git branch --show-current
git log --oneline upstream/main..HEAD
git diff upstream/main --stat
gh pr list --head "$(git branch --show-current)" --state open

Present the summary and ask before proceeding:

"You are currently on branch <branch>. It has <N> commit(s) ahead of upstream/main touching: <files>. [If an open PR exists]: This branch already has an open PR: <url>. Pushing here would add commits to that existing PR. Should I create a new branch from upstream/main (recommended), or use the current branch?"

Do not continue until the user answers.

If creating a new branch — git carries uncommitted changes automatically:

git fetch upstream
git checkout -b <type>/<short-description> upstream/main
# cherry-pick intended commits from the old branch if needed
git cherry-pick <sha1> <sha2> ...

Never branch from origin/main — the fork may have stale commits that will appear in the PR.

Step 2: Pre-commit checks

Run in order and fix all failures before proceeding:

  1. make test-unit
  2. make test-integration
  3. make verify
  4. Confirm 90%+ coverage is maintained for changed code

Step 3: Commit and push

If a Jira issue ID has not been provided, ask the user for it before proceeding.

Commit message: short imperative sentence, no period, no conventional prefix, no Jira ID.

git add -A   # or only the relevant files
git commit -m "<message>"
git push -u origin HEAD

Step 4: Open the PR

Title format: <JIRA-ID>: <same short imperative sentence as commit>

Read .github/PULL_REQUEST_TEMPLATE.md and populate all sections:

  • Description — what the change does and why, derived from the diff
  • Type of change — tick the relevant checkbox(es)
  • Related Tickets & Documents — Closes #<github-issue> if it resolves one; always link the Jira ticket
  • Checklist — tick what applies; leave unticked items that genuinely don't apply
  • Testing — describe how the change was verified
gh pr create --title "<JIRA-ID>: <description>" --body "$(cat <<'EOF'
<populated template>
EOF
)"

Return the PR URL to the user when done.

Больше skills от openshift

openshift-docs
openshift
Поиск и чтение документации OpenShift Container Platform в формате markdown. Используйте, когда пользователь спрашивает о функциях OpenShift, конфигурации, установке,…
triage-leaked-infra
openshift
Оцените, безопасно ли удалять AWS VPC или набор инфраструктуры из HyperShift CI. Используйте, когда пользователь вставляет вывод cleanleaked и спрашивает «можно ли это удалить?», «безопасно…
openshift-expert
openshift
Эксперт по платформе OpenShift и Kubernetes с глубокими знаниями архитектуры кластеров, операторов, сетей, хранилищ, устранения неполадок и CI/CD-пайплайнов. Используйте…
Konflux Archived PipelineRuns
openshift
Обеспечивает доступ к архивированным Konflux PipelineRuns, TaskRuns и логам подов через KubeArchive. Автоматически применяется при проверке результатов Konflux PipelineRun, расследовании…
backport
openshift
Переносить коммиты или PR из основной ветки в релизную. Используется, когда пользователь просит выполнить backport, cherry-pick или перенос изменений между ветками, а также при разрешении…
rebase
openshift
Переместить текущую ветку на её базовую ветку, разрешить все конфликты и проверить, что линтинг, i18n и сборка проходят. Используйте, когда пользователь просит выполнить rebase, обновление или синхронизацию…
Build CPO Image
openshift
Собрать и отправить образ контейнера control-plane-operator. Автоматически применяется при тестировании изменений CPO, требующих развертывания на живом кластере.
find-complexity
openshift
Находит функции и методы с высокой цикломатической сложностью, чрезмерной длиной или слишком большим количеством параметров. Используется, когда пользователь просит найти сложный код, сложность…