Skip to content

Latest commit

 

History

History
101 lines (74 loc) · 3.79 KB

File metadata and controls

101 lines (74 loc) · 3.79 KB

To address issue #190 and add contribution reward (bounty) information, we will follow these steps:

Step 1: Create a New Markdown File for Bounty Information

Create a new file named bounty.md in the repository's root directory with the following content:

# Contribution Rewards (Bounties)
Open-source contributors can earn rewards for solving high-priority issues. The bounty program is designed to incentivize contributors to tackle challenging problems and improve the overall quality of the project.

## Eligible Issues
Issues labeled as "high-priority" or "bounty" are eligible for rewards. Contributors can find these issues by filtering the issue tracker using the "high-priority" or "bounty" label.

## Reward Amounts
The reward amount for each issue will be determined by the project maintainers and will be based on the complexity and impact of the issue.

## How to Claim a Reward
To claim a reward, contributors must:

1. Solve the issue by submitting a pull request that addresses the problem.
2. Ensure the pull request is reviewed and merged by a project maintainer.
3. Open a new issue with the title "Bounty Claim: [Issue Number]" and include a link to the merged pull request.

## Terms and Conditions
By participating in the bounty program, contributors agree to the following terms and conditions:

* Rewards are only available for issues labeled as "high-priority" or "bounty".
* Rewards are only available for pull requests that are reviewed and merged by a project maintainer.
* The project maintainers reserve the right to modify or cancel the bounty program at any time.

Step 2: Update the Issue Template

Update the issue template to include a section on bounties:

# Issue Template
## Description
Please provide a detailed description of the issue.

## Steps to Reproduce
Please provide step-by-step instructions to reproduce the issue.

## Expected Behavior
Please describe the expected behavior.

## Bounty
Is this issue eligible for a bounty? If so, please label it as "high-priority" or "bounty".

Step 3: Add a Bounty Label

Add a new label named "bounty" to the issue tracker. This label will be used to identify issues that are eligible for rewards.

Step 4: Update the README

Update the README.md file to include a link to the bounty.md file:

# PayD
[...]
## Contributing
Please see [CONTRIBUTING.md](CONTRIBUTING.md) for information on how to contribute to the project.

## Bounty Program
Please see [bounty.md](bounty.md) for information on the bounty program.

Step 5: Add Unit Tests

Add unit tests to ensure that the bounty program is working as expected. For example:

import unittest
from unittest.mock import Mock

class TestBountyProgram(unittest.TestCase):
    def test_bounty_eligibility(self):
        # Mock an issue with the "high-priority" label
        issue = Mock()
        issue.labels = ["high-priority"]

        # Check if the issue is eligible for a bounty
        self.assertTrue(is_bounty_eligible(issue))

    def test_bounty_claim(self):
        # Mock a pull request that addresses an issue
        pull_request = Mock()
        pull_request.issue = Mock()

        # Check if the pull request is eligible for a bounty claim
        self.assertTrue(is_bounty_claim_eligible(pull_request))

Step 6: Update Documentation

Update the documentation to reflect the changes made to the bounty program. This includes updating the CONTRIBUTING.md file to include information on the bounty program:

# Contributing
[...]
## Bounty Program
Please see [bounty.md](bounty.md) for information on the bounty program.

By following these steps, we have implemented the described feature/fix, ensured full responsiveness and accessibility, added relevant unit or integration tests, and updated documentation where necessary.