branch-out-release

Creates RediSearch release branches from master with protection rules, merge queues, and CI adaptation.

6.2k|596|Updated May 5, 2016
One-click install
npx skills add https://github.com/RediSearch/RediSearch --skill branch-out-release
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: branch-out-release
Source: https://github.com/RediSearch/RediSearch/tree/main/.skills/branch-out-release
Command: npx skills add https://github.com/RediSearch/RediSearch --skill branch-out-release

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Cutting a new RediSearch release branch from master involves many error-prone manual steps: setting version.h, copying GitHub branch protection rules, enabling merge queues, adapting CI workflows, and registering backport targets. This Skill codifies that entire branch-out workflow so nothing is missed or misconfigured.

Core Features & Use Cases

  • Release Branch Creation: Branch from a verified origin/master SHA, set src/version.h to the initial milestone, and push the new branch.
  • Protection & Merge Queue Setup: Copy branch protection rules and merge queue settings from the previous release branch, with read-back verification to catch hidden defaults.
  • CI Adaptation & Backport Registration: Adjust release-branch CI gating (PR flow, merge queue matrix, nightly), pin Redis SHAs, and register the new line in release-branches.json with matching backport labels.
  • Use Case: When branching the 8.10 release line from master, use this Skill to create the branch, replicate 8.8's protection and merge queue configuration, adapt workflows, and validate with a manual Nightly Flow dispatch.

Quick Start

Branch a new RediSearch 8.10 release line from master with full protection, merge queue, and CI setup.

Frequently Asked Questions about branch-out-release

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a RediSearch release branch from master?

Fetch origin/master, verify the target branch does not exist via git ls-remote, branch from the chosen SHA, set src/version.h to the initial milestone, commit, and push before applying branch protection copied from the previous release branch.

How do I copy GitHub branch protection rules to a new branch?

Create a new exact-pattern rule for the target branch and explicitly set every value, including false or null settings, so GitHub does not apply new-rule defaults. Read back both source and target rules and compare; only ids, URLs, pattern, and matching refs should differ.

Why is the merge queue checkbox not enabled on my new release branch?

A repository ruleset merge_queue rule does not check the classic branch protection UI box. Enable Require merge queue in the classic branch protection rule, then verify with repository.mergeQueue(branch) that isMergeQueueEnabled reports true.

How are backports registered for a new RediSearch release line?

Add the branch to release_branches in .github/release-branches.json on master, oldest first, and create backport labels for both the legacy task-backport_pr.yml flow and the Codex agent flow. Missing entries are silently skipped by backport expansion.

What CI changes are needed on a new RediSearch release branch?

Keep PR flow lightweight with label-conditioned coverage and sanitize jobs, make the merge queue the full-matrix release gate, and run nightly with QUICK=1 against a pinned Redis SHA rather than Redis unstable.