Documentation
¶
Overview ¶
Package profile extracts and classifies links and emails declared in a contributor's public profile (bio + blog field). Output decorates the contributor scorecard but never feeds the trust score directly: declared links are T4 confidence (the user said so), and only externally-verified matches (T1-T3) earn scoring weight in later phases.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AggregateRepos ¶
func AggregateRepos(repos []ghclient.Repo) *model.OwnedRepos
AggregateRepos turns a flat repo list into the OwnedRepos summary surfaced in enrichment. Forks and archived repos are excluded from every aggregate because they don't represent the contributor's own active work. Returns nil when no qualifying repos remain.
func Extract ¶
func Extract(bio, blog, profileEmail string) ([]model.LinkedAccount, []string)
Extract returns LinkedAccounts and emails declared in the contributor's bio, blog, and dedicated profile email fields. Caller is responsible for plan-tier filtering of the email list (Free tier omits, Starter+ retains).
The profileEmail argument is the GitHub profile's `email` field — the dedicated contact-email slot, distinct from any address that might also appear inside bio text. Production data showed that excluding this field missed almost every contributor's public email; including it here is the canonical fix.
Types ¶
This section is empty.