Summary
Add a "Fresh Egg" section to the Good Egg scoring output that flags accounts younger than 1 year. This is a simple informational warning -- it doesn't affect the trust score, just surfaces the data point for reviewers.
Background
Stage 20 analysis (experiments/bot_detection/stages/stage20_fresh_egg.py) found that:
- The v2
new_account_days = 30 threshold is too conservative -- almost no OSS contributors are that new
- Piecewise changepoint regression finds a merge-rate transition at ~3.9 years (median across 3 cutoffs)
- A 1-year threshold (near p2 of the age distribution) catches genuinely new accounts without over-flagging
- Accounts under 1 year have merge rates ~16pp lower than the population average
Account age doesn't improve merge prediction (#46 evidence), so it stays out of the scoring formula. But a young account is still a useful data point for human reviewers.
Behavior
- If account age >= 365 days (or unknown): no output at all -- don't add noise
- If account age < 365 days: add a "Fresh Account" section to the output with:
- Account age in days
- Account creation date
- A brief note that this is informational only
This applies to all output surfaces: GitHub Action check-run comment, CLI, JSON, and MCP.
Implementation
- Add
account_age_days and created_at to the TrustScore or UserProfile model (whichever is more appropriate) if not already present
- Add a
fresh_account section to the formatter output, gated on < 365 days
- The GitHub Action comment should include a small section like:
### Fresh Account
This account is **42 days old** (created 2026-01-25). This doesn't affect the trust score but may be relevant context for reviewers.
- No config needed -- 365 days is the threshold, period
Related
Summary
Add a "Fresh Egg" section to the Good Egg scoring output that flags accounts younger than 1 year. This is a simple informational warning -- it doesn't affect the trust score, just surfaces the data point for reviewers.
Background
Stage 20 analysis (
experiments/bot_detection/stages/stage20_fresh_egg.py) found that:new_account_days = 30threshold is too conservative -- almost no OSS contributors are that newAccount age doesn't improve merge prediction (#46 evidence), so it stays out of the scoring formula. But a young account is still a useful data point for human reviewers.
Behavior
This applies to all output surfaces: GitHub Action check-run comment, CLI, JSON, and MCP.
Implementation
account_age_daysandcreated_atto theTrustScoreorUserProfilemodel (whichever is more appropriate) if not already presentfresh_accountsection to the formatter output, gated on< 365 daysRelated
bot-detectionbranch (results)