chore(config): 参考 novavis 完善 Agent 配置体系

- AGENTS.md: 新增 §20 工具脚本复用 / §21 分析结论复用 / §22 Flaky 门禁,更新文档配置表
- .pi/: 新增 settings.json、rules/guardrails.md、prompts/{debug,review,ship}-gym-manage.md
- .agents/: 新增 Hook 配置与 4 个 Hook 脚本(session-start/pre-agent-check/check-completeness/stop-check)
  及 protocols/systematic-debugging.md(check-completeness 含接口链缺口检测)
- scripts/flaky-scan.sh: vitest shuffle 稳定性扫描(gym-manage-web)
- .gitignore: 追踪 AGENTS.md 与 .pi 配置,忽略运行时缓存(todos/taskflows-runs/tokenomy/sessions)
This commit was merged in pull request #57.
This commit is contained in:
2026-08-04 12:02:12 +08:00
parent 4ba4af2f53
commit 5c65139fd8
14 changed files with 888 additions and 2 deletions
+61
View File
@@ -0,0 +1,61 @@
#!/usr/bin/env bash
# PreToolUse hook: 写操作前根据文件路径输出集成提醒
# 不阻止操作,仅输出提示信息
set -euo pipefail
f="${AGENT_EDITED_FILE:-$AGENT_FILE}"
[ -z "$f" ] && exit 0
[ ! -e "$f" ] && exit 0
basename=$(basename "$f")
# 检查 1: 新建/修改 Java Controller → 提醒全链路(API → Service → Web/UniApp
if [[ "$f" == *"gym-manage-api/"*.java ]]; then
if grep -q '@RestController\|@Controller' "$f" 2>/dev/null; then
echo ""
echo "[PRE-CHECK] 修改 Java Controller: $basename"
echo " → 全链路要求(AGENTS.md §13/§14:"
echo " 1) Service 层实现业务逻辑(Controller 不直连 Repository"
echo " 2) 同步 gym-manage-web/src/api/*.api.ts(请求路径/参数/类型)"
echo " 3) 同步 gym-manage-uniapp/api/*.js 与 coach-uniapp/api/*.js"
echo " 4) Swagger 注解齐全(@ApiOperation/@ApiModelProperty"
echo ""
exit 0
fi
# 仅 Service/其它 Java 文件:提醒写单测
echo ""
echo "[PRE-CHECK] 修改后端 Java: $basename"
echo " → 业务逻辑改动需配套 JUnit 测试(cd gym-manage-api && mvn test -pl <模块> -am"
echo ""
exit 0
fi
# 检查 2: 修改 Web 请求层 → 提醒同步类型与页面
if [[ "$f" == *"gym-manage-web/src/api/"*".api.ts" ]]; then
echo ""
echo "[PRE-CHECK] Web API 接口变更: $basename"
echo " → 同步更新:"
echo " 1) 接口路径/参数与后端 Controller 注解一致"
echo " 2) 类型定义与后端 DTO/VO 字段对齐(camelCase"
echo " 3) 页面调用方(src/views、src/stores)使用新签名"
echo ""
exit 0
fi
# 检查 3: 修改 UniApp 请求层 → 提醒同步
if [[ "$f" == *"gym-manage-uniapp/api/"*.js ]] || [[ "$f" == *"gym-manage-coach-uniapp/api/"*.js ]]; then
echo ""
echo "[PRE-CHECK] UniApp API 变更: $basename"
echo " → 同步更新: 页面调用方(pages/*)+ 后端接口契约 + Web 端同名接口"
echo ""
exit 0
fi
# 检查 4: 新建/修改测试文件 → 提醒 flaky 门禁
if [[ "$f" == *".test."* ]] || [[ "$f" == *".spec."* ]] || [[ "$f" == *"Test.java" ]]; then
echo ""
echo "[PRE-CHECK] 测试文件: $basename"
echo " → Web 测试(vitest)需通过 bash scripts/flaky-scan.sh --spec <文件> --runs 3AGENTS.md §22"
echo ""
exit 0
fi