Skip to content

Core team auto-detection from commit patterns #29

Description

@copyleftdev

Problem

Every report requires manually specifying core team members:
```python
is_core = author in ['sebmarkbage', 'eps1lon', 'josephsavona', ...] # React
is_core = author in ['tim-smart', 'IMax153', 'mikearnaldi', ...] # Effect-TS
is_core = author in ['charliermarsh', 'konstin', 'zanieb', ...] # uv
```

This is error-prone, requires research per repo, and breaks the "no manual input" promise.

Proposal

Auto-detect core team from commit patterns:

Algorithm:

  1. Compute author commit counts
  2. Apply Pareto detection: authors above the 80th percentile by commit count = "core"
  3. Refine with email domain clustering (same domain = same org)
  4. Refine with temporal consistency (active >50% of months = core)
  5. Bot detection via `[bot]` suffix or known bot patterns

Output a `core_team` field in governance analysis:
```json
{
"core_team": ["konstin", "zanieb", "charliermarsh"],
"bots": ["dependabot[bot]", "github-actions[bot]"],
"community": ["user1", "user2", ...],
"detection_method": "pareto_80pct + email_domain + temporal_consistency"
}
```

Confidence labels:

  • Definite: email domain matches (e.g., all @meta.com = Meta core)
  • Dominant: Pareto + temporal consistency
  • Heuristic: Pareto only

Evidence

Manually identified core teams for 3 repos. Email domains would have caught all 3.

Complexity

Medium. Extension to governance analysis. The email domain heuristic is powerful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions