Skip to content
Open
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
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: Report a bug or unexpected behavior in unicity-node
title: "[Bug]: "
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
Thank you for taking the time to file a bug report. Please fill out all sections
to help us reproduce and fix the issue quickly.

**For security vulnerabilities, do NOT use this form.** See [SECURITY.md](../SECURITY.md).
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The relative link to SECURITY.md is incorrect. Since this file is located in .github/ISSUE_TEMPLATE/, it needs to go up two levels (../../) to reach the repository root where SECURITY.md resides.

        **For security vulnerabilities, do NOT use this form.** See [SECURITY.md](../../SECURITY.md).


- type: textarea
id: description
attributes:
label: Description
description: A clear and concise description of the bug.
placeholder: "When I do X, Y happens instead of Z."
validations:
required: true

- type: textarea
id: reproduction
attributes:
label: Steps to Reproduce
description: Exact steps to reproduce the behavior.
placeholder: |
1. Build with ...
2. Run with flags ...
3. Send P2P message ...
4. See error ...
validations:
required: true

- type: textarea
id: expected
attributes:
label: Expected Behavior
description: What did you expect to happen?
validations:
required: true

- type: textarea
id: actual
attributes:
label: Actual Behavior
description: What actually happened? Include any error messages or logs.
validations:
required: true

- type: input
id: commit
attributes:
label: Commit / Version
description: Git commit SHA or branch where the bug was observed.
placeholder: "e.g. a1b2c3d or main"
validations:
required: true

- type: dropdown
id: os
attributes:
label: Operating System
options:
- Ubuntu 22.04
- Ubuntu 20.04
- macOS 14 (Sonoma)
- macOS 13 (Ventura)
- Other Linux
- Other
validations:
required: true

- type: input
id: compiler
attributes:
label: Compiler & Version
placeholder: "e.g. clang-18, g++-11"
validations:
required: true

- type: textarea
id: logs
attributes:
label: Relevant Log Output
description: Paste any relevant log output here (node logs, sanitizer output, crash traces).
render: shell

- type: checkboxes
id: checklist
attributes:
label: Checklist
options:
- label: I have searched existing issues and this is not a duplicate
required: true
- label: This is not a security vulnerability (see SECURITY.md for those)
required: true
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Security Vulnerability
url: https://github.com/unicitynetwork/unicity-node/blob/main/SECURITY.md
about: Please report security vulnerabilities via the private disclosure process described in SECURITY.md
- name: General Discussion
url: https://github.com/unicitynetwork/unicity-node/discussions
about: For questions and general discussion about unicity-node
83 changes: 83 additions & 0 deletions .github/ISSUE_TEMPLATE/consensus_issue.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
name: Consensus Issue
description: Report a potential consensus bug, divergence, or rule violation
title: "[Consensus]: "
labels: ["consensus", "critical"]
body:
- type: markdown
attributes:
value: |
Consensus bugs are the most critical category of issues in a blockchain node.
Please provide as much detail as possible.

**If this could be exploited to attack the network, use the private disclosure
process in [SECURITY.md](../SECURITY.md) instead of this public form.**
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The relative link to SECURITY.md is incorrect. It should point to the root of the repository using ../../SECURITY.md.

        process in [SECURITY.md](../../SECURITY.md) instead of this public form.**


- type: textarea
id: description
attributes:
label: Description
description: Describe the consensus issue clearly.
validations:
required: true

- type: dropdown
id: category
attributes:
label: Category
options:
- Block validation rule violation
- Difficulty adjustment (ASERT) error
- Fork resolution / chain selection bug
- RandomX PoW verification error
- Timestamp validation issue
- Peer divergence (nodes disagree on chain tip)
- Other
validations:
required: true

- type: textarea
id: reproduction
attributes:
label: Steps to Reproduce
description: How can maintainers reproduce this issue?
placeholder: |
1. Build node at commit ...
2. Sync to block height ...
3. Submit block with headers ...
4. Node accepts/rejects incorrectly
validations:
required: true

- type: textarea
id: impact
attributes:
label: Impact
description: What is the potential impact? (e.g., chain split, double-spend, node crash)
validations:
required: true

- type: input
id: commit
attributes:
label: Affected Commit / Version
placeholder: "e.g. a1b2c3d or main"
validations:
required: true

- type: textarea
id: logs
attributes:
label: Relevant Logs / Chain Data
render: shell

- type: checkboxes
id: checklist
attributes:
label: Checklist
options:
- label: I have confirmed this is reproducible
required: true
- label: I have checked that this is not a known/documented behavior
required: true
- label: This issue does NOT require private disclosure (not exploitable)
required: true
66 changes: 66 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: Feature Request
description: Propose a new feature or improvement for unicity-node
title: "[Feature]: "
labels: ["enhancement"]
body:
- type: markdown
attributes:
value: |
Thanks for proposing an improvement! Please fill in as much detail as possible
so maintainers can evaluate the proposal efficiently.

- type: textarea
id: problem
attributes:
label: Problem / Motivation
description: What problem does this feature solve? What use case does it enable?
placeholder: "Currently, there is no way to ... which means ..."
validations:
required: true

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

- type: textarea
id: alternatives
attributes:
label: Alternatives Considered
description: Have you considered other approaches? Why is your proposed solution preferred?

- type: dropdown
id: area
attributes:
label: Area of the Codebase
options:
- Chain / Consensus
- P2P Networking
- RPC
- CI / Build System
- Documentation
- Testing
- Performance
- Security
- Other
validations:
required: true

- type: checkboxes
id: consensus
attributes:
label: Consensus Impact
options:
- label: This feature would change consensus rules (requires broader discussion)

- type: checkboxes
id: checklist
attributes:
label: Checklist
options:
- label: I have searched existing issues and this is not a duplicate
required: true
- label: I am willing to help implement this feature
51 changes: 51 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
## Summary

<!-- Describe what this PR does and why. Link to any relevant issues. -->

Fixes #<!-- issue number, if applicable -->

## Type of Change

<!-- Check all that apply -->

- [ ] Bug fix (non-breaking change that fixes an issue)
- [ ] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing behavior to change)
- [ ] CI / tooling improvement
- [ ] Documentation update
- [ ] Refactor (no functional change)
- [ ] Performance improvement

## Changes Made

<!-- List the key changes in this PR -->

-
-
-

## Testing

<!-- Describe the tests you ran and how to reproduce them -->

- [ ] Unit tests pass locally: `./build/bin/unicity_tests -d yes "~[real]" "~[rpc]" "~[slow]"`
- [ ] Functional tests pass locally: `cd test/functional && python3 test_runner.py`
- [ ] New tests added for new behavior (if applicable)
- [ ] Tested with AddressSanitizer: `cmake -DSANITIZER=address ...`

## Consensus Impact

<!-- Does this change affect consensus rules? -->

- [ ] This PR does NOT affect consensus rules
- [ ] This PR DOES affect consensus rules (requires two maintainer reviews)

If consensus-affecting, describe the change and any backward-compatibility considerations:

## Checklist

- [ ] Code follows the project style (`clang-format` applied)
- [ ] `clang-tidy` warnings addressed
- [ ] Self-reviewed the diff for unintended changes
- [ ] Updated relevant documentation (README, ARCHITECTURE.md, etc.)
- [ ] Commit messages follow Conventional Commits format
Loading