diff --git a/.github/ISSUE_TEMPLATE/BUG-REPORT.yml b/.github/ISSUE_TEMPLATE/BUG-REPORT.yml
new file mode 100644
index 0000000..802dfd1
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/BUG-REPORT.yml
@@ -0,0 +1,67 @@
+name: "๐ Bug Report"
+description: Create a new ticket for a bug in the MetaCall Test Center.
+title: "๐ [BUG] -
"
+labels: ["bug"]
+body:
+ - type: textarea
+ id: description
+ attributes:
+ label: "Description"
+ description: Provide a clear and detailed description of the issue you encountered.
+ placeholder: Briefly describe the issue...
+ validations:
+ required: true
+ - type: textarea
+ id: reprod
+ attributes:
+ label: "Reproduction Steps"
+ description: Provide a step-by-step description to reproduce the issue.
+ value: |
+ 1. Clone the repository: `git clone `
+ 2. Navigate to the project directory: `cd `
+ 3. Run the following command: `python3 ./testing.py -f -V -e `
+ 4. Observe the error.
+ render: bash
+ validations:
+ required: true
+ - type: textarea
+ id: screenshot
+ attributes:
+ label: "Screenshots"
+ description: Attach screenshots that help illustrate the problem, if applicable.
+ value: |
+ ![DESCRIPTION](LINK.png)
+ render: bash
+ validations:
+ required: false
+ - type: textarea
+ id: logs
+ attributes:
+ label: "Logs"
+ description: Paste any relevant log output here. The logs will be automatically formatted as code.
+ render: bash
+ validations:
+ required: false
+ - type: dropdown
+ id: environments
+ attributes:
+ label: "Environments"
+ description: Which environments are impacted by the issue?
+ multiple: true
+ options:
+ - FaaS
+ - CLI
+ validations:
+ required: true
+ - type: dropdown
+ id: os
+ attributes:
+ label: "Operating Systems"
+ description: Which operating systems are affected by the issue?
+ multiple: true
+ options:
+ - Windows
+ - Linux
+ - macOS
+ validations:
+ required: true
diff --git a/.github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml b/.github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml
new file mode 100644
index 0000000..c391d64
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml
@@ -0,0 +1,85 @@
+name: "๐ก Feature Request"
+description: Suggest a new feature or enhancement for the MetaCall Test Center.
+title: "๐ก [REQUEST] - "
+labels: ["enhancement", "discussion"]
+body:
+ - type: textarea
+ id: summary
+ attributes:
+ label: "Summary"
+ description: Provide a brief overview of the proposed feature or enhancement.
+ placeholder: Describe your feature request in a few lines...
+ validations:
+ required: true
+ - type: textarea
+ id: motivation
+ attributes:
+ label: "Motivation"
+ description: Explain the problem that this feature would solve and why it is important.
+ placeholder: Describe the problem your feature request will address...
+ validations:
+ required: true
+ - type: textarea
+ id: proposed_solution
+ attributes:
+ label: "Proposed Solution"
+ description: Describe how you propose to implement this feature.
+ placeholder: Outline your solution in detail...
+ validations:
+ required: true
+ - type: textarea
+ id: basic_example
+ attributes:
+ label: "Basic Example"
+ description: Provide a basic example or use case that demonstrates how the feature would work.
+ placeholder: Provide code snippets or examples...
+ validations:
+ required: true
+ - type: textarea
+ id: drawbacks
+ attributes:
+ label: "Drawbacks"
+ description: What are the potential drawbacks or challenges associated with this feature?
+ placeholder: Identify possible negative impacts or challenges...
+ validations:
+ required: true
+ - type: textarea
+ id: unresolved_questions
+ attributes:
+ label: "Unresolved Questions"
+ description: List any unresolved questions or concerns related to this feature.
+ placeholder: Mention any uncertainties or areas needing further discussion...
+ validations:
+ required: false
+ - type: textarea
+ id: alternatives
+ attributes:
+ label: "Alternatives Considered"
+ description: Describe any alternative approaches or solutions you considered.
+ placeholder: Discuss other ways this problem could be addressed...
+ validations:
+ required: false
+ - type: input
+ id: start_date
+ attributes:
+ label: "Proposed Start Date"
+ description: When do you plan to start working on this feature?
+ placeholder: "MM/DD/YYYY"
+ validations:
+ required: false
+ - type: textarea
+ id: reference_issues
+ attributes:
+ label: "Related Issues"
+ description: List any related issues or discussions.
+ placeholder: Reference existing issues or discussions (#Issue IDs)...
+ validations:
+ required: false
+ - type: textarea
+ id: implementation_pr
+ attributes:
+ label: "Implementation PR"
+ description: Link to the pull request where this feature is being implemented, if applicable.
+ placeholder: "#Pull Request ID"
+ validations:
+ required: false
diff --git a/.github/ISSUE_TEMPLATE/TEST_CASE_SUBMISSION.yml b/.github/ISSUE_TEMPLATE/TEST_CASE_SUBMISSION.yml
new file mode 100644
index 0000000..48edaa3
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/TEST_CASE_SUBMISSION.yml
@@ -0,0 +1,58 @@
+name: "๐งช New Test Case Submission"
+description: Use this template to submit a new test case for a project.
+title: "๐งช [TEST] - "
+labels: ["test", "enhancement"]
+body:
+ - type: input
+ id: project_name
+ attributes:
+ label: "Project Name"
+ description: "Enter the name of the project for which the test case is being submitted."
+ placeholder: "e.g., time-app-web"
+ validations:
+ required: true
+
+ - type: input
+ id: project_url
+ attributes:
+ label: "Project Repository URL"
+ description: "Provide the URL of the repository where the project is hosted."
+ placeholder: "https://github.com/USERNAME/REPO-NAME"
+ validations:
+ required: true
+
+ - type: textarea
+ id: description
+ attributes:
+ label: "Description"
+ description: "Provide a brief description of the test case, including what it aims to validate."
+ placeholder: "Short and explicit description of your test case..."
+ validations:
+ required: true
+
+ - type: textarea
+ id: test_cases
+ attributes:
+ label: "Test Cases"
+ description: |
+ Provide the test cases in the correct format as shown below. You can add multiple test cases by following the same structure.
+ placeholder: |
+ ```yaml
+ code-files:
+ - path:
+ test-cases:
+ - name:
+ function-call:
+ expected-pattern: ''
+ ```
+ validations:
+ required: true
+
+ - type: textarea
+ id: additional_notes
+ attributes:
+ label: "Additional Notes"
+ description: "Include any additional information or context that might be useful for reviewing or understanding the test case."
+ placeholder: "Any additional information or context..."
+ validations:
+ required: false