Skip to content

AMS contribution-profile: wire eligibility filtering into discover #6798

Description

@JSONbored

Part of #6793. Depends on #6796 (extraction) and #6797 (cache) — this issue wires the finished profile into actual candidate selection.

Context

This is the issue that closes the loop: today discover ranks and enqueues candidates with zero eligibility awareness, exactly the gap that motivated this whole epic (#6793).

Requirements

  • loopover-miner discover <owner/repo> fetches (or reads the cached) ContributionProfile for the target repo and uses it to exclude or deprioritize candidates that fail the profile's eligibility rules (wrong/missing label, exclusion label present, excluded assignee) before ranking/enqueueing.
  • When the profile's confidence is low or empty (no discoverable signals at all — see AMS contribution-profile: implement generic label/docs/agent-file extraction #6796's requirement to degrade honestly rather than guess), discover must default to NOT filtering anything out — a low-confidence profile should never cause AMS to silently skip real, eligible work on a repo whose conventions it simply couldn't read. Filtering only activates when the profile has high enough confidence to trust.
  • Surface the applied profile (and any excluded candidates + why) in discover's output, so a human running it can see what AMS inferred and why a candidate was skipped.

Test Coverage Requirements

Regression tests for: a repo whose profile correctly excludes maintainer-only-equivalent issues, a repo with a low-confidence/empty profile where nothing gets filtered, and a repo where the profile's exclusion rules and inclusion rules both match the same issue (conflicting signals) — document and test whatever conservative resolution is chosen.

Deliverables

  • The discover integration and its test coverage.
  • A short doc update (packages/loopover-miner/README.md or docs/) explaining the new eligibility-aware behavior and its safe-default posture.

Expected Outcome

loopover-miner discover no longer surfaces candidates that a target repo's own gate/maintainer would reject, for any repo whose conventions AMS can confidently read — closing the exact gap found during #6205's live verification.

Metadata

Metadata

Assignees

No one assigned

    Labels

    gittensor:featureGittensor-scored feature linked to a feature issue — scores a 0.25x multiplier.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions