If you are participating in community Node testing, you may run into a situation where you see a bug, but you aren't quite sure. This page will try to help clarify if you are seeing a real issue or not.
Guidelines:
If you are expecting the software to do something in a particular way and it doesn't - you should file an issue and let us know how the software failed to meet your expectations. These are referred to a 'usability issues'. These are a great form of feedback for the development team. Their value should not be underestimated.
This page will strive to outline what a bug looks like, and where you should file it.
What to include in the ticket:
- Summary = Brief statement of what the issue is. Ex: 'Can't connect to network'
- Project = CORE
- Type = BUG
- Priority:
- Highest → Blocks use of a feature
- High → Feature very hard to use, difficult workaround
- Medium → Feature hard to use, moderate workaround
- Low → Feature is unpleasant to use, no workaround
- Lowest → Feedback, no fix required.
- Description:
- Symptom of the problem with a bit more detail
- What you expected to happen
- Steps to reproduce. Include as much information as possible. Such as:
- System information (OS, hardware)
- Network information (router config if you know it, router type, number of routers, etc..)
- What you did. Step by Step
- What happened as you did each step
- Any logs from the system (you can ask where the logs are on the system)
Communications:
Here is a list of possible symptoms that are Communications issues
- My node tells me it is connected, but I don't see any of the effects of being connected to the network.
- I don't receive blocks that have been proposed by other nodes
- My list of peers isn't growing.
- The server console isn't showing anything.
- My node tells me it can't find the bootstrap node and exits
Consensus:
Here's some things that could go wrong:
- My node gets the same block over and over again
- The block in the fork choice rule doesn't match the latest block proposed in a small group of nodes
- Unable to call a name that has been deployed to a block or reference a contract on the blockchain.