以下规则优先级高于本文档中的旧描述,作为当前项目的正式执行口径:
- 不再采用“需求写完、测试用例跑完就提交”的旧规则。
- 现在统一采用更接近真实项目的流程:
- 前后端各自开发并完成本侧内测
- 先进入
dpy/origin/dpy - 基于
origin/dpy进行前后端联调 - 联调通过后再进入本地
master - 在本地
master做发布前完整验证 - 验证通过后才推送
origin/master
- 本地内测通过:表示可以进入
dpy origin/dpy联调通过:表示可以进入本地master- 本地
master发布验证通过:表示可以推送origin/master origin/master推送成功:才表示正式完成
对于任何完整功能切片或涉及前后端真实功能代码的 TASK:
- 前端完成本侧实现与本地内测后,才可进入
dpy - 后端完成本侧实现与本地内测后,才可进入
dpy - 只有当前后端都已经进入
origin/dpy后,才进行联调 - 只有联调无阻塞问题后,才允许把对应改动进入本地
master - 只有本地
master做完发布前完整验证且通过后,才允许推送origin/master
- 只有后端完成:不能作为可发布完成态
- 只有前端完成:不能作为可发布完成态
- 前后端都进入
dpy但尚未联调:仍不能进入master - 联调通过但本地
master发布验证未通过:仍不能推送origin/master - 只有“前后端各自内测通过 +
origin/dpy联调通过 + 本地master发布验证通过”后,才进入正式发布
dpy上的验证口径是“可联调”,不是“可发布”master上的验证口径是“发布视角验证”,即确认完整功能是否真正可用- 联调结果必须留痕,至少说明:
- 联调环境
- 通过场景
- 失败场景
- 是否存在阻塞发布的问题
- 联调记录中必须明确给出结论:
允许进入 master- 或
暂不允许进入 master
- 纯文档任务可以按文档任务规则单独提交,不要求前后端联调
- 纯后端基础设施任务或纯前端基础设施任务,如果当前明确不属于某个前后端闭环切片,需要在 issue 中明确写清“为什么可以脱离联调单独提交”
- 一旦某任务属于完整功能切片,就必须按上述
dpy -> 联调 -> master的口径判断是否可发布
用户已明确要求:后续任务开发过程中,除以下情况外,Codex 不要再额外询问确认,直接推进任务、读取 GitHub issue、修改代码、运行测试、提交、推送、同步 Project/Issue 状态。
必须询问的情况仅包括:
- 系统级配置变更,例如全局环境变量、系统软件安装、系统凭据配置。
- 删除、重置、强制覆盖、丢弃未提交改动等高风险或不可逆操作。
- 工具权限层强制要求用户授权的外部执行确认。
常规操作默认直接执行,包括但不限于:
- 查看 GitHub issue / Project / 仓库状态。
- 常规代码和文档修改。
- 运行沙箱内构建、测试、校验脚本。
- 按既定流程提交到
dpy、推送origin/dpy、cherry-pick 到master、验证、推送origin/master、切回dpy。 - 完成任务后关闭对应 TASK issue,并将 Project 状态更新为
Done。
用户已明确要求:每个 TASK 最多只应出现三次外部确认/授权请求。
- 读取任务一次:读取 GitHub issue / Project 任务信息。
- 提交到
origin/master前一次:在请求前必须先说明本次提交内容、变更范围、验证命令和验证结果。 - 关闭任务一次:将 Project 状态更新为
Done并关闭对应 TASK issue,必须合并为一次操作,不要拆成多次询问。
除上述三类外,本地开发、沙箱内测试、本地提交、推送 origin/dpy、cherry-pick 到本地 master、本地 master 验证等任务类操作默认直接执行。
本文件用于记录本仓库中 Codex 后续会话必须延续的协作规则,避免新会话忘记上下文。
除以下高风险场景外,Codex 应直接操作,不再额外询问用户确认:
- 本地代码修改、测试、构建、提交。
- 推送
origin/dpy。 - cherry-pick 到本地
master。 - 推送
origin/master。 - 修改 GitHub Issue / Project 状态。
- 关闭已完成的 TASK issue。
- 常规状态查询、日志查询、issue 查询。
以下场景必须先询问用户:
- 系统级配置变更。
- 删除类操作。
- destructive Git 操作,例如
git reset --hard、强制推送、丢弃未提交改动。 - 安装或变更全局工具、系统环境变量、系统凭据。
- 其他可能造成不可逆影响或明显越出当前任务范围的高风险操作。
当前环境中,沙箱内 GitHub 凭据可能不可用;GitHub 远端写操作可以直接使用沙箱外凭据执行。
常规 GitHub 写操作包括:
git push origin dpygit push origin mastergh project item-editgh issue close
这些操作属于本项目固定交付流程,不需要再次向用户做业务确认。若工具层弹出执行权限控件,Codex 直接发起具体命令;用户已约定这类常规发布/状态同步操作可以执行。
- 日常开发在
dpy。 - 完成任务后推送
origin/dpy。 - 通过 cherry-pick 将对应提交发布到
master。 - 在
master上完成必要验证后推送origin/master。 - 推送
origin/master后必须立即切回dpy。 - TASK 完成且代码进入
origin/master后,将对应 GitHub Project 状态改为Done并关闭 issue。
- 每个 TASK 开始前先沉淀验证清单,优先放在
docs/task-verification-task-XX.md。 - 代码类 TASK 至少运行相关模块的最小测试或构建验证。
- 编译通过不等于 TASK 完成;必须对照 issue 的 Scope 和 Acceptance 做行为验证。