diff --git a/vscode/README.md b/vscode/README.md index a3b3351..3ef4351 100644 --- a/vscode/README.md +++ b/vscode/README.md @@ -24,6 +24,7 @@ 5. **完成**:拖到「完成」列。有 PR 就由插件合并(冲突时开 `issue-N-冲突解决` 会话,解决后再拖一次),然后关工单、把会话记录拷回主仓库、删 worktree、删 feature 分支。 6. **回退**:进行中 / 审查中的卡可「重置为待办」,关 PR、删 worktree、清分支和实施痕迹,spec / plan 保留。 7. **移交**:前置条件:两台机器的 spx 都已 `cd cli && make install` 到含 `handoffAttachmentId` 的版本,否则移交期间旧 spx 的 state 写入会被 schema 拒绝。工单 tab 头部「移交」→ 选同事。插件校验 worktree 已全部 push,关掉该工单的终端,把头脑风暴 / 实施 / 测试的 claude 会话(jsonl + 子目录)和 codex 审查会话打成 `spx-handoff-issue-N.tgz` 挂到工单附件,写 `handoffAttachmentId` / `handoffFrom`,把工单指派给对方,最后删本机 worktree 与本地分支(远端分支保留)。对方看板上该卡显示「待接管」,工单 tab 点「接管」:从 origin 重建 worktree(`git worktree add -B … origin/`)、把会话文件装到本机 `~/.claude/projects/` 对应目录(先清同 sid 副本)与 `~/.codex/sessions/`、写本机字段、清移交字段并删附件。之后 resume / 合并 / 冲突解决 / 测试与本机实施的工单无异。 +8. **发布**:工具栏「发布」按钮下拉三项。「切新发布」从 `origin/` 切当天的 `YYYY-MM-DD` 并推远端(纯远端,不建本地分支),配了 `jenkinsJob` 会顺带问要不要立刻部署。「摘修复到当期发布」列出 `devBranch` 上还没进发布分支的提交,多选后在临时 worktree 里 `cherry-pick -x` 并推远端,冲突则中止、远端不变。「部署到正式服」选一个发布分支(默认当期,选旧的即回滚)执行 `opencli jks build -p REF=<分支> -p REMOTE_HOST=`。 其他看板规则: @@ -83,7 +84,7 @@ cd cli && make install # 编译到 bin/spx 并安装到 ~/.local/bin/ 编辑器主区的 webview = 顶部工具栏 + 四列看板 + 底部四个 tab。 -**工具栏**:分支同步(把远端 `autoBuildBranch` 快进到 `devBranch`,纯远端、从不 force push)· `.env*` 文件锁(批量 chmod 只读,首次启动默认锁定)· 提交代码(有未提交改动时才显示,后台跑无头 `claude` 提交)· 导入 YouTrack 工单 · 看板范围 · 刷新 · 设置。 +**工具栏**:发布(切发布分支 · 摘修复 · 触发正式服部署,见工作流第 8 条;角标 = `devBranch` 上未发布的提交数)· `.env*` 文件锁(批量 chmod 只读,首次启动默认锁定)· 提交代码(有未提交改动时才显示,后台跑无头 `claude` 提交)· 导入 YouTrack 工单 · 看板范围 · 刷新 · 设置。 **工单 tab**:state JSON 的属性网格。会话 id 行双击恢复会话、▶ 新开、✕ 关 tab;spec / plan 行双击打开文件,plan 行 ▶ 实施;PR 行双击打开浏览器、▶ 生成 PR 变更摘要(写到 `docs/pr-diff/`);分支行 🔀 本地预合并;工作树行双击用 VS Code / PyCharm 打开、🗑 删除。顶部有重置为待办、移交 / 接管(见上文工作流第 7 条)、关闭工单、删除工单(关 tab → 删 worktree → 关 PR → 删分支 → 删 issue)、查看日志。 @@ -126,7 +127,9 @@ prompts 在 `prompts/*.md`,随 VSIX 一起安装,改完即生效,也可在 | 分组 | 键 | 默认 | 说明 | |---|---|---|---| | 认证 | `devBranch` | `main` | 日常开发分支 | -| | `autoBuildBranch` | 空 | Jenkins 等监听的分支;空 = 与 `devBranch` 相同,分支同步按钮禁用 | +| | `releaseBranchPrefix` | `release/` | 发布分支前缀;远端该前缀下名字最大的分支即当期发布点 | +| | `jenkinsJob` | 空 | 正式服部署的 Jenkins 任务名;空 = 不显示「部署到正式服」 | +| | `jenkinsProdHost` | `正式服` | 触发 Jenkins 时 `REMOTE_HOST` 参数的值 | | | `conflictResolutionProfilePath` | 空 | 冲突解决会话 profile | | | `commitProfilePath` | `deepseek-v4-pro` | 「提交代码」用的 profile;未配置时提交直接失败 | | | `prDiffSummaryProfilePath` | `deepseek-v4-pro` | 「改动」说明 / PR 变更摘要用的 profile;未配置时生成失败 |