From cb96ab0208bc13e7418bd883bca10a5b511bdebc Mon Sep 17 00:00:00 2001 From: Seefs <40468931+seefs001@users.noreply.github.com> Date: Fri, 24 Jul 2026 13:46:54 +0800 Subject: [PATCH] chore(github): migrate issue templates to required forms (#6452) --- .github/ISSUE_TEMPLATE/bug_report.md | 41 ------- .github/ISSUE_TEMPLATE/bug_report.yml | 110 ++++++++++++++++++ .github/ISSUE_TEMPLATE/bug_report_en.md | 41 ------- .github/ISSUE_TEMPLATE/bug_report_en.yml | 110 ++++++++++++++++++ .github/ISSUE_TEMPLATE/feature_request.md | 32 ----- .github/ISSUE_TEMPLATE/feature_request.yml | 53 +++++++++ .github/ISSUE_TEMPLATE/feature_request_en.md | 32 ----- .github/ISSUE_TEMPLATE/feature_request_en.yml | 53 +++++++++ 8 files changed, 326 insertions(+), 146 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml delete mode 100644 .github/ISSUE_TEMPLATE/bug_report_en.md create mode 100644 .github/ISSUE_TEMPLATE/bug_report_en.yml delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml delete mode 100644 .github/ISSUE_TEMPLATE/feature_request_en.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request_en.yml diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index a758e876..00000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -name: 报告问题 -about: 使用简练详细的语言描述你遇到的问题 -title: '' -labels: bug -assignees: '' - ---- - -## 提交前必读(请勿删除本节) - -- 文档:https://docs.newapi.ai/ -- 使用问题先看或先问:https://deepwiki.com/QuantumNous/new-api -- 开启透传后的转发相关反馈不接受 issue;透传模式会直接转发请求,请自行确认上游行为。 -- 不接受 coding plan、逆向渠道等技术支持类 issue。 -- 警告:删除本模板、删除小节标题或随意清空内容的 issue,可能会被直接关闭;重复恶意提交者可能会被 block。 - -**您当前的 newapi 版本** - -请填写,例如:`v1.0.0` - -**提交确认** - -[//]: # (方框内删除已有的空格,填 x 号) -- [ ] **非重复 issue:** 我已搜索现有 [Issues](https://github.com/QuantumNous/new-api/issues?q=is%3Aissue),确认目前没有类似 issue。 -- [ ] **提交前必读:** 我已完整阅读上方“提交前必读”,并已查看文档 https://docs.newapi.ai/、项目 README 且向 AI 提问,确认这不是使用、配置或接入类问题。 -- [ ] **模板完整:** 我未删除此模板中的任何引导内容或小节标题,并会按要求完整填写。 -- [ ] **维护成本:** 我理解项目维护者精力有限,不遵循模板要求的 issue 可能会被无视或直接关闭。 - -**问题描述** - -请尽可能说明问题现象、影响范围,以及你判断它是程序问题而不是上游行为或使用问题的依据。 - -- 转发问题请尽可能说明渠道类型、转换格式、上游原生支持依据和服务端日志。 -- 计费问题请尽可能附请求返回的 `usage` 示例。 - -**复现步骤** - -**预期结果** - -**相关截图** diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 00000000..2ff00a04 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,110 @@ +name: 报告问题 +description: 使用简练详细的语言描述你遇到的问题 +title: "" +labels: + - bug +assignees: [] +body: + - type: markdown + attributes: + value: | + ## 提交前必读(请勿删除本节) + + - 文档:https://docs.newapi.ai/ + - 使用问题先看或先问:https://deepwiki.com/QuantumNous/new-api + - 转发类问题必须先确认问题发生在 new-api 这一层:请使用等价的脱敏请求分别直连上游和经过 new-api,对比响应状态、错误体与服务端日志。透传模式或未经对比、仅展示上游报错的反馈不接受 issue。 + - 不接受 Coding Plan、逆向渠道、第三方封装接口,以及将 Codex 接口反代为通用 API 后产生的兼容性问题;Codex API 自身特有的协议或行为也不应被当作标准 OpenAI API 行为,相关问题请先向渠道或接口提供方确认。 + - 本项目不提供官方托管服务,也不为第三方托管站、中转站或 API 服务提供技术支持;此类问题请联系对应运营方。 + - 警告:删除本模板、删除小节标题或随意清空内容的 issue,可能会被直接关闭;重复恶意提交者可能会被 block。 + + - type: dropdown + id: deployment-source + attributes: + label: 部署来源 + description: 请选择发生问题的 newapi 实例来源;第三方服务或未经本仓库原版复现的 fork 不属于本项目支持范围。 + options: + - 本仓库 Release / 官方镜像(自行部署) + - 本仓库 main 分支源码(自行构建) + - 修改过的 fork(须先在本仓库原版复现) + - 第三方托管站、中转站或 API 服务(请联系其运营方) + validations: + required: true + + - type: input + id: version + attributes: + label: 您当前的 newapi 版本 + description: 请填写准确的版本号、commit 或镜像标签,例如 `v1.0.0`;`latest`、`unknown` 等无法定位代码的内容不视为有效版本信息。 + validations: + required: true + + - type: checkboxes + id: submission-checks + attributes: + label: 提交确认 + options: + - label: "**非重复 issue:** 我已搜索现有 [Issues](https://github.com/QuantumNous/new-api/issues?q=is%3Aissue),确认目前没有类似 issue。" + required: true + - label: "**提交前必读:** 我已完整阅读上方“提交前必读”,并已查看文档 https://docs.newapi.ai/、项目 README 且向 AI 提问,确认这不是使用、配置或接入类问题。" + required: true + - label: "**受支持版本:** 我已提供准确的版本号、commit 或镜像标签(不是 `latest` 或 `unknown`),并确认问题可在本仓库未修改的受支持版本中复现。" + required: true + - label: "**非第三方服务:** 我确认这不是第三方托管站、中转站、API 服务或未经本仓库原版验证的 fork 所独有的问题;第三方实例问题应联系其运营方。" + required: true + - label: "**问题归属:** 我已提供足以区分客户端、new-api 和上游的证据;转发问题已使用等价的脱敏请求对比直连上游与经过 new-api 的结果,确认错误由 new-api 引入或改变,而非仅原样转发上游报错。" + required: true + - label: "**渠道与协议边界:** 我确认问题不是由 Coding Plan、逆向渠道、第三方封装接口、Codex 反代接口,或 Codex API 自身特有行为导致;若问题最初出现于此类接口,我已在本仓库支持的标准 API 协议上复现。" + required: true + - label: "**维护成本:** 我理解项目维护者精力有限,不遵循模板要求的 issue 可能会被无视或直接关闭。" + required: true + + - type: markdown + attributes: + value: | + ### 问题描述填写要求 + + 所有问题必须写明**实际现象、影响范围、发生频率**,以及判断问题位于 new-api 而非客户端或上游的依据。 + + 以下项目在涉及对应类型时必须填写: + + - **转发 / API:** 请求端点与方法、渠道类型、模型、转换格式、是否透传、上游原生支持依据,以及等价脱敏请求直连上游和经过 new-api 的状态码、响应体与服务端日志对比。 + - **计费:** 请求端点与模型、响应中的 `usage`、相关倍率或价格配置、消费日志,以及预期计费结果和计算依据。 + - **前端:** 页面路径、浏览器及版本、所用主题,以及浏览器 Console / Network 中的相关错误。 + - **部署 / 升级:** 部署方式、操作系统与架构、数据库类型、升级前后版本,以及启动或迁移日志。 + + - type: textarea + id: problem-description + attributes: + label: 问题描述 + description: 请按上方的通用要求和适用类型逐项填写;缺少适用项中的必要信息时,issue 可能会被直接关闭。 + placeholder: | + 实际现象: + 影响范围: + 发生频率: + 判断问题位于 new-api 的依据: + + 按问题类型补充对应的请求、配置、日志和对比证据: + validations: + required: true + + - type: textarea + id: reproduction-steps + attributes: + label: 复现步骤 + description: 转发问题请提供可执行的脱敏请求,以及直连上游和经过 new-api 的实际结果;不要只粘贴客户端提示或上游错误。 + validations: + required: true + + - type: textarea + id: expected-result + attributes: + label: 预期结果 + validations: + required: true + + - type: textarea + id: related-screenshots + attributes: + label: 相关截图 + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/bug_report_en.md b/.github/ISSUE_TEMPLATE/bug_report_en.md deleted file mode 100644 index 7aed06ff..00000000 --- a/.github/ISSUE_TEMPLATE/bug_report_en.md +++ /dev/null @@ -1,41 +0,0 @@ ---- -name: Bug Report -about: Describe the issue you encountered with clear and detailed language -title: '' -labels: bug -assignees: '' - ---- - -## Read This First (Do Not Remove This Section) - -- Docs: https://docs.newapi.ai/ -- Usage questions first: https://deepwiki.com/QuantumNous/new-api -- Issues about forwarding behavior after enabling pass-through mode are not accepted; pass-through mode forwards requests directly, so please verify upstream behavior yourself. -- Technical support requests such as coding plans or reverse-engineering channels are not accepted as issues. -- Warning: issues with this template removed, section headings deleted, or content cleared may be closed directly. Repeated abusive submissions may result in a block. - -**Your current newapi version** - -Please fill this in, for example: `v1.0.0` - -**Submission Checks** - -[//]: # (Remove the space in the box and fill with an x) -- [ ] **Non-duplicate issue:** I have searched existing [Issues](https://github.com/QuantumNous/new-api/issues?q=is%3Aissue) and confirmed there are no similar issues. -- [ ] **Read this first:** I have fully read the section above, reviewed the docs at https://docs.newapi.ai/ and the project README, and asked AI first, confirming this is not a usage, configuration, or integration question. -- [ ] **Template intact:** I have not removed any guidance or section headings from this template and will complete it as requested. -- [ ] **Maintainer time:** I understand that maintainers have limited time and issues that do not follow this template may be ignored or closed directly. - -**Issue Description** - -Describe the symptom, impact scope, and why you believe this is an application issue rather than upstream behavior or a usage question with as much detail as possible. - -- For forwarding issues, include the channel type, conversion format, upstream native-support evidence, and server logs when possible. -- For billing issues, include an example of the returned `usage` when possible. - -**Steps to Reproduce** - -**Expected Result** - -**Related Screenshots** diff --git a/.github/ISSUE_TEMPLATE/bug_report_en.yml b/.github/ISSUE_TEMPLATE/bug_report_en.yml new file mode 100644 index 00000000..7aadc00c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report_en.yml @@ -0,0 +1,110 @@ +name: Bug Report +description: Describe the issue you encountered with clear and detailed language +title: "" +labels: + - bug +assignees: [] +body: + - type: markdown + attributes: + value: | + ## Read This First (Do Not Remove This Section) + + - Docs: https://docs.newapi.ai/ + - Usage questions first: https://deepwiki.com/QuantumNous/new-api + - Relay reports must first establish that the issue occurs in the new-api layer. Use equivalent redacted requests to compare the direct upstream result with the result through new-api, including response status, error body, and server logs. Reports involving pass-through mode, or showing only an upstream error without this comparison, are not accepted. + - Reports about Coding Plan services, reverse-engineered channels, third-party API wrappers, or compatibility issues caused by exposing a Codex endpoint through a reverse proxy as a general-purpose API are not accepted. Protocols or behavior specific to the Codex API should not be treated as standard OpenAI API behavior; confirm such issues with the channel or API provider first. + - This project does not operate an official hosted service or provide technical support for third-party hosting sites, relay services, or API services. Contact the relevant operator for those issues. + - Warning: issues with this template removed, section headings deleted, or content cleared may be closed directly. Repeated abusive submissions may result in a block. + + - type: dropdown + id: deployment-source + attributes: + label: Deployment source + description: Select the source of the newapi instance where the issue occurs. Third-party services and forks not reproduced against the unmodified repository are outside this project's support scope. + options: + - Repository release / official image (self-hosted) + - Repository main branch source (self-built) + - Modified fork (must first be reproduced against the unmodified repository) + - Third-party hosting site, relay, or API service (contact its operator) + validations: + required: true + + - type: input + id: version + attributes: + label: Your current newapi version + description: Enter an exact version, commit, or image tag, such as `v1.0.0`. Values such as `latest` or `unknown` that cannot identify the code are not valid version information. + validations: + required: true + + - type: checkboxes + id: submission-checks + attributes: + label: Submission Checks + options: + - label: "**Non-duplicate issue:** I have searched existing [Issues](https://github.com/QuantumNous/new-api/issues?q=is%3Aissue) and confirmed there are no similar issues." + required: true + - label: "**Read this first:** I have fully read the section above, reviewed the docs at https://docs.newapi.ai/ and the project README, and asked AI first, confirming this is not a usage, configuration, or integration question." + required: true + - label: "**Supported version:** I have provided an exact version, commit, or image tag (not `latest` or `unknown`) and confirmed that the issue reproduces on an unmodified, supported version from this repository." + required: true + - label: "**Not a third-party service:** I confirm that this issue is not exclusive to a third-party hosting site, relay, API service, or fork that has not been verified against the unmodified repository. Third-party instance issues must be reported to their operator." + required: true + - label: "**Issue attribution:** I have provided evidence that distinguishes the client, new-api, and upstream layers. For relay issues, I compared equivalent redacted requests sent directly upstream and through new-api, confirming that new-api introduces or changes the error rather than merely forwarding the upstream error unchanged." + required: true + - label: "**Channel and protocol boundary:** I confirm that the issue is not caused by a Coding Plan service, reverse-engineered channel, third-party API wrapper, Codex reverse-proxy endpoint, or behavior specific to the Codex API. If first observed through such an interface, I have reproduced it using a standard API protocol supported by this repository." + required: true + - label: "**Maintainer time:** I understand that maintainers have limited time and issues that do not follow this template may be ignored or closed directly." + required: true + + - type: markdown + attributes: + value: | + ### Issue description requirements + + Every report must state the **actual behavior, impact, frequency**, and evidence showing that the problem is in new-api rather than the client or upstream service. + + The following details are required when the corresponding area is involved: + + - **Relay / API:** request endpoint and method, channel type, model, conversion format, pass-through status, evidence of upstream native support, and a comparison of equivalent redacted requests sent directly upstream and through new-api, including status codes, response bodies, and server logs. + - **Billing:** request endpoint and model, response `usage`, relevant ratio or pricing configuration, consumption log, expected charge, and calculation basis. + - **Frontend:** page path, browser and version, active theme, and relevant browser Console / Network errors. + - **Deployment / upgrade:** deployment method, operating system and architecture, database type, versions before and after the upgrade, and startup or migration logs. + + - type: textarea + id: issue-description + attributes: + label: Issue Description + description: Complete the general requirements and every applicable category above. Issues missing required applicable details may be closed directly. + placeholder: | + Actual behavior: + Impact: + Frequency: + Evidence that the issue is in new-api: + + Add the requests, configuration, logs, and comparison evidence required for the applicable category: + validations: + required: true + + - type: textarea + id: steps-to-reproduce + attributes: + label: Steps to Reproduce + description: For relay issues, provide an executable redacted request and the actual results both directly upstream and through new-api. Do not include only a client message or upstream error. + validations: + required: true + + - type: textarea + id: expected-result + attributes: + label: Expected Result + validations: + required: true + + - type: textarea + id: related-screenshots + attributes: + label: Related Screenshots + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index d9f2bd97..00000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -name: 功能请求 -about: 使用简练详细的语言描述希望加入的新功能 -title: '' -labels: enhancement -assignees: '' - ---- - -## 提交前必读(请勿删除本节) - -- 文档:https://docs.newapi.ai/ -- 使用问题先看或先问:https://deepwiki.com/QuantumNous/new-api -- 开启透传后的转发相关反馈不接受 issue;透传模式会直接转发请求,请自行确认上游行为。 -- 不接受 coding plan、逆向渠道等技术支持类 issue。 -- 警告:删除本模板、删除小节标题或随意清空内容的 issue,可能会被直接关闭;重复恶意提交者可能会被 block。 - -**您当前的 newapi 版本** - -请填写,例如:`v1.0.0` - -**提交确认** - -[//]: # (方框内删除已有的空格,填 x 号) -- [ ] **非重复 issue:** 我已搜索现有 [Issues](https://github.com/QuantumNous/new-api/issues?q=is%3Aissue),确认目前没有类似 issue。 -- [ ] **提交前必读:** 我已完整阅读上方“提交前必读”,并已查看文档 https://docs.newapi.ai/、项目 README 且向 AI 提问,确认这不是使用、配置或接入类问题,且现有版本无法满足需求。 -- [ ] **模板完整:** 我未删除此模板中的任何引导内容或小节标题,并会按要求完整填写。 -- [ ] **维护成本:** 我理解项目维护者精力有限,不遵循模板要求的 issue 可能会被无视或直接关闭。 - -**功能描述** - -**应用场景** diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 00000000..2387cb25 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,53 @@ +name: 功能请求 +description: 使用简练详细的语言描述希望加入的新功能 +title: "" +labels: + - enhancement +assignees: [] +body: + - type: markdown + attributes: + value: | + ## 提交前必读(请勿删除本节) + + - 文档:https://docs.newapi.ai/ + - 使用问题先看或先问:https://deepwiki.com/QuantumNous/new-api + - 开启透传后的转发相关反馈不接受 issue;透传模式会直接转发请求,请自行确认上游行为。 + - 不接受 Coding Plan、逆向渠道、第三方封装接口,以及将 Codex 接口反代为通用 API 后产生的兼容性问题;Codex API 自身特有的协议或行为也不应被当作标准 OpenAI API 行为,相关问题请先向渠道或接口提供方确认。 + - 警告:删除本模板、删除小节标题或随意清空内容的 issue,可能会被直接关闭;重复恶意提交者可能会被 block。 + + - type: input + id: version + attributes: + label: 您当前的 newapi 版本 + description: 请填写,例如:`v1.0.0` + validations: + required: true + + - type: checkboxes + id: submission-checks + attributes: + label: 提交确认 + options: + - label: "**非重复 issue:** 我已搜索现有 [Issues](https://github.com/QuantumNous/new-api/issues?q=is%3Aissue),确认目前没有类似 issue。" + required: true + - label: "**提交前必读:** 我已完整阅读上方“提交前必读”,并已查看文档 https://docs.newapi.ai/、项目 README 且向 AI 提问,确认这不是使用、配置或接入类问题,且现有版本无法满足需求。" + required: true + - label: "**模板完整:** 我未删除此模板中的任何引导内容或小节标题,并会按要求完整填写。" + required: true + - label: "**维护成本:** 我理解项目维护者精力有限,不遵循模板要求的 issue 可能会被无视或直接关闭。" + required: true + + - type: textarea + id: feature-description + attributes: + label: 功能描述 + validations: + required: true + + - type: textarea + id: use-case + attributes: + label: 应用场景 + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/feature_request_en.md b/.github/ISSUE_TEMPLATE/feature_request_en.md deleted file mode 100644 index aae653f5..00000000 --- a/.github/ISSUE_TEMPLATE/feature_request_en.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -name: Feature Request -about: Describe the new feature you would like to add with clear and detailed language -title: '' -labels: enhancement -assignees: '' - ---- - -## Read This First (Do Not Remove This Section) - -- Docs: https://docs.newapi.ai/ -- Usage questions first: https://deepwiki.com/QuantumNous/new-api -- Issues about forwarding behavior after enabling pass-through mode are not accepted; pass-through mode forwards requests directly, so please verify upstream behavior yourself. -- Technical support requests such as coding plans or reverse-engineering channels are not accepted as issues. -- Warning: issues with this template removed, section headings deleted, or content cleared may be closed directly. Repeated abusive submissions may result in a block. - -**Your current newapi version** - -Please fill this in, for example: `v1.0.0` - -**Submission Checks** - -[//]: # (Remove the space in the box and fill with an x) -- [ ] **Non-duplicate issue:** I have searched existing [Issues](https://github.com/QuantumNous/new-api/issues?q=is%3Aissue) and confirmed there are no similar issues. -- [ ] **Read this first:** I have fully read the section above, reviewed the docs at https://docs.newapi.ai/ and the project README, and asked AI first, confirming this is not a usage, configuration, or integration question, and that the current version cannot meet my needs. -- [ ] **Template intact:** I have not removed any guidance or section headings from this template and will complete it as requested. -- [ ] **Maintainer time:** I understand that maintainers have limited time and issues that do not follow this template may be ignored or closed directly. - -**Feature Description** - -**Use Case** diff --git a/.github/ISSUE_TEMPLATE/feature_request_en.yml b/.github/ISSUE_TEMPLATE/feature_request_en.yml new file mode 100644 index 00000000..565d67da --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request_en.yml @@ -0,0 +1,53 @@ +name: Feature Request +description: Describe the new feature you would like to add with clear and detailed language +title: "" +labels: + - enhancement +assignees: [] +body: + - type: markdown + attributes: + value: | + ## Read This First (Do Not Remove This Section) + + - Docs: https://docs.newapi.ai/ + - Usage questions first: https://deepwiki.com/QuantumNous/new-api + - Issues about forwarding behavior after enabling pass-through mode are not accepted; pass-through mode forwards requests directly, so please verify upstream behavior yourself. + - Reports about Coding Plan services, reverse-engineered channels, third-party API wrappers, or compatibility issues caused by exposing a Codex endpoint through a reverse proxy as a general-purpose API are not accepted. Protocols or behavior specific to the Codex API should not be treated as standard OpenAI API behavior; confirm such issues with the channel or API provider first. + - Warning: issues with this template removed, section headings deleted, or content cleared may be closed directly. Repeated abusive submissions may result in a block. + + - type: input + id: version + attributes: + label: Your current newapi version + description: "Please fill this in, for example: `v1.0.0`" + validations: + required: true + + - type: checkboxes + id: submission-checks + attributes: + label: Submission Checks + options: + - label: "**Non-duplicate issue:** I have searched existing [Issues](https://github.com/QuantumNous/new-api/issues?q=is%3Aissue) and confirmed there are no similar issues." + required: true + - label: "**Read this first:** I have fully read the section above, reviewed the docs at https://docs.newapi.ai/ and the project README, and asked AI first, confirming this is not a usage, configuration, or integration question, and that the current version cannot meet my needs." + required: true + - label: "**Template intact:** I have not removed any guidance or section headings from this template and will complete it as requested." + required: true + - label: "**Maintainer time:** I understand that maintainers have limited time and issues that do not follow this template may be ignored or closed directly." + required: true + + - type: textarea + id: feature-description + attributes: + label: Feature Description + validations: + required: true + + - type: textarea + id: use-case + attributes: + label: Use Case + validations: + required: true