Bug Fixes
Template hash portability
template hash 存储现在使用 POSIX path key,并在计算 hash 前把内容归一化为 LF。.trellis/.template-hashes.json 现在使用带版本的 envelope:
这修复了 Windows checkout 场景:backslash hash key 或 CRLF line ending 会让未修改 template 被误判为 modified。
task.py archive input contract
task.py archive 现在接受和其他 task-directory 命令一致的 task 输入。
之前
archive 是唯一一个只用 slug lookup 的 dir-style task command。传入 .trellis/tasks/<slug> 会报 Task not found,但其他 task 命令接受这种形式。
已安装的 Claude Code statusLine 会保留
beta.15 开始,新项目默认不再安装 Claude CodestatusLine。这个默认行为不变。
升级路径现在更保守:
也就是说,beta.16 不再把 Claude Code statusLine 当成 cleanup 目标。如果用户不再需要它,可以手动删除文件和 settings entry。
Shared-hook cleanup 仍适用于其他平台的孤立文件
非 Claude 平台的statusline.py 清理项仍然保留,并且仍是 hash-verified safe delete。那些平台没有 statusLine event,所以这些文件不会被调用:
.cursor/hooks/statusline.py.codex/hooks/statusline.py.gemini/hooks/statusline.py.qoder/hooks/statusline.py.github/copilot/hooks/statusline.py.codebuddy/hooks/statusline.py.factory/hooks/statusline.py.kiro/hooks/statusline.py
Upgrade
已有项目:--migrate。