From 1596f037fb6f26ce78cadf290ccf2c0bbe4ea7e4 Mon Sep 17 00:00:00 2001 From: ChenHao Chen Date: Wed, 15 Apr 2026 10:40:13 +0800 Subject: [PATCH] feat: add RFC issue template and improve issue-check workflow - Add rfc.yml: minimal free-form RFC template with single Proposal field - Skip completeness check for issues with rfc label - Update no-template warning to friendlier, actionable message --- .github/ISSUE_TEMPLATE/rfc.yml | 10 ++++++++++ .github/workflows/issue-check.yml | 5 ++++- 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 .github/ISSUE_TEMPLATE/rfc.yml diff --git a/.github/ISSUE_TEMPLATE/rfc.yml b/.github/ISSUE_TEMPLATE/rfc.yml new file mode 100644 index 00000000..b17347e8 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/rfc.yml @@ -0,0 +1,10 @@ +name: RFC +description: Propose a design or architectural change +labels: [rfc, needs-triage] +body: + - type: textarea + attributes: + label: Proposal + description: Describe your proposal freely + validations: + required: true diff --git a/.github/workflows/issue-check.yml b/.github/workflows/issue-check.yml index ead16df5..f60c42b9 100644 --- a/.github/workflows/issue-check.yml +++ b/.github/workflows/issue-check.yml @@ -29,6 +29,9 @@ jobs: guidance: ['Question'] }; + // RFC is free-form — skip check entirely + if (labels.includes('rfc')) return; + const type = Object.keys(rules).find(k => labels.includes(k)); // Find old check comment @@ -42,7 +45,7 @@ jobs: // No template label — skip if already flagged if (old && labels.includes('incomplete')) return; - const msg = `${marker}\n⚠️ Could not detect an issue template. Please make sure this issue was created using one of the available templates and that the corresponding label (\`bug\`, \`feature\`, \`documentation\`, \`guidance\`) is present.\n\nAvailable templates: Bug Report, Feature Request, Documentation, Guidance`; + const msg = `${marker}\nThanks for the report! It looks like this issue was created without a template and is missing some required fields. Please add one of the following labels: \`bug\`, \`feature\`, \`documentation\`, or \`guidance\`, then edit this issue to include the matching template fields — the \`incomplete\` label will be removed automatically.`; if (old) { await github.rest.issues.deleteComment({