Pulse
2026-09-18-v3.0

06Measurement contract

A narrow signal, measured reproducibly.

qmmit measures literal coding-agent signatures in Git metadata. It does not infer who wrote code from style, and it does not estimate all AI assistance.

Dataset
2026-09-18-v3.0
Ruleset
b2e8889c66f7
Scanned
2026-09-16
Window
February–September 15, 2026

Operational definition

Considered commits are commits in the fixed calendar window after merge commits and routine CI or dependency bots are removed. The primary ratio is unique agent-attributed commits divided by considered commits.

agent-share floor = agent-attributed commits / considered commits

Because squash merges, rebases, and manual commits can remove or omit signatures, the result is a lower bound—not an estimate of AI-written code.

Detector validation

The S1 study independently labelled a stratified blind sample of 600 commits and adjudicated 19 disagreements. The publication gate required precision of at least 97%.

Precision
99.45%
Wilson 95% interval
97.77%–99.86%
Weighted recall
72.86%
Raw agreement
96.83%
Cohen’s kappa
0.938
Gate
pass

Rules and safeguards

The versioned detector matches supported self-declarations in author identities, commit trailers, and agent-specific metadata. Validation explicitly checks documentation examples, reverts quoting an earlier message, and repositories with signature-bearing templates. Generic prose or code style is never classified.

The full ruleset is identified by sha256:b2e8889c66f72c18a61839f0bf1a9f77b5481ba2def044dba33c797b2f2bdcae. A result without that hash and its measurement window is not comparison-compatible.

Interpretation limits

  1. Zero means no supported signature was observed; it does not mean no AI was used.
  2. Commits are units of history, not lines of code, effort, quality, or productivity.
  3. The stars-ranked sample is descriptive of this corpus, not representative of all software.
  4. Low-activity observations below 100 considered commits remain downloadable but are excluded from rankings.
  5. Cross-ecosystem differences are descriptive and must not be interpreted causally.

Corrections and privacy

Repository identities, redirects, default branches, and resolved HEAD SHAs are published so data-quality reports can be checked. Corrections are documented rather than silently overwritten. Read the tagged correction log ↗.

Contributor identities are used only to compute aggregate concentration. Names and email addresses are not exported, and qmmit must not be used to rank, surveil, or evaluate individual developers.

On-demand scan lifecycle

An unknown repository never receives an ambiguous indefinite spinner. Worker responses map to explicit states, and only temporary failures offer a retry action.

queuedQueuedThe scan is waiting for an isolated worker.
resolvingResolving repositoryChecking the canonical repository, default branch, and HEAD.
scanningScanning commit metadataApplying the versioned signature rules to the requested window.
finalizingFinalizing observationValidating counts and attaching provenance before publication.
readyObservation readyThe result is compatible with the current release contract.
staleStale observationA prior result is available while a compatible refresh is pending.
failed_retryableTemporary scan failureThe worker can retry without changing the repository request.
failed_terminalScan cannot continueThe repository or request must change before another attempt.