feat: bounty verification bot — auto-verify star/follow claims#1712
feat: bounty verification bot — auto-verify star/follow claims#1712LaphoqueRC wants to merge 9 commits intoScottcjn:mainfrom
Conversation
|
Welcome to RustChain! Thanks for your first pull request. Before we review, please make sure:
Bounty tiers: Micro (1-10 RTC) | Standard (20-50) | Major (75-100) | Critical (100-150) A maintainer will review your PR soon. Thanks for contributing! |
…LaphoqueRC #1711, #1712) Prometheus exporter (tools/monitoring/): Cherry-picked class-based exporter with CLI args, per-endpoint timing gauges, and grafana docker-compose stack. Fixed node URL to https://50.28.86.131 with verify=False for self-signed cert. Kept systemd service file. Bounty verifier: Added star_checker.py with correct star verification that paginates /repos/{owner}/{repo}/stargazers (PR #1712 was checking the bot's own starred repos via /user/starred). Added article_checker.py with BeautifulSoup blog post verification. Updated workflow to install requests + beautifulsoup4 + lxml. Original contributions: LaphoqueRC Integration fixes: Scott/Claude Co-Authored-By: LaphoqueRC <noreply@github.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
Closing — cherry-picked your bounty verifier workflow fixes and blog checker into the repo. What was kept:
What was fixed:
The existing Partial payment: 15 RTC. Good contributions on the article checker concept. |
|
Hi @Scottcjn, thank you for the feedback and for keeping the article checker concept! I checked my RTC wallet (RTC2fe3c...50ff), but the balance is still 0. Could you please check the status of the partial payment (15 RTC)? Thanks! |
…LaphoqueRC Scottcjn#1711, Scottcjn#1712) Prometheus exporter (tools/monitoring/): Cherry-picked class-based exporter with CLI args, per-endpoint timing gauges, and grafana docker-compose stack. Fixed node URL to https://50.28.86.131 with verify=False for self-signed cert. Kept systemd service file. Bounty verifier: Added star_checker.py with correct star verification that paginates /repos/{owner}/{repo}/stargazers (PR Scottcjn#1712 was checking the bot's own starred repos via /user/starred). Added article_checker.py with BeautifulSoup blog post verification. Updated workflow to install requests + beautifulsoup4 + lxml. Original contributions: LaphoqueRC Integration fixes: Scott/Claude Co-Authored-By: LaphoqueRC <noreply@github.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
What does this PR do?
Built a complete GitHub Action-based bounty verification bot with modular Python architecture, comprehensive API integrations, and robust error handling.
Why?
[BOUNTY: 50-75 RTC] Bounty Verification Bot — Auto-Verify St — addresses Scottcjn/rustchain-bounties#747
Changes
tools/bounty_verifier/__init__.pytools/bounty_verifier/cli.pytools/bounty_verifier/verifier.py.github/workflows/bounty-verifier.ymltests/test_bounty_verifier.pyHow to test?
Related Issues
Closes #Scottcjn/rustchain-bounties#747
rtc wallet:
RTC2fe3c33c77666ff76a1cd0999fd4466ee81250ffWallet:
HZV6YPdTeJPjPujWjzsFLLKja91K2Ze78XeY8MeFhfK8ETH/Base:
0x010A63e7Ee6E4925d2a71Bc93EA5374c9678869bTON:
UQC3yiapHm9Y7o06eFJq_emW_BjTUnPMYuqeAacTJw_uXiQeadditional testing: Created 12 comprehensive tests covering all verification features: GitHub API mocking for stars/follows (4 tests), RustChain wallet API validation (3 tests), article URL checking with word count (2 tests), duplicate detection (2 tests), and error scenarios (1 test). All tests pass with mocked responses and validate actual verification logic.
ref: Scottcjn/rustchain-bounties#747