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

morningman pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/doris-skills.git


The following commit(s) were added to refs/heads/main by this push:
     new 8c13ef3  fix: prefer Astra and Fable 5.1 for repo reviews (#11)
8c13ef3 is described below

commit 8c13ef3c96124232c6679b6d8764c33f937cf660
Author: shuke <[email protected]>
AuthorDate: Mon Sep 7 12:06:21 2026 +0800

    fix: prefer Astra and Fable 5.1 for repo reviews (#11)
---
 skills/doris-repo-review/SKILL.md                  |  2 +-
 .../references/qualified-runtime.md                | 22 ++++++++++++++++------
 .../scripts/review-runtime-policy.sh               |  6 +++---
 verify/repo-review/post-comment.sh                 |  4 ++--
 verify/repo-review/runtime-policy.sh               | 18 ++++++++++--------
 5 files changed, 32 insertions(+), 20 deletions(-)

diff --git a/skills/doris-repo-review/SKILL.md 
b/skills/doris-repo-review/SKILL.md
index f260d31..186b39a 100644
--- a/skills/doris-repo-review/SKILL.md
+++ b/skills/doris-repo-review/SKILL.md
@@ -1,6 +1,6 @@
 ---
 name: doris-repo-review
-description: Review an Apache Doris PR from a local clone with the same 
multi-agent, shared-ledger convergence workflow as the CI Code Review Runner. 
Use when the user supplies a PR to `/doris-repo-review`, asks to review a Doris 
PR locally, or asks for the CI-style review flow. Safely align only the current 
worktree to the exact PR head, refuse to disturb tracked local changes, write 
equivalent English and Chinese review documents with verified path-line 
anchors, and never build, test,  [...]
+description: Review an Apache Doris PR from a local clone with the same 
multi-agent, shared-ledger convergence workflow as the CI Code Review Runner. 
Use when the user supplies a PR to `/doris-repo-review`, asks to review a Doris 
PR locally, or asks for the CI-style review flow. Safely align only the current 
worktree to the exact PR head, refuse to disturb tracked local changes, write 
equivalent English and Chinese review documents with verified path-line 
anchors, and never build, test,  [...]
 ---
 
 # Local pipeline-style Doris code review
diff --git a/skills/doris-repo-review/references/qualified-runtime.md 
b/skills/doris-repo-review/references/qualified-runtime.md
index e5deeda..3846d60 100644
--- a/skills/doris-repo-review/references/qualified-runtime.md
+++ b/skills/doris-repo-review/references/qualified-runtime.md
@@ -4,8 +4,12 @@ Establish the reviewer runtime before reading source. A 
pipeline-equivalent revi
 
 | Host | Models | Effort |
 |---|---|---|
-| Codex | `gpt-5.6-sol` | `xhigh`, `max`, or `ultra` |
-| Claude Code | `claude-opus-5`, `claude-opus-5[1m]`, `claude-fable-5`, or 
`claude-fable-5[1m]` | `xhigh` or `max` |
+| Codex | `gpt-6-astra`, `gpt-5.6-sol` | `xhigh`, `max`, or `ultra` |
+| Claude Code | `claude-fable-5-1`, `claude-fable-5-1[1m]`, `claude-opus-5`, 
`claude-opus-5[1m]`, `claude-fable-5`, or `claude-fable-5[1m]` | `xhigh` or 
`max` |
+
+Prefer `gpt-6-astra` on Codex and Fable 5.1 on Claude Code, with `xhigh` as 
the default
+qualified effort. Use another allowlisted model only when explicitly requested 
by the user or
+when the preferred model is unavailable.
 
 Validate the exact values with:
 
@@ -13,19 +17,25 @@ Validate the exact values with:
 $S/review-runtime-policy.sh check "<model>" "<effort>"
 ```
 
-Keep these exact values for `record-review-runtime.sh` after the PR context is 
prepared.
+Keep the actual reviewer's exact model and effort for 
`record-review-runtime.sh` after the PR
+context is prepared, including when a fallback or delegated reviewer is used. 
Never substitute
+the parent task's model or a fixed default in the receipt.
 
 Never infer task settings from a global config file. Continue in the current 
task only when its
-model and effort are exposed explicitly and pass the policy check.
+model and effort are exposed explicitly, pass the policy check, and satisfy 
the preference above.
 
 ## Codex delegation
 
-When either value is unavailable or ineligible, spawn one lead reviewer with 
exactly:
+When the current task cannot be retained under the rules above, spawn one lead 
reviewer with:
 
 - `fork_turns: "none"`
-- `model: "gpt-5.6-sol"`
+- `model: "gpt-6-astra"`
 - `reasoning_effort: "xhigh"`
 
+If Astra is unavailable, fall back to `gpt-5.6-sol` with `xhigh`. If the user 
explicitly requests
+another qualified runtime, use its exact model and supported effort instead. 
Preserve a current
+preferred runtime's qualified effort rather than resetting it to `xhigh`.
+
 Pass the original request, current working directory, and absolute path to 
this skill. Tell the
 lead to execute the whole skill. Wait for it and relay its result; do not read 
source or repeat the
 review in the parent. A full-history fork cannot apply model or effort 
overrides.
diff --git a/skills/doris-repo-review/scripts/review-runtime-policy.sh 
b/skills/doris-repo-review/scripts/review-runtime-policy.sh
index 5d172d8..4dbcd77 100755
--- a/skills/doris-repo-review/scripts/review-runtime-policy.sh
+++ b/skills/doris-repo-review/scripts/review-runtime-policy.sh
@@ -3,7 +3,7 @@
 
 is_eligible_review_model() {
     case "$1" in
-        
claude-opus-5|claude-opus-5\[1m\]|claude-fable-5|claude-fable-5\[1m\]|gpt-5.6-sol)
 return 0 ;;
+        
claude-opus-5|claude-opus-5\[1m\]|claude-fable-5|claude-fable-5\[1m\]|claude-fable-5-1|claude-fable-5-1\[1m\]|gpt-5.6-sol|gpt-6-astra)
 return 0 ;;
         *) return 1 ;;
     esac
 }
@@ -12,13 +12,13 @@ is_eligible_review_effort() {
     local model="$1"
     local effort="$2"
     case "$model" in
-        claude-opus-5|claude-opus-5\[1m\]|claude-fable-5|claude-fable-5\[1m\])
+        
claude-opus-5|claude-opus-5\[1m\]|claude-fable-5|claude-fable-5\[1m\]|claude-fable-5-1|claude-fable-5-1\[1m\])
             case "$effort" in
                 xhigh|max) return 0 ;;
                 *) return 1 ;;
             esac
             ;;
-        gpt-5.6-sol)
+        gpt-5.6-sol|gpt-6-astra)
             case "$effort" in
                 xhigh|max|ultra) return 0 ;;
                 *) return 1 ;;
diff --git a/verify/repo-review/post-comment.sh 
b/verify/repo-review/post-comment.sh
index 3c3864f..d03723d 100755
--- a/verify/repo-review/post-comment.sh
+++ b/verify/repo-review/post-comment.sh
@@ -100,11 +100,11 @@ write_meta "$HEAD_SHA"
 write_docs "$HEAD_SHA" APPROVE Minor 2 converged
 expect_failure "poster requires runtime attestation" "review-runtime.json not 
found" \
     "$S/post-pass-comment.sh" --ctx "$CTX" --dry-run
-"$S/record-review-runtime.sh" --ctx "$CTX" --model gpt-5.6-sol --effort xhigh 
>/dev/null
+"$S/record-review-runtime.sh" --ctx "$CTX" --model gpt-6-astra --effort xhigh 
>/dev/null
 
 "$S/post-pass-comment.sh" --ctx "$CTX" --dry-run > "$TMP_ROOT/dry-run"
 grep -Fq "commit: $HEAD_SHA" "$CTX/pr-comment.md" || fail "receipt commit is 
wrong"
-grep -Fq "model: gpt-5.6-sol" "$CTX/pr-comment.md" || fail "receipt model is 
wrong"
+grep -Fq "model: gpt-6-astra" "$CTX/pr-comment.md" || fail "receipt model is 
wrong"
 grep -Fq "findings: {blocker: 0, major: 0, minor: 1, nit: 0}" 
"$CTX/pr-comment.md" \
     || fail "receipt findings are wrong"
 [ -z "${RECEIPT_OUTPUT:-}" ] || cp "$CTX/pr-comment.md" "$RECEIPT_OUTPUT"
diff --git a/verify/repo-review/runtime-policy.sh 
b/verify/repo-review/runtime-policy.sh
index 83fbe01..ce2ed8f 100755
--- a/verify/repo-review/runtime-policy.sh
+++ b/verify/repo-review/runtime-policy.sh
@@ -18,19 +18,19 @@ fail() {
 # shellcheck source=/dev/null
 . "$POLICY"
 
-for model in claude-opus-5 'claude-opus-5[1m]' claude-fable-5 
'claude-fable-5[1m]' gpt-5.6-sol; do
+for model in claude-opus-5 'claude-opus-5[1m]' claude-fable-5 
'claude-fable-5[1m]' claude-fable-5-1 'claude-fable-5-1[1m]' gpt-5.6-sol 
gpt-6-astra; do
     is_eligible_review_model "$model" || fail "eligible model rejected: $model"
 done
 pass "exact model allowlist is accepted"
 
-for model in claude-opus-5.1 claude-fable-4 gpt-5.6-terra gpt-5.7-sol unknown; 
do
+for model in claude-opus-4-8 'claude-opus-4-8[1m]' claude-opus-5.1 
claude-fable-4 gpt-5.6 gpt-5.6-terra gpt-5.6-luna gpt-5.7-sol gpt-6 unknown; do
     if is_eligible_review_model "$model"; then
         fail "unlisted model accepted: $model"
     fi
 done
 pass "unlisted models are rejected"
 
-for model in claude-opus-5 'claude-opus-5[1m]' claude-fable-5 
'claude-fable-5[1m]'; do
+for model in claude-opus-5 'claude-opus-5[1m]' claude-fable-5 
'claude-fable-5[1m]' claude-fable-5-1 'claude-fable-5-1[1m]'; do
     for effort in xhigh max; do
         is_eligible_review_effort "$model" "$effort" \
             || fail "eligible Claude runtime rejected: $model ($effort)"
@@ -38,20 +38,22 @@ for model in claude-opus-5 'claude-opus-5[1m]' 
claude-fable-5 'claude-fable-5[1m
 done
 pass "Claude models accept their supported qualified efforts"
 
-for model in claude-opus-5 'claude-opus-5[1m]' claude-fable-5 
'claude-fable-5[1m]'; do
+for model in claude-opus-5 'claude-opus-5[1m]' claude-fable-5 
'claude-fable-5[1m]' claude-fable-5-1 'claude-fable-5-1[1m]'; do
     if is_eligible_review_effort "$model" ultra; then
         fail "unsupported Claude ultra effort accepted: $model"
     fi
 done
 pass "Claude models reject unsupported ultra effort"
 
-for effort in xhigh max ultra; do
-    is_eligible_review_effort gpt-5.6-sol "$effort" \
-        || fail "eligible Codex runtime rejected: gpt-5.6-sol ($effort)"
+for model in gpt-5.6-sol gpt-6-astra; do
+    for effort in xhigh max ultra; do
+        is_eligible_review_effort "$model" "$effort" \
+            || fail "eligible Codex runtime rejected: $model ($effort)"
+    done
 done
 pass "Codex accepts xhigh, max, and ultra"
 
-for model in claude-opus-5 gpt-5.6-sol; do
+for model in claude-opus-5 claude-fable-5-1 'claude-fable-5-1[1m]' gpt-5.6-sol 
gpt-6-astra; do
     for effort in minimal low medium high unknown; do
         if is_eligible_review_effort "$model" "$effort"; then
             fail "ineligible runtime accepted: $model ($effort)"


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to