gitlink-cli/examples/workflows/community-ops-automation
Soren 2e42d9356d 完善负责人分配逻辑 2026-07-06 12:32:16 +08:00
..
docs 完善负责人分配逻辑 2026-07-06 12:32:16 +08:00
examples 完善负责人分配逻辑 2026-07-06 12:32:16 +08:00
scripts 完善负责人分配逻辑 2026-07-06 12:32:16 +08:00
tests 完善负责人分配逻辑 2026-07-06 12:32:16 +08:00
.gitignore feat(workflows): add community ops automation example 2026-05-24 14:34:47 +08:00
LICENSE feat(workflows): add community ops automation example 2026-05-24 14:34:47 +08:00
README.md 完善负责人分配逻辑 2026-07-06 12:32:16 +08:00

README.md

GitLink 构建端到端自动化工作流

面向 GitLink 竞赛子赛题三的端到端自动化工作流项目。

本项目面向开源社区运营场景,使用 gitlink-cli 串联 Issue 分拣、责任人分配、仓库信息、Issue、PR 和 Release 数据采集自动生成社区周报、Release Notes 草稿和结构化摘要,并支持将摘要发布到指定 GitLink Issue。该流程覆盖“新 Issue 自动分类 -> 分配责任人 -> 数据采集 -> 指标分析 -> 文档生成 -> 结果发布”的完整闭环。

Issue 分类规则来自自定义 SkillD:\BigData\CCFer\CCF\gitlink-issue-triage-rules\SKILL.md。工作流代码会直接读取 Skill 中的机器可读 JSON 规则块,不再依赖 workflow +triage 内置分类结果。

交付物

  • scripts/gitlink_workflow.py:主工作流入口
  • scripts/run_demo.ps1:一键复现脚本
  • docs/architecture.md:架构图与流程说明
  • docs/quickstart.md:最短复现路径
  • docs/runbook.md:运行手册
  • docs/verification.md:真实仓库验证记录
  • docs/submission-checklist.md:参赛提交核对清单
  • docs/upload-to-gitlink.md:仓库目录结构说明
  • examples/sample_config.json:参赛仓库配置
  • examples/demo_active_config.json:公开仓库验证配置
  • examples/demo_outputs/:真实运行示例产物
  • tests/test_gitlink_workflow.py:单测
  • LICENSEApache 2.0

运行方式

推荐直接运行一键脚本:

.\scripts\run_demo.ps1

切换到参赛仓库配置:

.\scripts\run_demo.ps1 -Config examples\sample_config.json

输出

  • outputs/*_report.md
  • outputs/*_release_notes.md
  • outputs/*_summary.json
  • outputs/*_triage_plan.md
  • outputs/*_triage_plan.json

Issue 自动分类与派单

默认运行会执行 dry-run只生成分类和派单计划不写回真实 Issue

.\scripts\run_demo.ps1

确认计划无误后,显式开启写回:

.\scripts\run_demo.ps1 -ApplyTriage

如需显式指定 Skill 路径:

python .\scripts\gitlink_workflow.py --config .\examples\demo_active_config.json --triage-skill D:\BigData\CCFer\CCF\gitlink-issue-triage-rules\SKILL.md

写回链路会先通过 issue +list 拉取开放 Issue再读取自定义 Skill 规则完成分类;随后通过 label +listissue +assignersissue +viewissue +update 完成标签、优先级和负责人写入。若配置开启 comment,还会追加一条审计评论。*_triage_plan.json 中会记录 source=skill-json、Skill 路径和命中的规则 ID。

负责人分配配置

示例配置使用显式三成员池,避免依赖运行环境是否能访问 member +list。负责人分配采用按类型映射:

{
  "security": [153579],
  "bug": [153579],
  "performance": [153579],
  "feature": [134328],
  "refactor": [134328],
  "ci": [134328],
  "question": [134450],
  "docs": [134450],
  "duplicate": [134450]
}

当前成员池为 Angel123456(153579, 管理员)Hsy15889521073(134328, 开发者)Priziq(134450, 报告者)。高风险维护类分配给管理员,开发实现类分配给开发者,问答/文档/重复反馈分配给报告者。数字会按 GitLink 用户 ID 直接使用;字符串会先尝试通过 issue +assigners 返回的 login/name 解析,再回退到 triage.members

已验证仓库

  • Angel123456/gitlink-cli完成仓库信息、Issue、PR、Release 采集,并完成 Issue 自动分类 dry-run 验证
  • Angel123456/gitlink-cli完成仓库信息、Issue、PR、Release 采集并生成包含有效统计数据的周报、Release Notes 和结构化摘要

项目定位

  • 满足子赛题三“端到端自动化工作流”的要求
  • 串联自定义 Skill 规则读取、Issue 分拣/派单命令、4 个数据采集命令和 1 个结果发布命令
  • 新增 Issue 自动分类与负责人分配,形成社区运营前置处理闭环
  • 支持在真实 GitLink 项目上复现
  • 提供运行脚本、验证记录、示例产物和单元测试