Commit Graph

245 Commits

Author SHA1 Message Date
a7411ab07c fix(web-access): 开发者工具类动作指向 BrowserDevtools,兼容拆分前的客户端(3.4.5) (#206)
desirecore/desirecore#3899 把 BrowserAct 的 21 个开发者工具类动作拆到独立工具 BrowserDevtools,它不随本技能注入。技能在工具表后说明:需要时先 DiscoverTools(query="select:BrowserDevtools") 加载,参数与 BrowserAct 相同;查不到说明客户端早于拆分,同样的 action 与参数在 BrowserAct 上调用。写法不依赖客户端版本,所以不设 required_client_version,也不把 BrowserDevtools 加进 provides.tools。

references/browser-tools.md 新增 BrowserDevtools 一节,cdp.raw 的已知边界、错误处理与调用链路同步更新。技能版本 3.4.5,sidecar 的 release.version 与 catalogUpdatedAt 同步,i18n source_hash 重算。

English: Point web-access's developer-tool actions at BrowserDevtools, the
tool split out of BrowserAct in desirecore/desirecore#3899. The skill loads
it on demand through DiscoverTools and falls back to the same action on
BrowserAct for clients that predate the split, so no client version floor
is needed. Bump to 3.4.5 with synced sidecar metadata and a recomputed i18n
source hash.

验证 / Validation: i18n validation and catalog metadata checks report zero
errors (existing repository warnings remain); translation freshness check
passes.
2026-10-03 23:27:59 -07:00
9bd9f6dfdb feat(market): 更新团队发布指针与兼容门槛 (#205)
更新标书联合审查与合同审查团队的已审核发布指针,分别对应 0.2.2 和 0.1.39,并补充成员默认收纳、用户显示偏好优先的说明。

两条 entry 与目录元数据统一要求 DesireCore 10.0.178 或更新且支持 `team.json.memberDisplay`
的客户端。目录可提前发布;10.0.177(包括仍标为该版本的开发构建)会在市场安装前提示升级。该版本下限不表示兼容客户端已经发布。

同时将 Market 版本提升到 1.5.8,更新目录日期及两个 Agent
管理技能的目录更新时间。成员名册、成员锁版本和头像映射保持与上游发布一致。

验证:完整目录和 i18n 校验零错误、无新增警告;翻译新鲜度检查通过;最新团队配置通过当前 schema 校验,旧版 schema
拒绝该字段;安装版本门控确认拦截 10.0.177。

English: Update the reviewed Tender Review Team and Contract Review Team
pointers to 0.2.2 and 0.1.39. Document the nested member display default
and explicit user preferences. Set the client installation floor to
10.0.178 with memberDisplay support so older clients receive an upgrade
notice before importing incompatible manifests. This floor does not
claim that a compatible release is already available. Bump the catalog
to 1.5.8 and correct catalog timestamps. Catalog, localization,
source-manifest and version-gate checks pass with no new warnings.
2026-10-03 06:34:53 -07:00
bdda7aba89 feat: document asynchronous avatars for created agents (#204)
创建和更新智能体的中英文技能现在说明自动异步头像:默认透明真人,显式外貌/风格/背景要求优先;用户图片优先,删除或关闭可取消任务。旧客户端按实际工具
Schema 使用,图像服务条款、额度与费用明确披露。

The bilingual creation/update skills document automatic asynchronous
avatars, user customization, image precedence, cancellation,
older-client schema detection, and image-provider prerequisites and
costs.

验证 / Validation: focused i18n validation and translation freshness
passed; catalog validation has zero errors (existing repository warnings
remain).
2026-10-03 04:19:19 -07:00
7ce79c5cc9 feat: 为两个市场团队及全部成员发布透明头像 (#203)
## Summary

Publish transparent portraits for both marketplace teams and all 11
roster members. Team cards use the supervisor portrait; a separate
`member-avatars.v1.json` sidecar supplies member images without changing
the strict `entry.json` member contract accepted by older clients. The
two catalog pointers now reference the merged team releases and their
updated member locks.

为市场中的两个团队和全部 11 位成员发布透明人像。团队卡片复用组长形象,成员图片由独立 sidecar
提供,旧客户端仍可读取原有团队条目。团队指针更新至已合并的团队版本与成员锁文件。

## Validation

- Catalog metadata validation: 0 errors (123 existing warnings)
- i18n validation: 0 errors (123 existing warnings)
- Translation freshness: passed
- Image assets: all 11 member portraits and 2 team portraits are
transparent WebP files
2026-09-30 18:13:27 +08:00
81aa0cf450 Add transparent portrait avatars for market digital employees (#202)
The catalog previously showed opaque icons or text fallbacks for the
seven digital employees, and source-pointer installs could still get
different avatars. This updates every catalog card to a 512×512
transparent portrait, bumps the listed releases, and pins the six source
repositories to commits that include the matching AgentFS avatar.

Validation: `validate_catalog_metadata.py --require-complete` (0
errors), `validate-i18n.py` (0 errors), and `translate.py --check`. All
seven WebP files have an alpha channel with fully transparent pixels and
are below 50 KB each.
2026-09-30 15:53:13 +08:00
daa95424e7 chore(invoice-organizer): 1.1.1 —— pin 到内容仓库合并提交 (#201)
三处 ref 改为内容仓库 9dd9af4b(desirecore-agent/invoice-organizer#8),latestVersion 与 release.version 改为 1.1.1。
2026-09-30 10:27:09 +08:00
4804ce364c chore(invoice-organizer): 1.1.0 —— pin 到内容仓库合并提交 (#200)
三处 ref 改为内容仓库 3e5a530f(desirecore-agent/invoice-organizer#7),latestVersion 与 release.version 改为 1.1.0。
2026-09-30 09:55:26 +08:00
e3d3fe2eda chore(invoice-organizer): 1.0.9 —— pin 到内容仓库合并提交 (#199)
三处 ref 改为内容仓库 fc02a348(desirecore-agent/invoice-organizer#6),latestVersion 与 release.version 改为 1.0.9。
2026-09-30 09:29:36 +08:00
d176e84a96 chore(invoice-organizer): 1.0.8 —— pin 到内容仓库合并提交 (#198)
三处 ref 改为内容仓库 0796408b(desirecore-agent/invoice-organizer#5),latestVersion 与 release.version 改为 1.0.8。
2026-09-29 23:24:46 +08:00
2ef4f9ada3 chore(invoice-organizer): 1.0.7 —— pin 到内容仓库合并提交 (#197)
三处 ref pin 到
[desirecore-agent/invoice-organizer#4](https://github.com/desirecore-agent/invoice-organizer/pull/4)
的合并提交 `27c1896036e9a8988aa4d112ab7092d4dee75cda`,`latestVersion` /
`release.version` 升到 1.0.7。

Pins the invoice-organizer pointer entry to content commit `27c1896`
(1.0.7).

1.0.7 修正 1.0.6 真机验证暴露的三个行为问题:换用目录只 `add` 不设主目录导致 Plan
与增量自动化写进旧目录;模型中途自行收工;自写脚本直连邮件服务打错端口。内容仓库 PR 经独立子代理两轮审查,结论可合并。校验器 0
error。

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-09-29 08:09:39 -04:00
40bd2dc1cf chore(invoice-organizer): 1.0.6 —— pin 到内容仓库合并提交 (#196)
## 改动 / Changes

- `entry.json` 与 `catalog-metadata.v1.json` 的三处 ref pin 到
[desirecore-agent/invoice-organizer#3](https://github.com/desirecore-agent/invoice-organizer/pull/3)
的合并提交 `53b8a745bd008ab8be4833e28724db6b0801976f`
- `latestVersion` / `release.version` 1.0.5 → 1.0.6

Pins the invoice-organizer pointer entry to content commit `53b8a74`
(1.0.6).

## 1.0.6 内容 / What's in 1.0.6

1.0.5 在开发实例从零整理真实邮箱只入账 51 张(应约 67 张),逐封对照本地缓存后定位到:列候选直接拿
`messages/fetch`
的翻页结果(按序号窗口取会漏一类发票邮件)、按信头日期停翻、下载前按文件名预筛掉航空电子行程单、每封只下一个载体。1.0.6:

- 列候选改为两步:先把本地缓存补齐到覆盖整个时间段(Gmail 用放宽一天的服务端日期查询翻到底;IMAP 收件箱 / Outlook
每页后重数「晚于起始日期的邮件数」G,`offset` 达到 G 之后连续两页不增长才停;IMAP 自定义文件夹不走缓存),再按日期搜缓存、按
`total` 翻到底
- 候选邮件的附件全部下载,不按文件名预判、不挑载体;判定阶梯新增否定条挡住行程明细
- 旧客户端(列表响应只剩「省略 1 行」)逐级降 `limit`,读不了的记入待处理;失败计数与「判为非发票」分开
- 内容仓库 PR 经独立子代理五轮审查(高 5 / 中 12 / 低若干,全部处理),第五轮结论可合并

## 验证 / Verification

- `validate_catalog_metadata.py --require-complete`:0 error
- `agent.json` 用 dev 的 `validateAgentConfig` 实跑 `success: true`

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-09-29 07:21:27 -04:00
149174e127 chore(invoice-organizer): 1.0.5 —— pin 到内容仓库合并提交 (#195)
## 改动 / Changes

- `entry.json` 与 `catalog-metadata.v1.json` 的三处 ref pin 到
[desirecore-agent/invoice-organizer#2](https://github.com/desirecore-agent/invoice-organizer/pull/2)
的合并提交 `b2e6d69f0df2345e282ceea424afce0b9345d97f`
- `latestVersion` / `release.version` 1.0.4 → 1.0.5
- `compatibility.requirements` 的 runtime 一条补上 XML 解析与系统自带解压工具(unzip /
python3 / bsdtar),与 Agent 的 USAGE 口径一致

Pins the invoice-organizer pointer entry to content commit `b2e6d69`
(1.0.5) and syncs the runtime requirement text with the Agent's USAGE.

## 1.0.5 内容 / What's in 1.0.5

- 收下 `.zip` / `.xml` 附件:12306 把铁路电子客票打成 zip 发,此前整封邮件被跳过(真实邮箱实测漏 8 张);zip
只经技能自带的 `unpack-zip.sh` 解包,附件名与条目名不进命令行,四种模式 × 9
个用例(含命令注入、输出伪造、符号链接、加密、压缩炸弹、GBK 名、macOS 元数据)实测
- 数电票 XML 作为优先级最高的载体;「电子发票(铁路电子客票)」按 8 张真票重写并新增 D 族键表
- 识别红字发票(`InIssuType`、备注、`RedEInvoice`、负数合计),台账成对标出已红冲 / 部分红冲
- 下载失败与解不开的内层压缩包落盘到 `ledger.json#unprocessed`;附件逐个下载;不把整理流程委派给别的 Agent
- 内容仓库 PR 经独立子代理三轮审查(高 1 / 中 9 / 低若干,全部处理),第三轮结论「可以合并」

## 验证 / Verification

- `validate_catalog_metadata.py --require-complete`:0 error(agents=7)
- 新增文本无真实邮箱、税号、发票号码或公司名

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-09-29 05:40:51 -04:00
74184056c4 fix(mail-operations): 按现行邮件服务路由修正技能文档(1.0.6) (#194)
## 背景 / Background

发票整理 Agent 在隔离开发实例里真机整理 QQ 邮箱时,按内置技能 `mail-operations` 的写法调用 IMAP
附件下载,拿到 400 `Missing required parameters`:技能写的请求体是 `{email, uid, folder,
partId}`,而 `POST /imap/attachment` 从 2026-03 创建起就只认 `{email, messageId,
attachmentId, folder?}`。顺着这一处,对照 desirecore origin/dev(`c1e2c5ac0`)的
`lib/mail-service/` 与 `MailOperations` 工具把整份技能逐条核对了一遍。

While a real-mailbox run of the invoice agent was downloading QQ Mail
attachments, the builtin `mail-operations` skill's IMAP attachment body
(`{email, uid, folder, partId}`) returned 400; the route has always
taken `{email, messageId, attachmentId, folder?}`. This PR re-audits the
whole skill against the current mail service routes.

## 改动 / Changes

共修正 27 处不一致:会直接导致调用失败 9 处、会误导能力判断 10 处、措辞 8 处。主要有:

- **调用入口**:改为 `MailOperations`(path 带 `/api`,capability
由工具注入);原文的固定端口、「无需认证」、`curl -k` 都不成立
- **附件**:body 字段更正;必须带 `save_to` 落盘(不带会被工具拒绝返回),回执给出路径、字节数、SHA-256
- **参数位置**:`messages/fetch`、`/sync`、IMAP 草稿发送的 `email`(以及 `/sync` 的
`provider`)放查询串;IMAP 草稿收件人是逗号分隔的 `to` / `cc`,更新草稿会换成新 uid
- **folder**:IMAP 单封操作要用 `GET /imap/folders` 返回的服务器路径,列表里的归一化值会 500
- **规则**:operator 是 `matches_regex`(未知 operator 恒为 false
且创建时不校验);`archive` / `move_to_folder` / `forward_to` / `star` 是空操作
- **搜索**:三个 provider 都支持,只查本地缓存、`q` 只匹配主题;Gmail 全文检索改用 `messages/fetch`
的 `query`
- **IMAP 仅收信账户**:`allowUnverifiedSmtp`、`smtp_verification_failed`、409
`smtp_unverified`、`verify-smtp`(失败也返回 200)
- **离线队列**:不会自动入队或处理,只改本地,`processed` 计数不代表执行
- 响应字段名(`toRecipients`、`bodyPreview` 等)、同步状态文件、`/imap/test` 返回形态等措辞修正
- 版本 1.0.6;新增 `market.required_client_version: 10.0.148` 与 sidecar
`compatibility.requiredClientVersion`——`MailOperations`(10.0.95)、`save_to`
与 Outlook/IMAP search(10.0.146)、`imap:<uid>` / fetch `offset` / folder
归一化(10.0.148)分版本上线,旧客户端按新文档操作会静默失败,门控让它们保留旧版

## 验证 / Verification

- 写补丁与审查由两个独立子代理完成:审查方对 9 处致命项全部、另外 13 处抽查逐条对照代码行,均成立;审查意见(最低客户端版本、IMAP
更新草稿换 uid、`/sync` 参数、Gmail 远程检索、`verify-smtp` 返回形态、离线队列计数、响应示例矛盾)已全部采纳
- 各项最低版本用 `git tag --contains` 对照发布 tag 复核
- `translate.py --check`:en-US human-locked 且 hash 新鲜(`source_hash` 按
`compute_source_hash` 重算)
- `validate-i18n`:0 error,123 warning(与 main 基线相同)
- `validate_catalog_metadata --require-complete`:0 error
- `git diff --check` 通过;新增行只有 `example.com` 占位地址,无真实邮箱、姓名、公司名或长数字编号

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-09-29 05:07:39 -04:00
d2125e5b2a fix: 修正 video-use 根目录来源路径 (#193)
## Summary / 摘要

- Omit `source.path` and `provenance.content.path` for the upstream
repository root. The DesireCore resolver treats an absent path as the
root and rejects `.` as an unsafe path segment.
- Keep the item `listing-only` until ref-bound governance review
evidence and platform/setup validation are complete.

- 上游来源指向仓库根目录时省略 `source.path` 和 `provenance.content.path`。DesireCore 在
path 缺省时按仓库根目录解析,并会拒绝 `.` 路径段。
- 在补齐固定版本的治理审查证据并完成平台/安装验证前,继续将条目标记为仅供发现。

## Validation / 校验

- `uv run scripts/i18n/validate-i18n.py skills/video-use` — passed with
0 errors (existing catalog warnings remain).
- `uv run scripts/catalog/validate_catalog_metadata.py
--require-complete` — passed with 0 errors.
- `uv run scripts/i18n/translate.py --check` — passed.
- `git diff --check` — passed.
2026-09-29 04:56:49 -04:00
0e279fd811 feat: 添加 video-use 视频剪辑技能入口 (#192)
## Summary / 摘要

- Add a pinned Market pointer for the upstream `browser-use/video-use`
skill, with English and Chinese discovery text.
- Add catalog metadata for its MIT license, source provenance,
Python/ffmpeg prerequisites, and ElevenLabs Scribe API key and
usage-cost requirement.
- Keep the listing discovery-only until installation and governance
review are completed.
- Add the entry to Market statistics. No upstream skill code is
vendored.

- 新增固定到上游提交的 `browser-use/video-use` 市场入口及中英文介绍。
- 补充 MIT 许可、来源、Python/ffmpeg 前置条件,以及 ElevenLabs Scribe 密钥和可能产生的 API 费用。
- 完成安装与治理审查前,条目标记为仅供发现。
- 更新 Market 条目统计,不复制上游技能代码。

## Validation / 校验

- `uv run scripts/i18n/validate-i18n.py skills/video-use` — passed with
0 errors (existing catalog warnings remain).
- `uv run scripts/catalog/validate_catalog_metadata.py
--require-complete` — passed with 0 errors.
- `uv run scripts/i18n/translate.py --check` — passed.
- `git diff --check` — passed.
2026-09-29 04:19:49 -04:00
0d0e745ef0 chore(invoice-organizer): 1.0.4 —— pin 到内容仓库合并提交 (#191)
发票整理助手内容仓库 desirecore-agent/invoice-organizer#1 已合并为 553ce87。
三处 ref 同步 pin 到该提交;latestVersion 与 release.version 升到 1.0.4;
reviewedAt 两处与各时间戳更新到 2026-09-29,保持结构化形态。
校验器 0 error,agents=7。

1.0.4:同票多载体先读 OFD、补两族 OFD 标引键名、航空电子行程单按计税依据拆分
(民航发展基金记入新增的 otherCharges)、必印字段为空不算通过且多轮只补全不清空。
2026-09-29 04:05:13 -04:00
mashagua
6fbd5590a7 fix: dingtalk-cli 上游迁移至 DingTalk-Real-AI/dingtalk-workspace-cli (#187)
## 概述
`skills/dingtalk-cli` 指向的上游 `open-dingtalk/dingtalk-workspace-cli` 已
404(`git ls-remote` 返回需要认证,仓库已删除或转为私有),客户端按该指针已无法获取内容。本 PR 将指针迁移到项目现在的地址
[DingTalk-Real-AI/dingtalk-workspace-cli](https://github.com/DingTalk-Real-AI/dingtalk-workspace-cli)。

## 为什么认定是同一项目
- 新仓库 README / README_zh、brew tap、Releases、SECURITY 链接全部指向
`DingTalk-Real-AI/dingtalk-workspace-cli`,产品名、`dws` 命令、Apache-2.0 许可一致。
- 新仓库最新提交 `7de51a8`(2026-09-23)是 `v1.0.63-beta.3` 的 formula 更新,与 npm
`dingtalk-workspace-cli` 当前 beta 版本号一致。
- 注意:npm 包元数据的 `repository` 仍写着旧地址,尚未随迁移更新。请 reviewer 确认是否认可新组织为官方来源。

## 变更
- `source.repoUrl`、sidecar `provenance.content.url` → 新地址;`maintainer` /
`upstreamMaintainer` → `DingTalk-Real-AI`(`url` 仍为 npm 包页)。
- 上游子技能目录已从 `multi/` 移到 `skills/multi/`,14 个 `children[].path`
同步修正(已逐一确认新地址下存在 `SKILL.md`)。
- 新增上游新子技能 `dingtalk-tag`(数字员工管理),`childCount` 14 → 15。
- 上游 `skills/mono`(frontmatter `metadata.internal: true` 的合并技能
`dws`)不作为子技能收录。
- 保持原有 `listing-only`、未锁定 `ref` 的状态不变,未改动人工撰写的子技能简介。
- `manifest.json`:version 1.5.2 → 1.5.4(1.5.3 已由 #186 使用;两者合并有先后时需解一次
version 行冲突),lastUpdated → 2026-09-25。

## 验证
```
uv run scripts/i18n/validate-i18n.py                                    # 0 error(s)
uv run scripts/catalog/validate_catalog_metadata.py --require-complete  # 0 error(s),dingtalk-cli 无警告
uv run scripts/gen-collection-children.py --check dingtalk-cli          # SKIP(未锁定 ref,与改动前一致)
```

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_0191D9g1FhRQzEGTefUn6mTb

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Yige <a@wyr.me>
2026-09-26 18:08:57 +08:00
mashagua
6cd60a7141 feat: 新增外部条目上游健康检查与每周巡检工作流 (#188)
## 背景
外部条目只存上游指针,上游仓库被删除、分支被重写或技能目录移动时,客户端安装会静默失败,目前没有任何机制能发现(例如
`dingtalk-cli` 的上游已 404,见修复 PR)。

## 变更
- **`scripts/catalog/check_upstream_health.py`**:只读,逐个检查
`skills/`、`agents/`、`teams/` 下的 `entry.json`:
- 失效(退出码 1):`gone` 上游不存在 · `bad-branch` 分支不存在 · `bad-ref` 固定提交无法获取 ·
`bad-path` `source.path`、根 `SKILL.md` 或 children 路径在分支最新提交下缺失
- 提示:`unreachable` 网络错误(不等于失效)· `new-skill` 集合有未声明子技能(发现规则直接复用
`gen-collection-children.py` 的 `discover_children`,两者结论一致)· `outdated`
固定 ref 落后于分支 · `unpinned` 未锁定 ref
  - 只稀疏检出 `SKILL.md`,39 个条目本地全量运行约 12 秒
- **`scripts/catalog/test_check_upstream_health.py`**:9 个基于本地 Git
仓库的单测,已加入 `i18n-validate.yml`。
- **`.github/workflows/upstream-health.yml`**:每周一 01:23 UTC 运行(可手动触发),仅在
`desirecore/market` 运行:
- 报告写入 Job Summary,并维护唯一一个带 `upstream-health` 标签的
Issue:有待处理项时创建或更新,全部正常时评论并关闭
  - 有失效条目时任务标红
- 权限仅 `contents: read` + `issues: write`,**不改写任何目录文件**;修复与 `source.ref`
更新仍通过评审 PR(与固定 ref 的审查语义一致)
- README 中英文补充用法。

## 当前主干的检查结果
- 失效 1:`dingtalk-cli`(已有修复 PR)
- 未声明子技能 3:`khazix-skills`、`marketingskills`、`mattpocock-skills`
- 可更新 21 个,未锁定 1 个
- `amap-jsapi-skill`、`luckin-my-coffee` 在本地因代理显示 `unreachable`,需要 CI
环境确认

## 验证
```
uv run scripts/catalog/test_check_upstream_health.py   # Ran 9 tests OK
uv run scripts/catalog/check_upstream_health.py        # 如上
uv run scripts/i18n/validate-i18n.py                   # 0 error(s)
```

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_0191D9g1FhRQzEGTefUn6mTb

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Yige <a@wyr.me>
2026-09-26 16:13:14 +08:00
mashagua
4dbfd4c563 feat: 新增 HumanLayer Skills 第三方入口 (humanlayer-skills) (#186)
## 概述
以 `entry.json` pointer 形式收录第三方技能合集
[humanlayer/skills](https://github.com/humanlayer/skills)。

## 遵循 ADR-038(市场元数据注册表与两层技能模型)
- **只放元数据、不放内容**:仅新增 `skills/humanlayer-skills/entry.json` 与
sidecar,正文留在上游源仓库,不 vendoring 任何源码。
- **市场第三方层**:`stewardship: community`、`license: MIT`、`redistribution:
allowed`,sidecar `availability: listing-only`(与现有外部条目一致)。
- **source pointer**:`kind=git` + repoUrl + `repoBranch: main`,`ref` 锁定
SHA `ca7c8088db69e315a8b2deea43820270457f8f3c`。
- **集合条目**:6
个子技能(build-iterated-agentic-loop、design-control-loop、improve-claude-md、narrow-react-prop-types、show-me、visual-pr),`children`
由 `scripts/gen-collection-children.py` 从固定提交生成,`source.path` 指向各自含
SKILL.md 的目录。
- **轻量 i18n**:仅 name/shortDesc(zh-CN / en-US)。
- category: `development`。

## 变更
- 新增
`skills/humanlayer-skills/entry.json`、`skills/humanlayer-skills/catalog-metadata.v1.json`
- `manifest.json`:stats.totalSkills 71 → 72,version 1.5.2 →
1.5.3,lastUpdated → 2026-09-25

## 验证
```
uv run scripts/i18n/validate-i18n.py                              # 0 error(s)
uv run scripts/catalog/validate_catalog_metadata.py --require-complete  # 0 error(s)
uv run scripts/i18n/translate.py --check                          # 无过期译文
uv run scripts/gen-collection-children.py --check humanlayer-skills  # OK (6 children)
```
新条目仅有两条与现有外部集合条目相同类型的警告(legacy-license-unverified、子技能 locale 文本相同待人工翻译)。

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_0191D9g1FhRQzEGTefUn6mTb

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-26 12:59:54 +08:00
8f7953948f fix: 补齐市场静态事实并保持旧客户端兼容 (#184)
## 中文

补齐已有 owner 与已锁定上游内容可证明的许可证、技能类型和收录版本。保留 Anthropic Source Available
和其他附加条件,不把所有内容统一标为 MIT,不提升 listing-only 的安装准入。

README 保留最新的双语结构及以 manifest 为准的数量口径,增加静态目录不存访问量、下载量、评分或 Stars 的边界。

发布兼容性:**本 PR 不包含**两支团队新增的本地化字段,也不包含微信支付 `latestVersion:
1.0`;旧客户端会拒绝这些新字段,另以待发布 PR 保留,等匹配客户端发布后再合并。

验证:47 项目录校验测试、19 项 i18n 测试、5 项合集生成测试通过;完整目录/i18n/翻译新鲜度检查通过,6
个固定来源合集的生成检查通过,2 个浮动来源按既有规则明确跳过。发现并修复了生成器在 Windows 使用反斜杠造成的误报:输出改为 POSIX
路径,比较规则不放宽、不重写合集数据。

## English

Fill only license, type and listed-release facts supported by existing
owners or pinned upstream content. Preserve custom license restrictions
and acquisition eligibility. Keep the current bilingual README and
manifest-derived inventory; do not author usage analytics.

This PR deliberately excludes localized team fields and the two-part
WeChat Pay version that older clients reject. Those changes remain
pending a compatible client release.

Validation passes: 47 catalog-validator tests, 19 i18n tests, five
collection-generator tests, complete catalog and translation checks, and
generated inventory checks for six pinned collections. Two mutable
sources remain explicitly skipped. Fix Windows-generated path separators
without weakening comparison or changing declared children.
2026-09-22 01:09:03 +08:00
5dcf5c2087 docs: split and expand English and Chinese market READMEs (#183)
Split the market documentation into synchronized English and Simplified Chinese READMEs. Expand getting started, catalog contracts, localization, contribution and validation guidance, security boundaries, and licensing. Replace stale inventory snapshots with authoritative references.
2026-09-19 21:20:35 +08:00
eb4aa627c6 docs: 同步 README Agent 与 Team 统计 (#182)
## 概述

同步 README 市场摘要与实际目录及 `manifest.json`:

- Agent:5 → 7,补充 `mimo-model-quota-monitor`、`tender-review-assistant`
- Team:1 → 2,补充 `biao-shu-lian-he-shen-cha`
- 将单数 `Team` 调整为复数 `Teams`

## 验证

- `uv run --quiet scripts/catalog/test_validate_catalog_metadata.py`(47
tests passed)
- `uv run --quiet scripts/catalog/validate_catalog_metadata.py
--require-complete`(0 errors)
- README 摘要名称与目录逐项比对通过
2026-09-19 19:43:29 +08:00
mashagua
2f52cc6731 feat: 新增 Archify 与 LumaRescue 两个第三方入口 (archify, lumarescue) (#167)
## 概述
以 `entry.json` pointer 形式收录两个第三方技能:
- [tt-a1i/archify](https://github.com/tt-a1i/archify)
- [justlovemaki/LumaRescue](https://github.com/justlovemaki/LumaRescue)

## 遵循 ADR-038(市场元数据注册表与两层技能模型)
- **只放元数据、不放内容**:仅新增两个 `skills/<id>/entry.json`,正文留在上游源仓库,不 vendoring
任何源码。
- **source pointer**:均 `kind=git` + repoUrl + repoBranch=main,`ref` 锁定
SHA。
- **轻量 i18n**:仅 name/shortDesc(zh-CN / en-US),列表本地化可离线。

### archify
- `stewardship: community`、`license: MIT`、`redistribution:
allowed`,category `development`。
- SKILL.md 位于 `archify/` 子目录,`source.path=archify`,ref
`c1443b31b496eebf4a68bf83151816c955ddb796`。

### lumarescue
- 上游未声明 license,判定 `stewardship: pointer`、`license:
not-declared`、`redistribution:
source-pointer-only`(仅安装时从上游获取并提示条款,market 内不分发内容),category `creative`。
- SKILL.md 位于仓库根,故不写 `source.path`,ref
`14cd76cea24e825e079fa2dfa5c5322002d6dc4e`。

## 变更
- 新增 `skills/archify/entry.json`、`skills/lumarescue/entry.json`
- `manifest.json` stats.totalSkills 69 → 71,version 1.5.1 →
1.5.2,lastUpdated → 2026-09-12
- `README.md` external 29→31 / total 69→71,External entries 清单按字母序插入
`archify`、`lumarescue`

## 验证
```
uv run scripts/i18n/validate-i18n.py
0 error(s), 129 warning(s).
```
(warnings 均为既有 builtin 的 legacy 遗留告警,与本 PR 无关)

Co-authored-by: yi-ge <a@wyr.me>
2026-09-19 19:26:39 +08:00
afa4be0aaa Pin tender-review team evidence-delivery release (#162)
Update the published team pointer to the reviewed team revision that
locks Lead and Evidence 0.1.1. Preview wording remains until
clean-install end-to-end acceptance is complete.

---------

Co-authored-by: yige <yige@yigedeMacBook-Neo.local>
2026-09-19 19:16:49 +08:00
204cd96835 docs: 更新 Control 应用市场入口与服务技能边界 (#181)
## 变更 / Changes
新增 Control 1.4.0 中英文市场安装指南及 README 应用入口,指向真正的应用数据源
desirecore/registry;同步 registering-services / using-services 到 1.0.4,明确
native-app 的对外 MCP 不可注册为内部服务。

Add bilingual marketplace documentation and update both service skills
without duplicating an App as an MCP service. Fixed native application
listing and lifecycle live in Registry; open-source implementation lives
in desirecore-agent/desirecore-cdp-mcp.

## 兼容 / Compatibility
Requires native-app-aware desktop (catalog minimum 10.0.169) and
app-install-manager >=1.4.0. Catalog publication does not upgrade the
desktop or Agent.

## 验证 / Verification
- i18n/catalog validation: 0 errors, 129 existing governance/freshness
warnings retained.
- scoped translation hash check: both skills up to date; no model API
invoked by checks.
- git diff --check passed; unrelated market entries preserved.
2026-09-19 14:21:07 +08:00
0897028856 release: contract review team 0.1.36
## Why\nPublish the intake-gate scope fix through the official market
pointer.\n\n## Changes\n- point team entry and catalog metadata to team
release 0.1.36\n- update contract-intake member to 1.0.6\n- preserve
tracked DOCX, parallel risk/jurisdiction, and human-review
disclosures\n\n## Validation\n- validate_catalog_metadata.py
--require-complete (0 errors, pre-existing warnings only)\n- python -m
unittest scripts.catalog.test_validate_catalog_metadata (47 passed)\n-
git diff --check
2026-09-15 11:58:29 -04:00
0008b05376 release: contract review team 0.1.35
All release checks passed; publishes the refactored O0-O5 contract review team.
2026-09-15 10:48:05 -04:00
b5b1e03c5f release: contract review team 0.1.34 (#178)
## Why
The published contract review team must reconcile redline delivery state
after `ExportRedlineDocument` succeeds.

## What changed
- publish team 0.1.34 at upstream ref 92cb41f
- update Lead pointer to 1.0.20 at cf11ca6
- keep source-pointer-only distribution and existing governance metadata

## Validation
- uv run scripts/i18n/validate-i18n.py
- uv run scripts/catalog/test_validate_catalog_metadata.py (47 passed)
- uv run scripts/catalog/validate_catalog_metadata.py (0 errors;
existing warnings)
- uv run scripts/i18n/translate.py --check
2026-09-15 02:24:26 -04:00
a34f5a933a chore: publish contract review team 0.1.33 (#177)
## Why
Publish the lead tool-permission fix so newly installed contract-review
teams can pass `ExportRedlineDocument` through the orchestrator to the
independent reviewer.

## What changed
- Point the official team entry at team commit
`948f61c6c2d9ea101023e66c6a8261288d2cfab7`.
- Publish version 0.1.33 and lead member version 1.0.19.

## Validation
- Team source `npm run check:gates` passed before this market update.
- Entry diff reviewed and source ref is a 40-character commit SHA.
2026-09-15 01:35:15 -04:00
cd3c8d759b chore: publish contract review team 0.1.32
## Why
Publish the corrected contract review team release after the newcomer
run found stale coverage matrix state.

## Change
- Team 0.1.32 points to team merge
`821f999b087c9a740b3b209963f5f123a3cc694d`.
- Lead member 1.0.18 is listed in the catalog.

## Validation
- `git diff --check`
2026-09-15 10:25:23 +08:00
1e7ac2034b release: publish contract review team 0.1.31
Publish contract review team 0.1.31.
2026-09-14 21:05:39 -04:00
2b69efe512 release: publish contract review team 0.1.30
Publish team lock and tracked redline reporter delivery.
2026-09-14 20:07:53 -04:00
e0f9ec90fa publish: contract review team 0.1.29
Checks passed; Copilot produced no file comments after rerun. Published the KPI-driven Lead update.
2026-09-14 18:14:40 -04:00
94f5b34d6c publish: contract review team 0.1.28 (#172)
This release publishes contract-review-team 0.1.28 from immutable team
commit f088da9eb61d084470e8ede578e73c8cd65b57cb.

Changes:
- Lock Lead 1.0.16 with bounded O0→O4 orchestration and receipt/matrix
synchronization.
- Lock jurisdiction-auditor 1.3.0 and risk-scanner 1.1.0 with one-turn
bounded evidence loops.
- Preserve existing intake, clause-extractor 1.1.0, and reporter
members.
- Update both entry and catalog metadata to the same full team commit
SHA.

Validation: contract-review-team npm run check:gates passes; market
validate and translate checks pass on this PR.
2026-09-14 17:22:01 -04:00
7d0d047f3e Publish contract review team 0.1.27 (#171)
## Why

The contract review team now uses the merged `clause-extractor` 1.1.0
bounded checkpoint workflow. The official market entry still pointed at
team release 0.1.26 and clause-extractor 1.0.6.

## Change

- Publish team version 0.1.27.
- Point the source ref to merged team commit
`cb25d73a0dfbfc319df6eac2d254b3dbcc790e6e`.
- Update the member projection to clause-extractor 1.1.0.
2026-09-14 15:50:58 -04:00
b72610a7b6 feat(agents): 新增 MiMo 模型余量检测智能体 / add MiMo model quota monitor agent (#168)
## 变更说明 / What this changes

新增官方 Agent 条目「MiMo 模型余量检测」,以不可变 source pointer 形态收录,内容仓库为
`desirecore-agent/mimo-model-quota-monitor`。

- `agents/mimo-model-quota-monitor/entry.json` 指向已发布提交
`911c0a226346a8157f07d5218207f16e32ea82e0`。
-
`agents/mimo-model-quota-monitor/catalog-metadata.v1.json`:provenance、MIT
许可证证据、合规审查(`reviewedRef` 与内容 ref 一致),`availability: installable`。
- `requiredClientVersion: 10.0.156`:依赖该版本起的调度完成判据、调度权限上限与内嵌浏览器操作记录修复。
- `manifest.json`:Agent 计数与更新日期。

Agent 做什么:按计划(默认每小时)读取小米 MiMo 开放平台 Token Plan 余量,结构化写入 `latest.json`
与每轮一份历史文件,在余量偏低、消耗过快、即将重置或登录失效时提醒。只读、不执行命令;遇到验证码或短信验证时停下请人处理;登录凭据只经
DesireCore 加密凭据存储的占位符注入。

Adds the official "MiMo model quota monitor" Agent as an immutable
source pointer to `desirecore-agent/mimo-model-quota-monitor` at commit
`911c0a226346a8157f07d5218207f16e32ea82e0`, with a bilingual catalog
sidecar (provenance, MIT license evidence, compliance review with
`reviewedRef` equal to the content ref, `availability: installable`) and
`requiredClientVersion: 10.0.156`. The Agent reads the Xiaomi MiMo Token
Plan quota on a schedule, writes structured results, and alerts on low
quota, fast burn, upcoming reset or an expired login. It is read-only,
runs no shell commands, stops for CAPTCHA or SMS verification, and
receives credentials only through DesireCore's encrypted credential
placeholders.

## 校验 / Validation

- `uv run --quiet scripts/catalog/validate_catalog_metadata.py
--require-complete`:0 error(既有条目的 warning 未变)。
- 条目目录内所有 40
位十六进制值只有一个,即上面的提交号(`source.ref`、`provenance.content.ref`、`governance.compliance.reviewedRef`
三处一致)。
- 内容仓库:`agent.json` 通过 agentConfigSchema;`SKILL.md` frontmatter 通过技能
Schema;`HEARTBEAT.md` 被判为实质为空(心跳不会白调模型);结果与账号 Schema 用样例和反例校验,共 19 项通过。
- 内容仓库共两个提交(首版 + SOP 失败分支表更新),不含账号标识、手机号或凭据。Git 提交元数据中的维护者邮箱是 DesireCore
组织所有公开提交一致使用的公开身份邮箱。

`validate_catalog_metadata.py --require-complete` reports 0 errors; the
entry directory contains exactly one 40-hex value, the pinned commit, in
all three places; the content repository passes agent config, skill
frontmatter, heartbeat and result/account schema checks (19 checks) and
has two commits (initial release plus the SOP failure-branch update)
without account identifiers or credentials.

## 真机验证 / Real-device verification

在 DesireCore dev 构建(10.0.156 之后的 dev,含
#2863/#2865/#2869)上安装本提交的内容,智能路由旗舰档,两个账号各一个每小时定时巡检,连续观察四轮:

| 轮次 | 结果 | 说明 |
|---|---|---|
| 账号 2 · 20:30 | ok | 经接口取到数据,`latest.json` 与本轮 history 文件通过
`result.schema.json`,history 先写、关闭会话、`latest.json` 最后写 |
| 账号 1 · 21:00 | blocked(`platform_unavailable`) |
本机网络间歇断连期间内置浏览器开不了会话;如实落盘,未新建浏览器环境、未反复填表,首轮不提醒 |
| 账号 2 · 21:30 | 失败 | 同一次断网里浏览器开不了会话,且 AI 审批上游持续 502,写 `latest.json`
被拒;平台按完成判据续跑一次后记为失败(已写入使用说明「已知限制」) |
| 账号 1 · 22:00 | blocked,已提醒 | 连续第二轮 `platform_unavailable`,按告警规则
`notify=true`、告警项 `blocked:platform_unavailable` |

四轮都没有执行任何命令,没有非预期工具调用,没有写出 `mimo-quota/` 与平台 Plan 目录以外的文件;每轮的结果文件都通过
Schema 校验。浏览器宿主把导航失败统一报成 `BROWSER_HOST_EXECUTION_FAILED` 的问题已在主仓 #2871
修复(10.0.157 起提供 `BROWSER_NAVIGATION_*` 闭集错误码),本提交的 SOP
失败分支表已随之更新:网络类失败按码重试一次、页面跳转顶替(ABORTED)先看停留页再分流、越出授权范围(ORIGIN_NOT_GRANTED
/ SCHEME_DENIED)不新建 space。旧客户端上这些码不会出现,条目行为退回原有兜底,不受影响。

Installed this commit's content on a DesireCore dev build (dev after
10.0.156, including #2863/#2865/#2869) with smart routing at the
flagship tier and one hourly schedule per account, and observed four
runs. Account 2 at 20:30 read the data through the API; `latest.json`
and the per-run history file passed `result.schema.json`, with history
written first, the session closed, and `latest.json` written last.
During a local network outage, account 1 at 21:00 could not open a
browser session and recorded `blocked` / `platform_unavailable` without
creating environments or retrying the login, and without notifying on
the first round; account 2 at 21:30 hit the same outage plus sustained
502s from the AI approval upstream, so its `latest.json` write was
denied and the run was recorded as failed after one platform
continuation (now listed under known limitations); account 1 at 22:00
was the second consecutive `platform_unavailable` and notified with
`blocked:platform_unavailable`. No run executed a command, called an
unexpected tool, or wrote outside `mimo-quota/` and the platform Plan
directory, and every result file passed schema validation. The browser
host reporting all navigation failures as
`BROWSER_HOST_EXECUTION_FAILED` was fixed in the main repository in
#2871 (closed-set `BROWSER_NAVIGATION_*` codes from 10.0.157), and the
SOP in this commit was updated accordingly: network-class failures retry
once by code, a navigation replaced by a page jump (ABORTED) inspects
the landed page before branching, and out-of-grant targets
(ORIGIN_NOT_GRANTED / SCHEME_DENIED) never create a new space. On older
clients these codes simply do not appear and the entry falls back to the
previous behavior.
2026-09-12 16:13:34 -04:00
f58ef12edf Publish preparation guidance correction 0.2.1 (#170)
Pin the reviewed Entry patch prompted by a real Qwen consultation:
distinguish full tender documents from a notice/invitation and describe
useful outcomes without defect-free assurance. Catalog validation
passed; team member pins are unchanged.

Co-authored-by: yige <yige@yigedeMacBook-Neo.local>
2026-09-12 14:50:05 -04:00
c03cc5da49 Publish outcome-quality tender team 0.2.0 (#169)
Ordinary tender review was blocked by mandatory TaskSpec preparation,
metadata preflight, fixed report packages and runtime receipts, while
the business quality of delivered opinions remained insufficiently
explicit.

This release accepts clear natural-language assignments and defines
concrete goals, good and bad outcomes, evidence expectations and focused
corrections for each role. Chat, tables and files are valid
deliverables. Specialist calculations and legacy structured-export
validators remain available for their specific purposes. It removes
obsolete business input contracts and updates the corresponding
bilingual guides.

Validation was performed after the full multi-repository modification:
JSON/configuration and document-link checks, targeted calculation
regressions, independent content review, and eight synthetic
paper-evaluation scenarios (8/8 after fixing informational-only entry
handling and residual visual preflight/human gates). Paper evaluation is
not a live DesireCore/Qwen or real-tender accuracy result. No real bid
package was tested.

---------

Co-authored-by: yige <yige@yigedeMacBook-Neo.local>
2026-09-12 14:36:45 -04:00
d18cdbf253 Docs: publish tender project guide release (#164)
Advance the team source pointer and matching catalog provenance/review
reference to the merged bilingual project-guide commit.

Co-authored-by: yige <yige@yigedeMacBook-Neo.local>
2026-09-11 05:35:25 -04:00
5b6ea80f6b Pin tender-review team evidence-delivery release (#163)
Update the published team pointer to the reviewed team revision that
locks Lead and Evidence 0.1.1. Preview wording remains until
clean-install end-to-end acceptance is complete.

Co-authored-by: yige <yige@yigedeMacBook-Neo.local>
2026-09-11 04:59:53 -04:00
dabdcc4b99 Publish tender review team and usage docs
Publish the reviewed tender review team pointer, bilingual usage docs, and provenance sidecar after catalog/i18n/Copilot checks pass.
2026-09-10 16:42:52 -04:00
18f2f2243e feat: add tender review team preview (#160)
## What this changes

Adds the tender-review team and its onboarding entry to the official
Market catalog as an immutable source pointer, plus bilingual catalog
sidecars.

- `teams/biao-shu-lian-he-shen-cha/entry.json` points to the published
team commit `7ee5650b066cdee385288a722b8cbd8e1947d0fe`.
- `agents/tender-review-assistant/entry.json` points to assistant commit
`4b6855d2edb535f81c29847e06145c0da87942d0`.
- Both entries include bilingual descriptions, privacy boundaries and
`requiredClientVersion: 10.0.155`.
- The listing is deliberately `pointer` / preview. It does not claim the
v10.0.155 release is fully green or production-certified; newcomer
qualification remains pending.

## Validation

- `python3 scripts/catalog/validate_catalog_metadata.py --json` — 0
errors (existing catalog warnings unchanged).
- Market entry and both `catalog-metadata.v1.json` sidecars validate
against the current client/catalog schemas.
- Published source repositories and full commit pins were checked before
creating this branch.

---------

Co-authored-by: yige <yige@yigedeMacBook-Neo.local>
2026-09-10 15:45:40 -04:00
e111eb31f8 release: publish contract review team 0.1.26 (#159)
发布合同审查团队 v0.1.26 市场元数据。

团队版本、成员版本、来源提交和审阅引用均锁定至已合并的 Team 提交;发布时间和远端观测时间以可复核 Git 事实更新。

验证:catalog/i18n 校验通过,JSON 与空白检查通过;独立审阅 P0--P3 均为零。

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: yi-ge <6657330+yi-ge@users.noreply.github.com>
2026-09-08 07:56:50 -04:00
06929d16d6 release: publish contract review team 0.1.25 (#158)
问题:合同审查 Team 已发布 0.1.25 并锁定统筹官 1.0.13;市场仍指向 0.1.24,新用户无法安装经过推理兼容性修复的版本。

改动:将市场 entry 与 catalog sidecar 更新为 0.1.25,并以 Team 合并提交
0ce23190297d2b5918a91f2053a5ee2a9de264a7 作为唯一发布指针。

验证:JSON、catalog/i18n、镜像字段与公开信息扫描通过;独立 Terra review 通过。全局 collection
检查仍有4个未改外部集合陈旧项,和本发布无关,未将其记为通过。
2026-09-08 03:20:26 -04:00
8d0cedaeeb fix: publish contract review team 0.1.24 (#157)
## Why

The C02 newcomer test exposed a missing-material preflight defect in the
contract-review lead. The corrected team release is already merged as
0.1.24; this PR publishes the exact team ref to the market.

## What changed

- Update the market pointer and catalog sidecar to contract-review-team
0.1.24.
- Pin both metadata surfaces to
`e096a74a482b55266753b3b93e179f9cac2f0ecd`.
- Publish contract-review-lead 1.0.12 in the team roster.

## Validation

- Parsed both market JSON files.
- Verified pointer, provenance, and reviewed refs are identical.
- Verified the remote team `main` ref matches the published pointer.
- Ran the catalog and i18n validators successfully; they reported only
pre-existing catalog warnings outside this team.
- Ran `git diff --check`.

## 中文说明

将市场中的合同审查团队发布指针升级到 0.1.24,并锁定已合并的团队提交。该版本包含统筹官 1.0.12
的无材料零工具咨询修复;entry、sidecar 的来源与审阅提交已一致,市场校验通过。
2026-09-07 23:32:33 -04:00
4940c8a82d 发布合同审查团队 0.1.23
## 中文

### 背景
合同审查团队已发布 0.1.23,锁定 `contract-intake` 1.0.2 的 YAML 安全与解析声明治理修复。市场条目仍指向团队
0.1.22,导致新用户安装不到修复版本。

### 变更
- 市场条目 `latestVersion` 与 metadata release version 更新为 `0.1.23`。
- source、provenance 与 reviewedRef 更新为团队合并提交
`67805f39bae1e76a726fcbeef766c743cc020bc7`。
- 条目成员版本同步 `contract-intake` 1.0.2。
- 更新时间戳更新至本次团队发布。

### 验证
- 市场 i18n 校验:0 errors(既有 129 warnings)。
- catalog metadata 单元测试:47 tests,全部通过。
- collection generator 单元测试:4 tests,全部通过。
- catalog metadata validator:0 errors(既有 warning)。
- translate `--check`:通过。
- `git diff --check` 与凭据扫描:通过。
- `gen-collection-children.py --check` 发现 4 个既有外部 collection
stale(baoyu-skills、larksuite-cli、marketingskills、wecom-cli),本次未修改这些目录。

## English

### Background
Contract Review Team 0.1.23 is released with the `contract-intake` 1.0.2
YAML safety and parser-claim governance fix. The market listing still
pointed to 0.1.22, so new installs would miss the fix.

### Changes
- Update the market entry and metadata release version to `0.1.23`.
- Update source, provenance, and reviewedRef to team merge commit
`67805f39bae1e76a726fcbeef766c743cc020bc7`.
- Sync the entry member version for `contract-intake` to 1.0.2.
- Refresh release timestamps.

### Validation
- Market i18n validation: 0 errors (129 pre-existing warnings).
- Catalog metadata unit tests: 47 passed.
- Collection generator unit tests: 4 passed.
- Catalog metadata validator: 0 errors (pre-existing warnings).
- `translate --check`: passed.
- `git diff --check` and credential scan: passed.
- `gen-collection-children.py --check` reports four pre-existing stale
external collections; none are touched by this change.
2026-09-07 11:18:54 -04:00
d46d1a77d3 发布合同审查团队 0.1.22
市场校验、翻译检查与 Copilot review 全部通过。
2026-09-07 09:36:30 -04:00
12a70d4418 release: contract review team 0.1.21
Publish corrected member content hashes.
2026-09-06 21:59:08 -04:00
5934e479fd release: contract review team 0.1.20
Publish market metadata for team 0.1.20.
2026-09-06 21:36:13 -04:00
d4952e82f4 release: contract review team 0.1.19
GPT-Reserve review PASS; market validators and Copilot gate passed.
2026-09-06 20:25:50 -04:00