This is an automated email from the ASF dual-hosted git repository.

wusheng pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/skywalking-graalvm-distro.git

commit b71761580d2676ccafd550b36abd63bc23b1d6bd
Author: Wu Sheng <[email protected]>
AuthorDate: Sun Mar 15 11:22:08 2026 +0800

    Add .asf.yaml branch protection, gh-pull-request skill, PR-only 
cancel-in-progress
---
 .asf.yaml                               | 33 +++++++++++++
 .claude/skills/gh-pull-request/SKILL.md | 82 +++++++++++++++++++++++++++++++++
 .github/workflows/ci.yml                |  2 +-
 3 files changed, 116 insertions(+), 1 deletion(-)

diff --git a/.asf.yaml b/.asf.yaml
new file mode 100644
index 0000000..68b8629
--- /dev/null
+++ b/.asf.yaml
@@ -0,0 +1,33 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+github:
+  description: GraalVM native-image distribution of Apache SkyWalking OAP 
server
+  homepage: https://skywalking.apache.org/
+  labels:
+    - skywalking
+    - graalvm
+    - native-image
+    - observability
+    - apm
+  enabled_merge_buttons:
+    squash:  true
+    merge:   false
+    rebase:  false
+  dependabot_updates: false
+  protected_branches:
+    main:
+      required_pull_request_reviews:
+        required_approving_review_count: 0
diff --git a/.claude/skills/gh-pull-request/SKILL.md 
b/.claude/skills/gh-pull-request/SKILL.md
new file mode 100644
index 0000000..92a237a
--- /dev/null
+++ b/.claude/skills/gh-pull-request/SKILL.md
@@ -0,0 +1,82 @@
+---
+name: gh-pull-request
+description: Verify, commit, and push changes on a PR branch. Runs pre-flight 
checks (compile, checkstyle, license headers) before every push. Also creates 
the PR if one doesn't exist yet.
+---
+
+# PR Branch Workflow
+
+Run pre-flight checks, commit, push, and optionally create a PR.
+
+## Pre-flight checks
+
+Run these checks before every commit+push and fix any failures:
+
+### 1. Compile
+
+```bash
+make compile
+```
+
+### 2. License header check
+
+```bash
+license-eye header check
+```
+
+If invalid files are found, fix with `license-eye header fix` and re-check.
+
+## Commit and push
+
+After checks pass, commit and push:
+
+```bash
+git add <files>
+git commit -m "<message>"
+git push -u origin <branch-name>
+```
+
+### Branch strategy
+- **Never work directly on main branch**
+- If on main, create a new branch first: `git checkout -b feature/<name>` or 
`git checkout -b fix/<name>`
+
+## Create PR (if not yet created)
+
+Check whether a PR already exists for the current branch:
+
+```bash
+gh pr view --json number 2>/dev/null
+```
+
+If no PR exists, create one:
+
+### PR title
+Summarize the changes concisely. Examples:
+- `Fix native image boot failure for MAL expressions`
+- `Add Zipkin e2e test case`
+- `Update BanyanDB to latest version`
+
+### PR description
+
+Use this format:
+
+```
+### <Summary of changes>
+
+- [ ] Describe what changed and why.
+- [ ] Update `changes/changes.md` if this is a user-facing change.
+- [ ] Tests pass: `make test`
+- [ ] License headers valid: `license-eye header check`
+```
+
+### Create command
+
+```bash
+gh pr create --title "<title>" --body "$(cat <<'EOF'
+<PR body>
+EOF
+)"
+```
+
+### Post-creation
+- Do NOT add AI assistant as co-author. Code responsibility is on the 
committer's hands.
+- Return the PR URL when done.
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index b698a0e..a86a61a 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -35,7 +35,7 @@ on:
 
 concurrency:
   group: ci-${{ github.ref }}
-  cancel-in-progress: false
+  cancel-in-progress: ${{ github.event_name == 'pull_request' }}
 
 env:
   GHCR_IMAGE: ghcr.io/apache/skywalking-graalvm-distro

Reply via email to