用途:维护 workerd 的 WPT(Web Platform Tests,Web 标准一致性测试套件)依赖,包含升级依赖与分类(triage)两部分。除用户明确只要求 bump 外,更新请求默认同时包含依赖升级与分类。
主要能力与用法:在 workerd 根目录运行 ./build/deps/update_wpt.py,更新器从 cloudflare/workerd-tools 选取最新的 wpt-* 发布,正常只改动 build/deps/shared_deps.jsonc 与 build/deps/gen/shared_deps.MODULE.bazel,需确认新 tag 在 freeze_version、strip_prefix 与归档 URL 中一致并生成新 SHA-256;不要手改生成文件。分类时先从依赖 diff 读取新旧 wpt-<sha> 后缀,以此为上游提交用 compare diff 研究,并按 src/wpt/BUILD.bazel 映射目录过滤变更。
运行测试:独立 workerd 用 bazel test //src/wpt/... --test_size_filters=;子模块检出用 bazel test @workerd//src/wpt/... --test_size_filters=。迭代时可用 bazel test //src/wpt:<suite>@ --test_size_filters= --test_output=errors(子模块加 @workerd 前缀),不要用测试用例过滤参数。配置键须对 wpt_directory 的相对路径大小写敏感并按 ESLint sort-keys 升序排列,- 排在 . 前;新套件先加空条目。每次改配置后运行对应的 //src/wpt:wpt-all@tsproject@eslint。
限制:允许改动仅为更新器生成的依赖元数据与 src/wpt 下配置文件,不在 WPT 更新中修复运行时一致性缺陷;分类须逐项写当前技术理由,不用宽泛正则或整套件 true 来让目标通过。完成后执行 python3 tools/cross/format.py --check git 与 git diff --check,并要求 Bazel 显示成功。依赖升级与 WPT 分类保持分开提交。资料未提供具体版本号、价格或平台支持信息。