惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

阮一峰的网络日志
阮一峰的网络日志
Jina AI
Jina AI
GbyAI
GbyAI
D
DataBreaches.Net
人人都是产品经理
人人都是产品经理
Hugging Face - Blog
Hugging Face - Blog
V
Visual Studio Blog
P
Proofpoint News Feed
The Cloudflare Blog
H
Help Net Security
MyScale Blog
MyScale Blog
T
The Blog of Author Tim Ferriss
量子位
博客园 - 聂微东
Apple Machine Learning Research
Apple Machine Learning Research
T
Tailwind CSS Blog
博客园 - 三生石上(FineUI控件)
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
MongoDB | Blog
MongoDB | Blog
Last Week in AI
Last Week in AI
大猫的无限游戏
大猫的无限游戏
小众软件
小众软件
月光博客
月光博客

Recent Commits to openclaw:main

test: merge chat side-result checks · openclaw/openclaw@ddd2c2a test: merge cron history checks · openclaw/openclaw@f7eb746 test: merge responsive navigation shell checks · openclaw/openclaw@c2e4b47 docs(changelog): add codex oauth fixes · openclaw/openclaw@628e6cd test: merge navigation routing cases · openclaw/openclaw@5d8cecb Tests: mock channel registry bundled fallback · openclaw/openclaw@2b08233 Secrets: avoid broad web search discovery for single plugin config · openclaw/openclaw@a464f59 test: merge config view browser checks · openclaw/openclaw@20cf511 fix(status): align oauth health with runtime · openclaw/openclaw@eed7116 feat: add macOS screen snapshots for monitor preview (#67954) thanks … · openclaw/openclaw@f377db1 fix: report shared auth scopes in hello-ok (#67810) thanks @BunsDev · openclaw/openclaw@0b6c39b Auto-reply: avoid eager bundled route fallback · openclaw/openclaw@3ea1bf4 Tests: narrow session binding contract setup · openclaw/openclaw@54e4e16 fix(macOS): enable undo/redo in webchat composer text input (#34962) · openclaw/openclaw@00951dc Tests: speed up channel setup promotion · openclaw/openclaw@82b529a Docs: refresh agent instructions · openclaw/openclaw@5775fe2 fix(auth): serialize OAuth refresh across agents to fix #26322 (#67876) · openclaw/openclaw@8e79080 test: allow ollama public surface boundary test · openclaw/openclaw@7d4f1a6 Docs: add test performance guardrails · openclaw/openclaw@89706d3 Tests: restore context-engine usage proof · openclaw/openclaw@e4c4f95 Tests: slim context engine runtime coverage · openclaw/openclaw@74c198f ci: retry failed custom checkouts · openclaw/openclaw@0ee5baf test: trim duplicate provider auth onboarding cases · openclaw/openclaw@1ffc02e matrix: fix sessions_spawn --thread subagent session spawning (#67643) · openclaw/openclaw@1ce2596 test: reduce auth choice fixture churn · openclaw/openclaw@857b9cd test: mock health status config boundaries · openclaw/openclaw@9d5ab4a test: mock onboard config io boundary · openclaw/openclaw@299694d test: mock legacy state plugin boundaries · openclaw/openclaw@2713089 test: mock channel install boundaries · openclaw/openclaw@b945248 test: mock doctor preview channel boundaries · openclaw/openclaw@b1a3ad4
ci: require Mantis app for QA comments (#76834) · opencla...
steipete · 2026-05-04 · via Recent Commits to openclaw:main
Original file line numberDiff line numberDiff line change

@@ -33,7 +33,6 @@ env:

3333

PNPM_VERSION: "10.33.0"

3434

OPENCLAW_BUILD_PRIVATE_QA: "1"

3535

OPENCLAW_ENABLE_PRIVATE_QA_CLI: "1"

36-

HAS_MANTIS_GITHUB_APP: ${{ secrets.MANTIS_GITHUB_APP_ID != '' && secrets.MANTIS_GITHUB_APP_PRIVATE_KEY != '' }}

3736
3837

jobs:

3938

authorize_actor:

@@ -269,7 +268,7 @@ jobs:

269268
270269

- name: Create Mantis GitHub App token

271270

id: mantis_app_token

272-

if: ${{ always() && inputs.pr_number != '' && env.HAS_MANTIS_GITHUB_APP == 'true' }}

271+

if: ${{ always() && inputs.pr_number != '' }}

273272

uses: actions/create-github-app-token@v3

274273

with:

275274

app-id: ${{ secrets.MANTIS_GITHUB_APP_ID }}

@@ -283,11 +282,12 @@ jobs:

283282

- name: Comment PR with inline QA screenshots

284283

if: ${{ always() && inputs.pr_number != '' && steps.run_mantis.outputs.output_dir != '' }}

285284

env:

286-

GH_TOKEN: ${{ steps.mantis_app_token.outputs.token || github.token }}

285+

GH_TOKEN: ${{ steps.mantis_app_token.outputs.token }}

287286

TARGET_PR: ${{ inputs.pr_number }}

288287

ARTIFACT_URL: ${{ steps.upload_artifact.outputs.artifact-url }}

289288

BASELINE_SHA: ${{ needs.validate_refs.outputs.baseline_revision }}

290289

CANDIDATE_SHA: ${{ needs.validate_refs.outputs.candidate_revision }}

290+

MANTIS_COMMENT_BOT_LOGIN: openclaw-mantis-qa[bot]

291291

shell: bash

292292

run: |

293293

set -euo pipefail

@@ -366,7 +366,7 @@ jobs:

366366
367367

comment_id="$(

368368

gh api --paginate "repos/${GITHUB_REPOSITORY}/issues/${TARGET_PR}/comments" \

369-

--jq '.[] | select(.body | contains("<!-- mantis-discord-status-reactions -->")) | .id' \

369+

--jq ".[] | select(.body | contains(\"<!-- mantis-discord-status-reactions -->\")) | select(.user.login == \"${MANTIS_COMMENT_BOT_LOGIN}\") | .id" \

370370

| tail -n 1

371371

)"

372372
Original file line numberDiff line numberDiff line change

@@ -355,9 +355,9 @@ messages, and other bulky evidence stay in the Actions artifact.

355355

Production workflows should post those comments with the Mantis GitHub App, not

356356

with `github-actions[bot]`. Store the app id and private key as

357357

`MANTIS_GITHUB_APP_ID` and `MANTIS_GITHUB_APP_PRIVATE_KEY` GitHub Actions

358-

secrets. If those secrets are missing, the workflow may fall back to

359-

`github-actions[bot]` for local bring-up, but that is not the desired long-term

360-

identity.

358+

secrets. The workflow should update an existing Mantis-owned comment when one

359+

exists; if only an older `github-actions[bot]` comment exists, it should create a

360+

new Mantis-owned comment instead of rewriting the legacy bot comment.

361361
362362

The PR comment should be short and visual:

363363