Skip to content

Fix contributor fallback limit when automated accounts are present #56

Description

@beanbean9339

During testing of the GitHub metadata importer with Imageomics/catalog, automated accounts appear to be counted toward the contributor fallback limit before being filtered out.

The importer reported:

"Excluded 3 automated account(s) from fallback authors."

However, the repository has additional human contributors that were not included. This suggests that the fallback limit may currently be applied to the raw GitHub contributor list before automated accounts are excluded.

Expected Behavior

The contributor fallback limit should apply to the number of eligible human contributors selected as fallback authors, rather than the number of raw GitHub contributor accounts encountered.

For example, if the fallback limit is 5 and some of the first contributors are automated accounts, the importer should continue evaluating contributors until it has found up to 5 eligible human contributors, subject to a reasonable maximum/safety limit.

Additional Observation

Testing with Imageomics/got-milk-monarchs also showed that Dylan was not picked up as a contributor. This may be expected because his GitHub profile does not appear to provide a usable display name. The desired behavior for contributors with incomplete profile information should be documented as part of this work.

Acceptance Criteria

  • Automated accounts do not consume the human contributor fallback limit.
  • The importer continues through contributor pagination as needed to find eligible human contributors.
  • Existing automated-account detection and filtering remain intact.
  • Existing contributor ordering and deduplication behavior remain unchanged.
  • Expected behavior for contributors without a usable GitHub display name is documented.
  • Add regression tests covering automated accounts appearing before eligible human contributors.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions