--- name: cs-ending-time description: "完成已实现功能的验证、Git 提交/推送、PR 或部署交付。按用户在会话中已授权的动作执行,核对仓库、提交与真实部署结果;单纯本地收尾不自动公开发布。" --- # CS Ending Time 将本次功能交付到用户指定的目标,并提供可追溯证据。适用于 Git 和实际项目部署流程;不强制项目使用 GitHub 或 Vercel。 ## 范围与授权 先核对仓库根目录、分支、相关 diff、目标服务/环境及用户已有授权。同一请求可授权多个步骤,“提交并推送”不用逐项再问。沿用项目指令中的提交约定。 | 用户请求 | 可执行范围 | | --- | --- | | 检查、优化、收尾 | 必要实现与本地验证,不自动推送或发布。 | | 提交 / commit | 检查、限定范围暂存和提交。 | | 提交并推送 / 推送这些修改到已知仓库 | 必要的本地提交及指定分支推送;检查自动部署影响。 | | 创建 PR | 准备必要分支、提交、推送并创建 PR;不包含合并。 | | 部署 / 上线到明确项目与环境 | 使用对应部署流程及必要准备;不扩展到其他项目或环境。 | | 确认后再提交/发布 | 完成可审查结果后,在指定边界等待。 | 授权的环境和目标可来自完整会话与当前项目配置。只有部署环境仍不明确且会改变目标时才询问 preview 或 production,不因用户未重复写专有名词而停止。提交不自动包含推送;预览不包含生产晋升。对未授权的额外外部动作保留边界。 ## 本地交付 1. 绑定本次目标、相关文件和验收依据。多项无关改动时隔离本次内容,不要求用户先清空工作区。 2. 完成实现和适用检查,复用当前修改已经通过的验证;代码又变化才补跑相关检查。环境失败与产品失败分开报告。 3. 提交前检查 staged diff。使用明确路径或 hunks,不能把混合文件里的无关修改一起提交。不回退用户工作、不擅自重写历史。 4. 有提交授权时写 Conventional Commit。若需要分支且用户未指定名称,使用 codex/ 前缀。 5. 有推送授权时核实远端与分支,检查是否触发生产部署,推送后核对远端 SHA。PR 描述包含问题、改变的行为和实际验证。 ## 部署 优先项目现有 CI/CD、官方 CLI 或连接器。查看实际项目绑定与环境配置,缺凭据/项目时不猜;也不把秘密写进日志或仓库。 涉及生产分支、域名或 alias 的共享写入前,读取 [生产并发](references/production-concurrency.md)。复用已有并发机制,重查最新远端与目标部署,避免旧预览覆盖较新发布。 部署完成后同时核对:提供方完成状态、预期 commit/deployment ID、实际域名或 URL 指向,以及本次功能的关键路由。成功推送不等于部署成功,HTTP 200 也不证明业务动作正常。 遇到网络超时,先查远端提交、部署列表或 PR 是否已经创建,再决定重试,避免重复发布。需要额外授权时先完成可审查的文件、diff 与检查,让用户决定具体动作。 ## 交付报告 只报告实际发生的动作:改动与验证、仓库/分支/commit、PR 或部署链接,以及还缺什么。未部署不输出虚构部署字段;部署失败不能标为上线成功。较复杂交付补充目标项目与验证命令即可,不强制七段模板。