default-mode: pull_request_target: [add, remove] issues: [add, remove] issue_comment: [add] labels: # 可以强制加上一个 label # 可以强制去掉一个 label # Add 的优先级比 Remove 高 - name: "module: copilot" regexes: - '(?:[Aa]dd (?:`|)(?:label |)(?:module: |)copilot(?:`|)|自动(?:作战|战斗|编队)|作业|自動[戰戦][鬥闘]|作業|[Cc]opilot)' - "(?:[Aa]dd (?:`|)(?:label |)(?:module: |)copilot(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Mm]odule |)[Ll]abels?|(?:`|)(?:module: |)copilot(?:`|))))[\\s\\S]*$)" - name: "module: roguelike" regexes: - '(?:[Aa]dd (?:`|)(?:label |)(?:module: |)roguelike(?:`|)|肉[鸽鴿]|集成战略|[Rr]ogue|ローグ)' - "(?:[Aa]dd (?:`|)(?:label |)(?:module: |)roguelike(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Mm]odule |)[Ll]abels?|(?:`|)(?:module: |)roguelike(?:`|))))[\\s\\S]*$)" - name: "module: drop" regexes: - '(?:[Aa]dd (?:`|)(?:label |)(?:module: |)drop(?:`|)|掉落物?识别)' - "(?:[Aa]dd (?:`|)(?:label |)(?:module: |)drop(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Mm]odule |)[Ll]abels?|(?:`|)(?:module: |)drop(?:`|))))[\\s\\S]*$)" disabled-if: - "module: copilot" - "module: roguelike" - name: "module: fight" regexes: - '(?:[Aa]dd (?:`|)(?:label |)(?:module: |)fight(?:`|)|刷图|刷理智|剿灭|刷.{0,6}材料|关卡选择|战斗|作战|[戰戦][鬥闘]|[Ff]ight|[Bb]attle|[Aa]nihilation)' - "(?:[Aa]dd (?:`|)(?:label |)(?:module: |)fight(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Mm]odule |)[Ll]abels?|(?:`|)(?:module: |)fight(?:`|))))[\\s\\S]*$)" disabled-if: - "module: copilot" - "module: drop" - "module: roguelike" - name: "module: infrast" regexes: - "(?:[Aa]dd (?:`|)(?:label |)(?:module: |)infrast(?:`|)|\ 基建|贸易站|制造站|发电站|加工站|会客室|训练室|办公室|控制中枢|宿舍|基地|[Ii]nfrast|[Dd]orm)" - "(?:[Aa]dd (?:`|)(?:label |)(?:module: |)infrast(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Mm]odule |)[Ll]abels?|(?:`|)(?:module: |)infrast(?:`|))))[\\s\\S]*$)" - name: "module: depot" regexes: - '(?:[Aa]dd (?:`|)(?:label |)(?:module: |)depot(?:`|)|仓库识别|仓库检测|仓检|[Dd]epot)' - "(?:[Aa]dd (?:`|)(?:label |)(?:module: |)depot(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Mm]odule |)[Ll]abels?|(?:`|)(?:module: |)depot(?:`|))))[\\s\\S]*$)" - name: "module: others" regexes: - '(?:[Aa]dd (?:`|)(?:label |)(?:module: |)others(?:`|)|信用|拜访|登录|开始唤醒|[Vv]isit|[Ll]ogin|[Ss]tartup)' - "(?:[Aa]dd (?:`|)(?:label |)(?:module: |)others(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Mm]odule |)[Ll]abels?|(?:`|)(?:module: |)others(?:`|))))[\\s\\S]*$)" - name: "module: recruit" regexes: - '(?:[Aa]dd (?:`|)(?:label |)(?:module: |)recruit(?:`|)|公招|招募|公開(?:募集|求人)|[Rr]ecruit)' - "(?:[Aa]dd (?:`|)(?:label |)(?:module: |)recruit(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Mm]odule |)[Ll]abels?|(?:`|)(?:module: |)recruit(?:`|))))[\\s\\S]*$)" disabled-if: - "module: roguelike" - name: "module: core" regexes: - '(?:[Aa]dd (?:`|)(?:label |)(?:module: |)core(?:`|))' - "(?:[Aa]dd (?:`|)(?:label |)(?:module: |)core(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Mm]odule |)[Ll]abels?|(?:`|)(?:module: |)core(?:`|))))[\\s\\S]*$)" - name: "module: GUI" # 要使得 issue 被打上 GUI 标签,最好明确说明 `图形界面`, `图形化界面`, `GUI` 等 regexes: - '(?:[Aa]dd (?:`|)(?:label |)(?:module: |)GUI(?:`|)|软件更新|自动下载|图形化?界面|[Gg]ui|GUI)' - "(?:[Aa]dd (?:`|)(?:label |)(?:module: |)GUI(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Mm]odule |)[Ll]abels?|(?:`|)(?:module: |)GUI(?:`|))))[\\s\\S]*$)" - name: ambiguous # 不符合上面任何一个的分类并且(如果是PR)不符合 commitizen regexes: - "(?:[Aa]dd (?:`|)(?:label |)ambiguous(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)[Ll]abels?|(?:`|)ambiguous(?:`|))))[\\s\\S]*$)" mode: issues: [add, remove] issue_comment: [remove] disabled-if: - "module: copilot" - "module: core" - "module: depot" - "module: fight" - "module: GUI" - "module: infrast" - "module: others" - "module: recruit" - "module: roguelike" - name: release regexes: - '(?:[Aa]dd (?:`|)(?:label |)release(?:`|)|Release v(?:\d)+\.(?:\d)+\.(?:\d)+)' - "(?:[Aa]dd (?:`|)(?:label |)release(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)[Ll]abels?|(?:`|)release(?:`|))))[\\s\\S]*$)" mode: pull_request_target: [add, remove] - name: pr-ambiguous content: ambiguous # 不符合上面任何一个的分类并且(如果是PR)不符合 commitizen regexes: - "(?:[Aa]dd (?:`|)(?:label |)ambiguous(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)[Ll]abels?|(?:`|)ambiguous(?:`|))))[\\s\\S]*$)" - "^(?!(?:build|chore|ci|docs?|feat|fix|perf|refactor|rfc|style|test)[\\:\\.\\(\\,]|[Mm]erge|[Rr]evert)" mode: pull_request_target: [add, remove] disabled-if: - "release" - name: pr-documentation content: documentation # 不符合上面任何一个的分类并且(如果是PR)不符合 commitizen regexes: - '(?:[Aa]dd (?:`|)(?:label |)documentation(?:`|)|^docs?[\:\.\(\,])' - "(?:[Aa]dd (?:`|)(?:label |)documentation(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)[Ll]abels?|(?:`|)documentation(?:`|))))[\\s\\S]*$)" mode: pull_request_target: [add, remove] disabled-if: - "release" - name: translation required regexes: - "(?:[Aa]dd (?:`|)(?:label |)translation required(?:`|)|(?:(?:[\\u3040-\\u30ff]|[㍿㍐])[^`]*){10,})" - "(?:[Aa]dd (?:`|)(?:label |)translation required(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)[Ll]abels?|(?:`|)translation required(?:`|))))[\\s\\S]*$)" mode: pull_request_target: [add, remove] issues: [add, remove] - name: "Client: JP" regexes: - "(?:[Aa]dd (?:`|)(?:label |)(?:Client: |)JP(?:`|)|日(?:文|语|本|)服|\ [Yy]o[Ss]tar\\-?(?:JP|jp)|(?:JP|jp)[\\- ]*(?:[Yy]o[Ss]tar|服|[Cc]lient))" - "(?:[Aa]dd (?:`|)(?:label |)(?:Client: |)JP(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Cc]lient |)[Ll]abels?|(?:`|)(?:Client: |)JP(?:`|))))[\\s\\S]*$)" - name: "Client: EN" regexes: - "(?:[Aa]dd (?:`|)(?:label |)(?:Client: |)EN(?:`|)|英(?:文|语|)服|国际服|美服|\ [Yy]o[Ss]tar\\-?(?:EN|en)|(?:EN|en)[\\- ]*(?:[Yy]o[Ss]tar|服|[Cc]lient))" - "(?:[Aa]dd (?:`|)(?:label |)(?:Client: |)EN(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Cc]lient |)[Ll]abels?|(?:`|)(?:Client: |)EN(?:`|))))[\\s\\S]*$)" - name: "Client: KR" regexes: - "(?:[Aa]dd (?:`|)(?:label |)(?:Client: |)KR(?:`|)|韩(?:文|语|国|)服|\ [Yy]o[Ss]tar\\-?(?:KR|kr)|(?:KR|kr)[\\- ]*(?:[Yy]o[Ss]tar|服|[Cc]lient))" - "(?:[Aa]dd (?:`|)(?:label |)(?:Client: |)KR(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Cc]lient |)[Ll]abels?|(?:`|)(?:Client: |)KR(?:`|))))[\\s\\S]*$)" - name: "Client: ZH_TW" regexes: - '(?:[Aa]dd (?:`|)(?:label |)(?:Client: |)ZH_TW(?:`|)|繁中服|台(?:湾|灣|)服|繁体中文服|(?:龙|龍)成|天下网游|txwy)' - "(?:[Aa]dd (?:`|)(?:label |)(?:Client: |)ZH_TW(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)(?:[Cc]lient |)[Ll]abels?|(?:`|)(?:Client: |)ZH_TW(?:`|))))[\\s\\S]*$)" - name: MAA Team mode: pull_request_target: [add] issues: [add] author_association: - "MEMBER" - name: fixed regexes: - "(?:(?:`v\\d+\\.\\d+\\.\\d+(?:-(?:alpha|beta)\\.\\d+|\\.\\d+|)`|\ v\\d+\\.\\d+\\.\\d+(?:-(?:alpha|beta)\\.\\d+|\\.\\d+|)\\s+)|\ \\[(?:`v\\d+\\.\\d+\\.\\d+(?:-(?:alpha|beta)\\.\\d+|\\.\\d+|)`|\ v\\d+\\.\\d+\\.\\d+(?:-(?:alpha|beta)\\.\\d+|\\.\\d+|))\\]\\(\\S*\\)|\ (?:https?\\://[^/\\s]+/[^/\\s]+/[^/\\s]+/commit/|)[0-9a-z]{40,40})\ \\s*fixed|[Ff]ixed (?:in|at|by)\\s*\ (?:(?:`v\\d+\\.\\d+\\.\\d+(?:-(?:alpha|beta)\\.\\d+|\\.\\d+|)`|\\s+\ v\\d+\\.\\d+\\.\\d+(?:-(?:alpha|beta)\\.\\d+|\\.\\d+|))|\ \\[(?:`v\\d+\\.\\d+\\.\\d+(?:-(?:alpha|beta)\\.\\d+|\\.\\d+|)`|\ v\\d+\\.\\d+\\.\\d+(?:-(?:alpha|beta)\\.\\d+|\\.\\d+|))\\]\\(\\S*\\)|\ (?:https?\\://[^/\\s]+/[^/\\s]+/[^/\\s]+/commit/|)[0-9a-z]{40,40})" mode: issue_comment: [add] - name: duplicate regexes: "[Dd]uplicate of\\s*\\[?`?#\\d+" mode: issue_comment: [add] - name: outdated regexes: "[Ss]uperseded by" mode: issue_comment: [add] - name: incomplete regexes: - "(?:[Aa]dd (?:`|)(?:label |)[Ii][nm]complete(?:`|)|\ \\[Uploading asst(?:.bak|)(?: - 副本|)(?:.log|)(?:.zip|)…\\]\\(\\))" - "(?:[Aa]dd (?:`|)(?:label |)[Ii][nm]complete(?:`|)|^(?![\\s\\S]*(?:\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)[Ll]abels?|(?:`|)[Ii][nm]complete(?:`|))))[\\s\\S]*$)" mode: issues: [add] issue_comment: [add] - name: complete! content: incomplete regexes: - "(?:[Aa]dd (?:`|)(?:label |)[Ii][nm]complete(?:`|)|^(?![\\s\\S]*(?:\ \\[asst(?:.bak|)(?: - 副本|)(?:.log|)(?:.zip|)\\]\\([^\\)]+\\)|\ (?:[Rr]emove|[Ss]kip) (?:(?:[Aa]ll |)[Ll]abels?|(?:`|)[Ii][nm]complete(?:`|))))[\\s\\S]*$)" mode: issues: [remove] issue_comment: [remove] disabled-if: incomplete comments: - name: Log upload failed regexes: - '\[Uploading asst(?:.bak|)(?: - 副本|)(?:.log|)(?:.zip|)…\]\(\)' content: "你的日志没有上传成功,请重新上传。\n\n\ Your log did not upload successfully, please re-upload it." mode: pull_request_target: [add] issues: [add] issue_comment: [add] - name: Upload failed regexes: - "^[^`]*(`[^`]+`[^`]*)*\\[Uploading[^\\]]*…\\]\\(\\)" content: "你有一些文件没有上传成功,请重新上传。\n\n\ You have some files that did not upload successfully, please re-upload them." mode: pull_request_target: [add] issues: [add] issue_comment: [add] disabled-if: - "Log upload failed"