docs: 翻掉我上轮漏掉的三处,并修正发布说明里一条错误建议
Some checks failed
Tests / test (push) Has been cancelled

上一轮我说"剩余中文都合理",说得太满。这三处不合理:

1. bootable/linux-setup/test-installation.sh —— 在用户的 Linux 机器上跑的
   自检脚本,输出中英混杂(check "安装目录存在" ... "Directory $INSTALL_DIR")

2. issue / PR 模板 —— 贡献者第一眼看到的东西,而 CONTRIBUTING.md 已经是
   英文了。顺带修掉模板里指向上游官网和上游微信的链接(那些我们控制不了),
   改为指向本仓库。PR 模板加了一条"说明你在哪个平台跑过" —— 只在 Mac 上
   验证过的 .bat 改动一直是本项目最主要的故障来源。

3. release.yml 的发布说明正文 —— 那是用户在 release 页面读到的文字,内容
   还停留在旧产品(DeepSeek/通义、预装微信 QQ 钉钉飞书企微)。

第 3 项里还有一条**和事实相反**的建议:它让用户把 U 盘格式化成 NTFS。
macOS 对 NTFS 只读,照做正好会让"配置跟着盘走"这个核心卖点在 Mac 上
彻底失效。改为 exFAT,并说明为什么慢、以及我们如何用本机缓存补偿。

track-upstream.yml 的输入描述和输出也翻了 —— 它们会显示给手动触发
workflow 的人。
This commit is contained in:
2026-08-17 19:24:55 +08:00
parent 3221856d50
commit 45026b9d35
7 changed files with 175 additions and 149 deletions

View File

@@ -22,11 +22,11 @@ on:
workflow_dispatch:
inputs:
force_version:
description: '强制使用的上游 OpenClaw 版本(留空=用 npm latest'
description: 'Pin a specific upstream OpenClaw version (blank = whatever npm says is latest)'
required: false
default: ''
dry_run:
description: '只检测不改动(true/false'
description: 'Check only, change nothing (true/false)'
required: false
default: 'false'
@@ -58,13 +58,13 @@ jobs:
force="${{ github.event.inputs.force_version }}"
if [ -n "$force" ]; then
latest="${force#v}"
echo "强制指定上游版本: $latest"
echo "Forced upstream version: $latest"
else
latest="$(npm view openclaw version --registry=https://registry.npmjs.org 2>/dev/null | tr -d '[:space:]')"
echo "npm latest openclaw: $latest"
fi
if [ -z "$latest" ]; then
echo "::error::无法获取上游 openclaw 版本(npm view 失败)"
echo "::error::Could not read the upstream openclaw version — npm view failed"
exit 1
fi
echo "latest=$latest" >> "$GITHUB_OUTPUT"
@@ -76,7 +76,7 @@ jobs:
shell_ver="$(node -p "require('./u-claw-app/package.json').version")"
echo "pinned=$pinned" >> "$GITHUB_OUTPUT"
echo "shell_ver=$shell_ver" >> "$GITHUB_OUTPUT"
echo "当前 pin: $pinned | 壳版本: $shell_ver"
echo "Currently pinned: $pinned | shell version: $shell_ver"
- name: Decide whether to bump
id: decide
@@ -84,18 +84,18 @@ jobs:
latest="${{ steps.upstream.outputs.latest }}"
pinned="${{ steps.current.outputs.pinned }}"
if [ "$latest" = "$pinned" ]; then
echo "✅ 已是最新pin=$pinned无需发版。"
echo "Already up to date (pinned=$pinned) — nothing to release."
echo "changed=false" >> "$GITHUB_OUTPUT"
exit 0
fi
# 只在 latest 严格 > pinned 时发版(避免上游撤版导致回退)
newer="$(printf '%s\n%s\n' "$pinned" "$latest" | sort -V | tail -1)"
if [ "$newer" != "$latest" ]; then
echo "⚠️ npm latest ($latest) 不比当前 pin ($pinned) 新,跳过。"
echo "npm latest ($latest) is not newer than the pin ($pinned) — skipping."
echo "changed=false" >> "$GITHUB_OUTPUT"
exit 0
fi
echo "🆕 发现上游新版: $pinned $latest"
echo "Upstream has moved: $pinned -> $latest"
echo "changed=true" >> "$GITHUB_OUTPUT"
- name: Compute next shell version (patch bump)
@@ -106,7 +106,7 @@ jobs:
IFS='.' read -r MA MI PA <<< "$cur"
PA=$((PA + 1))
next="${MA}.${MI}.${PA}"
echo "壳版本 bump: $cur $next"
echo "Bumping shell version: $cur -> $next"
echo "next=$next" >> "$GITHUB_OUTPUT"
- name: Apply changes (pin + version files)
@@ -123,7 +123,7 @@ jobs:
# 这里写一份让 main 分支也保持一致。
node -e "const f='u-claw-app/package.json';const p=require('./'+f);p.version='$next';require('fs').writeFileSync(f, JSON.stringify(p,null,2)+'\n')"
echo "已写入: OPENCLAW_VERSION=$latest, 壳版本=$next"
echo "Wrote OPENCLAW_VERSION=$latest, shell version=$next"
- name: Commit, tag & push
if: steps.decide.outputs.changed == 'true' && github.event.inputs.dry_run != 'true'
@@ -135,10 +135,10 @@ jobs:
git config user.email "bot@u-claw.org"
git add OPENCLAW_VERSION portable/OPENCLAW_VERSION u-claw-app/package.json
git commit -m "chore(upstream): 跟随 OpenClaw $latest,发布 v$next
git commit -m "chore(upstream): follow OpenClaw $latest, release v$next
自动跟踪上游OpenClaw npm latest 升到 $latest
自动 bump 壳版本到 $next 并打 tag 触发发版。"
Automated: upstream OpenClaw moved to $latest, so the shell version
is bumped to $next and tagged, which triggers a release."
git push origin HEAD:main
@@ -146,10 +146,10 @@ jobs:
git tag "v$next"
git push origin "v$next"
echo "✅ 已推送 v$nextrelease.yml 将自动构建并发布。"
echo "Pushed v$nextrelease.yml will build and publish it."
- name: Dry-run summary
if: steps.decide.outputs.changed == 'true' && github.event.inputs.dry_run == 'true'
run: |
echo "🔍 DRY RUN — 不改动。"
echo "若执行将:OPENCLAW_VERSION ${{ steps.current.outputs.pinned }} ${{ steps.upstream.outputs.latest }},发布 v${{ steps.nextver.outputs.next }}"
echo "DRY RUN — nothing changed."
echo "Would set OPENCLAW_VERSION ${{ steps.current.outputs.pinned }} -> ${{ steps.upstream.outputs.latest }} and release v${{ steps.nextver.outputs.next }}"