SG-Tree / Github Social Proof
sg-tree.eu / guides / starscout-bot-detection
2026-10-16 · 5 min read
undefined docs/starscout-bot-detection.md ANTI-ABUSE

StarScout heuristics and anti-purge architecture

Buying $8-per-thousand stars from a generic social media panel destroys repository credibility. Within 72 hours, GitHub's automated abuse jobs purge the accounts, leaving a cliff-edge drop on your public star-history.com chart that every technical founder and investor can inspect in five seconds.

1. Inside CMU and Socket's StarScout detection algorithm (arXiv:2412.13459)

In December 2024, researchers from Carnegie Mellon University and Socket published StarScout (arXiv:2412.13459), an open-source graph analyzer scanning GH Archive across five years of public GitHub events. StarScout flagged over 4.5 million anomalous stars across 15,800+ repositories by isolating two structural signatures that cheap panels cannot hide:

Signature A: The low-activity actor cluster

Bulk SMM panels create disposable accounts in automated batches. These profiles have zero public repositories, zero commit history (PushEvent), zero IssueCommentEvent records, and an account creation date within days of their first star action. StarScout classifies any actor with ≤ 1 lifetime non-star event in a given month as a low-activity node. When more than 30% of a repository's stargazers match this profile, the repository is flagged directly.

Signature B: Lockstep bipartite graph clustering

Standard SMM panels run on PHP cron scripts (action=add with fixed runs and interval parameters). When 50 orders sit in the same panel queue, the panel's worker pool iterates through the same 500 bot tokens sequentially. In GH Archive, this forms a dense biclique in the (Actors × Repositories) bipartite graph within a narrow time window Δt. Even if a panel enables basic drip-feed, dividing 500 stars / 14 days via Math.floor(500 / 14) emits exactly 35 stars at the same minute every day, losing 10 fractional stars to integer truncation while broadcasting a periodic clock signal.

2. Architectural comparison: generic SMM panel vs. SG-Tree

Telemetry vector Generic SMM panel ($8-$15 / 1k) SG-Tree calibrated dispatch
Account cohort age Fresh registrations (< 30 days, 0 repos) Aged 2018-2023 developer profiles (1yr+ / 2yr+ / 3yr+ Senior)
Temporal pacing Instant dump or fixed Math.floor cron interval Gaussian / stealth / front-load curves + Hamilton integerApportion
Secondary signals 0 forks, 0 watchers (100% star anomaly) Enforced 10:1 fork equilibrium (5%-20% forks, 4%-8% watchers)
Drift and drop recovery Manual support ticket; high 72h purge rate Hourly automated api.github.com reconciliation (30d SLA)

3. How SG-Tree eliminates both detection signatures

  • Aged 2018-2023 developer identities (1yr+, 2yr+, 3yr+ Senior): We do not use fresh registration farms. Our 3yr+ Senior (1.45x) tier routes exclusively through aged profiles registered between 2018 and 2023 that hold public repositories, historical commit graphs, and non-overlapping star histories.
  • Exact Hamilton apportionment (integerApportion) and non-homogeneous jitter: Rather than truncating quotas with Math.floor, our scheduler calculates exact floating-point curve weights (gaussian, frontload, stealth, linear) and distributes the integer remainder across peak days so the sum equals 100% of your ordered stars, forks, and watchers.
  • Hourly automated drift reconciliation: Our Cloudflare Worker cron job (0 * * * *) runs runAutomatedSlaReconcile against api.github.com/repos/{owner}/{repo}. If live stargazers_count drifts below baseline_stars + delivered_stars by ≥ 3 units during the 30-day SLA window, a compensatory refill batch is triggered automatically.
Ready to calibrate your repository counter bar?
Pilot $15 (+50★) · Viable $123 (+250★) · Trending $232 (+500★) · Launch Sprint $462
Audit & Configure
Related engineering playbooks
VELOCITY MATH 4 min read
GitHub Trending and Trendshift velocity formula
Why lifetime star counts do not trigger github.com/trending, empirical 24h star deltas by language, and how 14-day Gaussian bell curves clear daily nomination floors.
LAUNCH PLAYBOOK 4 min read
Solving the open-source cold-start problem
Why 94% of developers bounce from repositories under 100 stars in four seconds, and how to combine counter calibration with AST-grounded technical issues before launch day.
Help & Engineering FAQ
Desktop interface recommended

SG-Tree interface best calibrated for desktop experience, whilst still usable through phone