Skip to content

v0.7.1

Choose a tag to compare

@github-actions github-actions released this 14 Jun 09:34
· 8 commits to main since this release
b1474c4

v0.7.1 版本发布

Bug 修复(8 项)

基于 PR #10 Code Review 反馈,修复了以下 8 个问题:

  1. API 响应验证opencode_go_provider.rs 增加 choices/message 防御性检查 + error 字段检查,防止无限循环
  2. GrepTool 参数注入 — 使用 -- 分隔符 + extension 白名单校验,防止选项注入
  3. Sub-Agent Runner panic — 使用 catch_unwind 包裹 tool.execute(),防止 panic 导致进程崩溃
  4. eprintln! 干扰 TUI — 替换为 log::warn!,避免 stderr 破坏终端渲染
  5. BashTool 超时泄漏 — 实现 thread + mpsc + recv_timeout 超时机制,超时 kill 子进程
  6. EditTool 空文本 — 拒绝空 old_text,防止意外全局替换
  7. agent.rs 冗余循环 — 简化 replace_messages_preserve_system_prompt 循环逻辑
  8. 辅助函数 exit — build_provider_config 等函数改为返回 Result,由调用者处理错误

新功能

  • Input 历史 prompt 浏览 — input 为空时 ↑/↓ 切换 user 历史 prompt,支持连续切换、归位清空

CI 验收

  • cargo fmt --all -- --check ✅
  • cargo clippy --all-targets -- -D warnings ✅
  • cargo build --verbose ✅
  • cargo test --verbose ✅(233 tests passed)

完整提交日志

408b8dc fix(oy-ai): 增强 API 响应验证防止无限循环
a8ffe9e fix(grep): 修复参数注入漏洞 — 添加 -- 分隔符和 extension 校验
19110e2 fix(sub-agent-runner): 使用 catch_unwind 防止工具 panic 导致进程崩溃
f05832d fix(persistence): 替换 eprintln! 为 log::warn! 避免 TUI 渲染干扰
d44dd4d fix(bash): 添加同步超时机制防止线程/进程泄漏
c54e06b fix(edit): 增加 old_text 空字符串校验防止意外替换行为
0866fd1 refactor(agent): 简化 replace_messages_preserve_system_prompt 循环逻辑
aa26a1a fix: 移除辅助函数中的 std::process::exit,改为返回错误由调用者处理
1c3fcf6 feat(tui): input 为空时 ↑/↓ 切换 user 历史 prompt
c7faf89 docs: add input history prompt feature to v0.7.1 changelog

What's Changed

Full Changelog: v0.7.0...v0.7.1