Skip to content

Commit 4989006

Browse files
Copilotyyyyyyyan
andauthored
docs: split ty-policy measurement provenance into snapshots vs maintained baseline
Co-authored-by: yyyyyyyan <24644216+yyyyyyyan@users.noreply.github.com>
1 parent 17c9397 commit 4989006

1 file changed

Lines changed: 21 additions & 11 deletions

File tree

docs/development/ty-policy.md

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,27 @@ is decided — CI, in two layers, recorded under *Enforcement* — but is **not
1414
wired**: the target is not part of `lint`, pre-commit, or CI today, so running
1515
it by hand is still the only way it runs. SEP-1680 ships the gate.
1616

17-
All measurements below were taken with **ty 0.0.49**, the version pinned in the
18-
`typecheck` Poetry group, on branch commit `3eede0dd3``dafd2df1` plus the
19-
configuration this policy commits. The counts depend on `[tool.ty.rules]`, so
20-
they do not reproduce at `dafd2df1` alone.
21-
22-
Every number below — the recorded baseline, the two rule tables, and the
23-
sampling record — is a snapshot of that one tree at that one version, and is
24-
**not maintained** against later commits. No decision in this document turns on
25-
any of those values: severity was chosen from what a rule's diagnostics *say*,
26-
so a count that has since moved dates the evidence without reopening the call.
27-
Read the counts as how each call was reached, not as a figure anything checks.
17+
Every measurement below was taken with **ty 0.0.49**, the version pinned in the
18+
`typecheck` Poetry group, but the numbers fall into two classes that are read
19+
differently.
20+
21+
**Historical snapshots**, taken on branch commit `3eede0dd3``dafd2df1` plus
22+
the configuration this policy commits, so the counts depend on
23+
`[tool.ty.rules]` and do not reproduce at `dafd2df1` alone. The 3926 figure, the
24+
argument-list comparison, the two rule tables, and the sampling record are all
25+
of this kind: a snapshot of that one tree at that one version, **not
26+
maintained** against later commits. No decision turns on them — severity was
27+
chosen from what a rule's diagnostics *say*, so a count that has since moved
28+
dates the evidence without reopening the call. Read them as how each call was
29+
reached, not as a figure anything checks.
30+
31+
**The maintained baseline and the enforcement evidence**, taken at
32+
`a157c146115c`: the current **3,287 — 0 error, 3,287 warning** split and the
33+
exit-status pair it comes from. These are current, and they are load-bearing —
34+
the two-layer enforcement decision under *Enforcement* rests on the error count
35+
being zero and on warnings not moving the exit status. *Changing this policy*
36+
requires re-measuring the baseline whenever ty is upgraded or diagnostics are
37+
cleared in bulk; it is the one figure kept current.
2838

2939
## The checked surface
3040

0 commit comments

Comments
 (0)