fix(mirror): 翻 public 的时机、快照强推、上游不可用时降级
四处修复,都来自本次重跑 openwork 时实际踩到的失败: 1. 翻 public 从「推送之前」移到「推送成功之后」 原实现先翻可见性再推,踩出「仓库已 public + 内容还是旧快照」的窗口期: --set-public 成功 → 推送被拒(source-only 历史不连续) → 公开了旧版本。 旧内容虽不含 ee/(合法),但公开了不该公开的版本,正是最该避免的局面。 正确顺序:先推对内容,再翻可见性;任一步失败都停在 private,无害。 收紧方向(private)仍留在同步前——锁起来永远安全,早做没代价。 2. source-only 快照改强推 每次快照都是 checkout → git init → 单次 commit,与远端上次快照无血缘, 永远不可能 fast-forward。改了排除项后重跑必被拒:"! [rejected] fetch first"。 强推在此语义正确:source-only 保的是当前源码状态,不是历史链。 3. 新增 --no-fetch GitHub 连不上(Empty reply from server)时脚本在 fetch 阶段就退出, 本地裸仓明明有 18763 条 commit 却什么都做不了。 上游不可用不该阻止用已有内容重做快照。 4. 补充 LICENSES/LicenseRef-OpenWork-EE.txt 到 openwork 的 excludes 详见上一提交,此处是让它真正生效后落库。 新增 scripts/validate.py:档案 schema 校验。 起因是我手写临时探针把 risk.claim_vs_reality 写成顶层字段, 得到「该字段 0 条」的错误结论——层级写错不报错,只会安静返回 0。 校验项含:核心字段完整性、claim_vs_reality 下限与 source 必填、 excludes 与 redistributable_after_excludes 的一致性、 以及自动抓「七个里」这类随样本增加即过时的计数表述。 当前 7 个项目全部通过。
This commit is contained in:
@@ -224,9 +224,9 @@ verdict:
|
||||
|
||||
mirror:
|
||||
gitea_repo: gitinbox/openwork
|
||||
visibility: private
|
||||
visibility: public
|
||||
upstream: "https://github.com/different-ai/openwork"
|
||||
last_sync: 2026-09-01
|
||||
last_sync: 2026-09-02
|
||||
mode: source-only
|
||||
# 目录切分许可:ee/ 之外是 MIT,ee/ 是 EE License。
|
||||
# 本档案的 visibility: public **完全建立在「这个排除真的生效」这个前提上**——
|
||||
|
||||
Reference in New Issue
Block a user