Repository navigation
v0.4.1
安全修复(issue #9)
- AI agent 提示词不再携带 GitCode 访问令牌:需要凭据的 git 推送、PR 查询/合并收归 host 侧
prepareConflictTree/finalizeConflictBranch;agent 只做本地语义解冲突/合并,prompt 严禁一切网络操作。三个 AI 模板零凭据占位符(回归测试保障) conflictMode=manual关闭全部 AI 入口:/conflict/run、/align/run、/remote/align一律 403(原实现只约束自动触发路径)- git 子进程凭证改经
GIT_ASKPASSenv 注入:远端 URL 保持干净,argv 不再携带 token(ps全机可见),.git/config不落盘
真机/CI 测试发现并修复
- mergeable 竞态:GitCode 在 push 后异步重算 mergeable,推送前的陈旧
false不再一票否决(轮询 5×3s,参数可注入) - merge 身份依赖:
prepareConflictTree的 merge 显式内联-c user.name=dsh-sync,无全局 git 身份的环境(CI/新机器)不再 128 失败 - finalize push 补回 authEnv:resolve 后的推送经 GIT_ASKPASS 认证,不依赖本机 credential store
离线测试 52 项全绿(macOS + Linux CI);另在真实 GitCode 仓库完成 prepare→解冲突→finalize 全链路真机验证(凭证隔离模式,认证只走 askpass 一条通道)。