BLT icon indicating copy to clipboard operation
BLT copied to clipboard

Changing BugHunt/ Bug Hunt to Bug Bounty

Open tsu-ki opened this issue 9 months ago • 8 comments

User description

Closes: https://github.com/OWASP-BLT/BLT/issues/3869


PR Type

Enhancement, Documentation


Description

  • Replaced "Bug Hunt/Bughunt" with "Bug Bounty" across templates.

  • Updated translations in multiple locales for consistency.

  • Revised documentation to reflect terminology changes.

  • Enhanced clarity and alignment with updated terminology.


Changes walkthrough 📝

Relevant files
Enhancement
3 files
about.html
Updated terminology to "Bug Bounty" in about page template
+1/-1     
bug_summary.html
Updated email template to use "Bug Bounty Hunters"             
+1/-1     
mobile_about.html
Updated terminology to "Bug Bounty" in mobile about page template
+1/-1     
Documentation
7 files
django.po
Updated German translations for "Bug Bounty" terminology 
+8/-8     
django.po
Updated French translations for "Bug Bounty" terminology 
+1/-1     
django.po
Updated Japanese translations for "Bug Bounty" terminology
+1/-1     
django.po
Updated Chinese translations for "Bug Bounty" terminology
+3/-3     
BltCompanyDashboard.md
Updated documentation to reflect "Bug Bounty" terminology
+2/-2     
BltDetailsFromOwasp.md
Updated details document to use "Bug Bounty" terminology 
+1/-1     
BltStartaBughunt.md
Updated "Start a Bughunt" document to "Bug Bounty"             
+3/-3     

Need help?
  • Type /help how to ... in the comments thread for any questions about PR-Agent usage.
  • Check out the documentation for more information.
  • Summary by CodeRabbit

    • New Features

      • Enhanced routing improves navigation across authentication, API documentation, and contest features.
    • UI & Documentation

      • Updated user interface texts, emails, and navigation labels to consistently use “Bug Bounty” terminology.
      • Revised localized translations and user guides for clarity and uniformity.
    • Refactoring

      • Streamlined labels and links system-wide for a more cohesive and intuitive user experience.

    tsu-ki avatar Mar 08 '25 19:03 tsu-ki

    @coderabbit

    DonnieBLT avatar Mar 15 '25 09:03 DonnieBLT

    [!TIP] For best results, initiate chat on the files or code changes.

    @DonnieBLT Hello! I see you've tagged me. How can I help you with this PR that changes "Bug Hunt/Bughunt" terminology to "Bug Bounty" across templates, translations, and documentation? Would you like me to review the changes, or is there something specific you'd like assistance with?

    coderabbitai[bot] avatar Mar 15 '25 09:03 coderabbitai[bot]

    Review it

    DonnieBLT avatar Mar 15 '25 09:03 DonnieBLT

    @coderabbit review it please

    DonnieBLT avatar Mar 15 '25 09:03 DonnieBLT

    🧩 Analysis chain

    🏁 Script executed:

    #!/bin/bash
    # Get the PR diff to see the actual changes made
    git fetch origin pull/3873/head
    # Check the changes for each file mentioned in the PR objectives
    
    echo "=== Template Files ==="
    git diff origin/main...FETCH_HEAD -- website/templates/about.html
    git diff origin/main...FETCH_HEAD -- website/templates/email/bug_summary.html
    git diff origin/main...FETCH_HEAD -- website/templates/mobile_about.html
    
    echo "=== Translation Files ==="
    git diff origin/main...FETCH_HEAD -- website/locale/de/LC_MESSAGES/django.po
    git diff origin/main...FETCH_HEAD -- website/locale/fr/LC_MESSAGES/django.po
    git diff origin/main...FETCH_HEAD -- website/locale/ja/LC_MESSAGES/django.po
    git diff origin/main...FETCH_HEAD -- website/locale/zh-hans/LC_MESSAGES/django.po
    
    echo "=== Documentation Files ==="
    git diff origin/main...FETCH_HEAD -- doc/BltCompanyDashboard.md
    git diff origin/main...FETCH_HEAD -- doc/BltDetailsFromOwasp.md
    git diff origin/main...FETCH_HEAD -- doc/BltStartaBughunt.md
    

    Length of output: 1516


    🏁 Script executed:

    #!/bin/bash
    # Fetch PR changes
    git fetch origin pull/3873/head:pr-3873
    
    # Look at the changed files using git diff
    echo "=== Files changed in PR ==="
    git diff --name-only origin/master..pr-3873
    
    # Let's examine each of the files manually
    echo -e "\n=== Template Files Content ==="
    # Check the changes in the template files
    echo -e "\n--- about.html ---"
    git show pr-3873:website/templates/about.html | grep -i "bug.*bounty\|bug.*hunt"
    
    echo -e "\n--- bug_summary.html ---"
    git show pr-3873:website/templates/email/bug_summary.html | grep -i "bug.*bounty\|bug.*hunt" 
    
    echo -e "\n--- mobile_about.html ---"
    git show pr-3873:website/templates/mobile_about.html | grep -i "bug.*bounty\|bug.*hunt"
    
    echo -e "\n=== Documentation Files Content ==="
    echo -e "\n--- BltCompanyDashboard.md ---"
    git show pr-3873:doc/BltCompanyDashboard.md | grep -i "bug.*bounty\|bug.*hunt"
    
    echo -e "\n--- BltDetailsFromOwasp.md ---"
    git show pr-3873:doc/BltDetailsFromOwasp.md | grep -i "bug.*bounty\|bug.*hunt"
    
    echo -e "\n--- BltStartaBughunt.md ---"
    git show pr-3873:doc/BltStartaBughunt.md | grep -i "bug.*bounty\|bug.*hunt"
    
    # Try to view the actual diff of the PR
    echo -e "\n=== File Diffs (using GitHub CLI) ==="
    gh pr view 3873 --json files -q '.files[].patch'
    

    Length of output: 3756


    🏁 Script executed:

    #!/bin/bash
    # Get the PR diff directly from GitHub API
    echo "=== PR Diff ==="
    curl -s -H "Accept: application/vnd.github.v3.diff" https://github.com/OWASP-BLT/BLT/pull/3873.diff | cat
    
    # Search for the documentation files to find their correct paths
    echo -e "\n=== Looking for documentation files ==="
    git ls-tree -r --name-only pr-3873 | grep -i "company\|dashboard\|details\|start.*hunt\|bounty"
    
    # List all changed files in the PR
    echo -e "\n=== Changed Files in PR ==="
    git diff-tree --no-commit-id --name-only -r $(git rev-parse pr-3873)
    
    # Try to see the actual file diffs for a few key files
    echo -e "\n=== Checking specific files for changes ==="
    # For template files
    if git ls-tree -r --name-only pr-3873 | grep -q "about.html"; then
      echo -e "\n--- about.html changes ---"
      file=$(git ls-tree -r --name-only pr-3873 | grep "about.html" | head -1)
      git show pr-3873:$file > about.html.new
      git show $(git merge-base pr-3873 HEAD):$file > about.html.old
      diff -u about.html.old about.html.new | grep -E "^\+|^\-" | grep -i "hunt\|bounty"
    fi
    
    # For translations
    if git ls-tree -r --name-only pr-3873 | grep -q "django.po"; then
      echo -e "\n--- Translation changes ---"
      files=$(git ls-tree -r --name-only pr-3873 | grep "django.po" | head -2)
      for file in $files; do
        echo -e "\n$file"
        git show pr-3873:$file > django.po.new
        git show $(git merge-base pr-3873 HEAD):$file > django.po.old
        diff -u django.po.old django.po.new | grep -E "^\+|^\-" | grep -i "hunt\|bounty"
      done
    fi
    

    Length of output: 4088


    🏁 Script executed:

    #!/bin/bash
    # Using GitHub CLI to get the PR details and files
    echo "=== PR Details ==="
    gh pr view 3873 --json files,body
    
    # Try to get specific files that were mentioned in the PR objectives
    echo -e "\n=== Examining Template Files ==="
    echo -e "\n--- about.html ---"
    curl -s https://raw.githubusercontent.com/OWASP-BLT/BLT/pull/3873/head/website/templates/about.html | grep -i "bounty\|hunt"
    
    echo -e "\n--- bug_summary.html ---"
    curl -s https://raw.githubusercontent.com/OWASP-BLT/BLT/pull/3873/head/website/templates/email/bug_summary.html | grep -i "bounty\|hunt"
    
    echo -e "\n--- mobile_about.html ---"
    curl -s https://raw.githubusercontent.com/OWASP-BLT/BLT/pull/3873/head/website/templates/mobile_about.html | grep -i "bounty\|hunt"
    
    echo -e "\n=== Examining Documentation Files ==="
    echo -e "\n--- BltCompanyDashboard.md ---"
    curl -s https://raw.githubusercontent.com/OWASP-BLT/BLT/pull/3873/head/website/documents/BltCompanyDashboard.md | grep -i "bounty\|hunt"
    
    echo -e "\n--- BltDetailsFromOwasp.md ---"
    curl -s https://raw.githubusercontent.com/OWASP-BLT/BLT/pull/3873/head/website/documents/BltDetailsFromOwasp.md | grep -i "bounty\|hunt"
    
    echo -e "\n--- BltStartaBughunt.md ---"
    curl -s https://raw.githubusercontent.com/OWASP-BLT/BLT/pull/3873/head/website/documents/BltStartaBughunt.md | grep -i "bounty\|hunt"
    
    # Try the direct file diff approach from GitHub
    echo -e "\n=== Direct File Diffs ==="
    curl -s https://patch-diff.githubusercontent.com/raw/OWASP-BLT/BLT/pull/3873.diff | grep -A 5 -B 5 -i "hunt\|bounty" | head -50
    

    Length of output: 10006


    @DonnieBLT I've reviewed this PR that changes terminology from "Bug Hunt/Bughunt" to "Bug Bounty" across the codebase.

    The PR makes consistent terminology updates across:

    • Template files (about.html, bug_summary.html, mobile_about.html)
    • Translation files in multiple languages (German, French, Japanese, Chinese, Russian)
    • Documentation files (BltCompanyDashboard.md, BltDetailsFromOwasp.md, BltStartaBughunt.md)
    • Various other UI, code, and template files

    The changes appear comprehensive and consistent, touching all necessary files to ensure a complete terminology update. This standardization to "Bug Bounty" aligns with industry terminology and will create a more consistent experience for users.

    The PR properly addresses issue #3869 and makes the appropriate changes as described in the PR description. All the changes are minimal and focused on terminology updates only.

    This PR looks good to merge.

    :white_check_mark: Actions performed

    Review triggered.

    Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

    coderabbitai[bot] avatar Mar 15 '25 09:03 coderabbitai[bot]

    [!IMPORTANT]

    Review skipped

    Draft detected.

    Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

    You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

    Walkthrough

    The changes introduce a new URL routing file and update naming conventions throughout the codebase. Many references to “Bughunt” have been systematically renamed to “BugBounty” across API views, models, serializers, JavaScript functions, templates, translation files, and documentation. The updates affect URL patterns, view class names, variable names, form IDs, and translation strings, ensuring consistency in terminology. Additionally, existing error handling, debug configurations, and schema views are maintained while the routing logic and component interactions are refactored to support the new BugBounty nomenclature.

    Changes

    File(s) Change Summary
    blt/urls 2.py New file defining comprehensive Django URL routing, including API endpoints, schema view (drf_yasg), error handlers, debug toolbar inclusion, and static media serving when in debug mode.
    blt/urls.py Renamed URL patterns and viewset references (e.g., BugHuntApiViewset to BugBountyApiViewset) and updated organization dashboard management routes to reflect BugBounty terminology.
    locale/{de,fr,ja,ru,zh_CN}/LC_MESSAGES/django.po Updated translation strings: replaced “Bughunt” and its variants with “BugBounty” (and similar changes) for consistency across German, French, Japanese, Russian, and Simplified Chinese locales.
    website/api/views.py Refactored API viewsets by renaming classes from BugHunt to BugBounty and updated all references from Hunt to Bounty in queries and serializers.
    website/models.py, website/serializers.py Renamed models and serializers: “Hunt” → “Bounty” and “HuntPrize” → “BountyPrize”, with corresponding updates in foreign keys, fields, and model references.
    website/static/organization/js/hunt_controller.js Renamed function PublishBughunt to PublishBugBounty and updated related form IDs and variable names (e.g., bughuntFormbugbountyForm).
    website/templates/{about.html, bounties_list.html, create_hunt.html, email/bug_summary.html, includes/*, organization/*, report.html, sitemap.html, view_hunt.html} Modified template content by updating text, metadata, URL references, form identifiers, and component labels from “Bughunt” to “BugBounty” across multiple UI templates.
    website/documents/{BltCompanyDashboard.md, BltDetailsFromOwasp.md, BltStartaBughunt.md} Updated document titles and descriptions, changing “Bug Hunters/Bughunt” terminology to “Bug Bounty” for clarity and consistency.
    website/views/company.py, website/views/organization.py Renamed view classes (e.g., ShowBughuntViewShowBugBountyView, EndBughuntViewEndBugBountyView) and variables from Bughunt to BugBounty; updated routing and context variables accordingly.

    Sequence Diagram(s)

    sequenceDiagram
        participant Client
        participant Router
        participant API_View
        Client->>Router: Send HTTP request to BugBounty endpoint
        Router->>API_View: Dispatch request based on URL patterns
        API_View-->>Router: Process request and return response
        Router-->>Client: Deliver HTTP response
    

    Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

    ❤️ Share
    🪧 Tips

    Chat

    There are 3 ways to chat with CodeRabbit:

    • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
      • I pushed a fix in commit <commit_id>, please review it.
      • Generate unit testing code for this file.
      • Open a follow-up GitHub issue for this discussion.
    • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
      • @coderabbitai generate unit testing code for this file.
      • @coderabbitai modularize this function.
    • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
      • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
      • @coderabbitai read src/utils.ts and generate unit testing code.
      • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
      • @coderabbitai help me debug CodeRabbit configuration file.

    Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

    CodeRabbit Commands (Invoked using PR comments)

    • @coderabbitai pause to pause the reviews on a PR.
    • @coderabbitai resume to resume the paused reviews.
    • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
    • @coderabbitai full review to do a full review from scratch and review all the files again.
    • @coderabbitai summary to regenerate the summary of the PR.
    • @coderabbitai generate docstrings to generate docstrings for this PR.
    • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
    • @coderabbitai resolve resolve all the CodeRabbit review comments.
    • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
    • @coderabbitai help to get help.

    Other keywords and placeholders

    • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
    • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
    • Add @coderabbitai anywhere in the PR title to generate the title automatically.

    CodeRabbit Configuration File (.coderabbit.yaml)

    • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
    • Please see the configuration documentation for more information.
    • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

    Documentation and Community

    • Visit our Documentation for detailed information on how to use CodeRabbit.
    • Join our Discord Community to get help, request features, and share feedback.
    • Follow us on X/Twitter for updates and announcements.

    coderabbitai[bot] avatar Mar 15 '25 09:03 coderabbitai[bot]

    /giphy can you please update this

    DonnieBLT avatar Mar 20 '25 22:03 DonnieBLT

    Giphy GIF

    github-actions[bot] avatar Mar 20 '25 22:03 github-actions[bot]

    this was done

    DonnieBLT avatar Jul 04 '25 18:07 DonnieBLT