mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-05-12 05:08:58 +08:00
- 更新 ai-plan 公共索引,移除 semantic-release-versioning、runtime-generator-boundary 和 github-issue-review-skill 的活跃入口与分支映射 - 归档 三个已完成 topic 的 tracking 与 trace 文档到 ai-plan/public/archive/ 下
85 lines
4.7 KiB
Markdown
85 lines
4.7 KiB
Markdown
# GitHub Issue Review Skill Trace
|
||
|
||
## 2026-05-06
|
||
|
||
### 阶段:能力落地准备(ISSUE-SKILL-RP-001)
|
||
|
||
- 读取 `AGENTS.md`、`.ai/environment/tools.ai.yaml`、`ai-plan/public/README.md` 与现有
|
||
`.agents/skills/gframework-pr-review/` 实现,确认新 skill 最稳妥的方案是复用现有 PR review 的
|
||
GitHub API、WSL worktree Git 解析、文本 section 输出与脚本级测试骨架
|
||
- 确认当前任务属于 `new` + `complex`:
|
||
- `new`:当前没有与 issue review skill 对应的公开恢复主题
|
||
- `complex`:同时涉及 skill 设计、GitHub API 脚本、CLI 契约、测试和 `ai-plan` 恢复入口
|
||
- 根据实现前确认的产品决策固定默认行为:
|
||
- 未显式传 issue 号时,只在“仓库当前恰好一个 open issue”时自动选中
|
||
- skill 默认只做“抓取 + 分诊 + boot 衔接”,不在脚本层直接改代码
|
||
- 已创建新 topic 目录并将当前分支 `feat/github-issue-review-skill` 映射到该 topic
|
||
|
||
### 当前执行目标
|
||
|
||
1. 新增 `gframework-issue-review` skill 文档与默认 prompt
|
||
2. 新增 `fetch_current_issue_review.py` 及其最小回归测试
|
||
3. 用真实 open issue 抓取验证默认流程,并记录最小验证命令
|
||
|
||
### 下一步
|
||
|
||
1. 直接用 `$gframework-issue-review` + `$gframework-boot` 开始 issue `#327` 的后续处理
|
||
2. 若后续仓库同时出现多个 open issue,统一改用显式 `--issue <number>` 入口
|
||
|
||
### 阶段:实现与验证完成(ISSUE-SKILL-RP-001)
|
||
|
||
- 已落盘新 skill 文件:
|
||
- `.agents/skills/gframework-issue-review/SKILL.md`
|
||
- `.agents/skills/gframework-issue-review/agents/openai.yaml`
|
||
- `.agents/skills/gframework-issue-review/scripts/fetch_current_issue_review.py`
|
||
- `.agents/skills/gframework-issue-review/scripts/test_fetch_current_issue_review.py`
|
||
- 真实抓取验证时首次发现:当前 WSL 会话会解析到 `git.exe`,但无法执行
|
||
- 已在新脚本中修正为:只要仓库根目录存在 Linux `git`,就优先绑定显式 `--git-dir` / `--work-tree`
|
||
- 完成验证:
|
||
- `python3 .agents/skills/gframework-issue-review/scripts/test_fetch_current_issue_review.py`
|
||
- `python3 .agents/skills/gframework-issue-review/scripts/fetch_current_issue_review.py --section summary --section warnings`
|
||
- `python3 .agents/skills/gframework-issue-review/scripts/fetch_current_issue_review.py --format json --json-output /tmp/gframework-open-issue-review.json`
|
||
- `dotnet build GFramework.sln -c Release`
|
||
- 真实 issue 验证结论:
|
||
- 当前 open issue 自动解析为 `#327`
|
||
- `resolution_mode=auto-single-open-issue`
|
||
- `comment_count=0`
|
||
- `next_action=clarify-issue-before-code`
|
||
- `affected_active_topics=cqrs-rewrite`
|
||
|
||
### 阶段:PR review 跟进修复(ISSUE-SKILL-RP-002)
|
||
|
||
- 使用 `$gframework-pr-review` 抓取当前分支 PR #328 后,确认以下评论在本地代码中仍然有效:
|
||
- `fetch_current_issue_review.py` 和回归测试缺少 shebang 后 license header
|
||
- issue-review 脚本仍保留开发机特定的 Windows Git 绝对路径回退
|
||
- `open_url()` 无条件禁用代理,且未支持 GitHub token 认证
|
||
- `build_information_flags()` 仍把 bug 场景的澄清门槛套用到 feature / docs issue
|
||
- `--format json --json-output` 组合时 stdout 只输出路径而不是 JSON
|
||
- skill 文档命令和示例中把 issue 号 `312` 写死
|
||
- 已在活跃 topic 下同步恢复点:
|
||
- 跟踪文件更新为 `ISSUE-SKILL-RP-002`
|
||
- 记录本轮修复范围、验证待办与后续恢复入口
|
||
- 已落盘修复:
|
||
- 为 issue-review 脚本和测试补齐 license header
|
||
- 将 GitHub 请求改为“先按环境代理请求,代理失败再无代理重试”
|
||
- 支持 `GFRAMEWORK_GITHUB_TOKEN` / `GITHUB_TOKEN` / `GH_TOKEN`
|
||
- 将 triage 澄清逻辑改为按主 issue 类型分支
|
||
- 为 docs / feature issue 增加 next-action 回归测试
|
||
- 将 skill 示例 issue 号改为占位符
|
||
- 让 `--format json --json-output` 同时保留 stdout JSON 与落盘副作用
|
||
- 已完成验证:
|
||
- `python3 scripts/license-header.py --check`
|
||
- `python3 .agents/skills/gframework-issue-review/scripts/test_fetch_current_issue_review.py`
|
||
- `python3 .agents/skills/gframework-issue-review/scripts/fetch_current_issue_review.py --issue 327 --format json --json-output /tmp/gframework-open-issue-review.json`
|
||
- `dotnet build GFramework.sln -c Release`
|
||
- 本轮验证结论:
|
||
- license header 检查通过
|
||
- 脚本级测试 `5/5` 通过
|
||
- `--format json --json-output` 现在会同时输出 stdout JSON 并写出 JSON 文件
|
||
- 仓库 Release build 通过,`0 Warning(s)` / `0 Error(s)`
|
||
|
||
### 下一步
|
||
|
||
1. 按仓库规范提交本轮 PR review 修复
|
||
2. 需要继续跟进 issue `#327` 时,再切回 `$gframework-issue-review` + `$gframework-boot` 路径
|