track: 新增 OpenWork / Orca / Maka 三项目,样本达到 4 个

样本
- openwork (different-ai/openwork) 23.2k★ 能力分发层,DCO + evals + worlds
- orca (stablyai/orca) 58.8k★ 并行编排外壳,5000 issue 实为团队自开任务板
- maka (apache/maka) 4.4k★ 执行记录层,Apache 孵化但无正式 release

档案
- 三份五维档案填完,risk.claim_vs_reality 均已核实到证据
- ipollowork 象限坐标从占位 9/9/9/9 校准为 8/7/7/7(与新样本同一标尺)

文章
- 新增横评文《四个 Agent 工作台的路线分野:把「多引擎中立」拆开看》(emlog id=99)
- 总纲文回填四项目矩阵 + 双视图象限图 (emlog id=98)

镜像
- gitinbox/maka 已推送(public,source-only 快照 12 MB)
- openwork(291MB) / orca(671MB) 受 50KB/s 带宽约束,档案标 mode: pending

规则
- license-tiers.yaml 新增「目录切分许可」降级流程(OpenWork 判例:
  排除 ee/ 后为纯 MIT → public,完整镜像 → private)
- registry.yaml openwork 可见性改 public + mirror_excludes: ["ee/"]

脚本修复
- _common.py 新增 upsert_block:手工整块覆盖 ecosystem 删掉 metrics 时能自愈
- mirror_sync.sh:SOURCE_ONLY 未初始化(set -u 下偶发炸);
  浅仓推送被服务端拒绝 → 自动 --unshallow,失败降级快照;
  量体积前先 repack(此前新 commit 全是 loose object,恒打印 0 MB)
- build_matrix.py:成熟度长文本移出表格(新增 maturity_level 短标签);
  象限图标签靠右时翻转到左侧防溢出;SVG 加 max-width 防窄屏溢出;
  文章索引改为自动生成(原先手抄,横评文发了索引里却没有)
- publish_emlog.py:ID 回写按「有无同名档案」分流,
  00-* 跨项目文章落到 articles/<id>.meta.yaml(此前 ID 无处可写)
This commit is contained in:
gitea-publish
2026-09-01 19:27:21 +08:00
parent 78b87e8b2f
commit e5cdb1801e
18 changed files with 1771 additions and 114 deletions
+41
View File
@@ -67,6 +67,24 @@ manual_review_triggers:
- "README 自称 open source 但 SPDX 不是 OSI 认证标识(名实不符,需显式记录)"
- "LICENSE 中出现 SaaS / hosting / white-label / marketplace / resale 任一关键词"
# ---------- 混合许可的降级规则 ----------
# 自动定级只认 SPDX 标识,无法识别「目录切分许可」这类混合形态。
# 遇到需人工复核的仓库,按此流程处理:
mixed_license_procedure:
- "定位受限目录:读根目录 LICENSE 与各子目录 LICENSE,找出采用非 OSI 许可的路径"
- "评估剩余部分:确认排除受限目录后,其余内容是否为单一 OSI 许可"
- "若成立 -> 镜像时排除受限目录,可见性按剩余部分的许可定级(通常可 public)"
- "若不成立 -> 整仓按最严格的那个许可定级(通常 L3 / private)"
- "必须在档案 mirror.sync_note 与仓库内 MIRROR-NOTE.md 写明:排除了什么、为什么、如何恢复完整镜像"
# 补这条规则的缘由(注意:这是独立顶层键,不能写进上面的列表里——
# YAML 不允许序列与映射键同级混用,写进去会直接让整份 schema 解析失败)
mixed_license_note: |
这条规则是 2026-09-01 处理 different-ai/openwork 时补上的。
自动定级把它判成 L3/private,但人工复核后发现 ee/ 之外是纯 MIT,
排除 ee/ 后完全可以公开镜像——同一个仓库,两种正确答案,
取决于镜像是否包含受限目录。没有这条规则就会做出过度保守的误判。
# ---------- 已定级样本(供后续同类项目参照) ----------
precedents:
- repo: Devin-AXIS/iPolloWork
@@ -79,3 +97,26 @@ precedents:
面向客户的使用,无论个人还是企业,均需事先书面授权;且面向用户的前端
必须保留 iPolloWork 名称、Logo 与产品归属。公开镜像落入「托管/市场分发」
的解释空间,故设为私有。
- repo: different-ai/openwork
level: L3
visibility: public
decided_at: 2026-09-01
manual_review: true
trigger_hit:
- "同一仓库存在多个 LICENSE 文件(LICENSE + ee/LICENSE)"
- "README 自称 open source 但 SPDX 为 NOASSERTION"
- "ee/LICENSE 含 production / subscription / resale 关键词"
license_name: "目录切分许可:ee/ 之外 MIT;ee/ 为 OpenWork EE License"
reason: |
根目录 LICENSE(36 行)声明 ee/ 之外的部分为 MIT;
ee/LICENSE(72 行)为 OpenWork EE License,要求生产使用需订阅,
仅 5 人以下组织、30 天评估、开发测试三种情形豁免,
且每个 ee/ 版本公开发布满两年后自动追加 MIT 授权。
**排除 ee/ 目录后,镜像内容为纯 MIT,可公开分发**;
若完整镜像(含 ee/)则必须私有。
mirror_strategy: "镜像时排除 ee/ -> public;完整镜像 -> private"
lesson: |
这是「自动定级过度保守」的典型案例:SPDX=NOASSERTION 直接判 L3/private
是安全的默认值,但对目录切分许可仓库会误伤。
已据此补充 mixed_license_procedure 规则。