chore: update issue templates (#1590)
Signed-off-by: Navendu Pottekkat <navendu@apache.org>
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
index 108d8b4..e79ff6f 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.yml
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -1,61 +1,63 @@
 name: "Bug report"
-description: Create a report to help us improve
+description: Report a bug to help improve the project.
 title: "bug: "
 body:
   - type: markdown
     attributes:
       value: |
-        The more information you fill in, the better we can help you.
+        Thank you for taking the time to report this bug!
 
-        - Please use English on public channel.
-        - Encourage using words rather than pictures to describe errors.
-        - Encourage pre-searching with keywords in the issue.
+        _The more information you share, the faster we can identify and fix the bug._
+
+        Prior to opening the issue, please make sure that you:
+
+        - Use English to communicate.
+        - Search the [open issues](https://github.com/apache/apisix-ingress-controller/issues) to avoid duplicating the issue.
 
   - type: textarea
-    id: description
+    id: current-behavior
     attributes:
-      label: Issue description
-      description: Provide a clear and concise description of what you're running into.
+      label: Current Behavior
+      description: Describe the issue you are facing.
+      placeholder: |
+        What is the issue with the current behavior?
+    validations:
+      required: true
+  - type: textarea
+    id: expected-behavior
+    attributes:
+      label: Expected Behavior
+      description: Describe what you expected to happen.
+      placeholder: |
+        What did you expect to happen instead?
+    validations:
+      required: false
+  - type: textarea
+    id: error
+    attributes:
+      label: Error Logs
+      description: Paste the error logs if any. You can change the [log level](https://github.com/apache/apisix/blob/617c325628f33961be67f61f0fa8002afc370e42/docs/en/latest/FAQ.md#how-to-change-the-log-level) to get a verbose error log.
+    validations:
+      required: false
+  - type: textarea
+    id: steps
+    attributes:
+      label: Steps to Reproduce
+      description: Share the steps you took so that we can reproduce the issue. Reports without proper steps details will likely be closed.
+      placeholder: |
+        1. Install APISIX Ingress controller with the Helm chart.
+        2. Create a Route with ApisixRoute resource.
+        3. ...
     validations:
       required: true
   - type: textarea
     id: environment
     attributes:
       label: Environment
-      description: Bug report without environment information will be ignored or closed.
+      description: Share your environment details. Reports without proper environment details will likely be closed.
       value: |
-        - your apisix-ingress-controller version (output of apisix-ingress-controller version --long):
-        - your Kubernetes cluster version (output of kubectl version):
-        - if you run apisix-ingress-controller in Bare-metal environment, also show your OS version (uname -a):
+        - APISIX Ingress controller version (run `apisix-ingress-controller version --long`)
+        - Kubernetes cluster version (run `kubectl version`)
+        - OS version if running APISIX Ingress controller in a bare-metal environment (run `uname -a`)
     validations:
       required: true
-  - type: textarea
-    id: steps
-    attributes:
-      label: Minimal test code / Steps to reproduce
-      description: Bug report without steps to reproduce will be ignored or closed.
-      placeholder: |
-        1.
-        2.
-        3.
-    validations:
-      required: true
-  - type: textarea
-    id: actual
-    attributes:
-      label: Actual result
-      description: What's the actual result? (including assertion message & call stack if applicable).
-    validations:
-      required: true
-  - type: textarea
-    id: Error
-    attributes:
-      label: Error log
-      description: You can adjust the [error log level](https://github.com/apache/apisix/blob/617c325628f33961be67f61f0fa8002afc370e42/docs/en/latest/FAQ.md#how-to-change-the-log-level) and paste more related error.log.
-    validations:
-      required: true
-  - type: textarea
-    id: expected
-    attributes:
-      label: Expected result
-      description: What's the expected result?
diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml
new file mode 100644
index 0000000..a1f825f
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature_request.yml
@@ -0,0 +1,23 @@
+name: "Feature Request"
+description: Suggest an enhancement to APISIX Ingress controller.
+title: "feat: As a user, I want to ..., so that ..."
+body:
+  - type: markdown
+    attributes:
+      value: |
+        _The more information you share, the faster we can help you._
+
+        Prior to opening the issue, please make sure that you:
+
+        - Use English to communicate.
+        - Search the [open issues](https://github.com/apache/apisix-ingress-controller/issues) to avoid duplicating the issue.
+
+  - type: textarea
+    id: description
+    attributes:
+      label: Description
+      description: Describe the feature you would like to see.
+      placeholder: |
+        As a user, I want to ..., so that...
+    validations:
+      required: true
diff --git a/.github/ISSUE_TEMPLATE/improve_docs.yml b/.github/ISSUE_TEMPLATE/improve_docs.yml
new file mode 100644
index 0000000..1252e5b
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/improve_docs.yml
@@ -0,0 +1,33 @@
+name: "Documentation Issue"
+description: Issues related to documentation.
+title: "docs: "
+labels: [doc]
+body:
+  - type: markdown
+    attributes:
+      value: |
+        _The more information you share, the faster we can help you._
+
+        Prior to opening the issue, please make sure that you:
+
+        - Use English to communicate.
+        - Search the [open issues](https://github.com/apache/apisix-ingress-controller/issues) to avoid duplicating the issue.
+
+  - type: textarea
+    id: current-state
+    attributes:
+      label: Current State
+      description: Describe the current state of the documentation.
+      placeholder: |
+        The documentation for the function in this page (url) is missing ...
+    validations:
+      required: true
+  - type: textarea
+    id: desired-state
+    attributes:
+      label: Desired State
+      description: Describe the desired state the documentation should be in.
+      placeholder: |
+        There should be line mentioning how the function behaves when ...
+    validations:
+      required: true
diff --git a/.github/ISSUE_TEMPLATE/performance_issue.yml b/.github/ISSUE_TEMPLATE/performance_issue.yml
new file mode 100644
index 0000000..9b6f0d2
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/performance_issue.yml
@@ -0,0 +1,53 @@
+name: "Performance issue"
+description: Report a performance issue.
+title: "perf: "
+body:
+  - type: markdown
+    attributes:
+      value: |
+        Thank you for taking the time to report this bug!
+
+        _The more information you share, the faster we can identify and fix the issue._
+
+        Prior to opening the issue, please make sure that you:
+
+        - Use English to communicate.
+        - Search the [open issues](https://github.com/apache/apisix-ingress-controller/issues) to avoid duplicating the issue.
+  - type: textarea
+    id: issue-faced
+    attributes:
+      label: Issue Faced
+      description: Describe the performance issue you are facing.
+      placeholder: |
+        When running APISIX Ingress in EKS, I'm experiencing high latency when I make requests to...
+    validations:
+      required: false
+  - type: textarea
+    id: logs
+    attributes:
+      label: Logs
+      description: Paste relevant logs if any. You can change the [log level](https://github.com/apache/apisix/blob/617c325628f33961be67f61f0fa8002afc370e42/docs/en/latest/FAQ.md#how-to-change-the-log-level) to get a verbose error log.
+    validations:
+      required: false
+  - type: textarea
+    id: steps
+    attributes:
+      label: Steps to Reproduce
+      description: Share the steps to reproduce this issue if you have identified it.
+      placeholder: |
+        1. Install APISIX Ingress controller 1.x with the Helm chart.
+        2. Create a Route with ApisixRoute resource.
+        3. ...
+    validations:
+      required: true
+  - type: textarea
+    id: environment
+    attributes:
+      label: Environment
+      description: Share your environment details. Reports without proper environment details will likely be closed.
+      value: |
+        - APISIX Ingress controller version (run `apisix-ingress-controller version --long`)
+        - Kubernetes cluster version (run `kubectl version`)
+        - OS version if running APISIX Ingress controller in a bare-metal environment (run `uname -a`)
+    validations:
+      required: true