@mailwoman/corpus 9.0.0 → 9.2.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 (524) hide show
  1. package/README.md +3 -3
  2. package/data/PROVENANCE.md +227 -0
  3. package/data/reviewed-ve-postcode-tuples.json +74 -0
  4. package/data/sub-venue-lexicon.json +18269 -0
  5. package/out/src/adapters/ban/adapter.d.ts +1 -1
  6. package/out/src/adapters/ban/adapter.d.ts.map +1 -1
  7. package/out/src/adapters/ban/adapter.js +5 -4
  8. package/out/src/adapters/ban/adapter.js.map +1 -1
  9. package/out/src/adapters/fcc-bdc/adapter.d.ts +1 -1
  10. package/out/src/adapters/fcc-bdc/adapter.d.ts.map +1 -1
  11. package/out/src/adapters/fcc-bdc/adapter.js +3 -3
  12. package/out/src/adapters/fcc-bdc/adapter.js.map +1 -1
  13. package/out/src/adapters/geonames/adapter.d.ts +1 -1
  14. package/out/src/adapters/geonames/adapter.d.ts.map +1 -1
  15. package/out/src/adapters/geonames/adapter.js +2 -2
  16. package/out/src/adapters/geonames/adapter.js.map +1 -1
  17. package/out/src/adapters/geonames-postal/adapter.d.ts +1 -1
  18. package/out/src/adapters/geonames-postal/adapter.d.ts.map +1 -1
  19. package/out/src/adapters/geonames-postal/adapter.js +3 -3
  20. package/out/src/adapters/geonames-postal/adapter.js.map +1 -1
  21. package/out/src/adapters/gnaf/adapter.d.ts +1 -1
  22. package/out/src/adapters/gnaf/adapter.d.ts.map +1 -1
  23. package/out/src/adapters/gnaf/adapter.js +2 -2
  24. package/out/src/adapters/gnaf/adapter.js.map +1 -1
  25. package/out/src/adapters/gnaf/assemble.js +1 -1
  26. package/out/src/adapters/gnaf/assemble.js.map +1 -1
  27. package/out/src/adapters/index.d.ts +1 -1
  28. package/out/src/adapters/index.d.ts.map +1 -1
  29. package/out/src/adapters/index.js +1 -1
  30. package/out/src/adapters/index.js.map +1 -1
  31. package/out/src/adapters/openaddresses/adapter.d.ts +1 -1
  32. package/out/src/adapters/openaddresses/adapter.d.ts.map +1 -1
  33. package/out/src/adapters/openaddresses/adapter.js +3 -3
  34. package/out/src/adapters/openaddresses/adapter.js.map +1 -1
  35. package/out/src/adapters/overture/adapter.d.ts +1 -1
  36. package/out/src/adapters/overture/adapter.d.ts.map +1 -1
  37. package/out/src/adapters/overture/adapter.js +2 -2
  38. package/out/src/adapters/overture/adapter.js.map +1 -1
  39. package/out/src/adapters/state-hi-schools/adapter.d.ts +1 -1
  40. package/out/src/adapters/state-hi-schools/adapter.d.ts.map +1 -1
  41. package/out/src/adapters/state-hi-schools/adapter.js +7 -6
  42. package/out/src/adapters/state-hi-schools/adapter.js.map +1 -1
  43. package/out/src/adapters/state-ia-contractors/adapter.d.ts +1 -1
  44. package/out/src/adapters/state-ia-contractors/adapter.d.ts.map +1 -1
  45. package/out/src/adapters/state-ia-contractors/adapter.js +12 -7
  46. package/out/src/adapters/state-ia-contractors/adapter.js.map +1 -1
  47. package/out/src/adapters/state-ny-notaries/adapter.d.ts +1 -1
  48. package/out/src/adapters/state-ny-notaries/adapter.d.ts.map +1 -1
  49. package/out/src/adapters/state-ny-notaries/adapter.js +12 -18
  50. package/out/src/adapters/state-ny-notaries/adapter.js.map +1 -1
  51. package/out/src/adapters/state-tx-notaries/adapter.d.ts +1 -1
  52. package/out/src/adapters/state-tx-notaries/adapter.d.ts.map +1 -1
  53. package/out/src/adapters/state-tx-notaries/adapter.js +12 -7
  54. package/out/src/adapters/state-tx-notaries/adapter.js.map +1 -1
  55. package/out/src/adapters/synth-po-box/adapter.d.ts +3 -3
  56. package/out/src/adapters/synth-po-box/adapter.d.ts.map +1 -1
  57. package/out/src/adapters/synth-po-box/adapter.js +3 -3
  58. package/out/src/adapters/synth-po-box/adapter.js.map +1 -1
  59. package/out/src/adapters/tiger/adapter.d.ts +1 -1
  60. package/out/src/adapters/tiger/adapter.d.ts.map +1 -1
  61. package/out/src/adapters/tiger/adapter.js +2 -2
  62. package/out/src/adapters/tiger/adapter.js.map +1 -1
  63. package/out/src/adapters/usgov-hrsa-fqhc/adapter.d.ts +1 -1
  64. package/out/src/adapters/usgov-hrsa-fqhc/adapter.d.ts.map +1 -1
  65. package/out/src/adapters/usgov-hrsa-fqhc/adapter.js +7 -6
  66. package/out/src/adapters/usgov-hrsa-fqhc/adapter.js.map +1 -1
  67. package/out/src/adapters/usgov-imls-pls/adapter.d.ts +1 -1
  68. package/out/src/adapters/usgov-imls-pls/adapter.d.ts.map +1 -1
  69. package/out/src/adapters/usgov-imls-pls/adapter.js +11 -7
  70. package/out/src/adapters/usgov-imls-pls/adapter.js.map +1 -1
  71. package/out/src/adapters/usgov-irs-bmf/adapter.d.ts +1 -1
  72. package/out/src/adapters/usgov-irs-bmf/adapter.d.ts.map +1 -1
  73. package/out/src/adapters/usgov-irs-bmf/adapter.js +6 -5
  74. package/out/src/adapters/usgov-irs-bmf/adapter.js.map +1 -1
  75. package/out/src/adapters/usgov-nad/adapter.d.ts +1 -1
  76. package/out/src/adapters/usgov-nad/adapter.d.ts.map +1 -1
  77. package/out/src/adapters/usgov-nad/adapter.js +8 -8
  78. package/out/src/adapters/usgov-nad/adapter.js.map +1 -1
  79. package/out/src/adapters/usgov-nppes/adapter.d.ts +1 -1
  80. package/out/src/adapters/usgov-nppes/adapter.d.ts.map +1 -1
  81. package/out/src/adapters/usgov-nppes/adapter.js +10 -10
  82. package/out/src/adapters/usgov-nppes/adapter.js.map +1 -1
  83. package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.d.ts +1 -1
  84. package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.d.ts.map +1 -1
  85. package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.js +7 -6
  86. package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.js.map +1 -1
  87. package/out/src/{adapter.d.ts → adapters/utils/index.d.ts} +8 -2
  88. package/out/src/adapters/utils/index.d.ts.map +1 -0
  89. package/out/src/{adapter.js → adapters/utils/index.js} +11 -3
  90. package/out/src/adapters/utils/index.js.map +1 -0
  91. package/out/src/adapters/wof-admin-jp/adapter.d.ts +1 -1
  92. package/out/src/adapters/wof-admin-jp/adapter.d.ts.map +1 -1
  93. package/out/src/adapters/wof-admin-jp/adapter.js +5 -5
  94. package/out/src/adapters/wof-admin-jp/adapter.js.map +1 -1
  95. package/out/src/adapters/wof-admin-json/adapter.d.ts +4 -15
  96. package/out/src/adapters/wof-admin-json/adapter.d.ts.map +1 -1
  97. package/out/src/adapters/wof-admin-json/adapter.js +11 -35
  98. package/out/src/adapters/wof-admin-json/adapter.js.map +1 -1
  99. package/out/src/adapters/wof-json-rows.d.ts +32 -0
  100. package/out/src/adapters/wof-json-rows.d.ts.map +1 -0
  101. package/out/src/adapters/wof-json-rows.js +45 -0
  102. package/out/src/adapters/wof-json-rows.js.map +1 -0
  103. package/out/src/adapters/wof-postalcode-json/adapter.d.ts +4 -9
  104. package/out/src/adapters/wof-postalcode-json/adapter.d.ts.map +1 -1
  105. package/out/src/adapters/wof-postalcode-json/adapter.js +12 -37
  106. package/out/src/adapters/wof-postalcode-json/adapter.js.map +1 -1
  107. package/out/src/build.d.ts +4 -4
  108. package/out/src/build.d.ts.map +1 -1
  109. package/out/src/build.js +7 -7
  110. package/out/src/build.js.map +1 -1
  111. package/out/src/index.d.ts +3 -17
  112. package/out/src/index.d.ts.map +1 -1
  113. package/out/src/index.js +3 -17
  114. package/out/src/index.js.map +1 -1
  115. package/out/src/name-prone-us-suffixes.d.ts +12 -0
  116. package/out/src/name-prone-us-suffixes.d.ts.map +1 -0
  117. package/out/src/name-prone-us-suffixes.js +12 -0
  118. package/out/src/name-prone-us-suffixes.js.map +1 -0
  119. package/out/src/parquet-wrapper/reader.d.ts.map +1 -1
  120. package/out/src/parquet-wrapper/reader.js +5 -0
  121. package/out/src/parquet-wrapper/reader.js.map +1 -1
  122. package/out/src/runner.d.ts +2 -2
  123. package/out/src/runner.d.ts.map +1 -1
  124. package/out/src/runner.js +1 -1
  125. package/out/src/runner.js.map +1 -1
  126. package/out/src/shard-recipes/anchor-absorption.d.ts.map +1 -1
  127. package/out/src/shard-recipes/anchor-absorption.js +4 -5
  128. package/out/src/shard-recipes/anchor-absorption.js.map +1 -1
  129. package/out/src/shard-recipes/bare-country.d.ts +25 -0
  130. package/out/src/shard-recipes/bare-country.d.ts.map +1 -0
  131. package/out/src/shard-recipes/bare-country.js +87 -0
  132. package/out/src/shard-recipes/bare-country.js.map +1 -0
  133. package/out/src/shard-recipes/boundary-stress.d.ts.map +1 -1
  134. package/out/src/shard-recipes/boundary-stress.js +2 -2
  135. package/out/src/shard-recipes/boundary-stress.js.map +1 -1
  136. package/out/src/shard-recipes/country-balanced.d.ts.map +1 -1
  137. package/out/src/shard-recipes/country-balanced.js +14 -21
  138. package/out/src/shard-recipes/country-balanced.js.map +1 -1
  139. package/out/src/shard-recipes/cz-pcfirst-preposition.d.ts.map +1 -1
  140. package/out/src/shard-recipes/cz-pcfirst-preposition.js +28 -10
  141. package/out/src/shard-recipes/cz-pcfirst-preposition.js.map +1 -1
  142. package/out/src/shard-recipes/fr-admin-split.d.ts.map +1 -1
  143. package/out/src/shard-recipes/fr-admin-split.js +4 -3
  144. package/out/src/shard-recipes/fr-admin-split.js.map +1 -1
  145. package/out/src/shard-recipes/fr-bare-street.d.ts.map +1 -1
  146. package/out/src/shard-recipes/fr-bare-street.js +72 -11
  147. package/out/src/shard-recipes/fr-bare-street.js.map +1 -1
  148. package/out/src/shard-recipes/fr-lieudit.d.ts.map +1 -1
  149. package/out/src/shard-recipes/fr-lieudit.js +4 -3
  150. package/out/src/shard-recipes/fr-lieudit.js.map +1 -1
  151. package/out/src/shard-recipes/fr-order.d.ts.map +1 -1
  152. package/out/src/shard-recipes/fr-order.js +11 -20
  153. package/out/src/shard-recipes/fr-order.js.map +1 -1
  154. package/out/src/shard-recipes/german.d.ts.map +1 -1
  155. package/out/src/shard-recipes/german.js +8 -14
  156. package/out/src/shard-recipes/german.js.map +1 -1
  157. package/out/src/shard-recipes/house-venue.d.ts.map +1 -1
  158. package/out/src/shard-recipes/house-venue.js +1 -1
  159. package/out/src/shard-recipes/house-venue.js.map +1 -1
  160. package/out/src/shard-recipes/index.d.ts.map +1 -1
  161. package/out/src/shard-recipes/index.js +8 -1
  162. package/out/src/shard-recipes/index.js.map +1 -1
  163. package/out/src/shard-recipes/intersection.d.ts.map +1 -1
  164. package/out/src/shard-recipes/intersection.js +7 -13
  165. package/out/src/shard-recipes/intersection.js.map +1 -1
  166. package/out/src/shard-recipes/locale.d.ts +5 -5
  167. package/out/src/shard-recipes/locale.d.ts.map +1 -1
  168. package/out/src/shard-recipes/locale.js +13 -20
  169. package/out/src/shard-recipes/locale.js.map +1 -1
  170. package/out/src/shard-recipes/no-street.d.ts.map +1 -1
  171. package/out/src/shard-recipes/no-street.js +1 -1
  172. package/out/src/shard-recipes/no-street.js.map +1 -1
  173. package/out/src/shard-recipes/po-box-cedex.d.ts.map +1 -1
  174. package/out/src/shard-recipes/po-box-cedex.js +60 -43
  175. package/out/src/shard-recipes/po-box-cedex.js.map +1 -1
  176. package/out/src/shard-recipes/po-box.d.ts.map +1 -1
  177. package/out/src/shard-recipes/po-box.js +1 -1
  178. package/out/src/shard-recipes/po-box.js.map +1 -1
  179. package/out/src/shard-recipes/reviewed-postcode-tail.d.ts +47 -0
  180. package/out/src/shard-recipes/reviewed-postcode-tail.d.ts.map +1 -0
  181. package/out/src/shard-recipes/reviewed-postcode-tail.js +125 -0
  182. package/out/src/shard-recipes/reviewed-postcode-tail.js.map +1 -0
  183. package/out/src/shard-recipes/scaffold.d.ts +51 -23
  184. package/out/src/shard-recipes/scaffold.d.ts.map +1 -1
  185. package/out/src/shard-recipes/scaffold.js +59 -23
  186. package/out/src/shard-recipes/scaffold.js.map +1 -1
  187. package/out/src/shard-recipes/street-affix.d.ts +54 -0
  188. package/out/src/shard-recipes/street-affix.d.ts.map +1 -1
  189. package/out/src/shard-recipes/street-affix.js +203 -35
  190. package/out/src/shard-recipes/street-affix.js.map +1 -1
  191. package/out/src/shard-recipes/street-bare.d.ts.map +1 -1
  192. package/out/src/shard-recipes/street-bare.js +3 -3
  193. package/out/src/shard-recipes/street-bare.js.map +1 -1
  194. package/out/src/shard-recipes/street.d.ts.map +1 -1
  195. package/out/src/shard-recipes/street.js +2 -2
  196. package/out/src/shard-recipes/street.js.map +1 -1
  197. package/out/src/shard-recipes/sub-venue-sources.d.ts +3 -6
  198. package/out/src/shard-recipes/sub-venue-sources.d.ts.map +1 -1
  199. package/out/src/shard-recipes/sub-venue-sources.js +4 -9
  200. package/out/src/shard-recipes/sub-venue-sources.js.map +1 -1
  201. package/out/src/shard-recipes/sub-venue.d.ts +2 -2
  202. package/out/src/shard-recipes/sub-venue.d.ts.map +1 -1
  203. package/out/src/shard-recipes/sub-venue.js +7 -6
  204. package/out/src/shard-recipes/sub-venue.js.map +1 -1
  205. package/out/src/shard-recipes/trailing-region.d.ts +74 -0
  206. package/out/src/shard-recipes/trailing-region.d.ts.map +1 -0
  207. package/out/src/shard-recipes/trailing-region.js +157 -0
  208. package/out/src/shard-recipes/trailing-region.js.map +1 -0
  209. package/out/src/shard-recipes/unit.d.ts.map +1 -1
  210. package/out/src/shard-recipes/unit.js +6 -12
  211. package/out/src/shard-recipes/unit.js.map +1 -1
  212. package/out/src/{synthesize-anchor-absorption.d.ts → synthesizers/anchor-absorption.d.ts} +1 -1
  213. package/out/src/synthesizers/anchor-absorption.d.ts.map +1 -0
  214. package/out/src/{synthesize-anchor-absorption.js → synthesizers/anchor-absorption.js} +1 -1
  215. package/out/src/synthesizers/anchor-absorption.js.map +1 -0
  216. package/out/src/{synthesize-boundary-stress.d.ts → synthesizers/boundary-stress.d.ts} +3 -3
  217. package/out/src/synthesizers/boundary-stress.d.ts.map +1 -0
  218. package/out/src/{synthesize-boundary-stress.js → synthesizers/boundary-stress.js} +2 -2
  219. package/out/src/synthesizers/boundary-stress.js.map +1 -0
  220. package/out/src/{synthesize-german.d.ts → synthesizers/german.d.ts} +2 -2
  221. package/out/src/synthesizers/german.d.ts.map +1 -0
  222. package/out/src/{synthesize-german.js → synthesizers/german.js} +2 -2
  223. package/out/src/synthesizers/german.js.map +1 -0
  224. package/out/src/{synthesize-house-venue.d.ts → synthesizers/house-venue.d.ts} +4 -4
  225. package/out/src/synthesizers/house-venue.d.ts.map +1 -0
  226. package/out/src/{synthesize-house-venue.js → synthesizers/house-venue.js} +20 -6
  227. package/out/src/synthesizers/house-venue.js.map +1 -0
  228. package/out/src/{synthesize-intersection.d.ts → synthesizers/intersection.d.ts} +2 -2
  229. package/out/src/synthesizers/intersection.d.ts.map +1 -0
  230. package/out/src/{synthesize-intersection.js → synthesizers/intersection.js} +1 -1
  231. package/out/src/synthesizers/intersection.js.map +1 -0
  232. package/out/src/{synthesize-no-street.d.ts → synthesizers/no-street.d.ts} +3 -3
  233. package/out/src/synthesizers/no-street.d.ts.map +1 -0
  234. package/out/src/{synthesize-no-street.js → synthesizers/no-street.js} +2 -2
  235. package/out/src/synthesizers/no-street.js.map +1 -0
  236. package/out/src/{synthesize-po-box.d.ts → synthesizers/po-box.d.ts} +2 -2
  237. package/out/src/synthesizers/po-box.d.ts.map +1 -0
  238. package/out/src/{synthesize-po-box.js → synthesizers/po-box.js} +1 -1
  239. package/out/src/synthesizers/po-box.js.map +1 -0
  240. package/out/src/{synthesize-street.d.ts → synthesizers/street.d.ts} +2 -2
  241. package/out/src/synthesizers/street.d.ts.map +1 -0
  242. package/out/src/{synthesize-street.js → synthesizers/street.js} +4 -3
  243. package/out/src/synthesizers/street.js.map +1 -0
  244. package/out/src/{synthesize.d.ts → synthesizers/utils.d.ts} +3 -3
  245. package/out/src/synthesizers/utils.d.ts.map +1 -0
  246. package/out/src/{synthesize.js → synthesizers/utils.js} +5 -4
  247. package/out/src/synthesizers/utils.js.map +1 -0
  248. package/out/src/tools/align-shard.d.ts.map +1 -1
  249. package/out/src/tools/align-shard.js +2 -2
  250. package/out/src/tools/align-shard.js.map +1 -1
  251. package/out/src/tools/fetch/ban.d.ts.map +1 -1
  252. package/out/src/tools/fetch/ban.js +2 -18
  253. package/out/src/tools/fetch/ban.js.map +1 -1
  254. package/out/src/tools/fetch/download.d.ts +12 -3
  255. package/out/src/tools/fetch/download.d.ts.map +1 -1
  256. package/out/src/tools/fetch/download.js +20 -4
  257. package/out/src/tools/fetch/download.js.map +1 -1
  258. package/out/src/tools/fetch/geonames-dump.d.ts +87 -0
  259. package/out/src/tools/fetch/geonames-dump.d.ts.map +1 -0
  260. package/out/src/tools/fetch/geonames-dump.js +178 -0
  261. package/out/src/tools/fetch/geonames-dump.js.map +1 -0
  262. package/out/src/tools/fetch/geonames-postal.d.ts +76 -0
  263. package/out/src/tools/fetch/geonames-postal.d.ts.map +1 -0
  264. package/out/src/tools/fetch/geonames-postal.js +125 -0
  265. package/out/src/tools/fetch/geonames-postal.js.map +1 -0
  266. package/out/src/tools/fetch/imls-pls.d.ts.map +1 -1
  267. package/out/src/tools/fetch/imls-pls.js +5 -17
  268. package/out/src/tools/fetch/imls-pls.js.map +1 -1
  269. package/out/src/tools/fetch/index.d.ts +11 -0
  270. package/out/src/tools/fetch/index.d.ts.map +1 -1
  271. package/out/src/tools/fetch/index.js +11 -0
  272. package/out/src/tools/fetch/index.js.map +1 -1
  273. package/out/src/tools/fetch/nad.d.ts.map +1 -1
  274. package/out/src/tools/fetch/nad.js +20 -11
  275. package/out/src/tools/fetch/nad.js.map +1 -1
  276. package/out/src/tools/fetch/nppes.d.ts.map +1 -1
  277. package/out/src/tools/fetch/nppes.js +17 -22
  278. package/out/src/tools/fetch/nppes.js.map +1 -1
  279. package/out/src/tools/fetch/openaddresses.d.ts.map +1 -1
  280. package/out/src/tools/fetch/openaddresses.js +18 -17
  281. package/out/src/tools/fetch/openaddresses.js.map +1 -1
  282. package/out/src/tools/fetch/ourairports.d.ts.map +1 -1
  283. package/out/src/tools/fetch/ourairports.js +7 -2
  284. package/out/src/tools/fetch/ourairports.js.map +1 -1
  285. package/out/src/tools/fetch/ppd.d.ts +0 -4
  286. package/out/src/tools/fetch/ppd.d.ts.map +1 -1
  287. package/out/src/tools/fetch/ppd.js +1 -1
  288. package/out/src/tools/fetch/ppd.js.map +1 -1
  289. package/out/src/tools/fetch/state-hi-schools.d.ts.map +1 -1
  290. package/out/src/tools/fetch/state-hi-schools.js +3 -19
  291. package/out/src/tools/fetch/state-hi-schools.js.map +1 -1
  292. package/out/src/tools/fetch/state-sources.d.ts +4 -0
  293. package/out/src/tools/fetch/state-sources.d.ts.map +1 -1
  294. package/out/src/tools/fetch/state-sources.js +1 -5
  295. package/out/src/tools/fetch/state-sources.js.map +1 -1
  296. package/out/src/tools/fetch/tiger-full.d.ts.map +1 -1
  297. package/out/src/tools/fetch/tiger-full.js +15 -21
  298. package/out/src/tools/fetch/tiger-full.js.map +1 -1
  299. package/out/src/tools/golden-expand.d.ts.map +1 -1
  300. package/out/src/tools/golden-expand.js +34 -25
  301. package/out/src/tools/golden-expand.js.map +1 -1
  302. package/out/src/tools/golden-relabel-street.d.ts.map +1 -1
  303. package/out/src/tools/golden-relabel-street.js +4 -77
  304. package/out/src/tools/golden-relabel-street.js.map +1 -1
  305. package/out/src/tools/index.d.ts +2 -2
  306. package/out/src/tools/index.d.ts.map +1 -1
  307. package/out/src/tools/index.js +2 -2
  308. package/out/src/tools/index.js.map +1 -1
  309. package/out/src/tools/ingest-csv.d.ts.map +1 -1
  310. package/out/src/tools/ingest-csv.js +0 -11
  311. package/out/src/tools/ingest-csv.js.map +1 -1
  312. package/out/src/tools/overlay-manifest.d.ts +4 -0
  313. package/out/src/tools/overlay-manifest.d.ts.map +1 -1
  314. package/out/src/tools/overlay-manifest.js +16 -6
  315. package/out/src/tools/overlay-manifest.js.map +1 -1
  316. package/out/src/tools/postcode-triples.d.ts +175 -0
  317. package/out/src/tools/postcode-triples.d.ts.map +1 -0
  318. package/out/src/tools/postcode-triples.js +304 -0
  319. package/out/src/tools/postcode-triples.js.map +1 -0
  320. package/out/src/tools/shard-kryptonite.d.ts.map +1 -1
  321. package/out/src/tools/shard-kryptonite.js +1 -3
  322. package/out/src/tools/shard-kryptonite.js.map +1 -1
  323. package/out/src/tools/shard-translit.d.ts.map +1 -1
  324. package/out/src/tools/shard-translit.js +4 -27
  325. package/out/src/tools/shard-translit.js.map +1 -1
  326. package/out/src/tools/sub-venue/harvest.d.ts +100 -0
  327. package/out/src/tools/sub-venue/harvest.d.ts.map +1 -0
  328. package/out/src/tools/sub-venue/harvest.js +168 -0
  329. package/out/src/tools/sub-venue/harvest.js.map +1 -0
  330. package/out/src/tools/sub-venue/head-nouns.d.ts +50 -0
  331. package/out/src/tools/sub-venue/head-nouns.d.ts.map +1 -0
  332. package/out/src/tools/sub-venue/head-nouns.js +210 -0
  333. package/out/src/tools/sub-venue/head-nouns.js.map +1 -0
  334. package/out/src/tools/sub-venue/surfaces.d.ts +45 -0
  335. package/out/src/tools/sub-venue/surfaces.d.ts.map +1 -0
  336. package/out/src/tools/sub-venue/surfaces.js +77 -0
  337. package/out/src/tools/sub-venue/surfaces.js.map +1 -0
  338. package/out/src/tools/sub-venue/table.d.ts +229 -0
  339. package/out/src/tools/sub-venue/table.d.ts.map +1 -0
  340. package/out/src/tools/sub-venue/table.js +108 -0
  341. package/out/src/tools/sub-venue/table.js.map +1 -0
  342. package/out/src/tools/sub-venue/wikidata.d.ts +26 -0
  343. package/out/src/tools/sub-venue/wikidata.d.ts.map +1 -0
  344. package/out/src/tools/sub-venue/wikidata.js +62 -0
  345. package/out/src/tools/sub-venue/wikidata.js.map +1 -0
  346. package/out/src/tools/sub-venue-lexicon.d.ts +27 -378
  347. package/out/src/tools/sub-venue-lexicon.d.ts.map +1 -1
  348. package/out/src/tools/sub-venue-lexicon.js +30 -565
  349. package/out/src/tools/sub-venue-lexicon.js.map +1 -1
  350. package/out/src/{align.d.ts → utils/align.d.ts} +1 -1
  351. package/out/src/utils/align.d.ts.map +1 -0
  352. package/out/src/utils/align.js.map +1 -0
  353. package/out/src/utils/golden.d.ts.map +1 -0
  354. package/out/src/{golden.js → utils/golden.js} +2 -2
  355. package/out/src/utils/golden.js.map +1 -0
  356. package/out/src/utils/index.d.ts +14 -0
  357. package/out/src/utils/index.d.ts.map +1 -0
  358. package/out/src/utils/index.js +14 -0
  359. package/out/src/utils/index.js.map +1 -0
  360. package/out/src/utils/license.d.ts.map +1 -0
  361. package/out/src/{license.js → utils/license.js} +1 -1
  362. package/out/src/utils/license.js.map +1 -0
  363. package/out/src/{parquet.d.ts → utils/parquet.d.ts} +24 -5
  364. package/out/src/utils/parquet.d.ts.map +1 -0
  365. package/out/src/{parquet.js → utils/parquet.js} +6 -3
  366. package/out/src/utils/parquet.js.map +1 -0
  367. package/out/src/{split.d.ts → utils/split.d.ts} +1 -1
  368. package/out/src/utils/split.d.ts.map +1 -0
  369. package/out/src/{split.js → utils/split.js} +2 -2
  370. package/out/src/utils/split.js.map +1 -0
  371. package/out/src/utils/tokenize.d.ts.map +1 -0
  372. package/out/src/utils/tokenize.js.map +1 -0
  373. package/out/src/utils/wof-json.d.ts.map +1 -0
  374. package/out/src/utils/wof-json.js.map +1 -0
  375. package/package.json +287 -21
  376. package/src/adapters/ban/adapter.ts +7 -5
  377. package/src/adapters/fcc-bdc/adapter.ts +5 -4
  378. package/src/adapters/geonames/adapter.ts +3 -3
  379. package/src/adapters/geonames-postal/adapter.ts +4 -4
  380. package/src/adapters/gnaf/adapter.ts +3 -3
  381. package/src/adapters/gnaf/assemble.ts +1 -1
  382. package/src/adapters/index.ts +3 -2
  383. package/src/adapters/openaddresses/adapter.ts +4 -4
  384. package/src/adapters/overture/adapter.ts +3 -3
  385. package/src/adapters/state-hi-schools/adapter.ts +8 -7
  386. package/src/adapters/state-ia-contractors/adapter.ts +13 -8
  387. package/src/adapters/state-ny-notaries/adapter.ts +13 -32
  388. package/src/adapters/state-tx-notaries/adapter.ts +13 -8
  389. package/src/adapters/synth-po-box/adapter.ts +4 -4
  390. package/src/adapters/tiger/adapter.ts +5 -3
  391. package/src/adapters/usgov-hrsa-fqhc/adapter.ts +8 -7
  392. package/src/adapters/usgov-imls-pls/adapter.ts +12 -8
  393. package/src/adapters/usgov-irs-bmf/adapter.ts +7 -6
  394. package/src/adapters/usgov-nad/adapter.ts +9 -9
  395. package/src/adapters/usgov-nppes/adapter.ts +13 -12
  396. package/src/adapters/usgov-samhsa-treatment-locator/adapter.ts +8 -7
  397. package/src/{adapter.ts → adapters/utils/index.ts} +15 -3
  398. package/src/adapters/wof-admin-jp/adapter.ts +9 -12
  399. package/src/adapters/wof-admin-json/adapter.ts +15 -54
  400. package/src/adapters/wof-json-rows.ts +79 -0
  401. package/src/adapters/wof-postalcode-json/adapter.ts +16 -50
  402. package/src/build.ts +8 -8
  403. package/src/index.ts +3 -17
  404. package/src/name-prone-us-suffixes.ts +12 -0
  405. package/src/parquet-wrapper/reader.ts +9 -0
  406. package/src/runner.ts +2 -2
  407. package/src/shard-recipes/anchor-absorption.ts +5 -5
  408. package/src/shard-recipes/bare-country.ts +95 -0
  409. package/src/shard-recipes/boundary-stress.ts +3 -2
  410. package/src/shard-recipes/country-balanced.ts +16 -27
  411. package/src/shard-recipes/cz-pcfirst-preposition.ts +29 -10
  412. package/src/shard-recipes/fr-admin-split.ts +6 -4
  413. package/src/shard-recipes/fr-bare-street.ts +85 -10
  414. package/src/shard-recipes/fr-lieudit.ts +6 -4
  415. package/src/shard-recipes/fr-order.ts +13 -26
  416. package/src/shard-recipes/german.ts +9 -18
  417. package/src/shard-recipes/house-venue.ts +2 -1
  418. package/src/shard-recipes/index.ts +8 -1
  419. package/src/shard-recipes/intersection.ts +9 -17
  420. package/src/shard-recipes/locale.ts +16 -24
  421. package/src/shard-recipes/no-street.ts +2 -1
  422. package/src/shard-recipes/po-box-cedex.ts +76 -58
  423. package/src/shard-recipes/po-box.ts +2 -1
  424. package/src/shard-recipes/reviewed-postcode-tail.ts +189 -0
  425. package/src/shard-recipes/scaffold.ts +99 -24
  426. package/src/shard-recipes/street-affix.ts +284 -45
  427. package/src/shard-recipes/street-bare.ts +4 -3
  428. package/src/shard-recipes/street.ts +3 -2
  429. package/src/shard-recipes/sub-venue-sources.ts +13 -23
  430. package/src/shard-recipes/sub-venue.ts +11 -9
  431. package/src/shard-recipes/trailing-region.ts +183 -0
  432. package/src/shard-recipes/unit.ts +8 -17
  433. package/src/{synthesize-boundary-stress.ts → synthesizers/boundary-stress.ts} +2 -2
  434. package/src/{synthesize-german.ts → synthesizers/german.ts} +3 -2
  435. package/src/{synthesize-house-venue.ts → synthesizers/house-venue.ts} +20 -6
  436. package/src/{synthesize-intersection.ts → synthesizers/intersection.ts} +1 -1
  437. package/src/{synthesize-no-street.ts → synthesizers/no-street.ts} +2 -2
  438. package/src/{synthesize-po-box.ts → synthesizers/po-box.ts} +1 -1
  439. package/src/{synthesize-street.ts → synthesizers/street.ts} +5 -3
  440. package/src/{synthesize.ts → synthesizers/utils.ts} +6 -4
  441. package/src/tools/align-shard.ts +3 -2
  442. package/src/tools/fetch/ban.ts +2 -22
  443. package/src/tools/fetch/download.ts +22 -4
  444. package/src/tools/fetch/geonames-dump.ts +267 -0
  445. package/src/tools/fetch/geonames-postal.ts +180 -0
  446. package/src/tools/fetch/imls-pls.ts +6 -20
  447. package/src/tools/fetch/index.ts +11 -0
  448. package/src/tools/fetch/nad.ts +21 -10
  449. package/src/tools/fetch/nppes.ts +17 -23
  450. package/src/tools/fetch/openaddresses.ts +18 -22
  451. package/src/tools/fetch/ourairports.ts +7 -2
  452. package/src/tools/fetch/ppd.ts +1 -1
  453. package/src/tools/fetch/state-hi-schools.ts +3 -23
  454. package/src/tools/fetch/state-sources.ts +1 -1
  455. package/src/tools/fetch/tiger-full.ts +17 -24
  456. package/src/tools/golden-expand.ts +44 -33
  457. package/src/tools/golden-relabel-street.ts +5 -68
  458. package/src/tools/index.ts +2 -2
  459. package/src/tools/ingest-csv.ts +0 -13
  460. package/src/tools/overlay-manifest.ts +20 -8
  461. package/src/tools/postcode-triples.ts +375 -0
  462. package/src/tools/shard-kryptonite.ts +4 -5
  463. package/src/tools/shard-translit.ts +16 -35
  464. package/src/tools/sub-venue/harvest.ts +235 -0
  465. package/src/tools/sub-venue/head-nouns.ts +242 -0
  466. package/src/tools/sub-venue/surfaces.ts +95 -0
  467. package/src/tools/sub-venue/table.ts +281 -0
  468. package/src/tools/sub-venue/wikidata.ts +85 -0
  469. package/src/tools/sub-venue-lexicon.ts +67 -886
  470. package/src/{align.ts → utils/align.ts} +2 -1
  471. package/src/{golden.ts → utils/golden.ts} +2 -3
  472. package/src/utils/index.ts +14 -0
  473. package/src/{license.ts → utils/license.ts} +1 -1
  474. package/src/{parquet.ts → utils/parquet.ts} +22 -9
  475. package/src/{split.ts → utils/split.ts} +3 -3
  476. package/out/src/adapter.d.ts.map +0 -1
  477. package/out/src/adapter.js.map +0 -1
  478. package/out/src/align.d.ts.map +0 -1
  479. package/out/src/align.js.map +0 -1
  480. package/out/src/format.d.ts +0 -14
  481. package/out/src/format.d.ts.map +0 -1
  482. package/out/src/format.js +0 -14
  483. package/out/src/format.js.map +0 -1
  484. package/out/src/golden.d.ts.map +0 -1
  485. package/out/src/golden.js.map +0 -1
  486. package/out/src/license.d.ts.map +0 -1
  487. package/out/src/license.js.map +0 -1
  488. package/out/src/parquet.d.ts.map +0 -1
  489. package/out/src/parquet.js.map +0 -1
  490. package/out/src/split.d.ts.map +0 -1
  491. package/out/src/split.js.map +0 -1
  492. package/out/src/synthesize-anchor-absorption.d.ts.map +0 -1
  493. package/out/src/synthesize-anchor-absorption.js.map +0 -1
  494. package/out/src/synthesize-boundary-stress.d.ts.map +0 -1
  495. package/out/src/synthesize-boundary-stress.js.map +0 -1
  496. package/out/src/synthesize-german.d.ts.map +0 -1
  497. package/out/src/synthesize-german.js.map +0 -1
  498. package/out/src/synthesize-house-venue.d.ts.map +0 -1
  499. package/out/src/synthesize-house-venue.js.map +0 -1
  500. package/out/src/synthesize-intersection.d.ts.map +0 -1
  501. package/out/src/synthesize-intersection.js.map +0 -1
  502. package/out/src/synthesize-no-street.d.ts.map +0 -1
  503. package/out/src/synthesize-no-street.js.map +0 -1
  504. package/out/src/synthesize-po-box.d.ts.map +0 -1
  505. package/out/src/synthesize-po-box.js.map +0 -1
  506. package/out/src/synthesize-street.d.ts.map +0 -1
  507. package/out/src/synthesize-street.js.map +0 -1
  508. package/out/src/synthesize.d.ts.map +0 -1
  509. package/out/src/synthesize.js.map +0 -1
  510. package/out/src/tokenize.d.ts.map +0 -1
  511. package/out/src/tokenize.js.map +0 -1
  512. package/out/src/wof-json.d.ts.map +0 -1
  513. package/out/src/wof-json.js.map +0 -1
  514. package/src/format.ts +0 -14
  515. /package/out/src/{align.js → utils/align.js} +0 -0
  516. /package/out/src/{golden.d.ts → utils/golden.d.ts} +0 -0
  517. /package/out/src/{license.d.ts → utils/license.d.ts} +0 -0
  518. /package/out/src/{tokenize.d.ts → utils/tokenize.d.ts} +0 -0
  519. /package/out/src/{tokenize.js → utils/tokenize.js} +0 -0
  520. /package/out/src/{wof-json.d.ts → utils/wof-json.d.ts} +0 -0
  521. /package/out/src/{wof-json.js → utils/wof-json.js} +0 -0
  522. /package/src/{synthesize-anchor-absorption.ts → synthesizers/anchor-absorption.ts} +0 -0
  523. /package/src/{tokenize.ts → utils/tokenize.ts} +0 -0
  524. /package/src/{wof-json.ts → utils/wof-json.ts} +0 -0
@@ -23,12 +23,12 @@
23
23
  * the input. The passed `random` (the framework LCG) is consumed in the exact call order the
24
24
  * legacy script used.
25
25
  */
26
- import { spawnSync } from "node:child_process";
27
26
  import { COUNTRY_SURFACE_FORMS, CountryNames } from "@mailwoman/codex/country";
27
+ import { isPresent } from "@mailwoman/core/objects";
28
28
  import { dataRootPath } from "@mailwoman/core/utils";
29
- import { stableSourceID } from "../adapter.js";
30
- import { alignRow } from "../align.js";
31
- import { makeMulberry32, readCSVRecords } from "./scaffold.js";
29
+ import { stableSourceID } from "#adapters/utils";
30
+ import { alignRow } from "#utils";
31
+ import { makeMulberry32, readZippedCSVRecords } from "./scaffold.js";
32
32
  // v2: the country TOKEN is decoupled from the skeleton's locale and drawn from a BROAD pool — every
33
33
  // ISO canonical name + every curated surface form (endonyms/abbrevs). Surface forms are over-weighted
34
34
  // so endonyms/abbrevs ("Deutschland","USA","NL") get strong signal.
@@ -118,21 +118,14 @@ const EVAL_SOURCES = [
118
118
  },
119
119
  { zip: dataRootPath("oa-cache", "de__berlin.zip"), csv: "de/berlin.csv", iso2: "DE", region: "", order: "eu" },
120
120
  ];
121
- function readTuples(source, limit) {
122
- // countrywide extracts (FR/IT/NL) are GB-scale cap the bytes with `head` (read ~8 lines per wanted
123
- // tuple to survive dedup/skips) so the whole extract never has to be held in memory.
124
- const maxLines = Math.max(limit * 8, 20_000) + 1;
125
- const r = spawnSync("bash", ["-c", `unzip -p "${source.zip}" "${source.csv}" | head -n ${maxLines}`], {
126
- maxBuffer: 1024 * 1024 * 1024,
127
- encoding: "buffer",
128
- });
129
- if (r.status !== 0) {
130
- console.error(` WARN: unzip failed for ${source.zip} (status ${r.status})`);
131
- return [];
132
- }
121
+ /**
122
+ * The countrywide extracts (FR/IT/NL) are GB-scale, so this reads only as far as `limit` distinct tuples: the `break`
123
+ * closes the reader, which releases the archive without inflating the rest of the member.
124
+ */
125
+ async function readTuples(source, limit) {
133
126
  const tuples = [];
134
127
  const seen = new Set();
135
- for (const row of readCSVRecords(r.stdout)) {
128
+ for await (const row of readZippedCSVRecords(source.zip, source.csv)) {
136
129
  if (tuples.length >= limit)
137
130
  break;
138
131
  const street = row.street ?? "", locality = row.city ?? "", house_number = row.number ?? "";
@@ -178,16 +171,16 @@ function renderCountry(random, t, country) {
178
171
  }
179
172
  let body;
180
173
  if (order === "us") {
181
- const regPc = [reg, pc].filter(Boolean).join(" ");
174
+ const regPc = [reg, pc].filter(isPresent).join(" ");
182
175
  body = `${hn} ${street}, ${loc}${regPc ? ", " + regPc : ""}`;
183
176
  }
184
177
  else if (order === "fr") {
185
178
  // French is NUMBER-street, postcode-city: "84 Route de la Fontaine, 75008 Paris".
186
- body = `${hn} ${street}, ${[pc, loc].filter(Boolean).join(" ")}`;
179
+ body = `${hn} ${street}, ${[pc, loc].filter(isPresent).join(" ")}`;
187
180
  }
188
181
  else {
189
182
  // DE/IT/NL: street-number, postcode-city: "Pariser Platz 1, 10117 Berlin".
190
- const pcCity = [pc, loc].filter(Boolean).join(" ");
183
+ const pcCity = [pc, loc].filter(isPresent).join(" ");
191
184
  body = `${street} ${hn}, ${pcCity}`;
192
185
  }
193
186
  if (!country) {
@@ -343,7 +336,7 @@ export const countryBalancedRecipe = {
343
336
  const perSource = Math.ceil((count * 3) / sources.length); // over-read; balance locales
344
337
  const pool = [];
345
338
  for (const s of sources) {
346
- const t = readTuples(s, perSource);
339
+ const t = await readTuples(s, perSource);
347
340
  console.error(` ${s.csv} (${s.iso2}): ${t.length} tuples`);
348
341
  for (const x of t) {
349
342
  pool.push(x);
@@ -1 +1 @@
1
- {"version":3,"file":"country-balanced.js","sourceRoot":"","sources":["../../../src/shard-recipes/country-balanced.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"country-balanced.js","sourceRoot":"","sources":["../../../src/shard-recipes/country-balanced.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cz-pcfirst-preposition.d.ts","sourceRoot":"","sources":["../../../src/shard-recipes/cz-pcfirst-preposition.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAA6C,KAAK,WAAW,EAAiB,MAAM,eAAe,CAAA;AAE1G;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,WAqExC,CAAA"}
1
+ {"version":3,"file":"cz-pcfirst-preposition.d.ts","sourceRoot":"","sources":["../../../src/shard-recipes/cz-pcfirst-preposition.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAA6C,KAAK,WAAW,EAAiB,MAAM,eAAe,CAAA;AAS1G;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,WAiFxC,CAAA"}
@@ -14,6 +14,12 @@
14
14
  * cycle (the lesson); canonical and city-first keep the polarity balanced (the v1.9.9 lesson).
15
15
  */
16
16
  import { alignAndWrite, makeMulberry32, readTuples, shardSourceID } from "./scaffold.js";
17
+ /**
18
+ * The order-cycle slot for the STREET-LESS form (`«city» «pc», Česko`) — the exact surface of the
19
+ * `cz-full-praha-100-00` board row, whose absence from the street-bearing orders was the v4.5.0 no-promote's measured
20
+ * gap.
21
+ */
22
+ const STREETLESS_ORDER = 3;
17
23
  /**
18
24
  * Shard recipe registered with the corpus builder — see the file header for the parse behaviour it exists to exercise,
19
25
  * and `description` below for the surface form it generates.
@@ -37,26 +43,38 @@ export const czPcFirstPrepositionRecipe = {
37
43
  skipped++;
38
44
  continue;
39
45
  }
40
- const order = read % 3;
46
+ const order = read % 4;
47
+ // The OFFICIAL Czech rendering spaces the PSČ as `NNN NN` ('512 44'); OpenAddresses stores it
48
+ // unspaced ('51244'), and a model trained only on the source form reads the spaced surface as
49
+ // house_number + garbage (the 'Praha 100 00' mangle). Alternate the two renderings so both
50
+ // orthographies are attested — the LABEL is the postcode either way.
51
+ const spaced = read % 2 === 0 && /^\d{5}$/.test(postcode);
52
+ const postcodeSurface = spaced ? `${postcode.slice(0, 3)} ${postcode.slice(3)}` : postcode;
41
53
  let raw;
42
- const components = {
43
- street,
44
- house_number: number,
45
- postcode,
46
- locality: city,
47
- };
54
+ const components = order === STREETLESS_ORDER
55
+ ? { locality: city, postcode: postcodeSurface, country: "Česko" }
56
+ : { street, house_number: number, postcode: postcodeSurface, locality: city };
48
57
  if (order === 0) {
49
- raw = `${postcode} ${city}, ${street} ${number}`;
58
+ raw = `${postcodeSurface} ${city}, ${street} ${number}`;
50
59
  }
51
60
  else if (order === 1) {
52
- raw = `${street} ${number}, ${postcode} ${city}`;
61
+ raw = `${street} ${number}, ${postcodeSurface} ${city}`;
62
+ }
63
+ else if (order === 2) {
64
+ raw = `${city}, ${postcodeSurface}, ${street} ${number}`;
53
65
  }
54
66
  else {
55
- raw = `${city}, ${postcode}, ${street} ${number}`;
67
+ // order === STREETLESS_ORDER: the street-less form — `«city» «pc», Česko` — the exact surface of the
68
+ // cz-full-praha-100-00 board row. The v4.5.0 no-promote receipt measured the gap: every
69
+ // prior order was street-bearing, so the model never saw a spaced PSČ beside a bare
70
+ // locality and mangled 'Praha 100 00, Czechia' into house_number spans. Street/number
71
+ // stay OUT of the components for this form (they are not in the surface).
72
+ raw = `${city} ${postcodeSurface}, Česko`;
56
73
  }
57
74
  const source_id = shardSourceID("synth-cz-pcfirst-preposition", {
58
75
  ...components,
59
76
  o: String(order),
77
+ s: spaced ? "1" : "0",
60
78
  v: String(read),
61
79
  });
62
80
  const canonical = {
@@ -1 +1 @@
1
- {"version":3,"file":"cz-pcfirst-preposition.js","sourceRoot":"","sources":["../../../src/shard-recipes/cz-pcfirst-preposition.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAoB,aAAa,EAAE,MAAM,eAAe,CAAA;AAE1G;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAgB;IACtD,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EACV,4GAA4G;IAC7G,IAAI,EAAE,QAAQ;IACd,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK;QACpB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzB,IAAI,IAAI,GAAG,CAAC,CAAA;QACZ,IAAI,OAAO,GAAG,CAAC,CAAA;QACf,IAAI,OAAO,GAAG,CAAC,CAAA;QAEf,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,KAAM,CAAC,EAAE,CAAC;YAC/C,IAAI,EAAE,CAAA;YACN,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;YAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;YAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;YAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;YAEhD,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC9C,OAAO,EAAE,CAAA;gBAET,SAAQ;YACT,CAAC;YAED,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAA;YACtB,IAAI,GAAW,CAAA;YAEf,MAAM,UAAU,GAA2B;gBAC1C,MAAM;gBACN,YAAY,EAAE,MAAM;gBACpB,QAAQ;gBACR,QAAQ,EAAE,IAAI;aACd,CAAA;YAED,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBACjB,GAAG,GAAG,GAAG,QAAQ,IAAI,IAAI,KAAK,MAAM,IAAI,MAAM,EAAE,CAAA;YACjD,CAAC;iBAAM,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBACxB,GAAG,GAAG,GAAG,MAAM,IAAI,MAAM,KAAK,QAAQ,IAAI,IAAI,EAAE,CAAA;YACjD,CAAC;iBAAM,CAAC;gBACP,GAAG,GAAG,GAAG,IAAI,KAAK,QAAQ,KAAK,MAAM,IAAI,MAAM,EAAE,CAAA;YAClD,CAAC;YAED,MAAM,SAAS,GAAG,aAAa,CAAC,8BAA8B,EAAE;gBAC/D,GAAG,UAAU;gBACb,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC;gBAChB,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC;aACf,CAAC,CAAA;YAEF,MAAM,SAAS,GAAG;gBACjB,GAAG;gBACH,UAAU;gBACV,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,8BAA8B;gBACtC,SAAS;gBACT,cAAc,EAAE,QAAQ;gBACxB,OAAO,EACN,uIAAuI;aACxI,CAAA;YAED,IAAI,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,wBAAwB,CAAC,EAAE,CAAC;gBAC/D,OAAO,EAAE,CAAA;YACV,CAAC;iBAAM,CAAC;gBACP,OAAO,EAAE,CAAA;YACV,CAAC;QACF,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;IAClC,CAAC;CACD,CAAA"}
1
+ {"version":3,"file":"cz-pcfirst-preposition.js","sourceRoot":"","sources":["../../../src/shard-recipes/cz-pcfirst-preposition.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fr-admin-split.d.ts","sourceRoot":"","sources":["../../../src/shard-recipes/fr-admin-split.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AASH,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA;AAwGhE;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAyFhC,CAAA"}
1
+ {"version":3,"file":"fr-admin-split.d.ts","sourceRoot":"","sources":["../../../src/shard-recipes/fr-admin-split.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAWH,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA;AAwGhE;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAyFhC,CAAA"}
@@ -30,16 +30,17 @@
30
30
  * scar is positional, not universal).
31
31
  */
32
32
  import { departementForCodePostal } from "@mailwoman/codex/fr";
33
+ import { tempRootPath } from "@mailwoman/core/utils";
33
34
  import { CSVSpliterator, Delimiters } from "spliterator";
34
- import { stableSourceID } from "../adapter.js";
35
- import { alignRow } from "../align.js";
35
+ import { stableSourceID } from "#adapters/utils";
36
+ import { alignRow } from "#utils";
36
37
  import { makeMulberry32 } from "./scaffold.js";
37
38
  /* oxlint-disable sister-software/no-unnamed-threshold -- the bare decimals below are weighted-sampler
38
39
  cutoffs, not thresholds: `const r = random()` followed by a cascade of `r < 0.4` branches IS the
39
40
  output distribution, and reading the cascade top-to-bottom is how you see it. Naming each cutoff
40
41
  would hide the distribution behind a wall of identifiers. Genuine thresholds in these files are
41
42
  extracted as named constants above. */
42
- const DEFAULT_COMMUNES = "/tmp/reg/fr-communes.tsv";
43
+ const DEFAULT_COMMUNES = tempRootPath("reg", "fr-communes.tsv");
43
44
  const LICENSE = "BAN (Base Adresse Nationale) commune+postcode tuples, rendered admin-split — see ingest SOURCE";
44
45
  /**
45
46
  * Read the distinct commune TSV (commune, postcode, lon, lat); derive the département name.
@@ -1 +1 @@
1
- {"version":3,"file":"fr-admin-split.js","sourceRoot":"","sources":["../../../src/shard-recipes/fr-admin-split.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fr-admin-split.js","sourceRoot":"","sources":["../../../src/shard-recipes/fr-admin-split.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fr-bare-street.d.ts","sourceRoot":"","sources":["../../../src/shard-recipes/fr-bare-street.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,EAA6C,KAAK,WAAW,EAAiB,MAAM,eAAe,CAAA;AAE1G;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAiEhC,CAAA"}
1
+ {"version":3,"file":"fr-bare-street.d.ts","sourceRoot":"","sources":["../../../src/shard-recipes/fr-bare-street.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAKH,OAAO,EAA6C,KAAK,WAAW,EAAiB,MAAM,eAAe,CAAA;AAgB1G;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,WA4HhC,CAAA"}
@@ -19,15 +19,26 @@
19
19
  * for FR and will `-inf` these gold labels (the v1.6.0 ~7M-loss blow-up). Disable that mask for any
20
20
  * run including this shard.
21
21
  */
22
+ import { FR_VOIE_TYPES } from "@mailwoman/codex/fr";
22
23
  import { decomposeFrStreet } from "../adapters/ban/street-decompose.js";
23
24
  import { alignAndWrite, makeMulberry32, readTuples, shardSourceID } from "./scaffold.js";
25
+ /**
26
+ * Canonical voie type (lowercase, accent-kept) → its most common written abbreviation, from the codex table's first
27
+ * entry. Types with no attested abbreviation stay canonical in the abbreviated form.
28
+ */
29
+ const FR_VOIE_ABBREV = Object.fromEntries(Object.entries(FR_VOIE_TYPES).flatMap(([canonical, abbrevs]) => (abbrevs[0] ? [[canonical, abbrevs[0]]] : [])));
30
+ /**
31
+ * The order-cycle slot for the BARE-STREET-ONLY form (`«voie» «name»`, no number, no locality) — the absence
32
+ * counterweight to the locality-terminated comma-free forms (see the cycle comment).
33
+ */
34
+ const BARE_STREET_ONLY_FORM = 3;
24
35
  /**
25
36
  * Shard recipe registered with the corpus builder — see the file header for the parse behaviour it exists to exercise,
26
37
  * and `description` below for the surface form it generates.
27
38
  */
28
39
  export const frBareStreetRecipe = {
29
40
  name: "fr-bare-street",
30
- description: "FR bare comma-form street+city, NO postcode (#251): '<n> Rue <name>, <City>' the postcode-anchoring lever",
41
+ description: "FR bare street+city, NO postcode (#251): comma / comma-free / abbreviated-voie surfaces over one label set",
31
42
  mode: "tuples",
32
43
  async run(opts, write) {
33
44
  // Seeded for parity with the other recipes; unused beyond reproducibility (the tuples drive the content).
@@ -45,20 +56,70 @@ export const frBareStreetRecipe = {
45
56
  continue;
46
57
  }
47
58
  const { prefix, street } = decomposeFrStreet(fullStreet);
48
- // The failing class is the prefix-led FR street; a no-prefix nom_voie ("La Ville Mois") isn't it.
59
+ // A no-prefix nom_voie ("La Ville Mois") is not the prefix-led class the numbered forms
60
+ // exercise — but as a BARE surface it is exactly the non-voie-led counterweight the v4.5.1
61
+ // probe showed missing ('Savile Row'-shaped spans still fell to the trailing-locality
62
+ // prior; the voie-led bare form protected only voie-led spans). Alternate rows emit the
63
+ // whole span as a bare street; the rest skip as before.
49
64
  if (!prefix || !street) {
65
+ if (read % 2 === 0 && fullStreet.split(" ").length >= 2) {
66
+ const bare = {
67
+ raw: fullStreet,
68
+ components: { street: fullStreet },
69
+ country: "FR",
70
+ locale: "fr-FR",
71
+ source: "synth-fr-bare-street",
72
+ source_id: shardSourceID("synth-fr-bare-street", {
73
+ street: fullStreet,
74
+ f: "bare-nonvoie",
75
+ v: String(read),
76
+ }),
77
+ corpus_version: "0.9.4",
78
+ license: "Synthetic — fr-bare-street; (street, number, city) from BAN (Base Adresse Nationale, Licence Ouverte)",
79
+ };
80
+ if (alignAndWrite(write, bare, "fr-bare-street")) {
81
+ emitted++;
82
+ }
83
+ else {
84
+ skipped++;
85
+ }
86
+ continue;
87
+ }
50
88
  skipped++;
51
89
  continue;
52
90
  }
53
- const components = {
54
- house_number: number,
55
- street_prefix: prefix,
56
- street,
57
- locality,
58
- };
59
- // BARE comma form, number-before (FR's dominant order), NO postcode the whole point.
60
- const raw = `${number} ${prefix} ${street}, ${locality}`;
61
- const source_id = shardSourceID("synth-fr-bare-street", { ...components, v: String(read) });
91
+ // Four surfaces over the same tuple, cycled deterministically. The comma form was the
92
+ // original lever; the COMMA-FREE form is the colloquial register users actually type
93
+ // ('12 rue de Rome Paris' — the street↔locality boundary with NO delimiter, the fr-fr
94
+ // panel's named loss); the ABBREVIATED form is the typeahead register the geocoder-tester
95
+ // FR slice attests at scale; and the BARE-STREET-ONLY form is the absence counterweight —
96
+ // without it, every delimiter-free surface in the mix ENDS in a locality, the model learns
97
+ // "trailing span = locality" as categorical, and bare street names across locales flip to
98
+ // locality wholesale (the v4.5.0 no-promote's measured erosion: 'Calle de Alcalá',
99
+ // 'Madison Square West', and COMER's fork all fell to that prior). Tags are identical
100
+ // where present; each component VALUE is the span as written (BIO alignment binds value
101
+ // to surface); the bare form carries NO number and NO locality because the surface has
102
+ // neither.
103
+ const form = read % 4;
104
+ const prefixSurface = form >= 2 ? (FR_VOIE_ABBREV[prefix.toLowerCase()] ?? prefix) : prefix;
105
+ const components = form === BARE_STREET_ONLY_FORM
106
+ ? { street_prefix: prefix, street }
107
+ : { house_number: number, street_prefix: prefixSurface, street, locality };
108
+ // When the tuple carries a WOF-attested neighbourhood, the comma slot renders the
109
+ // THREE-slot middle surface — the dependent-locality counterweight (the v4.5.1 erosion's
110
+ // untouched half: the two-slot comma-free endings squeezed the middle tag out).
111
+ const hood = String(t.neighbourhood ?? "").trim();
112
+ if (form === 0 && hood) {
113
+ components.dependent_locality = hood;
114
+ }
115
+ const raw = form === 0
116
+ ? hood
117
+ ? `${number} ${prefix} ${street}, ${hood}, ${locality}`
118
+ : `${number} ${prefix} ${street}, ${locality}`
119
+ : form === BARE_STREET_ONLY_FORM
120
+ ? `${prefix} ${street}`
121
+ : `${number} ${prefixSurface} ${street} ${locality}`;
122
+ const source_id = shardSourceID("synth-fr-bare-street", { ...components, f: String(form), v: String(read) });
62
123
  const canonical = {
63
124
  raw,
64
125
  components,
@@ -1 +1 @@
1
- {"version":3,"file":"fr-bare-street.js","sourceRoot":"","sources":["../../../src/shard-recipes/fr-bare-street.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;AACvE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAoB,aAAa,EAAE,MAAM,eAAe,CAAA;AAE1G;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAgB;IAC9C,IAAI,EAAE,gBAAgB;IACtB,WAAW,EACV,6GAA6G;IAC9G,IAAI,EAAE,QAAQ;IACd,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK;QACpB,0GAA0G;QAC1G,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzB,IAAI,IAAI,GAAG,CAAC,CAAA;QACZ,IAAI,OAAO,GAAG,CAAC,CAAA;QACf,IAAI,OAAO,GAAG,CAAC,CAAA;QAEf,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,KAAM,CAAC,EAAE,CAAC;YAC/C,IAAI,EAAE,CAAA;YACN,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;YAChD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;YAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;YAEhD,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACzC,OAAO,EAAE,CAAA;gBAET,SAAQ;YACT,CAAC;YAED,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;YAExD,kGAAkG;YAClG,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;gBACxB,OAAO,EAAE,CAAA;gBAET,SAAQ;YACT,CAAC;YAED,MAAM,UAAU,GAA2B;gBAC1C,YAAY,EAAE,MAAM;gBACpB,aAAa,EAAE,MAAM;gBACrB,MAAM;gBACN,QAAQ;aACR,CAAA;YAED,uFAAuF;YACvF,MAAM,GAAG,GAAG,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAA;YACxD,MAAM,SAAS,GAAG,aAAa,CAAC,sBAAsB,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAE3F,MAAM,SAAS,GAAG;gBACjB,GAAG;gBACH,UAAU;gBACV,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,sBAAsB;gBAC9B,SAAS;gBACT,cAAc,EAAE,OAAO;gBACvB,OAAO,EACN,uGAAuG;aACxG,CAAA;YAED,IAAI,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,gBAAgB,CAAC,EAAE,CAAC;gBACvD,OAAO,EAAE,CAAA;YACV,CAAC;iBAAM,CAAC;gBACP,OAAO,EAAE,CAAA;YACV,CAAC;QACF,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;IAClC,CAAC;CACD,CAAA"}
1
+ {"version":3,"file":"fr-bare-street.js","sourceRoot":"","sources":["../../../src/shard-recipes/fr-bare-street.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fr-lieudit.d.ts","sourceRoot":"","sources":["../../../src/shard-recipes/fr-lieudit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAcH,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA;AA2IhE;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,WAsH7B,CAAA"}
1
+ {"version":3,"file":"fr-lieudit.d.ts","sourceRoot":"","sources":["../../../src/shard-recipes/fr-lieudit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAgBH,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA;AA2IhE;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,WAsH7B,CAAA"}
@@ -27,10 +27,11 @@ import { readdirSync } from "node:fs";
27
27
  import { join } from "node:path";
28
28
  import { extractBANAddrPoints } from "@mailwoman/ban/sdk";
29
29
  import { COUNTRY_SURFACE_FORMS } from "@mailwoman/codex/country";
30
+ import { isPresent } from "@mailwoman/core/objects";
30
31
  import { dataRootPath } from "@mailwoman/core/utils";
31
- import { stableSourceID } from "../adapter.js";
32
+ import { stableSourceID } from "#adapters/utils";
33
+ import { alignRow } from "#utils";
32
34
  import { decomposeFrStreet } from "../adapters/ban/street-decompose.js";
33
- import { alignRow } from "../align.js";
34
35
  import { makeMulberry32 } from "./scaffold.js";
35
36
  /**
36
37
  * Matches the `ban` adapter's Tier-B election for BAN data.
@@ -108,7 +109,7 @@ function composeRaw(house, street, dependentLocality, postcode, locality) {
108
109
  lines.push(streetLine);
109
110
  }
110
111
  lines.push(dependentLocality);
111
- const cityLine = [postcode, locality].filter(Boolean).join(" ").trim();
112
+ const cityLine = [postcode, locality].filter(isPresent).join(" ").trim();
112
113
  if (cityLine) {
113
114
  lines.push(cityLine);
114
115
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fr-lieudit.js","sourceRoot":"","sources":["../../../src/shard-recipes/fr-lieudit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fr-lieudit.js","sourceRoot":"","sources":["../../../src/shard-recipes/fr-lieudit.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fr-order.d.ts","sourceRoot":"","sources":["../../../src/shard-recipes/fr-order.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAUH,OAAO,EAAkC,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA;AAoGhF;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,WA8H3B,CAAA"}
1
+ {"version":3,"file":"fr-order.d.ts","sourceRoot":"","sources":["../../../src/shard-recipes/fr-order.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAUH,OAAO,EAAwC,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA;AAuFtF;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,WA8H3B,CAAA"}
@@ -29,11 +29,11 @@
29
29
  * stream is still open during `run`), and the dead `renderReversed` helper (the legacy `main`
30
30
  * inlined the variant logic and never called it).
31
31
  */
32
- import { spawnSync } from "node:child_process";
32
+ import { isPresent } from "@mailwoman/core/objects";
33
33
  import { dataRootPath } from "@mailwoman/core/utils";
34
- import { stableSourceID } from "../adapter.js";
35
- import { alignRow } from "../align.js";
36
- import { makeMulberry32, readCSVRecords } from "./scaffold.js";
34
+ import { stableSourceID } from "#adapters/utils";
35
+ import { alignRow } from "#utils";
36
+ import { makeMulberry32, readZippedCSVRecords } from "./scaffold.js";
37
37
  /* oxlint-disable sister-software/no-unnamed-threshold -- the bare decimals below are weighted-sampler
38
38
  cutoffs, not thresholds: `const r = random()` followed by a cascade of `r < 0.4` branches IS the
39
39
  output distribution, and reading the cascade top-to-bottom is how you see it. Naming each cutoff
@@ -53,23 +53,14 @@ const ORDINAL_PROB = 0.12;
53
53
  */
54
54
  const ALLCAPS_PROB = 0.1;
55
55
  /**
56
- * Stream FR tuples out of the cached OA zip. The countrywide extract is GB-scale; cap with `head` so the whole file
57
- * never has to be held in memory. Only keeps rows with a house_number (the shard's core signal) and a postcode
58
- * (required for reversed-order rendering to be meaningful).
56
+ * Stream FR tuples out of the cached OA zip. The countrywide extract is GB-scale, so this reads only as far as `limit`
57
+ * distinct tuples the `break` closes the reader and releases the archive. Only keeps rows with a house_number (the
58
+ * shard's core signal) and a postcode (required for reversed-order rendering to be meaningful).
59
59
  */
60
- function readTuples(limit) {
61
- const maxLines = Math.max(limit * 8, 40_000) + 1;
62
- const r = spawnSync("bash", ["-c", `unzip -p "${SOURCE.zip}" "${SOURCE.csv}" | head -n ${maxLines}`], {
63
- maxBuffer: 1024 * 1024 * 1024,
64
- encoding: "buffer",
65
- });
66
- if (r.status !== 0) {
67
- console.error(` WARN: unzip failed for ${SOURCE.zip} (status ${r.status})`);
68
- return [];
69
- }
60
+ async function readTuples(limit) {
70
61
  const tuples = [];
71
62
  const seen = new Set();
72
- for (const row of readCSVRecords(r.stdout)) {
63
+ for await (const row of readZippedCSVRecords(SOURCE.zip, SOURCE.csv)) {
73
64
  if (tuples.length >= limit)
74
65
  break;
75
66
  const street = row.street ?? "";
@@ -128,7 +119,7 @@ export const frOrderRecipe = {
128
119
  const reversedFraction = opts.reversedFraction ?? 0.5;
129
120
  // Over-read from the CSV so the dedup + filter pass can fill `count` rows.
130
121
  const poolLimit = Math.max(count * 8, 40_000);
131
- const pool = readTuples(poolLimit);
122
+ const pool = await readTuples(poolLimit);
132
123
  console.error(` ${SOURCE.csv}: ${pool.length} unique tuples (capped read)`);
133
124
  if (!pool.length) {
134
125
  throw new Error(`No FR tuples found — is ${SOURCE.zip} present?`);
@@ -171,7 +162,7 @@ export const frOrderRecipe = {
171
162
  }
172
163
  const { raw, components } = rendered;
173
164
  // Safety check: every component must appear verbatim in raw (alignment precondition).
174
- const componentValues = Object.values(components).filter(Boolean);
165
+ const componentValues = Object.values(components).filter(isPresent);
175
166
  if (!componentValues.every((v) => raw.includes(v))) {
176
167
  skipped++;
177
168
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"fr-order.js","sourceRoot":"","sources":["../../../src/shard-recipes/fr-order.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fr-order.js","sourceRoot":"","sources":["../../../src/shard-recipes/fr-order.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"german.d.ts","sourceRoot":"","sources":["../../../src/shard-recipes/german.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AASH,OAAO,EAAkC,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA;AAuDhF;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,WA+F1B,CAAA"}
1
+ {"version":3,"file":"german.d.ts","sourceRoot":"","sources":["../../../src/shard-recipes/german.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAQH,OAAO,EAAwC,KAAK,WAAW,EAAE,MAAM,eAAe,CAAA;AA+CtF;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,WA+F1B,CAAA"}