Commit dcf856f
fix(extract): count a plural use of a singular-defined term as a use
STRUCT-005 flags defined terms with no downstream use as probable template
leftovers. Usage was matched by the exact term (`\bTerm\b`), so a term
defined in the singular but used only in the plural — "Confidential
Material" … "the Confidential Materials", "Disclosing Party" … "the
Disclosing Parties" — counted as zero uses and was wrongly reported as
unused. (Possessives already matched, since the apostrophe is a word
boundary.)
Match the term's regular plural alongside the term (final-word +s / y→ies /
sibilant +es). Terms whose final word already ends in "s" are left alone
(ambiguous). A prefix-sharing word like "Feedback" is not counted as a use
of "Fee" because the alternation is word-boundary anchored.
Zero golden churn: no fixture across the 327-doc corpus defines a term in
the singular and uses it only in the plural, so this is a prospective FP
reduction. `unused_terms` feeds STRUCT-005 (finding-level).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>1 parent 4a952ca commit dcf856f
3 files changed
Lines changed: 58 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| |||
1332 | 1332 | | |
1333 | 1333 | | |
1334 | 1334 | | |
1335 | | - | |
| 1335 | + | |
1336 | 1336 | | |
1337 | 1337 | | |
1338 | 1338 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
39 | 65 | | |
40 | 66 | | |
41 | 67 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
542 | 542 | | |
543 | 543 | | |
544 | 544 | | |
545 | | - | |
| 545 | + | |
| 546 | + | |
| 547 | + | |
| 548 | + | |
| 549 | + | |
| 550 | + | |
| 551 | + | |
| 552 | + | |
| 553 | + | |
546 | 554 | | |
547 | 555 | | |
548 | 556 | | |
| |||
1240 | 1248 | | |
1241 | 1249 | | |
1242 | 1250 | | |
| 1251 | + | |
| 1252 | + | |
| 1253 | + | |
| 1254 | + | |
| 1255 | + | |
| 1256 | + | |
| 1257 | + | |
| 1258 | + | |
| 1259 | + | |
| 1260 | + | |
| 1261 | + | |
| 1262 | + | |
| 1263 | + | |
| 1264 | + | |
| 1265 | + | |
| 1266 | + | |
| 1267 | + | |
| 1268 | + | |
| 1269 | + | |
| 1270 | + | |
| 1271 | + | |
0 commit comments