Skip to content

QVAC-17994 feat[skiplog]: add sdk-backmerge skill#1862

Merged
opaninakuffo merged 2 commits into
tetherto:mainfrom
opaninakuffo:chore/sdk-backmerge-skill
May 1, 2026
Merged

QVAC-17994 feat[skiplog]: add sdk-backmerge skill#1862
opaninakuffo merged 2 commits into
tetherto:mainfrom
opaninakuffo:chore/sdk-backmerge-skill

Conversation

@opaninakuffo

Copy link
Copy Markdown
Contributor

Note: be concise and prefer bullet points.

🎯 What problem does this PR solve?

  • Releasing an SDK pod package requires two PRs per gitflow.md "Keep main aligned": one into release-<pkg>-<x.y.z>, and a follow-up backmerge into main carrying the version bump + changelog. The follow-up was a manual step, easy to forget.
  • sdk-pr-create didn't know about release-branch targets, so the flow was: user runs the skill, gets the release PR, then has to remember to open the backmerge PR by hand (with the right cherry-pick base, the [skiplog] tag, the right title format, etc.).

📝 How does it solve it?

  • New skill codifies backmerge PR creation end-to-end: pre-flight → resolve cherry-pick source → no-op detection (merge-tree simulation vs upstream/main^{tree}) → branch creation off upstream/main → cherry-pick (-x) → conflict triage with auto-resolve list (package.json version, aggregated CHANGELOG.md) → late-no-op re-verify → push → title/body assembly → gh pr create.
  • Title guidance is validator-aware: chore[skiplog|notask]: backmerge … (single bracket, pipe-separated) is the tickless form per scripts/sdk/validator.cjs; chore[skiplog][notask]: is explicitly called out as rejected.
  • Extends .cursor/skills/sdk-pr-create/SKILL.md with a "Release Target Dual-PR Flow" section: when the just-created PR's base is release-<pkg>-<x.y.z>, it auto-chains into sdk-backmerge so both PRs are opened in one run. Includes fail-stop policy on non-trivial cherry-pick conflicts and an --no-backmerge opt-out.

🧪 How was it tested?

  • Exercised live on a TEST release branch (release-test-sdk-0.9.2 on tetherto/qvac). Both PRs were opened in a single chained sdk-pr-createsdk-backmerge run, then closed once the flow was confirmed:
  • -x cherry-pick footer preserved on the backmerge commit afb2ab3 ("cherry picked from commit 74109c9").
  • [skiplog|notask] title format accepted by scripts/sdk/validator.cjs.

@opaninakuffo opaninakuffo requested review from a team as code owners May 1, 2026 12:51
@opaninakuffo opaninakuffo changed the title QVAC-17994 feat[skiplog]: add sdk-backmerge skill and chain it from sdk-pr-create for release PRs QVAC-17994 feat[skiplog]: add sdk-backmerge skill May 1, 2026
NamelsKing
NamelsKing previously approved these changes May 1, 2026
@NamelsKing NamelsKing dismissed their stale review May 1, 2026 13:20

comments

@opaninakuffo

Copy link
Copy Markdown
Contributor Author

review

@github-actions

github-actions Bot commented May 1, 2026

Copy link
Copy Markdown
Contributor

Tier-based Approval Status

**PR Tier:** TIER1

**Current Status:** ✅ APPROVED

**Requirements:**
- 1 Team Member approval ✅ (1/1)
- 1 Team Lead OR Management approval ✅ (1/1)



---
*This comment is automatically updated when reviews change.*

@opaninakuffo opaninakuffo merged commit cafc2f9 into tetherto:main May 1, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants