chaffjs 0.25.0 → 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (468) hide show
  1. package/README.md +179 -42
  2. package/dist/adapter-import.d.ts +2 -0
  3. package/dist/adapter-import.d.ts.map +1 -0
  4. package/dist/adapter-import.js +11 -0
  5. package/dist/adapter-import.js.map +1 -0
  6. package/dist/adapter-load.d.ts.map +1 -1
  7. package/dist/adapter-load.js +2 -9
  8. package/dist/adapter-load.js.map +1 -1
  9. package/dist/ai-score/human-shares.d.ts +4 -0
  10. package/dist/ai-score/human-shares.d.ts.map +1 -0
  11. package/dist/ai-score/human-shares.js +205 -0
  12. package/dist/ai-score/human-shares.js.map +1 -0
  13. package/dist/ai-score/lint-line.d.ts +4 -0
  14. package/dist/ai-score/lint-line.d.ts.map +1 -0
  15. package/dist/ai-score/lint-line.js +9 -0
  16. package/dist/ai-score/lint-line.js.map +1 -0
  17. package/dist/ai-score/of-document.d.ts +7 -0
  18. package/dist/ai-score/of-document.d.ts.map +1 -0
  19. package/dist/ai-score/of-document.js +40 -0
  20. package/dist/ai-score/of-document.js.map +1 -0
  21. package/dist/ai-score/render.d.ts +24 -0
  22. package/dist/ai-score/render.d.ts.map +1 -0
  23. package/dist/ai-score/render.js +100 -0
  24. package/dist/ai-score/render.js.map +1 -0
  25. package/dist/ai-score/score.d.ts +77 -0
  26. package/dist/ai-score/score.d.ts.map +1 -0
  27. package/dist/ai-score/score.js +52 -0
  28. package/dist/ai-score/score.js.map +1 -0
  29. package/dist/ai-score/signals.d.ts +19 -0
  30. package/dist/ai-score/signals.d.ts.map +1 -0
  31. package/dist/ai-score/signals.js +30 -0
  32. package/dist/ai-score/signals.js.map +1 -0
  33. package/dist/ai-score/text.d.ts +37 -0
  34. package/dist/ai-score/text.d.ts.map +1 -0
  35. package/dist/ai-score/text.js +59 -0
  36. package/dist/ai-score/text.js.map +1 -0
  37. package/dist/ai-score/view.d.ts +5 -0
  38. package/dist/ai-score/view.d.ts.map +1 -0
  39. package/dist/ai-score/view.js +19 -0
  40. package/dist/ai-score/view.js.map +1 -0
  41. package/dist/backends/anthropic.d.ts +0 -1
  42. package/dist/backends/anthropic.d.ts.map +1 -1
  43. package/dist/backends/anthropic.js +0 -1
  44. package/dist/backends/anthropic.js.map +1 -1
  45. package/dist/backends/default-model.d.ts +3 -0
  46. package/dist/backends/default-model.d.ts.map +1 -0
  47. package/dist/backends/default-model.js +5 -0
  48. package/dist/backends/default-model.js.map +1 -0
  49. package/dist/backends/openai.d.ts +0 -1
  50. package/dist/backends/openai.d.ts.map +1 -1
  51. package/dist/backends/openai.js +0 -1
  52. package/dist/backends/openai.js.map +1 -1
  53. package/dist/browser/adapter-import.d.ts +2 -0
  54. package/dist/browser/adapter-import.d.ts.map +1 -0
  55. package/dist/browser/adapter-import.js +17 -0
  56. package/dist/browser/adapter-import.js.map +1 -0
  57. package/dist/browser/bounded-match.d.ts +3 -0
  58. package/dist/browser/bounded-match.d.ts.map +1 -0
  59. package/dist/browser/bounded-match.js +4 -0
  60. package/dist/browser/bounded-match.js.map +1 -0
  61. package/dist/browser/check-text.d.ts +43 -0
  62. package/dist/browser/check-text.d.ts.map +1 -0
  63. package/dist/browser/check-text.js +50 -0
  64. package/dist/browser/check-text.js.map +1 -0
  65. package/dist/browser/detectors.d.ts +4 -0
  66. package/dist/browser/detectors.d.ts.map +1 -0
  67. package/dist/browser/detectors.js +22 -0
  68. package/dist/browser/detectors.js.map +1 -0
  69. package/dist/browser/package-files.d.ts +5 -0
  70. package/dist/browser/package-files.d.ts.map +1 -0
  71. package/dist/browser/package-files.js +8 -0
  72. package/dist/browser/package-files.js.map +1 -0
  73. package/dist/browser/path.d.ts +9 -0
  74. package/dist/browser/path.d.ts.map +1 -0
  75. package/dist/browser/path.js +70 -0
  76. package/dist/browser/path.js.map +1 -0
  77. package/dist/browser/working-dir.d.ts +2 -0
  78. package/dist/browser/working-dir.d.ts.map +1 -0
  79. package/dist/browser/working-dir.js +3 -0
  80. package/dist/browser/working-dir.js.map +1 -0
  81. package/dist/browser-files.d.ts +21 -0
  82. package/dist/browser-files.d.ts.map +1 -0
  83. package/dist/browser-files.js +65 -0
  84. package/dist/browser-files.js.map +1 -0
  85. package/dist/browser.d.ts +9 -0
  86. package/dist/browser.d.ts.map +1 -0
  87. package/dist/browser.js +13 -0
  88. package/dist/browser.js.map +1 -0
  89. package/dist/capitals-with-small.d.ts +8 -0
  90. package/dist/capitals-with-small.d.ts.map +1 -0
  91. package/dist/capitals-with-small.js +20 -0
  92. package/dist/capitals-with-small.js.map +1 -0
  93. package/dist/cli-text.d.ts.map +1 -1
  94. package/dist/cli-text.js +2 -0
  95. package/dist/cli-text.js.map +1 -1
  96. package/dist/cli.d.ts.map +1 -1
  97. package/dist/cli.js +4 -1
  98. package/dist/cli.js.map +1 -1
  99. package/dist/commands/ai-score.d.ts +8 -0
  100. package/dist/commands/ai-score.d.ts.map +1 -0
  101. package/dist/commands/ai-score.js +59 -0
  102. package/dist/commands/ai-score.js.map +1 -0
  103. package/dist/commands/document-commands.d.ts.map +1 -1
  104. package/dist/commands/document-commands.js +2 -0
  105. package/dist/commands/document-commands.js.map +1 -1
  106. package/dist/config/by-path-problems.d.ts +5 -0
  107. package/dist/config/by-path-problems.d.ts.map +1 -0
  108. package/dist/config/by-path-problems.js +11 -0
  109. package/dist/config/by-path-problems.js.map +1 -0
  110. package/dist/config/load.d.ts +9 -2
  111. package/dist/config/load.d.ts.map +1 -1
  112. package/dist/config/load.js +21 -8
  113. package/dist/config/load.js.map +1 -1
  114. package/dist/config/read.d.ts +2 -0
  115. package/dist/config/read.d.ts.map +1 -1
  116. package/dist/config/read.js +4 -1
  117. package/dist/config/read.js.map +1 -1
  118. package/dist/config/warnings.d.ts +1 -1
  119. package/dist/config/warnings.d.ts.map +1 -1
  120. package/dist/config/warnings.js +3 -1
  121. package/dist/config/warnings.js.map +1 -1
  122. package/dist/config/working-dir.d.ts +2 -0
  123. package/dist/config/working-dir.d.ts.map +1 -0
  124. package/dist/config/working-dir.js +3 -0
  125. package/dist/config/working-dir.js.map +1 -0
  126. package/dist/custom/bounded-match.d.ts +1 -12
  127. package/dist/custom/bounded-match.d.ts.map +1 -1
  128. package/dist/custom/bounded-match.js +1 -11
  129. package/dist/custom/bounded-match.js.map +1 -1
  130. package/dist/custom/pattern-timeout.d.ts +13 -0
  131. package/dist/custom/pattern-timeout.d.ts.map +1 -0
  132. package/dist/custom/pattern-timeout.js +13 -0
  133. package/dist/custom/pattern-timeout.js.map +1 -0
  134. package/dist/derived/relative-weekdays.d.ts +16 -0
  135. package/dist/derived/relative-weekdays.d.ts.map +1 -0
  136. package/dist/derived/relative-weekdays.js +52 -0
  137. package/dist/derived/relative-weekdays.js.map +1 -0
  138. package/dist/detect.d.ts.map +1 -1
  139. package/dist/detect.js +4 -5
  140. package/dist/detect.js.map +1 -1
  141. package/dist/detectors/change-rate.d.ts +3 -0
  142. package/dist/detectors/change-rate.d.ts.map +1 -0
  143. package/dist/detectors/change-rate.js +102 -0
  144. package/dist/detectors/change-rate.js.map +1 -0
  145. package/dist/detectors/date-year.d.ts +10 -2
  146. package/dist/detectors/date-year.d.ts.map +1 -1
  147. package/dist/detectors/date-year.js +44 -8
  148. package/dist/detectors/date-year.js.map +1 -1
  149. package/dist/detectors/defined-term-form.d.ts +5 -0
  150. package/dist/detectors/defined-term-form.d.ts.map +1 -1
  151. package/dist/detectors/defined-term-form.js +22 -5
  152. package/dist/detectors/defined-term-form.js.map +1 -1
  153. package/dist/detectors/derived-numbers.d.ts.map +1 -1
  154. package/dist/detectors/derived-numbers.js +3 -7
  155. package/dist/detectors/derived-numbers.js.map +1 -1
  156. package/dist/detectors/document-date.d.ts +4 -0
  157. package/dist/detectors/document-date.d.ts.map +1 -0
  158. package/dist/detectors/document-date.js +12 -0
  159. package/dist/detectors/document-date.js.map +1 -0
  160. package/dist/detectors/orthographic-variant.d.ts.map +1 -1
  161. package/dist/detectors/orthographic-variant.js +60 -28
  162. package/dist/detectors/orthographic-variant.js.map +1 -1
  163. package/dist/detectors/party-role-name.d.ts +3 -0
  164. package/dist/detectors/party-role-name.d.ts.map +1 -0
  165. package/dist/detectors/party-role-name.js +35 -0
  166. package/dist/detectors/party-role-name.js.map +1 -0
  167. package/dist/detectors/quote-without-source.d.ts +17 -0
  168. package/dist/detectors/quote-without-source.d.ts.map +1 -0
  169. package/dist/detectors/quote-without-source.js +64 -0
  170. package/dist/detectors/quote-without-source.js.map +1 -0
  171. package/dist/detectors/reference-text.js +1 -1
  172. package/dist/detectors/reference-text.js.map +1 -1
  173. package/dist/detectors/registry/change-rate.d.ts +3 -0
  174. package/dist/detectors/registry/change-rate.d.ts.map +1 -0
  175. package/dist/detectors/registry/change-rate.js +3 -0
  176. package/dist/detectors/registry/change-rate.js.map +1 -0
  177. package/dist/detectors/registry/party-role-name.d.ts +3 -0
  178. package/dist/detectors/registry/party-role-name.d.ts.map +1 -0
  179. package/dist/detectors/registry/party-role-name.js +3 -0
  180. package/dist/detectors/registry/party-role-name.js.map +1 -0
  181. package/dist/detectors/registry/quote-without-source.d.ts +3 -0
  182. package/dist/detectors/registry/quote-without-source.d.ts.map +1 -0
  183. package/dist/detectors/registry/quote-without-source.js +3 -0
  184. package/dist/detectors/registry/quote-without-source.js.map +1 -0
  185. package/dist/detectors/registry/vague-deadline.d.ts +3 -0
  186. package/dist/detectors/registry/vague-deadline.d.ts.map +1 -0
  187. package/dist/detectors/registry/vague-deadline.js +3 -0
  188. package/dist/detectors/registry/vague-deadline.js.map +1 -0
  189. package/dist/detectors/registry/version-mismatch.d.ts +3 -0
  190. package/dist/detectors/registry/version-mismatch.d.ts.map +1 -0
  191. package/dist/detectors/registry/version-mismatch.js +3 -0
  192. package/dist/detectors/registry/version-mismatch.js.map +1 -0
  193. package/dist/detectors/relative-dates.d.ts.map +1 -1
  194. package/dist/detectors/relative-dates.js +3 -1
  195. package/dist/detectors/relative-dates.js.map +1 -1
  196. package/dist/detectors/relative-day-words.d.ts +4 -0
  197. package/dist/detectors/relative-day-words.d.ts.map +1 -0
  198. package/dist/detectors/relative-day-words.js +105 -0
  199. package/dist/detectors/relative-day-words.js.map +1 -0
  200. package/dist/detectors/run-in-label.d.ts +7 -0
  201. package/dist/detectors/run-in-label.d.ts.map +1 -0
  202. package/dist/detectors/run-in-label.js +53 -0
  203. package/dist/detectors/run-in-label.js.map +1 -0
  204. package/dist/detectors/sentence-counts.d.ts +3 -1
  205. package/dist/detectors/sentence-counts.d.ts.map +1 -1
  206. package/dist/detectors/sentence-counts.js +11 -4
  207. package/dist/detectors/sentence-counts.js.map +1 -1
  208. package/dist/detectors/sentence-ending.d.ts +1 -1
  209. package/dist/detectors/sentence-ending.d.ts.map +1 -1
  210. package/dist/detectors/sentence-ending.js +2 -1
  211. package/dist/detectors/sentence-ending.js.map +1 -1
  212. package/dist/detectors/structure-tree.d.ts +8 -2
  213. package/dist/detectors/structure-tree.d.ts.map +1 -1
  214. package/dist/detectors/structure-tree.js +86 -5
  215. package/dist/detectors/structure-tree.js.map +1 -1
  216. package/dist/detectors/unbalanced-bracket.d.ts +1 -1
  217. package/dist/detectors/unbalanced-bracket.d.ts.map +1 -1
  218. package/dist/detectors/unbalanced-bracket.js +23 -11
  219. package/dist/detectors/unbalanced-bracket.js.map +1 -1
  220. package/dist/detectors/vague-deadline.d.ts +25 -0
  221. package/dist/detectors/vague-deadline.d.ts.map +1 -0
  222. package/dist/detectors/vague-deadline.js +97 -0
  223. package/dist/detectors/vague-deadline.js.map +1 -0
  224. package/dist/detectors/version-mismatch.d.ts +3 -0
  225. package/dist/detectors/version-mismatch.d.ts.map +1 -0
  226. package/dist/detectors/version-mismatch.js +19 -0
  227. package/dist/detectors/version-mismatch.js.map +1 -0
  228. package/dist/furigana.d.ts +7 -0
  229. package/dist/furigana.d.ts.map +1 -0
  230. package/dist/furigana.js +16 -0
  231. package/dist/furigana.js.map +1 -0
  232. package/dist/genre-load.d.ts.map +1 -1
  233. package/dist/genre-load.js +5 -7
  234. package/dist/genre-load.js.map +1 -1
  235. package/dist/grade/ai-score.d.ts +16 -0
  236. package/dist/grade/ai-score.d.ts.map +1 -0
  237. package/dist/grade/ai-score.js +17 -0
  238. package/dist/grade/ai-score.js.map +1 -0
  239. package/dist/grade/finding.d.ts +6 -0
  240. package/dist/grade/finding.d.ts.map +1 -0
  241. package/dist/grade/finding.js +13 -0
  242. package/dist/grade/finding.js.map +1 -0
  243. package/dist/grade/grade-item.d.ts.map +1 -1
  244. package/dist/grade/grade-item.js +4 -11
  245. package/dist/grade/grade-item.js.map +1 -1
  246. package/dist/grade/render-variants.d.ts.map +1 -1
  247. package/dist/grade/render-variants.js +3 -0
  248. package/dist/grade/render-variants.js.map +1 -1
  249. package/dist/grade/render.d.ts.map +1 -1
  250. package/dist/grade/render.js +1 -0
  251. package/dist/grade/render.js.map +1 -1
  252. package/dist/grade/result.d.ts +3 -0
  253. package/dist/grade/result.d.ts.map +1 -1
  254. package/dist/grade/results-read.d.ts.map +1 -1
  255. package/dist/grade/results-read.js +13 -2
  256. package/dist/grade/results-read.js.map +1 -1
  257. package/dist/grade/summary.d.ts +3 -0
  258. package/dist/grade/summary.d.ts.map +1 -1
  259. package/dist/grade/summary.js +6 -0
  260. package/dist/grade/summary.js.map +1 -1
  261. package/dist/grade/text.d.ts +2 -0
  262. package/dist/grade/text.d.ts.map +1 -1
  263. package/dist/grade/text.js +2 -0
  264. package/dist/grade/text.js.map +1 -1
  265. package/dist/grade/variants-text.d.ts +3 -0
  266. package/dist/grade/variants-text.d.ts.map +1 -1
  267. package/dist/grade/variants-text.js +4 -0
  268. package/dist/grade/variants-text.js.map +1 -1
  269. package/dist/grade/variants.d.ts +3 -0
  270. package/dist/grade/variants.d.ts.map +1 -1
  271. package/dist/grade/variants.js +1 -0
  272. package/dist/grade/variants.js.map +1 -1
  273. package/dist/grade-api.d.ts +1 -0
  274. package/dist/grade-api.d.ts.map +1 -1
  275. package/dist/grade-api.js +2 -1
  276. package/dist/grade-api.js.map +1 -1
  277. package/dist/judge.d.ts +0 -1
  278. package/dist/judge.d.ts.map +1 -1
  279. package/dist/judge.js +0 -1
  280. package/dist/judge.js.map +1 -1
  281. package/dist/known-genres.js +2 -2
  282. package/dist/known-genres.js.map +1 -1
  283. package/dist/package-files.d.ts +6 -0
  284. package/dist/package-files.d.ts.map +1 -0
  285. package/dist/package-files.js +11 -0
  286. package/dist/package-files.js.map +1 -0
  287. package/dist/profile/load.d.ts.map +1 -1
  288. package/dist/profile/load.js +5 -6
  289. package/dist/profile/load.js.map +1 -1
  290. package/dist/rule-load.d.ts.map +1 -1
  291. package/dist/rule-load.js +5 -6
  292. package/dist/rule-load.js.map +1 -1
  293. package/dist/rule-offs.js +3 -3
  294. package/dist/rule-offs.js.map +1 -1
  295. package/dist/run.js +1 -1
  296. package/dist/run.js.map +1 -1
  297. package/dist/structure/change-rate.d.ts +33 -0
  298. package/dist/structure/change-rate.d.ts.map +1 -0
  299. package/dist/structure/change-rate.js +71 -0
  300. package/dist/structure/change-rate.js.map +1 -0
  301. package/dist/structure/date-range.d.ts +4 -0
  302. package/dist/structure/date-range.d.ts.map +1 -1
  303. package/dist/structure/date-range.js +23 -3
  304. package/dist/structure/date-range.js.map +1 -1
  305. package/dist/structure/issues.d.ts +17 -1
  306. package/dist/structure/issues.d.ts.map +1 -1
  307. package/dist/structure/issues.js +54 -5
  308. package/dist/structure/issues.js.map +1 -1
  309. package/dist/structure/list-numbering.d.ts +17 -0
  310. package/dist/structure/list-numbering.d.ts.map +1 -0
  311. package/dist/structure/list-numbering.js +27 -0
  312. package/dist/structure/list-numbering.js.map +1 -0
  313. package/dist/structure/party-role.d.ts +30 -0
  314. package/dist/structure/party-role.d.ts.map +1 -0
  315. package/dist/structure/party-role.js +58 -0
  316. package/dist/structure/party-role.js.map +1 -0
  317. package/dist/structure/percent-sum-prose.d.ts +7 -0
  318. package/dist/structure/percent-sum-prose.d.ts.map +1 -0
  319. package/dist/structure/percent-sum-prose.js +44 -0
  320. package/dist/structure/percent-sum-prose.js.map +1 -0
  321. package/dist/structure/prose-total.d.ts +28 -0
  322. package/dist/structure/prose-total.d.ts.map +1 -0
  323. package/dist/structure/prose-total.js +99 -0
  324. package/dist/structure/prose-total.js.map +1 -0
  325. package/dist/structure/reference-text.d.ts +5 -0
  326. package/dist/structure/reference-text.d.ts.map +1 -1
  327. package/dist/structure/reference-text.js +17 -4
  328. package/dist/structure/reference-text.js.map +1 -1
  329. package/dist/structure/term-prefix.d.ts +18 -0
  330. package/dist/structure/term-prefix.d.ts.map +1 -0
  331. package/dist/structure/term-prefix.js +40 -0
  332. package/dist/structure/term-prefix.js.map +1 -0
  333. package/dist/structure/total.d.ts +2 -0
  334. package/dist/structure/total.d.ts.map +1 -1
  335. package/dist/structure/total.js +2 -0
  336. package/dist/structure/total.js.map +1 -1
  337. package/dist/structure/version-mismatch.d.ts +23 -0
  338. package/dist/structure/version-mismatch.d.ts.map +1 -0
  339. package/dist/structure/version-mismatch.js +74 -0
  340. package/dist/structure/version-mismatch.js.map +1 -0
  341. package/dist/structure/weekday.d.ts +21 -2
  342. package/dist/structure/weekday.d.ts.map +1 -1
  343. package/dist/structure/weekday.js +70 -8
  344. package/dist/structure/weekday.js.map +1 -1
  345. package/dist/structure-shape/baseline-load.d.ts.map +1 -1
  346. package/dist/structure-shape/baseline-load.js +4 -5
  347. package/dist/structure-shape/baseline-load.js.map +1 -1
  348. package/dist/style-load.d.ts.map +1 -1
  349. package/dist/style-load.js +5 -6
  350. package/dist/style-load.js.map +1 -1
  351. package/package.json +24 -3
  352. package/rules/agreement-slip.yaml +2 -2
  353. package/rules/change-rate-mismatch.yaml +44 -0
  354. package/rules/cliche.yaml +28 -8
  355. package/rules/date-weekday-mismatch.yaml +4 -4
  356. package/rules/date-without-year.yaml +28 -3
  357. package/rules/defined-term-form.yaml +9 -6
  358. package/rules/demonstrative-opener-run.yaml +24 -7
  359. package/rules/max-sentence-length.yaml +1 -0
  360. package/rules/no-mixed-desumasu.yaml +2 -2
  361. package/rules/numbering-gap.yaml +4 -4
  362. package/rules/one-sentence-paragraph-run.yaml +1 -0
  363. package/rules/orthographic-variant.yaml +3 -3
  364. package/rules/party-role-name.yaml +94 -0
  365. package/rules/percent-sum-mismatch.yaml +4 -4
  366. package/rules/quote-without-source.yaml +61 -0
  367. package/rules/relative-date-mismatch.yaml +4 -4
  368. package/rules/total-mismatch.yaml +8 -8
  369. package/rules/undefined-acronym.yaml +1 -0
  370. package/rules/vague-deadline.yaml +95 -0
  371. package/rules/version-mismatch.yaml +77 -0
  372. package/rules/weasel-word.yaml +25 -7
  373. package/skills/chaff/SKILL.md +12 -2
  374. package/src/adapter-import.ts +3 -0
  375. package/src/adapter-load.ts +2 -1
  376. package/src/ai-score/human-shares.ts +207 -0
  377. package/src/ai-score/lint-line.ts +10 -0
  378. package/src/ai-score/of-document.ts +46 -0
  379. package/src/ai-score/render.ts +124 -0
  380. package/src/ai-score/score.ts +121 -0
  381. package/src/ai-score/signals.ts +39 -0
  382. package/src/ai-score/text.ts +103 -0
  383. package/src/ai-score/view.ts +21 -0
  384. package/src/backends/anthropic.ts +0 -2
  385. package/src/backends/default-model.ts +9 -0
  386. package/src/backends/openai.ts +0 -2
  387. package/src/browser/adapter-import.ts +19 -0
  388. package/src/browser/bounded-match.ts +9 -0
  389. package/src/browser/check-text.ts +106 -0
  390. package/src/browser/detectors.ts +40 -0
  391. package/src/browser/import-meta-glob.d.ts +5 -0
  392. package/src/browser/package-files.ts +13 -0
  393. package/src/browser/path.ts +73 -0
  394. package/src/browser/working-dir.ts +3 -0
  395. package/src/browser-files.ts +87 -0
  396. package/src/browser.ts +19 -0
  397. package/src/capitals-with-small.ts +23 -0
  398. package/src/cli-text.ts +2 -0
  399. package/src/cli.ts +4 -1
  400. package/src/commands/ai-score.ts +77 -0
  401. package/src/commands/document-commands.ts +2 -0
  402. package/src/config/by-path-problems.ts +17 -0
  403. package/src/config/load.ts +21 -8
  404. package/src/config/read.ts +5 -1
  405. package/src/config/warnings.ts +3 -1
  406. package/src/config/working-dir.ts +3 -0
  407. package/src/custom/bounded-match.ts +1 -16
  408. package/src/custom/pattern-timeout.ts +17 -0
  409. package/src/derived/relative-weekdays.ts +65 -0
  410. package/src/detect.ts +4 -5
  411. package/src/detectors/change-rate.ts +122 -0
  412. package/src/detectors/date-year.ts +51 -12
  413. package/src/detectors/defined-term-form.ts +28 -6
  414. package/src/detectors/derived-numbers.ts +3 -11
  415. package/src/detectors/document-date.ts +18 -0
  416. package/src/detectors/orthographic-variant.ts +67 -22
  417. package/src/detectors/party-role-name.ts +44 -0
  418. package/src/detectors/quote-without-source.ts +90 -0
  419. package/src/detectors/reference-text.ts +1 -1
  420. package/src/detectors/registry/change-rate.ts +4 -0
  421. package/src/detectors/registry/party-role-name.ts +4 -0
  422. package/src/detectors/registry/quote-without-source.ts +4 -0
  423. package/src/detectors/registry/vague-deadline.ts +4 -0
  424. package/src/detectors/registry/version-mismatch.ts +4 -0
  425. package/src/detectors/relative-dates.ts +3 -1
  426. package/src/detectors/relative-day-words.ts +126 -0
  427. package/src/detectors/run-in-label.ts +60 -0
  428. package/src/detectors/sentence-counts.ts +13 -4
  429. package/src/detectors/sentence-ending.ts +3 -2
  430. package/src/detectors/structure-tree.ts +104 -10
  431. package/src/detectors/unbalanced-bracket.ts +25 -10
  432. package/src/detectors/vague-deadline.ts +132 -0
  433. package/src/detectors/version-mismatch.ts +23 -0
  434. package/src/furigana.ts +20 -0
  435. package/src/genre-load.ts +5 -7
  436. package/src/grade/ai-score.ts +32 -0
  437. package/src/grade/finding.ts +16 -0
  438. package/src/grade/grade-item.ts +4 -13
  439. package/src/grade/render-variants.ts +5 -0
  440. package/src/grade/render.ts +1 -0
  441. package/src/grade/result.ts +3 -0
  442. package/src/grade/results-read.ts +17 -2
  443. package/src/grade/summary.ts +9 -0
  444. package/src/grade/text.ts +6 -0
  445. package/src/grade/variants-text.ts +7 -0
  446. package/src/grade/variants.ts +4 -0
  447. package/src/grade-api.ts +3 -1
  448. package/src/judge.ts +0 -2
  449. package/src/known-genres.ts +2 -2
  450. package/src/package-files.ts +15 -0
  451. package/src/profile/load.ts +5 -6
  452. package/src/rule-load.ts +5 -6
  453. package/src/rule-offs.ts +3 -3
  454. package/src/run.ts +1 -1
  455. package/src/structure/change-rate.ts +103 -0
  456. package/src/structure/date-range.ts +28 -3
  457. package/src/structure/issues.ts +61 -6
  458. package/src/structure/list-numbering.ts +34 -0
  459. package/src/structure/party-role.ts +94 -0
  460. package/src/structure/percent-sum-prose.ts +54 -0
  461. package/src/structure/prose-total.ts +135 -0
  462. package/src/structure/reference-text.ts +17 -4
  463. package/src/structure/term-prefix.ts +54 -0
  464. package/src/structure/total.ts +4 -0
  465. package/src/structure/version-mismatch.ts +103 -0
  466. package/src/structure/weekday.ts +83 -6
  467. package/src/structure-shape/baseline-load.ts +4 -5
  468. package/src/style-load.ts +5 -6
@@ -1 +1 @@
1
- {"version":3,"file":"defined-term-form.js","sourceRoot":"","sources":["../../src/detectors/defined-term-form.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defined-term-form.js","sourceRoot":"","sources":["../../src/detectors/defined-term-form.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"derived-numbers.d.ts","sourceRoot":"","sources":["../../src/detectors/derived-numbers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAA+C,MAAM,cAAc,CAAC;AAkE1F,sBAAsB;AACtB,eAAO,MAAM,gBAAgB,EAAE,QAiB9B,CAAC;AAwEF,+BAA+B;AAC/B,eAAO,MAAM,oBAAoB,EAAE,QAiClC,CAAC"}
1
+ {"version":3,"file":"derived-numbers.d.ts","sourceRoot":"","sources":["../../src/detectors/derived-numbers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAA+C,MAAM,cAAc,CAAC;AAkE1F,sBAAsB;AACtB,eAAO,MAAM,gBAAgB,EAAE,QAiB9B,CAAC;AAgEF,+BAA+B;AAC/B,eAAO,MAAM,oBAAoB,EAAE,QAiClC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { inDocumentOrder } from "../structure/issues.js";
2
- import { dateStampIndexes, stampCandidates } from "../date-stamp.js";
2
+ import { documentDateOf } from "./document-date.js";
3
3
  import { overlapsAny, spanIndex } from "../compare/spans.js";
4
4
  import { yearOf } from "../derived/date-arithmetic.js";
5
5
  import { durationMismatches } from "../derived/durations.js";
@@ -109,12 +109,8 @@ const markedAges = (doc) => positioned(doc, "age-marker", "before").flatMap((mar
109
109
  }));
110
110
  /** 文書の日付の年: 日付だけの段落か「更新日:」の段落(date-stamp)の、最初の日付。 */
111
111
  const referenceYear = (doc, tree) => {
112
- const dates = datesOf(tree);
113
- const candidates = stampCandidates(doc.source, doc.paragraphs.map((paragraph) => paragraph.span), dates);
114
- const stamps = dateStampIndexes(candidates, patternsOf(doc, "date-stamp-label"));
115
- const paragraph = doc.paragraphs.find((_, index) => stamps.has(index));
116
- const date = paragraph === undefined ? undefined : dates.find((candidate) => candidate.start >= paragraph.span.start && candidate.end <= paragraph.span.end);
117
- return date === undefined ? undefined : yearOf(date.value);
112
+ const date = documentDateOf(doc, tree);
113
+ return date === undefined ? undefined : yearOf(date);
118
114
  };
119
115
  /** 起点の年から数えた年数が、文書の日付と合わない。 */
120
116
  export const elapsedYearsMismatch = (doc) => {
@@ -1 +1 @@
1
- {"version":3,"file":"derived-numbers.js","sourceRoot":"","sources":["../../src/detectors/derived-numbers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"derived-numbers.js","sourceRoot":"","sources":["../../src/detectors/derived-numbers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { ProseDocument, StructureNode } from "../plugin.ts";
2
+ /** The date of the document's date stamp as the tree reads it ("2026-10-06", or "2026" for a year alone), when it has one. */
3
+ export declare const documentDateOf: (doc: ProseDocument, tree: StructureNode) => string | undefined;
4
+ //# sourceMappingURL=document-date.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-date.d.ts","sourceRoot":"","sources":["../../src/detectors/document-date.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAIjE,8HAA8H;AAC9H,eAAO,MAAM,cAAc,GAAI,KAAK,aAAa,EAAE,MAAM,aAAa,KAAG,MAAM,GAAG,SAWjF,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { inDocumentOrder } from "../structure/issues.js";
2
+ import { dateStampIndexes, stampCandidates } from "../date-stamp.js";
3
+ /** The date of the document's date stamp as the tree reads it ("2026-10-06", or "2026" for a year alone), when it has one. */
4
+ export const documentDateOf = (doc, tree) => {
5
+ const dates = inDocumentOrder(tree).flatMap((node) => (node.kind === "date" ? [{ ...node.span, value: String(node.attrs["value"]) }] : []));
6
+ const candidates = stampCandidates(doc.source, doc.paragraphs.map((paragraph) => paragraph.span), dates);
7
+ const labels = (doc.lexicons["date-stamp-label"] ?? []).map((entry) => entry.pattern);
8
+ const stamps = dateStampIndexes(candidates, labels);
9
+ const paragraph = doc.paragraphs.find((_, index) => stamps.has(index));
10
+ return paragraph === undefined ? undefined : dates.find((candidate) => candidate.start >= paragraph.span.start && candidate.end <= paragraph.span.end)?.value;
11
+ };
12
+ //# sourceMappingURL=document-date.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-date.js","sourceRoot":"","sources":["../../src/detectors/document-date.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAErE,8HAA8H;AAC9H,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAkB,EAAE,IAAmB,EAAsB,EAAE;IAC5F,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5I,MAAM,UAAU,GAAG,eAAe,CAChC,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EACjD,KAAK,CACN,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACtF,MAAM,MAAM,GAAG,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IACvE,OAAO,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,SAAS,CAAC,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC;AAChK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"orthographic-variant.d.ts","sourceRoot":"","sources":["../../src/detectors/orthographic-variant.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAA2C,MAAM,cAAc,CAAC;AAwItF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,QAUjC,CAAC"}
1
+ {"version":3,"file":"orthographic-variant.d.ts","sourceRoot":"","sources":["../../src/detectors/orthographic-variant.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAA2C,MAAM,cAAc,CAAC;AAqLtF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,EAAE,QAUjC,CAAC"}
@@ -3,6 +3,8 @@ import { kanjiSkeleton, katakanaKey, lemmaReading } from "../kana-spelling.js";
3
3
  import { isKatakanaWord, stemOf } from "../long-vowel.js";
4
4
  import { QUOTATION_MARKS, isWithinAny, quotedSpans } from "../quoted-span.js";
5
5
  import { nameSpans, touchesAny } from "../team-names.js";
6
+ import { furiganaSpans } from "../furigana.js";
7
+ import { acronymsIn, isCapitalsNotSpelling } from "../capitals-with-small.js";
6
8
  /** Parts of speech that carry a word of their own. Particles and endings are written one way by the grammar. */
7
9
  const CONTENT = new Set(["NOUN", "VERB", "ADJ", "ADV", "PRON", "CCONJ", "DET"]);
8
10
  const JAPANESE_WORD = /^[\p{Script=Han}々ぁ-ゖァ-ヺー]+$/u;
@@ -14,38 +16,64 @@ const MIN_LATIN_KEY = 3;
14
16
  /** Lexicons: readings and spellings whose kanji and kana forms mean different things (成る and なる, 者 and もの), and adverbs hiragana-fukushi reads. */
15
17
  const DISTINCT = "orthographic-variant-distinct";
16
18
  const FUKUSHI = "hiragana-fukushi";
19
+ /** Lexicon: idioms written as noun, particle and verb (気をつける). The verb there is compared apart from the verb on its own. */
20
+ const IDIOM = "orthographic-variant-idiom";
17
21
  const patternsOf = (doc, id) => (doc.lexicons[id] ?? []).map((entry) => entry.pattern);
18
- /** Whether a stretch of the sentence is outside a quotation and outside the team's names, both of which keep their own spelling. */
22
+ /**
23
+ * Whether a stretch of the sentence is outside a quotation, the team's names and a reading in brackets (HTTP(えいちてぃーてぃーぴー)):
24
+ * the first two keep their own spelling, and a reading is not a spelling at all.
25
+ */
19
26
  const isOpenIn = (sentence, names) => {
20
- const quoted = quotedSpans(sentence.text, QUOTATION_MARKS);
27
+ const closed = [...quotedSpans(sentence.text, QUOTATION_MARKS), ...furiganaSpans(sentence.text)];
21
28
  const named = nameSpans(sentence.text, names);
22
- return (start, end) => !isWithinAny(quoted, { start, end }) && !touchesAny(named, start, end);
29
+ return (start, end) => !isWithinAny(closed, { start, end }) && !touchesAny(named, start, end);
23
30
  };
24
- const isHelper = (token, previous) => token.features?.["Bound"] === "Yes" || (previous?.pos === "SCONJ" && (previous.surface === "て" || previous.surface === "で"));
31
+ /** A verb's て-form the tokenizer read as a conjunction (追って at the head of a sentence): a kanji stem and て or で. Connectives (そして, それで) are kana. */
32
+ const TE_FORM_CONJUNCTION = /^\p{Script=Han}.*[てで]$/u;
33
+ /** After a て-form (見てみる). The tokenizer reads the て as a joining word, or the whole て-form as a conjunction (追って / みる). */
34
+ const followsTeForm = (previous) => (previous?.pos === "SCONJ" && (previous.surface === "て" || previous.surface === "で")) ||
35
+ (previous?.pos === "CCONJ" && TE_FORM_CONJUNCTION.test(previous.surface));
36
+ const isHelper = ({ token, previous }) => token.features?.["Bound"] === "Yes" || followsTeForm(previous);
37
+ const isTouching = (left, right) => left !== undefined && left.span.end === right.span.start;
38
+ const HIRAGANA_ONLY = /^[ぁ-ゖー]+$/u;
39
+ /** A kana noun written onto a noun (全員ぶん): a suffix, which may not be the free noun of the same reading (文). */
40
+ const isKanaSuffix = ({ token, previous }) => token.pos === "NOUN" && previous?.pos === "NOUN" && isTouching(previous, token) && HIRAGANA_ONLY.test(token.surface);
41
+ /** The verb of an idiom (気をつける): the noun, the particle and the verb's dictionary form are in the idiom lexicon. */
42
+ const isIdiomVerb = ({ token, previous, before }, idioms) => token.pos === "VERB" && previous?.pos === "ADP" && before !== undefined && idioms.has(`${before.surface}${previous.surface}${token.lemma ?? token.surface}`);
25
43
  /**
26
44
  * A helper verb or a dependent noun (見て下さい, その事) is written kana by many guides while the full word keeps its kanji (資料を下さい).
27
- * The two uses are compared apart, so a document that follows that convention is consistent. A suffix (業務用) is a third use:
28
- * it is not the dependent noun of the same reading (このように).
45
+ * The two uses are compared apart, so a document that follows that convention is consistent. A suffix (業務用, 全員ぶん) is a third use:
46
+ * it is not the dependent noun of the same reading (このように). The verb of an idiom (気をつける) is a fourth.
29
47
  */
30
- const useOf = (token, previous) => {
31
- if (!isHelper(token, previous))
48
+ const useOf = (word, idioms) => {
49
+ if (isIdiomVerb(word, idioms))
50
+ return "idiom";
51
+ if (isKanaSuffix(word))
52
+ return "suffix";
53
+ if (!isHelper(word))
32
54
  return "free";
33
- return token.pos === "NOUN" && token.features?.["NounType"] !== "Dependent" ? "suffix" : "bound";
55
+ return word.token.pos === "NOUN" && word.token.features?.["NounType"] !== "Dependent" ? "suffix" : "bound";
34
56
  };
35
- const readingKeyOf = (token, previous, skip) => {
57
+ /** One katakana and then kana that is not katakana (スる): no verb stem is one katakana long, as サボる and ググる are two. */
58
+ const ONE_KATAKANA_HEAD = /^\p{Script=Katakana}(?!\p{Script=Katakana})/u;
59
+ const KATAKANA_END = /\p{Script=Katakana}$/u;
60
+ /** A piece the tokenizer cut out of a katakana run (ミスっ read as ミ and スる): not a word of its own. */
61
+ const isCutFromKatakana = ({ token, previous }) => ONE_KATAKANA_HEAD.test(token.surface) && token.surface.length > 1 && isTouching(previous, token) && KATAKANA_END.test(previous?.surface ?? "");
62
+ const readingKeyOf = (word, { skip, idioms }) => {
63
+ const { token } = word;
36
64
  const lemma = token.lemma;
37
65
  if (!CONTENT.has(token.pos) || token.reading === undefined || lemma === undefined || !JAPANESE_WORD.test(lemma) || skip.has(lemma))
38
66
  return undefined;
39
67
  const reading = lemmaReading(token.surface, lemma, token.reading);
40
- if (reading === undefined || [...reading].length < MIN_READING || skip.has(reading))
68
+ if (reading === undefined || [...reading].length < MIN_READING || skip.has(reading) || isCutFromKatakana(word))
41
69
  return undefined;
42
- return `${token.pos}|${useOf(token, previous)}|${reading}`;
70
+ return `${token.pos}|${useOf(word, idioms)}|${reading}`;
43
71
  };
44
72
  /** Japanese words keyed by part of speech, use and the reading of the dictionary form, spelled as the dictionary form. */
45
- const readingWords = (sentence, isOpen, skip) => {
73
+ const readingWords = (sentence, isOpen, skips) => {
46
74
  const tokens = sentence.tokens ?? [];
47
75
  return tokens.flatMap((token, at) => {
48
- const key = readingKeyOf(token, tokens[at - 1], skip);
76
+ const key = readingKeyOf({ token, previous: tokens[at - 1], before: tokens[at - 2] }, skips);
49
77
  const local = token.span.start - sentence.span.start;
50
78
  if (key === undefined || token.lemma === undefined || !isOpen(local, local + token.surface.length))
51
79
  return [];
@@ -89,18 +117,22 @@ const ADDRESS_NEIGHBOUR = /[.@/\\_]/u;
89
117
  const isPartOfAddress = (text, start, end) => ADDRESS_NEIGHBOUR.test(text.charAt(start - 1)) || (ADDRESS_NEIGHBOUR.test(text.charAt(end)) && /\w/u.test(text.charAt(end + 1)));
90
118
  /**
91
119
  * Latin words keyed without hyphens and case (e-mail and email, GitHub and Github). A word in capitals only (TEAMS, MAY) is
92
- * emphasis or an acronym, not a spelling of the word, and is left out.
120
+ * emphasis or an acronym, not a spelling of the word, and is left out; so are a name in capitals with an ending (SENDs) and
121
+ * the letters of an acronym of the sentence picked out (CLImatology for CLIPER).
93
122
  */
94
- const latinWords = (sentence, isOpen, skip) => [...sentence.text.matchAll(LATIN_WORD)].flatMap((match) => {
95
- const word = match[0];
96
- const plain = word.toLowerCase().replaceAll("-", "");
97
- const end = match.index + word.length;
98
- if (plain.length < MIN_LATIN_KEY || !LOWER.test(word) || skip.has(word.toLowerCase()))
99
- return [];
100
- if (isPartOfAddress(sentence.text, match.index, end) || !isOpen(match.index, end))
101
- return [];
102
- return [{ key: `latin|${plain}`, spelling: latinSpelling(word), shown: word, sentence, offset: sentence.span.start + match.index }];
103
- });
123
+ const latinWords = (sentence, isOpen, skip) => {
124
+ const acronyms = acronymsIn(sentence.text);
125
+ return [...sentence.text.matchAll(LATIN_WORD)].flatMap((match) => {
126
+ const word = match[0];
127
+ const plain = word.toLowerCase().replaceAll("-", "");
128
+ const end = match.index + word.length;
129
+ if (plain.length < MIN_LATIN_KEY || !LOWER.test(word) || isCapitalsNotSpelling(word, acronyms) || skip.has(word.toLowerCase()))
130
+ return [];
131
+ if (isPartOfAddress(sentence.text, match.index, end) || !isOpen(match.index, end))
132
+ return [];
133
+ return [{ key: `latin|${plain}`, spelling: latinSpelling(word), shown: word, sentence, offset: sentence.span.start + match.index }];
134
+ });
135
+ };
104
136
  /** How the usual spelling is written where it first appears (gitHub is shown GitHub). */
105
137
  const shownUsual = (words, { word, usual }) => words.find((other) => other.key === word.key && other.spelling === usual)?.shown ?? usual;
106
138
  const findingOf = (words, odd) => ({
@@ -117,11 +149,11 @@ const findingOf = (words, odd) => ({
117
149
  * document writes less is pointed at. No way is called right; limit is the largest share, in percent, the minority may have.
118
150
  */
119
151
  export const orthographicVariant = (doc, options) => {
120
- const skip = new Set([...patternsOf(doc, DISTINCT), ...patternsOf(doc, FUKUSHI)]);
152
+ const skips = { skip: new Set([...patternsOf(doc, DISTINCT), ...patternsOf(doc, FUKUSHI)]), idioms: new Set(patternsOf(doc, IDIOM)) };
121
153
  const placed = doc.sentences.map((sentence) => ({ sentence, isOpen: isOpenIn(sentence, doc.names ?? []) }));
122
- const reading = byKanji(placed.flatMap(({ sentence, isOpen }) => readingWords(sentence, isOpen, skip)));
154
+ const reading = byKanji(placed.flatMap(({ sentence, isOpen }) => readingWords(sentence, isOpen, skips)));
123
155
  const katakana = placed.flatMap(({ sentence, isOpen }) => katakanaWords(sentence, isOpen));
124
- const latin = placed.flatMap(({ sentence, isOpen }) => latinWords(sentence, isOpen, skip));
156
+ const latin = placed.flatMap(({ sentence, isOpen }) => latinWords(sentence, isOpen, skips.skip));
125
157
  const odd = [reading, katakana, latin].flatMap((words) => oddSpellings(words, options.limit));
126
158
  const all = [...reading, ...katakana, ...latin];
127
159
  // A word can be odd by its reading and by its katakana key at once; one place is said once.
@@ -1 +1 @@
1
- {"version":3,"file":"orthographic-variant.js","sourceRoot":"","sources":["../../src/detectors/orthographic-variant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orthographic-variant.js","sourceRoot":"","sources":["../../src/detectors/orthographic-variant.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Detector } from "../plugin.ts";
2
+ export declare const partyRoleName: Detector;
3
+ //# sourceMappingURL=party-role-name.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"party-role-name.d.ts","sourceRoot":"","sources":["../../src/detectors/party-role-name.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAA0B,MAAM,cAAc,CAAC;AAUrE,eAAO,MAAM,aAAa,EAAE,QA2B3B,CAAC"}
@@ -0,0 +1,35 @@
1
+ // A party called by a role word (受託者, the Vendor) after the contract gave it a short name (乙, the "Supplier"). The
2
+ // definitions come from the document's structure tree; the role words, short names and company forms from the language
3
+ // package's word lists (party-role, party-short-name, company-form).
4
+ import { definedTerms } from "../structure/definition-use.js";
5
+ import { partiesOf, roleUses } from "../structure/party-role.js";
6
+ import { quoteAt } from "./structure-tree.js";
7
+ const patternsOf = (doc, lexicon) => (doc.lexicons[lexicon] ?? []).map((entry) => entry.pattern);
8
+ /** The sentence holding a definition: the role words in the sentences that name the parties are part of naming them. */
9
+ const sentenceAt = (doc, offset) => doc.sentences.find((sentence) => sentence.span.start <= offset && offset < sentence.span.end)?.span ?? { start: offset, end: offset };
10
+ const NAME_SEPARATOR = { ja: "、" };
11
+ export const partyRoleName = (doc) => {
12
+ if (doc.structure === undefined)
13
+ return [];
14
+ const terms = definedTerms(doc.structure);
15
+ const words = { roles: patternsOf(doc, "party-role"), shortNames: patternsOf(doc, "party-short-name"), companyForms: patternsOf(doc, "company-form") };
16
+ const parties = partiesOf(doc.source, terms, words);
17
+ if (parties.length === 0)
18
+ return [];
19
+ // From the sentence that names the first party: a party named later (a subcontractor ("Recipient")) does not hide the role words before it.
20
+ const naming = parties.map((party) => sentenceAt(doc, party.end - 1));
21
+ const after = Math.min(...naming.map((sentence) => sentence.end));
22
+ const names = [...new Set(parties.map((party) => party.term))].join(NAME_SEPARATOR[doc.language] ?? ", ");
23
+ const texts = doc.sentences.map((sentence) => ({ start: sentence.span.start, text: sentence.text }));
24
+ return roleUses(doc.source, texts, words.roles, terms.map((term) => term.term), after)
25
+ .filter((use) => !naming.some((sentence) => sentence.start <= use.offset && use.offset < sentence.end))
26
+ .map((use) => ({
27
+ rule: "party-role-name",
28
+ severity: "info",
29
+ line: 0,
30
+ column: 0,
31
+ quote: quoteAt(doc.source, use.offset),
32
+ values: { role: use.role, names, offset: use.offset },
33
+ }));
34
+ };
35
+ //# sourceMappingURL=party-role-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"party-role-name.js","sourceRoot":"","sources":["../../src/detectors/party-role-name.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { Detector, LexiconEntry } from "../plugin.ts";
2
+ export type QuoteText = {
3
+ readonly start: number;
4
+ readonly text: string;
5
+ };
6
+ export type QuoteParagraph = {
7
+ readonly source: string;
8
+ readonly sentences: readonly QuoteText[];
9
+ };
10
+ export type UnsourcedQuote = {
11
+ readonly offset: number;
12
+ readonly quote: string;
13
+ };
14
+ /** Each quotation given to someone, in a paragraph that names no source. cues: the word list quote-attribution. */
15
+ export declare const unsourcedQuotes: (paragraphs: readonly QuoteParagraph[], cues: readonly LexiconEntry[]) => UnsourcedQuote[];
16
+ export declare const quoteWithoutSource: Detector;
17
+ //# sourceMappingURL=quote-without-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quote-without-source.d.ts","sourceRoot":"","sources":["../../src/detectors/quote-without-source.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAW,YAAY,EAAiB,MAAM,cAAc,CAAC;AAEnF,MAAM,MAAM,SAAS,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1E,MAAM,MAAM,cAAc,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,SAAS,EAAE,CAAA;CAAE,CAAC;AAEnG,MAAM,MAAM,cAAc,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AA4DjF,mHAAmH;AACnH,eAAO,MAAM,eAAe,GAAI,YAAY,SAAS,cAAc,EAAE,EAAE,MAAM,SAAS,YAAY,EAAE,KAAG,cAAc,EACyC,CAAC;AAE/J,eAAO,MAAM,kBAAkB,EAAE,QAc5B,CAAC"}
@@ -0,0 +1,64 @@
1
+ // A quotation the text gives to someone (「…」と述べている, according to X, "…") in a paragraph that names no source for it:
2
+ // no link, no footnote or numbered citation, no year in brackets. Whether the words are really that person's is for
3
+ // `chaff cite` against the source; this only says that there is nothing to check them against. The words that give a
4
+ // quotation to someone come from the language package's word list quote-attribution. Pure.
5
+ import { QUOTATION_MARKS, quotedSpans } from "../quoted-span.js";
6
+ /** Shorter than this, a quotation is a term or a label (「保存」, "Save"), not someone's words. */
7
+ const MIN_QUOTE_CHARS = 10;
8
+ /**
9
+ * A link, a bare URL, a footnote mark, a numbered citation ([3]) or a year that ends a bracket as a citation's does: alone
10
+ * ((1975), (1999年)), after a comma ((架空の本、1975年)) or after a name ((Brooks 1975)). Not (port 2000).
11
+ */
12
+ const SOURCE_MARKS = [
13
+ /\]\(/u,
14
+ /https?:\/\//u,
15
+ /\[\^[^\]\s]+\]/u,
16
+ /\[\d{1,3}(?:[,,、–-]\s*\d{1,3})*\]/u,
17
+ /[((](?:1[5-9]|20)\d\d[a-z]?年?[))]/u,
18
+ /[((][^()()\n]*[,、,]\s*(?:1[5-9]|20)\d\d[a-z]?年?[))]/u,
19
+ /[((]\p{Lu}[^()()\n]*\s(?:1[5-9]|20)\d\d[a-z]?[))]/u,
20
+ ];
21
+ /** How far before a quotation a cue may end ("According to the study, “…”", 先輩によれば「…」). */
22
+ const CUE_REACH_BEFORE = 40;
23
+ /** How far after a quotation a cue may start: a space ("“…,” said"), or none (「…」と述べた, not 「…」などと書く). */
24
+ const CUE_REACH_AFTER = 1;
25
+ const LATIN = /\p{Script=Latin}/u;
26
+ const LETTER = /\p{L}/u;
27
+ const namesSource = (paragraph) => SOURCE_MARKS.some((mark) => mark.test(paragraph));
28
+ const escaped = (word) => word.replace(/[.*+?^${}()|[\]\\]/gu, "\\$&");
29
+ /**
30
+ * Where the cue stands in the sentence, ignoring case, in the sentence's own positions (lowercasing first would move them:
31
+ * İ becomes two units). An English cue is not read inside a longer word (says in essays).
32
+ */
33
+ const cueStarts = (text, cue) => {
34
+ if (cue === "")
35
+ return [];
36
+ return [...text.matchAll(new RegExp(escaped(cue), "giu"))]
37
+ .map((match) => match.index)
38
+ .filter((at) => !LATIN.test(cue) || (!LETTER.test(text.charAt(at - 1)) && !LETTER.test(text.charAt(at + cue.length))));
39
+ };
40
+ /** A cue just before the quotation's opening mark, or just after its closing mark. position says which side it may stand on. */
41
+ const isAttributed = (text, quoted, cues) => cues.some((cue) => cueStarts(text, cue.pattern).some((at) => {
42
+ const before = cue.position !== "after" && at + cue.pattern.length <= quoted.start - 1 && at + cue.pattern.length >= quoted.start - 1 - CUE_REACH_BEFORE;
43
+ const after = cue.position !== "before" && at >= quoted.end + 1 && at <= quoted.end + 1 + CUE_REACH_AFTER;
44
+ return before || after;
45
+ }));
46
+ const quotesIn = (sentence, cues) => {
47
+ return quotedSpans(sentence.text, QUOTATION_MARKS)
48
+ .filter((span) => [...sentence.text.slice(span.start, span.end).trim()].length >= MIN_QUOTE_CHARS && isAttributed(sentence.text, span, cues))
49
+ .map((span) => ({ offset: sentence.start + span.start, quote: sentence.text.slice(span.start, span.end).trim() }));
50
+ };
51
+ /** Each quotation given to someone, in a paragraph that names no source. cues: the word list quote-attribution. */
52
+ export const unsourcedQuotes = (paragraphs, cues) => paragraphs.filter((paragraph) => !namesSource(paragraph.source)).flatMap((paragraph) => paragraph.sentences.flatMap((sentence) => quotesIn(sentence, cues)));
53
+ export const quoteWithoutSource = (doc) => unsourcedQuotes(doc.paragraphs.map((paragraph) => ({
54
+ source: doc.source.slice(paragraph.span.start, paragraph.span.end),
55
+ sentences: paragraph.sentences.map((sentence) => ({ start: sentence.span.start, text: sentence.text })),
56
+ })), doc.lexicons["quote-attribution"] ?? []).map((hit) => ({
57
+ rule: "quote-without-source",
58
+ severity: "info",
59
+ line: 0,
60
+ column: 0,
61
+ quote: hit.quote,
62
+ values: { quote: hit.quote, offset: hit.offset },
63
+ }));
64
+ //# sourceMappingURL=quote-without-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quote-without-source.js","sourceRoot":"","sources":["../../src/detectors/quote-without-source.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ const inputOf = (doc) => {
10
10
  return {
11
11
  source: doc.source,
12
12
  references: inDocumentOrder(tree).filter((node) => node.kind === "reference" && node.attrs["document"] === undefined),
13
- targetOf: referenceResolver(tree),
13
+ targetOf: referenceResolver(tree, doc.source),
14
14
  words: {
15
15
  asides: patternsOf(doc, "reference-aside"),
16
16
  topicLinks: patternsOf(doc, "reference-topic-link"),
@@ -1 +1 @@
1
- {"version":3,"file":"reference-text.js","sourceRoot":"","sources":["../../src/detectors/reference-text.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAuB,MAAM,wBAAwB,CAAC;AACjG,OAAO,EAAE,eAAe,EAAE,WAAW,EAAuB,MAAM,gCAAgC,CAAC;AACnG,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,MAAM,UAAU,GAAG,CAAC,GAAkB,EAAE,EAAU,EAAY,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAExH,6DAA6D;AAC7D,MAAM,OAAO,GAAG,CAAC,GAAkB,EAA8B,EAAE;IACjE,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC;IAC3B,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACzC,OAAO;QACL,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,UAAU,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,SAAS,CAAC;QACrH,QAAQ,EAAE,iBAAiB,CAAC,IAAI,CAAC;QACjC,KAAK,EAAE;YACL,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,iBAAiB,CAAC;YAC1C,UAAU,EAAE,UAAU,CAAC,GAAG,EAAE,sBAAsB,CAAC;YACnD,WAAW,EAAE,UAAU,CAAC,GAAG,EAAE,uBAAuB,CAAC;SACtD;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,UAAU,GACd,CAAC,IAAY,EAAE,QAAqD,EAAY,EAAE,CAClF,CAAC,GAAG,EAAa,EAAE;IACjB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3B,OAAO,KAAK,KAAK,SAAS;QACxB,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC9B,IAAI;YACJ,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE,CAAC;YACP,MAAM,EAAE,CAAC;YACT,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACxC,MAAM,EAAE,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE;SAClD,CAAC,CAAC,CAAC;AACV,CAAC,CAAC;AAEJ,kCAAkC;AAClC,MAAM,CAAC,MAAM,sBAAsB,GAAa,UAAU,CAAC,0BAA0B,EAAE,eAAe,CAAC,CAAC;AAExG,gCAAgC;AAChC,MAAM,CAAC,MAAM,qBAAqB,GAAa,UAAU,CAAC,yBAAyB,EAAE,WAAW,CAAC,CAAC"}
1
+ {"version":3,"file":"reference-text.js","sourceRoot":"","sources":["../../src/detectors/reference-text.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAuB,MAAM,wBAAwB,CAAC;AACjG,OAAO,EAAE,eAAe,EAAE,WAAW,EAAuB,MAAM,gCAAgC,CAAC;AACnG,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,MAAM,UAAU,GAAG,CAAC,GAAkB,EAAE,EAAU,EAAY,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAExH,6DAA6D;AAC7D,MAAM,OAAO,GAAG,CAAC,GAAkB,EAA8B,EAAE;IACjE,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC;IAC3B,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACzC,OAAO;QACL,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,UAAU,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,SAAS,CAAC;QACrH,QAAQ,EAAE,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC;QAC7C,KAAK,EAAE;YACL,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,iBAAiB,CAAC;YAC1C,UAAU,EAAE,UAAU,CAAC,GAAG,EAAE,sBAAsB,CAAC;YACnD,WAAW,EAAE,UAAU,CAAC,GAAG,EAAE,uBAAuB,CAAC;SACtD;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,UAAU,GACd,CAAC,IAAY,EAAE,QAAqD,EAAY,EAAE,CAClF,CAAC,GAAG,EAAa,EAAE;IACjB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3B,OAAO,KAAK,KAAK,SAAS;QACxB,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC9B,IAAI;YACJ,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE,CAAC;YACP,MAAM,EAAE,CAAC;YACT,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACxC,MAAM,EAAE,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE;SAClD,CAAC,CAAC,CAAC;AACV,CAAC,CAAC;AAEJ,kCAAkC;AAClC,MAAM,CAAC,MAAM,sBAAsB,GAAa,UAAU,CAAC,0BAA0B,EAAE,eAAe,CAAC,CAAC;AAExG,gCAAgC;AAChC,MAAM,CAAC,MAAM,qBAAqB,GAAa,UAAU,CAAC,yBAAyB,EAAE,WAAW,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Detector } from "../../plugin.ts";
2
+ export declare const detector: Detector;
3
+ //# sourceMappingURL=change-rate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"change-rate.d.ts","sourceRoot":"","sources":["../../../src/detectors/registry/change-rate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,eAAO,MAAM,QAAQ,EAAE,QAAqB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { changeRate } from "../change-rate.js";
2
+ export const detector = changeRate;
3
+ //# sourceMappingURL=change-rate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"change-rate.js","sourceRoot":"","sources":["../../../src/detectors/registry/change-rate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,CAAC,MAAM,QAAQ,GAAa,UAAU,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Detector } from "../../plugin.ts";
2
+ export declare const detector: Detector;
3
+ //# sourceMappingURL=party-role-name.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"party-role-name.d.ts","sourceRoot":"","sources":["../../../src/detectors/registry/party-role-name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,eAAO,MAAM,QAAQ,EAAE,QAAwB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { partyRoleName } from "../party-role-name.js";
2
+ export const detector = partyRoleName;
3
+ //# sourceMappingURL=party-role-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"party-role-name.js","sourceRoot":"","sources":["../../../src/detectors/registry/party-role-name.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,MAAM,CAAC,MAAM,QAAQ,GAAa,aAAa,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Detector } from "../../plugin.ts";
2
+ export declare const detector: Detector;
3
+ //# sourceMappingURL=quote-without-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quote-without-source.d.ts","sourceRoot":"","sources":["../../../src/detectors/registry/quote-without-source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,eAAO,MAAM,QAAQ,EAAE,QAA6B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { quoteWithoutSource } from "../quote-without-source.js";
2
+ export const detector = quoteWithoutSource;
3
+ //# sourceMappingURL=quote-without-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quote-without-source.js","sourceRoot":"","sources":["../../../src/detectors/registry/quote-without-source.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,MAAM,CAAC,MAAM,QAAQ,GAAa,kBAAkB,CAAC"}