Contributing
This page outlines how to submit bug reports, request features, and what to expect from our triage process.
How to File a Bug Report
If you encounter an issue or unexpected behaviour, you can report it in two ways:
- Via the Protector Mobile App: Use the "Report a bug" feature directly within the application. This is the easiest method and automatically formats a structured issue for our team.
- Via GitHub Issues: You can manually open an issue on our GitHub repository using the Bug Report Template. Please include as much detail as possible, including device information and steps to reproduce.
View the Bug Report Template
Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behaviour:
- Go to '...'
- Click on '...'
- Scroll down to '...'
- See error
Expected behaviour
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Protector Device Information
If the issue involves the Protector or the app, please fill out the information below.
- OS: [e.g., iOS]
- OS Version: [e.g., 26.3.1]
- Model: [e.g., iPhone 16 Pro]
- App Version: [e.g., 0.1.0]
Protectee Device Information
If the issue has to do with the Protectee, please fill out the information below.
- OS: [e.g., iOS]
- OS Version: [e.g., 26.3.1]
- Model: [e.g., iPhone 16 Pro]
- Carrier: [e.g., Telus]
Additional context
Add any other context about the problem here.
Note: All new bug reports are automatically tagged with the
needs-triagelabel to ensure they hit our review queue.
How to Suggest a Feature
We are always looking for ways to improve JERC Sentry's infrastructure and user experience. If you have an idea for a new feature or enhancement, submit your idea using our Feature Request Template.
View the Feature Request Template
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
Note: All feature requests are also tagged with the
needs-triagelabel for our team to review.
Our Triage SLA
We respect your time and effort in reporting issues. We aim to provide a safe and responsive environment for our contributors. Our Service Level Agreement (SLA) for handling external bug reports and suggestions is as follows:
- Initial Triage: Within 2 business days (48 hours) of the issue being opened. A maintainer will review the issue, ask for any needed clarification, and assign the appropriate labels (e.g.,
bug,enhancement,Severity: Critical). - Critical/High Severity Bugs: We aim to begin active investigation within 1 business day of successful triage.
- Pull Request Review: We aim to provide initial feedback on Pull Requests within 3 business days.
We will provide periodic status updates on long-running issues directly in the GitHub issue comments.
Community Guidelines & Documentation
To maintain a welcoming, effective, and organized environment, all external contributions are governed by our core community guidelines. Please familiarize yourself with the following documents:
Contributing Guidelines (CONTRIBUTING.md)
Our Contributing Guidelines outline the exact workflow for submitting code or documentation to JERC Sentry. It explains:
- The steps to fork the repository and branch from
main. - Our expectations for coding standards, testing, and documentation updates.
- The formal Pull Request process, including the requirement to use our Pull Request Template.
View the Pull Request Template
Summary
Include a concise summary of what this pull request is for. Make sure to mention any relevant motivation and context, if needed.
Key Changes
Include a list of the most important changes made in this PR (e.g., new dependencies added, main files or classes created, core logic changed, etc.).
- Key change A
- Key change B
Testing
Describe the tests that you ran to verify your changes. Provide instructions so we can reproduce.
- Test A
- Test B
closes #ISSUE
Code of Conduct (CODE_OF_CONDUCT.md)
We are committed to providing a harassment-free experience for everyone, regardless of background or identity. Our Code of Conduct, adapted from the Contributor Covenant, details:
- Our Standards: Examples of positive behaviour (empathy, constructive feedback) and unacceptable behaviour (harassment, derogatory comments).
- Enforcement: The specific steps community leaders will take in response to violations, ranging from a private Correction or Warning up to a Temporary or Permanent Ban for serious or sustained offenses.