Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Global owners
* @charlieroth

# Rust code
*.rs @charlieroth
Cargo.toml @charlieroth
Cargo.lock @charlieroth

# Database migrations
migrations/ @charlieroth

# Documentation
*.md @charlieroth
docs/ @charlieroth

# CI/CD
.github/ @charlieroth
Dockerfile @charlieroth
docker-compose.yml @charlieroth
Makefile @charlieroth
98 changes: 98 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
name: Bug Report
description: File a bug report to help us improve
title: "[BUG] "
labels: ["bug", "triage"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!

- type: textarea
id: what-happened
attributes:
label: What happened?
description: A clear and concise description of what the bug is.
placeholder: Tell us what you see!
validations:
required: true

- type: textarea
id: steps-to-reproduce
attributes:
label: Steps to Reproduce
description: Steps to reproduce the behavior
placeholder: |
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
validations:
required: true

- type: textarea
id: expected-behavior
attributes:
label: Expected Behavior
description: A clear and concise description of what you expected to happen.
validations:
required: true

- type: textarea
id: actual-behavior
attributes:
label: Actual Behavior
description: A clear and concise description of what actually happened.
validations:
required: true

- type: dropdown
id: severity
attributes:
label: Severity
description: How severe is this bug?
options:
- Critical (system unusable)
- High (major functionality broken)
- Medium (some functionality affected)
- Low (minor issue)
validations:
required: true

- type: textarea
id: environment
attributes:
label: Environment
description: |
Please provide relevant environment information
value: |
- OS: [e.g. macOS 14.0, Ubuntu 22.04]
- Rust version: [e.g. 1.75.0]
- Database: [e.g. PostgreSQL 15.4]
render: markdown
validations:
required: true

- type: textarea
id: logs
attributes:
label: Logs
description: Please copy and paste relevant log output. This will be automatically formatted into code.
render: shell

- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Add any other context about the problem here.

- type: checkboxes
id: terms
attributes:
label: Checklist
description: By submitting this issue, you agree to follow our Code of Conduct
options:
- label: I have searched existing issues to ensure this is not a duplicate
required: true
- label: I have provided all the required information
required: true
95 changes: 95 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
name: Feature Request
description: Suggest an idea or enhancement for Capsule
title: "[FEATURE] "
labels: ["enhancement", "triage"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to suggest a feature!

- type: textarea
id: problem
attributes:
label: Problem Statement
description: Is your feature request related to a problem? Please describe the problem you're trying to solve.
placeholder: I'm always frustrated when...
validations:
required: true

- type: textarea
id: solution
attributes:
label: Proposed Solution
description: Describe the solution you'd like to see implemented.
placeholder: I would like to see...
validations:
required: true

- type: textarea
id: alternatives
attributes:
label: Alternative Solutions
description: Describe any alternative solutions or features you've considered.
placeholder: Alternatively, we could...

- type: dropdown
id: priority
attributes:
label: Priority
description: How important is this feature to you?
options:
- Critical (blocking current work)
- High (would significantly improve workflow)
- Medium (nice to have)
- Low (minor improvement)
validations:
required: true

- type: dropdown
id: complexity
attributes:
label: Estimated Complexity
description: How complex do you think this feature would be to implement?
options:
- Simple (small change, few files affected)
- Medium (moderate change, multiple components)
- Complex (large change, significant architecture impact)
- Unknown

- type: textarea
id: use-cases
attributes:
label: Use Cases
description: Describe specific use cases where this feature would be helpful.
placeholder: |
1. When doing X, this feature would help by...
2. In scenario Y, this would solve...

- type: textarea
id: acceptance-criteria
attributes:
label: Acceptance Criteria
description: What would need to be true for this feature to be considered complete?
placeholder: |
- [ ] Feature does X
- [ ] Feature handles edge case Y
- [ ] Documentation is updated

- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Add any other context, screenshots, mockups, or examples about the feature request.

- type: checkboxes
id: terms
attributes:
label: Checklist
options:
- label: I have searched existing issues to ensure this is not a duplicate
required: true
- label: I have provided a clear problem statement and proposed solution
required: true
- label: This feature aligns with the project's goals and scope
required: true
128 changes: 128 additions & 0 deletions .github/ISSUE_TEMPLATE/task.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
name: Task
description: Create a task or work item
title: "[TASK] "
labels: ["task", "triage"]
body:
- type: markdown
attributes:
value: |
Use this template to create development tasks, maintenance work, or other project activities.

- type: textarea
id: description
attributes:
label: Task Description
description: Clearly describe what needs to be done.
placeholder: Describe the task that needs to be completed...
validations:
required: true

- type: textarea
id: why
attributes:
label: Why
description: Explain why this task is necessary or beneficial.
placeholder: This task is needed because...
validations:
required: true

- type: textarea
id: definition-of-done
attributes:
label: Definition of Done
description: What criteria must be met for this task to be considered complete?
placeholder: |
- [ ] Specific deliverable 1
- [ ] Specific deliverable 2
- [ ] Tests written/updated
- [ ] Documentation updated
validations:
required: true

- type: dropdown
id: type
attributes:
label: Task Type
description: What type of task is this?
options:
- Development (new feature/functionality)
- Refactoring (code improvement)
- Maintenance (updates, cleanup)
- Documentation (docs, README, etc.)
- Infrastructure (CI/CD, deployment)
- Testing (add/improve tests)
- Research (investigation, exploration)
validations:
required: true

- type: dropdown
id: priority
attributes:
label: Priority
description: How urgent is this task?
options:
- Critical (must be done immediately)
- High (should be done soon)
- Medium (normal priority)
- Low (can be done later)
validations:
required: true

- type: dropdown
id: effort
attributes:
label: Estimated Effort
description: How much work do you think this will require?
options:
- XS (< 1 hour)
- S (1-4 hours)
- M (4-8 hours)
- L (1-2 days)
- XL (2+ days)
- Unknown

- type: textarea
id: tasks
attributes:
label: Sub-tasks
description: Break down the work into smaller, actionable items.
placeholder: |
- [ ] Task 1
- [ ] Task 2
- [ ] Task 3

- type: textarea
id: dependencies
attributes:
label: Dependencies
description: Are there any other issues, PRs, or external dependencies that must be completed first?
placeholder: |
- Depends on #123
- Requires external library X to be updated

- type: textarea
id: acceptance-criteria
attributes:
label: Acceptance Criteria
description: Specific, testable conditions that must be satisfied.
placeholder: |
- Given [context], when [action], then [expected result]
- System should handle [scenario] correctly

- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Any other relevant information, links, or context.

- type: checkboxes
id: terms
attributes:
label: Checklist
options:
- label: I have provided a clear description and definition of done
required: true
- label: I have checked for similar existing tasks
required: true
- label: This task is appropriately scoped (not too large)
required: true
Loading
Loading