Commit 0083183
chore(scripts): widen expose-pipeline parser to include
The diagnostic-based zero-usage signal previously included only the four
unfold categories from `set_option diagnostics true`. Empirically, that
missed cases where a downstream module's typeclass synthesis depends on
an exposed instance's body without ever recording an explicit
`recordUnfold`. Adding `[type_class] used instances` to the parsed
categories drops ~1.6k decls (4%) from the zero-usage list — those are
load-bearing and were previously misclassified as "safe".
The widening doesn't fully close the gap: instance synthesis via
parent-class projection (e.g. `SemilatticeSup` synthesized via
`Lattice → Lattice.toSemilatticeSup`) records the projection instance,
not the user-named `instLattice`, so reports for the user-named instance
still show 0 usage even when it is load-bearing. The report remains
useful as a candidate list for inspection, not a definitive safe list.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>[type_class] used instances
1 parent fac6ec2 commit 0083183
1 file changed
Lines changed: 8 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
204 | 204 | | |
205 | 205 | | |
206 | 206 | | |
207 | | - | |
208 | | - | |
| 207 | + | |
| 208 | + | |
209 | 209 | | |
210 | 210 | | |
211 | 211 | | |
212 | 212 | | |
213 | | - | |
| 213 | + | |
214 | 214 | | |
215 | 215 | | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
216 | 220 | | |
217 | 221 | | |
218 | 222 | | |
219 | 223 | | |
220 | 224 | | |
| 225 | + | |
221 | 226 | | |
222 | 227 | | |
223 | 228 | | |
| |||
0 commit comments