@mailwoman/resolver-wof-sqlite 10.0.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 (476) hide show
  1. package/README.md +8 -8
  2. package/lib/address/point/interpolation.ts +39 -37
  3. package/lib/address/point/schema.ts +17 -40
  4. package/lib/address/point.ts +315 -0
  5. package/lib/{address/index.ts → address.ts} +1 -1
  6. package/lib/ancestry/backfill.ts +20 -86
  7. package/lib/{ancestry/index.ts → ancestry.ts} +19 -15
  8. package/lib/build/candidate.ts +123 -165
  9. package/lib/build/population-corrections.ts +64 -0
  10. package/lib/build/slim.ts +43 -113
  11. package/lib/candidate/alias-bags.ts +16 -17
  12. package/lib/candidate/ancestors/schema.ts +77 -61
  13. package/lib/candidate/ancestors/sidecar.ts +15 -22
  14. package/lib/candidate/country-display-names.ts +6 -20
  15. package/lib/candidate/extract-fold.ts +10 -55
  16. package/lib/candidate/fts.ts +5 -23
  17. package/lib/candidate/importance.ts +64 -67
  18. package/lib/candidate/lookup.ts +78 -382
  19. package/lib/candidate/name-roles.ts +15 -33
  20. package/lib/candidate/own-name.ts +34 -31
  21. package/lib/candidate/place-attrs.ts +20 -13
  22. package/lib/candidate/schema.ts +29 -65
  23. package/lib/candidate/scoring.ts +30 -69
  24. package/lib/capital-schema.ts +21 -17
  25. package/lib/capitals.ts +26 -24
  26. package/lib/coincident-roles.ts +74 -55
  27. package/lib/convention/schema.ts +13 -7
  28. package/lib/convention.ts +144 -0
  29. package/lib/coverage-manifest-schema.ts +34 -39
  30. package/lib/currency-backfill.ts +22 -67
  31. package/lib/env.ts +1 -1
  32. package/lib/exact-match.ts +31 -20
  33. package/lib/extracts.ts +96 -73
  34. package/lib/fst/autocomplete.ts +52 -35
  35. package/lib/fst/builder.ts +30 -36
  36. package/lib/fst/deserialize-web.ts +8 -9
  37. package/lib/fst/format.ts +41 -23
  38. package/lib/fst/freshness.ts +17 -95
  39. package/lib/fst/matcher.ts +2 -2
  40. package/lib/fst/serialize.ts +45 -60
  41. package/lib/fst/types.ts +71 -59
  42. package/lib/fts/query.ts +5 -36
  43. package/lib/fts.ts +280 -0
  44. package/lib/geonames/aliases.ts +71 -142
  45. package/lib/geonames/postal.ts +161 -70
  46. package/lib/index.ts +6 -6
  47. package/lib/interpolation.ts +43 -96
  48. package/lib/lookup.ts +132 -253
  49. package/lib/name-score.ts +9 -7
  50. package/lib/nsul/lookup.ts +36 -53
  51. package/lib/nsul/schema.ts +16 -43
  52. package/lib/paths.ts +159 -0
  53. package/lib/place-importance-schema.ts +57 -164
  54. package/lib/poi/lookup.ts +100 -109
  55. package/lib/poi/schema.ts +42 -26
  56. package/lib/polygon-schema.ts +10 -6
  57. package/lib/postal/city/alias/lookup.ts +22 -40
  58. package/lib/postal/city/alias/schema.ts +14 -10
  59. package/lib/postal/city/candidate-schema.ts +26 -20
  60. package/lib/postcode-point-lookup.ts +9 -19
  61. package/lib/primary-preference.ts +44 -124
  62. package/lib/proximity-rerank.ts +43 -32
  63. package/lib/ranking-weights.ts +98 -76
  64. package/lib/region-keys.ts +68 -40
  65. package/lib/reverse.ts +108 -72
  66. package/lib/schema.ts +74 -42
  67. package/lib/search-fetch.ts +90 -68
  68. package/lib/sqlite/convention-source.ts +12 -20
  69. package/lib/sqlite/utils.ts +18 -21
  70. package/lib/street/centroid/schema.ts +37 -42
  71. package/lib/street/{centroid/index.ts → centroid.ts} +15 -24
  72. package/lib/street/morphology/fst/builder.ts +50 -41
  73. package/lib/street/morphology/fst/loader.ts +35 -28
  74. package/lib/street/name-lookup.ts +43 -35
  75. package/lib/street/normalize.ts +85 -216
  76. package/lib/street/segment-schema.ts +116 -43
  77. package/lib/{street/index.ts → street.ts} +1 -1
  78. package/lib/types.ts +94 -140
  79. package/lib/unified-schema.ts +29 -29
  80. package/lib/uprn/existence.ts +30 -19
  81. package/lib/uprn/lookup.ts +28 -67
  82. package/lib/uprn/schema.ts +18 -40
  83. package/lib/weights-overlay-linker.ts +204 -232
  84. package/out/address/point/interpolation.d.ts +19 -23
  85. package/out/address/point/interpolation.d.ts.map +1 -1
  86. package/out/address/point/interpolation.js +37 -37
  87. package/out/address/point/interpolation.js.map +1 -1
  88. package/out/address/point/schema.d.ts +12 -35
  89. package/out/address/point/schema.d.ts.map +1 -1
  90. package/out/address/point/schema.js +3 -19
  91. package/out/address/point/schema.js.map +1 -1
  92. package/out/address/point.d.ts +56 -0
  93. package/out/address/point.d.ts.map +1 -0
  94. package/out/address/point.js +205 -0
  95. package/out/address/point.js.map +1 -0
  96. package/out/{address/index.js → address.d.ts} +2 -2
  97. package/out/address.d.ts.map +1 -0
  98. package/out/{address/index.d.ts → address.js} +2 -2
  99. package/out/address.js.map +1 -0
  100. package/out/ancestry/backfill.d.ts +11 -64
  101. package/out/ancestry/backfill.d.ts.map +1 -1
  102. package/out/ancestry/backfill.js +14 -74
  103. package/out/ancestry/backfill.js.map +1 -1
  104. package/out/ancestry.d.ts +49 -0
  105. package/out/ancestry.d.ts.map +1 -0
  106. package/out/ancestry.js +59 -0
  107. package/out/ancestry.js.map +1 -0
  108. package/out/build/candidate.d.ts +87 -107
  109. package/out/build/candidate.d.ts.map +1 -1
  110. package/out/build/candidate.js +19 -95
  111. package/out/build/candidate.js.map +1 -1
  112. package/out/build/population-corrections.d.ts +52 -0
  113. package/out/build/population-corrections.d.ts.map +1 -0
  114. package/out/build/population-corrections.js +40 -0
  115. package/out/build/population-corrections.js.map +1 -0
  116. package/out/build/slim.d.ts +8 -44
  117. package/out/build/slim.d.ts.map +1 -1
  118. package/out/build/slim.js +32 -93
  119. package/out/build/slim.js.map +1 -1
  120. package/out/candidate/alias-bags.d.ts +6 -6
  121. package/out/candidate/alias-bags.d.ts.map +1 -1
  122. package/out/candidate/alias-bags.js +16 -17
  123. package/out/candidate/alias-bags.js.map +1 -1
  124. package/out/candidate/ancestors/schema.d.ts +73 -57
  125. package/out/candidate/ancestors/schema.d.ts.map +1 -1
  126. package/out/candidate/ancestors/schema.js +56 -48
  127. package/out/candidate/ancestors/schema.js.map +1 -1
  128. package/out/candidate/ancestors/sidecar.d.ts +3 -8
  129. package/out/candidate/ancestors/sidecar.d.ts.map +1 -1
  130. package/out/candidate/ancestors/sidecar.js +15 -22
  131. package/out/candidate/ancestors/sidecar.js.map +1 -1
  132. package/out/candidate/country-display-names.d.ts +5 -15
  133. package/out/candidate/country-display-names.d.ts.map +1 -1
  134. package/out/candidate/country-display-names.js +6 -20
  135. package/out/candidate/country-display-names.js.map +1 -1
  136. package/out/candidate/extract-fold.d.ts +7 -15
  137. package/out/candidate/extract-fold.d.ts.map +1 -1
  138. package/out/candidate/extract-fold.js +5 -47
  139. package/out/candidate/extract-fold.js.map +1 -1
  140. package/out/candidate/fts.d.ts +5 -23
  141. package/out/candidate/fts.d.ts.map +1 -1
  142. package/out/candidate/fts.js +5 -23
  143. package/out/candidate/fts.js.map +1 -1
  144. package/out/candidate/importance.d.ts +60 -65
  145. package/out/candidate/importance.d.ts.map +1 -1
  146. package/out/candidate/importance.js +55 -62
  147. package/out/candidate/importance.js.map +1 -1
  148. package/out/candidate/lookup.d.ts +11 -51
  149. package/out/candidate/lookup.d.ts.map +1 -1
  150. package/out/candidate/lookup.js +48 -361
  151. package/out/candidate/lookup.js.map +1 -1
  152. package/out/candidate/name-roles.d.ts +9 -21
  153. package/out/candidate/name-roles.d.ts.map +1 -1
  154. package/out/candidate/name-roles.js +15 -33
  155. package/out/candidate/name-roles.js.map +1 -1
  156. package/out/candidate/own-name.d.ts +23 -25
  157. package/out/candidate/own-name.d.ts.map +1 -1
  158. package/out/candidate/own-name.js +34 -31
  159. package/out/candidate/own-name.js.map +1 -1
  160. package/out/candidate/place-attrs.d.ts +20 -13
  161. package/out/candidate/place-attrs.d.ts.map +1 -1
  162. package/out/candidate/place-attrs.js +4 -5
  163. package/out/candidate/place-attrs.js.map +1 -1
  164. package/out/candidate/schema.d.ts +27 -62
  165. package/out/candidate/schema.d.ts.map +1 -1
  166. package/out/candidate/schema.js +10 -22
  167. package/out/candidate/schema.js.map +1 -1
  168. package/out/candidate/scoring.d.ts +7 -8
  169. package/out/candidate/scoring.d.ts.map +1 -1
  170. package/out/candidate/scoring.js +30 -69
  171. package/out/candidate/scoring.js.map +1 -1
  172. package/out/capital-schema.d.ts +21 -17
  173. package/out/capital-schema.d.ts.map +1 -1
  174. package/out/capital-schema.js +17 -15
  175. package/out/capital-schema.js.map +1 -1
  176. package/out/capitals.d.ts +26 -24
  177. package/out/capitals.d.ts.map +1 -1
  178. package/out/capitals.js +23 -21
  179. package/out/capitals.js.map +1 -1
  180. package/out/coincident-roles.d.ts +60 -43
  181. package/out/coincident-roles.d.ts.map +1 -1
  182. package/out/coincident-roles.js +61 -50
  183. package/out/coincident-roles.js.map +1 -1
  184. package/out/convention/schema.d.ts +12 -6
  185. package/out/convention/schema.d.ts.map +1 -1
  186. package/out/convention/schema.js +6 -4
  187. package/out/convention/schema.js.map +1 -1
  188. package/out/convention.d.ts +97 -0
  189. package/out/convention.d.ts.map +1 -0
  190. package/out/convention.js +81 -0
  191. package/out/convention.js.map +1 -0
  192. package/out/coverage-manifest-schema.d.ts +33 -38
  193. package/out/coverage-manifest-schema.d.ts.map +1 -1
  194. package/out/coverage-manifest-schema.js +20 -29
  195. package/out/coverage-manifest-schema.js.map +1 -1
  196. package/out/currency-backfill.d.ts +11 -33
  197. package/out/currency-backfill.d.ts.map +1 -1
  198. package/out/currency-backfill.js +12 -39
  199. package/out/currency-backfill.js.map +1 -1
  200. package/out/env.d.ts +1 -1
  201. package/out/env.js +1 -1
  202. package/out/exact-match.d.ts +19 -10
  203. package/out/exact-match.d.ts.map +1 -1
  204. package/out/exact-match.js +31 -20
  205. package/out/exact-match.js.map +1 -1
  206. package/out/extracts.d.ts +65 -54
  207. package/out/extracts.d.ts.map +1 -1
  208. package/out/extracts.js +63 -55
  209. package/out/extracts.js.map +1 -1
  210. package/out/fst/autocomplete.d.ts +28 -20
  211. package/out/fst/autocomplete.d.ts.map +1 -1
  212. package/out/fst/autocomplete.js +38 -27
  213. package/out/fst/autocomplete.js.map +1 -1
  214. package/out/fst/builder.d.ts.map +1 -1
  215. package/out/fst/builder.js +30 -36
  216. package/out/fst/builder.js.map +1 -1
  217. package/out/fst/deserialize-web.d.ts +3 -3
  218. package/out/fst/deserialize-web.d.ts.map +1 -1
  219. package/out/fst/deserialize-web.js +8 -9
  220. package/out/fst/deserialize-web.js.map +1 -1
  221. package/out/fst/format.d.ts +41 -23
  222. package/out/fst/format.d.ts.map +1 -1
  223. package/out/fst/format.js +41 -23
  224. package/out/fst/format.js.map +1 -1
  225. package/out/fst/freshness.d.ts +11 -73
  226. package/out/fst/freshness.d.ts.map +1 -1
  227. package/out/fst/freshness.js +12 -76
  228. package/out/fst/freshness.js.map +1 -1
  229. package/out/fst/matcher.d.ts +1 -1
  230. package/out/fst/matcher.js +2 -2
  231. package/out/fst/matcher.js.map +1 -1
  232. package/out/fst/serialize.d.ts +30 -26
  233. package/out/fst/serialize.d.ts.map +1 -1
  234. package/out/fst/serialize.js +44 -58
  235. package/out/fst/serialize.js.map +1 -1
  236. package/out/fst/types.d.ts +71 -59
  237. package/out/fst/types.d.ts.map +1 -1
  238. package/out/fst/types.js +1 -4
  239. package/out/fst/types.js.map +1 -1
  240. package/out/{fst/index.js → fst.d.ts} +1 -1
  241. package/out/fst.d.ts.map +1 -0
  242. package/out/{fst/index.d.ts → fst.js} +1 -1
  243. package/out/fst.js.map +1 -0
  244. package/out/fts/query.d.ts +2 -27
  245. package/out/fts/query.d.ts.map +1 -1
  246. package/out/fts/query.js +5 -36
  247. package/out/fts/query.js.map +1 -1
  248. package/out/fts.d.ts +126 -0
  249. package/out/fts.d.ts.map +1 -0
  250. package/out/fts.js +188 -0
  251. package/out/fts.js.map +1 -0
  252. package/out/geonames/aliases.d.ts +26 -62
  253. package/out/geonames/aliases.d.ts.map +1 -1
  254. package/out/geonames/aliases.js +43 -115
  255. package/out/geonames/aliases.js.map +1 -1
  256. package/out/geonames/postal.d.ts +84 -44
  257. package/out/geonames/postal.d.ts.map +1 -1
  258. package/out/geonames/postal.js +114 -72
  259. package/out/geonames/postal.js.map +1 -1
  260. package/out/{geonames/index.js → geonames.d.ts} +1 -1
  261. package/out/geonames.d.ts.map +1 -0
  262. package/out/{geonames/index.d.ts → geonames.js} +1 -1
  263. package/out/geonames.js.map +1 -0
  264. package/out/index.d.ts +6 -6
  265. package/out/index.d.ts.map +1 -1
  266. package/out/index.js +5 -5
  267. package/out/index.js.map +1 -1
  268. package/out/interpolation.d.ts +15 -52
  269. package/out/interpolation.d.ts.map +1 -1
  270. package/out/interpolation.js +25 -68
  271. package/out/interpolation.js.map +1 -1
  272. package/out/lookup.d.ts +22 -51
  273. package/out/lookup.d.ts.map +1 -1
  274. package/out/lookup.js +114 -220
  275. package/out/lookup.js.map +1 -1
  276. package/out/name-score.d.ts +2 -2
  277. package/out/name-score.d.ts.map +1 -1
  278. package/out/name-score.js +9 -7
  279. package/out/name-score.js.map +1 -1
  280. package/out/nsul/lookup.d.ts +33 -34
  281. package/out/nsul/lookup.d.ts.map +1 -1
  282. package/out/nsul/lookup.js +26 -40
  283. package/out/nsul/lookup.js.map +1 -1
  284. package/out/nsul/schema.d.ts +16 -43
  285. package/out/nsul/schema.d.ts.map +1 -1
  286. package/out/nsul/schema.js +9 -35
  287. package/out/nsul/schema.js.map +1 -1
  288. package/out/{nsul/index.d.ts → nsul.d.ts} +1 -1
  289. package/out/nsul.d.ts.map +1 -0
  290. package/out/{nsul/index.js → nsul.js} +1 -1
  291. package/out/nsul.js.map +1 -0
  292. package/out/paths.d.ts +124 -0
  293. package/out/paths.d.ts.map +1 -0
  294. package/out/paths.js +104 -0
  295. package/out/paths.js.map +1 -0
  296. package/out/place-importance-schema.d.ts +49 -141
  297. package/out/place-importance-schema.d.ts.map +1 -1
  298. package/out/place-importance-schema.js +25 -140
  299. package/out/place-importance-schema.js.map +1 -1
  300. package/out/poi/lookup.d.ts +38 -42
  301. package/out/poi/lookup.d.ts.map +1 -1
  302. package/out/poi/lookup.js +67 -90
  303. package/out/poi/lookup.js.map +1 -1
  304. package/out/poi/schema.d.ts +41 -25
  305. package/out/poi/schema.d.ts.map +1 -1
  306. package/out/poi/schema.js +25 -17
  307. package/out/poi/schema.js.map +1 -1
  308. package/out/{poi/index.js → poi.d.ts} +1 -1
  309. package/out/poi.d.ts.map +1 -0
  310. package/out/{poi/index.d.ts → poi.js} +1 -1
  311. package/out/poi.js.map +1 -0
  312. package/out/polygon-schema.d.ts +10 -6
  313. package/out/polygon-schema.d.ts.map +1 -1
  314. package/out/polygon-schema.js +2 -2
  315. package/out/polygon-schema.js.map +1 -1
  316. package/out/postal/city/alias/lookup.d.ts +20 -23
  317. package/out/postal/city/alias/lookup.d.ts.map +1 -1
  318. package/out/postal/city/alias/lookup.js +17 -30
  319. package/out/postal/city/alias/lookup.js.map +1 -1
  320. package/out/postal/city/alias/schema.d.ts +14 -10
  321. package/out/postal/city/alias/schema.d.ts.map +1 -1
  322. package/out/postal/city/alias/schema.js +10 -8
  323. package/out/postal/city/alias/schema.js.map +1 -1
  324. package/out/postal/city/candidate-schema.d.ts +25 -19
  325. package/out/postal/city/candidate-schema.d.ts.map +1 -1
  326. package/out/postal/city/candidate-schema.js +21 -17
  327. package/out/postal/city/candidate-schema.js.map +1 -1
  328. package/out/{postal/index.d.ts → postal.d.ts} +1 -1
  329. package/out/postal.d.ts.map +1 -0
  330. package/out/{postal/index.js → postal.js} +1 -1
  331. package/out/postal.js.map +1 -0
  332. package/out/postcode-point-lookup.d.ts +9 -19
  333. package/out/postcode-point-lookup.d.ts.map +1 -1
  334. package/out/postcode-point-lookup.js +5 -17
  335. package/out/postcode-point-lookup.js.map +1 -1
  336. package/out/primary-preference.d.ts +38 -92
  337. package/out/primary-preference.d.ts.map +1 -1
  338. package/out/primary-preference.js +13 -97
  339. package/out/primary-preference.js.map +1 -1
  340. package/out/proximity-rerank.d.ts +40 -29
  341. package/out/proximity-rerank.d.ts.map +1 -1
  342. package/out/proximity-rerank.js +38 -29
  343. package/out/proximity-rerank.js.map +1 -1
  344. package/out/ranking-weights.d.ts +91 -62
  345. package/out/ranking-weights.d.ts.map +1 -1
  346. package/out/ranking-weights.js +26 -25
  347. package/out/ranking-weights.js.map +1 -1
  348. package/out/region-keys.d.ts +48 -29
  349. package/out/region-keys.d.ts.map +1 -1
  350. package/out/region-keys.js +68 -40
  351. package/out/region-keys.js.map +1 -1
  352. package/out/reverse.d.ts +75 -50
  353. package/out/reverse.d.ts.map +1 -1
  354. package/out/reverse.js +61 -49
  355. package/out/reverse.js.map +1 -1
  356. package/out/schema.d.ts +74 -42
  357. package/out/schema.d.ts.map +1 -1
  358. package/out/schema.js +4 -5
  359. package/out/schema.js.map +1 -1
  360. package/out/search-fetch.d.ts +16 -12
  361. package/out/search-fetch.d.ts.map +1 -1
  362. package/out/search-fetch.js +83 -63
  363. package/out/search-fetch.js.map +1 -1
  364. package/out/sqlite/convention-source.d.ts +11 -15
  365. package/out/sqlite/convention-source.d.ts.map +1 -1
  366. package/out/sqlite/convention-source.js +11 -20
  367. package/out/sqlite/convention-source.js.map +1 -1
  368. package/out/sqlite/utils.d.ts +18 -18
  369. package/out/sqlite/utils.d.ts.map +1 -1
  370. package/out/sqlite/utils.js +14 -15
  371. package/out/sqlite/utils.js.map +1 -1
  372. package/out/street/centroid/schema.d.ts +37 -42
  373. package/out/street/centroid/schema.d.ts.map +1 -1
  374. package/out/street/centroid/schema.js +9 -21
  375. package/out/street/centroid/schema.js.map +1 -1
  376. package/out/street/centroid.d.ts +30 -0
  377. package/out/street/centroid.d.ts.map +1 -0
  378. package/out/street/{centroid/index.js → centroid.js} +12 -23
  379. package/out/street/centroid.js.map +1 -0
  380. package/out/street/morphology/fst/builder.d.ts +20 -10
  381. package/out/street/morphology/fst/builder.d.ts.map +1 -1
  382. package/out/street/morphology/fst/builder.js +34 -33
  383. package/out/street/morphology/fst/builder.js.map +1 -1
  384. package/out/street/morphology/fst/loader.d.ts +32 -25
  385. package/out/street/morphology/fst/loader.d.ts.map +1 -1
  386. package/out/street/morphology/fst/loader.js +19 -19
  387. package/out/street/morphology/fst/loader.js.map +1 -1
  388. package/out/street/name-lookup.d.ts +24 -18
  389. package/out/street/name-lookup.d.ts.map +1 -1
  390. package/out/street/name-lookup.js +32 -31
  391. package/out/street/name-lookup.js.map +1 -1
  392. package/out/street/normalize.d.ts +35 -136
  393. package/out/street/normalize.d.ts.map +1 -1
  394. package/out/street/normalize.js +74 -191
  395. package/out/street/normalize.js.map +1 -1
  396. package/out/street/segment-schema.d.ts +79 -39
  397. package/out/street/segment-schema.d.ts.map +1 -1
  398. package/out/street/segment-schema.js +71 -21
  399. package/out/street/segment-schema.js.map +1 -1
  400. package/out/{street/index.js → street.d.ts} +2 -2
  401. package/out/street.d.ts.map +1 -0
  402. package/out/{street/index.d.ts → street.js} +2 -2
  403. package/out/street.js.map +1 -0
  404. package/out/types.d.ts +69 -138
  405. package/out/types.d.ts.map +1 -1
  406. package/out/types.js +0 -6
  407. package/out/types.js.map +1 -1
  408. package/out/unified-schema.d.ts +8 -12
  409. package/out/unified-schema.d.ts.map +1 -1
  410. package/out/unified-schema.js +29 -29
  411. package/out/unified-schema.js.map +1 -1
  412. package/out/uprn/existence.d.ts +28 -17
  413. package/out/uprn/existence.d.ts.map +1 -1
  414. package/out/uprn/existence.js +26 -16
  415. package/out/uprn/existence.js.map +1 -1
  416. package/out/uprn/lookup.d.ts +14 -44
  417. package/out/uprn/lookup.d.ts.map +1 -1
  418. package/out/uprn/lookup.js +20 -56
  419. package/out/uprn/lookup.js.map +1 -1
  420. package/out/uprn/schema.d.ts +18 -40
  421. package/out/uprn/schema.d.ts.map +1 -1
  422. package/out/uprn/schema.js +10 -32
  423. package/out/uprn/schema.js.map +1 -1
  424. package/out/{uprn/index.d.ts → uprn.d.ts} +1 -1
  425. package/out/uprn.d.ts.map +1 -0
  426. package/out/{uprn/index.js → uprn.js} +1 -1
  427. package/out/uprn.js.map +1 -0
  428. package/out/weights-overlay-linker.d.ts +132 -141
  429. package/out/weights-overlay-linker.d.ts.map +1 -1
  430. package/out/weights-overlay-linker.js +86 -154
  431. package/out/weights-overlay-linker.js.map +1 -1
  432. package/package.json +88 -593
  433. package/lib/address/point/index.ts +0 -328
  434. package/lib/convention/index.ts +0 -154
  435. package/lib/fts/index.ts +0 -361
  436. package/out/address/index.d.ts.map +0 -1
  437. package/out/address/index.js.map +0 -1
  438. package/out/address/point/index.d.ts +0 -53
  439. package/out/address/point/index.d.ts.map +0 -1
  440. package/out/address/point/index.js +0 -222
  441. package/out/address/point/index.js.map +0 -1
  442. package/out/ancestry/index.d.ts +0 -45
  443. package/out/ancestry/index.d.ts.map +0 -1
  444. package/out/ancestry/index.js +0 -55
  445. package/out/ancestry/index.js.map +0 -1
  446. package/out/convention/index.d.ts +0 -106
  447. package/out/convention/index.d.ts.map +0 -1
  448. package/out/convention/index.js +0 -93
  449. package/out/convention/index.js.map +0 -1
  450. package/out/fst/index.d.ts.map +0 -1
  451. package/out/fst/index.js.map +0 -1
  452. package/out/fts/index.d.ts +0 -184
  453. package/out/fts/index.d.ts.map +0 -1
  454. package/out/fts/index.js +0 -277
  455. package/out/fts/index.js.map +0 -1
  456. package/out/geonames/index.d.ts.map +0 -1
  457. package/out/geonames/index.js.map +0 -1
  458. package/out/nsul/index.d.ts.map +0 -1
  459. package/out/nsul/index.js.map +0 -1
  460. package/out/poi/index.d.ts.map +0 -1
  461. package/out/poi/index.js.map +0 -1
  462. package/out/postal/index.d.ts.map +0 -1
  463. package/out/postal/index.js.map +0 -1
  464. package/out/street/centroid/index.d.ts +0 -40
  465. package/out/street/centroid/index.d.ts.map +0 -1
  466. package/out/street/centroid/index.js.map +0 -1
  467. package/out/street/index.d.ts.map +0 -1
  468. package/out/street/index.js.map +0 -1
  469. package/out/uprn/index.d.ts.map +0 -1
  470. package/out/uprn/index.js.map +0 -1
  471. /package/lib/{fst/index.ts → fst.ts} +0 -0
  472. /package/lib/{geonames/index.ts → geonames.ts} +0 -0
  473. /package/lib/{nsul/index.ts → nsul.ts} +0 -0
  474. /package/lib/{poi/index.ts → poi.ts} +0 -0
  475. /package/lib/{postal/index.ts → postal.ts} +0 -0
  476. /package/lib/{uprn/index.ts → uprn.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"coincident-roles.js","sourceRoot":"","sources":["../lib/coincident-roles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coincident-roles.js","sourceRoot":"","sources":["../lib/coincident-roles.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
6
  * Typed schema for the convention asset — the `address_convention` table `SqliteConventionSource` probes, plus the
7
- * `meta` provenance row every sealed artifact here carries. The interface is the read/write contract and
7
+ * `meta` provenance row every sealed artifact here includes. The interface is the read/write interface and
8
8
  * {@link createAddressConventionTable} creates the table, so a column added to one is a compile error against the
9
9
  * other.
10
10
  */
@@ -15,7 +15,9 @@ import type { Kysely } from "kysely";
15
15
  export interface AddressConventionTable {
16
16
  wof_id: number;
17
17
  /**
18
- * The `Convention` record, JSON-encoded. Parsed at read time by `SqliteConventionSource`.
18
+ * The `Convention` record, JSON-encoded.
19
+ *
20
+ * Parsed at read time by `SqliteConventionSource`.
19
21
  */
20
22
  convention: string;
21
23
  /**
@@ -35,13 +37,17 @@ export interface ConventionDatabase {
35
37
  meta: ConventionMetaTable;
36
38
  }
37
39
  /**
38
- * The slice of a Kysely handle the convention DDL touches. Kysely is invariant in its schema parameter, so naming only
39
- * `schema` lets a builder holding a wider handle pass it without a cast.
40
+ * The subset of a Kysely handle the convention DDL touches.
41
+ *
42
+ * Kysely is invariant in its schema parameter, so naming only `schema` lets a
43
+ * builder holding a wider handle pass it without a cast.
40
44
  */
41
45
  export type ConventionSchemaHandle = Pick<Kysely<ConventionDatabase>, "schema">;
42
46
  /**
43
- * Create `address_convention`. The table name comes from {@link ADDRESS_CONVENTION_TABLE} so the build script, the
44
- * runtime source, and the extract auto-detect cannot drift apart.
47
+ * Create `address_convention`.
48
+ *
49
+ * The table name comes from {@link ADDRESS_CONVENTION_TABLE} so the build script, the runtime source.
50
+ * The extract auto-detect stays aligned with it.
45
51
  */
46
52
  export declare function createAddressConventionTable(db: ConventionSchemaHandle): Promise<void>;
47
53
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../lib/convention/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAIpC;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,MAAM,EAAE,MAAM,CAAA;IACd;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CACpB;AAED,MAAM,WAAW,kBAAkB;IAClC,kBAAkB,EAAE,sBAAsB,CAAA;IAC1C,IAAI,EAAE,mBAAmB,CAAA;CACzB;AAED;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,CAAA;AAE/E;;;GAGG;AACH,wBAAsB,4BAA4B,CAAC,EAAE,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAO5F;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAAC,EAAE,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAMzF"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../lib/convention/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAIpC;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,MAAM,EAAE,MAAM,CAAA;IACd;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CACpB;AAED,MAAM,WAAW,kBAAkB;IAClC,kBAAkB,EAAE,sBAAsB,CAAA;IAC1C,IAAI,EAAE,mBAAmB,CAAA;CACzB;AAED;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,CAAA;AAE/E;;;;;GAKG;AACH,wBAAsB,4BAA4B,CAAC,EAAE,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAO5F;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAAC,EAAE,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAMzF"}
@@ -4,14 +4,16 @@
4
4
  * @author Teffen Ellis, et al.
5
5
  *
6
6
  * Typed schema for the convention asset — the `address_convention` table `SqliteConventionSource` probes, plus the
7
- * `meta` provenance row every sealed artifact here carries. The interface is the read/write contract and
7
+ * `meta` provenance row every sealed artifact here includes. The interface is the read/write interface and
8
8
  * {@link createAddressConventionTable} creates the table, so a column added to one is a compile error against the
9
9
  * other.
10
10
  */
11
- import { ADDRESS_CONVENTION_TABLE } from "#convention/index";
11
+ import { ADDRESS_CONVENTION_TABLE } from "#convention";
12
12
  /**
13
- * Create `address_convention`. The table name comes from {@link ADDRESS_CONVENTION_TABLE} so the build script, the
14
- * runtime source, and the extract auto-detect cannot drift apart.
13
+ * Create `address_convention`.
14
+ *
15
+ * The table name comes from {@link ADDRESS_CONVENTION_TABLE} so the build script, the runtime source.
16
+ * The extract auto-detect stays aligned with it.
15
17
  */
16
18
  export async function createAddressConventionTable(db) {
17
19
  await db.schema
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../lib/convention/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAA;AAoC5D;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,EAA0B;IAC5E,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,wBAAwB,CAAC;SACrC,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;SAC/D,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;SAC7D,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;SACzD,OAAO,EAAE,CAAA;AACZ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,EAA0B;IACzE,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,MAAM,CAAC;SACnB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;SACzD,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;SAC1B,OAAO,EAAE,CAAA;AACZ,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../lib/convention/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAwCtD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,EAA0B;IAC5E,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,wBAAwB,CAAC;SACrC,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;SAC/D,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;SAC7D,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;SACzD,OAAO,EAAE,CAAA;AACZ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,EAA0B;IACzE,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,MAAM,CAAC;SACnB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;SACzD,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;SAC1B,OAAO,EAAE,CAAA;AACZ,CAAC"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ * @file Defines resolution conventions as per-polygon profiles merged along a place's ancestor chain.
6
+ *
7
+ * The strategy implementations live in `lookup.ts` and are registered by name.
8
+ */
9
+ import type { FindPlaceQuery, PlaceCandidate } from "#types";
10
+ /**
11
+ * Soft-scoring weights for the `postcode_area_resolution` strategy: `pc·S_pc + name·S_name + pop·S_pop`.
12
+ */
13
+ export interface ScoringWeights {
14
+ pc: number;
15
+ name: number;
16
+ pop: number;
17
+ }
18
+ /**
19
+ * A resolution profile attached to a Who's On First admin polygon.
20
+ */
21
+ export interface Convention {
22
+ /**
23
+ * The strategies that the dispatcher runs in order, by registered name.
24
+ * The first strategy that returns a non-null result wins.
25
+ */
26
+ candidateStrategies?: string[];
27
+ /**
28
+ * Weights for the `postcode_area_resolution` soft score.
29
+ *
30
+ * A layer may set some weights and inherit the rest from the layers below it.
31
+ */
32
+ scoringWeights?: Partial<ScoringWeights>;
33
+ }
34
+ /**
35
+ * A convention with every field set, as `resolveConvention` returns it to strategies.
36
+ */
37
+ export interface ResolvedConvention {
38
+ candidateStrategies: string[];
39
+ scoringWeights: ScoringWeights;
40
+ }
41
+ /**
42
+ * The base layer that every ancestor chain starts from.
43
+ *
44
+ * It tries `postcode_area_resolution` and then falls back to fuzzy name matching.
45
+ * Every place without a convention override uses these values, so a change here
46
+ * changes resolution in every such country.
47
+ */
48
+ export declare const WORLD_DEFAULT: ResolvedConvention;
49
+ /**
50
+ * The names of the strategies that the backend registers.
51
+ *
52
+ * The dispatch registry and the build-time validator share this list, so the build
53
+ * rejects a convention that lists an unknown strategy.
54
+ */
55
+ export declare const BUILTIN_STRATEGY_NAMES: readonly ["postcode_area_resolution", "fallback_fuzzy_name_match"];
56
+ /**
57
+ * The table name for the convention asset, shared by the build script,
58
+ * the runtime source and extract detection.
59
+ */
60
+ export declare const ADDRESS_CONVENTION_TABLE = "address_convention";
61
+ /**
62
+ * A resolution strategy selected by name.
63
+ *
64
+ * @returns `null` to abstain, so the dispatcher tries the next strategy,
65
+ * or an array, possibly empty, to claim the result.
66
+ */
67
+ export type Strategy = (query: FindPlaceQuery, convention: ResolvedConvention) => Promise<PlaceCandidate[] | null>;
68
+ /**
69
+ * Looks up a convention by WOF polygon id.
70
+ * `get` returns `undefined` when the polygon has no override.
71
+ */
72
+ export interface ConventionSource {
73
+ get(wofID: number): Convention | undefined;
74
+ }
75
+ /**
76
+ * An in-memory convention source built from a `{ wofID: Convention }` map.
77
+ */
78
+ export declare class SeedConventionSource implements ConventionSource {
79
+ #private;
80
+ constructor(rows?: Record<number, Convention>);
81
+ get(wofID: number): Convention | undefined;
82
+ }
83
+ /**
84
+ * Merges convention layers, with later, more specific layers winning per field.
85
+ *
86
+ * A layer's `candidateStrategies` replaces the whole list.
87
+ * `scoringWeights` merges key by key, so a layer can change one weight without restating the others.
88
+ */
89
+ export declare function mergeConventions(base: Convention, ...overrides: Array<Convention | undefined>): Convention;
90
+ /**
91
+ * Resolves the effective convention for a place from its ancestor ids,
92
+ * ordered from most general to most specific.
93
+ *
94
+ * The merge starts from `WORLD_DEFAULT`, so every field is defined.
95
+ */
96
+ export declare function resolveConvention(source: ConventionSource, ancestorIDs: readonly number[]): ResolvedConvention;
97
+ //# sourceMappingURL=convention.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convention.d.ts","sourceRoot":"","sources":["../lib/convention.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAE5D;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACX;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IAC1B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC9B;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,mBAAmB,EAAE,MAAM,EAAE,CAAA;IAC7B,cAAc,EAAE,cAAc,CAAA;CAC9B;AAED;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,kBAG3B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,YAAI,0BAA0B,EAAE,2BAA2B,CAAU,CAAA;AAExG;;;GAGG;AACH,eAAO,MAAM,wBAAwB,uBAAuB,CAAA;AAE5D;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,kBAAkB,KAAK,OAAO,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAAA;AAElH;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAChC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAA;CAC1C;AAED;;GAEG;AACH,qBAAa,oBAAqB,YAAW,gBAAgB;;IAG5D,YAAY,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAM,EAEhD;IAED,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAEzC;CACD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,UAAU,CAmB1G;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,EAAE,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,kBAAkB,CAQ9G"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * @copyright Sister Software
3
+ * @license AGPL-3.0
4
+ * @author Teffen Ellis, et al.
5
+ * @file Defines resolution conventions as per-polygon profiles merged along a place's ancestor chain.
6
+ *
7
+ * The strategy implementations live in `lookup.ts` and are registered by name.
8
+ */
9
+ /**
10
+ * The base layer that every ancestor chain starts from.
11
+ *
12
+ * It tries `postcode_area_resolution` and then falls back to fuzzy name matching.
13
+ * Every place without a convention override uses these values, so a change here
14
+ * changes resolution in every such country.
15
+ */
16
+ export const WORLD_DEFAULT = {
17
+ candidateStrategies: ["postcode_area_resolution", "fallback_fuzzy_name_match"],
18
+ scoringWeights: { pc: 0.6, name: 0.3, pop: 0.1 },
19
+ };
20
+ /**
21
+ * The names of the strategies that the backend registers.
22
+ *
23
+ * The dispatch registry and the build-time validator share this list, so the build
24
+ * rejects a convention that lists an unknown strategy.
25
+ */
26
+ export const BUILTIN_STRATEGY_NAMES = ["postcode_area_resolution", "fallback_fuzzy_name_match"];
27
+ /**
28
+ * The table name for the convention asset, shared by the build script,
29
+ * the runtime source and extract detection.
30
+ */
31
+ export const ADDRESS_CONVENTION_TABLE = "address_convention";
32
+ /**
33
+ * An in-memory convention source built from a `{ wofID: Convention }` map.
34
+ */
35
+ export class SeedConventionSource {
36
+ #rows;
37
+ constructor(rows = {}) {
38
+ this.#rows = new Map(Object.entries(rows).map(([k, v]) => [Number(k), v]));
39
+ }
40
+ get(wofID) {
41
+ return this.#rows.get(wofID);
42
+ }
43
+ }
44
+ /**
45
+ * Merges convention layers, with later, more specific layers winning per field.
46
+ *
47
+ * A layer's `candidateStrategies` replaces the whole list.
48
+ * `scoringWeights` merges key by key, so a layer can change one weight without restating the others.
49
+ */
50
+ export function mergeConventions(base, ...overrides) {
51
+ const out = {
52
+ candidateStrategies: base.candidateStrategies ? [...base.candidateStrategies] : undefined,
53
+ scoringWeights: base.scoringWeights ? { ...base.scoringWeights } : undefined,
54
+ };
55
+ for (const o of overrides) {
56
+ if (!o)
57
+ continue;
58
+ if (o.candidateStrategies !== undefined) {
59
+ out.candidateStrategies = [...o.candidateStrategies];
60
+ }
61
+ if (o.scoringWeights !== undefined) {
62
+ out.scoringWeights = { ...(out.scoringWeights ?? WORLD_DEFAULT.scoringWeights), ...o.scoringWeights };
63
+ }
64
+ }
65
+ return out;
66
+ }
67
+ /**
68
+ * Resolves the effective convention for a place from its ancestor ids,
69
+ * ordered from most general to most specific.
70
+ *
71
+ * The merge starts from `WORLD_DEFAULT`, so every field is defined.
72
+ */
73
+ export function resolveConvention(source, ancestorIDs) {
74
+ const layers = ancestorIDs.map((id) => source.get(id));
75
+ const merged = mergeConventions(WORLD_DEFAULT, ...layers);
76
+ return {
77
+ candidateStrategies: merged.candidateStrategies ?? WORLD_DEFAULT.candidateStrategies,
78
+ scoringWeights: { ...WORLD_DEFAULT.scoringWeights, ...merged.scoringWeights },
79
+ };
80
+ }
81
+ //# sourceMappingURL=convention.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convention.js","sourceRoot":"","sources":["../lib/convention.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAsCH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,aAAa,GAAuB;IAChD,mBAAmB,EAAE,CAAC,0BAA0B,EAAE,2BAA2B,CAAC;IAC9E,cAAc,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;CAChD,CAAA;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,0BAA0B,EAAE,2BAA2B,CAAU,CAAA;AAExG;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,oBAAoB,CAAA;AAkB5D;;GAEG;AACH,MAAM,OAAO,oBAAoB;IACvB,KAAK,CAAyB;IAEvC,YAAY,IAAI,GAA+B,EAAE;QAChD,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3E,CAAC;IAED,GAAG,CAAC,KAAa;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAC7B,CAAC;CACD;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAgB,EAAE,GAAG,SAAwC;IAC7F,MAAM,GAAG,GAAe;QACvB,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,SAAS;QACzF,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS;KAC5E,CAAA;IAED,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC;YAAE,SAAQ;QAEhB,IAAI,CAAC,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACzC,GAAG,CAAC,mBAAmB,GAAG,CAAC,GAAG,CAAC,CAAC,mBAAmB,CAAC,CAAA;QACrD,CAAC;QAED,IAAI,CAAC,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACpC,GAAG,CAAC,cAAc,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,cAAc,IAAI,aAAa,CAAC,cAAc,CAAC,EAAE,GAAG,CAAC,CAAC,cAAc,EAAE,CAAA;QACtG,CAAC;IACF,CAAC;IAED,OAAO,GAAG,CAAA;AACX,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAwB,EAAE,WAA8B;IACzF,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;IACtD,MAAM,MAAM,GAAG,gBAAgB,CAAC,aAAa,EAAE,GAAG,MAAM,CAAC,CAAA;IAEzD,OAAO;QACN,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,IAAI,aAAa,CAAC,mBAAmB;QACpF,cAAc,EAAE,EAAE,GAAG,aAAa,CAAC,cAAc,EAAE,GAAG,MAAM,CAAC,cAAc,EAAE;KAC7E,CAAA;AACF,CAAC"}
@@ -2,64 +2,54 @@
2
2
  * @copyright Sister Software
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
+ * @file Schema and read/write helpers for the candidate gazetteer's coverage manifest.
5
6
  *
6
- * Typed schema + read/write helpers for the candidate gazetteer's COVERAGE MANIFEST — the two
7
- * country-keyed tables through which the artifact declares facts about ITSELF, so those facts are
8
- * updated at gazetteer REBUILD, not by a hand-edited code PR after someone remembers:
9
- *
10
- * - `country_coverage`: the hard-country-filter coverage record (#743/#194) — per-country
11
- * promotion-eval verdicts + the measured hard-resolve rates that used to live in a code comment on
12
- * `HARD_PLACE_COUNTRY_SAFELIST`. Presence = measured; `hard_filter_safe = 0` = measured and
13
- * FAILED the check (FI 69.5%, PL 77.8%) — distinguishable from a country never measured at all
14
- * (the meaning-of-zero rule, `docs/engineering/reference/layer-contract.mdx`).
15
- * - `country_bbox`: the coarse guard-B plausibility boxes that used to live in
16
- * `resolver/plausibility.ts`'s `COUNTRY_BBOX`. An absent row fails open (never trips the guard),
17
- * exactly like an absent key in the constant.
18
- *
19
- * Emission happens at build time (`mailwoman/gazetteer-pipeline/coverage-manifest.ts` owns the
20
- * measured record and calls {@link writeGazetteerCoverageManifest} before the DB is sealed — never
21
- * patch a shipped DB, rebuild). The read happens at open time ({@link WOFCandidateTableLookup}
22
- * calls {@link readGazetteerCoverageManifest} in its constructor); an artifact that predates the
23
- * manifest returns `undefined` and every consumer falls back to the code constants byte-identically.
7
+ * The manifest holds two country-keyed tables. `country_coverage` records each measured country's hard-filter
8
+ * verdict. A missing row means the country was never measured. `hard_filter_safe = 0` means measurement found the
9
+ * filter unsafe. `country_bbox` holds coarse plausibility boxes. A missing bbox row never trips the guard.
24
10
  */
25
11
  import { type CountryBBoxFact, type CountryCoverageFact, type GazetteerArtifactCoverage } from "@mailwoman/core/resolver";
26
12
  import type { DatabaseClient } from "@mailwoman/sqlite/client";
27
13
  import { type Kysely } from "kysely";
28
14
  /**
29
- * One country's hard-filter coverage measurement — the storage form of {@link CountryCoverageFact}.
15
+ * The stored form of {@link CountryCoverageFact}, one row per country.
30
16
  */
31
17
  export interface CountryCoverageTable {
32
18
  /**
33
- * ISO 3166-1 alpha-2, uppercase (PK).
19
+ * The upper-case ISO 3166-1 alpha-2 code.
20
+ * This field is the primary key.
34
21
  */
35
22
  country: string;
36
23
  /**
37
- * 0/1 — the promotion-eval verdict (a verdict column, NOT re-derived from the rate; see the fact type's docstring).
24
+ * The promotion-eval verdict as 0 or 1.
25
+ *
26
+ * It is stored directly because the rate by itself does not decide it.
38
27
  */
39
28
  hard_filter_safe: number;
40
29
  /**
41
- * Measured hard-resolve rate 0..1 on the panel named in `source`; NULL when the receipt recorded none.
30
+ * The hard-resolve rate from 0 to 1 on the panel given in `source`, or NULL when none was recorded.
42
31
  */
43
32
  hard_resolve_rate: number | null;
44
33
  /**
45
- * Panel size behind `hard_resolve_rate`; NULL when unrecorded.
34
+ * The panel size behind `hard_resolve_rate`, or NULL when none was recorded.
46
35
  */
47
36
  sample_size: number | null;
48
37
  /**
49
- * ISO-8601 date of the measurement / promote eval.
38
+ * The ISO 8601 date of the measurement.
50
39
  */
51
40
  measured_at: string;
52
41
  /**
53
- * The receipt: which panel/check produced this row.
42
+ * The panel or check that produced this row.
54
43
  */
55
44
  source: string;
56
45
  }
57
46
  /**
58
- * One country's coarse guard-B bounding box — the storage form of {@link CountryBBoxFact}.
47
+ * The stored form of {@link CountryBBoxFact}, one coarse bounding box per country.
59
48
  */
60
49
  export interface CountryBBoxTable {
61
50
  /**
62
- * ISO 3166-1 alpha-2, uppercase (PK).
51
+ * The upper-case ISO 3166-1 alpha-2 code.
52
+ * This field is the primary key.
63
53
  */
64
54
  country: string;
65
55
  lat_min: number;
@@ -67,7 +57,7 @@ export interface CountryBBoxTable {
67
57
  lon_min: number;
68
58
  lon_max: number;
69
59
  /**
70
- * Provenance of the box (harness + date).
60
+ * The provenance of the box.
71
61
  */
72
62
  source: string;
73
63
  }
@@ -79,34 +69,39 @@ export interface GazetteerCoverageDatabase {
79
69
  country_bbox: CountryBBoxTable;
80
70
  }
81
71
  /**
82
- * Table names the lookup probes (existence-restricted, so a candidate.db built before the manifest is byte-stable).
72
+ * The name of the per-country coverage table.
73
+ * Readers check that it exists before querying it.
83
74
  */
84
75
  export declare const COUNTRY_COVERAGE_TABLE = "country_coverage";
85
76
  /**
86
- * Table of per-country bounding boxes, used to reject a placement that fell outside its own country.
77
+ * The name of the per-country bounding-box table, used to reject a placement outside its own country.
87
78
  */
88
79
  export declare const COUNTRY_BBOX_TABLE = "country_bbox";
89
80
  /**
90
- * Create `country_coverage` — a handful of small PK-probed rows, the WITHOUT ROWID sweet spot.
81
+ * Creates the `country_coverage` table as a `WITHOUT ROWID` table keyed by country.
91
82
  */
92
83
  export declare function createCountryCoverageTable(db: Kysely<GazetteerCoverageDatabase>): Promise<void>;
93
84
  /**
94
- * Create `country_bbox` — same shape discipline as {@link createCountryCoverageTable}.
85
+ * Creates the `country_bbox` table as a `WITHOUT ROWID` table keyed by country.
95
86
  */
96
87
  export declare function createCountryBBoxTable(db: Kysely<GazetteerCoverageDatabase>): Promise<void>;
97
88
  /**
98
- * Write the coverage manifest into a candidate DB UNDER CONSTRUCTION (pre-seal — a shipped DB is never patched, rebuild
99
- * instead). Creates both tables and inserts the facts; call exactly once, from the gazetteer build.
89
+ * Creates both manifest tables in a candidate database under construction and inserts the facts.
90
+ *
91
+ * The gazetteer build calls it once.
92
+ * A shipped database is rebuilt instead of patched.
100
93
  */
101
94
  export declare function writeGazetteerCoverageManifest(db: Kysely<GazetteerCoverageDatabase>, facts: {
102
95
  coverage: readonly CountryCoverageFact[];
103
96
  bboxes: readonly CountryBBoxFact[];
104
97
  }): Promise<void>;
105
98
  /**
106
- * Read the coverage manifest from an OPEN candidate DB, or `undefined` when the artifact predates it (neither table
107
- * present) — the signal for consumers to fall back to the code constants byte-identically. Synchronous raw reads on
108
- * purpose: this runs inside {@link WOFCandidateTableLookup}'s synchronous constructor (the sync-reader carve-out in
109
- * `AGENTS.md`), and the tables are a few dozen rows read once per open.
99
+ * Reads the coverage manifest from an open candidate database.
100
+ *
101
+ * It returns `undefined` when neither table exists.
102
+ * Consumers then fall back to the code constants.
103
+ *
104
+ * The reads are synchronous because the candidate lookup calls this from its constructor.
110
105
  */
111
106
  export declare function readGazetteerCoverageManifest<DB>(db: DatabaseClient<DB>): GazetteerArtifactCoverage | undefined;
112
107
  //# sourceMappingURL=coverage-manifest-schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"coverage-manifest-schema.d.ts","sourceRoot":"","sources":["../lib/coverage-manifest-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAEN,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,MAAM,0BAA0B,CAAA;AAEjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAO,KAAK,MAAM,EAAE,MAAM,QAAQ,CAAA;AAIzC;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC;;OAEG;IACH,OAAO,EAAE,MAAM,CAAA;IACf;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAA;IACxB;;OAEG;IACH,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC;;OAEG;IACH,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC;;OAEG;IACH,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACzC,gBAAgB,EAAE,oBAAoB,CAAA;IACtC,YAAY,EAAE,gBAAgB,CAAA;CAC9B;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,qBAAqB,CAAA;AACxD;;GAEG;AACH,eAAO,MAAM,kBAAkB,iBAAiB,CAAA;AAEhD;;GAEG;AACH,wBAAsB,0BAA0B,CAAC,EAAE,EAAE,MAAM,CAAC,yBAAyB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAarG;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,EAAE,EAAE,MAAM,CAAC,yBAAyB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAYjG;AAED;;;GAGG;AACH,wBAAsB,8BAA8B,CACnD,EAAE,EAAE,MAAM,CAAC,yBAAyB,CAAC,EACrC,KAAK,EAAE;IAAE,QAAQ,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAAC,MAAM,EAAE,SAAS,eAAe,EAAE,CAAA;CAAE,GACrF,OAAO,CAAC,IAAI,CAAC,CAmCf;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,GAAG,yBAAyB,GAAG,SAAS,CAuD/G"}
1
+ {"version":3,"file":"coverage-manifest-schema.d.ts","sourceRoot":"","sources":["../lib/coverage-manifest-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAEN,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,MAAM,0BAA0B,CAAA;AAEjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAO,KAAK,MAAM,EAAE,MAAM,QAAQ,CAAA;AAIzC;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAA;IACf;;;;OAIG;IACH,gBAAgB,EAAE,MAAM,CAAA;IACxB;;OAEG;IACH,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC;;OAEG;IACH,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACzC,gBAAgB,EAAE,oBAAoB,CAAA;IACtC,YAAY,EAAE,gBAAgB,CAAA;CAC9B;AAED;;;GAGG;AACH,eAAO,MAAM,sBAAsB,qBAAqB,CAAA;AACxD;;GAEG;AACH,eAAO,MAAM,kBAAkB,iBAAiB,CAAA;AAEhD;;GAEG;AACH,wBAAsB,0BAA0B,CAAC,EAAE,EAAE,MAAM,CAAC,yBAAyB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAarG;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,EAAE,EAAE,MAAM,CAAC,yBAAyB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAYjG;AAED;;;;;GAKG;AACH,wBAAsB,8BAA8B,CACnD,EAAE,EAAE,MAAM,CAAC,yBAAyB,CAAC,EACrC,KAAK,EAAE;IAAE,QAAQ,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAAC,MAAM,EAAE,SAAS,eAAe,EAAE,CAAA;CAAE,GACrF,OAAO,CAAC,IAAI,CAAC,CAmCf;AAED;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,GAAG,yBAAyB,GAAG,SAAS,CAuD/G"}
@@ -2,40 +2,27 @@
2
2
  * @copyright Sister Software
3
3
  * @license AGPL-3.0
4
4
  * @author Teffen Ellis, et al.
5
+ * @file Schema and read/write helpers for the candidate gazetteer's coverage manifest.
5
6
  *
6
- * Typed schema + read/write helpers for the candidate gazetteer's COVERAGE MANIFEST — the two
7
- * country-keyed tables through which the artifact declares facts about ITSELF, so those facts are
8
- * updated at gazetteer REBUILD, not by a hand-edited code PR after someone remembers:
9
- *
10
- * - `country_coverage`: the hard-country-filter coverage record (#743/#194) — per-country
11
- * promotion-eval verdicts + the measured hard-resolve rates that used to live in a code comment on
12
- * `HARD_PLACE_COUNTRY_SAFELIST`. Presence = measured; `hard_filter_safe = 0` = measured and
13
- * FAILED the check (FI 69.5%, PL 77.8%) — distinguishable from a country never measured at all
14
- * (the meaning-of-zero rule, `docs/engineering/reference/layer-contract.mdx`).
15
- * - `country_bbox`: the coarse guard-B plausibility boxes that used to live in
16
- * `resolver/plausibility.ts`'s `COUNTRY_BBOX`. An absent row fails open (never trips the guard),
17
- * exactly like an absent key in the constant.
18
- *
19
- * Emission happens at build time (`mailwoman/gazetteer-pipeline/coverage-manifest.ts` owns the
20
- * measured record and calls {@link writeGazetteerCoverageManifest} before the DB is sealed — never
21
- * patch a shipped DB, rebuild). The read happens at open time ({@link WOFCandidateTableLookup}
22
- * calls {@link readGazetteerCoverageManifest} in its constructor); an artifact that predates the
23
- * manifest returns `undefined` and every consumer falls back to the code constants byte-identically.
7
+ * The manifest holds two country-keyed tables. `country_coverage` records each measured country's hard-filter
8
+ * verdict. A missing row means the country was never measured. `hard_filter_safe = 0` means measurement found the
9
+ * filter unsafe. `country_bbox` holds coarse plausibility boxes. A missing bbox row never trips the guard.
24
10
  */
25
11
  import { hardCountrySafelistFromCoverage, } from "@mailwoman/core/resolver";
26
12
  import { allRows } from "@mailwoman/core/utils";
27
13
  import { sql } from "kysely";
28
14
  import { hasTable } from "#sqlite-utils";
29
15
  /**
30
- * Table names the lookup probes (existence-restricted, so a candidate.db built before the manifest is byte-stable).
16
+ * The name of the per-country coverage table.
17
+ * Readers check that it exists before querying it.
31
18
  */
32
19
  export const COUNTRY_COVERAGE_TABLE = "country_coverage";
33
20
  /**
34
- * Table of per-country bounding boxes, used to reject a placement that fell outside its own country.
21
+ * The name of the per-country bounding-box table, used to reject a placement outside its own country.
35
22
  */
36
23
  export const COUNTRY_BBOX_TABLE = "country_bbox";
37
24
  /**
38
- * Create `country_coverage` — a handful of small PK-probed rows, the WITHOUT ROWID sweet spot.
25
+ * Creates the `country_coverage` table as a `WITHOUT ROWID` table keyed by country.
39
26
  */
40
27
  export async function createCountryCoverageTable(db) {
41
28
  await db.schema
@@ -47,12 +34,12 @@ export async function createCountryCoverageTable(db) {
47
34
  .addColumn("sample_size", "integer")
48
35
  .addColumn("measured_at", "text", (c) => c.notNull())
49
36
  .addColumn("source", "text", (c) => c.notNull())
50
- // `WITHOUT ROWID` has no first-class builder; the raw modifier is the idiomatic fallback.
37
+ // Kysely has no builder method for `without rowid`.
51
38
  .modifyEnd(sql `without rowid`)
52
39
  .execute();
53
40
  }
54
41
  /**
55
- * Create `country_bbox` — same shape discipline as {@link createCountryCoverageTable}.
42
+ * Creates the `country_bbox` table as a `WITHOUT ROWID` table keyed by country.
56
43
  */
57
44
  export async function createCountryBBoxTable(db) {
58
45
  await db.schema
@@ -68,8 +55,10 @@ export async function createCountryBBoxTable(db) {
68
55
  .execute();
69
56
  }
70
57
  /**
71
- * Write the coverage manifest into a candidate DB UNDER CONSTRUCTION (pre-seal — a shipped DB is never patched, rebuild
72
- * instead). Creates both tables and inserts the facts; call exactly once, from the gazetteer build.
58
+ * Creates both manifest tables in a candidate database under construction and inserts the facts.
59
+ *
60
+ * The gazetteer build calls it once.
61
+ * A shipped database is rebuilt instead of patched.
73
62
  */
74
63
  export async function writeGazetteerCoverageManifest(db, facts) {
75
64
  await createCountryCoverageTable(db);
@@ -102,10 +91,12 @@ export async function writeGazetteerCoverageManifest(db, facts) {
102
91
  }
103
92
  }
104
93
  /**
105
- * Read the coverage manifest from an OPEN candidate DB, or `undefined` when the artifact predates it (neither table
106
- * present) — the signal for consumers to fall back to the code constants byte-identically. Synchronous raw reads on
107
- * purpose: this runs inside {@link WOFCandidateTableLookup}'s synchronous constructor (the sync-reader carve-out in
108
- * `AGENTS.md`), and the tables are a few dozen rows read once per open.
94
+ * Reads the coverage manifest from an open candidate database.
95
+ *
96
+ * It returns `undefined` when neither table exists.
97
+ * Consumers then fall back to the code constants.
98
+ *
99
+ * The reads are synchronous because the candidate lookup calls this from its constructor.
109
100
  */
110
101
  export function readGazetteerCoverageManifest(db) {
111
102
  const hasCoverage = hasTable(db, COUNTRY_COVERAGE_TABLE);
@@ -1 +1 @@
1
- {"version":3,"file":"coverage-manifest-schema.js","sourceRoot":"","sources":["../lib/coverage-manifest-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coverage-manifest-schema.js","sourceRoot":"","sources":["../lib/coverage-manifest-schema.ts"],"names":[],"mappings":"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"}