@mailwoman/corpus 9.2.0 → 9.4.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 (1261) hide show
  1. package/README.md +22 -22
  2. package/data/PROVENANCE.md +7 -7
  3. package/lib/adapters/ban/adapter.ts +190 -0
  4. package/lib/adapters/ban/street-decompose.ts +66 -0
  5. package/lib/adapters/fcc-bdc/adapter.ts +174 -0
  6. package/lib/adapters/geonames/adapter.ts +199 -0
  7. package/lib/adapters/geonames-postal/adapter.ts +122 -0
  8. package/lib/adapters/gnaf/adapter.ts +149 -0
  9. package/lib/adapters/gnaf/assemble.ts +225 -0
  10. package/lib/adapters/index.ts +153 -0
  11. package/lib/adapters/openaddresses/adapter.ts +251 -0
  12. package/lib/adapters/overture/adapter.ts +162 -0
  13. package/lib/adapters/state-hi-schools/adapter.ts +170 -0
  14. package/lib/adapters/state-hi-schools/workbook.ts +35 -0
  15. package/lib/adapters/synth-po-box/adapter.ts +204 -0
  16. package/lib/adapters/tiger/adapter.ts +252 -0
  17. package/lib/adapters/tiger/street-decompose.ts +83 -0
  18. package/lib/adapters/usgov-hrsa-fqhc/adapter.ts +167 -0
  19. package/lib/adapters/usgov-imls-pls/adapter.ts +143 -0
  20. package/lib/adapters/usgov-irs-bmf/adapter.ts +151 -0
  21. package/lib/adapters/usgov-nad/adapter.ts +334 -0
  22. package/lib/adapters/usgov-nppes/adapter.ts +151 -0
  23. package/lib/adapters/usgov-samhsa-treatment-locator/adapter.ts +193 -0
  24. package/lib/adapters/utils/index.ts +307 -0
  25. package/lib/adapters/wof-admin-jp/adapter.ts +214 -0
  26. package/lib/adapters/wof-admin-json/adapter.ts +231 -0
  27. package/lib/adapters/wof-json-rows.ts +129 -0
  28. package/lib/adapters/wof-postalcode-json/adapter.ts +176 -0
  29. package/lib/build.ts +378 -0
  30. package/lib/env.ts +50 -0
  31. package/lib/index.ts +13 -0
  32. package/lib/recipes/anchor-absorption.ts +101 -0
  33. package/lib/recipes/bare-country.ts +95 -0
  34. package/lib/recipes/boundary-stress.ts +102 -0
  35. package/lib/recipes/cn-organizational-units.ts +199 -0
  36. package/lib/recipes/country-balanced.ts +510 -0
  37. package/lib/recipes/cz-pcfirst-preposition.ts +112 -0
  38. package/lib/recipes/fr-admin-split.ts +243 -0
  39. package/lib/recipes/fr-bare-street.ts +171 -0
  40. package/lib/recipes/fr-fragment.ts +334 -0
  41. package/lib/recipes/fr-lieudit.ts +301 -0
  42. package/lib/recipes/fr-order.ts +246 -0
  43. package/lib/recipes/german.ts +360 -0
  44. package/lib/recipes/house-venue.ts +93 -0
  45. package/lib/recipes/index.ts +97 -0
  46. package/lib/recipes/intersection.ts +619 -0
  47. package/lib/recipes/locale.ts +600 -0
  48. package/lib/recipes/nl-postcode.ts +117 -0
  49. package/lib/recipes/no-fragment.ts +213 -0
  50. package/lib/recipes/no-street-led.ts +135 -0
  51. package/lib/recipes/no-street.ts +91 -0
  52. package/lib/recipes/po-box-cedex.ts +976 -0
  53. package/lib/recipes/po-box.ts +124 -0
  54. package/lib/recipes/reviewed-postcode-tail.ts +190 -0
  55. package/lib/recipes/scaffold.ts +468 -0
  56. package/lib/recipes/si-bare-village.ts +99 -0
  57. package/lib/recipes/street-affix.ts +805 -0
  58. package/lib/recipes/street-bare.ts +102 -0
  59. package/lib/recipes/street.ts +83 -0
  60. package/lib/recipes/sub-venue-sources.ts +878 -0
  61. package/lib/recipes/sub-venue.ts +998 -0
  62. package/lib/recipes/trailing-region.ts +178 -0
  63. package/lib/recipes/unit.ts +304 -0
  64. package/lib/runner.ts +312 -0
  65. package/lib/synthesizers/anchor-absorption.ts +288 -0
  66. package/lib/synthesizers/boundary-stress.ts +532 -0
  67. package/lib/synthesizers/german.ts +260 -0
  68. package/lib/synthesizers/house-venue.ts +308 -0
  69. package/lib/synthesizers/intersection.ts +233 -0
  70. package/lib/synthesizers/no-street.ts +327 -0
  71. package/lib/synthesizers/po-box.ts +323 -0
  72. package/lib/synthesizers/street.ts +269 -0
  73. package/lib/synthesizers/utils.ts +993 -0
  74. package/lib/test-kit/corpus-recipe.ts +86 -0
  75. package/lib/test-kit/index.ts +100 -0
  76. package/lib/tools/align-slice.ts +68 -0
  77. package/lib/tools/audit.ts +403 -0
  78. package/lib/tools/corpus-stats.ts +136 -0
  79. package/lib/tools/fetch/acra-sg.ts +174 -0
  80. package/lib/tools/fetch/ban.ts +289 -0
  81. package/lib/tools/fetch/download.ts +477 -0
  82. package/lib/tools/fetch/gcis-tw.ts +175 -0
  83. package/lib/tools/fetch/geonames-dump.ts +257 -0
  84. package/lib/tools/fetch/geonames-postal.ts +180 -0
  85. package/lib/tools/fetch/houjin-jp.ts +135 -0
  86. package/lib/tools/fetch/hrsa.ts +59 -0
  87. package/lib/tools/fetch/imls-pls.ts +149 -0
  88. package/lib/tools/fetch/index.ts +174 -0
  89. package/lib/tools/fetch/juso-kr.ts +165 -0
  90. package/lib/tools/fetch/localdata-kr.ts +194 -0
  91. package/lib/tools/fetch/nad.ts +341 -0
  92. package/lib/tools/fetch/nppes.ts +165 -0
  93. package/lib/tools/fetch/openaddresses.ts +347 -0
  94. package/lib/tools/fetch/ourairports.ts +170 -0
  95. package/lib/tools/fetch/ppd.ts +121 -0
  96. package/lib/tools/fetch/state-hi-schools.ts +161 -0
  97. package/lib/tools/fetch/state-sources.ts +146 -0
  98. package/lib/tools/fetch/tiger-full.ts +308 -0
  99. package/lib/tools/fetch/wikidata-subvenue.ts +384 -0
  100. package/lib/tools/golden-expand.ts +574 -0
  101. package/lib/tools/golden-promote.ts +337 -0
  102. package/lib/tools/golden-relabel-street.ts +686 -0
  103. package/lib/tools/index.ts +28 -0
  104. package/lib/tools/ingest-csv.ts +378 -0
  105. package/lib/tools/jsonl-to-parquet.ts +207 -0
  106. package/lib/tools/lint-slice-vocab.ts +388 -0
  107. package/lib/tools/lint-slice.ts +496 -0
  108. package/lib/tools/overlay-manifest.ts +148 -0
  109. package/lib/tools/overture-subvenue.ts +209 -0
  110. package/lib/tools/postcode-triples.ts +363 -0
  111. package/lib/tools/slice-kryptonite.ts +137 -0
  112. package/lib/tools/slice-translit.ts +218 -0
  113. package/lib/tools/sub-venue/harvest.ts +234 -0
  114. package/lib/tools/sub-venue/head-nouns.ts +245 -0
  115. package/lib/tools/sub-venue/surfaces.ts +95 -0
  116. package/lib/tools/sub-venue/table.ts +281 -0
  117. package/lib/tools/sub-venue/wikidata.ts +85 -0
  118. package/lib/tools/sub-venue-lexicon.ts +429 -0
  119. package/lib/tools/sub-venue-promotions.ts +330 -0
  120. package/lib/types.ts +247 -0
  121. package/lib/utils/align.ts +330 -0
  122. package/lib/utils/golden.ts +189 -0
  123. package/lib/utils/index.ts +14 -0
  124. package/lib/utils/parquet.ts +582 -0
  125. package/lib/utils/slice-stats.ts +95 -0
  126. package/lib/utils/split.ts +279 -0
  127. package/lib/utils/tokenize.ts +120 -0
  128. package/lib/utils/wof-json.ts +247 -0
  129. package/out/adapters/ban/adapter.d.ts.map +1 -0
  130. package/out/adapters/ban/adapter.js +149 -0
  131. package/out/adapters/ban/adapter.js.map +1 -0
  132. package/out/adapters/ban/street-decompose.d.ts.map +1 -0
  133. package/out/adapters/ban/street-decompose.js +51 -0
  134. package/out/adapters/ban/street-decompose.js.map +1 -0
  135. package/out/adapters/fcc-bdc/adapter.d.ts.map +1 -0
  136. package/out/adapters/fcc-bdc/adapter.js +144 -0
  137. package/out/adapters/fcc-bdc/adapter.js.map +1 -0
  138. package/out/adapters/geonames/adapter.d.ts.map +1 -0
  139. package/out/adapters/geonames/adapter.js +176 -0
  140. package/out/adapters/geonames/adapter.js.map +1 -0
  141. package/out/adapters/geonames-postal/adapter.d.ts +54 -0
  142. package/out/adapters/geonames-postal/adapter.d.ts.map +1 -0
  143. package/out/adapters/geonames-postal/adapter.js +107 -0
  144. package/out/adapters/geonames-postal/adapter.js.map +1 -0
  145. package/out/adapters/gnaf/adapter.d.ts +49 -0
  146. package/out/adapters/gnaf/adapter.d.ts.map +1 -0
  147. package/out/adapters/gnaf/adapter.js +124 -0
  148. package/out/adapters/gnaf/adapter.js.map +1 -0
  149. package/out/adapters/gnaf/assemble.d.ts +65 -0
  150. package/out/adapters/gnaf/assemble.d.ts.map +1 -0
  151. package/out/adapters/gnaf/assemble.js +154 -0
  152. package/out/adapters/gnaf/assemble.js.map +1 -0
  153. package/out/adapters/index.d.ts +51 -0
  154. package/out/adapters/index.d.ts.map +1 -0
  155. package/out/adapters/index.js +95 -0
  156. package/out/adapters/index.js.map +1 -0
  157. package/out/adapters/openaddresses/adapter.d.ts.map +1 -0
  158. package/out/adapters/openaddresses/adapter.js +186 -0
  159. package/out/adapters/openaddresses/adapter.js.map +1 -0
  160. package/out/adapters/overture/adapter.d.ts +48 -0
  161. package/out/adapters/overture/adapter.d.ts.map +1 -0
  162. package/out/adapters/overture/adapter.js +125 -0
  163. package/out/adapters/overture/adapter.js.map +1 -0
  164. package/out/adapters/state-hi-schools/adapter.d.ts +46 -0
  165. package/out/adapters/state-hi-schools/adapter.d.ts.map +1 -0
  166. package/out/adapters/state-hi-schools/adapter.js +145 -0
  167. package/out/adapters/state-hi-schools/adapter.js.map +1 -0
  168. package/out/adapters/state-hi-schools/workbook.d.ts +29 -0
  169. package/out/adapters/state-hi-schools/workbook.d.ts.map +1 -0
  170. package/out/adapters/state-hi-schools/workbook.js +20 -0
  171. package/out/adapters/state-hi-schools/workbook.js.map +1 -0
  172. package/out/adapters/state-ia-contractors/adapter.d.ts.map +1 -0
  173. package/out/adapters/state-ia-contractors/adapter.js.map +1 -0
  174. package/out/adapters/state-ny-notaries/adapter.d.ts.map +1 -0
  175. package/out/adapters/state-ny-notaries/adapter.js.map +1 -0
  176. package/out/adapters/state-tx-notaries/adapter.d.ts.map +1 -0
  177. package/out/adapters/state-tx-notaries/adapter.js.map +1 -0
  178. package/out/adapters/synth-po-box/adapter.d.ts.map +1 -0
  179. package/out/adapters/synth-po-box/adapter.js +140 -0
  180. package/out/adapters/synth-po-box/adapter.js.map +1 -0
  181. package/out/adapters/tiger/adapter.d.ts +55 -0
  182. package/out/adapters/tiger/adapter.d.ts.map +1 -0
  183. package/out/adapters/tiger/adapter.js +201 -0
  184. package/out/adapters/tiger/adapter.js.map +1 -0
  185. package/out/adapters/tiger/street-decompose.d.ts.map +1 -0
  186. package/out/adapters/tiger/street-decompose.js +68 -0
  187. package/out/adapters/tiger/street-decompose.js.map +1 -0
  188. package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts +56 -0
  189. package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts.map +1 -0
  190. package/out/adapters/usgov-hrsa-fqhc/adapter.js +132 -0
  191. package/out/adapters/usgov-hrsa-fqhc/adapter.js.map +1 -0
  192. package/out/adapters/usgov-imls-pls/adapter.d.ts +36 -0
  193. package/out/adapters/usgov-imls-pls/adapter.d.ts.map +1 -0
  194. package/out/adapters/usgov-imls-pls/adapter.js +114 -0
  195. package/out/adapters/usgov-imls-pls/adapter.js.map +1 -0
  196. package/out/adapters/usgov-irs-bmf/adapter.d.ts +37 -0
  197. package/out/adapters/usgov-irs-bmf/adapter.d.ts.map +1 -0
  198. package/out/adapters/usgov-irs-bmf/adapter.js +120 -0
  199. package/out/adapters/usgov-irs-bmf/adapter.js.map +1 -0
  200. package/out/adapters/usgov-nad/adapter.d.ts +48 -0
  201. package/out/adapters/usgov-nad/adapter.d.ts.map +1 -0
  202. package/out/adapters/usgov-nad/adapter.js +249 -0
  203. package/out/adapters/usgov-nad/adapter.js.map +1 -0
  204. package/out/adapters/usgov-nppes/adapter.d.ts.map +1 -0
  205. package/out/adapters/usgov-nppes/adapter.js +118 -0
  206. package/out/adapters/usgov-nppes/adapter.js.map +1 -0
  207. package/out/adapters/usgov-samhsa-treatment-locator/adapter.d.ts.map +1 -0
  208. package/out/adapters/usgov-samhsa-treatment-locator/adapter.js +154 -0
  209. package/out/adapters/usgov-samhsa-treatment-locator/adapter.js.map +1 -0
  210. package/out/adapters/utils/index.d.ts +191 -0
  211. package/out/adapters/utils/index.d.ts.map +1 -0
  212. package/out/adapters/utils/index.js +206 -0
  213. package/out/adapters/utils/index.js.map +1 -0
  214. package/out/adapters/wof-admin-jp/adapter.d.ts.map +1 -0
  215. package/out/adapters/wof-admin-jp/adapter.js +161 -0
  216. package/out/adapters/wof-admin-jp/adapter.js.map +1 -0
  217. package/out/adapters/wof-admin-json/adapter.d.ts +79 -0
  218. package/out/adapters/wof-admin-json/adapter.d.ts.map +1 -0
  219. package/out/adapters/wof-admin-json/adapter.js +197 -0
  220. package/out/adapters/wof-admin-json/adapter.js.map +1 -0
  221. package/out/adapters/wof-json-rows.d.ts +62 -0
  222. package/out/adapters/wof-json-rows.d.ts.map +1 -0
  223. package/out/adapters/wof-json-rows.js +83 -0
  224. package/out/adapters/wof-json-rows.js.map +1 -0
  225. package/out/adapters/wof-postalcode-json/adapter.d.ts +65 -0
  226. package/out/adapters/wof-postalcode-json/adapter.d.ts.map +1 -0
  227. package/out/adapters/wof-postalcode-json/adapter.js +151 -0
  228. package/out/adapters/wof-postalcode-json/adapter.js.map +1 -0
  229. package/out/build.d.ts +132 -0
  230. package/out/build.d.ts.map +1 -0
  231. package/out/build.js +245 -0
  232. package/out/build.js.map +1 -0
  233. package/out/codex/us-fips-state.d.ts.map +1 -0
  234. package/out/codex/us-fips-state.js.map +1 -0
  235. package/out/env.d.ts +46 -0
  236. package/out/env.d.ts.map +1 -0
  237. package/out/env.js +46 -0
  238. package/out/env.js.map +1 -0
  239. package/out/index.d.ts +13 -0
  240. package/out/index.d.ts.map +1 -0
  241. package/out/index.js +13 -0
  242. package/out/index.js.map +1 -0
  243. package/out/recipes/anchor-absorption.d.ts +20 -0
  244. package/out/recipes/anchor-absorption.d.ts.map +1 -0
  245. package/out/recipes/anchor-absorption.js +82 -0
  246. package/out/recipes/anchor-absorption.js.map +1 -0
  247. package/out/recipes/bare-country.d.ts +25 -0
  248. package/out/recipes/bare-country.d.ts.map +1 -0
  249. package/out/recipes/bare-country.js +88 -0
  250. package/out/recipes/bare-country.js.map +1 -0
  251. package/out/recipes/boundary-stress.d.ts +20 -0
  252. package/out/recipes/boundary-stress.d.ts.map +1 -0
  253. package/out/recipes/boundary-stress.js +84 -0
  254. package/out/recipes/boundary-stress.js.map +1 -0
  255. package/out/recipes/cn-organizational-units.d.ts +36 -0
  256. package/out/recipes/cn-organizational-units.d.ts.map +1 -0
  257. package/out/recipes/cn-organizational-units.js +159 -0
  258. package/out/recipes/cn-organizational-units.js.map +1 -0
  259. package/out/recipes/country-balanced.d.ts +32 -0
  260. package/out/recipes/country-balanced.d.ts.map +1 -0
  261. package/out/recipes/country-balanced.js +394 -0
  262. package/out/recipes/country-balanced.js.map +1 -0
  263. package/out/recipes/cz-pcfirst-preposition.d.ts +22 -0
  264. package/out/recipes/cz-pcfirst-preposition.d.ts.map +1 -0
  265. package/out/recipes/cz-pcfirst-preposition.js +101 -0
  266. package/out/recipes/cz-pcfirst-preposition.js.map +1 -0
  267. package/out/recipes/fr-admin-split.d.ts +38 -0
  268. package/out/recipes/fr-admin-split.d.ts.map +1 -0
  269. package/out/recipes/fr-admin-split.js +192 -0
  270. package/out/recipes/fr-admin-split.js.map +1 -0
  271. package/out/recipes/fr-bare-street.d.ts +28 -0
  272. package/out/recipes/fr-bare-street.d.ts.map +1 -0
  273. package/out/recipes/fr-bare-street.js +144 -0
  274. package/out/recipes/fr-bare-street.js.map +1 -0
  275. package/out/recipes/fr-fragment.d.ts +77 -0
  276. package/out/recipes/fr-fragment.d.ts.map +1 -0
  277. package/out/recipes/fr-fragment.js +277 -0
  278. package/out/recipes/fr-fragment.js.map +1 -0
  279. package/out/recipes/fr-lieudit.d.ts +32 -0
  280. package/out/recipes/fr-lieudit.d.ts.map +1 -0
  281. package/out/recipes/fr-lieudit.js +227 -0
  282. package/out/recipes/fr-lieudit.js.map +1 -0
  283. package/out/recipes/fr-order.d.ts +38 -0
  284. package/out/recipes/fr-order.d.ts.map +1 -0
  285. package/out/recipes/fr-order.js +198 -0
  286. package/out/recipes/fr-order.js.map +1 -0
  287. package/out/recipes/german.d.ts +44 -0
  288. package/out/recipes/german.d.ts.map +1 -0
  289. package/out/recipes/german.js +289 -0
  290. package/out/recipes/german.js.map +1 -0
  291. package/out/recipes/house-venue.d.ts +18 -0
  292. package/out/recipes/house-venue.d.ts.map +1 -0
  293. package/out/recipes/house-venue.js +74 -0
  294. package/out/recipes/house-venue.js.map +1 -0
  295. package/out/recipes/index.d.ts +24 -0
  296. package/out/recipes/index.d.ts.map +1 -0
  297. package/out/recipes/index.js +91 -0
  298. package/out/recipes/index.js.map +1 -0
  299. package/out/recipes/intersection.d.ts +42 -0
  300. package/out/recipes/intersection.d.ts.map +1 -0
  301. package/out/recipes/intersection.js +453 -0
  302. package/out/recipes/intersection.js.map +1 -0
  303. package/out/recipes/locale.d.ts +136 -0
  304. package/out/recipes/locale.d.ts.map +1 -0
  305. package/out/recipes/locale.js +460 -0
  306. package/out/recipes/locale.js.map +1 -0
  307. package/out/recipes/nl-postcode.d.ts +26 -0
  308. package/out/recipes/nl-postcode.d.ts.map +1 -0
  309. package/out/recipes/nl-postcode.js +103 -0
  310. package/out/recipes/nl-postcode.js.map +1 -0
  311. package/out/recipes/no-fragment.d.ts +43 -0
  312. package/out/recipes/no-fragment.d.ts.map +1 -0
  313. package/out/recipes/no-fragment.js +183 -0
  314. package/out/recipes/no-fragment.js.map +1 -0
  315. package/out/recipes/no-street-led.d.ts +24 -0
  316. package/out/recipes/no-street-led.d.ts.map +1 -0
  317. package/out/recipes/no-street-led.js +114 -0
  318. package/out/recipes/no-street-led.js.map +1 -0
  319. package/out/recipes/no-street.d.ts +18 -0
  320. package/out/recipes/no-street.d.ts.map +1 -0
  321. package/out/recipes/no-street.js +72 -0
  322. package/out/recipes/no-street.js.map +1 -0
  323. package/out/recipes/po-box-cedex.d.ts +38 -0
  324. package/out/recipes/po-box-cedex.d.ts.map +1 -0
  325. package/out/recipes/po-box-cedex.js +768 -0
  326. package/out/recipes/po-box-cedex.js.map +1 -0
  327. package/out/recipes/po-box.d.ts +17 -0
  328. package/out/recipes/po-box.d.ts.map +1 -0
  329. package/out/recipes/po-box.js +101 -0
  330. package/out/recipes/po-box.js.map +1 -0
  331. package/out/recipes/reviewed-postcode-tail.d.ts +47 -0
  332. package/out/recipes/reviewed-postcode-tail.d.ts.map +1 -0
  333. package/out/recipes/reviewed-postcode-tail.js +125 -0
  334. package/out/recipes/reviewed-postcode-tail.js.map +1 -0
  335. package/out/recipes/scaffold.d.ts +323 -0
  336. package/out/recipes/scaffold.d.ts.map +1 -0
  337. package/out/recipes/scaffold.js +174 -0
  338. package/out/recipes/scaffold.js.map +1 -0
  339. package/out/recipes/si-bare-village.d.ts +32 -0
  340. package/out/recipes/si-bare-village.d.ts.map +1 -0
  341. package/out/recipes/si-bare-village.js +89 -0
  342. package/out/recipes/si-bare-village.js.map +1 -0
  343. package/out/recipes/street-affix.d.ts +89 -0
  344. package/out/recipes/street-affix.d.ts.map +1 -0
  345. package/out/recipes/street-affix.js +563 -0
  346. package/out/recipes/street-affix.js.map +1 -0
  347. package/out/recipes/street-bare.d.ts +25 -0
  348. package/out/recipes/street-bare.d.ts.map +1 -0
  349. package/out/recipes/street-bare.js +87 -0
  350. package/out/recipes/street-bare.js.map +1 -0
  351. package/out/recipes/street.d.ts +15 -0
  352. package/out/recipes/street.d.ts.map +1 -0
  353. package/out/recipes/street.js +70 -0
  354. package/out/recipes/street.js.map +1 -0
  355. package/out/recipes/sub-venue-sources.d.ts +229 -0
  356. package/out/recipes/sub-venue-sources.d.ts.map +1 -0
  357. package/out/recipes/sub-venue-sources.js +654 -0
  358. package/out/recipes/sub-venue-sources.js.map +1 -0
  359. package/out/recipes/sub-venue.d.ts +269 -0
  360. package/out/recipes/sub-venue.d.ts.map +1 -0
  361. package/out/recipes/sub-venue.js +726 -0
  362. package/out/recipes/sub-venue.js.map +1 -0
  363. package/out/recipes/trailing-region.d.ts +74 -0
  364. package/out/recipes/trailing-region.d.ts.map +1 -0
  365. package/out/recipes/trailing-region.js +158 -0
  366. package/out/recipes/trailing-region.js.map +1 -0
  367. package/out/recipes/unit.d.ts +29 -0
  368. package/out/recipes/unit.d.ts.map +1 -0
  369. package/out/recipes/unit.js +231 -0
  370. package/out/recipes/unit.js.map +1 -0
  371. package/out/runner.d.ts +130 -0
  372. package/out/runner.d.ts.map +1 -0
  373. package/out/runner.js +185 -0
  374. package/out/runner.js.map +1 -0
  375. package/out/synthesizers/anchor-absorption.d.ts +63 -0
  376. package/out/synthesizers/anchor-absorption.d.ts.map +1 -0
  377. package/out/synthesizers/anchor-absorption.js +221 -0
  378. package/out/synthesizers/anchor-absorption.js.map +1 -0
  379. package/out/synthesizers/boundary-stress.d.ts +78 -0
  380. package/out/synthesizers/boundary-stress.d.ts.map +1 -0
  381. package/out/synthesizers/boundary-stress.js +455 -0
  382. package/out/synthesizers/boundary-stress.js.map +1 -0
  383. package/out/synthesizers/german.d.ts +115 -0
  384. package/out/synthesizers/german.d.ts.map +1 -0
  385. package/out/synthesizers/german.js +149 -0
  386. package/out/synthesizers/german.js.map +1 -0
  387. package/out/synthesizers/house-venue.d.ts +56 -0
  388. package/out/synthesizers/house-venue.d.ts.map +1 -0
  389. package/out/synthesizers/house-venue.js +247 -0
  390. package/out/synthesizers/house-venue.js.map +1 -0
  391. package/out/synthesizers/intersection.d.ts +52 -0
  392. package/out/synthesizers/intersection.d.ts.map +1 -0
  393. package/out/synthesizers/intersection.js +175 -0
  394. package/out/synthesizers/intersection.js.map +1 -0
  395. package/out/synthesizers/no-street.d.ts +72 -0
  396. package/out/synthesizers/no-street.d.ts.map +1 -0
  397. package/out/synthesizers/no-street.js +262 -0
  398. package/out/synthesizers/no-street.js.map +1 -0
  399. package/out/synthesizers/po-box.d.ts +108 -0
  400. package/out/synthesizers/po-box.d.ts.map +1 -0
  401. package/out/synthesizers/po-box.js +250 -0
  402. package/out/synthesizers/po-box.js.map +1 -0
  403. package/out/synthesizers/street.d.ts +54 -0
  404. package/out/synthesizers/street.d.ts.map +1 -0
  405. package/out/synthesizers/street.js +218 -0
  406. package/out/synthesizers/street.js.map +1 -0
  407. package/out/synthesizers/utils.d.ts +241 -0
  408. package/out/synthesizers/utils.d.ts.map +1 -0
  409. package/out/synthesizers/utils.js +776 -0
  410. package/out/synthesizers/utils.js.map +1 -0
  411. package/out/test-kit/corpus-recipe.d.ts +59 -0
  412. package/out/test-kit/corpus-recipe.d.ts.map +1 -0
  413. package/out/test-kit/corpus-recipe.js +39 -0
  414. package/out/test-kit/corpus-recipe.js.map +1 -0
  415. package/out/test-kit/index.d.ts +48 -0
  416. package/out/test-kit/index.d.ts.map +1 -0
  417. package/out/test-kit/index.js +78 -0
  418. package/out/test-kit/index.js.map +1 -0
  419. package/out/tools/align-slice.d.ts +7 -0
  420. package/out/tools/align-slice.d.ts.map +1 -0
  421. package/out/tools/align-slice.js +55 -0
  422. package/out/tools/align-slice.js.map +1 -0
  423. package/out/tools/audit.d.ts +29 -0
  424. package/out/tools/audit.d.ts.map +1 -0
  425. package/out/tools/audit.js +282 -0
  426. package/out/tools/audit.js.map +1 -0
  427. package/out/tools/corpus-stats.d.ts +44 -0
  428. package/out/tools/corpus-stats.d.ts.map +1 -0
  429. package/out/tools/corpus-stats.js +102 -0
  430. package/out/tools/corpus-stats.js.map +1 -0
  431. package/out/tools/fetch/acra-sg.d.ts +23 -0
  432. package/out/tools/fetch/acra-sg.d.ts.map +1 -0
  433. package/out/tools/fetch/acra-sg.js +126 -0
  434. package/out/tools/fetch/acra-sg.js.map +1 -0
  435. package/out/tools/fetch/ban.d.ts +31 -0
  436. package/out/tools/fetch/ban.d.ts.map +1 -0
  437. package/out/tools/fetch/ban.js +239 -0
  438. package/out/tools/fetch/ban.js.map +1 -0
  439. package/out/tools/fetch/download.d.ts +182 -0
  440. package/out/tools/fetch/download.d.ts.map +1 -0
  441. package/out/tools/fetch/download.js +318 -0
  442. package/out/tools/fetch/download.js.map +1 -0
  443. package/out/tools/fetch/gcis-tw.d.ts +23 -0
  444. package/out/tools/fetch/gcis-tw.d.ts.map +1 -0
  445. package/out/tools/fetch/gcis-tw.js +135 -0
  446. package/out/tools/fetch/gcis-tw.js.map +1 -0
  447. package/out/tools/fetch/geonames-dump.d.ts +91 -0
  448. package/out/tools/fetch/geonames-dump.d.ts.map +1 -0
  449. package/out/tools/fetch/geonames-dump.js +171 -0
  450. package/out/tools/fetch/geonames-dump.js.map +1 -0
  451. package/out/tools/fetch/geonames-postal.d.ts +76 -0
  452. package/out/tools/fetch/geonames-postal.d.ts.map +1 -0
  453. package/out/tools/fetch/geonames-postal.js +126 -0
  454. package/out/tools/fetch/geonames-postal.js.map +1 -0
  455. package/out/tools/fetch/houjin-jp.d.ts +24 -0
  456. package/out/tools/fetch/houjin-jp.d.ts.map +1 -0
  457. package/out/tools/fetch/houjin-jp.js +102 -0
  458. package/out/tools/fetch/houjin-jp.js.map +1 -0
  459. package/out/tools/fetch/hrsa.d.ts +18 -0
  460. package/out/tools/fetch/hrsa.d.ts.map +1 -0
  461. package/out/tools/fetch/hrsa.js +46 -0
  462. package/out/tools/fetch/hrsa.js.map +1 -0
  463. package/out/tools/fetch/imls-pls.d.ts +25 -0
  464. package/out/tools/fetch/imls-pls.d.ts.map +1 -0
  465. package/out/tools/fetch/imls-pls.js +108 -0
  466. package/out/tools/fetch/imls-pls.js.map +1 -0
  467. package/out/tools/fetch/index.d.ts +171 -0
  468. package/out/tools/fetch/index.d.ts.map +1 -0
  469. package/out/tools/fetch/index.js +170 -0
  470. package/out/tools/fetch/index.js.map +1 -0
  471. package/out/tools/fetch/juso-kr.d.ts +30 -0
  472. package/out/tools/fetch/juso-kr.d.ts.map +1 -0
  473. package/out/tools/fetch/juso-kr.js +120 -0
  474. package/out/tools/fetch/juso-kr.js.map +1 -0
  475. package/out/tools/fetch/localdata-kr.d.ts +30 -0
  476. package/out/tools/fetch/localdata-kr.d.ts.map +1 -0
  477. package/out/tools/fetch/localdata-kr.js +139 -0
  478. package/out/tools/fetch/localdata-kr.js.map +1 -0
  479. package/out/tools/fetch/nad.d.ts +70 -0
  480. package/out/tools/fetch/nad.d.ts.map +1 -0
  481. package/out/tools/fetch/nad.js +234 -0
  482. package/out/tools/fetch/nad.js.map +1 -0
  483. package/out/tools/fetch/nppes.d.ts +26 -0
  484. package/out/tools/fetch/nppes.d.ts.map +1 -0
  485. package/out/tools/fetch/nppes.js +126 -0
  486. package/out/tools/fetch/nppes.js.map +1 -0
  487. package/out/tools/fetch/openaddresses.d.ts +9 -0
  488. package/out/tools/fetch/openaddresses.d.ts.map +1 -0
  489. package/out/tools/fetch/openaddresses.js +279 -0
  490. package/out/tools/fetch/openaddresses.js.map +1 -0
  491. package/out/tools/fetch/ourairports.d.ts +45 -0
  492. package/out/tools/fetch/ourairports.d.ts.map +1 -0
  493. package/out/tools/fetch/ourairports.js +128 -0
  494. package/out/tools/fetch/ourairports.js.map +1 -0
  495. package/out/tools/fetch/ppd.d.ts.map +1 -0
  496. package/out/tools/fetch/ppd.js +85 -0
  497. package/out/tools/fetch/ppd.js.map +1 -0
  498. package/out/tools/fetch/state-hi-schools.d.ts +26 -0
  499. package/out/tools/fetch/state-hi-schools.d.ts.map +1 -0
  500. package/out/tools/fetch/state-hi-schools.js +112 -0
  501. package/out/tools/fetch/state-hi-schools.js.map +1 -0
  502. package/out/tools/fetch/state-sources.d.ts +26 -0
  503. package/out/tools/fetch/state-sources.d.ts.map +1 -0
  504. package/out/tools/fetch/state-sources.js +111 -0
  505. package/out/tools/fetch/state-sources.js.map +1 -0
  506. package/out/tools/fetch/tiger-full.d.ts +22 -0
  507. package/out/tools/fetch/tiger-full.d.ts.map +1 -0
  508. package/out/tools/fetch/tiger-full.js +217 -0
  509. package/out/tools/fetch/tiger-full.js.map +1 -0
  510. package/out/tools/fetch/wikidata-subvenue.d.ts +171 -0
  511. package/out/tools/fetch/wikidata-subvenue.d.ts.map +1 -0
  512. package/out/tools/fetch/wikidata-subvenue.js +274 -0
  513. package/out/tools/fetch/wikidata-subvenue.js.map +1 -0
  514. package/out/tools/gb-title-case.d.ts.map +1 -0
  515. package/out/tools/gb-title-case.js.map +1 -0
  516. package/out/tools/golden-expand.d.ts +90 -0
  517. package/out/tools/golden-expand.d.ts.map +1 -0
  518. package/out/tools/golden-expand.js +406 -0
  519. package/out/tools/golden-expand.js.map +1 -0
  520. package/out/tools/golden-promote.d.ts.map +1 -0
  521. package/out/tools/golden-promote.js +240 -0
  522. package/out/tools/golden-promote.js.map +1 -0
  523. package/out/tools/golden-relabel-street.d.ts +196 -0
  524. package/out/tools/golden-relabel-street.d.ts.map +1 -0
  525. package/out/tools/golden-relabel-street.js +439 -0
  526. package/out/tools/golden-relabel-street.js.map +1 -0
  527. package/out/tools/index.d.ts +28 -0
  528. package/out/tools/index.d.ts.map +1 -0
  529. package/out/tools/index.js +28 -0
  530. package/out/tools/index.js.map +1 -0
  531. package/out/tools/ingest-csv.d.ts.map +1 -0
  532. package/out/tools/ingest-csv.js +265 -0
  533. package/out/tools/ingest-csv.js.map +1 -0
  534. package/out/tools/jsonl-to-parquet.d.ts +61 -0
  535. package/out/tools/jsonl-to-parquet.d.ts.map +1 -0
  536. package/out/tools/jsonl-to-parquet.js +150 -0
  537. package/out/tools/jsonl-to-parquet.js.map +1 -0
  538. package/out/tools/lint-slice-vocab.d.ts +90 -0
  539. package/out/tools/lint-slice-vocab.d.ts.map +1 -0
  540. package/out/tools/lint-slice-vocab.js +267 -0
  541. package/out/tools/lint-slice-vocab.js.map +1 -0
  542. package/out/tools/lint-slice.d.ts +93 -0
  543. package/out/tools/lint-slice.d.ts.map +1 -0
  544. package/out/tools/lint-slice.js +322 -0
  545. package/out/tools/lint-slice.js.map +1 -0
  546. package/out/tools/overlay-manifest.d.ts +39 -0
  547. package/out/tools/overlay-manifest.d.ts.map +1 -0
  548. package/out/tools/overlay-manifest.js +90 -0
  549. package/out/tools/overlay-manifest.js.map +1 -0
  550. package/out/tools/overture-subvenue.d.ts +112 -0
  551. package/out/tools/overture-subvenue.d.ts.map +1 -0
  552. package/out/tools/overture-subvenue.js +139 -0
  553. package/out/tools/overture-subvenue.js.map +1 -0
  554. package/out/tools/postcode-triples.d.ts +174 -0
  555. package/out/tools/postcode-triples.d.ts.map +1 -0
  556. package/out/tools/postcode-triples.js +292 -0
  557. package/out/tools/postcode-triples.js.map +1 -0
  558. package/out/tools/slice-kryptonite.d.ts +32 -0
  559. package/out/tools/slice-kryptonite.d.ts.map +1 -0
  560. package/out/tools/slice-kryptonite.js +99 -0
  561. package/out/tools/slice-kryptonite.js.map +1 -0
  562. package/out/tools/slice-translit.d.ts +51 -0
  563. package/out/tools/slice-translit.d.ts.map +1 -0
  564. package/out/tools/slice-translit.js +166 -0
  565. package/out/tools/slice-translit.js.map +1 -0
  566. package/out/tools/sub-venue/harvest.d.ts +100 -0
  567. package/out/tools/sub-venue/harvest.d.ts.map +1 -0
  568. package/out/tools/sub-venue/harvest.js +168 -0
  569. package/out/tools/sub-venue/harvest.js.map +1 -0
  570. package/out/tools/sub-venue/head-nouns.d.ts +50 -0
  571. package/out/tools/sub-venue/head-nouns.d.ts.map +1 -0
  572. package/out/tools/sub-venue/head-nouns.js +213 -0
  573. package/out/tools/sub-venue/head-nouns.js.map +1 -0
  574. package/out/tools/sub-venue/surfaces.d.ts +45 -0
  575. package/out/tools/sub-venue/surfaces.d.ts.map +1 -0
  576. package/out/tools/sub-venue/surfaces.js +77 -0
  577. package/out/tools/sub-venue/surfaces.js.map +1 -0
  578. package/out/tools/sub-venue/table.d.ts +229 -0
  579. package/out/tools/sub-venue/table.d.ts.map +1 -0
  580. package/out/tools/sub-venue/table.js +108 -0
  581. package/out/tools/sub-venue/table.js.map +1 -0
  582. package/out/tools/sub-venue/wikidata.d.ts +26 -0
  583. package/out/tools/sub-venue/wikidata.d.ts.map +1 -0
  584. package/out/tools/sub-venue/wikidata.js +62 -0
  585. package/out/tools/sub-venue/wikidata.js.map +1 -0
  586. package/out/tools/sub-venue-lexicon.d.ts +156 -0
  587. package/out/tools/sub-venue-lexicon.d.ts.map +1 -0
  588. package/out/tools/sub-venue-lexicon.js +283 -0
  589. package/out/tools/sub-venue-lexicon.js.map +1 -0
  590. package/out/tools/sub-venue-promotions.d.ts +94 -0
  591. package/out/tools/sub-venue-promotions.d.ts.map +1 -0
  592. package/out/tools/sub-venue-promotions.js +266 -0
  593. package/out/tools/sub-venue-promotions.js.map +1 -0
  594. package/out/types.d.ts +221 -0
  595. package/out/types.d.ts.map +1 -0
  596. package/out/types.js.map +1 -0
  597. package/out/utils/align.d.ts +93 -0
  598. package/out/utils/align.d.ts.map +1 -0
  599. package/out/utils/align.js +234 -0
  600. package/out/utils/align.js.map +1 -0
  601. package/out/utils/golden.d.ts +85 -0
  602. package/out/utils/golden.d.ts.map +1 -0
  603. package/out/utils/golden.js +127 -0
  604. package/out/utils/golden.js.map +1 -0
  605. package/out/utils/index.d.ts +14 -0
  606. package/out/utils/index.d.ts.map +1 -0
  607. package/out/utils/index.js +14 -0
  608. package/out/utils/index.js.map +1 -0
  609. package/out/utils/license.d.ts.map +1 -0
  610. package/out/utils/license.js.map +1 -0
  611. package/out/utils/parquet.d.ts +178 -0
  612. package/out/utils/parquet.d.ts.map +1 -0
  613. package/out/utils/parquet.js +371 -0
  614. package/out/utils/parquet.js.map +1 -0
  615. package/out/utils/slice-stats.d.ts +52 -0
  616. package/out/utils/slice-stats.d.ts.map +1 -0
  617. package/out/utils/slice-stats.js +58 -0
  618. package/out/utils/slice-stats.js.map +1 -0
  619. package/out/utils/split.d.ts +128 -0
  620. package/out/utils/split.d.ts.map +1 -0
  621. package/out/utils/split.js +204 -0
  622. package/out/utils/split.js.map +1 -0
  623. package/out/utils/tokenize.d.ts +64 -0
  624. package/out/utils/tokenize.d.ts.map +1 -0
  625. package/out/utils/tokenize.js +82 -0
  626. package/out/utils/tokenize.js.map +1 -0
  627. package/out/utils/wof-json.d.ts +113 -0
  628. package/out/utils/wof-json.d.ts.map +1 -0
  629. package/out/utils/wof-json.js +173 -0
  630. package/out/utils/wof-json.js.map +1 -0
  631. package/package.json +259 -194
  632. package/out/src/adapters/ban/adapter.d.ts.map +0 -1
  633. package/out/src/adapters/ban/adapter.js +0 -149
  634. package/out/src/adapters/ban/adapter.js.map +0 -1
  635. package/out/src/adapters/ban/street-decompose.d.ts.map +0 -1
  636. package/out/src/adapters/ban/street-decompose.js +0 -75
  637. package/out/src/adapters/ban/street-decompose.js.map +0 -1
  638. package/out/src/adapters/fcc-bdc/adapter.d.ts.map +0 -1
  639. package/out/src/adapters/fcc-bdc/adapter.js +0 -144
  640. package/out/src/adapters/fcc-bdc/adapter.js.map +0 -1
  641. package/out/src/adapters/geonames/adapter.d.ts.map +0 -1
  642. package/out/src/adapters/geonames/adapter.js +0 -176
  643. package/out/src/adapters/geonames/adapter.js.map +0 -1
  644. package/out/src/adapters/geonames-postal/adapter.d.ts +0 -41
  645. package/out/src/adapters/geonames-postal/adapter.d.ts.map +0 -1
  646. package/out/src/adapters/geonames-postal/adapter.js +0 -104
  647. package/out/src/adapters/geonames-postal/adapter.js.map +0 -1
  648. package/out/src/adapters/gnaf/adapter.d.ts +0 -49
  649. package/out/src/adapters/gnaf/adapter.d.ts.map +0 -1
  650. package/out/src/adapters/gnaf/adapter.js +0 -124
  651. package/out/src/adapters/gnaf/adapter.js.map +0 -1
  652. package/out/src/adapters/gnaf/assemble.d.ts +0 -65
  653. package/out/src/adapters/gnaf/assemble.d.ts.map +0 -1
  654. package/out/src/adapters/gnaf/assemble.js +0 -154
  655. package/out/src/adapters/gnaf/assemble.js.map +0 -1
  656. package/out/src/adapters/index.d.ts +0 -51
  657. package/out/src/adapters/index.d.ts.map +0 -1
  658. package/out/src/adapters/index.js +0 -95
  659. package/out/src/adapters/index.js.map +0 -1
  660. package/out/src/adapters/openaddresses/adapter.d.ts.map +0 -1
  661. package/out/src/adapters/openaddresses/adapter.js +0 -186
  662. package/out/src/adapters/openaddresses/adapter.js.map +0 -1
  663. package/out/src/adapters/overture/adapter.d.ts +0 -48
  664. package/out/src/adapters/overture/adapter.d.ts.map +0 -1
  665. package/out/src/adapters/overture/adapter.js +0 -125
  666. package/out/src/adapters/overture/adapter.js.map +0 -1
  667. package/out/src/adapters/state-hi-schools/adapter.d.ts +0 -47
  668. package/out/src/adapters/state-hi-schools/adapter.d.ts.map +0 -1
  669. package/out/src/adapters/state-hi-schools/adapter.js +0 -133
  670. package/out/src/adapters/state-hi-schools/adapter.js.map +0 -1
  671. package/out/src/adapters/state-ia-contractors/adapter.d.ts.map +0 -1
  672. package/out/src/adapters/state-ia-contractors/adapter.js.map +0 -1
  673. package/out/src/adapters/state-ny-notaries/adapter.d.ts.map +0 -1
  674. package/out/src/adapters/state-ny-notaries/adapter.js.map +0 -1
  675. package/out/src/adapters/state-tx-notaries/adapter.d.ts.map +0 -1
  676. package/out/src/adapters/state-tx-notaries/adapter.js.map +0 -1
  677. package/out/src/adapters/synth-po-box/adapter.d.ts.map +0 -1
  678. package/out/src/adapters/synth-po-box/adapter.js +0 -140
  679. package/out/src/adapters/synth-po-box/adapter.js.map +0 -1
  680. package/out/src/adapters/tiger/adapter.d.ts +0 -55
  681. package/out/src/adapters/tiger/adapter.d.ts.map +0 -1
  682. package/out/src/adapters/tiger/adapter.js +0 -201
  683. package/out/src/adapters/tiger/adapter.js.map +0 -1
  684. package/out/src/adapters/tiger/street-decompose.d.ts.map +0 -1
  685. package/out/src/adapters/tiger/street-decompose.js +0 -90
  686. package/out/src/adapters/tiger/street-decompose.js.map +0 -1
  687. package/out/src/adapters/usgov-hrsa-fqhc/adapter.d.ts +0 -47
  688. package/out/src/adapters/usgov-hrsa-fqhc/adapter.d.ts.map +0 -1
  689. package/out/src/adapters/usgov-hrsa-fqhc/adapter.js +0 -139
  690. package/out/src/adapters/usgov-hrsa-fqhc/adapter.js.map +0 -1
  691. package/out/src/adapters/usgov-imls-pls/adapter.d.ts +0 -36
  692. package/out/src/adapters/usgov-imls-pls/adapter.d.ts.map +0 -1
  693. package/out/src/adapters/usgov-imls-pls/adapter.js +0 -114
  694. package/out/src/adapters/usgov-imls-pls/adapter.js.map +0 -1
  695. package/out/src/adapters/usgov-irs-bmf/adapter.d.ts +0 -37
  696. package/out/src/adapters/usgov-irs-bmf/adapter.d.ts.map +0 -1
  697. package/out/src/adapters/usgov-irs-bmf/adapter.js +0 -124
  698. package/out/src/adapters/usgov-irs-bmf/adapter.js.map +0 -1
  699. package/out/src/adapters/usgov-nad/adapter.d.ts +0 -48
  700. package/out/src/adapters/usgov-nad/adapter.d.ts.map +0 -1
  701. package/out/src/adapters/usgov-nad/adapter.js +0 -252
  702. package/out/src/adapters/usgov-nad/adapter.js.map +0 -1
  703. package/out/src/adapters/usgov-nppes/adapter.d.ts.map +0 -1
  704. package/out/src/adapters/usgov-nppes/adapter.js +0 -116
  705. package/out/src/adapters/usgov-nppes/adapter.js.map +0 -1
  706. package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.d.ts.map +0 -1
  707. package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.js +0 -156
  708. package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.js.map +0 -1
  709. package/out/src/adapters/utils/index.d.ts +0 -150
  710. package/out/src/adapters/utils/index.d.ts.map +0 -1
  711. package/out/src/adapters/utils/index.js +0 -159
  712. package/out/src/adapters/utils/index.js.map +0 -1
  713. package/out/src/adapters/wof-admin-jp/adapter.d.ts.map +0 -1
  714. package/out/src/adapters/wof-admin-jp/adapter.js +0 -164
  715. package/out/src/adapters/wof-admin-jp/adapter.js.map +0 -1
  716. package/out/src/adapters/wof-admin-json/adapter.d.ts +0 -82
  717. package/out/src/adapters/wof-admin-json/adapter.d.ts.map +0 -1
  718. package/out/src/adapters/wof-admin-json/adapter.js +0 -224
  719. package/out/src/adapters/wof-admin-json/adapter.js.map +0 -1
  720. package/out/src/adapters/wof-json-rows.d.ts +0 -32
  721. package/out/src/adapters/wof-json-rows.d.ts.map +0 -1
  722. package/out/src/adapters/wof-json-rows.js +0 -45
  723. package/out/src/adapters/wof-json-rows.js.map +0 -1
  724. package/out/src/adapters/wof-postalcode-json/adapter.d.ts +0 -65
  725. package/out/src/adapters/wof-postalcode-json/adapter.d.ts.map +0 -1
  726. package/out/src/adapters/wof-postalcode-json/adapter.js +0 -160
  727. package/out/src/adapters/wof-postalcode-json/adapter.js.map +0 -1
  728. package/out/src/build.d.ts +0 -132
  729. package/out/src/build.d.ts.map +0 -1
  730. package/out/src/build.js +0 -251
  731. package/out/src/build.js.map +0 -1
  732. package/out/src/codex/us-fips-state.d.ts.map +0 -1
  733. package/out/src/codex/us-fips-state.js.map +0 -1
  734. package/out/src/index.d.ts +0 -14
  735. package/out/src/index.d.ts.map +0 -1
  736. package/out/src/index.js +0 -14
  737. package/out/src/index.js.map +0 -1
  738. package/out/src/name-prone-us-suffixes.d.ts +0 -12
  739. package/out/src/name-prone-us-suffixes.d.ts.map +0 -1
  740. package/out/src/name-prone-us-suffixes.js +0 -12
  741. package/out/src/name-prone-us-suffixes.js.map +0 -1
  742. package/out/src/parquet-wrapper/index.d.ts +0 -9
  743. package/out/src/parquet-wrapper/index.d.ts.map +0 -1
  744. package/out/src/parquet-wrapper/index.js +0 -9
  745. package/out/src/parquet-wrapper/index.js.map +0 -1
  746. package/out/src/parquet-wrapper/reader.d.ts +0 -34
  747. package/out/src/parquet-wrapper/reader.d.ts.map +0 -1
  748. package/out/src/parquet-wrapper/reader.js +0 -69
  749. package/out/src/parquet-wrapper/reader.js.map +0 -1
  750. package/out/src/parquet-wrapper/schema.d.ts +0 -49
  751. package/out/src/parquet-wrapper/schema.d.ts.map +0 -1
  752. package/out/src/parquet-wrapper/schema.js +0 -55
  753. package/out/src/parquet-wrapper/schema.js.map +0 -1
  754. package/out/src/parquet-wrapper/writer.d.ts +0 -46
  755. package/out/src/parquet-wrapper/writer.d.ts.map +0 -1
  756. package/out/src/parquet-wrapper/writer.js +0 -76
  757. package/out/src/parquet-wrapper/writer.js.map +0 -1
  758. package/out/src/runner.d.ts +0 -126
  759. package/out/src/runner.d.ts.map +0 -1
  760. package/out/src/runner.js +0 -189
  761. package/out/src/runner.js.map +0 -1
  762. package/out/src/shard-recipes/anchor-absorption.d.ts +0 -20
  763. package/out/src/shard-recipes/anchor-absorption.d.ts.map +0 -1
  764. package/out/src/shard-recipes/anchor-absorption.js +0 -82
  765. package/out/src/shard-recipes/anchor-absorption.js.map +0 -1
  766. package/out/src/shard-recipes/bare-country.d.ts +0 -25
  767. package/out/src/shard-recipes/bare-country.d.ts.map +0 -1
  768. package/out/src/shard-recipes/bare-country.js +0 -87
  769. package/out/src/shard-recipes/bare-country.js.map +0 -1
  770. package/out/src/shard-recipes/boundary-stress.d.ts +0 -20
  771. package/out/src/shard-recipes/boundary-stress.d.ts.map +0 -1
  772. package/out/src/shard-recipes/boundary-stress.js +0 -83
  773. package/out/src/shard-recipes/boundary-stress.js.map +0 -1
  774. package/out/src/shard-recipes/country-balanced.d.ts +0 -32
  775. package/out/src/shard-recipes/country-balanced.d.ts.map +0 -1
  776. package/out/src/shard-recipes/country-balanced.js +0 -406
  777. package/out/src/shard-recipes/country-balanced.js.map +0 -1
  778. package/out/src/shard-recipes/cz-pcfirst-preposition.d.ts +0 -22
  779. package/out/src/shard-recipes/cz-pcfirst-preposition.d.ts.map +0 -1
  780. package/out/src/shard-recipes/cz-pcfirst-preposition.js +0 -100
  781. package/out/src/shard-recipes/cz-pcfirst-preposition.js.map +0 -1
  782. package/out/src/shard-recipes/fr-admin-split.d.ts +0 -38
  783. package/out/src/shard-recipes/fr-admin-split.d.ts.map +0 -1
  784. package/out/src/shard-recipes/fr-admin-split.js +0 -188
  785. package/out/src/shard-recipes/fr-admin-split.js.map +0 -1
  786. package/out/src/shard-recipes/fr-bare-street.d.ts +0 -28
  787. package/out/src/shard-recipes/fr-bare-street.d.ts.map +0 -1
  788. package/out/src/shard-recipes/fr-bare-street.js +0 -143
  789. package/out/src/shard-recipes/fr-bare-street.js.map +0 -1
  790. package/out/src/shard-recipes/fr-fragment.d.ts +0 -77
  791. package/out/src/shard-recipes/fr-fragment.d.ts.map +0 -1
  792. package/out/src/shard-recipes/fr-fragment.js +0 -276
  793. package/out/src/shard-recipes/fr-fragment.js.map +0 -1
  794. package/out/src/shard-recipes/fr-lieudit.d.ts +0 -32
  795. package/out/src/shard-recipes/fr-lieudit.d.ts.map +0 -1
  796. package/out/src/shard-recipes/fr-lieudit.js +0 -226
  797. package/out/src/shard-recipes/fr-lieudit.js.map +0 -1
  798. package/out/src/shard-recipes/fr-order.d.ts +0 -38
  799. package/out/src/shard-recipes/fr-order.d.ts.map +0 -1
  800. package/out/src/shard-recipes/fr-order.js +0 -208
  801. package/out/src/shard-recipes/fr-order.js.map +0 -1
  802. package/out/src/shard-recipes/german.d.ts +0 -23
  803. package/out/src/shard-recipes/german.d.ts.map +0 -1
  804. package/out/src/shard-recipes/german.js +0 -132
  805. package/out/src/shard-recipes/german.js.map +0 -1
  806. package/out/src/shard-recipes/house-venue.d.ts +0 -18
  807. package/out/src/shard-recipes/house-venue.d.ts.map +0 -1
  808. package/out/src/shard-recipes/house-venue.js +0 -74
  809. package/out/src/shard-recipes/house-venue.js.map +0 -1
  810. package/out/src/shard-recipes/index.d.ts +0 -24
  811. package/out/src/shard-recipes/index.d.ts.map +0 -1
  812. package/out/src/shard-recipes/index.js +0 -89
  813. package/out/src/shard-recipes/index.js.map +0 -1
  814. package/out/src/shard-recipes/intersection.d.ts +0 -42
  815. package/out/src/shard-recipes/intersection.d.ts.map +0 -1
  816. package/out/src/shard-recipes/intersection.js +0 -460
  817. package/out/src/shard-recipes/intersection.js.map +0 -1
  818. package/out/src/shard-recipes/locale.d.ts +0 -135
  819. package/out/src/shard-recipes/locale.d.ts.map +0 -1
  820. package/out/src/shard-recipes/locale.js +0 -459
  821. package/out/src/shard-recipes/locale.js.map +0 -1
  822. package/out/src/shard-recipes/nl-postcode.d.ts +0 -26
  823. package/out/src/shard-recipes/nl-postcode.d.ts.map +0 -1
  824. package/out/src/shard-recipes/nl-postcode.js +0 -102
  825. package/out/src/shard-recipes/nl-postcode.js.map +0 -1
  826. package/out/src/shard-recipes/no-fragment.d.ts +0 -43
  827. package/out/src/shard-recipes/no-fragment.d.ts.map +0 -1
  828. package/out/src/shard-recipes/no-fragment.js +0 -188
  829. package/out/src/shard-recipes/no-fragment.js.map +0 -1
  830. package/out/src/shard-recipes/no-street-led.d.ts +0 -24
  831. package/out/src/shard-recipes/no-street-led.d.ts.map +0 -1
  832. package/out/src/shard-recipes/no-street-led.js +0 -121
  833. package/out/src/shard-recipes/no-street-led.js.map +0 -1
  834. package/out/src/shard-recipes/no-street.d.ts +0 -18
  835. package/out/src/shard-recipes/no-street.d.ts.map +0 -1
  836. package/out/src/shard-recipes/no-street.js +0 -72
  837. package/out/src/shard-recipes/no-street.js.map +0 -1
  838. package/out/src/shard-recipes/po-box-cedex.d.ts +0 -38
  839. package/out/src/shard-recipes/po-box-cedex.d.ts.map +0 -1
  840. package/out/src/shard-recipes/po-box-cedex.js +0 -726
  841. package/out/src/shard-recipes/po-box-cedex.js.map +0 -1
  842. package/out/src/shard-recipes/po-box.d.ts +0 -17
  843. package/out/src/shard-recipes/po-box.d.ts.map +0 -1
  844. package/out/src/shard-recipes/po-box.js +0 -101
  845. package/out/src/shard-recipes/po-box.js.map +0 -1
  846. package/out/src/shard-recipes/reviewed-postcode-tail.d.ts +0 -47
  847. package/out/src/shard-recipes/reviewed-postcode-tail.d.ts.map +0 -1
  848. package/out/src/shard-recipes/reviewed-postcode-tail.js +0 -125
  849. package/out/src/shard-recipes/reviewed-postcode-tail.js.map +0 -1
  850. package/out/src/shard-recipes/scaffold.d.ts +0 -246
  851. package/out/src/shard-recipes/scaffold.d.ts.map +0 -1
  852. package/out/src/shard-recipes/scaffold.js +0 -137
  853. package/out/src/shard-recipes/scaffold.js.map +0 -1
  854. package/out/src/shard-recipes/si-bare-village.d.ts +0 -32
  855. package/out/src/shard-recipes/si-bare-village.d.ts.map +0 -1
  856. package/out/src/shard-recipes/si-bare-village.js +0 -88
  857. package/out/src/shard-recipes/si-bare-village.js.map +0 -1
  858. package/out/src/shard-recipes/street-affix.d.ts +0 -89
  859. package/out/src/shard-recipes/street-affix.d.ts.map +0 -1
  860. package/out/src/shard-recipes/street-affix.js +0 -578
  861. package/out/src/shard-recipes/street-affix.js.map +0 -1
  862. package/out/src/shard-recipes/street-bare.d.ts +0 -25
  863. package/out/src/shard-recipes/street-bare.d.ts.map +0 -1
  864. package/out/src/shard-recipes/street-bare.js +0 -86
  865. package/out/src/shard-recipes/street-bare.js.map +0 -1
  866. package/out/src/shard-recipes/street.d.ts +0 -15
  867. package/out/src/shard-recipes/street.d.ts.map +0 -1
  868. package/out/src/shard-recipes/street.js +0 -69
  869. package/out/src/shard-recipes/street.js.map +0 -1
  870. package/out/src/shard-recipes/sub-venue-sources.d.ts +0 -228
  871. package/out/src/shard-recipes/sub-venue-sources.d.ts.map +0 -1
  872. package/out/src/shard-recipes/sub-venue-sources.js +0 -664
  873. package/out/src/shard-recipes/sub-venue-sources.js.map +0 -1
  874. package/out/src/shard-recipes/sub-venue.d.ts +0 -269
  875. package/out/src/shard-recipes/sub-venue.d.ts.map +0 -1
  876. package/out/src/shard-recipes/sub-venue.js +0 -710
  877. package/out/src/shard-recipes/sub-venue.js.map +0 -1
  878. package/out/src/shard-recipes/trailing-region.d.ts +0 -74
  879. package/out/src/shard-recipes/trailing-region.d.ts.map +0 -1
  880. package/out/src/shard-recipes/trailing-region.js +0 -157
  881. package/out/src/shard-recipes/trailing-region.js.map +0 -1
  882. package/out/src/shard-recipes/unit.d.ts +0 -29
  883. package/out/src/shard-recipes/unit.d.ts.map +0 -1
  884. package/out/src/shard-recipes/unit.js +0 -243
  885. package/out/src/shard-recipes/unit.js.map +0 -1
  886. package/out/src/synthesizers/anchor-absorption.d.ts +0 -63
  887. package/out/src/synthesizers/anchor-absorption.d.ts.map +0 -1
  888. package/out/src/synthesizers/anchor-absorption.js +0 -223
  889. package/out/src/synthesizers/anchor-absorption.js.map +0 -1
  890. package/out/src/synthesizers/boundary-stress.d.ts +0 -78
  891. package/out/src/synthesizers/boundary-stress.d.ts.map +0 -1
  892. package/out/src/synthesizers/boundary-stress.js +0 -455
  893. package/out/src/synthesizers/boundary-stress.js.map +0 -1
  894. package/out/src/synthesizers/german.d.ts +0 -107
  895. package/out/src/synthesizers/german.d.ts.map +0 -1
  896. package/out/src/synthesizers/german.js +0 -148
  897. package/out/src/synthesizers/german.js.map +0 -1
  898. package/out/src/synthesizers/house-venue.d.ts +0 -56
  899. package/out/src/synthesizers/house-venue.d.ts.map +0 -1
  900. package/out/src/synthesizers/house-venue.js +0 -267
  901. package/out/src/synthesizers/house-venue.js.map +0 -1
  902. package/out/src/synthesizers/intersection.d.ts +0 -52
  903. package/out/src/synthesizers/intersection.d.ts.map +0 -1
  904. package/out/src/synthesizers/intersection.js +0 -175
  905. package/out/src/synthesizers/intersection.js.map +0 -1
  906. package/out/src/synthesizers/no-street.d.ts +0 -72
  907. package/out/src/synthesizers/no-street.d.ts.map +0 -1
  908. package/out/src/synthesizers/no-street.js +0 -282
  909. package/out/src/synthesizers/no-street.js.map +0 -1
  910. package/out/src/synthesizers/po-box.d.ts +0 -104
  911. package/out/src/synthesizers/po-box.d.ts.map +0 -1
  912. package/out/src/synthesizers/po-box.js +0 -266
  913. package/out/src/synthesizers/po-box.js.map +0 -1
  914. package/out/src/synthesizers/street.d.ts +0 -54
  915. package/out/src/synthesizers/street.d.ts.map +0 -1
  916. package/out/src/synthesizers/street.js +0 -221
  917. package/out/src/synthesizers/street.js.map +0 -1
  918. package/out/src/synthesizers/utils.d.ts +0 -203
  919. package/out/src/synthesizers/utils.d.ts.map +0 -1
  920. package/out/src/synthesizers/utils.js +0 -708
  921. package/out/src/synthesizers/utils.js.map +0 -1
  922. package/out/src/tools/align-shard.d.ts +0 -8
  923. package/out/src/tools/align-shard.d.ts.map +0 -1
  924. package/out/src/tools/align-shard.js +0 -56
  925. package/out/src/tools/align-shard.js.map +0 -1
  926. package/out/src/tools/audit.d.ts +0 -28
  927. package/out/src/tools/audit.d.ts.map +0 -1
  928. package/out/src/tools/audit.js +0 -285
  929. package/out/src/tools/audit.js.map +0 -1
  930. package/out/src/tools/corpus-stats.d.ts +0 -44
  931. package/out/src/tools/corpus-stats.d.ts.map +0 -1
  932. package/out/src/tools/corpus-stats.js +0 -138
  933. package/out/src/tools/corpus-stats.js.map +0 -1
  934. package/out/src/tools/fetch/ban.d.ts +0 -31
  935. package/out/src/tools/fetch/ban.d.ts.map +0 -1
  936. package/out/src/tools/fetch/ban.js +0 -239
  937. package/out/src/tools/fetch/ban.js.map +0 -1
  938. package/out/src/tools/fetch/download.d.ts +0 -78
  939. package/out/src/tools/fetch/download.d.ts.map +0 -1
  940. package/out/src/tools/fetch/download.js +0 -116
  941. package/out/src/tools/fetch/download.js.map +0 -1
  942. package/out/src/tools/fetch/geonames-dump.d.ts +0 -87
  943. package/out/src/tools/fetch/geonames-dump.d.ts.map +0 -1
  944. package/out/src/tools/fetch/geonames-dump.js +0 -178
  945. package/out/src/tools/fetch/geonames-dump.js.map +0 -1
  946. package/out/src/tools/fetch/geonames-postal.d.ts +0 -76
  947. package/out/src/tools/fetch/geonames-postal.d.ts.map +0 -1
  948. package/out/src/tools/fetch/geonames-postal.js +0 -125
  949. package/out/src/tools/fetch/geonames-postal.js.map +0 -1
  950. package/out/src/tools/fetch/hrsa.d.ts +0 -18
  951. package/out/src/tools/fetch/hrsa.d.ts.map +0 -1
  952. package/out/src/tools/fetch/hrsa.js +0 -46
  953. package/out/src/tools/fetch/hrsa.js.map +0 -1
  954. package/out/src/tools/fetch/imls-pls.d.ts +0 -25
  955. package/out/src/tools/fetch/imls-pls.d.ts.map +0 -1
  956. package/out/src/tools/fetch/imls-pls.js +0 -108
  957. package/out/src/tools/fetch/imls-pls.js.map +0 -1
  958. package/out/src/tools/fetch/index.d.ts +0 -144
  959. package/out/src/tools/fetch/index.d.ts.map +0 -1
  960. package/out/src/tools/fetch/index.js +0 -143
  961. package/out/src/tools/fetch/index.js.map +0 -1
  962. package/out/src/tools/fetch/nad.d.ts +0 -70
  963. package/out/src/tools/fetch/nad.d.ts.map +0 -1
  964. package/out/src/tools/fetch/nad.js +0 -234
  965. package/out/src/tools/fetch/nad.js.map +0 -1
  966. package/out/src/tools/fetch/nppes.d.ts +0 -26
  967. package/out/src/tools/fetch/nppes.d.ts.map +0 -1
  968. package/out/src/tools/fetch/nppes.js +0 -126
  969. package/out/src/tools/fetch/nppes.js.map +0 -1
  970. package/out/src/tools/fetch/openaddresses.d.ts +0 -61
  971. package/out/src/tools/fetch/openaddresses.d.ts.map +0 -1
  972. package/out/src/tools/fetch/openaddresses.js +0 -317
  973. package/out/src/tools/fetch/openaddresses.js.map +0 -1
  974. package/out/src/tools/fetch/ourairports.d.ts +0 -45
  975. package/out/src/tools/fetch/ourairports.d.ts.map +0 -1
  976. package/out/src/tools/fetch/ourairports.js +0 -128
  977. package/out/src/tools/fetch/ourairports.js.map +0 -1
  978. package/out/src/tools/fetch/ppd.d.ts.map +0 -1
  979. package/out/src/tools/fetch/ppd.js +0 -100
  980. package/out/src/tools/fetch/ppd.js.map +0 -1
  981. package/out/src/tools/fetch/state-hi-schools.d.ts +0 -25
  982. package/out/src/tools/fetch/state-hi-schools.d.ts.map +0 -1
  983. package/out/src/tools/fetch/state-hi-schools.js +0 -162
  984. package/out/src/tools/fetch/state-hi-schools.js.map +0 -1
  985. package/out/src/tools/fetch/state-sources.d.ts +0 -26
  986. package/out/src/tools/fetch/state-sources.d.ts.map +0 -1
  987. package/out/src/tools/fetch/state-sources.js +0 -111
  988. package/out/src/tools/fetch/state-sources.js.map +0 -1
  989. package/out/src/tools/fetch/tiger-full.d.ts +0 -42
  990. package/out/src/tools/fetch/tiger-full.d.ts.map +0 -1
  991. package/out/src/tools/fetch/tiger-full.js +0 -248
  992. package/out/src/tools/fetch/tiger-full.js.map +0 -1
  993. package/out/src/tools/fetch/wikidata-subvenue.d.ts +0 -171
  994. package/out/src/tools/fetch/wikidata-subvenue.d.ts.map +0 -1
  995. package/out/src/tools/fetch/wikidata-subvenue.js +0 -275
  996. package/out/src/tools/fetch/wikidata-subvenue.js.map +0 -1
  997. package/out/src/tools/gb-title-case.d.ts.map +0 -1
  998. package/out/src/tools/gb-title-case.js.map +0 -1
  999. package/out/src/tools/golden-expand.d.ts +0 -90
  1000. package/out/src/tools/golden-expand.d.ts.map +0 -1
  1001. package/out/src/tools/golden-expand.js +0 -413
  1002. package/out/src/tools/golden-expand.js.map +0 -1
  1003. package/out/src/tools/golden-promote.d.ts.map +0 -1
  1004. package/out/src/tools/golden-promote.js +0 -244
  1005. package/out/src/tools/golden-promote.js.map +0 -1
  1006. package/out/src/tools/golden-relabel-street.d.ts +0 -196
  1007. package/out/src/tools/golden-relabel-street.d.ts.map +0 -1
  1008. package/out/src/tools/golden-relabel-street.js +0 -440
  1009. package/out/src/tools/golden-relabel-street.js.map +0 -1
  1010. package/out/src/tools/index.d.ts +0 -28
  1011. package/out/src/tools/index.d.ts.map +0 -1
  1012. package/out/src/tools/index.js +0 -28
  1013. package/out/src/tools/index.js.map +0 -1
  1014. package/out/src/tools/ingest-csv.d.ts.map +0 -1
  1015. package/out/src/tools/ingest-csv.js +0 -296
  1016. package/out/src/tools/ingest-csv.js.map +0 -1
  1017. package/out/src/tools/jsonl-to-parquet.d.ts +0 -61
  1018. package/out/src/tools/jsonl-to-parquet.d.ts.map +0 -1
  1019. package/out/src/tools/jsonl-to-parquet.js +0 -164
  1020. package/out/src/tools/jsonl-to-parquet.js.map +0 -1
  1021. package/out/src/tools/lint-shard-vocab.d.ts +0 -90
  1022. package/out/src/tools/lint-shard-vocab.d.ts.map +0 -1
  1023. package/out/src/tools/lint-shard-vocab.js +0 -281
  1024. package/out/src/tools/lint-shard-vocab.js.map +0 -1
  1025. package/out/src/tools/lint-shard.d.ts +0 -93
  1026. package/out/src/tools/lint-shard.d.ts.map +0 -1
  1027. package/out/src/tools/lint-shard.js +0 -354
  1028. package/out/src/tools/lint-shard.js.map +0 -1
  1029. package/out/src/tools/overlay-manifest.d.ts +0 -39
  1030. package/out/src/tools/overlay-manifest.d.ts.map +0 -1
  1031. package/out/src/tools/overlay-manifest.js +0 -98
  1032. package/out/src/tools/overlay-manifest.js.map +0 -1
  1033. package/out/src/tools/overture-subvenue.d.ts +0 -112
  1034. package/out/src/tools/overture-subvenue.d.ts.map +0 -1
  1035. package/out/src/tools/overture-subvenue.js +0 -144
  1036. package/out/src/tools/overture-subvenue.js.map +0 -1
  1037. package/out/src/tools/postcode-triples.d.ts +0 -175
  1038. package/out/src/tools/postcode-triples.d.ts.map +0 -1
  1039. package/out/src/tools/postcode-triples.js +0 -304
  1040. package/out/src/tools/postcode-triples.js.map +0 -1
  1041. package/out/src/tools/shard-kryptonite.d.ts +0 -32
  1042. package/out/src/tools/shard-kryptonite.d.ts.map +0 -1
  1043. package/out/src/tools/shard-kryptonite.js +0 -100
  1044. package/out/src/tools/shard-kryptonite.js.map +0 -1
  1045. package/out/src/tools/shard-translit.d.ts +0 -51
  1046. package/out/src/tools/shard-translit.d.ts.map +0 -1
  1047. package/out/src/tools/shard-translit.js +0 -175
  1048. package/out/src/tools/shard-translit.js.map +0 -1
  1049. package/out/src/tools/sub-venue/harvest.d.ts +0 -100
  1050. package/out/src/tools/sub-venue/harvest.d.ts.map +0 -1
  1051. package/out/src/tools/sub-venue/harvest.js +0 -168
  1052. package/out/src/tools/sub-venue/harvest.js.map +0 -1
  1053. package/out/src/tools/sub-venue/head-nouns.d.ts +0 -50
  1054. package/out/src/tools/sub-venue/head-nouns.d.ts.map +0 -1
  1055. package/out/src/tools/sub-venue/head-nouns.js +0 -210
  1056. package/out/src/tools/sub-venue/head-nouns.js.map +0 -1
  1057. package/out/src/tools/sub-venue/surfaces.d.ts +0 -45
  1058. package/out/src/tools/sub-venue/surfaces.d.ts.map +0 -1
  1059. package/out/src/tools/sub-venue/surfaces.js +0 -77
  1060. package/out/src/tools/sub-venue/surfaces.js.map +0 -1
  1061. package/out/src/tools/sub-venue/table.d.ts +0 -229
  1062. package/out/src/tools/sub-venue/table.d.ts.map +0 -1
  1063. package/out/src/tools/sub-venue/table.js +0 -108
  1064. package/out/src/tools/sub-venue/table.js.map +0 -1
  1065. package/out/src/tools/sub-venue/wikidata.d.ts +0 -26
  1066. package/out/src/tools/sub-venue/wikidata.d.ts.map +0 -1
  1067. package/out/src/tools/sub-venue/wikidata.js +0 -62
  1068. package/out/src/tools/sub-venue/wikidata.js.map +0 -1
  1069. package/out/src/tools/sub-venue-lexicon.d.ts +0 -156
  1070. package/out/src/tools/sub-venue-lexicon.d.ts.map +0 -1
  1071. package/out/src/tools/sub-venue-lexicon.js +0 -282
  1072. package/out/src/tools/sub-venue-lexicon.js.map +0 -1
  1073. package/out/src/tools/sub-venue-promotions.d.ts +0 -94
  1074. package/out/src/tools/sub-venue-promotions.d.ts.map +0 -1
  1075. package/out/src/tools/sub-venue-promotions.js +0 -266
  1076. package/out/src/tools/sub-venue-promotions.js.map +0 -1
  1077. package/out/src/types.d.ts +0 -221
  1078. package/out/src/types.d.ts.map +0 -1
  1079. package/out/src/types.js.map +0 -1
  1080. package/out/src/utils/align.d.ts +0 -93
  1081. package/out/src/utils/align.d.ts.map +0 -1
  1082. package/out/src/utils/align.js +0 -234
  1083. package/out/src/utils/align.js.map +0 -1
  1084. package/out/src/utils/golden.d.ts +0 -69
  1085. package/out/src/utils/golden.d.ts.map +0 -1
  1086. package/out/src/utils/golden.js +0 -127
  1087. package/out/src/utils/golden.js.map +0 -1
  1088. package/out/src/utils/index.d.ts +0 -14
  1089. package/out/src/utils/index.d.ts.map +0 -1
  1090. package/out/src/utils/index.js +0 -14
  1091. package/out/src/utils/index.js.map +0 -1
  1092. package/out/src/utils/license.d.ts.map +0 -1
  1093. package/out/src/utils/license.js.map +0 -1
  1094. package/out/src/utils/parquet.d.ts +0 -162
  1095. package/out/src/utils/parquet.d.ts.map +0 -1
  1096. package/out/src/utils/parquet.js +0 -262
  1097. package/out/src/utils/parquet.js.map +0 -1
  1098. package/out/src/utils/split.d.ts +0 -127
  1099. package/out/src/utils/split.d.ts.map +0 -1
  1100. package/out/src/utils/split.js +0 -204
  1101. package/out/src/utils/split.js.map +0 -1
  1102. package/out/src/utils/tokenize.d.ts +0 -56
  1103. package/out/src/utils/tokenize.d.ts.map +0 -1
  1104. package/out/src/utils/tokenize.js +0 -48
  1105. package/out/src/utils/tokenize.js.map +0 -1
  1106. package/out/src/utils/wof-json.d.ts +0 -109
  1107. package/out/src/utils/wof-json.d.ts.map +0 -1
  1108. package/out/src/utils/wof-json.js +0 -173
  1109. package/out/src/utils/wof-json.js.map +0 -1
  1110. package/src/adapters/ban/adapter.ts +0 -191
  1111. package/src/adapters/ban/street-decompose.ts +0 -96
  1112. package/src/adapters/fcc-bdc/adapter.ts +0 -174
  1113. package/src/adapters/geonames/adapter.ts +0 -200
  1114. package/src/adapters/geonames-postal/adapter.ts +0 -119
  1115. package/src/adapters/gnaf/adapter.ts +0 -149
  1116. package/src/adapters/gnaf/assemble.ts +0 -226
  1117. package/src/adapters/index.ts +0 -149
  1118. package/src/adapters/openaddresses/adapter.ts +0 -251
  1119. package/src/adapters/overture/adapter.ts +0 -162
  1120. package/src/adapters/state-hi-schools/adapter.ts +0 -164
  1121. package/src/adapters/synth-po-box/adapter.ts +0 -204
  1122. package/src/adapters/tiger/adapter.ts +0 -253
  1123. package/src/adapters/tiger/street-decompose.ts +0 -111
  1124. package/src/adapters/usgov-hrsa-fqhc/adapter.ts +0 -183
  1125. package/src/adapters/usgov-imls-pls/adapter.ts +0 -143
  1126. package/src/adapters/usgov-irs-bmf/adapter.ts +0 -163
  1127. package/src/adapters/usgov-nad/adapter.ts +0 -348
  1128. package/src/adapters/usgov-nppes/adapter.ts +0 -159
  1129. package/src/adapters/usgov-samhsa-treatment-locator/adapter.ts +0 -204
  1130. package/src/adapters/utils/index.ts +0 -233
  1131. package/src/adapters/wof-admin-jp/adapter.ts +0 -216
  1132. package/src/adapters/wof-admin-json/adapter.ts +0 -256
  1133. package/src/adapters/wof-json-rows.ts +0 -79
  1134. package/src/adapters/wof-postalcode-json/adapter.ts +0 -183
  1135. package/src/build.ts +0 -386
  1136. package/src/index.ts +0 -14
  1137. package/src/name-prone-us-suffixes.ts +0 -12
  1138. package/src/parquet-wrapper/index.ts +0 -9
  1139. package/src/parquet-wrapper/reader.ts +0 -97
  1140. package/src/parquet-wrapper/schema.ts +0 -88
  1141. package/src/parquet-wrapper/writer.ts +0 -110
  1142. package/src/runner.ts +0 -317
  1143. package/src/shard-recipes/anchor-absorption.ts +0 -103
  1144. package/src/shard-recipes/bare-country.ts +0 -95
  1145. package/src/shard-recipes/boundary-stress.ts +0 -101
  1146. package/src/shard-recipes/country-balanced.ts +0 -524
  1147. package/src/shard-recipes/cz-pcfirst-preposition.ts +0 -111
  1148. package/src/shard-recipes/fr-admin-split.ts +0 -239
  1149. package/src/shard-recipes/fr-bare-street.ts +0 -170
  1150. package/src/shard-recipes/fr-fragment.ts +0 -332
  1151. package/src/shard-recipes/fr-lieudit.ts +0 -302
  1152. package/src/shard-recipes/fr-order.ts +0 -258
  1153. package/src/shard-recipes/german.ts +0 -170
  1154. package/src/shard-recipes/house-venue.ts +0 -88
  1155. package/src/shard-recipes/index.ts +0 -95
  1156. package/src/shard-recipes/intersection.ts +0 -630
  1157. package/src/shard-recipes/locale.ts +0 -599
  1158. package/src/shard-recipes/nl-postcode.ts +0 -115
  1159. package/src/shard-recipes/no-fragment.ts +0 -219
  1160. package/src/shard-recipes/no-street-led.ts +0 -143
  1161. package/src/shard-recipes/no-street.ts +0 -86
  1162. package/src/shard-recipes/po-box-cedex.ts +0 -920
  1163. package/src/shard-recipes/po-box.ts +0 -119
  1164. package/src/shard-recipes/reviewed-postcode-tail.ts +0 -189
  1165. package/src/shard-recipes/scaffold.ts +0 -360
  1166. package/src/shard-recipes/si-bare-village.ts +0 -97
  1167. package/src/shard-recipes/street-affix.ts +0 -826
  1168. package/src/shard-recipes/street-bare.ts +0 -101
  1169. package/src/shard-recipes/street.ts +0 -82
  1170. package/src/shard-recipes/sub-venue-sources.ts +0 -885
  1171. package/src/shard-recipes/sub-venue.ts +0 -984
  1172. package/src/shard-recipes/trailing-region.ts +0 -183
  1173. package/src/shard-recipes/unit.ts +0 -321
  1174. package/src/synthesizers/anchor-absorption.ts +0 -290
  1175. package/src/synthesizers/boundary-stress.ts +0 -531
  1176. package/src/synthesizers/german.ts +0 -251
  1177. package/src/synthesizers/house-venue.ts +0 -330
  1178. package/src/synthesizers/intersection.ts +0 -232
  1179. package/src/synthesizers/no-street.ts +0 -349
  1180. package/src/synthesizers/po-box.ts +0 -339
  1181. package/src/synthesizers/street.ts +0 -274
  1182. package/src/synthesizers/utils.ts +0 -903
  1183. package/src/tools/align-shard.ts +0 -70
  1184. package/src/tools/audit.ts +0 -399
  1185. package/src/tools/corpus-stats.ts +0 -184
  1186. package/src/tools/fetch/ban.ts +0 -290
  1187. package/src/tools/fetch/download.ts +0 -176
  1188. package/src/tools/fetch/geonames-dump.ts +0 -267
  1189. package/src/tools/fetch/geonames-postal.ts +0 -180
  1190. package/src/tools/fetch/hrsa.ts +0 -68
  1191. package/src/tools/fetch/imls-pls.ts +0 -158
  1192. package/src/tools/fetch/index.ts +0 -147
  1193. package/src/tools/fetch/nad.ts +0 -342
  1194. package/src/tools/fetch/nppes.ts +0 -174
  1195. package/src/tools/fetch/openaddresses.ts +0 -404
  1196. package/src/tools/fetch/ourairports.ts +0 -171
  1197. package/src/tools/fetch/ppd.ts +0 -137
  1198. package/src/tools/fetch/state-hi-schools.ts +0 -208
  1199. package/src/tools/fetch/state-sources.ts +0 -155
  1200. package/src/tools/fetch/tiger-full.ts +0 -354
  1201. package/src/tools/fetch/wikidata-subvenue.ts +0 -386
  1202. package/src/tools/golden-expand.ts +0 -584
  1203. package/src/tools/golden-promote.ts +0 -353
  1204. package/src/tools/golden-relabel-street.ts +0 -685
  1205. package/src/tools/index.ts +0 -28
  1206. package/src/tools/ingest-csv.ts +0 -422
  1207. package/src/tools/jsonl-to-parquet.ts +0 -221
  1208. package/src/tools/lint-shard-vocab.ts +0 -409
  1209. package/src/tools/lint-shard.ts +0 -543
  1210. package/src/tools/overlay-manifest.ts +0 -157
  1211. package/src/tools/overture-subvenue.ts +0 -215
  1212. package/src/tools/postcode-triples.ts +0 -375
  1213. package/src/tools/shard-kryptonite.ts +0 -139
  1214. package/src/tools/shard-translit.ts +0 -245
  1215. package/src/tools/sub-venue/harvest.ts +0 -235
  1216. package/src/tools/sub-venue/head-nouns.ts +0 -242
  1217. package/src/tools/sub-venue/surfaces.ts +0 -95
  1218. package/src/tools/sub-venue/table.ts +0 -281
  1219. package/src/tools/sub-venue/wikidata.ts +0 -85
  1220. package/src/tools/sub-venue-lexicon.ts +0 -431
  1221. package/src/tools/sub-venue-promotions.ts +0 -330
  1222. package/src/types.ts +0 -247
  1223. package/src/utils/align.ts +0 -331
  1224. package/src/utils/golden.ts +0 -176
  1225. package/src/utils/index.ts +0 -14
  1226. package/src/utils/parquet.ts +0 -391
  1227. package/src/utils/split.ts +0 -279
  1228. package/src/utils/tokenize.ts +0 -78
  1229. package/src/utils/wof-json.ts +0 -244
  1230. /package/{src → lib}/adapters/state-ia-contractors/adapter.ts +0 -0
  1231. /package/{src → lib}/adapters/state-ny-notaries/adapter.ts +0 -0
  1232. /package/{src → lib}/adapters/state-tx-notaries/adapter.ts +0 -0
  1233. /package/{src → lib}/codex/us-fips-state.ts +0 -0
  1234. /package/{src → lib}/tools/gb-title-case.ts +0 -0
  1235. /package/{src → lib}/utils/license.ts +0 -0
  1236. /package/out/{src/adapters → adapters}/ban/adapter.d.ts +0 -0
  1237. /package/out/{src/adapters → adapters}/ban/street-decompose.d.ts +0 -0
  1238. /package/out/{src/adapters → adapters}/fcc-bdc/adapter.d.ts +0 -0
  1239. /package/out/{src/adapters → adapters}/geonames/adapter.d.ts +0 -0
  1240. /package/out/{src/adapters → adapters}/openaddresses/adapter.d.ts +0 -0
  1241. /package/out/{src/adapters → adapters}/state-ia-contractors/adapter.d.ts +0 -0
  1242. /package/out/{src/adapters → adapters}/state-ia-contractors/adapter.js +0 -0
  1243. /package/out/{src/adapters → adapters}/state-ny-notaries/adapter.d.ts +0 -0
  1244. /package/out/{src/adapters → adapters}/state-ny-notaries/adapter.js +0 -0
  1245. /package/out/{src/adapters → adapters}/state-tx-notaries/adapter.d.ts +0 -0
  1246. /package/out/{src/adapters → adapters}/state-tx-notaries/adapter.js +0 -0
  1247. /package/out/{src/adapters → adapters}/synth-po-box/adapter.d.ts +0 -0
  1248. /package/out/{src/adapters → adapters}/tiger/street-decompose.d.ts +0 -0
  1249. /package/out/{src/adapters → adapters}/usgov-nppes/adapter.d.ts +0 -0
  1250. /package/out/{src/adapters → adapters}/usgov-samhsa-treatment-locator/adapter.d.ts +0 -0
  1251. /package/out/{src/adapters → adapters}/wof-admin-jp/adapter.d.ts +0 -0
  1252. /package/out/{src/codex → codex}/us-fips-state.d.ts +0 -0
  1253. /package/out/{src/codex → codex}/us-fips-state.js +0 -0
  1254. /package/out/{src/tools → tools}/fetch/ppd.d.ts +0 -0
  1255. /package/out/{src/tools → tools}/gb-title-case.d.ts +0 -0
  1256. /package/out/{src/tools → tools}/gb-title-case.js +0 -0
  1257. /package/out/{src/tools → tools}/golden-promote.d.ts +0 -0
  1258. /package/out/{src/tools → tools}/ingest-csv.d.ts +0 -0
  1259. /package/out/{src/types.js → types.js} +0 -0
  1260. /package/out/{src/utils → utils}/license.d.ts +0 -0
  1261. /package/out/{src/utils → utils}/license.js +0 -0
@@ -0,0 +1,532 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * Boundary-instability synthesizer (#375 — the highest-impact parser change). The failure taxonomy
7
+ *
8
+ * The within-token-punctuation decomposition (#702) found one failure FAMILY surfacing under many
9
+ * names: the model mis-places token boundaries between adjacent components when the boundary is
10
+ * ambiguous or unmarked. This generator emits diverse BIO-labeled rows that put the gold boundary
11
+ * exactly where the model wobbles, so a retrain learns the boundary from context, not the
12
+ * lexeme.
13
+ *
14
+ * The four token-aligned stress shapes, all in BASE LOCALES (US/FR/DE) so the slice never
15
+ * introduces tokens the base corpus lacks (the #511 base-consistency lint flagged an earlier
16
+ * AU-bearing draft: AU 4-digit postcodes collide with US house numbers, and AU localities are
17
+ * absent from the US/FR/DE base — a real contradiction). Each component is a whitespace-separated
18
+ * token run, so `alignRow` labels it cleanly:
19
+ *
20
+ * 1. `street-eats-affix` — multi-word street + suffix (`Country Club Rd` → street + street_suffix),
21
+ * the #1 wobble: the model keeps the suffix in the street.
22
+ * 2. `comma-less-city-state` — no comma between street / locality / region (`100 Main St Springfield
23
+ * IL 62701`), the #694 family: concatenated input loses the segmentation cue. US-only (US
24
+ * zips are base-consistent; the boundary is locale-agnostic).
25
+ * 3. `fr-prefix` — FR street-type prefix split from the name (`Rue Jean-Baptiste Lebas` →
26
+ * street_prefix
27
+ *
28
+ * - Street), postcode-first order.
29
+ * 4. `house-number-after-street` — FR/DE number-follows-street (`Neuve-des-Capucines 5` → street +
30
+ * house_number), the model absorbs the number into the street.
31
+ *
32
+ * Two BALANCING shapes (added 2026-06-18 after the v1.6.0 probes). The first pass at weight 1.0
33
+ * lifted the boundaries but over-fit a NARROW distribution — every row was a clean, full,
34
+ * structured address — so the model regressed on out-of-distribution real rows (held-out US
35
+ * locality 66.3→58.2%). These two widen the distribution the slice teaches over, per the
36
+ * diagnosis (scripts/eval/locality-regression-probe): 5. `bare-locality` — locality with NO
37
+ * street (`Public Library, Lisbon ND`, `75003 Paris`), the ship-blocker: 84% of the v1.6.0
38
+ * locality regression was DROPPED locality on bare "City, STATE" rows, because every other shape
39
+ * placed a street before the city. Bare / comma-less / postcode'd / venue-prefixed forms, US +
40
+ * FR. 6. `house-number-before-street` — the confounding mirror of #4 (same FR vocab, number
41
+ * BEFORE the street). A balanced before:after mix breaks the positional shortcut behind the #4
42
+ * order-bias.
43
+ *
44
+ * EXCLUDED: the region+postcode glue (`NY14201` — sub-token, no punctuation to split) and the
45
+ * AU/NZ/UK slash unit-convention (`4/2A` → unit+house_number). The slash labels cleanly (the
46
+ * tokenizer splits `/`) and is the worst within-token class — but it inherently requires non-base
47
+ * AU/NZ/UK locales, which contradict the US/FR/DE base (the lint catch). It belongs in a
48
+ * separately-scoped AU/NZ/UK boundary-coverage slice that ALSO adds AU base coverage, not in this
49
+ * base-locale slice. `synthesizers/boundary-stress.test.ts` proves the alignments.
50
+ */
51
+
52
+ import type { DirectionalAbbreviation } from "@mailwoman/codex/us"
53
+
54
+ import { pick } from "#synthesizers/utils"
55
+ import type { CanonicalRow } from "#types"
56
+
57
+ /* oxlint-disable sister-software/no-unnamed-threshold -- the bare decimals below are weighted-sampler
58
+ cutoffs, not thresholds: `const r = random()` followed by a cascade of `r < 0.4` branches IS the
59
+ output distribution, and reading the cascade top-to-bottom is how you see it. Naming each cutoff
60
+ would hide the distribution behind a wall of identifiers. Genuine thresholds in these files are
61
+ extracted as named constants above. */
62
+
63
+ export type BoundaryStressTemplate =
64
+ | "street-eats-affix"
65
+ | "comma-less-city-state"
66
+ | "fr-prefix"
67
+ | "house-number-after-street"
68
+ // Added 2026-06-18 after the v1.6.0 probes (the slice's NARROW distribution over-fit "full structured
69
+ // address" and regressed OOD). These two re-balance the contexts the model actually sees:
70
+ | "bare-locality" // the ship-blocker fix: locality with NO street (the 84%-dropped "City, STATE" rows)
71
+ | "house-number-before-street"
72
+
73
+ // the confounding mirror of house-number-after-street (number position)
74
+
75
+ export interface BoundaryStressBaseTuple {
76
+ locality: string
77
+ region: string
78
+ postcode: string
79
+ country: string
80
+ }
81
+
82
+ export interface BoundaryStressSynthesisOpts {
83
+ random?: () => number
84
+ /**
85
+ * Force a specific shape (tests + balanced slice composition).
86
+ */
87
+ forceTemplate?: BoundaryStressTemplate
88
+ }
89
+
90
+ export interface SynthesizedBoundaryStressRow {
91
+ raw: string
92
+ components: CanonicalRow["components"]
93
+ locale: string
94
+ template: BoundaryStressTemplate
95
+ }
96
+
97
+ /**
98
+ * Multi-word street names — the suffix boundary only bites when "Club" could be read as part of the name. Single-word
99
+ * names alone teach nothing about the suffix edge. Multi-word names are what make the suffix boundary BITE (the model
100
+ * must not read the trailing suffix word as part of the name). Kept diverse so the slice teaches the boundary, not the
101
+ * lexeme.
102
+ */
103
+ const MULTIWORD_STREETS = [
104
+ "Country Club",
105
+ "Martin Luther King",
106
+ "Forest Hill",
107
+ "Lake View",
108
+ "Spring Valley",
109
+ "Cedar Ridge",
110
+ "Old Mill",
111
+ "Sunset Park",
112
+ "Maple Grove",
113
+ "Stone Creek",
114
+ "Glen Cove",
115
+ "Pine Bluff",
116
+ "Fox Hollow",
117
+ "Briar Patch",
118
+ "West End",
119
+ "College Station",
120
+ "Quail Hollow",
121
+ "Eagle Ridge",
122
+ "Deer Run",
123
+ "Bear Creek",
124
+ "Willow Bend",
125
+ "Cypress Point",
126
+ "Laurel Oak",
127
+ "Magnolia Park",
128
+ "Cherry Hill",
129
+ "Walnut Grove",
130
+ "Birch Hollow",
131
+ "Aspen Grove",
132
+ "Juniper Ridge",
133
+ "Hidden Valley",
134
+ "Rolling Hills",
135
+ "Tanglewood",
136
+ "Meadow Brook",
137
+ "Clover Field",
138
+ "Sunrise Point",
139
+ "Harbor View",
140
+ "Bay Shore",
141
+ "Ocean Breeze",
142
+ "Mountain View",
143
+ "Valley Forge",
144
+ "Liberty Square",
145
+ "Washington Crossing",
146
+ "Kings Highway",
147
+ "Queens Check",
148
+ "Princeton Junction",
149
+ ] as const
150
+
151
+ const SINGLE_STREETS = [
152
+ "Main",
153
+ "Oak",
154
+ "Maple",
155
+ "Park",
156
+ "Washington",
157
+ "Lincoln",
158
+ "Church",
159
+ "River",
160
+ "Pine",
161
+ "Cedar",
162
+ "Elm",
163
+ "Jefferson",
164
+ "Madison",
165
+ "Adams",
166
+ "Jackson",
167
+ "Franklin",
168
+ "Highland",
169
+ "Sunset",
170
+ "Lakeview",
171
+ "Hillcrest",
172
+ "Cambridge",
173
+ "Devonshire",
174
+ "Sherwood",
175
+ "Kingston",
176
+ "Berkshire",
177
+ "Aberdeen",
178
+ "Belmont",
179
+ "Carlisle",
180
+ "Dover",
181
+ "Easton",
182
+ "Fairfax",
183
+ "Greenwood",
184
+ "1st",
185
+ "2nd",
186
+ "3rd",
187
+ "4th",
188
+ "5th",
189
+ "12th",
190
+ "42nd",
191
+ ] as const
192
+
193
+ const SUFFIXES = [
194
+ "St",
195
+ "Street",
196
+ "Ave",
197
+ "Avenue",
198
+ "Rd",
199
+ "Road",
200
+ "Blvd",
201
+ "Boulevard",
202
+ "Ln",
203
+ "Lane",
204
+ "Dr",
205
+ "Drive",
206
+ "Pkwy",
207
+ "Parkway",
208
+ "Way",
209
+ "Ct",
210
+ "Court",
211
+ "Pl",
212
+ "Place",
213
+ "Cir",
214
+ "Circle",
215
+ "Ter",
216
+ "Terrace",
217
+ "Hwy",
218
+ "Trail",
219
+ "Loop",
220
+ "Cres",
221
+ "Crescent",
222
+ "Row",
223
+ "Walk",
224
+ ] as const
225
+
226
+ // Vocabulary compile-checked against the codex; the ORDER stays this literal's. `Object.values(DirectionalAbbreviation)`
227
+ // runs N,E,S,W,… — deriving the array from it would re-map every pick() draw and change shipped slice bytes.
228
+ const DIRECTIONALS = ["N", "S", "E", "W", "NE", "NW", "SE", "SW"] as const satisfies readonly DirectionalAbbreviation[]
229
+
230
+ /**
231
+ * FR street-type prefixes + hyphenated honorific street names (the hyphen is incidental; the boundary stress is the
232
+ * prefix↔name split + the number-after-street order).
233
+ */
234
+ const FR_PREFIXES = [
235
+ "Rue",
236
+ "Avenue",
237
+ "Boulevard",
238
+ "Place",
239
+ "Impasse",
240
+ "Chemin",
241
+ "Quai",
242
+ "Cours",
243
+ "Allée",
244
+ "Passage",
245
+ "Square",
246
+ "Villa",
247
+ "Sentier",
248
+ "Promenade",
249
+ ] as const
250
+
251
+ const FR_NAMES = [
252
+ "Jean-Baptiste Lebas",
253
+ "Neuve-des-Capucines",
254
+ "Charles-de-Gaulle",
255
+ "du Général-Leclerc",
256
+ "de la République",
257
+ "des Trois-Frères",
258
+ "Victor-Hugo",
259
+ "Jean-Jaurès",
260
+ "de l'Abreuvoir",
261
+ "Émile-Zola",
262
+ "Gambetta",
263
+ "Jean-Moulin",
264
+ "des Martyrs-de-la-Résistance",
265
+ "du Maréchal-Foch",
266
+ "Pierre-et-Marie-Curie",
267
+ "Antoine-de-Saint-Exupéry",
268
+ "de la Liberté",
269
+ "des Quatre-Vents",
270
+ "du Faubourg-Saint-Antoine",
271
+ "Saint-Honoré",
272
+ "de la Pompe",
273
+ "des Petits-Champs",
274
+ "Léon-Blum",
275
+ "Aristide-Briand",
276
+ ] as const
277
+
278
+ /**
279
+ * Org/venue prefixes for the bare-locality shape — the v1.6.0 locality drop hit org-PREFIXED real rows hardest ("LISBON
280
+ * PUBLIC LIBRARY, …, Lisbon ND"; "Alburg Health Center"). Teaching the locality WITH a leading venue keeps the model
281
+ * emitting it on facility-style addresses (NPPES/HRSA shapes). `venue` is a base ComponentTag. #511-LINTED 2026-06-18
282
+ * (scripts/lint-venue-vocab — scan of nppes/hrsa/tiger/nad/wof-admin): every token here is venue-DOMINANT in the base,
283
+ * so the slice agrees with it. The first draft was naive — 9 terms were dropped because their tokens are dominantly
284
+ * street/locality and would CONTRADICT the base the way Madison-as-street did (#511): "Fire" 93% street, "Veterans" 94%
285
+ * street, "City" 68% locality, "Hall" 63% street, "Memorial"/"Hospital" 62-63% street, "Recreation" 79% street, "Town"
286
+ * 48% locality, "Library" 51% street, "County" 68% street, "Arts"/"Courthouse"/"Municipal" dependent_locality. Kept
287
+ * tokens: Clinic 98%, Practice 98%, Dental 100%, Health 99%, Medical 88%, Community 92%, Department 90%, Group 87%,
288
+ * Center 65%, School 70%, Public 89%, Elementary/Family 97% (all venue).
289
+ */
290
+ const VENUES = [
291
+ "Community Center",
292
+ "Health Center",
293
+ "Medical Center",
294
+ "Medical Clinic",
295
+ "Family Clinic",
296
+ "Community Clinic",
297
+ "Dental Clinic",
298
+ "Family Practice",
299
+ "Medical Practice",
300
+ "Dental Group",
301
+ "Medical Group",
302
+ "Health Department",
303
+ "Elementary School",
304
+ "Public School",
305
+ ] as const
306
+
307
+ /**
308
+ * Localities DERIVED from the base corpus (#511): every name here is verified locality-DOMINANT in the training data
309
+ * (B-locality ≫ I-street), so the slice agrees with the base instead of fighting it. The night's targeted scan caught
310
+ * the prior vocab (Madison, Portland, Springfield IL…) at 92–100% STREET in the base ("Madison Ave"), the "5th Avenue
311
+ * Theatre" #511 trap. See 2026-06-17-locality-vocab-fix.
312
+ */
313
+ const US_TUPLES: ReadonlyArray<BoundaryStressBaseTuple> = [
314
+ { locality: "Albuquerque", region: "NM", postcode: "87102", country: "US" },
315
+ { locality: "Indianapolis", region: "IN", postcode: "46203", country: "US" },
316
+ { locality: "Sacramento", region: "CA", postcode: "95823", country: "US" },
317
+ { locality: "Rochester", region: "NY", postcode: "14606", country: "US" },
318
+ { locality: "Jacksonville", region: "FL", postcode: "32209", country: "US" },
319
+ { locality: "Portsmouth", region: "VA", postcode: "23704", country: "US" },
320
+ { locality: "Merced", region: "CA", postcode: "95340", country: "US" },
321
+ { locality: "Miami", region: "FL", postcode: "33125", country: "US" },
322
+ { locality: "Tampa", region: "FL", postcode: "33624", country: "US" },
323
+ { locality: "Orlando", region: "FL", postcode: "32827", country: "US" },
324
+ { locality: "Tulsa", region: "OK", postcode: "74133", country: "US" },
325
+ { locality: "Louisville", region: "KY", postcode: "40203", country: "US" },
326
+ { locality: "Nashville", region: "TN", postcode: "37207", country: "US" },
327
+ { locality: "Spokane", region: "WA", postcode: "99202", country: "US" },
328
+ { locality: "Akron", region: "OH", postcode: "44313", country: "US" },
329
+ { locality: "Fairbanks", region: "AK", postcode: "99701", country: "US" },
330
+ { locality: "Plano", region: "TX", postcode: "75024", country: "US" },
331
+ { locality: "Shreveport", region: "LA", postcode: "71103", country: "US" },
332
+ { locality: "Southfield", region: "MI", postcode: "48034", country: "US" },
333
+ { locality: "Glendale", region: "CA", postcode: "91203", country: "US" },
334
+ { locality: "Philadelphia", region: "PA", postcode: "19104", country: "US" },
335
+ { locality: "Brooklyn", region: "NY", postcode: "11230", country: "US" },
336
+ { locality: "Bronx", region: "NY", postcode: "10461", country: "US" },
337
+ { locality: "Fairport", region: "NY", postcode: "14450", country: "US" },
338
+ { locality: "Syracuse", region: "NE", postcode: "68446", country: "US" },
339
+ { locality: "Marion", region: "AR", postcode: "72364", country: "US" },
340
+ { locality: "Chicago", region: "IL", postcode: "60625", country: "US" },
341
+ { locality: "Springfield", region: "MA", postcode: "01108", country: "US" },
342
+ ]
343
+
344
+ /**
345
+ * FR localities DERIVED from the FR (ban) slices specifically — where these famous cities are 95–99% locality-DOMINANT
346
+ * (Paris 515605/24789, Marseille 247014/1752, Lyon 106239/3114). NB: the all-slice scan falsely flagged them
347
+ * street-dominant by undersampling the FR block (parts 180–209) and mixing in US street-contexts; the FR-block scan is
348
+ * the honest distribution. Dept-diverse (28 depts), region empty (French addresses carry no region token; the
349
+ * generator's region-optional path handles it).
350
+ */
351
+ const FR_TUPLES: ReadonlyArray<BoundaryStressBaseTuple> = [
352
+ { locality: "Paris", region: "", postcode: "75003", country: "FR" },
353
+ { locality: "Marseille", region: "", postcode: "13016", country: "FR" },
354
+ { locality: "Lyon", region: "", postcode: "69009", country: "FR" },
355
+ { locality: "Perpignan", region: "", postcode: "66000", country: "FR" },
356
+ { locality: "Toulon", region: "", postcode: "83100", country: "FR" },
357
+ { locality: "Avignon", region: "", postcode: "84140", country: "FR" },
358
+ { locality: "Poitiers", region: "", postcode: "86000", country: "FR" },
359
+ { locality: "Arles", region: "", postcode: "13280", country: "FR" },
360
+ { locality: "Annecy", region: "", postcode: "74940", country: "FR" },
361
+ { locality: "Mulhouse", region: "", postcode: "68200", country: "FR" },
362
+ { locality: "Carpentras", region: "", postcode: "84200", country: "FR" },
363
+ { locality: "Antony", region: "", postcode: "92160", country: "FR" },
364
+ { locality: "Sartrouville", region: "", postcode: "78500", country: "FR" },
365
+ { locality: "Épinal", region: "", postcode: "88000", country: "FR" },
366
+ { locality: "Meyzieu", region: "", postcode: "69330", country: "FR" },
367
+ { locality: "Sens", region: "", postcode: "89100", country: "FR" },
368
+ { locality: "Brunoy", region: "", postcode: "91800", country: "FR" },
369
+ { locality: "Rambouillet", region: "", postcode: "78120", country: "FR" },
370
+ ]
371
+
372
+ // NB: no DE_TUPLES — German cities are street-dominated too ("Berliner Straße"), and the base yielded
373
+ // zero locality-dominant DE towns in the scan, so house-number-after-street is FR-only here. DE's
374
+ // native-order number-after-street is covered by the dedicated synth-german slice.
375
+ const houseNumber = (random: () => number): string => String(1 + Math.floor(random() * 4999))
376
+ const localeFor: Record<string, string> = { US: "en-US", FR: "fr-FR", DE: "de-DE" }
377
+
378
+ const ALL_TEMPLATES: readonly BoundaryStressTemplate[] = [
379
+ "street-eats-affix",
380
+ "comma-less-city-state",
381
+ "fr-prefix",
382
+ "house-number-after-street",
383
+ "bare-locality",
384
+ "house-number-before-street",
385
+ ]
386
+
387
+ /**
388
+ * Synthesize one boundary-stress row. `base` is optional — when omitted, a locale-appropriate tuple is drawn from the
389
+ * internal pools (so the generator is self-contained; a build script can pass real tuples for scale + diversity). Every
390
+ * component value is a verbatim substring of `raw`, so `alignRow` locates + BIO-labels it.
391
+ */
392
+ export function synthesizeBoundaryStressRow(
393
+ base: BoundaryStressBaseTuple | undefined,
394
+ opts: BoundaryStressSynthesisOpts = {}
395
+ ): SynthesizedBoundaryStressRow {
396
+ const random = opts.random ?? Math.random
397
+ const template = opts.forceTemplate ?? pick(ALL_TEMPLATES, random)
398
+
399
+ if (template === "bare-locality") {
400
+ // The v1.6.0 ship-blocker fix: locality was DROPPED on bare/short "City, STATE" rows (84% of the
401
+ // regression) because every prior shape placed a street before the city, so the model learned "the
402
+ // city follows a street" and stopped emitting locality without one. Teach the locality with NO street,
403
+ // across the forms real data carries it — bare, comma-LESS, postcode'd, and venue/org-prefixed.
404
+ const b = base ?? (random() < 0.3 ? pick(FR_TUPLES, random) : pick(US_TUPLES, random))
405
+ const venue = random() < 0.45 ? pick(VENUES, random) : ""
406
+ // ~12% carry a trailing country token — the v1.7.1 country patch (DeepSeek 2026-06-18). The pure
407
+ // "City, STATE" bare rows carry NO country token, which cost ~4pp on us.country_homograph in v1.7.0;
408
+ // teaching "…, USA"/"…, France" recovers it as a single-variable additive without diluting locality.
409
+ const withCountry = random() < 0.12
410
+
411
+ if (b.country === "FR") {
412
+ // FR carries no region token; "{postcode} {locality}" is the bare FR form.
413
+ const core = `${b.postcode} ${b.locality}${withCountry ? ", France" : ""}`
414
+
415
+ return {
416
+ raw: venue ? `${venue}, ${core}` : core,
417
+ components: {
418
+ ...(venue ? { venue } : {}),
419
+ postcode: b.postcode,
420
+ locality: b.locality,
421
+ ...(withCountry ? { country: "France" } : {}),
422
+ },
423
+ locale: "fr-FR",
424
+ template,
425
+ }
426
+ }
427
+
428
+ const withZip = random() < 0.5
429
+ const comma = random() < 0.6 ? "," : "" // include the comma-LESS "City STATE" form too
430
+ // "United States" (United 98% / States 98% country in the base), NOT "USA" — the #511 lint found
431
+ // "USA" is locality-DOMINANT (75%, only 6% country) in the base; labeling it country would contradict.
432
+ const countryName = "United States"
433
+ const core = `${b.locality}${comma} ${b.region}${withZip ? ` ${b.postcode}` : ""}${withCountry ? `, ${countryName}` : ""}`
434
+
435
+ return {
436
+ raw: venue ? `${venue}, ${core}` : core,
437
+ components: {
438
+ ...(venue ? { venue } : {}),
439
+ locality: b.locality,
440
+ region: b.region,
441
+ ...(withZip ? { postcode: b.postcode } : {}),
442
+ ...(withCountry ? { country: countryName } : {}),
443
+ },
444
+ locale: "en-US",
445
+ template,
446
+ }
447
+ }
448
+
449
+ if (
450
+ template === "fr-prefix" ||
451
+ template === "house-number-after-street" ||
452
+ template === "house-number-before-street"
453
+ ) {
454
+ // FR-only (no base-consistent DE locality vocab; see the DE_TUPLES note above).
455
+ const b = base ?? pick(FR_TUPLES, random)
456
+ const name = pick(FR_NAMES, random)
457
+ const hn = houseNumber(random)
458
+
459
+ if (template === "house-number-before-street") {
460
+ // The confounding MIRROR of house-number-after-street: the SAME FR street vocab with the number
461
+ // BEFORE the name. A balanced before:after mix (the build/recipe sets the ratio, ~7:3 to keep US
462
+ // house_number 99.8% safe) teaches the model a street-adjacent number is a house_number by FORM,
463
+ // not position — the probe found v1.6.0 confidently absorbs the TRAILING number into street (I-street
464
+ // P=0.96), the order-bias.
465
+ const raw = `${hn} ${name}, ${b.postcode} ${b.locality}`
466
+
467
+ return {
468
+ raw,
469
+ components: { house_number: hn, street: name, postcode: b.postcode, locality: b.locality },
470
+ locale: localeFor[b.country] ?? "fr-FR",
471
+ template,
472
+ }
473
+ }
474
+
475
+ if (template === "fr-prefix") {
476
+ const prefix = pick(FR_PREFIXES, random)
477
+ // "{hn} {prefix} {name}, {postcode} {locality}" — postcode-first, prefix split from the name.
478
+ const raw = `${hn} ${prefix} ${name}, ${b.postcode} ${b.locality}`
479
+
480
+ return {
481
+ raw,
482
+ components: {
483
+ house_number: hn,
484
+ street_prefix: prefix,
485
+ street: name,
486
+ postcode: b.postcode,
487
+ locality: b.locality,
488
+ },
489
+ locale: localeFor[b.country] ?? "fr-FR",
490
+ template,
491
+ }
492
+ }
493
+
494
+ // house-number-after-street: "{name} {hn}, {postcode} {locality}" — number FOLLOWS the street.
495
+ const raw = `${name} ${hn}, ${b.postcode} ${b.locality}`
496
+
497
+ return {
498
+ raw,
499
+ components: { street: name, house_number: hn, postcode: b.postcode, locality: b.locality },
500
+ locale: localeFor[b.country] ?? "fr-FR",
501
+ template,
502
+ }
503
+ }
504
+
505
+ // en-US street shapes (street-eats-affix + comma-less). US-only — US zips are base-consistent and
506
+ // the boundary these teach is locale-agnostic; no need to introduce a non-base locale.
507
+ const b = base ?? pick(US_TUPLES, random)
508
+ const hn = houseNumber(random)
509
+ const dir = random() < 0.4 ? pick(DIRECTIONALS, random) : ""
510
+ const name = random() < 0.7 ? pick(MULTIWORD_STREETS, random) : pick(SINGLE_STREETS, random)
511
+ const suffix = pick(SUFFIXES, random)
512
+ const streetCore = `${dir ? `${dir} ` : ""}${name} ${suffix}`
513
+
514
+ const components: CanonicalRow["components"] = {
515
+ house_number: hn,
516
+ ...(dir ? { street_prefix: dir } : {}),
517
+ street: name,
518
+ street_suffix: suffix,
519
+ locality: b.locality,
520
+ region: b.region,
521
+ postcode: b.postcode,
522
+ }
523
+
524
+ const raw =
525
+ template === "comma-less-city-state"
526
+ ? // no commas anywhere — the segmentation cue is gone
527
+ `${hn} ${streetCore} ${b.locality} ${b.region} ${b.postcode}`
528
+ : // standard delimited, multi-word street stresses the suffix boundary
529
+ `${hn} ${streetCore}, ${b.locality}, ${b.region} ${b.postcode}`
530
+
531
+ return { raw, components, locale: localeFor[b.country] ?? "en-US", template }
532
+ }