@mailwoman/corpus 9.4.0 → 10.1.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 (1724) hide show
  1. package/README.md +134 -32
  2. package/data/PROVENANCE.md +623 -17
  3. package/data/address-source-register.json +14249 -0
  4. package/data/builds/v0.7.0-de-holdout/inputs.json +22 -0
  5. package/data/builds/v0.8.0-registers/inputs.json +92 -0
  6. package/data/license-decisions.json +1603 -0
  7. package/data/licenses/PROVENANCE.md +65 -0
  8. package/data/licenses/cdla-permissive-2.0.md +43 -0
  9. package/data/licenses/geonames-publication.md +34 -0
  10. package/data/licenses/licence-ouverte-2.0.md +36 -0
  11. package/data/licenses/national-address-database.md +46 -0
  12. package/data/licenses/nlod-2.0.md +90 -0
  13. package/data/licenses/sirene-publication.md +38 -0
  14. package/data/licenses/whosonfirst-licenses.md +65 -0
  15. package/data/source-resolutions.json +804 -0
  16. package/data/sub-venue-lexicon.json +1 -1
  17. package/data/training-manifests/v0.7.0-de-holdout.effective.json +477 -0
  18. package/data/training-manifests/v0.7.0-de-holdout.json +78 -0
  19. package/lib/adapters/cordis/adapter.ts +785 -0
  20. package/lib/adapters/dedup-key.ts +40 -0
  21. package/lib/adapters/errors.ts +21 -0
  22. package/lib/adapters/geonames/adapter.ts +43 -53
  23. package/lib/adapters/geonames/postal/adapter.ts +116 -0
  24. package/lib/adapters/gleif/adapter.ts +828 -0
  25. package/lib/adapters/libpostal-dictionary.ts +39 -0
  26. package/lib/adapters/openaddresses/adapter.ts +54 -61
  27. package/lib/adapters/osm/adapter.ts +356 -0
  28. package/lib/adapters/overture/adapter.ts +65 -41
  29. package/lib/adapters/po-box/adapter.ts +202 -0
  30. package/lib/adapters/registry.ts +79 -0
  31. package/lib/adapters/sha256-stream.ts +49 -0
  32. package/lib/adapters/source-id.ts +49 -0
  33. package/lib/adapters/street-line.ts +135 -0
  34. package/lib/adapters/wof/admin/json/adapter.ts +254 -0
  35. package/lib/adapters/wof/json-rows.ts +211 -0
  36. package/lib/adapters/wof/postalcode-json/adapter.ts +194 -0
  37. package/lib/adapters.ts +230 -0
  38. package/lib/au/adapters/gnaf/adapter.ts +144 -0
  39. package/lib/au/adapters/gnaf/assemble.ts +205 -0
  40. package/lib/be/adapters/brussels/adapter.ts +566 -0
  41. package/lib/be/adapters/vlaanderen/adapter.ts +670 -0
  42. package/lib/be/adapters/wallonie/adapter.ts +537 -0
  43. package/lib/be/tools/fetch/brussels.ts +239 -0
  44. package/lib/be/tools/fetch/wallonie.ts +274 -0
  45. package/lib/build/adapters.ts +110 -0
  46. package/lib/build/align.ts +364 -0
  47. package/lib/build/checkpoint.ts +131 -0
  48. package/lib/build/eligibility.ts +96 -0
  49. package/lib/build/heap.ts +53 -0
  50. package/lib/build/inputs.ts +81 -0
  51. package/lib/build/rows.ts +21 -0
  52. package/lib/build/types.ts +232 -0
  53. package/lib/build.ts +127 -315
  54. package/lib/cn/recipes/organizational-units.ts +178 -0
  55. package/lib/cz/adapters/cuzk/adapter.ts +317 -0
  56. package/lib/cz/recipes/pcfirst-preposition.ts +125 -0
  57. package/lib/cz/tools/fetch/cuzk.ts +699 -0
  58. package/lib/de/recipes/locale.ts +370 -0
  59. package/lib/directory.ts +31 -0
  60. package/lib/dk/adapters/inspire/adapter.ts +345 -0
  61. package/lib/dk/tools/fetch/inspire.ts +321 -0
  62. package/lib/ee/adapters/ads/adapter.ts +246 -0
  63. package/lib/ee/tools/fetch/ads.ts +270 -0
  64. package/lib/env.ts +6 -2
  65. package/lib/es/adapters/bizkaia/adapter.ts +388 -0
  66. package/lib/es/adapters/catastro/adapter.ts +343 -0
  67. package/lib/es/adapters/gipuzkoa/adapter.ts +263 -0
  68. package/lib/es/adapters/navarra/adapter.ts +289 -0
  69. package/lib/es/cadastre.ts +194 -0
  70. package/lib/es/tools/fetch/bizkaia.ts +748 -0
  71. package/lib/es/tools/fetch/catastro.ts +754 -0
  72. package/lib/es/tools/fetch/gipuzkoa.ts +336 -0
  73. package/lib/es/tools/fetch/navarra.ts +488 -0
  74. package/lib/fi/adapters/ryhti/adapter.ts +323 -0
  75. package/lib/fi/tools/fetch/ryhti.ts +476 -0
  76. package/lib/fingerprints.ts +154 -0
  77. package/lib/fr/adapters/annuaire-education/adapter.ts +598 -0
  78. package/lib/fr/adapters/ban/adapter.ts +187 -0
  79. package/lib/fr/adapters/finess/adapter.ts +618 -0
  80. package/lib/fr/adapters/finess/postal-lines.ts +157 -0
  81. package/lib/fr/adapters/finess/voie-type.ts +200 -0
  82. package/lib/fr/insee-country.ts +62 -0
  83. package/lib/fr/recipes/admin-split.ts +221 -0
  84. package/lib/fr/recipes/bare-street.ts +158 -0
  85. package/lib/fr/recipes/fragment.ts +251 -0
  86. package/lib/fr/recipes/lieudit.ts +310 -0
  87. package/lib/fr/recipes/order.ts +219 -0
  88. package/lib/fr/street-decompose.ts +67 -0
  89. package/lib/fr/tools/fetch/annuaire-education.ts +306 -0
  90. package/lib/fr/tools/fetch/ban.ts +298 -0
  91. package/lib/fr/tools/fetch/finess.ts +352 -0
  92. package/lib/gauntlet-inputs.ts +92 -0
  93. package/lib/index.ts +10 -4
  94. package/lib/inspire/address.ts +457 -0
  95. package/lib/inspire/archive.ts +44 -0
  96. package/lib/inspire/errors.ts +71 -0
  97. package/lib/inspire/stream.ts +262 -0
  98. package/lib/international/recipes/locale.ts +556 -0
  99. package/lib/it/adapters/anac/adapter.ts +522 -0
  100. package/lib/it/tools/fetch/anac.ts +394 -0
  101. package/lib/jp/adapters/wof-admin/adapter.ts +224 -0
  102. package/lib/jp/tools/fetch/houjin.ts +139 -0
  103. package/lib/kr/adapters/juso/label-rows.ts +239 -0
  104. package/lib/kr/adapters/localdata/align.ts +288 -0
  105. package/lib/kr/adapters/localdata/key-index.ts +177 -0
  106. package/lib/kr/adapters/localdata/permit-rows.ts +193 -0
  107. package/lib/kr/tools/fetch/juso.ts +170 -0
  108. package/lib/kr/tools/fetch/localdata.ts +205 -0
  109. package/lib/lu/adapters/bd-adresses/adapter.ts +240 -0
  110. package/lib/lu/tools/fetch/bd-adresses.ts +351 -0
  111. package/lib/lv/adapters/varis/adapter.ts +499 -0
  112. package/lib/lv/tools/fetch/varis.ts +214 -0
  113. package/lib/nl/adapters/kadaster/adapter.ts +386 -0
  114. package/lib/nl/recipes/postcode.ts +139 -0
  115. package/lib/nl/tools/fetch/kadaster.ts +298 -0
  116. package/lib/no/adapters/matrikkelen/adapter.ts +187 -0
  117. package/lib/no/recipes/fragment.ts +189 -0
  118. package/lib/no/recipes/street/led.ts +154 -0
  119. package/lib/no/recipes/street.ts +109 -0
  120. package/lib/no/tools/fetch/matrikkelen.ts +519 -0
  121. package/lib/parquet/duckdb.ts +144 -0
  122. package/lib/parquet/readers.ts +86 -0
  123. package/lib/parquet/schema.ts +214 -0
  124. package/lib/parquet/shuffle.ts +59 -0
  125. package/lib/parquet/span-sql.ts +54 -0
  126. package/lib/parquet/streams.ts +113 -0
  127. package/lib/parquet/writers.ts +451 -0
  128. package/lib/pl/adapters/emuia/adapter.ts +202 -0
  129. package/lib/pl/tools/fetch/emuia.ts +360 -0
  130. package/lib/recipes/anchor-absorption.ts +30 -19
  131. package/lib/recipes/bare/country.ts +87 -0
  132. package/lib/recipes/bare/postcode/eval.ts +99 -0
  133. package/lib/recipes/bare/postcode.ts +346 -0
  134. package/lib/recipes/boundary-stress.ts +36 -19
  135. package/lib/recipes/country-balanced.ts +67 -87
  136. package/lib/recipes/house-venue.ts +31 -13
  137. package/lib/recipes/intersection.ts +83 -61
  138. package/lib/recipes/po/box/cedex/au-nz.ts +82 -0
  139. package/lib/recipes/po/box/cedex/ca.ts +59 -0
  140. package/lib/recipes/po/box/cedex/fr.ts +77 -0
  141. package/lib/recipes/po/box/cedex/phrases.ts +109 -0
  142. package/lib/recipes/po/box/cedex/recipe.ts +215 -0
  143. package/lib/recipes/po/box/cedex/sources.ts +189 -0
  144. package/lib/recipes/po/box/cedex/types.ts +35 -0
  145. package/lib/recipes/po/box/cedex/us.ts +74 -0
  146. package/lib/recipes/po/box/cedex/vocabulary.ts +106 -0
  147. package/lib/recipes/po/box/cedex.ts +9 -0
  148. package/lib/recipes/po/box.ts +149 -0
  149. package/lib/recipes/scaffold.ts +258 -182
  150. package/lib/recipes/sources.ts +399 -0
  151. package/lib/recipes/street/affix.ts +707 -0
  152. package/lib/recipes/street/bare.ts +115 -0
  153. package/lib/recipes/street.ts +32 -8
  154. package/lib/recipes/sub/venue/context.ts +156 -0
  155. package/lib/recipes/sub/venue/render.ts +170 -0
  156. package/lib/recipes/sub/venue/sources.ts +588 -0
  157. package/lib/recipes/sub/venue.ts +801 -0
  158. package/lib/recipes/trailing-region.ts +70 -81
  159. package/lib/recipes/unit/sources.ts +44 -0
  160. package/lib/recipes/unit.ts +102 -90
  161. package/lib/recipes.ts +106 -0
  162. package/lib/registers.ts +278 -0
  163. package/lib/ro/adapters/retea-scolara/adapter.ts +264 -0
  164. package/lib/ro/tools/fetch/retea-scolara.ts +187 -0
  165. package/lib/runner.ts +220 -84
  166. package/lib/sg/recipes/register.ts +264 -0
  167. package/lib/sg/tools/fetch/acra.ts +174 -0
  168. package/lib/si/recipes/bare-village.ts +116 -0
  169. package/lib/sk/adapters/inspire/adapter.ts +395 -0
  170. package/lib/sk/tools/fetch/inspire.ts +402 -0
  171. package/lib/source-register/effective-manifest.ts +659 -0
  172. package/lib/source-register/register.ts +539 -0
  173. package/lib/source-register/training-manifest.ts +218 -0
  174. package/lib/source-register/types.ts +590 -0
  175. package/lib/source-register.ts +71 -0
  176. package/lib/south-asia/recipes/register.ts +233 -0
  177. package/lib/subvenue/harvest.ts +251 -0
  178. package/lib/subvenue/promotions.ts +293 -0
  179. package/lib/subvenue/surfaces.ts +94 -0
  180. package/lib/subvenue/table.ts +264 -0
  181. package/lib/surfaces/locale.ts +246 -0
  182. package/lib/synthesizers/anchor-absorption.ts +55 -91
  183. package/lib/synthesizers/boundary-stress.ts +49 -131
  184. package/lib/synthesizers/house-venue.ts +44 -102
  185. package/lib/synthesizers/intersection.ts +37 -26
  186. package/lib/synthesizers/no-street.ts +70 -119
  187. package/lib/synthesizers/po-box.ts +90 -105
  188. package/lib/synthesizers/street.ts +47 -35
  189. package/lib/synthesizers/utils.ts +65 -219
  190. package/lib/test-kit/corpus-recipe.ts +45 -28
  191. package/lib/test-kit.ts +116 -0
  192. package/lib/tools/align-canonical.ts +64 -0
  193. package/lib/tools/audit.ts +114 -118
  194. package/lib/tools/corpus-stats.ts +46 -32
  195. package/lib/tools/fetch/atom.ts +164 -0
  196. package/lib/tools/fetch/cordis.ts +318 -0
  197. package/lib/tools/fetch/download/manifest.ts +114 -0
  198. package/lib/tools/fetch/download/network.ts +250 -0
  199. package/lib/tools/fetch/download/retry.ts +174 -0
  200. package/lib/tools/fetch/download.ts +4 -471
  201. package/lib/tools/fetch/geonames/dump.ts +275 -0
  202. package/lib/tools/fetch/geonames/postal.ts +145 -0
  203. package/lib/tools/fetch/gleif.ts +360 -0
  204. package/lib/tools/fetch/header.ts +69 -0
  205. package/lib/tools/fetch/inspire-addresses.ts +495 -0
  206. package/lib/tools/fetch/openaddresses.ts +20 -109
  207. package/lib/tools/fetch/ourairports.ts +16 -49
  208. package/lib/tools/fetch/ppd.ts +10 -10
  209. package/lib/tools/fetch/vlaanderen-ad.ts +435 -0
  210. package/lib/tools/fetch/wfs-harvest.ts +943 -0
  211. package/lib/tools/fetch/wikidata-subvenue.ts +43 -143
  212. package/lib/tools/fetch/zip-archive.ts +100 -0
  213. package/lib/tools/fetch.ts +143 -0
  214. package/lib/tools/golden/expand.ts +605 -0
  215. package/lib/tools/golden/promote.ts +349 -0
  216. package/lib/tools/golden/relabel-street/directory.ts +367 -0
  217. package/lib/tools/golden/relabel-street/row.ts +283 -0
  218. package/lib/tools/golden/relabel-street.ts +9 -0
  219. package/lib/tools/ingest-csv.ts +45 -50
  220. package/lib/tools/jsonl-to-parquet.ts +59 -98
  221. package/lib/tools/lint/recipe-output/vocab.ts +366 -0
  222. package/lib/tools/lint/recipe-output.ts +482 -0
  223. package/lib/tools/migrate/overlay-parquet.ts +173 -0
  224. package/lib/tools/migrate/recipe-output.ts +153 -0
  225. package/lib/tools/migrate/source-names.ts +161 -0
  226. package/lib/tools/overlay/kryptonite.ts +144 -0
  227. package/lib/tools/overlay/manifest.ts +407 -0
  228. package/lib/tools/overlay/merge-source.ts +138 -0
  229. package/lib/tools/overlay/split-slice.ts +144 -0
  230. package/lib/tools/overlay/translit.ts +234 -0
  231. package/lib/tools/overture-subvenue.ts +18 -91
  232. package/lib/tools/postcode-triples.ts +362 -167
  233. package/lib/tools/source-register/build.ts +819 -0
  234. package/lib/tools/sub/venue/head-nouns.ts +208 -0
  235. package/lib/tools/sub/venue/lexicon.ts +394 -0
  236. package/lib/tools/sub/venue/wikidata.ts +88 -0
  237. package/lib/tools.ts +31 -0
  238. package/lib/tw/tools/fetch/gcis.ts +181 -0
  239. package/lib/types.ts +304 -101
  240. package/lib/us/adapters/fcc-bdc/adapter.ts +158 -0
  241. package/lib/us/adapters/state/hi-schools/adapter.ts +171 -0
  242. package/lib/us/adapters/state/hi-schools/workbook.ts +40 -0
  243. package/lib/us/adapters/state/ia-contractors/adapter.ts +148 -0
  244. package/lib/us/adapters/state/ny-notaries/adapter.ts +132 -0
  245. package/lib/us/adapters/state/tx-notaries/adapter.ts +155 -0
  246. package/lib/us/adapters/tiger/adapter.ts +225 -0
  247. package/lib/us/adapters/tiger/street-decompose.ts +73 -0
  248. package/lib/us/adapters/usgov/hrsa-fqhc/adapter.ts +171 -0
  249. package/lib/us/adapters/usgov/imls-pls/adapter.ts +140 -0
  250. package/lib/us/adapters/usgov/irs-bmf/adapter.ts +154 -0
  251. package/lib/us/adapters/usgov/nad/adapter.ts +263 -0
  252. package/lib/us/adapters/usgov/nppes/adapter.ts +180 -0
  253. package/lib/us/adapters/usgov/samhsa-treatment-locator/adapter.ts +195 -0
  254. package/lib/us/fips-state.ts +122 -0
  255. package/lib/us/tools/fetch/hrsa.ts +58 -0
  256. package/lib/us/tools/fetch/imls-pls.ts +131 -0
  257. package/lib/us/tools/fetch/nad.ts +359 -0
  258. package/lib/us/tools/fetch/nppes.ts +153 -0
  259. package/lib/us/tools/fetch/state/hi-schools.ts +167 -0
  260. package/lib/us/tools/fetch/state/sources.ts +146 -0
  261. package/lib/us/tools/fetch/tiger-full.ts +256 -0
  262. package/lib/utils/align.ts +43 -53
  263. package/lib/utils/cooccurrence-stats.ts +101 -0
  264. package/lib/utils/golden.ts +39 -50
  265. package/lib/utils/license.ts +238 -26
  266. package/lib/utils/split.ts +205 -88
  267. package/lib/utils/tokenize.ts +22 -34
  268. package/lib/utils/wof-json.ts +134 -87
  269. package/lib/utils.ts +13 -0
  270. package/lib/ve/recipes/reviewed-postcode-tail.ts +217 -0
  271. package/out/adapters/cordis/adapter.d.ts +324 -0
  272. package/out/adapters/cordis/adapter.d.ts.map +1 -0
  273. package/out/adapters/cordis/adapter.js +616 -0
  274. package/out/adapters/cordis/adapter.js.map +1 -0
  275. package/out/adapters/dedup-key.d.ts +30 -0
  276. package/out/adapters/dedup-key.d.ts.map +1 -0
  277. package/out/adapters/dedup-key.js +35 -0
  278. package/out/adapters/dedup-key.js.map +1 -0
  279. package/out/adapters/errors.d.ts +17 -0
  280. package/out/adapters/errors.d.ts.map +1 -0
  281. package/out/adapters/errors.js +20 -0
  282. package/out/adapters/errors.js.map +1 -0
  283. package/out/adapters/geonames/adapter.d.ts +26 -28
  284. package/out/adapters/geonames/adapter.d.ts.map +1 -1
  285. package/out/adapters/geonames/adapter.js +40 -50
  286. package/out/adapters/geonames/adapter.js.map +1 -1
  287. package/out/adapters/geonames/postal/adapter.d.ts +41 -0
  288. package/out/adapters/geonames/postal/adapter.d.ts.map +1 -0
  289. package/out/adapters/geonames/postal/adapter.js +102 -0
  290. package/out/adapters/geonames/postal/adapter.js.map +1 -0
  291. package/out/adapters/gleif/adapter.d.ts +293 -0
  292. package/out/adapters/gleif/adapter.d.ts.map +1 -0
  293. package/out/adapters/gleif/adapter.js +684 -0
  294. package/out/adapters/gleif/adapter.js.map +1 -0
  295. package/out/adapters/libpostal-dictionary.d.ts +22 -0
  296. package/out/adapters/libpostal-dictionary.d.ts.map +1 -0
  297. package/out/adapters/libpostal-dictionary.js +36 -0
  298. package/out/adapters/libpostal-dictionary.js.map +1 -0
  299. package/out/adapters/openaddresses/adapter.d.ts +28 -43
  300. package/out/adapters/openaddresses/adapter.d.ts.map +1 -1
  301. package/out/adapters/openaddresses/adapter.js +37 -51
  302. package/out/adapters/openaddresses/adapter.js.map +1 -1
  303. package/out/adapters/osm/adapter.d.ts +101 -0
  304. package/out/adapters/osm/adapter.d.ts.map +1 -0
  305. package/out/adapters/osm/adapter.js +260 -0
  306. package/out/adapters/osm/adapter.js.map +1 -0
  307. package/out/adapters/overture/adapter.d.ts +14 -30
  308. package/out/adapters/overture/adapter.d.ts.map +1 -1
  309. package/out/adapters/overture/adapter.js +57 -41
  310. package/out/adapters/overture/adapter.js.map +1 -1
  311. package/out/adapters/po-box/adapter.d.ts +63 -0
  312. package/out/adapters/po-box/adapter.d.ts.map +1 -0
  313. package/out/adapters/po-box/adapter.js +139 -0
  314. package/out/adapters/po-box/adapter.js.map +1 -0
  315. package/out/adapters/registry.d.ts +55 -0
  316. package/out/adapters/registry.d.ts.map +1 -0
  317. package/out/adapters/registry.js +43 -0
  318. package/out/adapters/registry.js.map +1 -0
  319. package/out/adapters/sha256-stream.d.ts +26 -0
  320. package/out/adapters/sha256-stream.d.ts.map +1 -0
  321. package/out/adapters/sha256-stream.js +34 -0
  322. package/out/adapters/sha256-stream.js.map +1 -0
  323. package/out/adapters/source-id.d.ts +33 -0
  324. package/out/adapters/source-id.d.ts.map +1 -0
  325. package/out/adapters/source-id.js +42 -0
  326. package/out/adapters/source-id.js.map +1 -0
  327. package/out/adapters/street-line.d.ts +102 -0
  328. package/out/adapters/street-line.d.ts.map +1 -0
  329. package/out/adapters/street-line.js +117 -0
  330. package/out/adapters/street-line.js.map +1 -0
  331. package/out/adapters/wof/admin/json/adapter.d.ts +88 -0
  332. package/out/adapters/wof/admin/json/adapter.d.ts.map +1 -0
  333. package/out/adapters/wof/admin/json/adapter.js +220 -0
  334. package/out/adapters/wof/admin/json/adapter.js.map +1 -0
  335. package/out/adapters/wof/json-rows.d.ts +89 -0
  336. package/out/adapters/wof/json-rows.d.ts.map +1 -0
  337. package/out/adapters/wof/json-rows.js +135 -0
  338. package/out/adapters/wof/json-rows.js.map +1 -0
  339. package/out/adapters/wof/postalcode-json/adapter.d.ts +49 -0
  340. package/out/adapters/wof/postalcode-json/adapter.d.ts.map +1 -0
  341. package/out/adapters/wof/postalcode-json/adapter.js +165 -0
  342. package/out/adapters/wof/postalcode-json/adapter.js.map +1 -0
  343. package/out/adapters.d.ts +75 -0
  344. package/out/adapters.d.ts.map +1 -0
  345. package/out/adapters.js +167 -0
  346. package/out/adapters.js.map +1 -0
  347. package/out/au/adapters/gnaf/adapter.d.ts +37 -0
  348. package/out/au/adapters/gnaf/adapter.d.ts.map +1 -0
  349. package/out/au/adapters/gnaf/adapter.js +119 -0
  350. package/out/au/adapters/gnaf/adapter.js.map +1 -0
  351. package/out/au/adapters/gnaf/assemble.d.ts +54 -0
  352. package/out/au/adapters/gnaf/assemble.d.ts.map +1 -0
  353. package/out/au/adapters/gnaf/assemble.js +134 -0
  354. package/out/au/adapters/gnaf/assemble.js.map +1 -0
  355. package/out/be/adapters/brussels/adapter.d.ts +212 -0
  356. package/out/be/adapters/brussels/adapter.d.ts.map +1 -0
  357. package/out/be/adapters/brussels/adapter.js +435 -0
  358. package/out/be/adapters/brussels/adapter.js.map +1 -0
  359. package/out/be/adapters/vlaanderen/adapter.d.ts +233 -0
  360. package/out/be/adapters/vlaanderen/adapter.d.ts.map +1 -0
  361. package/out/be/adapters/vlaanderen/adapter.js +416 -0
  362. package/out/be/adapters/vlaanderen/adapter.js.map +1 -0
  363. package/out/be/adapters/wallonie/adapter.d.ts +196 -0
  364. package/out/be/adapters/wallonie/adapter.d.ts.map +1 -0
  365. package/out/be/adapters/wallonie/adapter.js +437 -0
  366. package/out/be/adapters/wallonie/adapter.js.map +1 -0
  367. package/out/be/tools/fetch/brussels.d.ts +119 -0
  368. package/out/be/tools/fetch/brussels.d.ts.map +1 -0
  369. package/out/be/tools/fetch/brussels.js +146 -0
  370. package/out/be/tools/fetch/brussels.js.map +1 -0
  371. package/out/be/tools/fetch/wallonie.d.ts +119 -0
  372. package/out/be/tools/fetch/wallonie.d.ts.map +1 -0
  373. package/out/be/tools/fetch/wallonie.js +167 -0
  374. package/out/be/tools/fetch/wallonie.js.map +1 -0
  375. package/out/build/adapters.d.ts +33 -0
  376. package/out/build/adapters.d.ts.map +1 -0
  377. package/out/build/adapters.js +68 -0
  378. package/out/build/adapters.js.map +1 -0
  379. package/out/build/align.d.ts +73 -0
  380. package/out/build/align.d.ts.map +1 -0
  381. package/out/build/align.js +226 -0
  382. package/out/build/align.js.map +1 -0
  383. package/out/build/checkpoint.d.ts +94 -0
  384. package/out/build/checkpoint.d.ts.map +1 -0
  385. package/out/build/checkpoint.js +59 -0
  386. package/out/build/checkpoint.js.map +1 -0
  387. package/out/build/eligibility.d.ts +47 -0
  388. package/out/build/eligibility.d.ts.map +1 -0
  389. package/out/build/eligibility.js +80 -0
  390. package/out/build/eligibility.js.map +1 -0
  391. package/out/build/heap.d.ts +28 -0
  392. package/out/build/heap.d.ts.map +1 -0
  393. package/out/build/heap.js +47 -0
  394. package/out/build/heap.js.map +1 -0
  395. package/out/build/inputs.d.ts +52 -0
  396. package/out/build/inputs.d.ts.map +1 -0
  397. package/out/build/inputs.js +49 -0
  398. package/out/build/inputs.js.map +1 -0
  399. package/out/build/rows.d.ts +16 -0
  400. package/out/build/rows.d.ts.map +1 -0
  401. package/out/build/rows.js +19 -0
  402. package/out/build/rows.js.map +1 -0
  403. package/out/build/types.d.ts +220 -0
  404. package/out/build/types.d.ts.map +1 -0
  405. package/out/build/types.js +34 -0
  406. package/out/build/types.js.map +1 -0
  407. package/out/build.d.ts +6 -121
  408. package/out/build.d.ts.map +1 -1
  409. package/out/build.js +112 -207
  410. package/out/build.js.map +1 -1
  411. package/out/cn/recipes/organizational-units.d.ts +19 -0
  412. package/out/cn/recipes/organizational-units.d.ts.map +1 -0
  413. package/out/cn/recipes/organizational-units.js +138 -0
  414. package/out/cn/recipes/organizational-units.js.map +1 -0
  415. package/out/cz/adapters/cuzk/adapter.d.ts +52 -0
  416. package/out/cz/adapters/cuzk/adapter.d.ts.map +1 -0
  417. package/out/cz/adapters/cuzk/adapter.js +266 -0
  418. package/out/cz/adapters/cuzk/adapter.js.map +1 -0
  419. package/out/cz/recipes/pcfirst-preposition.d.ts +18 -0
  420. package/out/cz/recipes/pcfirst-preposition.d.ts.map +1 -0
  421. package/out/cz/recipes/pcfirst-preposition.js +110 -0
  422. package/out/cz/recipes/pcfirst-preposition.js.map +1 -0
  423. package/out/cz/tools/fetch/cuzk.d.ts +272 -0
  424. package/out/cz/tools/fetch/cuzk.d.ts.map +1 -0
  425. package/out/cz/tools/fetch/cuzk.js +446 -0
  426. package/out/cz/tools/fetch/cuzk.js.map +1 -0
  427. package/out/de/recipes/locale.d.ts +42 -0
  428. package/out/de/recipes/locale.d.ts.map +1 -0
  429. package/out/de/recipes/locale.js +299 -0
  430. package/out/de/recipes/locale.js.map +1 -0
  431. package/out/directory.d.ts +20 -0
  432. package/out/directory.d.ts.map +1 -0
  433. package/out/directory.js +27 -0
  434. package/out/directory.js.map +1 -0
  435. package/out/dk/adapters/inspire/adapter.d.ts +154 -0
  436. package/out/dk/adapters/inspire/adapter.d.ts.map +1 -0
  437. package/out/dk/adapters/inspire/adapter.js +258 -0
  438. package/out/dk/adapters/inspire/adapter.js.map +1 -0
  439. package/out/dk/tools/fetch/inspire.d.ts +100 -0
  440. package/out/dk/tools/fetch/inspire.d.ts.map +1 -0
  441. package/out/dk/tools/fetch/inspire.js +230 -0
  442. package/out/dk/tools/fetch/inspire.js.map +1 -0
  443. package/out/ee/adapters/ads/adapter.d.ts +109 -0
  444. package/out/ee/adapters/ads/adapter.d.ts.map +1 -0
  445. package/out/ee/adapters/ads/adapter.js +191 -0
  446. package/out/ee/adapters/ads/adapter.js.map +1 -0
  447. package/out/ee/tools/fetch/ads.d.ts +123 -0
  448. package/out/ee/tools/fetch/ads.d.ts.map +1 -0
  449. package/out/ee/tools/fetch/ads.js +195 -0
  450. package/out/ee/tools/fetch/ads.js.map +1 -0
  451. package/out/env.d.ts +7 -3
  452. package/out/env.d.ts.map +1 -1
  453. package/out/env.js +6 -2
  454. package/out/env.js.map +1 -1
  455. package/out/es/adapters/bizkaia/adapter.d.ts +143 -0
  456. package/out/es/adapters/bizkaia/adapter.d.ts.map +1 -0
  457. package/out/es/adapters/bizkaia/adapter.js +332 -0
  458. package/out/es/adapters/bizkaia/adapter.js.map +1 -0
  459. package/out/es/adapters/catastro/adapter.d.ts +104 -0
  460. package/out/es/adapters/catastro/adapter.d.ts.map +1 -0
  461. package/out/es/adapters/catastro/adapter.js +288 -0
  462. package/out/es/adapters/catastro/adapter.js.map +1 -0
  463. package/out/es/adapters/gipuzkoa/adapter.d.ts +91 -0
  464. package/out/es/adapters/gipuzkoa/adapter.d.ts.map +1 -0
  465. package/out/es/adapters/gipuzkoa/adapter.js +225 -0
  466. package/out/es/adapters/gipuzkoa/adapter.js.map +1 -0
  467. package/out/es/adapters/navarra/adapter.d.ts +105 -0
  468. package/out/es/adapters/navarra/adapter.d.ts.map +1 -0
  469. package/out/es/adapters/navarra/adapter.js +241 -0
  470. package/out/es/adapters/navarra/adapter.js.map +1 -0
  471. package/out/es/cadastre.d.ts +109 -0
  472. package/out/es/cadastre.d.ts.map +1 -0
  473. package/out/es/cadastre.js +130 -0
  474. package/out/es/cadastre.js.map +1 -0
  475. package/out/es/tools/fetch/bizkaia.d.ts +278 -0
  476. package/out/es/tools/fetch/bizkaia.d.ts.map +1 -0
  477. package/out/es/tools/fetch/bizkaia.js +477 -0
  478. package/out/es/tools/fetch/bizkaia.js.map +1 -0
  479. package/out/es/tools/fetch/catastro.d.ts +272 -0
  480. package/out/es/tools/fetch/catastro.d.ts.map +1 -0
  481. package/out/es/tools/fetch/catastro.js +486 -0
  482. package/out/es/tools/fetch/catastro.js.map +1 -0
  483. package/out/es/tools/fetch/gipuzkoa.d.ts +162 -0
  484. package/out/es/tools/fetch/gipuzkoa.d.ts.map +1 -0
  485. package/out/es/tools/fetch/gipuzkoa.js +209 -0
  486. package/out/es/tools/fetch/gipuzkoa.js.map +1 -0
  487. package/out/es/tools/fetch/navarra.d.ts +189 -0
  488. package/out/es/tools/fetch/navarra.d.ts.map +1 -0
  489. package/out/es/tools/fetch/navarra.js +316 -0
  490. package/out/es/tools/fetch/navarra.js.map +1 -0
  491. package/out/fi/adapters/ryhti/adapter.d.ts +115 -0
  492. package/out/fi/adapters/ryhti/adapter.d.ts.map +1 -0
  493. package/out/fi/adapters/ryhti/adapter.js +244 -0
  494. package/out/fi/adapters/ryhti/adapter.js.map +1 -0
  495. package/out/fi/tools/fetch/ryhti.d.ts +206 -0
  496. package/out/fi/tools/fetch/ryhti.d.ts.map +1 -0
  497. package/out/fi/tools/fetch/ryhti.js +327 -0
  498. package/out/fi/tools/fetch/ryhti.js.map +1 -0
  499. package/out/fingerprints.d.ts +68 -0
  500. package/out/fingerprints.d.ts.map +1 -0
  501. package/out/fingerprints.js +130 -0
  502. package/out/fingerprints.js.map +1 -0
  503. package/out/fr/adapters/annuaire-education/adapter.d.ts +236 -0
  504. package/out/fr/adapters/annuaire-education/adapter.d.ts.map +1 -0
  505. package/out/fr/adapters/annuaire-education/adapter.js +475 -0
  506. package/out/fr/adapters/annuaire-education/adapter.js.map +1 -0
  507. package/out/fr/adapters/ban/adapter.d.ts +38 -0
  508. package/out/fr/adapters/ban/adapter.d.ts.map +1 -0
  509. package/out/fr/adapters/ban/adapter.js +134 -0
  510. package/out/fr/adapters/ban/adapter.js.map +1 -0
  511. package/out/fr/adapters/finess/adapter.d.ts +276 -0
  512. package/out/fr/adapters/finess/adapter.d.ts.map +1 -0
  513. package/out/fr/adapters/finess/adapter.js +519 -0
  514. package/out/fr/adapters/finess/adapter.js.map +1 -0
  515. package/out/fr/adapters/finess/postal-lines.d.ts +61 -0
  516. package/out/fr/adapters/finess/postal-lines.d.ts.map +1 -0
  517. package/out/fr/adapters/finess/postal-lines.js +114 -0
  518. package/out/fr/adapters/finess/postal-lines.js.map +1 -0
  519. package/out/fr/adapters/finess/voie-type.d.ts +77 -0
  520. package/out/fr/adapters/finess/voie-type.d.ts.map +1 -0
  521. package/out/fr/adapters/finess/voie-type.js +172 -0
  522. package/out/fr/adapters/finess/voie-type.js.map +1 -0
  523. package/out/fr/insee-country.d.ts +45 -0
  524. package/out/fr/insee-country.d.ts.map +1 -0
  525. package/out/fr/insee-country.js +60 -0
  526. package/out/fr/insee-country.js.map +1 -0
  527. package/out/fr/recipes/admin-split.d.ts +15 -0
  528. package/out/fr/recipes/admin-split.d.ts.map +1 -0
  529. package/out/fr/recipes/admin-split.js +170 -0
  530. package/out/fr/recipes/admin-split.js.map +1 -0
  531. package/out/fr/recipes/bare-street.d.ts +13 -0
  532. package/out/fr/recipes/bare-street.d.ts.map +1 -0
  533. package/out/fr/recipes/bare-street.js +129 -0
  534. package/out/fr/recipes/bare-street.js.map +1 -0
  535. package/out/fr/recipes/fragment.d.ts +18 -0
  536. package/out/fr/recipes/fragment.d.ts.map +1 -0
  537. package/out/fr/recipes/fragment.js +197 -0
  538. package/out/fr/recipes/fragment.js.map +1 -0
  539. package/out/fr/recipes/lieudit.d.ts +30 -0
  540. package/out/fr/recipes/lieudit.d.ts.map +1 -0
  541. package/out/fr/recipes/lieudit.js +231 -0
  542. package/out/fr/recipes/lieudit.js.map +1 -0
  543. package/out/fr/recipes/order.d.ts +15 -0
  544. package/out/fr/recipes/order.d.ts.map +1 -0
  545. package/out/fr/recipes/order.js +171 -0
  546. package/out/fr/recipes/order.js.map +1 -0
  547. package/out/fr/street-decompose.d.ts +29 -0
  548. package/out/fr/street-decompose.d.ts.map +1 -0
  549. package/out/fr/street-decompose.js +52 -0
  550. package/out/fr/street-decompose.js.map +1 -0
  551. package/out/fr/tools/fetch/annuaire-education.d.ts +130 -0
  552. package/out/fr/tools/fetch/annuaire-education.d.ts.map +1 -0
  553. package/out/fr/tools/fetch/annuaire-education.js +196 -0
  554. package/out/fr/tools/fetch/annuaire-education.js.map +1 -0
  555. package/out/fr/tools/fetch/ban.d.ts +33 -0
  556. package/out/fr/tools/fetch/ban.d.ts.map +1 -0
  557. package/out/fr/tools/fetch/ban.js +248 -0
  558. package/out/fr/tools/fetch/ban.js.map +1 -0
  559. package/out/fr/tools/fetch/finess.d.ts +145 -0
  560. package/out/fr/tools/fetch/finess.d.ts.map +1 -0
  561. package/out/fr/tools/fetch/finess.js +228 -0
  562. package/out/fr/tools/fetch/finess.js.map +1 -0
  563. package/out/gauntlet-inputs.d.ts +42 -0
  564. package/out/gauntlet-inputs.d.ts.map +1 -0
  565. package/out/gauntlet-inputs.js +78 -0
  566. package/out/gauntlet-inputs.js.map +1 -0
  567. package/out/index.d.ts +10 -4
  568. package/out/index.d.ts.map +1 -1
  569. package/out/index.js +10 -4
  570. package/out/index.js.map +1 -1
  571. package/out/inspire/address.d.ts +251 -0
  572. package/out/inspire/address.d.ts.map +1 -0
  573. package/out/inspire/address.js +384 -0
  574. package/out/inspire/address.js.map +1 -0
  575. package/out/inspire/archive.d.ts +36 -0
  576. package/out/inspire/archive.d.ts.map +1 -0
  577. package/out/inspire/archive.js +42 -0
  578. package/out/inspire/archive.js.map +1 -0
  579. package/out/inspire/errors.d.ts +55 -0
  580. package/out/inspire/errors.d.ts.map +1 -0
  581. package/out/inspire/errors.js +64 -0
  582. package/out/inspire/errors.js.map +1 -0
  583. package/out/inspire/stream.d.ts +137 -0
  584. package/out/inspire/stream.d.ts.map +1 -0
  585. package/out/inspire/stream.js +125 -0
  586. package/out/inspire/stream.js.map +1 -0
  587. package/out/international/recipes/locale.d.ts +90 -0
  588. package/out/international/recipes/locale.d.ts.map +1 -0
  589. package/out/international/recipes/locale.js +419 -0
  590. package/out/international/recipes/locale.js.map +1 -0
  591. package/out/it/adapters/anac/adapter.d.ts +267 -0
  592. package/out/it/adapters/anac/adapter.d.ts.map +1 -0
  593. package/out/it/adapters/anac/adapter.js +429 -0
  594. package/out/it/adapters/anac/adapter.js.map +1 -0
  595. package/out/it/tools/fetch/anac.d.ts +174 -0
  596. package/out/it/tools/fetch/anac.d.ts.map +1 -0
  597. package/out/it/tools/fetch/anac.js +272 -0
  598. package/out/it/tools/fetch/anac.js.map +1 -0
  599. package/out/jp/adapters/wof-admin/adapter.d.ts +68 -0
  600. package/out/jp/adapters/wof-admin/adapter.d.ts.map +1 -0
  601. package/out/jp/adapters/wof-admin/adapter.js +172 -0
  602. package/out/jp/adapters/wof-admin/adapter.js.map +1 -0
  603. package/out/jp/tools/fetch/houjin.d.ts +27 -0
  604. package/out/jp/tools/fetch/houjin.d.ts.map +1 -0
  605. package/out/jp/tools/fetch/houjin.js +106 -0
  606. package/out/jp/tools/fetch/houjin.js.map +1 -0
  607. package/out/kr/adapters/juso/label-rows.d.ts +62 -0
  608. package/out/kr/adapters/juso/label-rows.d.ts.map +1 -0
  609. package/out/kr/adapters/juso/label-rows.js +172 -0
  610. package/out/kr/adapters/juso/label-rows.js.map +1 -0
  611. package/out/kr/adapters/localdata/align.d.ts +31 -0
  612. package/out/kr/adapters/localdata/align.d.ts.map +1 -0
  613. package/out/kr/adapters/localdata/align.js +212 -0
  614. package/out/kr/adapters/localdata/align.js.map +1 -0
  615. package/out/kr/adapters/localdata/key-index.d.ts +62 -0
  616. package/out/kr/adapters/localdata/key-index.d.ts.map +1 -0
  617. package/out/kr/adapters/localdata/key-index.js +127 -0
  618. package/out/kr/adapters/localdata/key-index.js.map +1 -0
  619. package/out/kr/adapters/localdata/permit-rows.d.ts +73 -0
  620. package/out/kr/adapters/localdata/permit-rows.d.ts.map +1 -0
  621. package/out/kr/adapters/localdata/permit-rows.js +136 -0
  622. package/out/kr/adapters/localdata/permit-rows.js.map +1 -0
  623. package/out/kr/tools/fetch/juso.d.ts +33 -0
  624. package/out/kr/tools/fetch/juso.d.ts.map +1 -0
  625. package/out/kr/tools/fetch/juso.js +121 -0
  626. package/out/kr/tools/fetch/juso.js.map +1 -0
  627. package/out/kr/tools/fetch/localdata.d.ts +37 -0
  628. package/out/kr/tools/fetch/localdata.d.ts.map +1 -0
  629. package/out/kr/tools/fetch/localdata.js +147 -0
  630. package/out/kr/tools/fetch/localdata.js.map +1 -0
  631. package/out/lu/adapters/bd-adresses/adapter.d.ts +109 -0
  632. package/out/lu/adapters/bd-adresses/adapter.d.ts.map +1 -0
  633. package/out/lu/adapters/bd-adresses/adapter.js +196 -0
  634. package/out/lu/adapters/bd-adresses/adapter.js.map +1 -0
  635. package/out/lu/tools/fetch/bd-adresses.d.ts +163 -0
  636. package/out/lu/tools/fetch/bd-adresses.d.ts.map +1 -0
  637. package/out/lu/tools/fetch/bd-adresses.js +223 -0
  638. package/out/lu/tools/fetch/bd-adresses.js.map +1 -0
  639. package/out/lv/adapters/varis/adapter.d.ts +283 -0
  640. package/out/lv/adapters/varis/adapter.d.ts.map +1 -0
  641. package/out/lv/adapters/varis/adapter.js +404 -0
  642. package/out/lv/adapters/varis/adapter.js.map +1 -0
  643. package/out/lv/tools/fetch/varis.d.ts +80 -0
  644. package/out/lv/tools/fetch/varis.d.ts.map +1 -0
  645. package/out/lv/tools/fetch/varis.js +133 -0
  646. package/out/lv/tools/fetch/varis.js.map +1 -0
  647. package/out/nl/adapters/kadaster/adapter.d.ts +125 -0
  648. package/out/nl/adapters/kadaster/adapter.d.ts.map +1 -0
  649. package/out/nl/adapters/kadaster/adapter.js +310 -0
  650. package/out/nl/adapters/kadaster/adapter.js.map +1 -0
  651. package/out/nl/recipes/postcode.d.ts +24 -0
  652. package/out/nl/recipes/postcode.d.ts.map +1 -0
  653. package/out/nl/recipes/postcode.js +121 -0
  654. package/out/nl/recipes/postcode.js.map +1 -0
  655. package/out/nl/tools/fetch/kadaster.d.ts +155 -0
  656. package/out/nl/tools/fetch/kadaster.d.ts.map +1 -0
  657. package/out/nl/tools/fetch/kadaster.js +179 -0
  658. package/out/nl/tools/fetch/kadaster.js.map +1 -0
  659. package/out/no/adapters/matrikkelen/adapter.d.ts +44 -0
  660. package/out/no/adapters/matrikkelen/adapter.d.ts.map +1 -0
  661. package/out/no/adapters/matrikkelen/adapter.js +143 -0
  662. package/out/no/adapters/matrikkelen/adapter.js.map +1 -0
  663. package/out/no/recipes/fragment.d.ts +11 -0
  664. package/out/no/recipes/fragment.d.ts.map +1 -0
  665. package/out/no/recipes/fragment.js +149 -0
  666. package/out/no/recipes/fragment.js.map +1 -0
  667. package/out/no/recipes/street/led.d.ts +21 -0
  668. package/out/no/recipes/street/led.d.ts.map +1 -0
  669. package/out/no/recipes/street/led.js +124 -0
  670. package/out/no/recipes/street/led.js.map +1 -0
  671. package/out/no/recipes/street.d.ts +19 -0
  672. package/out/no/recipes/street.d.ts.map +1 -0
  673. package/out/no/recipes/street.js +88 -0
  674. package/out/no/recipes/street.js.map +1 -0
  675. package/out/no/tools/fetch/matrikkelen.d.ts +251 -0
  676. package/out/no/tools/fetch/matrikkelen.d.ts.map +1 -0
  677. package/out/no/tools/fetch/matrikkelen.js +345 -0
  678. package/out/no/tools/fetch/matrikkelen.js.map +1 -0
  679. package/out/parquet/duckdb.d.ts +100 -0
  680. package/out/parquet/duckdb.d.ts.map +1 -0
  681. package/out/parquet/duckdb.js +92 -0
  682. package/out/parquet/duckdb.js.map +1 -0
  683. package/out/parquet/readers.d.ts +44 -0
  684. package/out/parquet/readers.d.ts.map +1 -0
  685. package/out/parquet/readers.js +69 -0
  686. package/out/parquet/readers.js.map +1 -0
  687. package/out/parquet/schema.d.ts +95 -0
  688. package/out/parquet/schema.d.ts.map +1 -0
  689. package/out/parquet/schema.js +157 -0
  690. package/out/parquet/schema.js.map +1 -0
  691. package/out/parquet/shuffle.d.ts +25 -0
  692. package/out/parquet/shuffle.d.ts.map +1 -0
  693. package/out/parquet/shuffle.js +44 -0
  694. package/out/parquet/shuffle.js.map +1 -0
  695. package/out/parquet/span-sql.d.ts +49 -0
  696. package/out/parquet/span-sql.d.ts.map +1 -0
  697. package/out/parquet/span-sql.js +53 -0
  698. package/out/parquet/span-sql.js.map +1 -0
  699. package/out/parquet/streams.d.ts +47 -0
  700. package/out/parquet/streams.d.ts.map +1 -0
  701. package/out/parquet/streams.js +78 -0
  702. package/out/parquet/streams.js.map +1 -0
  703. package/out/parquet/writers.d.ts +124 -0
  704. package/out/parquet/writers.d.ts.map +1 -0
  705. package/out/parquet/writers.js +251 -0
  706. package/out/parquet/writers.js.map +1 -0
  707. package/out/pl/adapters/emuia/adapter.d.ts +81 -0
  708. package/out/pl/adapters/emuia/adapter.d.ts.map +1 -0
  709. package/out/pl/adapters/emuia/adapter.js +178 -0
  710. package/out/pl/adapters/emuia/adapter.js.map +1 -0
  711. package/out/pl/tools/fetch/emuia.d.ts +165 -0
  712. package/out/pl/tools/fetch/emuia.d.ts.map +1 -0
  713. package/out/pl/tools/fetch/emuia.js +260 -0
  714. package/out/pl/tools/fetch/emuia.js.map +1 -0
  715. package/out/recipes/anchor-absorption.d.ts +9 -9
  716. package/out/recipes/anchor-absorption.d.ts.map +1 -1
  717. package/out/recipes/anchor-absorption.js +29 -19
  718. package/out/recipes/anchor-absorption.js.map +1 -1
  719. package/out/recipes/bare/country.d.ts +7 -0
  720. package/out/recipes/bare/country.d.ts.map +1 -0
  721. package/out/recipes/bare/country.js +77 -0
  722. package/out/recipes/bare/country.js.map +1 -0
  723. package/out/recipes/bare/postcode/eval.d.ts +29 -0
  724. package/out/recipes/bare/postcode/eval.d.ts.map +1 -0
  725. package/out/recipes/bare/postcode/eval.js +85 -0
  726. package/out/recipes/bare/postcode/eval.js.map +1 -0
  727. package/out/recipes/bare/postcode.d.ts +41 -0
  728. package/out/recipes/bare/postcode.d.ts.map +1 -0
  729. package/out/recipes/bare/postcode.js +279 -0
  730. package/out/recipes/bare/postcode.js.map +1 -0
  731. package/out/recipes/boundary-stress.d.ts +8 -8
  732. package/out/recipes/boundary-stress.d.ts.map +1 -1
  733. package/out/recipes/boundary-stress.js +36 -19
  734. package/out/recipes/boundary-stress.js.map +1 -1
  735. package/out/recipes/country-balanced.d.ts +3 -21
  736. package/out/recipes/country-balanced.d.ts.map +1 -1
  737. package/out/recipes/country-balanced.js +58 -76
  738. package/out/recipes/country-balanced.js.map +1 -1
  739. package/out/recipes/house-venue.d.ts +8 -6
  740. package/out/recipes/house-venue.d.ts.map +1 -1
  741. package/out/recipes/house-venue.js +29 -13
  742. package/out/recipes/house-venue.js.map +1 -1
  743. package/out/recipes/intersection.d.ts +20 -20
  744. package/out/recipes/intersection.d.ts.map +1 -1
  745. package/out/recipes/intersection.js +65 -53
  746. package/out/recipes/intersection.js.map +1 -1
  747. package/out/recipes/po/box/cedex/au-nz.d.ts +7 -0
  748. package/out/recipes/po/box/cedex/au-nz.d.ts.map +1 -0
  749. package/out/recipes/po/box/cedex/au-nz.js +56 -0
  750. package/out/recipes/po/box/cedex/au-nz.js.map +1 -0
  751. package/out/recipes/po/box/cedex/ca.d.ts +7 -0
  752. package/out/recipes/po/box/cedex/ca.d.ts.map +1 -0
  753. package/out/recipes/po/box/cedex/ca.js +38 -0
  754. package/out/recipes/po/box/cedex/ca.js.map +1 -0
  755. package/out/recipes/po/box/cedex/fr.d.ts +7 -0
  756. package/out/recipes/po/box/cedex/fr.d.ts.map +1 -0
  757. package/out/recipes/po/box/cedex/fr.js +57 -0
  758. package/out/recipes/po/box/cedex/fr.js.map +1 -0
  759. package/out/recipes/po/box/cedex/phrases.d.ts +8 -0
  760. package/out/recipes/po/box/cedex/phrases.d.ts.map +1 -0
  761. package/out/recipes/po/box/cedex/phrases.js +77 -0
  762. package/out/recipes/po/box/cedex/phrases.js.map +1 -0
  763. package/out/recipes/po/box/cedex/recipe.d.ts +9 -0
  764. package/out/recipes/po/box/cedex/recipe.d.ts.map +1 -0
  765. package/out/recipes/po/box/cedex/recipe.js +163 -0
  766. package/out/recipes/po/box/cedex/recipe.js.map +1 -0
  767. package/out/recipes/po/box/cedex/sources.d.ts +86 -0
  768. package/out/recipes/po/box/cedex/sources.d.ts.map +1 -0
  769. package/out/recipes/po/box/cedex/sources.js +143 -0
  770. package/out/recipes/po/box/cedex/sources.js.map +1 -0
  771. package/out/recipes/po/box/cedex/types.d.ts +31 -0
  772. package/out/recipes/po/box/cedex/types.d.ts.map +1 -0
  773. package/out/recipes/po/box/cedex/types.js +5 -0
  774. package/out/recipes/po/box/cedex/types.js.map +1 -0
  775. package/out/recipes/po/box/cedex/us.d.ts +7 -0
  776. package/out/recipes/po/box/cedex/us.d.ts.map +1 -0
  777. package/out/recipes/po/box/cedex/us.js +54 -0
  778. package/out/recipes/po/box/cedex/us.js.map +1 -0
  779. package/out/recipes/po/box/cedex/vocabulary.d.ts +68 -0
  780. package/out/recipes/po/box/cedex/vocabulary.d.ts.map +1 -0
  781. package/out/recipes/po/box/cedex/vocabulary.js +90 -0
  782. package/out/recipes/po/box/cedex/vocabulary.js.map +1 -0
  783. package/out/recipes/po/box/cedex.d.ts +9 -0
  784. package/out/recipes/po/box/cedex.d.ts.map +1 -0
  785. package/out/recipes/po/box/cedex.js +9 -0
  786. package/out/recipes/po/box/cedex.js.map +1 -0
  787. package/out/recipes/po/box.d.ts +18 -0
  788. package/out/recipes/po/box.d.ts.map +1 -0
  789. package/out/recipes/po/box.js +123 -0
  790. package/out/recipes/po/box.js.map +1 -0
  791. package/out/recipes/scaffold.d.ts +214 -121
  792. package/out/recipes/scaffold.d.ts.map +1 -1
  793. package/out/recipes/scaffold.js +78 -88
  794. package/out/recipes/scaffold.js.map +1 -1
  795. package/out/recipes/sources.d.ts +178 -0
  796. package/out/recipes/sources.d.ts.map +1 -0
  797. package/out/recipes/sources.js +348 -0
  798. package/out/recipes/sources.js.map +1 -0
  799. package/out/recipes/street/affix.d.ts +59 -0
  800. package/out/recipes/street/affix.d.ts.map +1 -0
  801. package/out/recipes/street/affix.js +477 -0
  802. package/out/recipes/street/affix.js.map +1 -0
  803. package/out/recipes/street/bare.d.ts +27 -0
  804. package/out/recipes/street/bare.d.ts.map +1 -0
  805. package/out/recipes/street/bare.js +98 -0
  806. package/out/recipes/street/bare.js.map +1 -0
  807. package/out/recipes/street.d.ts +6 -4
  808. package/out/recipes/street.d.ts.map +1 -1
  809. package/out/recipes/street.js +29 -8
  810. package/out/recipes/street.js.map +1 -1
  811. package/out/recipes/sub/venue/context.d.ts +32 -0
  812. package/out/recipes/sub/venue/context.d.ts.map +1 -0
  813. package/out/recipes/sub/venue/context.js +110 -0
  814. package/out/recipes/sub/venue/context.js.map +1 -0
  815. package/out/recipes/sub/venue/render.d.ts +58 -0
  816. package/out/recipes/sub/venue/render.d.ts.map +1 -0
  817. package/out/recipes/sub/venue/render.js +118 -0
  818. package/out/recipes/sub/venue/render.js.map +1 -0
  819. package/out/recipes/sub/venue/sources.d.ts +166 -0
  820. package/out/recipes/sub/venue/sources.d.ts.map +1 -0
  821. package/out/recipes/sub/venue/sources.js +419 -0
  822. package/out/recipes/sub/venue/sources.js.map +1 -0
  823. package/out/recipes/sub/venue.d.ts +176 -0
  824. package/out/recipes/sub/venue.d.ts.map +1 -0
  825. package/out/recipes/sub/venue.js +562 -0
  826. package/out/recipes/sub/venue.js.map +1 -0
  827. package/out/recipes/trailing-region.d.ts +9 -61
  828. package/out/recipes/trailing-region.d.ts.map +1 -1
  829. package/out/recipes/trailing-region.js +56 -81
  830. package/out/recipes/trailing-region.js.map +1 -1
  831. package/out/recipes/unit/sources.d.ts +28 -0
  832. package/out/recipes/unit/sources.d.ts.map +1 -0
  833. package/out/recipes/unit/sources.js +30 -0
  834. package/out/recipes/unit/sources.js.map +1 -0
  835. package/out/recipes/unit.d.ts +30 -17
  836. package/out/recipes/unit.d.ts.map +1 -1
  837. package/out/recipes/unit.js +90 -79
  838. package/out/recipes/unit.js.map +1 -1
  839. package/out/recipes.d.ts +26 -0
  840. package/out/recipes.d.ts.map +1 -0
  841. package/out/recipes.js +100 -0
  842. package/out/recipes.js.map +1 -0
  843. package/out/registers.d.ts +277 -0
  844. package/out/registers.d.ts.map +1 -0
  845. package/out/registers.js +273 -0
  846. package/out/registers.js.map +1 -0
  847. package/out/ro/adapters/retea-scolara/adapter.d.ts +114 -0
  848. package/out/ro/adapters/retea-scolara/adapter.d.ts.map +1 -0
  849. package/out/ro/adapters/retea-scolara/adapter.js +209 -0
  850. package/out/ro/adapters/retea-scolara/adapter.js.map +1 -0
  851. package/out/ro/tools/fetch/retea-scolara.d.ts +69 -0
  852. package/out/ro/tools/fetch/retea-scolara.d.ts.map +1 -0
  853. package/out/ro/tools/fetch/retea-scolara.js +117 -0
  854. package/out/ro/tools/fetch/retea-scolara.js.map +1 -0
  855. package/out/runner.d.ts +120 -60
  856. package/out/runner.d.ts.map +1 -1
  857. package/out/runner.js +130 -56
  858. package/out/runner.js.map +1 -1
  859. package/out/sg/recipes/register.d.ts +55 -0
  860. package/out/sg/recipes/register.d.ts.map +1 -0
  861. package/out/sg/recipes/register.js +206 -0
  862. package/out/sg/recipes/register.js.map +1 -0
  863. package/out/sg/tools/fetch/acra.d.ts +20 -0
  864. package/out/sg/tools/fetch/acra.d.ts.map +1 -0
  865. package/out/sg/tools/fetch/acra.js +123 -0
  866. package/out/sg/tools/fetch/acra.js.map +1 -0
  867. package/out/si/recipes/bare-village.d.ts +31 -0
  868. package/out/si/recipes/bare-village.d.ts.map +1 -0
  869. package/out/si/recipes/bare-village.js +103 -0
  870. package/out/si/recipes/bare-village.js.map +1 -0
  871. package/out/sk/adapters/inspire/adapter.d.ts +119 -0
  872. package/out/sk/adapters/inspire/adapter.d.ts.map +1 -0
  873. package/out/sk/adapters/inspire/adapter.js +318 -0
  874. package/out/sk/adapters/inspire/adapter.js.map +1 -0
  875. package/out/sk/tools/fetch/inspire.d.ts +195 -0
  876. package/out/sk/tools/fetch/inspire.d.ts.map +1 -0
  877. package/out/sk/tools/fetch/inspire.js +280 -0
  878. package/out/sk/tools/fetch/inspire.js.map +1 -0
  879. package/out/source-register/effective-manifest.d.ts +355 -0
  880. package/out/source-register/effective-manifest.d.ts.map +1 -0
  881. package/out/source-register/effective-manifest.js +355 -0
  882. package/out/source-register/effective-manifest.js.map +1 -0
  883. package/out/source-register/register.d.ts +79 -0
  884. package/out/source-register/register.d.ts.map +1 -0
  885. package/out/source-register/register.js +400 -0
  886. package/out/source-register/register.js.map +1 -0
  887. package/out/source-register/training-manifest.d.ts +111 -0
  888. package/out/source-register/training-manifest.d.ts.map +1 -0
  889. package/out/source-register/training-manifest.js +120 -0
  890. package/out/source-register/training-manifest.js.map +1 -0
  891. package/out/source-register/types.d.ts +539 -0
  892. package/out/source-register/types.d.ts.map +1 -0
  893. package/out/source-register/types.js +263 -0
  894. package/out/source-register/types.js.map +1 -0
  895. package/out/source-register.d.ts +19 -0
  896. package/out/source-register.d.ts.map +1 -0
  897. package/out/source-register.js +16 -0
  898. package/out/source-register.js.map +1 -0
  899. package/out/south-asia/recipes/register.d.ts +54 -0
  900. package/out/south-asia/recipes/register.d.ts.map +1 -0
  901. package/out/south-asia/recipes/register.js +174 -0
  902. package/out/south-asia/recipes/register.js.map +1 -0
  903. package/out/subvenue/harvest.d.ts +117 -0
  904. package/out/subvenue/harvest.d.ts.map +1 -0
  905. package/out/subvenue/harvest.js +172 -0
  906. package/out/subvenue/harvest.js.map +1 -0
  907. package/out/subvenue/promotions.d.ts +65 -0
  908. package/out/subvenue/promotions.d.ts.map +1 -0
  909. package/out/subvenue/promotions.js +226 -0
  910. package/out/subvenue/promotions.js.map +1 -0
  911. package/out/subvenue/surfaces.d.ts +39 -0
  912. package/out/subvenue/surfaces.d.ts.map +1 -0
  913. package/out/subvenue/surfaces.js +75 -0
  914. package/out/subvenue/surfaces.js.map +1 -0
  915. package/out/subvenue/table.d.ts +212 -0
  916. package/out/subvenue/table.d.ts.map +1 -0
  917. package/out/subvenue/table.js +94 -0
  918. package/out/subvenue/table.js.map +1 -0
  919. package/out/surfaces/locale.d.ts +113 -0
  920. package/out/surfaces/locale.d.ts.map +1 -0
  921. package/out/surfaces/locale.js +136 -0
  922. package/out/surfaces/locale.js.map +1 -0
  923. package/out/synthesizers/anchor-absorption.d.ts +22 -31
  924. package/out/synthesizers/anchor-absorption.d.ts.map +1 -1
  925. package/out/synthesizers/anchor-absorption.js +30 -85
  926. package/out/synthesizers/anchor-absorption.js.map +1 -1
  927. package/out/synthesizers/boundary-stress.d.ts +17 -48
  928. package/out/synthesizers/boundary-stress.d.ts.map +1 -1
  929. package/out/synthesizers/boundary-stress.js +27 -121
  930. package/out/synthesizers/boundary-stress.js.map +1 -1
  931. package/out/synthesizers/house-venue.d.ts +22 -25
  932. package/out/synthesizers/house-venue.d.ts.map +1 -1
  933. package/out/synthesizers/house-venue.js +28 -97
  934. package/out/synthesizers/house-venue.js.map +1 -1
  935. package/out/synthesizers/intersection.d.ts +10 -8
  936. package/out/synthesizers/intersection.d.ts.map +1 -1
  937. package/out/synthesizers/intersection.js +33 -26
  938. package/out/synthesizers/intersection.js.map +1 -1
  939. package/out/synthesizers/no-street.d.ts +7 -37
  940. package/out/synthesizers/no-street.d.ts.map +1 -1
  941. package/out/synthesizers/no-street.js +55 -111
  942. package/out/synthesizers/no-street.js.map +1 -1
  943. package/out/synthesizers/po-box.d.ts +46 -45
  944. package/out/synthesizers/po-box.d.ts.map +1 -1
  945. package/out/synthesizers/po-box.js +57 -97
  946. package/out/synthesizers/po-box.js.map +1 -1
  947. package/out/synthesizers/street.d.ts +18 -12
  948. package/out/synthesizers/street.d.ts.map +1 -1
  949. package/out/synthesizers/street.js +37 -30
  950. package/out/synthesizers/street.js.map +1 -1
  951. package/out/synthesizers/utils.d.ts +32 -129
  952. package/out/synthesizers/utils.d.ts.map +1 -1
  953. package/out/synthesizers/utils.js +54 -166
  954. package/out/synthesizers/utils.js.map +1 -1
  955. package/out/test-kit/corpus-recipe.d.ts +29 -23
  956. package/out/test-kit/corpus-recipe.d.ts.map +1 -1
  957. package/out/test-kit/corpus-recipe.js +28 -13
  958. package/out/test-kit/corpus-recipe.js.map +1 -1
  959. package/out/test-kit.d.ts +63 -0
  960. package/out/test-kit.d.ts.map +1 -0
  961. package/out/test-kit.js +88 -0
  962. package/out/test-kit.js.map +1 -0
  963. package/out/tools/align-canonical.d.ts +7 -0
  964. package/out/tools/align-canonical.d.ts.map +1 -0
  965. package/out/tools/align-canonical.js +52 -0
  966. package/out/tools/align-canonical.js.map +1 -0
  967. package/out/tools/audit.d.ts +18 -11
  968. package/out/tools/audit.d.ts.map +1 -1
  969. package/out/tools/audit.js +87 -95
  970. package/out/tools/audit.js.map +1 -1
  971. package/out/tools/corpus-stats.d.ts +24 -15
  972. package/out/tools/corpus-stats.d.ts.map +1 -1
  973. package/out/tools/corpus-stats.js +35 -31
  974. package/out/tools/corpus-stats.js.map +1 -1
  975. package/out/tools/fetch/atom.d.ts +115 -0
  976. package/out/tools/fetch/atom.d.ts.map +1 -0
  977. package/out/tools/fetch/atom.js +84 -0
  978. package/out/tools/fetch/atom.js.map +1 -0
  979. package/out/tools/fetch/cordis.d.ts +123 -0
  980. package/out/tools/fetch/cordis.d.ts.map +1 -0
  981. package/out/tools/fetch/cordis.js +208 -0
  982. package/out/tools/fetch/cordis.js.map +1 -0
  983. package/out/tools/fetch/download/manifest.d.ts +56 -0
  984. package/out/tools/fetch/download/manifest.d.ts.map +1 -0
  985. package/out/tools/fetch/download/manifest.js +81 -0
  986. package/out/tools/fetch/download/manifest.js.map +1 -0
  987. package/out/tools/fetch/download/network.d.ts +126 -0
  988. package/out/tools/fetch/download/network.d.ts.map +1 -0
  989. package/out/tools/fetch/download/network.js +140 -0
  990. package/out/tools/fetch/download/network.js.map +1 -0
  991. package/out/tools/fetch/download/retry.d.ts +46 -0
  992. package/out/tools/fetch/download/retry.d.ts.map +1 -0
  993. package/out/tools/fetch/download/retry.js +136 -0
  994. package/out/tools/fetch/download/retry.js.map +1 -0
  995. package/out/tools/fetch/download.d.ts +4 -176
  996. package/out/tools/fetch/download.d.ts.map +1 -1
  997. package/out/tools/fetch/download.js +4 -312
  998. package/out/tools/fetch/download.js.map +1 -1
  999. package/out/tools/fetch/geonames/dump.d.ts +109 -0
  1000. package/out/tools/fetch/geonames/dump.d.ts.map +1 -0
  1001. package/out/tools/fetch/geonames/dump.js +181 -0
  1002. package/out/tools/fetch/geonames/dump.js.map +1 -0
  1003. package/out/tools/fetch/geonames/postal.d.ts +41 -0
  1004. package/out/tools/fetch/geonames/postal.d.ts.map +1 -0
  1005. package/out/tools/fetch/geonames/postal.js +87 -0
  1006. package/out/tools/fetch/geonames/postal.js.map +1 -0
  1007. package/out/tools/fetch/gleif.d.ts +137 -0
  1008. package/out/tools/fetch/gleif.d.ts.map +1 -0
  1009. package/out/tools/fetch/gleif.js +220 -0
  1010. package/out/tools/fetch/gleif.js.map +1 -0
  1011. package/out/tools/fetch/header.d.ts +41 -0
  1012. package/out/tools/fetch/header.d.ts.map +1 -0
  1013. package/out/tools/fetch/header.js +59 -0
  1014. package/out/tools/fetch/header.js.map +1 -0
  1015. package/out/tools/fetch/inspire-addresses.d.ts +249 -0
  1016. package/out/tools/fetch/inspire-addresses.d.ts.map +1 -0
  1017. package/out/tools/fetch/inspire-addresses.js +276 -0
  1018. package/out/tools/fetch/inspire-addresses.js.map +1 -0
  1019. package/out/tools/fetch/openaddresses.d.ts +0 -3
  1020. package/out/tools/fetch/openaddresses.d.ts.map +1 -1
  1021. package/out/tools/fetch/openaddresses.js +18 -97
  1022. package/out/tools/fetch/openaddresses.js.map +1 -1
  1023. package/out/tools/fetch/ourairports.d.ts +5 -32
  1024. package/out/tools/fetch/ourairports.d.ts.map +1 -1
  1025. package/out/tools/fetch/ourairports.js +13 -46
  1026. package/out/tools/fetch/ourairports.js.map +1 -1
  1027. package/out/tools/fetch/ppd.d.ts +4 -3
  1028. package/out/tools/fetch/ppd.d.ts.map +1 -1
  1029. package/out/tools/fetch/ppd.js +10 -9
  1030. package/out/tools/fetch/ppd.js.map +1 -1
  1031. package/out/tools/fetch/vlaanderen-ad.d.ts +131 -0
  1032. package/out/tools/fetch/vlaanderen-ad.d.ts.map +1 -0
  1033. package/out/tools/fetch/vlaanderen-ad.js +293 -0
  1034. package/out/tools/fetch/vlaanderen-ad.js.map +1 -0
  1035. package/out/tools/fetch/wfs-harvest.d.ts +410 -0
  1036. package/out/tools/fetch/wfs-harvest.d.ts.map +1 -0
  1037. package/out/tools/fetch/wfs-harvest.js +522 -0
  1038. package/out/tools/fetch/wfs-harvest.js.map +1 -0
  1039. package/out/tools/fetch/wikidata-subvenue.d.ts +31 -99
  1040. package/out/tools/fetch/wikidata-subvenue.d.ts.map +1 -1
  1041. package/out/tools/fetch/wikidata-subvenue.js +26 -121
  1042. package/out/tools/fetch/wikidata-subvenue.js.map +1 -1
  1043. package/out/tools/fetch/zip-archive.d.ts +54 -0
  1044. package/out/tools/fetch/zip-archive.d.ts.map +1 -0
  1045. package/out/tools/fetch/zip-archive.js +58 -0
  1046. package/out/tools/fetch/zip-archive.js.map +1 -0
  1047. package/out/tools/fetch.d.ts +140 -0
  1048. package/out/tools/fetch.d.ts.map +1 -0
  1049. package/out/tools/fetch.js +136 -0
  1050. package/out/tools/fetch.js.map +1 -0
  1051. package/out/tools/golden/expand.d.ts +105 -0
  1052. package/out/tools/golden/expand.d.ts.map +1 -0
  1053. package/out/tools/golden/expand.js +420 -0
  1054. package/out/tools/golden/expand.js.map +1 -0
  1055. package/out/tools/golden/promote.d.ts +77 -0
  1056. package/out/tools/golden/promote.d.ts.map +1 -0
  1057. package/out/tools/golden/promote.js +248 -0
  1058. package/out/tools/golden/promote.js.map +1 -0
  1059. package/out/tools/golden/relabel-street/directory.d.ts +98 -0
  1060. package/out/tools/golden/relabel-street/directory.d.ts.map +1 -0
  1061. package/out/tools/golden/relabel-street/directory.js +227 -0
  1062. package/out/tools/golden/relabel-street/directory.js.map +1 -0
  1063. package/out/tools/golden/relabel-street/row.d.ts +69 -0
  1064. package/out/tools/golden/relabel-street/row.d.ts.map +1 -0
  1065. package/out/tools/golden/relabel-street/row.js +174 -0
  1066. package/out/tools/golden/relabel-street/row.js.map +1 -0
  1067. package/out/tools/golden/relabel-street.d.ts +9 -0
  1068. package/out/tools/golden/relabel-street.d.ts.map +1 -0
  1069. package/out/tools/golden/relabel-street.js +9 -0
  1070. package/out/tools/golden/relabel-street.js.map +1 -0
  1071. package/out/tools/ingest-csv.d.ts +19 -15
  1072. package/out/tools/ingest-csv.d.ts.map +1 -1
  1073. package/out/tools/ingest-csv.js +39 -45
  1074. package/out/tools/ingest-csv.js.map +1 -1
  1075. package/out/tools/jsonl-to-parquet.d.ts +15 -28
  1076. package/out/tools/jsonl-to-parquet.d.ts.map +1 -1
  1077. package/out/tools/jsonl-to-parquet.js +49 -91
  1078. package/out/tools/jsonl-to-parquet.js.map +1 -1
  1079. package/out/tools/lint/recipe-output/vocab.d.ts +77 -0
  1080. package/out/tools/lint/recipe-output/vocab.d.ts.map +1 -0
  1081. package/out/tools/lint/recipe-output/vocab.js +239 -0
  1082. package/out/tools/lint/recipe-output/vocab.js.map +1 -0
  1083. package/out/tools/lint/recipe-output.d.ts +73 -0
  1084. package/out/tools/lint/recipe-output.d.ts.map +1 -0
  1085. package/out/tools/lint/recipe-output.js +302 -0
  1086. package/out/tools/lint/recipe-output.js.map +1 -0
  1087. package/out/tools/migrate/overlay-parquet.d.ts +30 -0
  1088. package/out/tools/migrate/overlay-parquet.d.ts.map +1 -0
  1089. package/out/tools/migrate/overlay-parquet.js +141 -0
  1090. package/out/tools/migrate/overlay-parquet.js.map +1 -0
  1091. package/out/tools/migrate/recipe-output.d.ts +35 -0
  1092. package/out/tools/migrate/recipe-output.d.ts.map +1 -0
  1093. package/out/tools/migrate/recipe-output.js +124 -0
  1094. package/out/tools/migrate/recipe-output.js.map +1 -0
  1095. package/out/tools/migrate/source-names.d.ts +52 -0
  1096. package/out/tools/migrate/source-names.d.ts.map +1 -0
  1097. package/out/tools/migrate/source-names.js +105 -0
  1098. package/out/tools/migrate/source-names.js.map +1 -0
  1099. package/out/tools/overlay/kryptonite.d.ts +33 -0
  1100. package/out/tools/overlay/kryptonite.d.ts.map +1 -0
  1101. package/out/tools/overlay/kryptonite.js +108 -0
  1102. package/out/tools/overlay/kryptonite.js.map +1 -0
  1103. package/out/tools/overlay/manifest.d.ts +142 -0
  1104. package/out/tools/overlay/manifest.d.ts.map +1 -0
  1105. package/out/tools/overlay/manifest.js +260 -0
  1106. package/out/tools/overlay/manifest.js.map +1 -0
  1107. package/out/tools/overlay/merge-source.d.ts +73 -0
  1108. package/out/tools/overlay/merge-source.d.ts.map +1 -0
  1109. package/out/tools/overlay/merge-source.js +63 -0
  1110. package/out/tools/overlay/merge-source.js.map +1 -0
  1111. package/out/tools/overlay/split-slice.d.ts +66 -0
  1112. package/out/tools/overlay/split-slice.d.ts.map +1 -0
  1113. package/out/tools/overlay/split-slice.js +78 -0
  1114. package/out/tools/overlay/split-slice.js.map +1 -0
  1115. package/out/tools/overlay/translit.d.ts +54 -0
  1116. package/out/tools/overlay/translit.d.ts.map +1 -0
  1117. package/out/tools/overlay/translit.js +177 -0
  1118. package/out/tools/overlay/translit.js.map +1 -0
  1119. package/out/tools/overture-subvenue.d.ts +17 -76
  1120. package/out/tools/overture-subvenue.d.ts.map +1 -1
  1121. package/out/tools/overture-subvenue.js +7 -74
  1122. package/out/tools/overture-subvenue.js.map +1 -1
  1123. package/out/tools/postcode-triples.d.ts +96 -109
  1124. package/out/tools/postcode-triples.d.ts.map +1 -1
  1125. package/out/tools/postcode-triples.js +237 -152
  1126. package/out/tools/postcode-triples.js.map +1 -1
  1127. package/out/tools/source-register/build.d.ts +145 -0
  1128. package/out/tools/source-register/build.d.ts.map +1 -0
  1129. package/out/tools/source-register/build.js +515 -0
  1130. package/out/tools/source-register/build.js.map +1 -0
  1131. package/out/tools/sub/venue/head-nouns.d.ts +21 -0
  1132. package/out/tools/sub/venue/head-nouns.d.ts.map +1 -0
  1133. package/out/tools/sub/venue/head-nouns.js +176 -0
  1134. package/out/tools/sub/venue/head-nouns.js.map +1 -0
  1135. package/out/tools/sub/venue/lexicon.d.ts +129 -0
  1136. package/out/tools/sub/venue/lexicon.d.ts.map +1 -0
  1137. package/out/tools/sub/venue/lexicon.js +239 -0
  1138. package/out/tools/sub/venue/lexicon.js.map +1 -0
  1139. package/out/tools/sub/venue/wikidata.d.ts +28 -0
  1140. package/out/tools/sub/venue/wikidata.d.ts.map +1 -0
  1141. package/out/tools/sub/venue/wikidata.js +65 -0
  1142. package/out/tools/sub/venue/wikidata.js.map +1 -0
  1143. package/out/tools.d.ts +31 -0
  1144. package/out/tools.d.ts.map +1 -0
  1145. package/out/tools.js +31 -0
  1146. package/out/tools.js.map +1 -0
  1147. package/out/tw/tools/fetch/gcis.d.ts +29 -0
  1148. package/out/tw/tools/fetch/gcis.d.ts.map +1 -0
  1149. package/out/tw/tools/fetch/gcis.js +141 -0
  1150. package/out/tw/tools/fetch/gcis.js.map +1 -0
  1151. package/out/types.d.ts +270 -101
  1152. package/out/types.d.ts.map +1 -1
  1153. package/out/types.js +133 -9
  1154. package/out/types.js.map +1 -1
  1155. package/out/us/adapters/fcc-bdc/adapter.d.ts +50 -0
  1156. package/out/us/adapters/fcc-bdc/adapter.d.ts.map +1 -0
  1157. package/out/us/adapters/fcc-bdc/adapter.js +129 -0
  1158. package/out/us/adapters/fcc-bdc/adapter.js.map +1 -0
  1159. package/out/us/adapters/state/hi-schools/adapter.d.ts +47 -0
  1160. package/out/us/adapters/state/hi-schools/adapter.d.ts.map +1 -0
  1161. package/out/us/adapters/state/hi-schools/adapter.js +146 -0
  1162. package/out/us/adapters/state/hi-schools/adapter.js.map +1 -0
  1163. package/out/us/adapters/state/hi-schools/workbook.d.ts +34 -0
  1164. package/out/us/adapters/state/hi-schools/workbook.d.ts.map +1 -0
  1165. package/out/us/adapters/state/hi-schools/workbook.js +22 -0
  1166. package/out/us/adapters/state/hi-schools/workbook.js.map +1 -0
  1167. package/out/us/adapters/state/ia-contractors/adapter.d.ts +41 -0
  1168. package/out/us/adapters/state/ia-contractors/adapter.d.ts.map +1 -0
  1169. package/out/us/adapters/state/ia-contractors/adapter.js +117 -0
  1170. package/out/us/adapters/state/ia-contractors/adapter.js.map +1 -0
  1171. package/out/us/adapters/state/ny-notaries/adapter.d.ts +33 -0
  1172. package/out/us/adapters/state/ny-notaries/adapter.d.ts.map +1 -0
  1173. package/out/us/adapters/state/ny-notaries/adapter.js +114 -0
  1174. package/out/us/adapters/state/ny-notaries/adapter.js.map +1 -0
  1175. package/out/us/adapters/state/tx-notaries/adapter.d.ts +34 -0
  1176. package/out/us/adapters/state/tx-notaries/adapter.d.ts.map +1 -0
  1177. package/out/us/adapters/state/tx-notaries/adapter.js +125 -0
  1178. package/out/us/adapters/state/tx-notaries/adapter.js.map +1 -0
  1179. package/out/us/adapters/tiger/adapter.d.ts +31 -0
  1180. package/out/us/adapters/tiger/adapter.d.ts.map +1 -0
  1181. package/out/us/adapters/tiger/adapter.js +173 -0
  1182. package/out/us/adapters/tiger/adapter.js.map +1 -0
  1183. package/out/us/adapters/tiger/street-decompose.d.ts +23 -0
  1184. package/out/us/adapters/tiger/street-decompose.d.ts.map +1 -0
  1185. package/out/us/adapters/tiger/street-decompose.js +58 -0
  1186. package/out/us/adapters/tiger/street-decompose.js.map +1 -0
  1187. package/out/us/adapters/usgov/hrsa-fqhc/adapter.d.ts +62 -0
  1188. package/out/us/adapters/usgov/hrsa-fqhc/adapter.d.ts.map +1 -0
  1189. package/out/us/adapters/usgov/hrsa-fqhc/adapter.js +133 -0
  1190. package/out/us/adapters/usgov/hrsa-fqhc/adapter.js.map +1 -0
  1191. package/out/us/adapters/usgov/imls-pls/adapter.d.ts +37 -0
  1192. package/out/us/adapters/usgov/imls-pls/adapter.d.ts.map +1 -0
  1193. package/out/us/adapters/usgov/imls-pls/adapter.js +113 -0
  1194. package/out/us/adapters/usgov/imls-pls/adapter.js.map +1 -0
  1195. package/out/us/adapters/usgov/irs-bmf/adapter.d.ts +38 -0
  1196. package/out/us/adapters/usgov/irs-bmf/adapter.d.ts.map +1 -0
  1197. package/out/us/adapters/usgov/irs-bmf/adapter.js +126 -0
  1198. package/out/us/adapters/usgov/irs-bmf/adapter.js.map +1 -0
  1199. package/out/us/adapters/usgov/nad/adapter.d.ts +28 -0
  1200. package/out/us/adapters/usgov/nad/adapter.d.ts.map +1 -0
  1201. package/out/us/adapters/usgov/nad/adapter.js +185 -0
  1202. package/out/us/adapters/usgov/nad/adapter.js.map +1 -0
  1203. package/out/us/adapters/usgov/nppes/adapter.d.ts +29 -0
  1204. package/out/us/adapters/usgov/nppes/adapter.d.ts.map +1 -0
  1205. package/out/us/adapters/usgov/nppes/adapter.js +140 -0
  1206. package/out/us/adapters/usgov/nppes/adapter.js.map +1 -0
  1207. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.d.ts +47 -0
  1208. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.d.ts.map +1 -0
  1209. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.js +153 -0
  1210. package/out/us/adapters/usgov/samhsa-treatment-locator/adapter.js.map +1 -0
  1211. package/out/us/fips-state.d.ts +50 -0
  1212. package/out/us/fips-state.d.ts.map +1 -0
  1213. package/out/us/fips-state.js +109 -0
  1214. package/out/us/fips-state.js.map +1 -0
  1215. package/out/us/tools/fetch/hrsa.d.ts +18 -0
  1216. package/out/us/tools/fetch/hrsa.d.ts.map +1 -0
  1217. package/out/us/tools/fetch/hrsa.js +45 -0
  1218. package/out/us/tools/fetch/hrsa.js.map +1 -0
  1219. package/out/us/tools/fetch/imls-pls.d.ts +14 -0
  1220. package/out/us/tools/fetch/imls-pls.d.ts.map +1 -0
  1221. package/out/us/tools/fetch/imls-pls.js +91 -0
  1222. package/out/us/tools/fetch/imls-pls.js.map +1 -0
  1223. package/out/us/tools/fetch/nad.d.ts +82 -0
  1224. package/out/us/tools/fetch/nad.d.ts.map +1 -0
  1225. package/out/us/tools/fetch/nad.js +239 -0
  1226. package/out/us/tools/fetch/nad.js.map +1 -0
  1227. package/out/us/tools/fetch/nppes.d.ts +16 -0
  1228. package/out/us/tools/fetch/nppes.d.ts.map +1 -0
  1229. package/out/us/tools/fetch/nppes.js +114 -0
  1230. package/out/us/tools/fetch/nppes.js.map +1 -0
  1231. package/out/us/tools/fetch/state/hi-schools.d.ts +29 -0
  1232. package/out/us/tools/fetch/state/hi-schools.d.ts.map +1 -0
  1233. package/out/us/tools/fetch/state/hi-schools.js +114 -0
  1234. package/out/us/tools/fetch/state/hi-schools.js.map +1 -0
  1235. package/out/us/tools/fetch/state/sources.d.ts +27 -0
  1236. package/out/us/tools/fetch/state/sources.d.ts.map +1 -0
  1237. package/out/us/tools/fetch/state/sources.js +110 -0
  1238. package/out/us/tools/fetch/state/sources.js.map +1 -0
  1239. package/out/us/tools/fetch/tiger-full.d.ts +9 -0
  1240. package/out/us/tools/fetch/tiger-full.d.ts.map +1 -0
  1241. package/out/us/tools/fetch/tiger-full.js +178 -0
  1242. package/out/us/tools/fetch/tiger-full.js.map +1 -0
  1243. package/out/utils/align.d.ts +25 -20
  1244. package/out/utils/align.d.ts.map +1 -1
  1245. package/out/utils/align.js +27 -42
  1246. package/out/utils/align.js.map +1 -1
  1247. package/out/utils/cooccurrence-stats.d.ts +58 -0
  1248. package/out/utils/cooccurrence-stats.d.ts.map +1 -0
  1249. package/out/utils/cooccurrence-stats.js +62 -0
  1250. package/out/utils/cooccurrence-stats.js.map +1 -0
  1251. package/out/utils/golden.d.ts +23 -29
  1252. package/out/utils/golden.d.ts.map +1 -1
  1253. package/out/utils/golden.js +33 -45
  1254. package/out/utils/golden.js.map +1 -1
  1255. package/out/utils/license.d.ts +158 -21
  1256. package/out/utils/license.d.ts.map +1 -1
  1257. package/out/utils/license.js +156 -26
  1258. package/out/utils/license.js.map +1 -1
  1259. package/out/utils/split.d.ts +66 -70
  1260. package/out/utils/split.d.ts.map +1 -1
  1261. package/out/utils/split.js +158 -69
  1262. package/out/utils/split.js.map +1 -1
  1263. package/out/utils/tokenize.d.ts +16 -28
  1264. package/out/utils/tokenize.d.ts.map +1 -1
  1265. package/out/utils/tokenize.js +18 -31
  1266. package/out/utils/tokenize.js.map +1 -1
  1267. package/out/utils/wof-json.d.ts +88 -62
  1268. package/out/utils/wof-json.d.ts.map +1 -1
  1269. package/out/utils/wof-json.js +81 -65
  1270. package/out/utils/wof-json.js.map +1 -1
  1271. package/out/utils.d.ts +13 -0
  1272. package/out/utils.d.ts.map +1 -0
  1273. package/out/utils.js +13 -0
  1274. package/out/utils.js.map +1 -0
  1275. package/out/ve/recipes/reviewed-postcode-tail.d.ts +65 -0
  1276. package/out/ve/recipes/reviewed-postcode-tail.d.ts.map +1 -0
  1277. package/out/ve/recipes/reviewed-postcode-tail.js +146 -0
  1278. package/out/ve/recipes/reviewed-postcode-tail.js.map +1 -0
  1279. package/package.json +46 -330
  1280. package/lib/adapters/ban/adapter.ts +0 -190
  1281. package/lib/adapters/ban/street-decompose.ts +0 -66
  1282. package/lib/adapters/fcc-bdc/adapter.ts +0 -174
  1283. package/lib/adapters/geonames-postal/adapter.ts +0 -122
  1284. package/lib/adapters/gnaf/adapter.ts +0 -149
  1285. package/lib/adapters/gnaf/assemble.ts +0 -225
  1286. package/lib/adapters/index.ts +0 -153
  1287. package/lib/adapters/state-hi-schools/adapter.ts +0 -170
  1288. package/lib/adapters/state-hi-schools/workbook.ts +0 -35
  1289. package/lib/adapters/state-ia-contractors/adapter.ts +0 -144
  1290. package/lib/adapters/state-ny-notaries/adapter.ts +0 -141
  1291. package/lib/adapters/state-tx-notaries/adapter.ts +0 -157
  1292. package/lib/adapters/synth-po-box/adapter.ts +0 -204
  1293. package/lib/adapters/tiger/adapter.ts +0 -252
  1294. package/lib/adapters/tiger/street-decompose.ts +0 -83
  1295. package/lib/adapters/usgov-hrsa-fqhc/adapter.ts +0 -167
  1296. package/lib/adapters/usgov-imls-pls/adapter.ts +0 -143
  1297. package/lib/adapters/usgov-irs-bmf/adapter.ts +0 -151
  1298. package/lib/adapters/usgov-nad/adapter.ts +0 -334
  1299. package/lib/adapters/usgov-nppes/adapter.ts +0 -151
  1300. package/lib/adapters/usgov-samhsa-treatment-locator/adapter.ts +0 -193
  1301. package/lib/adapters/utils/index.ts +0 -307
  1302. package/lib/adapters/wof-admin-jp/adapter.ts +0 -214
  1303. package/lib/adapters/wof-admin-json/adapter.ts +0 -231
  1304. package/lib/adapters/wof-json-rows.ts +0 -129
  1305. package/lib/adapters/wof-postalcode-json/adapter.ts +0 -176
  1306. package/lib/codex/us-fips-state.ts +0 -113
  1307. package/lib/recipes/bare-country.ts +0 -95
  1308. package/lib/recipes/cn-organizational-units.ts +0 -199
  1309. package/lib/recipes/cz-pcfirst-preposition.ts +0 -112
  1310. package/lib/recipes/fr-admin-split.ts +0 -243
  1311. package/lib/recipes/fr-bare-street.ts +0 -171
  1312. package/lib/recipes/fr-fragment.ts +0 -334
  1313. package/lib/recipes/fr-lieudit.ts +0 -301
  1314. package/lib/recipes/fr-order.ts +0 -246
  1315. package/lib/recipes/german.ts +0 -360
  1316. package/lib/recipes/index.ts +0 -97
  1317. package/lib/recipes/locale.ts +0 -600
  1318. package/lib/recipes/nl-postcode.ts +0 -117
  1319. package/lib/recipes/no-fragment.ts +0 -213
  1320. package/lib/recipes/no-street-led.ts +0 -135
  1321. package/lib/recipes/no-street.ts +0 -91
  1322. package/lib/recipes/po-box-cedex.ts +0 -976
  1323. package/lib/recipes/po-box.ts +0 -124
  1324. package/lib/recipes/reviewed-postcode-tail.ts +0 -190
  1325. package/lib/recipes/si-bare-village.ts +0 -99
  1326. package/lib/recipes/street-affix.ts +0 -805
  1327. package/lib/recipes/street-bare.ts +0 -102
  1328. package/lib/recipes/sub-venue-sources.ts +0 -878
  1329. package/lib/recipes/sub-venue.ts +0 -998
  1330. package/lib/synthesizers/german.ts +0 -260
  1331. package/lib/test-kit/index.ts +0 -100
  1332. package/lib/tools/align-slice.ts +0 -68
  1333. package/lib/tools/fetch/acra-sg.ts +0 -174
  1334. package/lib/tools/fetch/ban.ts +0 -289
  1335. package/lib/tools/fetch/gcis-tw.ts +0 -175
  1336. package/lib/tools/fetch/geonames-dump.ts +0 -257
  1337. package/lib/tools/fetch/geonames-postal.ts +0 -180
  1338. package/lib/tools/fetch/houjin-jp.ts +0 -135
  1339. package/lib/tools/fetch/hrsa.ts +0 -59
  1340. package/lib/tools/fetch/imls-pls.ts +0 -149
  1341. package/lib/tools/fetch/index.ts +0 -174
  1342. package/lib/tools/fetch/juso-kr.ts +0 -165
  1343. package/lib/tools/fetch/localdata-kr.ts +0 -194
  1344. package/lib/tools/fetch/nad.ts +0 -341
  1345. package/lib/tools/fetch/nppes.ts +0 -165
  1346. package/lib/tools/fetch/state-hi-schools.ts +0 -161
  1347. package/lib/tools/fetch/state-sources.ts +0 -146
  1348. package/lib/tools/fetch/tiger-full.ts +0 -308
  1349. package/lib/tools/gb-title-case.ts +0 -69
  1350. package/lib/tools/golden-expand.ts +0 -574
  1351. package/lib/tools/golden-promote.ts +0 -337
  1352. package/lib/tools/golden-relabel-street.ts +0 -686
  1353. package/lib/tools/index.ts +0 -28
  1354. package/lib/tools/lint-slice-vocab.ts +0 -388
  1355. package/lib/tools/lint-slice.ts +0 -496
  1356. package/lib/tools/overlay-manifest.ts +0 -148
  1357. package/lib/tools/slice-kryptonite.ts +0 -137
  1358. package/lib/tools/slice-translit.ts +0 -218
  1359. package/lib/tools/sub-venue/harvest.ts +0 -234
  1360. package/lib/tools/sub-venue/head-nouns.ts +0 -245
  1361. package/lib/tools/sub-venue/surfaces.ts +0 -95
  1362. package/lib/tools/sub-venue/table.ts +0 -281
  1363. package/lib/tools/sub-venue/wikidata.ts +0 -85
  1364. package/lib/tools/sub-venue-lexicon.ts +0 -429
  1365. package/lib/tools/sub-venue-promotions.ts +0 -330
  1366. package/lib/utils/index.ts +0 -14
  1367. package/lib/utils/parquet.ts +0 -582
  1368. package/lib/utils/slice-stats.ts +0 -95
  1369. package/out/adapters/ban/adapter.d.ts +0 -44
  1370. package/out/adapters/ban/adapter.d.ts.map +0 -1
  1371. package/out/adapters/ban/adapter.js +0 -149
  1372. package/out/adapters/ban/adapter.js.map +0 -1
  1373. package/out/adapters/ban/street-decompose.d.ts +0 -28
  1374. package/out/adapters/ban/street-decompose.d.ts.map +0 -1
  1375. package/out/adapters/ban/street-decompose.js +0 -51
  1376. package/out/adapters/ban/street-decompose.js.map +0 -1
  1377. package/out/adapters/fcc-bdc/adapter.d.ts +0 -68
  1378. package/out/adapters/fcc-bdc/adapter.d.ts.map +0 -1
  1379. package/out/adapters/fcc-bdc/adapter.js +0 -144
  1380. package/out/adapters/fcc-bdc/adapter.js.map +0 -1
  1381. package/out/adapters/geonames-postal/adapter.d.ts +0 -54
  1382. package/out/adapters/geonames-postal/adapter.d.ts.map +0 -1
  1383. package/out/adapters/geonames-postal/adapter.js +0 -107
  1384. package/out/adapters/geonames-postal/adapter.js.map +0 -1
  1385. package/out/adapters/gnaf/adapter.d.ts +0 -49
  1386. package/out/adapters/gnaf/adapter.d.ts.map +0 -1
  1387. package/out/adapters/gnaf/adapter.js +0 -124
  1388. package/out/adapters/gnaf/adapter.js.map +0 -1
  1389. package/out/adapters/gnaf/assemble.d.ts +0 -65
  1390. package/out/adapters/gnaf/assemble.d.ts.map +0 -1
  1391. package/out/adapters/gnaf/assemble.js +0 -154
  1392. package/out/adapters/gnaf/assemble.js.map +0 -1
  1393. package/out/adapters/index.d.ts +0 -51
  1394. package/out/adapters/index.d.ts.map +0 -1
  1395. package/out/adapters/index.js +0 -95
  1396. package/out/adapters/index.js.map +0 -1
  1397. package/out/adapters/state-hi-schools/adapter.d.ts +0 -46
  1398. package/out/adapters/state-hi-schools/adapter.d.ts.map +0 -1
  1399. package/out/adapters/state-hi-schools/adapter.js +0 -145
  1400. package/out/adapters/state-hi-schools/adapter.js.map +0 -1
  1401. package/out/adapters/state-hi-schools/workbook.d.ts +0 -29
  1402. package/out/adapters/state-hi-schools/workbook.d.ts.map +0 -1
  1403. package/out/adapters/state-hi-schools/workbook.js +0 -20
  1404. package/out/adapters/state-hi-schools/workbook.js.map +0 -1
  1405. package/out/adapters/state-ia-contractors/adapter.d.ts +0 -34
  1406. package/out/adapters/state-ia-contractors/adapter.d.ts.map +0 -1
  1407. package/out/adapters/state-ia-contractors/adapter.js +0 -111
  1408. package/out/adapters/state-ia-contractors/adapter.js.map +0 -1
  1409. package/out/adapters/state-ny-notaries/adapter.d.ts +0 -32
  1410. package/out/adapters/state-ny-notaries/adapter.d.ts.map +0 -1
  1411. package/out/adapters/state-ny-notaries/adapter.js +0 -119
  1412. package/out/adapters/state-ny-notaries/adapter.js.map +0 -1
  1413. package/out/adapters/state-tx-notaries/adapter.d.ts +0 -33
  1414. package/out/adapters/state-tx-notaries/adapter.d.ts.map +0 -1
  1415. package/out/adapters/state-tx-notaries/adapter.js +0 -125
  1416. package/out/adapters/state-tx-notaries/adapter.js.map +0 -1
  1417. package/out/adapters/synth-po-box/adapter.d.ts +0 -67
  1418. package/out/adapters/synth-po-box/adapter.d.ts.map +0 -1
  1419. package/out/adapters/synth-po-box/adapter.js +0 -140
  1420. package/out/adapters/synth-po-box/adapter.js.map +0 -1
  1421. package/out/adapters/tiger/adapter.d.ts +0 -55
  1422. package/out/adapters/tiger/adapter.d.ts.map +0 -1
  1423. package/out/adapters/tiger/adapter.js +0 -201
  1424. package/out/adapters/tiger/adapter.js.map +0 -1
  1425. package/out/adapters/tiger/street-decompose.d.ts +0 -30
  1426. package/out/adapters/tiger/street-decompose.d.ts.map +0 -1
  1427. package/out/adapters/tiger/street-decompose.js +0 -68
  1428. package/out/adapters/tiger/street-decompose.js.map +0 -1
  1429. package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts +0 -56
  1430. package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts.map +0 -1
  1431. package/out/adapters/usgov-hrsa-fqhc/adapter.js +0 -132
  1432. package/out/adapters/usgov-hrsa-fqhc/adapter.js.map +0 -1
  1433. package/out/adapters/usgov-imls-pls/adapter.d.ts +0 -36
  1434. package/out/adapters/usgov-imls-pls/adapter.d.ts.map +0 -1
  1435. package/out/adapters/usgov-imls-pls/adapter.js +0 -114
  1436. package/out/adapters/usgov-imls-pls/adapter.js.map +0 -1
  1437. package/out/adapters/usgov-irs-bmf/adapter.d.ts +0 -37
  1438. package/out/adapters/usgov-irs-bmf/adapter.d.ts.map +0 -1
  1439. package/out/adapters/usgov-irs-bmf/adapter.js +0 -120
  1440. package/out/adapters/usgov-irs-bmf/adapter.js.map +0 -1
  1441. package/out/adapters/usgov-nad/adapter.d.ts +0 -48
  1442. package/out/adapters/usgov-nad/adapter.d.ts.map +0 -1
  1443. package/out/adapters/usgov-nad/adapter.js +0 -249
  1444. package/out/adapters/usgov-nad/adapter.js.map +0 -1
  1445. package/out/adapters/usgov-nppes/adapter.d.ts +0 -39
  1446. package/out/adapters/usgov-nppes/adapter.d.ts.map +0 -1
  1447. package/out/adapters/usgov-nppes/adapter.js +0 -118
  1448. package/out/adapters/usgov-nppes/adapter.js.map +0 -1
  1449. package/out/adapters/usgov-samhsa-treatment-locator/adapter.d.ts +0 -46
  1450. package/out/adapters/usgov-samhsa-treatment-locator/adapter.d.ts.map +0 -1
  1451. package/out/adapters/usgov-samhsa-treatment-locator/adapter.js +0 -154
  1452. package/out/adapters/usgov-samhsa-treatment-locator/adapter.js.map +0 -1
  1453. package/out/adapters/utils/index.d.ts +0 -191
  1454. package/out/adapters/utils/index.d.ts.map +0 -1
  1455. package/out/adapters/utils/index.js +0 -206
  1456. package/out/adapters/utils/index.js.map +0 -1
  1457. package/out/adapters/wof-admin-jp/adapter.d.ts +0 -65
  1458. package/out/adapters/wof-admin-jp/adapter.d.ts.map +0 -1
  1459. package/out/adapters/wof-admin-jp/adapter.js +0 -161
  1460. package/out/adapters/wof-admin-jp/adapter.js.map +0 -1
  1461. package/out/adapters/wof-admin-json/adapter.d.ts +0 -79
  1462. package/out/adapters/wof-admin-json/adapter.d.ts.map +0 -1
  1463. package/out/adapters/wof-admin-json/adapter.js +0 -197
  1464. package/out/adapters/wof-admin-json/adapter.js.map +0 -1
  1465. package/out/adapters/wof-json-rows.d.ts +0 -62
  1466. package/out/adapters/wof-json-rows.d.ts.map +0 -1
  1467. package/out/adapters/wof-json-rows.js +0 -83
  1468. package/out/adapters/wof-json-rows.js.map +0 -1
  1469. package/out/adapters/wof-postalcode-json/adapter.d.ts +0 -65
  1470. package/out/adapters/wof-postalcode-json/adapter.d.ts.map +0 -1
  1471. package/out/adapters/wof-postalcode-json/adapter.js +0 -151
  1472. package/out/adapters/wof-postalcode-json/adapter.js.map +0 -1
  1473. package/out/codex/us-fips-state.d.ts +0 -41
  1474. package/out/codex/us-fips-state.d.ts.map +0 -1
  1475. package/out/codex/us-fips-state.js +0 -100
  1476. package/out/codex/us-fips-state.js.map +0 -1
  1477. package/out/recipes/bare-country.d.ts +0 -25
  1478. package/out/recipes/bare-country.d.ts.map +0 -1
  1479. package/out/recipes/bare-country.js +0 -88
  1480. package/out/recipes/bare-country.js.map +0 -1
  1481. package/out/recipes/cn-organizational-units.d.ts +0 -36
  1482. package/out/recipes/cn-organizational-units.d.ts.map +0 -1
  1483. package/out/recipes/cn-organizational-units.js +0 -159
  1484. package/out/recipes/cn-organizational-units.js.map +0 -1
  1485. package/out/recipes/cz-pcfirst-preposition.d.ts +0 -22
  1486. package/out/recipes/cz-pcfirst-preposition.d.ts.map +0 -1
  1487. package/out/recipes/cz-pcfirst-preposition.js +0 -101
  1488. package/out/recipes/cz-pcfirst-preposition.js.map +0 -1
  1489. package/out/recipes/fr-admin-split.d.ts +0 -38
  1490. package/out/recipes/fr-admin-split.d.ts.map +0 -1
  1491. package/out/recipes/fr-admin-split.js +0 -192
  1492. package/out/recipes/fr-admin-split.js.map +0 -1
  1493. package/out/recipes/fr-bare-street.d.ts +0 -28
  1494. package/out/recipes/fr-bare-street.d.ts.map +0 -1
  1495. package/out/recipes/fr-bare-street.js +0 -144
  1496. package/out/recipes/fr-bare-street.js.map +0 -1
  1497. package/out/recipes/fr-fragment.d.ts +0 -77
  1498. package/out/recipes/fr-fragment.d.ts.map +0 -1
  1499. package/out/recipes/fr-fragment.js +0 -277
  1500. package/out/recipes/fr-fragment.js.map +0 -1
  1501. package/out/recipes/fr-lieudit.d.ts +0 -32
  1502. package/out/recipes/fr-lieudit.d.ts.map +0 -1
  1503. package/out/recipes/fr-lieudit.js +0 -227
  1504. package/out/recipes/fr-lieudit.js.map +0 -1
  1505. package/out/recipes/fr-order.d.ts +0 -38
  1506. package/out/recipes/fr-order.d.ts.map +0 -1
  1507. package/out/recipes/fr-order.js +0 -198
  1508. package/out/recipes/fr-order.js.map +0 -1
  1509. package/out/recipes/german.d.ts +0 -44
  1510. package/out/recipes/german.d.ts.map +0 -1
  1511. package/out/recipes/german.js +0 -289
  1512. package/out/recipes/german.js.map +0 -1
  1513. package/out/recipes/index.d.ts +0 -24
  1514. package/out/recipes/index.d.ts.map +0 -1
  1515. package/out/recipes/index.js +0 -91
  1516. package/out/recipes/index.js.map +0 -1
  1517. package/out/recipes/locale.d.ts +0 -136
  1518. package/out/recipes/locale.d.ts.map +0 -1
  1519. package/out/recipes/locale.js +0 -460
  1520. package/out/recipes/locale.js.map +0 -1
  1521. package/out/recipes/nl-postcode.d.ts +0 -26
  1522. package/out/recipes/nl-postcode.d.ts.map +0 -1
  1523. package/out/recipes/nl-postcode.js +0 -103
  1524. package/out/recipes/nl-postcode.js.map +0 -1
  1525. package/out/recipes/no-fragment.d.ts +0 -43
  1526. package/out/recipes/no-fragment.d.ts.map +0 -1
  1527. package/out/recipes/no-fragment.js +0 -183
  1528. package/out/recipes/no-fragment.js.map +0 -1
  1529. package/out/recipes/no-street-led.d.ts +0 -24
  1530. package/out/recipes/no-street-led.d.ts.map +0 -1
  1531. package/out/recipes/no-street-led.js +0 -114
  1532. package/out/recipes/no-street-led.js.map +0 -1
  1533. package/out/recipes/no-street.d.ts +0 -18
  1534. package/out/recipes/no-street.d.ts.map +0 -1
  1535. package/out/recipes/no-street.js +0 -72
  1536. package/out/recipes/no-street.js.map +0 -1
  1537. package/out/recipes/po-box-cedex.d.ts +0 -38
  1538. package/out/recipes/po-box-cedex.d.ts.map +0 -1
  1539. package/out/recipes/po-box-cedex.js +0 -768
  1540. package/out/recipes/po-box-cedex.js.map +0 -1
  1541. package/out/recipes/po-box.d.ts +0 -17
  1542. package/out/recipes/po-box.d.ts.map +0 -1
  1543. package/out/recipes/po-box.js +0 -101
  1544. package/out/recipes/po-box.js.map +0 -1
  1545. package/out/recipes/reviewed-postcode-tail.d.ts +0 -47
  1546. package/out/recipes/reviewed-postcode-tail.d.ts.map +0 -1
  1547. package/out/recipes/reviewed-postcode-tail.js +0 -125
  1548. package/out/recipes/reviewed-postcode-tail.js.map +0 -1
  1549. package/out/recipes/si-bare-village.d.ts +0 -32
  1550. package/out/recipes/si-bare-village.d.ts.map +0 -1
  1551. package/out/recipes/si-bare-village.js +0 -89
  1552. package/out/recipes/si-bare-village.js.map +0 -1
  1553. package/out/recipes/street-affix.d.ts +0 -89
  1554. package/out/recipes/street-affix.d.ts.map +0 -1
  1555. package/out/recipes/street-affix.js +0 -563
  1556. package/out/recipes/street-affix.js.map +0 -1
  1557. package/out/recipes/street-bare.d.ts +0 -25
  1558. package/out/recipes/street-bare.d.ts.map +0 -1
  1559. package/out/recipes/street-bare.js +0 -87
  1560. package/out/recipes/street-bare.js.map +0 -1
  1561. package/out/recipes/sub-venue-sources.d.ts +0 -229
  1562. package/out/recipes/sub-venue-sources.d.ts.map +0 -1
  1563. package/out/recipes/sub-venue-sources.js +0 -654
  1564. package/out/recipes/sub-venue-sources.js.map +0 -1
  1565. package/out/recipes/sub-venue.d.ts +0 -269
  1566. package/out/recipes/sub-venue.d.ts.map +0 -1
  1567. package/out/recipes/sub-venue.js +0 -726
  1568. package/out/recipes/sub-venue.js.map +0 -1
  1569. package/out/synthesizers/german.d.ts +0 -115
  1570. package/out/synthesizers/german.d.ts.map +0 -1
  1571. package/out/synthesizers/german.js +0 -149
  1572. package/out/synthesizers/german.js.map +0 -1
  1573. package/out/test-kit/index.d.ts +0 -48
  1574. package/out/test-kit/index.d.ts.map +0 -1
  1575. package/out/test-kit/index.js +0 -78
  1576. package/out/test-kit/index.js.map +0 -1
  1577. package/out/tools/align-slice.d.ts +0 -7
  1578. package/out/tools/align-slice.d.ts.map +0 -1
  1579. package/out/tools/align-slice.js +0 -55
  1580. package/out/tools/align-slice.js.map +0 -1
  1581. package/out/tools/fetch/acra-sg.d.ts +0 -23
  1582. package/out/tools/fetch/acra-sg.d.ts.map +0 -1
  1583. package/out/tools/fetch/acra-sg.js +0 -126
  1584. package/out/tools/fetch/acra-sg.js.map +0 -1
  1585. package/out/tools/fetch/ban.d.ts +0 -31
  1586. package/out/tools/fetch/ban.d.ts.map +0 -1
  1587. package/out/tools/fetch/ban.js +0 -239
  1588. package/out/tools/fetch/ban.js.map +0 -1
  1589. package/out/tools/fetch/gcis-tw.d.ts +0 -23
  1590. package/out/tools/fetch/gcis-tw.d.ts.map +0 -1
  1591. package/out/tools/fetch/gcis-tw.js +0 -135
  1592. package/out/tools/fetch/gcis-tw.js.map +0 -1
  1593. package/out/tools/fetch/geonames-dump.d.ts +0 -91
  1594. package/out/tools/fetch/geonames-dump.d.ts.map +0 -1
  1595. package/out/tools/fetch/geonames-dump.js +0 -171
  1596. package/out/tools/fetch/geonames-dump.js.map +0 -1
  1597. package/out/tools/fetch/geonames-postal.d.ts +0 -76
  1598. package/out/tools/fetch/geonames-postal.d.ts.map +0 -1
  1599. package/out/tools/fetch/geonames-postal.js +0 -126
  1600. package/out/tools/fetch/geonames-postal.js.map +0 -1
  1601. package/out/tools/fetch/houjin-jp.d.ts +0 -24
  1602. package/out/tools/fetch/houjin-jp.d.ts.map +0 -1
  1603. package/out/tools/fetch/houjin-jp.js +0 -102
  1604. package/out/tools/fetch/houjin-jp.js.map +0 -1
  1605. package/out/tools/fetch/hrsa.d.ts +0 -18
  1606. package/out/tools/fetch/hrsa.d.ts.map +0 -1
  1607. package/out/tools/fetch/hrsa.js +0 -46
  1608. package/out/tools/fetch/hrsa.js.map +0 -1
  1609. package/out/tools/fetch/imls-pls.d.ts +0 -25
  1610. package/out/tools/fetch/imls-pls.d.ts.map +0 -1
  1611. package/out/tools/fetch/imls-pls.js +0 -108
  1612. package/out/tools/fetch/imls-pls.js.map +0 -1
  1613. package/out/tools/fetch/index.d.ts +0 -171
  1614. package/out/tools/fetch/index.d.ts.map +0 -1
  1615. package/out/tools/fetch/index.js +0 -170
  1616. package/out/tools/fetch/index.js.map +0 -1
  1617. package/out/tools/fetch/juso-kr.d.ts +0 -30
  1618. package/out/tools/fetch/juso-kr.d.ts.map +0 -1
  1619. package/out/tools/fetch/juso-kr.js +0 -120
  1620. package/out/tools/fetch/juso-kr.js.map +0 -1
  1621. package/out/tools/fetch/localdata-kr.d.ts +0 -30
  1622. package/out/tools/fetch/localdata-kr.d.ts.map +0 -1
  1623. package/out/tools/fetch/localdata-kr.js +0 -139
  1624. package/out/tools/fetch/localdata-kr.js.map +0 -1
  1625. package/out/tools/fetch/nad.d.ts +0 -70
  1626. package/out/tools/fetch/nad.d.ts.map +0 -1
  1627. package/out/tools/fetch/nad.js +0 -234
  1628. package/out/tools/fetch/nad.js.map +0 -1
  1629. package/out/tools/fetch/nppes.d.ts +0 -26
  1630. package/out/tools/fetch/nppes.d.ts.map +0 -1
  1631. package/out/tools/fetch/nppes.js +0 -126
  1632. package/out/tools/fetch/nppes.js.map +0 -1
  1633. package/out/tools/fetch/state-hi-schools.d.ts +0 -26
  1634. package/out/tools/fetch/state-hi-schools.d.ts.map +0 -1
  1635. package/out/tools/fetch/state-hi-schools.js +0 -112
  1636. package/out/tools/fetch/state-hi-schools.js.map +0 -1
  1637. package/out/tools/fetch/state-sources.d.ts +0 -26
  1638. package/out/tools/fetch/state-sources.d.ts.map +0 -1
  1639. package/out/tools/fetch/state-sources.js +0 -111
  1640. package/out/tools/fetch/state-sources.js.map +0 -1
  1641. package/out/tools/fetch/tiger-full.d.ts +0 -22
  1642. package/out/tools/fetch/tiger-full.d.ts.map +0 -1
  1643. package/out/tools/fetch/tiger-full.js +0 -217
  1644. package/out/tools/fetch/tiger-full.js.map +0 -1
  1645. package/out/tools/gb-title-case.d.ts +0 -2
  1646. package/out/tools/gb-title-case.d.ts.map +0 -1
  1647. package/out/tools/gb-title-case.js +0 -65
  1648. package/out/tools/gb-title-case.js.map +0 -1
  1649. package/out/tools/golden-expand.d.ts +0 -90
  1650. package/out/tools/golden-expand.d.ts.map +0 -1
  1651. package/out/tools/golden-expand.js +0 -406
  1652. package/out/tools/golden-expand.js.map +0 -1
  1653. package/out/tools/golden-promote.d.ts +0 -72
  1654. package/out/tools/golden-promote.d.ts.map +0 -1
  1655. package/out/tools/golden-promote.js +0 -240
  1656. package/out/tools/golden-promote.js.map +0 -1
  1657. package/out/tools/golden-relabel-street.d.ts +0 -196
  1658. package/out/tools/golden-relabel-street.d.ts.map +0 -1
  1659. package/out/tools/golden-relabel-street.js +0 -439
  1660. package/out/tools/golden-relabel-street.js.map +0 -1
  1661. package/out/tools/index.d.ts +0 -28
  1662. package/out/tools/index.d.ts.map +0 -1
  1663. package/out/tools/index.js +0 -28
  1664. package/out/tools/index.js.map +0 -1
  1665. package/out/tools/lint-slice-vocab.d.ts +0 -90
  1666. package/out/tools/lint-slice-vocab.d.ts.map +0 -1
  1667. package/out/tools/lint-slice-vocab.js +0 -267
  1668. package/out/tools/lint-slice-vocab.js.map +0 -1
  1669. package/out/tools/lint-slice.d.ts +0 -93
  1670. package/out/tools/lint-slice.d.ts.map +0 -1
  1671. package/out/tools/lint-slice.js +0 -322
  1672. package/out/tools/lint-slice.js.map +0 -1
  1673. package/out/tools/overlay-manifest.d.ts +0 -39
  1674. package/out/tools/overlay-manifest.d.ts.map +0 -1
  1675. package/out/tools/overlay-manifest.js +0 -90
  1676. package/out/tools/overlay-manifest.js.map +0 -1
  1677. package/out/tools/slice-kryptonite.d.ts +0 -32
  1678. package/out/tools/slice-kryptonite.d.ts.map +0 -1
  1679. package/out/tools/slice-kryptonite.js +0 -99
  1680. package/out/tools/slice-kryptonite.js.map +0 -1
  1681. package/out/tools/slice-translit.d.ts +0 -51
  1682. package/out/tools/slice-translit.d.ts.map +0 -1
  1683. package/out/tools/slice-translit.js +0 -166
  1684. package/out/tools/slice-translit.js.map +0 -1
  1685. package/out/tools/sub-venue/harvest.d.ts +0 -100
  1686. package/out/tools/sub-venue/harvest.d.ts.map +0 -1
  1687. package/out/tools/sub-venue/harvest.js +0 -168
  1688. package/out/tools/sub-venue/harvest.js.map +0 -1
  1689. package/out/tools/sub-venue/head-nouns.d.ts +0 -50
  1690. package/out/tools/sub-venue/head-nouns.d.ts.map +0 -1
  1691. package/out/tools/sub-venue/head-nouns.js +0 -213
  1692. package/out/tools/sub-venue/head-nouns.js.map +0 -1
  1693. package/out/tools/sub-venue/surfaces.d.ts +0 -45
  1694. package/out/tools/sub-venue/surfaces.d.ts.map +0 -1
  1695. package/out/tools/sub-venue/surfaces.js +0 -77
  1696. package/out/tools/sub-venue/surfaces.js.map +0 -1
  1697. package/out/tools/sub-venue/table.d.ts +0 -229
  1698. package/out/tools/sub-venue/table.d.ts.map +0 -1
  1699. package/out/tools/sub-venue/table.js +0 -108
  1700. package/out/tools/sub-venue/table.js.map +0 -1
  1701. package/out/tools/sub-venue/wikidata.d.ts +0 -26
  1702. package/out/tools/sub-venue/wikidata.d.ts.map +0 -1
  1703. package/out/tools/sub-venue/wikidata.js +0 -62
  1704. package/out/tools/sub-venue/wikidata.js.map +0 -1
  1705. package/out/tools/sub-venue-lexicon.d.ts +0 -156
  1706. package/out/tools/sub-venue-lexicon.d.ts.map +0 -1
  1707. package/out/tools/sub-venue-lexicon.js +0 -283
  1708. package/out/tools/sub-venue-lexicon.js.map +0 -1
  1709. package/out/tools/sub-venue-promotions.d.ts +0 -94
  1710. package/out/tools/sub-venue-promotions.d.ts.map +0 -1
  1711. package/out/tools/sub-venue-promotions.js +0 -266
  1712. package/out/tools/sub-venue-promotions.js.map +0 -1
  1713. package/out/utils/index.d.ts +0 -14
  1714. package/out/utils/index.d.ts.map +0 -1
  1715. package/out/utils/index.js +0 -14
  1716. package/out/utils/index.js.map +0 -1
  1717. package/out/utils/parquet.d.ts +0 -178
  1718. package/out/utils/parquet.d.ts.map +0 -1
  1719. package/out/utils/parquet.js +0 -371
  1720. package/out/utils/parquet.js.map +0 -1
  1721. package/out/utils/slice-stats.d.ts +0 -52
  1722. package/out/utils/slice-stats.d.ts.map +0 -1
  1723. package/out/utils/slice-stats.js +0 -58
  1724. package/out/utils/slice-stats.js.map +0 -1
@@ -0,0 +1,101 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ *
6
+ * Token/label co-occurrence accounting shared by the corpus-stats builder (`tools/corpus-stats.ts`)
7
+ * and the recipe-output linter (`tools/lint/recipe-output/index.ts`). The two sides must agree on the bigram key
8
+ * format: the linter looks its recipe output's bigrams up in the stats file's `bigrams` table. A key built with
9
+ * a different separator never matches — which silently blanks the bigram-collision check.
10
+ */
11
+
12
+ import { openParquetRowStream } from "#parquet/streams"
13
+
14
+ /**
15
+ * Separator inside a bigram key (`tok1␟tok2`) and a label-bigram value (`lab1␟lab2`):
16
+ * U+001F unit separator, a character no address token contains.
17
+ *
18
+ * Render a key for humans with `key.split(COOCCURRENCE_KEY_SEP).join(" ")`.
19
+ */
20
+ export const COOCCURRENCE_KEY_SEP = ""
21
+
22
+ /**
23
+ * Nested tally: outer key → (inner key → count).
24
+ *
25
+ * Token → label counts, or bigram key → label-bigram counts.
26
+ */
27
+ type CooccurrenceTable = Map<string, Map<string, number>>
28
+
29
+ /**
30
+ * The token + bigram co-occurrence tables one pass over labeled rows accumulates.
31
+ */
32
+ export interface CooccurrenceStats {
33
+ tokens: CooccurrenceTable
34
+ bigrams: CooccurrenceTable
35
+ }
36
+
37
+ /**
38
+ * An empty pair of tables for {@link accumulateCooccurrences}.
39
+ */
40
+ export function createCooccurrenceStats(): CooccurrenceStats {
41
+ return { tokens: new Map(), bigrams: new Map() }
42
+ }
43
+
44
+ function bump(table: CooccurrenceTable, key: string, sub: string): void {
45
+ let counter = table.get(key)
46
+
47
+ if (!counter) {
48
+ counter = new Map()
49
+ table.set(key, counter)
50
+ }
51
+
52
+ counter.set(sub, (counter.get(sub) ?? 0) + 1)
53
+ }
54
+
55
+ /**
56
+ * Fold one row's parallel `tokens`/`labels` into the tables.
57
+ *
58
+ * The caller has already checked the arrays are the same length.
59
+ */
60
+ export function accumulateCooccurrences(
61
+ stats: CooccurrenceStats,
62
+ tokens: readonly string[],
63
+ labels: readonly string[]
64
+ ): void {
65
+ for (let i = 0; i < tokens.length; i++) {
66
+ const tk = tokens[i]!
67
+ const lb = labels[i]!
68
+
69
+ bump(stats.tokens, tk, lb)
70
+
71
+ if (i + 1 < tokens.length) {
72
+ bump(stats.bigrams, tk + COOCCURRENCE_KEY_SEP + tokens[i + 1]!, lb + COOCCURRENCE_KEY_SEP + labels[i + 1]!)
73
+ }
74
+ }
75
+ }
76
+
77
+ /**
78
+ * A parquet row projected to the two columns the co-occurrence pass reads.
79
+ */
80
+ export interface TokenLabelRow {
81
+ tokens: string[]
82
+ labels: string[]
83
+ [key: string]: unknown
84
+ }
85
+
86
+ /**
87
+ * Stream a parquet file's `tokens`/`labels` columns.
88
+ *
89
+ * Projected rather than read whole: parquet is columnar, so the unused columns are never touched.
90
+ * `limit` stops the iteration rather than filtering afterwards, so a capped
91
+ * run reads only the row groups it needs.
92
+ */
93
+ export async function* streamTokenLabelRows(parquetPath: string, limit?: number): AsyncIterable<TokenLabelRow> {
94
+ let emitted = 0
95
+
96
+ for await (const row of openParquetRowStream<TokenLabelRow>(parquetPath, { columns: ["tokens", "labels"], limit })) {
97
+ yield row
98
+
99
+ emitted++
100
+ }
101
+ }
@@ -3,36 +3,25 @@
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
- * Golden eval-set validator (Phase 1 task #9 in the plan).
7
- *
8
- * The golden set is hand-labeled ground truth for the neural classifier. Each entry must carry
9
- * components whose surface forms actually occur in `raw` — otherwise the entry will silently rot
10
- * the eval signal. This module:
11
- *
12
- * - Defines `GoldenEntry` (schema check).
13
- * - Loads `.jsonl` files (one entry per line).
14
- * - Validates every entry: schema shape, ComponentTag membership, reachability of each component in
15
- * `raw` via the same `reconcileComponents` helper alignment uses.
16
- * - Returns a structured report of per-entry errors so the CLI / CI surface can act on it.
17
- *
18
- * The 1000-entry target (500 US + 500 FR) is a human task. This module catches the regressions that
19
- * creep in over time as new entries land.
6
+ * Validates the hand-labeled golden eval set, where every labeled component must occur in `raw`.
20
7
  */
21
8
 
22
- import { readDirectory } from "@mailwoman/core/fs/readers"
23
- import { parseJSONStrict } from "@mailwoman/core/json"
24
- import { COMPONENT_TAGS, type ComponentTag } from "@mailwoman/core/types"
25
- import { reconcileComponents } from "@mailwoman/formatter"
26
- import { join } from "path-ts"
9
+ import { componentsPresentIn } from "@mailwoman/codex/address/format"
10
+ import { COMPONENT_TAGS, type ComponentTag } from "@mailwoman/codex/component"
11
+ import { isAlpha2CodeShape } from "@mailwoman/codex/country"
12
+ import { parseJSONStrict, stringifyJSON } from "@mailwoman/core/json"
13
+ import { PathBuilder, type PathBuilderLike } from "path-ts"
27
14
  import { TextSpliterator } from "spliterator"
15
+ import { Globerator } from "spliterator/node/fs"
28
16
 
29
17
  const TAG_SET = new Set<string>(COMPONENT_TAGS as readonly string[])
30
18
 
31
19
  /**
32
20
  * A golden-set candidate row, as `golden-expand` writes and `golden-promote` reads.
33
21
  *
34
- * `source` names the producer (`expand-golden:<provider>`); the seed/provenance fields trace the candidate back to the
35
- * corpus row and LLM call that produced it. A committed golden entry is the {@link GoldenEntry} narrowing.
22
+ * `source` identifies the producer, such as `expand-golden:<provider>`.
23
+ * The seed and provenance fields trace the candidate to its corpus row and LLM call.
24
+ * {@link GoldenEntry} narrows this type to a committed entry.
36
25
  */
37
26
  export interface GoldenCandidateEntry {
38
27
  raw: string
@@ -54,7 +43,7 @@ export interface GoldenEntry extends GoldenCandidateEntry {
54
43
  }
55
44
 
56
45
  /**
57
- * Per-entry validation failure.
46
+ * A validation failure for one line of a golden file.
58
47
  */
59
48
  export interface GoldenIssue {
60
49
  file: string
@@ -63,7 +52,7 @@ export interface GoldenIssue {
63
52
  }
64
53
 
65
54
  /**
66
- * Aggregate report from `validateGoldenDir`.
55
+ * The aggregate report that `validateGoldenDir` returns.
67
56
  */
68
57
  export interface GoldenReport {
69
58
  entries: number
@@ -72,23 +61,25 @@ export interface GoldenReport {
72
61
  }
73
62
 
74
63
  /**
75
- * Parse a single JSONL line into a `GoldenEntry`. Throws on schema violations.
64
+ * Parses one JSONL line into a `GoldenEntry`.
65
+ *
66
+ * `validateGoldenFile` records the thrown message against the line number, so this parse must stay strict.
67
+ *
68
+ * @throws On schema violations.
76
69
  */
77
70
  export function parseGoldenLine(line: string): GoldenEntry {
78
- // The throw IS the result: `validateGoldenFile` catches it and records the message against the line
79
- // number, so a tolerant parse would report a corrupt row as valid.
80
71
  const obj = parseJSONStrict<Partial<GoldenEntry> & Record<string, unknown>>(line)
81
72
 
82
73
  if (typeof obj.raw !== "string" || !obj.raw.length) {
83
74
  throw new Error("missing/empty raw")
84
75
  }
85
76
 
86
- if (typeof obj.country !== "string" || !/^[A-Z]{2}$/u.test(obj.country)) {
87
- throw new Error(`country must be ISO 3166-1 alpha-2 (got ${JSON.stringify(obj.country)})`)
77
+ if (!isAlpha2CodeShape(obj.country)) {
78
+ throw new Error(`country must be ISO 3166-1 alpha-2 (got ${stringifyJSON(obj.country)})`)
88
79
  }
89
80
 
90
81
  if (obj.source !== "golden") {
91
- throw new Error(`source must be "golden" (got ${JSON.stringify(obj.source)})`)
82
+ throw new Error(`source must be "golden" (got ${stringifyJSON(obj.source)})`)
92
83
  }
93
84
 
94
85
  const components = (obj.components ?? {}) as Record<string, unknown>
@@ -111,14 +102,17 @@ export function parseGoldenLine(line: string): GoldenEntry {
111
102
  }
112
103
 
113
104
  /**
114
- * Check that every component in `entry` appears in `entry.raw` (reconciliation-equivalent).
105
+ * Returns the tags in `entry` whose values do not occur in `entry.raw`.
106
+ *
107
+ * A golden `raw` is hand-written, so this check uses containment instead of
108
+ * reconciling against a rendered layout.
115
109
  */
116
110
  export function unreachableComponents(entry: GoldenEntry): ComponentTag[] {
117
- const reconciled = reconcileComponents(entry.components, entry.raw)
111
+ const present = componentsPresentIn(entry.components, entry.raw)
118
112
  const missing: ComponentTag[] = []
119
113
 
120
114
  for (const tag of Object.keys(entry.components) as ComponentTag[]) {
121
- if (!(tag in reconciled)) {
115
+ if (!(tag in present)) {
122
116
  missing.push(tag)
123
117
  }
124
118
  }
@@ -127,21 +121,19 @@ export function unreachableComponents(entry: GoldenEntry): ComponentTag[] {
127
121
  }
128
122
 
129
123
  /**
130
- * Validate one `.jsonl` file end-to-end, returning a list of issues.
124
+ * Validates one `.jsonl` file and returns its issues.
131
125
  *
132
- * Parses line by line over `TextSpliterator` rather than `JSONSpliterator`: every issue this returns carries the LINE
133
- * NUMBER it was found on, and a malformed line has to be REPORTED rather than thrown. `JSONSpliterator` parses each row
134
- * for you and throws on the first bad one — correct for consumers that want the rows, wrong for the validator whose
135
- * whole job is locating the bad ones.
126
+ * This reads lines with `TextSpliterator` because `JSONSpliterator` throws on the first malformed row.
127
+ * The validator must instead report every bad row with its line number.
136
128
  */
137
- export async function validateGoldenFile(path: string): Promise<GoldenIssue[]> {
129
+ export async function validateGoldenFile(source: PathBuilderLike): Promise<GoldenIssue[]> {
130
+ const path = source.toString()
138
131
  const issues: GoldenIssue[] = []
139
- // Counted over EVERY row including blanks, so the number matches what an editor shows.
132
+ // Blank lines count too, so the number matches the line an editor shows.
140
133
  let lineNumber = 0
141
134
 
142
- for await (const raw of TextSpliterator.fromAsync(path, { skipEmpty: false })) {
135
+ for await (const line of TextSpliterator.fromAsync(path, { skipEmpty: false })) {
143
136
  lineNumber++
144
- const line = raw.trim()
145
137
 
146
138
  if (!line) continue
147
139
  const i = lineNumber - 1
@@ -166,23 +158,20 @@ export async function validateGoldenFile(path: string): Promise<GoldenIssue[]> {
166
158
  }
167
159
 
168
160
  /**
169
- * Validate every `.jsonl` in a golden directory.
161
+ * Validates every `.jsonl` file directly inside a golden directory.
170
162
  */
171
- export async function validateGoldenDir(dir: string): Promise<GoldenReport> {
172
- const files = (await readDirectory(dir)).filter((n) => n.endsWith(".jsonl")).toSorted()
163
+ export async function validateGoldenDir(dir: PathBuilderLike): Promise<GoldenReport> {
164
+ const root = PathBuilder.from(dir)
165
+ const files = await Globerator.files("jsonl", { cwd: root, absolute: false, recursive: false }).toSorted()
173
166
  const issues: GoldenIssue[] = []
174
167
  let entries = 0
175
168
 
176
169
  for (const name of files) {
177
- const fullPath = join(dir, name)
170
+ const fullPath = root(name)
178
171
  const fileIssues = await validateGoldenFile(fullPath)
179
172
  issues.push(...fileIssues)
180
173
 
181
- for await (const line of TextSpliterator.fromAsync(fullPath)) {
182
- if (line.trim()) {
183
- entries++
184
- }
185
- }
174
+ entries += await TextSpliterator.countAsync(fullPath)
186
175
  }
187
176
 
188
177
  return { entries, files: files.length, issues }
@@ -3,48 +3,260 @@
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
- * Corpus licensing — the single source of truth for the training-data license policy (#26).
6
+ * Corpus licensing — the training-data license policy, read from a row's obligations rather than from
7
+ * the shape of its license string.
7
8
  *
8
- * Posture (operator, 2026-06-19): **exclusion is a deliberate act, not a silent default.** The
9
- * build INCLUDES every row an adapter yields (stamping its `license`); a build that needs a clean
10
- * license set — e.g. the proprietary `@mailwoman/neural-weights-*` weights, which must not
11
- * inherit a share-alike obligation — PURPOSELY excludes kinds via `buildCorpus({ excludeLicenses
12
- * })` (CLI `--exclude-licenses` / `--exclude-share-alike`). Nothing is dropped on a license
13
- * string unless the operator named it. This avoids the trap of silently dropping allowed data
14
- * mis-stamped with a conservative license (e.g. BAN, which is dual-licensed Licence Ouverte OR
15
- * ODbL — we elect Licence Ouverte; a default-deny on the old `ODbL` stamp would have wrongly
16
- * dropped 48M allowed rows).
9
+ * Exclusion is a deliberate act rather than a silent default: the build includes every row an adapter
10
+ * yields (stamping its `license`), and a build that needs a license set carrying no share-alike
11
+ * obligation asks for {@linkcode LicensePolicy.ShareAlikeFree}, so no source is dropped unless the
12
+ * operator selected the policy.
17
13
  *
18
- * Tier reference (#26): A = PD/CC0 (allowed); B = CC-BY / Licence Ouverte (allowed WITH attribution
19
- * — the model card must carry it); C = share-alike (ODbL, CC-BY-SA, CC-SA) — exclude for a
20
- * proprietary-weights build via `--exclude-share-alike`.
14
+ * The refusal reads `readLicenseRecord`, which resolves a value to an SPDX expression and looks up
15
+ * that expression's obligations. An anchored prefix match over the raw column cannot do this. Measured
16
+ * over `v0.7.0-de-holdout` on 2026-09-26, the column holds 71 distinct values across 703,835,753 rows,
17
+ * of which 4 are SPDX identifiers and 66 are prose. A row whose license reads "OpenStreetMap venue +
18
+ * sub-venue names (ODbL, © OpenStreetMap contributors) …" is share-alike-derived and starts with
19
+ * neither `ODbL` nor `CC-BY-SA`, so `/^ODbL/` admitted it.
20
+ *
21
+ * Three refusal classes exist because they are different claims. A value that resolves to an
22
+ * expression carrying share-alike states the obligation. A value whose prose mentions a share-alike
23
+ * license while resolving to no expression is share-alike-derived without stating its own grant. A
24
+ * value that resolves to no expression has unknown obligations. Unknown obligations differ from an empty
25
+ * obligation set. Of these rows, 628,203,119 contain prose this repository writes about its own renderings. The
26
+ * third class is therefore reported rather than refused under {@linkcode LicensePolicy.ShareAlikeFree},
27
+ * and {@linkcode LicensePolicy.ResolvedOnly} refuses it for a caller that needs every grant stated.
28
+ */
29
+
30
+ import { carriesShareAlike, mentionsShareAlike, readLicenseRecord } from "@mailwoman/core/license/record"
31
+ import { extractDelimited } from "@mailwoman/core/scripting/arguments"
32
+ import { escapeRegExp } from "@mailwoman/core/strings/regexp"
33
+
34
+ /**
35
+ * Which rows a corpus build admits on the evidence of their license values.
36
+ */
37
+ export const LicensePolicy = {
38
+ /**
39
+ * Admit every row an adapter yields, whatever its license value states.
40
+ * The policy a measurement runs under.
41
+ */
42
+ All: "all",
43
+ /**
44
+ * Refuse a row whose license imposes a share-alike obligation.
45
+ *
46
+ * Also refuse a row whose license text mentions a share-alike license while stating no grant of its own.
47
+ *
48
+ * A row whose license resolves to no expression and mentions no share-alike license is admitted
49
+ * and counted, because its obligations are unknown rather than known to include share-alike.
50
+ */
51
+ ShareAlikeFree: "share-alike-free",
52
+ /**
53
+ * Apply all refusals from {@linkcode LicensePolicy.ShareAlikeFree}.
54
+ * Also refuse a row whose license resolves to no expression.
55
+ *
56
+ * Measured over `v0.7.0-de-holdout`, this refuses 628,203,119 of 703,835,753 rows,
57
+ * so a caller asking for it is asking for the subset whose grant is stated as an identifier.
58
+ */
59
+ ResolvedOnly: "resolved-only",
60
+ } as const
61
+
62
+ /**
63
+ * One of the {@linkcode LicensePolicy} values.
21
64
  */
65
+ export type LicensePolicy = (typeof LicensePolicy)[keyof typeof LicensePolicy]
22
66
 
23
67
  /**
24
- * Licenses that require share-alike / create a copyleft obligation on derived works (Tier C). The
25
- * `--exclude-share-alike` convenience expands to this; `allowShareAlike: false` adapters also use it.
68
+ * Why a row's license value kept it out of the corpus, counted separately per class
69
+ * because the classes rest on different evidence.
26
70
  */
27
- export const SHARE_ALIKE_PATTERN = /^ODbL|^Open Database License|^CC-BY-SA|^CC-SA/i
71
+ export const LicenseRefusalKind = {
72
+ /**
73
+ * The operator supplied this license prefix in `--exclude-licenses`.
74
+ */
75
+ OperatorExcluded: "operator-excluded",
76
+ /**
77
+ * The value resolves to an expression whose recorded obligations include share-alike.
78
+ */
79
+ ShareAlikeCarried: "share-alike-carried",
80
+ /**
81
+ * The value's text mentions a share-alike license while resolving to no expression of its own.
82
+ */
83
+ ShareAlikeMentioned: "share-alike-mentioned",
84
+ /**
85
+ * The value resolves to no expression, so its obligations are unknown.
86
+ */
87
+ Unresolved: "unresolved",
88
+ } as const
28
89
 
29
90
  /**
30
- * Compile a `--exclude-licenses` spec (comma-separated, e.g. `"ODbL,CC-BY-SA"`) into anchored, case-insensitive prefix
31
- * patterns. Each entry matches a license string that STARTS with it, so `CC-BY-SA` catches `CC-BY-SA-3.0`,
32
- * `CC-BY-SA-4.0`, etc. Regex metacharacters are escaped — the spec is a literal license prefix, not a user-supplied
33
- * regex.
91
+ * One of the {@linkcode LicenseRefusalKind} values.
92
+ */
93
+ export type LicenseRefusalKind = (typeof LicenseRefusalKind)[keyof typeof LicenseRefusalKind]
94
+
95
+ /**
96
+ * What a license value means for a build, decided once per distinct value.
97
+ */
98
+ export interface LicenseVerdict {
99
+ /**
100
+ * Why the row was refused, or `null` when the policy admits it.
101
+ */
102
+ refusal: LicenseRefusalKind | null
103
+ /**
104
+ * Whether the value resolves to an expression whose obligations are recorded.
105
+ *
106
+ * An admitted row reading `false` here entered with unknown obligations.
107
+ */
108
+ resolved: boolean
109
+ /**
110
+ * Whether the value's text mentions a share-alike license, whether or not it was refused for it.
111
+ */
112
+ mentionsShareAlike: boolean
113
+ }
114
+
115
+ /**
116
+ * Compile an `--exclude-licenses` spec (comma-separated, e.g. `"ODbL,CC-BY-SA"`) into anchored,
117
+ * case-insensitive prefix patterns, so `CC-BY-SA` catches `CC-BY-SA-3.0`.
118
+ *
119
+ * The spec is a literal license prefix the operator typed.
120
+ * Regex metacharacters are escaped.
121
+ *
122
+ * This is the one place a prefix match is the right reading, because the operator
123
+ * is naming a spelling rather than asking about an obligation.
34
124
  */
35
125
  export function compileLicenseExcludes(spec: string): RegExp[] {
36
- return spec
37
- .split(",")
38
- .map((s) => s.trim())
39
- .filter((entry) => entry !== "")
40
- .map((s) => new RegExp("^" + s.replaceAll(/[.*+?^${}()|[\]\\]/g, "\\$&"), "i"))
126
+ return extractDelimited(spec).map((s) => new RegExp("^" + escapeRegExp(s), "i"))
41
127
  }
42
128
 
43
129
  /**
44
- * True iff `license` matches any of the exclude `patterns` (empty patterns → never excluded).
130
+ * True when `license` matches any of the operator's exclude `patterns`; empty patterns never exclude.
45
131
  */
46
132
  export function licenseExcluded(license: string | undefined, patterns: readonly RegExp[]): boolean {
47
133
  const l = license ?? ""
48
134
 
49
135
  return patterns.some((p) => p.test(l))
50
136
  }
137
+
138
+ /**
139
+ * Reads one license value against a policy.
140
+ *
141
+ * This resolves an expression and runs the mention patterns on every call.
142
+ * A corpus build asks about hundreds of millions of rows holding tens of distinct values,
143
+ * so a row loop calls {@linkcode createLicenseVerdictCache} instead.
144
+ */
145
+ export function licenseVerdict(
146
+ license: string | undefined,
147
+ policy: LicensePolicy,
148
+ excluded: readonly RegExp[] = []
149
+ ): LicenseVerdict {
150
+ const record = readLicenseRecord(license)
151
+ const resolved = record.expression !== null
152
+ const mentions = mentionsShareAlike(record)
153
+
154
+ const verdict = (refusal: LicenseRefusalKind | null): LicenseVerdict => ({
155
+ refusal,
156
+ resolved,
157
+ mentionsShareAlike: mentions || carriesShareAlike(record),
158
+ })
159
+
160
+ if (licenseExcluded(license, excluded)) return verdict(LicenseRefusalKind.OperatorExcluded)
161
+
162
+ if (policy === LicensePolicy.All) return verdict(null)
163
+
164
+ if (carriesShareAlike(record)) return verdict(LicenseRefusalKind.ShareAlikeCarried)
165
+
166
+ if (mentions) return verdict(LicenseRefusalKind.ShareAlikeMentioned)
167
+
168
+ if (!resolved && policy === LicensePolicy.ResolvedOnly) return verdict(LicenseRefusalKind.Unresolved)
169
+
170
+ return verdict(null)
171
+ }
172
+
173
+ /**
174
+ * One license value in a built corpus that a share-alike-free reading refuses, with its row count.
175
+ */
176
+ export interface ShareAlikeFinding {
177
+ /**
178
+ * The value exactly as the corpus stores it.
179
+ */
180
+ license: string
181
+ /**
182
+ * Rows the built manifest counts under this value.
183
+ */
184
+ rows: number
185
+ kind: LicenseRefusalKind
186
+ }
187
+
188
+ /**
189
+ * Every license value in a built corpus's license set that imposes or mentions share-alike.
190
+ *
191
+ * Takes the `licenses` map recorded by `BuildCorpusManifest`.
192
+ * The map counts the rows adapters yielded.
193
+ *
194
+ * A caller about to move or publish a corpus reads this rather than its own list of source ids,
195
+ * because the obligation is a property of the license value on the row.
196
+ *
197
+ * Ordered by row count, most rows first.
198
+ */
199
+ export function shareAlikeFindings(licenses: Readonly<Record<string, number>>): ShareAlikeFinding[] {
200
+ const findings: ShareAlikeFinding[] = []
201
+
202
+ for (const [license, rows] of Object.entries(licenses)) {
203
+ const { refusal } = licenseVerdict(license, LicensePolicy.ShareAlikeFree)
204
+
205
+ if (refusal) {
206
+ findings.push({ license, rows, kind: refusal })
207
+ }
208
+ }
209
+
210
+ return findings.toSorted((a, b) => b.rows - a.rows)
211
+ }
212
+
213
+ /**
214
+ * A license reading memoized per distinct raw value, for a loop over corpus rows.
215
+ */
216
+ export interface LicenseVerdictCache {
217
+ /**
218
+ * The verdict for this value under the policy this cache was built with.
219
+ */
220
+ read(license: string | undefined): LicenseVerdict
221
+ /**
222
+ * Every distinct value refused so far, with the class it was refused under,
223
+ * so a build that dropped rows reports which values caused each drop.
224
+ */
225
+ refusedValues(): Map<string, LicenseRefusalKind>
226
+ }
227
+
228
+ /**
229
+ * Builds a cache that reads each distinct license value once.
230
+ *
231
+ * The corpus holds tens of distinct values over hundreds of millions of rows,
232
+ * so the memo turns one expression resolution per row into one per value.
233
+ */
234
+ export function createLicenseVerdictCache(
235
+ policy: LicensePolicy,
236
+ excluded: readonly RegExp[] = []
237
+ ): LicenseVerdictCache {
238
+ const verdicts = new Map<string, LicenseVerdict>()
239
+ const refused = new Map<string, LicenseRefusalKind>()
240
+
241
+ return {
242
+ read(license) {
243
+ const key = license ?? ""
244
+ const cached = verdicts.get(key)
245
+
246
+ if (cached) return cached
247
+
248
+ const verdict = licenseVerdict(license, policy, excluded)
249
+
250
+ verdicts.set(key, verdict)
251
+
252
+ if (verdict.refusal) {
253
+ refused.set(key, verdict.refusal)
254
+ }
255
+
256
+ return verdict
257
+ },
258
+ refusedValues() {
259
+ return new Map(refused)
260
+ },
261
+ }
262
+ }