Prove · AI share

AI share

What share of merged work AI authored, with every slice labeled by its evidence tier. Each merged PR counts under exactly one tier, the strongest evidence available: attested, then co-authored, then classified, with an explicit unattributed remainder. There is no inference tier: a number RepoOps cannot evidence stays unattributed.

Where to find it

  • Localhost: /ai-share.html?repo=<id> - the AI share sub-tab of the Accountability ledger (sidebar: Prove → Accountability ledger → AI share)
  • API: GET /api/ai-share (optional repo, windowDays 1 to 365, periodDays 1 to 90)
  • Hosted: the “AI share of merged work” card on the team Leadership page, and the org rollup on the org Leadership page
  • Keyboard: K then ai share

The four evidence tiers

Attested: a signed authorship attestation.The strongest tier. A signed attestation on the merged PR carries a graded origin; the signed record decides whether the slice counts as AI or human. An attestation that asserts nothing falls through to the lower tiers instead of guessing.
Co-authored: a vendor trailer or a bot author.A vendor co-authorship trailer on the merge commit (GitHub Copilot, Devin, Claude Code, Cursor, Windsurf, Codegen, CodeRabbit, Bugbot), or a merge commit whose author identity is itself an AI vendor. A bot-authored PR with no trailer and no session still attributes, from the author identity alone.
Classified: calibrated origin classification.The same calibrated origin classifier the Autonomous PRs metric uses, over the PR's linked sessions. No second classifier. Only confident bands decide a bucket; mixed or low-confidence PRs land in unattributed.
Unattributed: the explicit honest remainder.No attestation, no trailer, no confident classification. This bucket is visible on every chart, never hidden, so the AI-share percentage is always read next to what could not be evidenced.

The honesty rules

  • Slices always sum to exactly 100. The unattributed slice takes the exact remainder after rounding, so the stack can never read 99.9 or 100.1.
  • Honest empty. A window with no merged PRs reads n/a, never a fabricated 0%. An install with no attestations still renders the lower tiers honestly.
  • Per-developer and per-period. The window (30, 90, or 180 days) folds into period buckets and a by-developer table, each slice keeping its tier label.

The hosted leadership card

The desktop publishes a distilled, redacted snapshot to your team's hosted rollup: count and percentage folds only, developer keys hashed, no PR titles, tools, names, or per-PR rows. Team and org cards recompute percentages from summed counts, so the sum-to-100 rule holds at every altitude. Until a snapshot arrives the card shows an honest empty state.

Read more