refactor(ci,docs): gitcode 镜像仓改名 HomeAgent→HologramAgent,定义点取值对齐

gitcode 侧镜像仓已完成改名,旧名 HomeAgent 变成 301 跳转,真仓是
HologramAgent。dbb787a 里三处 GC_REPO 定义点仍取旧名(命中 301),本批只
改取值与说明,**不改变 dbb787a 已建立的「每个文件恰一个定义点」结构**,
不引入任何新字面量。

实测(2026-10-21 20:1x,直连不带代理,非推测):
  $ curl -s -o /dev/null -w '%{http_code}' https://gitcode.com/JianFeeeee/<repo>

  HologramAgent     → 200  ← 当前取值
  HomeAgent         → 301  ← 旧名,跳转到 HologramAgent
  homeagent-sdk     → 200(SDK 仓,另一对象)
  hologramagentsdk  → 200(SDK 仓,另一对象)
  homeagentsdk      → 404
  HologramAgent-sdk → 404

「301 不是另一个仓,就是同一仓改名」的判定依据:两个地址 `git ls-remote`
得到的 refs 列表 md5 相同(同一组分支与 SHA),且 curl 页面 title 一致。

三个定义点(各文件恰好 1 处,消费点全部走变量,本次只改这三行的取值):
1. .github/workflows/ci.yml   job sync-gitcode-main 的 env.GC_REPO
2. .github/workflows/release.yml job sync-gitcode   的 env.GC_REPO
3. deploy/scripts/upload_assets.py 的 os.environ.get("GITCODE_REPO", ...) 默认值
消费点未动:ci.yml 2 处、release.yml 4 处命令行,仍全部是 ${GC_REPO}。

注释同步改准(原来把 301 的仓写成「200 ← 当前用这个」,是错的):
- 两个 workflow 的取值依据清单换成上面六个仓的现状,注明实测时间与 curl 命令
- 明确 HomeAgent = 301 跳转、HologramAgent = 当前取值
- 「以后再改名只改这三行」的说明保留

docs/zh/ci-cd-runbook.md 同步:
- 总览表 gitcode 镜像改为 HologramAgent(与主仓同名)
- 「当前取值」段与六仓实测表、301 判定依据
- API 侧口径也改准:/api/v5/repos/JianFeeeee/{HomeAgent,HologramAgent}
  不带 token 均 400(需鉴权,非仓不存在);/releases/tags/v1.3.13
  两名字均 200 且响应体一致。旧文档写「HologramAgent→404 是死链」已不成立。
- §3.3 curl 验活地址、§3.4 手工上传示例的 GITCODE_REPO 同步为新值

判据(正向 14 项 + 变异 11 条,全部实跑):
- 两个 workflow yaml.safe_load 解析通过;每个 env.GC_REPO 恰好 1 处
- 三处定义点取值完全一致(P4);消费点计数 ci=2/release=4(P6)
- P8 改为「不带 -L 的 200」:这正是本次误判的根因——之前用 curl -L 测,
  301 跟随后也是 200,把「旧名跳转」误读成「旧名是真仓、新名 404」
- 变异 M11「三处一致改回旧名 HomeAgent」只被 P8 抓住(P4 仍绿),
  证明该判据能单独区分「一致但指向 301 旧名」
- 所有 step run 块过 bash -n(30 个 run 块,0 错)
- gitcode 作 import host 残留 0;工作区无 .go/.lua/go.mod/go.sum 变更

零代码改动:packaging_test.go 里「禁止历史模块路径」的反向断言未动,
third_party 未动,systemd 相关行未动。
This commit is contained in:
JianFeeeee
2026-10-21 20:15:41 +08:00
parent dbb787a658
commit ffe9bc2cff
4 changed files with 72 additions and 35 deletions

View File

@ -234,11 +234,21 @@ jobs:
# 因为它们是不同的 workflow —— 改的时候两个文件都要改,但每个
# 文件内部只有一个定义处)。
#
# 取值依据(实测 2026-10-21,curl 直连,非推测):
# https://gitcode.com/JianFeeeee/HomeAgent → 200 ← 当前用这个
# https://gitcode.com/JianFeeeee/HologramAgent → 404
# 取值依据(实测 2026-10-21 20:1x,直连不带代理,非推测):
# $ curl -s -o /dev/null -w '%{http_code}' \
# https://gitcode.com/JianFeeeee/<repo>
#
# 背景:GitHub 主仓已改名 HologramAgent,gitcode 侧镜像仓未改名。
# https://gitcode.com/JianFeeeee/HologramAgent → 200 ← 当前用这个
# https://gitcode.com/JianFeeeee/HomeAgent → 301 ← 旧名,跳转到上面
# https://gitcode.com/JianFeeeee/homeagent-sdk → 200(SDK 仓,另一对象)
# https://gitcode.com/JianFeeeee/hologramagentsdk → 200(SDK 仓,另一对象)
# https://gitcode.com/JianFeeeee/homeagentsdk → 404
# https://gitcode.com/JianFeeeee/HologramAgent-sdk → 404
#
# 背景:gitcode 侧镜像仓已由 HomeAgent 改名为 HologramAgent(与 GitHub
# 主仓同名)。旧地址 HomeAgent 仍 301 跳转,跟随后也能到达,但走重定向
# ⇒ 别再用它(git 侧会多一跳,且改名前的旧名随时可能被彻底释放)。
# 判定两仓同一对象:两地址 git ls-remote 的 refs 列表 md5 相同。
#
# ⚠ 失败面(与 release.yml 不同,别搞混):
# 本 job 的 needs 是 [go, race, cross, gui, csrc, docs]。前置检查
@ -246,9 +256,10 @@ jobs:
# 而 release.yml 的 sync-gitcode 只红在镜像同步这一格,GitHub 侧
# release 产物已经发出去了。
#
# 何时改回 HologramAgent:gitcode 上仓真正存在且返回 200 后,只改这一行。
# 以后再改名:gitcode 侧仓名一变,只改这一行(+ release.yml 与
# upload_assets.py 各一行,共三个定义点)。
# ══════════════════════════════════════════════════════════════════
GC_REPO: JianFeeeee/HomeAgent
GC_REPO: JianFeeeee/HologramAgent
steps:
- id: tok
name: 检查 gitcode 凭据