Driftproof

Report #001 — do skill verdicts hold across a model release?

v1.1 (2026-07-28) — this edition supersedes v1.0 after a pre-launch QA pass. A 0.05 effect floor was added and two artifact-contaminated receipts were re-run; see Amendments.

Model pair: claude-sonnet-5 (released 2026-06-30) vs claude-sonnet-4-6 (released 2026-02-17)
Judge: claude-haiku-4-5, 5 samples/case (surface-controlled) · Surface: claude-cli · Skills: 10

9 of 10 skills moved beyond noise on this model pair.

3 regressed · 3 improved · 3 mixed · 1 within noise — across 9 case regression(s) and 7 case improvement(s). A verdict is claimed only when BOTH (1) two with_skill bands (mean ± stddev over judge samples) do not overlap AND (2) the mean moves at least the 0.05 effect floor; bands that overlap, or separate by less than the floor, are reported as within noise, never as drift.

Per-skill summary

skillsourcewith_skill (old → new)baseline (old → new)verdict
code-review-and-quality addyosmani · MIT 0.869 ± 0.025 → 0.854 ± 0.031 0.824 → 0.836 WITHIN NOISE
git-workflow-and-versioning addyosmani · MIT 0.864 ± 0.015 → 0.860 ± 0.028 0.794 → 0.703 REGRESSED (1)
documentation-and-adrs addyosmani · MIT 0.825 ± 0.100 → 0.706 ± 0.297 0.809 → 0.720 MIXED
commit-work Softaworks · MIT 0.843 ± 0.054 → 0.853 ± 0.019 0.697 → 0.643 IMPROVED (1)
writing-clearly-and-concisely Softaworks · MIT 0.864 ± 0.016 → 0.841 ± 0.064 0.839 → 0.813 REGRESSED (1)
crafting-effective-readmes Softaworks · MIT 0.870 ± 0.015 → 0.804 ± 0.192 0.849 → 0.811 REGRESSED (2)
naming-analyzer Softaworks · MIT 0.817 ± 0.077 → 0.839 ± 0.026 0.703 → 0.757 MIXED
requesting-code-review Jesse Vincent (obra) · MIT 0.668 ± 0.249 → 0.719 ± 0.226 0.540 → 0.617 IMPROVED (1)
writing-plans Jesse Vincent (obra) · MIT 0.811 ± 0.089 → 0.785 ± 0.145 0.576 → 0.675 MIXED
skill-creator Anthropic, PBC · Apache-2.0 0.842 ± 0.095 → 0.875 ± 0.012 0.828 → 0.774 IMPROVED (1)

code-review-and-quality — Code Review and Quality WITHIN NOISE

A five-axis code-review framework and severity-labeling discipline for assessing changes before merge.

Source: https://github.com/addyosmani/agent-skills @ 7829ffd90d · License: MIT · Author: addyosmani
Receipts: old · new · drift

claude-sonnet-4-6 (old)claude-sonnet-5 (new)
with_skill (mean ± sd)0.869 ± 0.0250.854 ± 0.031
baseline (mean ± sd)0.824 ± 0.0810.836 ± 0.051
caseold (mean ± sd)new (mean ± sd)Δverdict
severity-labeled-findings0.908 ± 0.0420.794 ± 0.091-0.114within noise
security-axis-sql-injection0.882 ± 0.0080.858 ± 0.008-0.024within noise (below floor)
commit-message-imperative-body0.862 ± 0.0130.856 ± 0.009-0.006within noise
reject-clean-it-up-later0.866 ± 0.0150.868 ± 0.008+0.002within noise
oversized-change-split0.856 ± 0.0150.860 ± 0.010+0.004within noise
propose-structural-remedy0.878 ± 0.0190.896 ± 0.022+0.018within noise
approve-when-improves-health0.828 ± 0.0280.848 ± 0.026+0.020within noise

git-workflow-and-versioning — Git Workflow and Versioning REGRESSED (1)

Trunk-based git discipline, atomic commits, conventional commit types, and semantic-versioning / changelog conventions.

Source: https://github.com/addyosmani/agent-skills @ 7829ffd90d · License: MIT · Author: addyosmani
Receipts: old · new · drift

claude-sonnet-4-6 (old)claude-sonnet-5 (new)
with_skill (mean ± sd)0.864 ± 0.0150.860 ± 0.028
baseline (mean ± sd)0.794 ± 0.1670.703 ± 0.287
caseold (mean ± sd)new (mean ± sd)Δverdict
semver-clean-bump0.866 ± 0.0090.812 ± 0.018-0.054regressed
commit-message-conventional-type0.862 ± 0.0110.828 ± 0.029-0.034within noise
changelog-curated-by-impact0.880 ± 0.0300.872 ± 0.039-0.008within noise
release-cut-version-tag-changelog0.880 ± 0.0120.882 ± 0.019+0.002within noise
split-into-atomic-commits0.864 ± 0.0220.876 ± 0.015+0.012within noise
trunk-based-short-lived-branches0.858 ± 0.0080.870 ± 0.014+0.012within noise
semver-hidden-breaking-change0.836 ± 0.0350.882 ± 0.018+0.046within noise

documentation-and-adrs — Documentation and ADRs MIXED

When and how to write Architecture Decision Records, inline comments, and API docs; document the why.

Source: https://github.com/addyosmani/agent-skills @ 7829ffd90d · License: MIT · Author: addyosmani
Receipts: old · new · drift

claude-sonnet-4-6 (old)claude-sonnet-5 (new)
with_skill (mean ± sd)0.825 ± 0.1000.706 ± 0.297
baseline (mean ± sd)0.809 ± 0.1000.720 ± 0.293
caseold (mean ± sd)new (mean ± sd)Δverdict
match-existing-adr-convention0.858 ± 0.0160.076 ± 0.043-0.782regressed
surface-conflicting-adr-conventions0.850 ± 0.0250.582 ± 0.149-0.268regressed
supersede-not-delete-old-adr0.886 ± 0.0130.876 ± 0.005-0.010within noise
comment-intent-not-implementation0.860 ± 0.0140.864 ± 0.017+0.004within noise
document-why-not-what-rewrite0.860 ± 0.0100.868 ± 0.013+0.008within noise
adr-for-costly-to-reverse-decision0.864 ± 0.0180.876 ± 0.005+0.012within noise
document-public-api-function0.600 ± 0.0000.800 ± 0.000+0.200improved

commit-work — Commit Work IMPROVED (1)

Producing high-quality git commits: staging discipline, logical splitting, Conventional Commits messages.

Source: https://github.com/softaworks/agent-toolkit @ 3027f20f31 · License: MIT · Author: Softaworks
Receipts: old · new · drift

claude-sonnet-4-6 (old)claude-sonnet-5 (new)
with_skill (mean ± sd)0.843 ± 0.0540.853 ± 0.019
baseline (mean ± sd)0.697 ± 0.2360.643 ± 0.223
caseold (mean ± sd)new (mean ± sd)Δverdict
conventional-commit-single-change0.846 ± 0.0090.814 ± 0.030-0.032within noise
patch-stage-mixed-single-file0.880 ± 0.0160.860 ± 0.014-0.020within noise
full-workflow-multi-concern-diff0.884 ± 0.0210.868 ± 0.011-0.016within noise
split-feature-vs-refactor0.860 ± 0.0160.858 ± 0.011-0.002within noise
split-dependency-bump-vs-behavior0.870 ± 0.0120.870 ± 0.007+0.000within noise
review-cached-catch-secret-and-debug0.834 ± 0.0500.852 ± 0.058+0.018within noise
two-sentence-describability-test0.728 ± 0.0290.850 ± 0.031+0.122improved

writing-clearly-and-concisely — Writing Clearly and Concisely REGRESSED (1)

Strunk-style prose rules for docs, commit / error messages, reports, and UI text.

Source: https://github.com/softaworks/agent-toolkit @ 3027f20f31 · License: MIT · Author: Softaworks
Receipts: old · new · drift

claude-sonnet-4-6 (old)claude-sonnet-5 (new)
with_skill (mean ± sd)0.864 ± 0.0160.841 ± 0.064
baseline (mean ± sd)0.839 ± 0.0440.813 ± 0.100
caseold (mean ± sd)new (mean ± sd)Δverdict
concrete-language-incident-summary0.862 ± 0.0220.710 ± 0.073-0.152regressed
emphatic-word-at-end0.848 ± 0.0230.806 ± 0.013-0.042within noise (below floor)
tighten-puffy-release-note0.874 ± 0.0320.862 ± 0.022-0.012within noise
positive-form-status-sentences0.886 ± 0.0380.884 ± 0.015-0.002within noise
active-voice-logging-passage0.852 ± 0.0040.862 ± 0.011+0.010within noise
omit-needless-words-cache-note0.878 ± 0.0330.894 ± 0.039+0.016within noise
keep-related-words-together-modifiers0.846 ± 0.0110.872 ± 0.023+0.026within noise

crafting-effective-readmes — Crafting Effective READMEs REGRESSED (2)

Audience-first README structure with mandatory sections and project-type templates.

Source: https://github.com/softaworks/agent-toolkit @ 3027f20f31 · License: MIT · Author: Softaworks
Receipts: old · new · drift

claude-sonnet-4-6 (old)claude-sonnet-5 (new)
with_skill (mean ± sd)0.870 ± 0.0150.804 ± 0.192
baseline (mean ± sd)0.849 ± 0.0670.811 ± 0.144
caseold (mean ± sd)new (mean ± sd)Δverdict
lead-with-one-sentence-problem0.874 ± 0.0050.374 ± 0.136-0.500regressed
categorize-task-before-writing0.868 ± 0.0080.818 ± 0.034-0.050regressed
audience-config-folder-future-you0.876 ± 0.0150.870 ± 0.012-0.006within noise
review-validate-against-project-files0.888 ± 0.0290.890 ± 0.024+0.002within noise
three-mandatory-sections-cli-tool0.872 ± 0.0080.876 ± 0.013+0.004within noise
audience-internal-service-runbook0.872 ± 0.0040.894 ± 0.028+0.022within noise
oss-project-type-sections0.840 ± 0.0900.908 ± 0.041+0.068within noise

naming-analyzer — Naming Analyzer MIXED

Variable / function / class naming conventions and how to suggest clearer names.

Source: https://github.com/softaworks/agent-toolkit @ 3027f20f31 · License: MIT · Author: Softaworks
Receipts: old · new · drift

claude-sonnet-4-6 (old)claude-sonnet-5 (new)
with_skill (mean ± sd)0.817 ± 0.0770.839 ± 0.026
baseline (mean ± sd)0.703 ± 0.2140.757 ± 0.141
caseold (mean ± sd)new (mean ± sd)Δverdict
go-acronym-casing0.868 ± 0.0160.814 ± 0.022-0.054regressed
constants-include-units-js0.866 ± 0.0110.814 ± 0.022-0.052regressed
vague-names-js0.854 ± 0.0450.816 ± 0.042-0.038within noise
language-casing-python0.886 ± 0.0240.882 ± 0.013-0.004within noise
misleading-name-mutation-js0.828 ± 0.0080.842 ± 0.004+0.014within noise (below floor)
boolean-prefixes-js0.720 ± 0.1150.860 ± 0.010+0.140improved
abbreviations-wellknown-js0.696 ± 0.0990.846 ± 0.027+0.150improved

requesting-code-review — Requesting Code Review IMPROVED (1)

How to prepare and package a change for review: context, base/head SHAs, and severity triage of feedback.

Source: https://github.com/obra/superpowers @ 3dcbd5c4b4 · License: MIT · Author: Jesse Vincent (obra)
Receipts: old · new · drift

claude-sonnet-4-6 (old)claude-sonnet-5 (new)
with_skill (mean ± sd)0.668 ± 0.2490.719 ± 0.226
baseline (mean ± sd)0.540 ± 0.2620.617 ± 0.200
caseold (mean ± sd)new (mean ± sd)Δverdict
request-package-basic0.898 ± 0.0300.866 ± 0.021-0.032within noise
full-handoff-before-merge0.400 ± 0.0000.396 ± 0.009-0.004within noise
mandatory-vs-optional-triggers0.862 ± 0.0130.864 ± 0.013+0.002within noise
resist-simple-self-review0.864 ± 0.0090.882 ± 0.022+0.018within noise
identify-base-head-shas0.800 ± 0.0000.824 ± 0.018+0.024within noise (below floor)
crafted-context-not-session-history0.290 ± 0.0220.384 ± 0.188+0.094within noise
triage-review-findings0.560 ± 0.0290.820 ± 0.109+0.260improved

writing-plans — Writing Plans MIXED

How to author a concrete, self-contained implementation plan before coding.

Source: https://github.com/obra/superpowers @ 3dcbd5c4b4 · License: MIT · Author: Jesse Vincent (obra)
Receipts: old · new · drift

claude-sonnet-4-6 (old)claude-sonnet-5 (new)
with_skill (mean ± sd)0.811 ± 0.0890.785 ± 0.145
baseline (mean ± sd)0.576 ± 0.2300.675 ± 0.199
caseold (mean ± sd)new (mean ± sd)Δverdict
task-right-sizing-testable-deliverable0.816 ± 0.0940.460 ± 0.150-0.356regressed
self-review-spec-coverage0.882 ± 0.0110.844 ± 0.029-0.038within noise
full-small-plan-header-and-tasks0.882 ± 0.0300.850 ± 0.041-0.032within noise
bite-sized-tdd-steps0.864 ± 0.0130.876 ± 0.005+0.012within noise
file-structure-by-responsibility0.802 ± 0.0040.826 ± 0.037+0.024within noise
repair-placeholder-steps0.802 ± 0.0040.836 ± 0.035+0.034within noise
interfaces-exact-signatures0.626 ± 0.1500.804 ± 0.009+0.178improved

skill-creator — Skill Creator IMPROVED (1)

Conventions for authoring a SKILL.md: description-as-trigger, progressive disclosure, instructional tone.

Source: https://github.com/anthropics/skills @ b29e7cf65e · License: Apache-2.0 · Author: Anthropic, PBC
Receipts: old · new · drift

claude-sonnet-4-6 (old)claude-sonnet-5 (new)
with_skill (mean ± sd)0.842 ± 0.0950.875 ± 0.012
baseline (mean ± sd)0.828 ± 0.0700.774 ± 0.115
caseold (mean ± sd)new (mean ± sd)Δverdict
restructure-oversized-skill0.882 ± 0.0180.854 ± 0.032-0.028within noise
reframe-rigid-musts0.876 ± 0.0050.872 ± 0.004-0.004within noise
domain-variant-organization0.876 ± 0.0150.872 ± 0.008-0.004within noise
write-triggering-description0.874 ± 0.0130.874 ± 0.011+0.000within noise
critique-and-fix-skillmd0.890 ± 0.0350.894 ± 0.025+0.004within noise
output-format-template0.868 ± 0.0110.880 ± 0.012+0.012within noise
draft-full-skillmd0.628 ± 0.0740.882 ± 0.022+0.254improved

Methodology

Reproduce

node scripts/fetch-skills.js
node scripts/run-report-001.js --concurrency 5
node scripts/build-report-001.js

Amendments

v1.1 · 2026-07-28 — Pre-launch QA corrections. Net headline change: v1.0 read 4 regressed / 3 improved / 3 mixed / 0 within noise; v1.1 reads 3 regressed / 3 improved / 3 mixed / 1 within noise. Two causes, below.

Receipts validate against Driftproof receipt spec v0.2. Every verdict above is a function of the two with_skill bands recorded in the receipts. Verdicts age because the substrate moves — that is the phenomenon this report measures.