Releases: jingzhao-l/iterate-skill
Releases · jingzhao-l/iterate-skill
Release list
iterate-skill 2.3.19
focus: 全面审查后补齐核心功能缺口与缺陷
- personalize: 已知意图段标题统一,修复 ITERATE.md 重复累积
- refresh: 损坏 config 中止而非被默认值覆盖
- install: update 语义为刷新到最新版,强制覆盖
- validate: 白名单拒绝命令本体 shell 元字符
- doctor: 捕获 SchemaError
- scan: TS 白名单补 npm 前缀
- cli: --version 用返回码;ITERATE.md 读取失败中止
- generator: 临时文件加 uuid;清理/回滚失败记日志
- 统一 jsonschema 4.26.0
536 测试全绿,ruff 全绿。
iterate-skill v2.3.18
v2.3.18 (2026-08-17)
修复 / Fixes
validation.command_whitelist改为可选,对齐 config.schema.json 与 iterate doctor(运行时仍以 validation.commands 为唯一信任源)。- GitHub release tarball 通过 pathspec ':!harness' 不再携带 harness/ 源码(与 2.3.17 分发规范一致)。
- ruff 全绿:清理 personalize/wizard/test_install_script 5 处 lint 违规。
测试 / Tests
- 全套 Python 测试 536 全绿。
v2.3.17
iterate-skill v2.3.16
iterate-skill v2.3.16
本次为 skill 本体 + CLI + 安装器发布。修复与增强聚焦于安装/卸载健壮性与医生(doctor)诊断能力。
修复 / Fixes
install.py:校验子进程同时解析 stdout + stderr,stdout 诊断不再被吞掉,统一为结构化错误列表。install.py:_validate_github_token校验 GitHub PAT 前缀(ghp_/gho_/ghu_/ghs_/ghr_/github_pat_)与长度范围(20–256),写入 token 前 fail fast。install.py:卸载/更新删除前新增_is_iterate_install_dir标识防护,确认目录含SKILL.md才允许删除,防止误删非 skill 目录。install.py:Windows 无termios环境回退到数字选择,不再崩溃。install.py:删除死代码_key_value,stdout 解析改用str.removeprefix。personalize.py:拒绝把标量字符串当作fix_priority_order/forbidden_fixes列表逐字符展开。
新增 / Features
doctor --json-out <PATH>:将结构化报告(项目、skill 版本、健康状态、findings)导出为 JSON 文件。
一致性 / Consistency
- 版本号同步至 2.3.16:pyproject /
iterate_cli/__init__.py/ npm 安装器 / SKILL.md / CHANGELOG。 - 测试:skill 534 项 pytest 全绿。
v2.3.15
v2.3.15
- install.py 交互函数接入可注入 input_func,安装/更新/卸载/config 向导可端到端测试。
- 新增 tests/test_install_script.py(75+ 项),覆盖拷贝/助手/config 管理/update 校验和/路径穿越/交互 prompt。
- 全套 Python 测试 532 全绿。
iterate-skill v2.3.14
2.3.14 — 2026-08-16
新功能 (skill CLI)
iterate doctor全量 JSON Schema 校验:新增config.schema检查。iterate refresh --dry-run预览:新增refresh.preview_refresh。- 非交互式优雅降级:onboard/personalize 向导终端交互性检测。
- 原子写:
generator.atomic_write(temp +os.replace)统一应用。
修复 (skill CLI)
- Bug A — 返回用户自定义配置丢失:
_load_existing_onboarding_data完整保留字段。 - Bug B —
doctor --fix --json输出污染:修复信息整合进 JSONfixes字段。 - refresh 幂等化:未漂移时为字节级 no-op。
测试
457 个测试全部通过。
v2.3.13
[2.3.13] — 2026-08-16
修复 / Bug Fixes (distribution)
- ClawHub 显示名回归修正:此前发布流程未显式传
--name,导致 ClawHub 上 skill 显示名被默认取为发布目录 basename(Clawhub Stage 2.3.12)。本次发布显式指定--name Iterate,恢复为正确显示名Iterate。版本号统一升至 2.3.13 以确保三平台(ClawHub / ModelScope / SkillHub)版本一致。
v2.3.12
[2.3.12] — 2026-08-16
新功能 / Features (skill CLI)
iterate doctor --fix安全自动修复:补齐"诊断→修复→确认"闭环。--fix仅修复确定性、无损、可逆的配置问题(重复/空维度、非法 language、越界/非整数 max_rounds、空 target_branch、skill_version 漂移),写前自动生成.doctorfix-<timestamp>备份,随后重跑诊断确认健康。新增doctor.apply_safe_fixes与doctor.run_doctor_fix。
修复 / Bug Fixes (skill CLI)
iterate refresh失败提示误导:此前失败时一律提示ITERATE.md not found,现改为中性的Could not read or write ITERATE.md / iterate.config.yaml (see stderr)。iterate reonboard无变更时提示夸大:现将返回值改为REONBOARD_*状态码(completed/no-changes/cancelled/failed),输出准确提示。- 清理死代码:删除
doctor._COMMAND_MODULES_KEYS未使用常量。
新增单元测试 / Tests
- 全测试集 441 个全绿。
v2.3.11
[2.3.11] — 2026-08-16
新功能 / Features (skill CLI)
iterate doctor补齐 schema 对齐检查:新增max_rounds边界(1–50)、language枚举(zh/en)、dimensions非空与唯一性、validation.command_whitelist非空唯一字符串等健康检查,与config/config.schema.json约束逐一对齐。
修复 / Bug Fixes (skill)
jsonschema缺失运行时依赖:validate模块依赖jsonschema但未在pyproject.toml声明,导致任意安装用户执行 schema 校验必失败。已补入依赖并固定版本。
新增单元测试 / Tests
tests/test_doctor.py新增空维度、重复维度、越界max_rounds、非法language、非法/合法command_whitelist等用例;全测试集 429 个全绿。
v2.3.10
[2.3.10] — 2026-08-15
新功能 / Features (skill CLI)
iterate doctor命令:新增项目健康诊断命令,校验项目iterate.config.yaml/ITERATE.md与技能本体的规范一致性(onboarding 完整性、配置可解析、维度 id 合法性、review.scope 取值、git.target_branch 有效性、validation.commands 结构、skill_version 匹配、manifest 漂移)。发现错误时退出码非零,便于接入 CI。新增iterate_cli/doctor.py。--json结构化输出:iterate status与iterate doctor支持--json,输出机器可读的 JSON(用于脚本与 CI 消费)。JSON 模式下自动抑制 ASCII banner,避免污染输出。
修复 / Bug Fixes (skill)
- 统一手动验证命令校验逻辑:
wizard._manual_collect_commands(onboard 路径)此前只拦截 shell 元字符,与personalize.validate_extra_command(后者严格白名单)强度不一致。现统一复用validate_extra_command作为唯一权威校验点。validate_extra_command同时扩展支持python <script>.py合法脚本调用。 _render_dimensionspriority_map 纳入维度锁:generator 内硬编码的 priority_map 此前未被tests/test_dimension_lock.py覆盖,priority 变更会漂移。现新增六源维度锁第 7 个来源。- onboard scope 输入防呆:
wizard._collect_git_config中对非法 scope 输入(非 1/2)显式提示并回退默认 full。 - TUI 键值对齐:
tui.key_value由字符宽度ljust改为 CJK 显示宽度感知对齐(新增_display_width)。