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]