@routerhub/agent-rules 1.5.103 → 1.5.105
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.base.md +10 -0
- package/package.json +1 -1
- package/rules/global.md +10 -0
package/AGENTS.base.md
CHANGED
|
@@ -39,10 +39,20 @@
|
|
|
39
39
|
- ⚠️ **用户反馈"看起来没生效/没写入"时,先用权威数据源核实**(直连数据库/调对应 API 查,而不是只信一次前端页面截图),前端页面可能存在多个同名视图、未展开的关联表、缓存等歧义,容易把"看错了地方"误判成"修复失败",也可能反过来把真的失败误判成"看错了"——两种方向都要用权威数据源排除,不能靠肉眼猜。
|
|
40
40
|
- ⚠️ **停用/归档任何仍可能被其他配置引用的共享资源(数据库、开关、服务实例、旧接口等)前,必须先确认所有引用方已经完成切换**,禁止先下线资源、后补救引用;正确顺序是「新资源就位 → 所有引用方切到新资源并验证 → 确认无引用后才下线旧资源」。
|
|
41
41
|
|
|
42
|
+
## ⚠️ 修复验证铁律
|
|
43
|
+
|
|
44
|
+
- ⚠️ **验证方法必须"可确定性复现",优先选最直白的路径。** 不要依赖真实流量、后台任务或时序巧合去凑出被验证的状态(反直觉、难复现、别人无法照做)。判断顺序:先问「本次修复的唯一改动是什么」,把它精确映射成一个可手动触发的原子操作,再做 A/B 对照。例:验证"余额变更后网关缓存立即失效",不要靠真实计费请求养缓存,而是直接 `SET` 种一个已知值 → `GET`(有值 = 修复前)→ `DEL`(= 失效动作)→ `GET`(nil = 修复后)。
|
|
45
|
+
- ⚠️ **报告开头必带一张「为什么这样验证成立」的原理说明卡。** 先讲清楚 bug 前后差异的本质是哪一个动作,再论证"手动模拟该动作 = 真实场景",让不了解背景的人也能信服。配一张修复前 vs 修复后的 A/B 对照表(代码行为 / 等价操作 / 观测结果三列并排)。
|
|
46
|
+
- ⚠️ **每个验证步骤必须三要素齐全**:① 怎么做的(可复制粘贴的完整命令)② 结果(含可复查标识:执行 ID、时间戳、返回码)③ 这一步证明了什么(一句话点明证据含义,如"DEL 返回 1 = 删除前 key 确实存在")。
|
|
47
|
+
- ⚠️ **采用「主验证 + 真实链路佐证」双证据结构。** 主验证用最简单直观的方式(如直接看值)确保人人能复现;再补一条端到端真实链路证据(如真实日志、双侧时间戳对齐),把"手动演示"和"真实业务动作"接上,二者相互印证。
|
|
48
|
+
- ⚠️ **截图是可视化证据,图注必须写清「这张图证明了什么」**,并标注关键行/关键数据(红框、箭头放在空白区,不遮挡原内容)。
|
|
49
|
+
- ⚠️ **结论用「证据并列」呈现**:逐条列出每类证据的关键数值和可复查标识(执行 ID / 时间戳),最后一句量化修复效果(如"陈旧窗口从约 30 分钟压缩到 ≈0")。
|
|
50
|
+
|
|
42
51
|
## Git 规范
|
|
43
52
|
|
|
44
53
|
- 分支用 Git Flow(`feature/`、`bugfix/`、`hotfix/`、`refactor/`、`chore/`、`docs/`、`test/`),英文小写中划线分隔。
|
|
45
54
|
- ⚠️ **可评审 PR 的合并目标永远是仓库默认分支(如 `main`/`master`),不是 `test`**。`test` 分支只用于部署测试环境,只能通过 `/deploy-test` skill 直接 `merge` 更新(见「部署规则」),不发 PR、不走 code review;`test` 分支同样禁止直接提交代码。commit 必须中文,禁止 `git push --force`。
|
|
55
|
+
- ⚠️ **已推送到远程的提交需要撤销时,必须用 `git revert`,禁止用 `git push --force` 覆盖远程历史。** `git revert` 会创建一条新的撤销提交,保留完整的操作记录,不影响其他协作者的本地分支;`git push --force` 会破坏远程历史,导致其他人的本地分支与远程脱节,极易引发合并冲突或丢失他人提交。
|
|
46
56
|
- ⚠️ **提交并推送代码后,若发现与主分支存在冲突,必须主动解决**,不能推送完就算完事、把冲突留给别人处理。
|
|
47
57
|
|
|
48
58
|
## PR 核心要求
|
package/package.json
CHANGED
package/rules/global.md
CHANGED
|
@@ -39,10 +39,20 @@ name: "通用规则"
|
|
|
39
39
|
- ⚠️ **用户反馈"看起来没生效/没写入"时,先用权威数据源核实**(直连数据库/调对应 API 查,而不是只信一次前端页面截图),前端页面可能存在多个同名视图、未展开的关联表、缓存等歧义,容易把"看错了地方"误判成"修复失败",也可能反过来把真的失败误判成"看错了"——两种方向都要用权威数据源排除,不能靠肉眼猜。
|
|
40
40
|
- ⚠️ **停用/归档任何仍可能被其他配置引用的共享资源(数据库、开关、服务实例、旧接口等)前,必须先确认所有引用方已经完成切换**,禁止先下线资源、后补救引用;正确顺序是「新资源就位 → 所有引用方切到新资源并验证 → 确认无引用后才下线旧资源」。
|
|
41
41
|
|
|
42
|
+
## ⚠️ 修复验证铁律
|
|
43
|
+
|
|
44
|
+
- ⚠️ **验证方法必须"可确定性复现",优先选最直白的路径。** 不要依赖真实流量、后台任务或时序巧合去凑出被验证的状态(反直觉、难复现、别人无法照做)。判断顺序:先问「本次修复的唯一改动是什么」,把它精确映射成一个可手动触发的原子操作,再做 A/B 对照。例:验证"余额变更后网关缓存立即失效",不要靠真实计费请求养缓存,而是直接 `SET` 种一个已知值 → `GET`(有值 = 修复前)→ `DEL`(= 失效动作)→ `GET`(nil = 修复后)。
|
|
45
|
+
- ⚠️ **报告开头必带一张「为什么这样验证成立」的原理说明卡。** 先讲清楚 bug 前后差异的本质是哪一个动作,再论证"手动模拟该动作 = 真实场景",让不了解背景的人也能信服。配一张修复前 vs 修复后的 A/B 对照表(代码行为 / 等价操作 / 观测结果三列并排)。
|
|
46
|
+
- ⚠️ **每个验证步骤必须三要素齐全**:① 怎么做的(可复制粘贴的完整命令)② 结果(含可复查标识:执行 ID、时间戳、返回码)③ 这一步证明了什么(一句话点明证据含义,如"DEL 返回 1 = 删除前 key 确实存在")。
|
|
47
|
+
- ⚠️ **采用「主验证 + 真实链路佐证」双证据结构。** 主验证用最简单直观的方式(如直接看值)确保人人能复现;再补一条端到端真实链路证据(如真实日志、双侧时间戳对齐),把"手动演示"和"真实业务动作"接上,二者相互印证。
|
|
48
|
+
- ⚠️ **截图是可视化证据,图注必须写清「这张图证明了什么」**,并标注关键行/关键数据(红框、箭头放在空白区,不遮挡原内容)。
|
|
49
|
+
- ⚠️ **结论用「证据并列」呈现**:逐条列出每类证据的关键数值和可复查标识(执行 ID / 时间戳),最后一句量化修复效果(如"陈旧窗口从约 30 分钟压缩到 ≈0")。
|
|
50
|
+
|
|
42
51
|
## Git 规范
|
|
43
52
|
|
|
44
53
|
- 分支用 Git Flow(`feature/`、`bugfix/`、`hotfix/`、`refactor/`、`chore/`、`docs/`、`test/`),英文小写中划线分隔。
|
|
45
54
|
- ⚠️ **可评审 PR 的合并目标永远是仓库默认分支(如 `main`/`master`),不是 `test`**。`test` 分支只用于部署测试环境,只能通过 `/deploy-test` skill 直接 `merge` 更新(见「部署规则」),不发 PR、不走 code review;`test` 分支同样禁止直接提交代码。commit 必须中文,禁止 `git push --force`。
|
|
55
|
+
- ⚠️ **已推送到远程的提交需要撤销时,必须用 `git revert`,禁止用 `git push --force` 覆盖远程历史。** `git revert` 会创建一条新的撤销提交,保留完整的操作记录,不影响其他协作者的本地分支;`git push --force` 会破坏远程历史,导致其他人的本地分支与远程脱节,极易引发合并冲突或丢失他人提交。
|
|
46
56
|
- ⚠️ **提交并推送代码后,若发现与主分支存在冲突,必须主动解决**,不能推送完就算完事、把冲突留给别人处理。
|
|
47
57
|
|
|
48
58
|
## PR 核心要求
|