Skip to content

[BUG] Transferred issues bypass anti-gaming credibility penalty in issue discovery scoring layer(score.py) #404

@corevibe555

Description

@corevibe555

Description

The issue discovery scoring pipeline does not honor the is_transferred flag on Issue objects.
any issue that has been transferred at any point must be treated as closed/failed — awarded 0 discovery score and counted against the discoverer's issue_credibility. The spec explicitly calls this out as an anti-gaming measure to prevent miners from transferring closed issues to burner repos to dodge credibility hits.

Steps to Reproduce

  1. Register as a miner and link a valid GitHub identity.
  2. File an issue on a tracked repository that gets linked to a merged PR (via fixes #N), so is_solved == True in the scoring pipeline.
  3. Set issue.is_transferred = True on the resulting Issue record (simulating the state after a TransferredEvent, which a later repo-scan upgrade will populate from GitHub's timeline API).
  4. Run score_discovered_issues(...) over the miner evaluations.
  5. Inspect the resulting MinerEvaluation: total_solved_issues, issue_credibility, and issue_discovery_score.

Expected Behavior

Per spec :

  • discovery_earned_score == 0 for the transferred issue.
  • The issue contributes to total_closed_issues (negative credibility), not total_solved_issues.
  • issue_credibility reflects the failed outcome.

Actual Behavior

scoring layer(scoring.py) has zero explicit transfer handling.

Environment

  • OS: Linux

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions