-
-
Notifications
You must be signed in to change notification settings - Fork 10
Description
Welcome to NeoHaskell! Our issue tracking system helps keep things organized and ensures contributors can easily find tasks that match their skills and interests. We use a structured set of labels to provide clarity and make collaboration smoother. Here’s a friendly guide to how we label issues and how you can help!
How We Label Issues
We categorize issues using different types of labels. Each one serves a purpose:
- Effort: An estimate of how much time the issue might take.
- Priority: Some things are more important than others, but since this is open-source, there are no strict deadlines!
- State: Where the issue currently stands (e.g., pending, approved, or blocked).
- Type: What kind of issue is it? A bug? A new feature? Documentation?
- Package: Which part of NeoHaskell it relates to (CLI, core, IDE, syntax, etc.).
- Work Complexity (Cynefin Framework): Helps decide the best way to tackle the issue.
Understanding the Work Complexity Labels
These labels help us determine the best approach to solving an issue:
- work: obvious → A straightforward task. Just follow best practices!
- work: complicated → Needs some in-depth problem-solving but has a clear path.
- work: complex → The solution isn’t clear, so experimentation and iteration are required.
- work: chaotic → Something is broken! Fix it first, then refine.
- work: confused → We need more details before we can proceed.
How to Label a New Issue
-
Figure out what kind of issue it is
- Use type: labels like
bug,feature, ordocsto describe it.
- Use type: labels like
-
Estimate the effort required
- Apply an effort: label to give an idea of how long it might take.
-
Decide how urgent it is
- Since NeoHaskell is open-source, priority is more about impact than deadlines. Label as priority: important, soon, or urgent if needed.
-
Set the issue’s state
- If it's ready to be worked on, mark it as state: approved.
- If it’s waiting on something, use state: blocked, inactive, or pending.
-
Tag the relevant package
- Choose a package: label like
cli,core,ide, orsyntax.
- Choose a package: label like
-
Determine work complexity
- Use the work: labels to decide how we should approach the issue.
-
Add any extra labels
- good first issue: Great for newcomers!
- help wanted: Needs extra attention or community input.
Final Thoughts
NeoHaskell is a community-driven project, and labeling issues properly helps everyone. Whether you're looking for something to work on or trying to prioritize fixes. Happy coding! 🚀