# 93. AI 执行模式 本项目采用“**任务分级 + 风险分级 + 自动选择执行模式**”的 AI 开发机制。 AI 不得对所有任务使用相同的处理方式。 必须根据任务类型、影响范围和风险等级,选择对应执行模式。 --- # 94. 执行模式总览 本项目定义以下 7 种 AI 执行模式: | 模式 | 名称 | 适用场景 | 是否直接修改 | | ------ | ---- | ----------- | ------ | | MODE-1 | 快速修复 | 简单 Bug、明显错误 | 可以 | | MODE-2 | 标准开发 | 普通新功能 | 可以 | | MODE-3 | 深度开发 | 复杂业务、跨模块功能 | 先分析后修改 | | MODE-4 | 安全模式 | 支付、权限、认证、安全 | 默认先确认 | | MODE-5 | 数据模式 | 数据库、迁移、批量数据 | 高风险需确认 | | MODE-6 | 重构模式 | 大规模重构、架构调整 | 先方案后执行 | | MODE-7 | 发布模式 | 构建、部署、生产发布 | 默认需要确认 | AI 必须自动判断使用哪一种模式。 --- # 95. MODE-1:快速修复模式 ## 适用 以下问题可以使用快速修复: * PHP 语法错误 * 明确的变量错误 * 明确的类型错误 * 明显的拼写错误 * 明确的前端 JS 错误 * 明确的 API 参数错误 * 已知函数调用错误 * 明确的空值错误 例如: ```text Undefined variable Call to undefined method Class not found Syntax error TypeError ``` --- ## 执行流程 ```text 定位错误 ↓ 读取相关代码 ↓ 确认根因 ↓ 最小修改 ↓ 测试 ↓ 报告结果 ``` 不需要为了简单 Bug 输出长篇方案。 --- ## 限制 快速修复模式不得: * 修改数据库结构 * 修改支付 * 修改权限 * 修改认证 * 升级依赖 * 大规模重构 * 修改生产环境 如果发现涉及高风险内容: **自动切换到对应高风险模式。** --- # 96. MODE-2:标准开发模式 ## 适用 普通功能开发: * 新增 API * 新增页面 * 新增 CRUD * 新增业务 Service * 新增 Vue 页面 * 新增 Uni-app 页面 * 新增后台管理功能 * 新增普通第三方接口 --- ## 执行流程 ```text 需求分析 ↓ 搜索现有实现 ↓ 确定修改文件 ↓ 设计数据流 ↓ 后端开发 ↓ 前端开发 ↓ 接口联调 ↓ 测试 ↓ 代码审查 ``` --- ## 默认行为 如果风险较低: **AI 可以直接执行。** 但必须: * 遵守 AI_RULES.md * 遵守 PROJECT_RULES.md * 尽量最小化修改 * 测试相关功能 * 汇报修改结果 --- # 97. MODE-3:深度开发模式 ## 适用 以下情况必须进入深度开发模式: * 跨多个模块 * 涉及前后端 * 涉及多个数据库表 * 涉及 Redis * 涉及队列 * 涉及 MQTT * 涉及 WebSocket * 涉及复杂业务状态 * 涉及订单 * 涉及库存 * 涉及用户权限 * 涉及多个第三方 API --- ## 执行流程 ```text 1. 项目扫描 ↓ 2. 业务链路分析 ↓ 3. 数据流分析 ↓ 4. 依赖分析 ↓ 5. 风险分析 ↓ 6. 制定实施方案 ↓ 7. 修改代码 ↓ 8. 测试 ↓ 9. 回归测试 ↓ 10. 输出变更报告 ``` --- ## 必须分析 至少说明: ```text 入口 ↓ Controller ↓ Service ↓ Model ↓ Database ↓ Redis / Queue ↓ 第三方服务 ↓ 前端 ``` 如果某一层不存在: 按照实际项目结构处理。 --- # 98. MODE-4:安全模式 以下功能必须进入安全模式: * 登录 * 注册 * Token * Session * 权限 * RBAC * 支付 * 钱包 * 余额 * 退款 * 优惠券 * 文件上传 * 管理员 * API Key * Webhook * OAuth * 第三方登录 * 加密 * 签名 * 敏感数据 --- ## 安全模式原则 默认: **先分析,后修改。** 必须检查: ```text 身份认证 权限 输入验证 数据权限 SQL XSS CSRF SSRF 文件安全 敏感信息 日志 接口重放 幂等 并发 ``` --- ## 支付相关 涉及支付时必须额外检查: ```text 订单号 金额 签名 回调 订单状态 重复回调 退款 并发 幂等 ``` 禁止为了修复支付问题而降低安全等级。 --- ## 安全模式确认点 如果修改可能导致: * 用户权限变化 * 支付金额变化 * 账户余额变化 * 身份认证变化 * 敏感数据暴露 必须在修改前明确说明风险。 --- # 99. MODE-5:数据库模式 ## 适用 以下操作进入数据库模式: * 新增表 * 删除表 * 修改字段 * 修改索引 * 修改数据类型 * 数据迁移 * 批量更新 * 批量删除 * 数据清理 * 数据修复 --- ## 数据库模式原则 先: ```text 读取表结构 ↓ 检查数据量 ↓ 检查索引 ↓ 检查依赖 ↓ 设计迁移 ↓ 考虑回滚 ``` --- ## 高风险操作 以下操作默认禁止直接执行: ```sql DROP DATABASE DROP TABLE TRUNCATE DELETE FROM table UPDATE table SET ... ``` 尤其是生产环境。 必须: 1. 明确目标。 2. 明确影响范围。 3. 确认备份。 4. 尽可能使用条件限制。 5. 先 SELECT 验证目标数据。 6. 再执行修改。 --- ## 批量数据修改 推荐: ```text SELECT ↓ 确认数据数量 ↓ 备份 ↓ 分批处理 ↓ 验证 ``` 不要直接对百万级数据执行没有评估的 UPDATE。 --- # 100. MODE-6:重构模式 ## 适用 * 大规模重构 * Controller 拆 Service * Service 拆分 * 数据库重构 * API 重构 * 前端架构调整 * Vue 组件重构 * 目录结构重构 * Laravel / ThinkPHP 架构调整 * 技术栈升级 --- ## 重构原则 核心原则: > **行为优先于代码漂亮。** 默认: ```text 旧功能正常 ↓ 增加测试 ↓ 逐步重构 ↓ 保持兼容 ↓ 验证 ↓ 删除旧代码 ``` --- ## 禁止一次性大改 不要一次修改: ```text 100+ 文件 ``` 而不建立阶段性验证。 推荐: ```text 阶段 1 ↓ 测试 ↓ 阶段 2 ↓ 测试 ↓ 阶段 3 ↓ 测试 ``` --- ## API 重构 优先: ```text 旧 API + 新 API ``` 而不是: ```text 直接删除旧 API ``` 除非明确确认不再兼容。 --- # 101. MODE-7:发布模式 ## 适用 * Git 发布 * 构建 * 生产部署 * 数据库迁移 * 服务重启 * Supervisor * Docker * Nginx * PHP-FPM * Webman Worker * Queue * Cron * SSL * DNS --- ## 发布流程 ```text 代码检查 ↓ git status ↓ git diff ↓ 测试 ↓ 构建 ↓ 确认环境 ↓ 备份 ↓ 部署 ↓ 数据库迁移 ↓ 清理缓存 ↓ 重启必要服务 ↓ 健康检查 ↓ 日志检查 ``` --- ## 生产发布 默认: **不允许 AI 自行进行不可逆的生产操作。** 例如: ```text DROP TRUNCATE DELETE force push reset --hard 清空 Redis 删除生产文件 停止核心服务 ``` 除非用户明确授权。 --- # 102. 自动模式选择 AI 接收到任务后必须自动判断: ```text 如果只是明显 Bug → MODE-1 如果是普通功能 → MODE-2 如果跨多个模块 → MODE-3 如果涉及安全 / 权限 / 支付 → MODE-4 如果涉及数据库结构或批量数据 → MODE-5 如果涉及大规模重构 → MODE-6 如果涉及生产部署 → MODE-7 ``` 如果一个任务同时符合多个模式: **选择风险最高的模式。** 例如: ```text 新增支付接口 ``` 同时属于: ```text MODE-2 MODE-4 ``` 最终使用: ```text MODE-4 ``` --- # 103. 模式可以组合 复杂任务允许组合模式: ```text MODE-3 + MODE-4 + MODE-5 ``` 例如: ```text 新增订单支付系统 ``` 需要: ```text 深度开发 + 安全模式 + 数据库模式 ``` --- # 104. 风险等级 所有任务分为: ```text L0:无风险 L1:低风险 L2:中风险 L3:高风险 L4:生产高风险 ``` --- ## L0 例如: ```text 修改注释 修改文档 格式化单个文件 ``` AI 可以直接执行。 --- ## L1 例如: ```text 简单 Bug 普通 UI 普通 API ``` AI 可以直接执行。 --- ## L2 例如: ```text 新增业务 新增数据库字段 Redis 队列 第三方 API ``` AI 可以执行,但必须测试并报告影响。 --- ## L3 例如: ```text 支付 权限 认证 余额 库存 数据库批量修改 大规模重构 ``` 必须先进行风险分析。 --- ## L4 例如: ```text 生产数据库 生产支付 生产服务器 生产 Redis 生产部署 删除生产数据 ``` 必须明确确认后才能执行高风险操作。 --- # 105. AI 修改前的“变更计划” 当任务达到 L2 及以上时,AI 应先生成: ```text ## Change Plan ### 目标 xxx ### 当前实现 xxx ### 问题 xxx ### 修改文件 1. xxx 2. xxx 3. xxx ### 数据库 无 / 新增字段 / 新增表 / 修改数据 ### API 无 / 新增 / 修改 ### 前端 无 / 修改页面 / 新增组件 ### Redis 无 / 新增 Key / 修改缓存 ### 风险 低 / 中 / 高 ### 测试 xxx ### 回滚 xxx ``` --- # 106. AI 的“只读分析模式” 如果用户说: ```text 帮我看看 分析一下 检查一下 为什么 排查 审计 有没有问题 ``` 默认进入: ```text READ-ONLY MODE ``` 此模式下: **只分析,不修改代码。** 除非用户明确要求修改。 --- # 107. AI 的“计划模式” 如果用户说: ```text 设计一下 怎么实现 给我方案 架构怎么做 ``` 进入: ```text PLAN MODE ``` 输出: ```text 需求分析 ↓ 架构方案 ↓ 文件变更计划 ↓ 数据库方案 ↓ API 方案 ↓ 前端方案 ↓ 测试方案 ↓ 部署方案 ``` 不直接修改代码。 --- # 108. AI 的“实现模式” 如果用户说: ```text 帮我开发 实现 写代码 修复 修改 增加 删除 ``` 进入: ```text IMPLEMENT MODE ``` 根据风险等级自动选择 MODE-1 ~ MODE-7。 --- # 109. AI 的“审查模式” 如果用户说: ```text 帮我 Code Review 检查代码 安全审计 检查有没有问题 ``` 进入: ```text REVIEW MODE ``` 只检查: ```text Bug 安全 性能 架构 代码质量 兼容性 ``` 默认不修改。 输出: ```text 严重程度: CRITICAL HIGH MEDIUM LOW INFO ``` 注意: **审查等级不是代码质量评分。** 不得使用: ```text 9/10 A+ 优秀 差 ``` 等无实际依据的评分。 --- # 110. AI 的“测试模式” 如果用户要求: ```text 测试 验证 跑一下 检查是否正常 ``` 进入: ```text TEST MODE ``` 优先执行: ```text 语法检查 ↓ 单元测试 ↓ 集成测试 ↓ API 测试 ↓ 前端构建 ↓ 关键业务测试 ``` 没有执行的测试: 必须明确标记: ```text NOT RUN ``` 不能声称通过。 --- # 111. AI 的“部署模式” 用户要求: ```text 部署 上线 发布 更新服务器 ``` 进入: ```text DEPLOY MODE ``` 必须先检查: ```text 当前分支 当前 Commit 工作区 构建状态 环境 数据库迁移 配置 备份 ``` 生产环境操作必须特别谨慎。 --- # 112. 用户没有明确要求时的默认行为 默认规则: ```text 查看 → 只读 分析 → 只读 设计 → Plan 开发 → Implement 修 Bug → 根据风险自动选择 部署 → Deploy 审查 → Review ``` --- # 113. AI 的暂停条件 遇到以下情况必须暂停并询问: ## 需求冲突 例如: ```text 用户要求保持兼容 但又要求删除旧 API ``` --- ## 数据风险 例如: ```text 需要删除大量数据 但没有明确条件 ``` --- ## 生产风险 例如: ```text 需要修改生产数据库 但没有备份信息 ``` --- ## 安全风险 例如: ```text 需要关闭权限验证 需要关闭 SSL 验证 需要暴露 API Key ``` 不得为了完成需求而执行。 --- ## 架构不确定 例如: ```text 不知道项目使用 Laravel 还是 ThinkPHP 不知道数据库表结构 不知道接口规范 ``` 先读取项目,而不是猜。 --- # 114. AI 的自动降级原则 如果发现: ```text 当前任务风险高于最初判断 ``` 必须自动切换到更高风险模式。 例如: ```text 原任务: 修复一个 API Bug 发现: 涉及支付金额 自动切换: MODE-4 安全模式 ``` --- # 115. AI 的自动升级原则 如果发现: ```text 简单修改 ``` 但实际涉及: ```text 数据库 支付 权限 生产环境 ``` 必须自动升级模式。 不能继续按照普通 Bug 处理。 --- # 116. AI 的最终执行报告 任务完成后必须报告: ```text ## Execution Report 执行模式: MODE-X 风险等级: L0 / L1 / L2 / L3 / L4 ### 修改文件 - xxx - xxx ### 修改内容 xxx ### 数据库 无修改 或者: 新增: xxx ### API 无变化 或者: 新增: xxx ### Redis 无变化 或者: 新增: xxx ### 测试 执行: xxx 结果: PASS / FAIL / NOT RUN ### 部署 未部署 或者: 已部署到测试环境 ### 风险 xxx ### 回滚 xxx ``` --- # 117. AI 执行优先级 当多个规则发生冲突时,优先级: ```text 安全 > 用户明确要求 > 项目规范 > 现有业务兼容性 > 框架规范 > 通用最佳实践 > AI 自己的偏好 ``` AI 自己的“代码风格偏好”优先级最低。 --- # 118. 最终执行哲学 本项目不追求: ```text AI 写得最多 ``` 也不追求: ```text AI 改得最快 ``` 而追求: ```text 正确 + 安全 + 可维护 + 可验证 + 可回滚 ``` 最终原则: > **简单问题快速解决,复杂问题先分析,高风险问题先确认,生产问题可回滚。** > **AI 可以主动发现问题,但不能擅自扩大修改范围。** > **AI 可以提出更好的方案,但不能未经授权改变核心业务规则。** > **AI 可以自动修复低风险问题,但涉及数据、权限、支付和生产环境时必须提高执行等级。**