| feat(tests): extend init behavior tests to all teams, fix scanner scope & cleanup safety
Co-authored-by: yanhf<yanhaifeng5@huawei.com>
# message auto-generated for no-merge-commit merge:
!149 merge sync into master
feat(tests): extend init behavior tests to all teams, fix scanner scope & cleanup safety
Created-by: yanhf
Commit-by: yanhf
Merged-by: cann-robot
Description: 测试框架增强与修复
新特性 New Features
• 【测试框架】 新增 test-init-behavior.sh:扩展 init.sh 安装行为测试到所有 team(ops-code-reviewer、ops-dir
t-invoke、ops-registry-invoke、pypto-op-orchestrator),覆盖 project/global × opencode/claude 共 4 种组合
• 【测试框架】 新增 test-init-install.sh:L1 静态验证 init.sh 的存在性、可执行性、shebang、SHARED_SKILL_ROO
路径、skill 引用一致性、INCLUDED_AGENT_PATTERN 匹配性。
• 【测试框架】 run-tests.sh 注册 init 测试到 unit 和 behavior 分类,支持 --fast 模式运行。
问题修复 Bug Fix
• 【测试框架】 修复上游主线 fec02a9 目录扁平化(ops/skills/<name> → ops/<name>)导致的测试脚本路径失效问题
同步更新 test-init-install.sh、test-universal.sh。
• 【测试框架】 统一 ops-registry-invoke/init.sh 格式:补充 INCLUDED_SKILLS / INCLUDED_AGENT_PATTERN 声明,
复 project 模式下 PWD/AGENTS.md symlink 创建逻辑,与其他 init.sh 保持一致。
• 【测试框架】 修复 test-init-behavior.sh 在 set -euo pipefail 下因 grep 无匹配导致异常退出的问题。
• 【测试框架】 修复 get_all_teams_with_paths() 扫描范围缺失 plugins-official team 的问题。
• 【测试框架】 修复 rules.yaml 中 当.*时 过度宽泛导致的误判,以及 test 关键词误匹配问题。
• 【测试框架】 移除 behavior 测试中嵌套的 timeout(runner 300s 已足够),简化 get_git_repo_names() 从解析 g
clone 改为检测 CONFIG_ROOT symlink。
关联的Issue
测试
• 本地执行 tests/run-tests.sh --fast -v,9 个 fast 测试全部通过,耗时约 227s。
• 覆盖 skills/agents/teams 结构测试、内容测试、init 安装测试、init 行为测试。
文档更新
• plugins-official/ops-registry-invoke/init.sh 新增开源合规头文件及元数据声明。
类型标签
• [x] 🐛 Bug 修复
• [x] 🧪 测试用例
• [x] ♻️ 代码重构
• [x] 🧹 代码清理
See merge request: cann/cannbot-skills!149 | 28 天前 |