@mailwoman/resolver-wof-sqlite 10.0.0 → 10.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.
- package/README.md +9 -8
- package/lib/address/point/interpolation.ts +45 -39
- package/lib/address/point/schema.ts +17 -40
- package/lib/address/point.ts +316 -0
- package/lib/{address/index.ts → address.ts} +1 -1
- package/lib/ancestry/backfill.ts +20 -86
- package/lib/{ancestry/index.ts → ancestry.ts} +19 -15
- package/lib/build/candidate.ts +122 -174
- package/lib/build/population-corrections.ts +64 -0
- package/lib/build/slim.ts +44 -114
- package/lib/candidate/alias-bags.ts +16 -17
- package/lib/candidate/ancestors/schema.ts +77 -61
- package/lib/candidate/ancestors/sidecar.ts +15 -22
- package/lib/candidate/country-display-names.ts +6 -20
- package/lib/candidate/extract-fold.ts +10 -55
- package/lib/candidate/fts.ts +5 -23
- package/lib/candidate/importance.ts +65 -68
- package/lib/candidate/lookup.ts +124 -415
- package/lib/candidate/name-roles.ts +15 -33
- package/lib/candidate/own-name.ts +35 -32
- package/lib/candidate/place-attrs.ts +20 -13
- package/lib/candidate/schema.ts +29 -65
- package/lib/candidate/scoring.ts +54 -93
- package/lib/capital-schema.ts +21 -17
- package/lib/capitals.ts +29 -27
- package/lib/coincident-roles.ts +85 -55
- package/lib/convention/schema.ts +15 -16
- package/lib/convention.ts +144 -0
- package/lib/coverage-manifest-schema.ts +40 -45
- package/lib/currency-backfill.ts +34 -79
- package/lib/env.ts +1 -1
- package/lib/exact-match.ts +32 -21
- package/lib/extracts.ts +97 -74
- package/lib/fst/autocomplete.ts +54 -37
- package/lib/fst/builder.ts +37 -41
- package/lib/fst/deserialize-web.ts +16 -17
- package/lib/fst/format.ts +41 -23
- package/lib/fst/freshness.ts +43 -120
- package/lib/fst/matcher.ts +7 -5
- package/lib/fst/serialize.ts +54 -74
- package/lib/fst/types.ts +78 -75
- package/lib/{fst/index.ts → fst.ts} +1 -0
- package/lib/fts/query.ts +5 -36
- package/lib/fts.ts +280 -0
- package/lib/geonames/aliases.ts +73 -144
- package/lib/geonames/postal.ts +162 -71
- package/lib/index.ts +9 -8
- package/lib/interpolation.ts +48 -100
- package/lib/lookup.ts +155 -270
- package/lib/name-score.ts +9 -7
- package/lib/nsul/lookup.ts +37 -54
- package/lib/nsul/schema.ts +16 -43
- package/lib/paths.ts +159 -0
- package/lib/place-importance-schema.ts +62 -169
- package/lib/poi/lookup.ts +104 -121
- package/lib/poi/schema.ts +42 -26
- package/lib/polygon-schema.ts +10 -6
- package/lib/postal/city/alias/lookup.ts +22 -40
- package/lib/postal/city/alias/schema.ts +14 -10
- package/lib/postal/city/candidate-schema.ts +26 -20
- package/lib/postcode-point-lookup.ts +8 -27
- package/lib/primary-preference.ts +46 -126
- package/lib/proximity-rerank.ts +44 -33
- package/lib/ranking-weights.ts +105 -78
- package/lib/region-keys.ts +70 -42
- package/lib/reverse.ts +149 -86
- package/lib/schema.ts +73 -50
- package/lib/search-fetch.ts +90 -68
- package/lib/sqlite/convention-source.ts +15 -23
- package/lib/sqlite/utils.ts +19 -22
- package/lib/street/centroid/schema.ts +37 -42
- package/lib/street/{centroid/index.ts → centroid.ts} +16 -25
- package/lib/street/morphology/fst/builder.ts +60 -42
- package/lib/street/morphology/fst/loader.ts +40 -32
- package/lib/street/name-lookup.ts +45 -41
- package/lib/street/normalize.ts +88 -219
- package/lib/street/segment-schema.ts +116 -43
- package/lib/{street/index.ts → street.ts} +1 -1
- package/lib/types.ts +109 -150
- package/lib/unified-schema.ts +29 -29
- package/lib/uprn/existence.ts +30 -19
- package/lib/uprn/lookup.ts +29 -68
- package/lib/uprn/schema.ts +18 -40
- package/lib/weights-overlay-linker.ts +236 -252
- package/out/address/point/interpolation.d.ts +20 -23
- package/out/address/point/interpolation.d.ts.map +1 -1
- package/out/address/point/interpolation.js +42 -39
- package/out/address/point/interpolation.js.map +1 -1
- package/out/address/point/schema.d.ts +12 -35
- package/out/address/point/schema.d.ts.map +1 -1
- package/out/address/point/schema.js +3 -19
- package/out/address/point/schema.js.map +1 -1
- package/out/address/point.d.ts +57 -0
- package/out/address/point.d.ts.map +1 -0
- package/out/address/point.js +206 -0
- package/out/address/point.js.map +1 -0
- package/out/{address/index.js → address.d.ts} +2 -2
- package/out/address.d.ts.map +1 -0
- package/out/{address/index.d.ts → address.js} +2 -2
- package/out/address.js.map +1 -0
- package/out/ancestry/backfill.d.ts +11 -64
- package/out/ancestry/backfill.d.ts.map +1 -1
- package/out/ancestry/backfill.js +14 -74
- package/out/ancestry/backfill.js.map +1 -1
- package/out/ancestry.d.ts +49 -0
- package/out/ancestry.d.ts.map +1 -0
- package/out/ancestry.js +59 -0
- package/out/ancestry.js.map +1 -0
- package/out/build/candidate.d.ts +82 -112
- package/out/build/candidate.d.ts.map +1 -1
- package/out/build/candidate.js +17 -100
- package/out/build/candidate.js.map +1 -1
- package/out/build/population-corrections.d.ts +52 -0
- package/out/build/population-corrections.d.ts.map +1 -0
- package/out/build/population-corrections.js +40 -0
- package/out/build/population-corrections.js.map +1 -0
- package/out/build/slim.d.ts +8 -44
- package/out/build/slim.d.ts.map +1 -1
- package/out/build/slim.js +33 -94
- package/out/build/slim.js.map +1 -1
- package/out/candidate/alias-bags.d.ts +6 -6
- package/out/candidate/alias-bags.d.ts.map +1 -1
- package/out/candidate/alias-bags.js +16 -17
- package/out/candidate/alias-bags.js.map +1 -1
- package/out/candidate/ancestors/schema.d.ts +73 -57
- package/out/candidate/ancestors/schema.d.ts.map +1 -1
- package/out/candidate/ancestors/schema.js +56 -48
- package/out/candidate/ancestors/schema.js.map +1 -1
- package/out/candidate/ancestors/sidecar.d.ts +3 -8
- package/out/candidate/ancestors/sidecar.d.ts.map +1 -1
- package/out/candidate/ancestors/sidecar.js +15 -22
- package/out/candidate/ancestors/sidecar.js.map +1 -1
- package/out/candidate/country-display-names.d.ts +5 -15
- package/out/candidate/country-display-names.d.ts.map +1 -1
- package/out/candidate/country-display-names.js +6 -20
- package/out/candidate/country-display-names.js.map +1 -1
- package/out/candidate/extract-fold.d.ts +7 -15
- package/out/candidate/extract-fold.d.ts.map +1 -1
- package/out/candidate/extract-fold.js +5 -47
- package/out/candidate/extract-fold.js.map +1 -1
- package/out/candidate/fts.d.ts +5 -23
- package/out/candidate/fts.d.ts.map +1 -1
- package/out/candidate/fts.js +5 -23
- package/out/candidate/fts.js.map +1 -1
- package/out/candidate/importance.d.ts +60 -65
- package/out/candidate/importance.d.ts.map +1 -1
- package/out/candidate/importance.js +56 -63
- package/out/candidate/importance.js.map +1 -1
- package/out/candidate/lookup.d.ts +18 -55
- package/out/candidate/lookup.d.ts.map +1 -1
- package/out/candidate/lookup.js +82 -385
- package/out/candidate/lookup.js.map +1 -1
- package/out/candidate/name-roles.d.ts +9 -21
- package/out/candidate/name-roles.d.ts.map +1 -1
- package/out/candidate/name-roles.js +15 -33
- package/out/candidate/name-roles.js.map +1 -1
- package/out/candidate/own-name.d.ts +23 -25
- package/out/candidate/own-name.d.ts.map +1 -1
- package/out/candidate/own-name.js +35 -32
- package/out/candidate/own-name.js.map +1 -1
- package/out/candidate/place-attrs.d.ts +20 -13
- package/out/candidate/place-attrs.d.ts.map +1 -1
- package/out/candidate/place-attrs.js +4 -5
- package/out/candidate/place-attrs.js.map +1 -1
- package/out/candidate/schema.d.ts +27 -62
- package/out/candidate/schema.d.ts.map +1 -1
- package/out/candidate/schema.js +10 -22
- package/out/candidate/schema.js.map +1 -1
- package/out/candidate/scoring.d.ts +7 -8
- package/out/candidate/scoring.d.ts.map +1 -1
- package/out/candidate/scoring.js +52 -89
- package/out/candidate/scoring.js.map +1 -1
- package/out/capital-schema.d.ts +21 -17
- package/out/capital-schema.d.ts.map +1 -1
- package/out/capital-schema.js +17 -15
- package/out/capital-schema.js.map +1 -1
- package/out/capitals.d.ts +27 -25
- package/out/capitals.d.ts.map +1 -1
- package/out/capitals.js +23 -21
- package/out/capitals.js.map +1 -1
- package/out/coincident-roles.d.ts +60 -43
- package/out/coincident-roles.d.ts.map +1 -1
- package/out/coincident-roles.js +72 -50
- package/out/coincident-roles.js.map +1 -1
- package/out/convention/schema.d.ts +14 -14
- package/out/convention/schema.d.ts.map +1 -1
- package/out/convention/schema.js +6 -4
- package/out/convention/schema.js.map +1 -1
- package/out/convention.d.ts +97 -0
- package/out/convention.d.ts.map +1 -0
- package/out/convention.js +81 -0
- package/out/convention.js.map +1 -0
- package/out/coverage-manifest-schema.d.ts +34 -39
- package/out/coverage-manifest-schema.d.ts.map +1 -1
- package/out/coverage-manifest-schema.js +25 -34
- package/out/coverage-manifest-schema.js.map +1 -1
- package/out/currency-backfill.d.ts +16 -38
- package/out/currency-backfill.d.ts.map +1 -1
- package/out/currency-backfill.js +19 -46
- package/out/currency-backfill.js.map +1 -1
- package/out/env.d.ts +1 -1
- package/out/env.js +1 -1
- package/out/exact-match.d.ts +19 -10
- package/out/exact-match.d.ts.map +1 -1
- package/out/exact-match.js +32 -21
- package/out/exact-match.js.map +1 -1
- package/out/extracts.d.ts +66 -55
- package/out/extracts.d.ts.map +1 -1
- package/out/extracts.js +63 -55
- package/out/extracts.js.map +1 -1
- package/out/fst/autocomplete.d.ts +29 -21
- package/out/fst/autocomplete.d.ts.map +1 -1
- package/out/fst/autocomplete.js +39 -28
- package/out/fst/autocomplete.js.map +1 -1
- package/out/fst/builder.d.ts.map +1 -1
- package/out/fst/builder.js +37 -41
- package/out/fst/builder.js.map +1 -1
- package/out/fst/deserialize-web.d.ts +4 -4
- package/out/fst/deserialize-web.d.ts.map +1 -1
- package/out/fst/deserialize-web.js +15 -16
- package/out/fst/deserialize-web.js.map +1 -1
- package/out/fst/format.d.ts +41 -23
- package/out/fst/format.d.ts.map +1 -1
- package/out/fst/format.js +41 -23
- package/out/fst/format.js.map +1 -1
- package/out/fst/freshness.d.ts +19 -81
- package/out/fst/freshness.d.ts.map +1 -1
- package/out/fst/freshness.js +31 -94
- package/out/fst/freshness.js.map +1 -1
- package/out/fst/matcher.d.ts +5 -4
- package/out/fst/matcher.d.ts.map +1 -1
- package/out/fst/matcher.js +2 -2
- package/out/fst/matcher.js.map +1 -1
- package/out/fst/serialize.d.ts +28 -28
- package/out/fst/serialize.d.ts.map +1 -1
- package/out/fst/serialize.js +53 -71
- package/out/fst/serialize.js.map +1 -1
- package/out/fst/types.d.ts +78 -74
- package/out/fst/types.d.ts.map +1 -1
- package/out/fst/types.js +1 -4
- package/out/fst/types.js.map +1 -1
- package/out/{fst/index.js → fst.d.ts} +2 -1
- package/out/fst.d.ts.map +1 -0
- package/out/{fst/index.d.ts → fst.js} +2 -1
- package/out/fst.js.map +1 -0
- package/out/fts/query.d.ts +2 -27
- package/out/fts/query.d.ts.map +1 -1
- package/out/fts/query.js +5 -36
- package/out/fts/query.js.map +1 -1
- package/out/fts.d.ts +126 -0
- package/out/fts.d.ts.map +1 -0
- package/out/fts.js +188 -0
- package/out/fts.js.map +1 -0
- package/out/geonames/aliases.d.ts +26 -62
- package/out/geonames/aliases.d.ts.map +1 -1
- package/out/geonames/aliases.js +45 -117
- package/out/geonames/aliases.js.map +1 -1
- package/out/geonames/postal.d.ts +84 -44
- package/out/geonames/postal.d.ts.map +1 -1
- package/out/geonames/postal.js +115 -73
- package/out/geonames/postal.js.map +1 -1
- package/out/{geonames/index.js → geonames.d.ts} +1 -1
- package/out/geonames.d.ts.map +1 -0
- package/out/{geonames/index.d.ts → geonames.js} +1 -1
- package/out/geonames.js.map +1 -0
- package/out/index.d.ts +9 -8
- package/out/index.d.ts.map +1 -1
- package/out/index.js +6 -5
- package/out/index.js.map +1 -1
- package/out/interpolation.d.ts +18 -55
- package/out/interpolation.d.ts.map +1 -1
- package/out/interpolation.js +27 -69
- package/out/interpolation.js.map +1 -1
- package/out/lookup.d.ts +23 -51
- package/out/lookup.d.ts.map +1 -1
- package/out/lookup.js +136 -234
- package/out/lookup.js.map +1 -1
- package/out/name-score.d.ts +2 -2
- package/out/name-score.d.ts.map +1 -1
- package/out/name-score.js +9 -7
- package/out/name-score.js.map +1 -1
- package/out/nsul/lookup.d.ts +33 -34
- package/out/nsul/lookup.d.ts.map +1 -1
- package/out/nsul/lookup.js +26 -40
- package/out/nsul/lookup.js.map +1 -1
- package/out/nsul/schema.d.ts +16 -43
- package/out/nsul/schema.d.ts.map +1 -1
- package/out/nsul/schema.js +9 -35
- package/out/nsul/schema.js.map +1 -1
- package/out/{nsul/index.d.ts → nsul.d.ts} +1 -1
- package/out/nsul.d.ts.map +1 -0
- package/out/{nsul/index.js → nsul.js} +1 -1
- package/out/nsul.js.map +1 -0
- package/out/paths.d.ts +124 -0
- package/out/paths.d.ts.map +1 -0
- package/out/paths.js +104 -0
- package/out/paths.js.map +1 -0
- package/out/place-importance-schema.d.ts +51 -143
- package/out/place-importance-schema.d.ts.map +1 -1
- package/out/place-importance-schema.js +28 -143
- package/out/place-importance-schema.js.map +1 -1
- package/out/poi/lookup.d.ts +40 -47
- package/out/poi/lookup.d.ts.map +1 -1
- package/out/poi/lookup.js +69 -96
- package/out/poi/lookup.js.map +1 -1
- package/out/poi/schema.d.ts +41 -25
- package/out/poi/schema.d.ts.map +1 -1
- package/out/poi/schema.js +25 -17
- package/out/poi/schema.js.map +1 -1
- package/out/{poi/index.js → poi.d.ts} +1 -1
- package/out/poi.d.ts.map +1 -0
- package/out/{poi/index.d.ts → poi.js} +1 -1
- package/out/poi.js.map +1 -0
- package/out/polygon-schema.d.ts +10 -6
- package/out/polygon-schema.d.ts.map +1 -1
- package/out/polygon-schema.js +2 -2
- package/out/polygon-schema.js.map +1 -1
- package/out/postal/city/alias/lookup.d.ts +20 -23
- package/out/postal/city/alias/lookup.d.ts.map +1 -1
- package/out/postal/city/alias/lookup.js +17 -30
- package/out/postal/city/alias/lookup.js.map +1 -1
- package/out/postal/city/alias/schema.d.ts +14 -10
- package/out/postal/city/alias/schema.d.ts.map +1 -1
- package/out/postal/city/alias/schema.js +10 -8
- package/out/postal/city/alias/schema.js.map +1 -1
- package/out/postal/city/candidate-schema.d.ts +25 -19
- package/out/postal/city/candidate-schema.d.ts.map +1 -1
- package/out/postal/city/candidate-schema.js +21 -17
- package/out/postal/city/candidate-schema.js.map +1 -1
- package/out/{postal/index.d.ts → postal.d.ts} +1 -1
- package/out/postal.d.ts.map +1 -0
- package/out/{postal/index.js → postal.js} +1 -1
- package/out/postal.js.map +1 -0
- package/out/postcode-point-lookup.d.ts +6 -24
- package/out/postcode-point-lookup.d.ts.map +1 -1
- package/out/postcode-point-lookup.js +5 -17
- package/out/postcode-point-lookup.js.map +1 -1
- package/out/primary-preference.d.ts +38 -92
- package/out/primary-preference.d.ts.map +1 -1
- package/out/primary-preference.js +15 -99
- package/out/primary-preference.js.map +1 -1
- package/out/proximity-rerank.d.ts +41 -30
- package/out/proximity-rerank.d.ts.map +1 -1
- package/out/proximity-rerank.js +38 -29
- package/out/proximity-rerank.js.map +1 -1
- package/out/ranking-weights.d.ts +98 -64
- package/out/ranking-weights.d.ts.map +1 -1
- package/out/ranking-weights.js +26 -25
- package/out/ranking-weights.js.map +1 -1
- package/out/region-keys.d.ts +50 -31
- package/out/region-keys.d.ts.map +1 -1
- package/out/region-keys.js +68 -40
- package/out/region-keys.js.map +1 -1
- package/out/reverse.d.ts +78 -50
- package/out/reverse.d.ts.map +1 -1
- package/out/reverse.js +98 -61
- package/out/reverse.js.map +1 -1
- package/out/schema.d.ts +72 -49
- package/out/schema.d.ts.map +1 -1
- package/out/schema.js +4 -5
- package/out/schema.js.map +1 -1
- package/out/search-fetch.d.ts +16 -12
- package/out/search-fetch.d.ts.map +1 -1
- package/out/search-fetch.js +83 -63
- package/out/search-fetch.js.map +1 -1
- package/out/sqlite/convention-source.d.ts +12 -16
- package/out/sqlite/convention-source.d.ts.map +1 -1
- package/out/sqlite/convention-source.js +13 -22
- package/out/sqlite/convention-source.js.map +1 -1
- package/out/sqlite/utils.d.ts +19 -19
- package/out/sqlite/utils.d.ts.map +1 -1
- package/out/sqlite/utils.js +14 -15
- package/out/sqlite/utils.js.map +1 -1
- package/out/street/centroid/schema.d.ts +37 -42
- package/out/street/centroid/schema.d.ts.map +1 -1
- package/out/street/centroid/schema.js +9 -21
- package/out/street/centroid/schema.js.map +1 -1
- package/out/street/centroid.d.ts +30 -0
- package/out/street/centroid.d.ts.map +1 -0
- package/out/street/{centroid/index.js → centroid.js} +13 -24
- package/out/street/centroid.js.map +1 -0
- package/out/street/morphology/fst/builder.d.ts +20 -10
- package/out/street/morphology/fst/builder.d.ts.map +1 -1
- package/out/street/morphology/fst/builder.js +44 -34
- package/out/street/morphology/fst/builder.js.map +1 -1
- package/out/street/morphology/fst/loader.d.ts +33 -26
- package/out/street/morphology/fst/loader.d.ts.map +1 -1
- package/out/street/morphology/fst/loader.js +23 -22
- package/out/street/morphology/fst/loader.js.map +1 -1
- package/out/street/name-lookup.d.ts +24 -18
- package/out/street/name-lookup.d.ts.map +1 -1
- package/out/street/name-lookup.js +34 -35
- package/out/street/name-lookup.js.map +1 -1
- package/out/street/normalize.d.ts +35 -136
- package/out/street/normalize.d.ts.map +1 -1
- package/out/street/normalize.js +77 -194
- package/out/street/normalize.js.map +1 -1
- package/out/street/segment-schema.d.ts +79 -39
- package/out/street/segment-schema.d.ts.map +1 -1
- package/out/street/segment-schema.js +71 -21
- package/out/street/segment-schema.js.map +1 -1
- package/out/{street/index.js → street.d.ts} +2 -2
- package/out/street.d.ts.map +1 -0
- package/out/{street/index.d.ts → street.js} +2 -2
- package/out/street.js.map +1 -0
- package/out/types.d.ts +84 -149
- package/out/types.d.ts.map +1 -1
- package/out/types.js +0 -6
- package/out/types.js.map +1 -1
- package/out/unified-schema.d.ts +8 -12
- package/out/unified-schema.d.ts.map +1 -1
- package/out/unified-schema.js +29 -29
- package/out/unified-schema.js.map +1 -1
- package/out/uprn/existence.d.ts +28 -17
- package/out/uprn/existence.d.ts.map +1 -1
- package/out/uprn/existence.js +26 -16
- package/out/uprn/existence.js.map +1 -1
- package/out/uprn/lookup.d.ts +14 -44
- package/out/uprn/lookup.d.ts.map +1 -1
- package/out/uprn/lookup.js +21 -57
- package/out/uprn/lookup.js.map +1 -1
- package/out/uprn/schema.d.ts +18 -40
- package/out/uprn/schema.d.ts.map +1 -1
- package/out/uprn/schema.js +10 -32
- package/out/uprn/schema.js.map +1 -1
- package/out/{uprn/index.d.ts → uprn.d.ts} +1 -1
- package/out/uprn.d.ts.map +1 -0
- package/out/{uprn/index.js → uprn.js} +1 -1
- package/out/uprn.js.map +1 -0
- package/out/weights-overlay-linker.d.ts +138 -144
- package/out/weights-overlay-linker.d.ts.map +1 -1
- package/out/weights-overlay-linker.js +105 -159
- package/out/weights-overlay-linker.js.map +1 -1
- package/package.json +91 -596
- package/lib/address/point/index.ts +0 -328
- package/lib/convention/index.ts +0 -154
- package/lib/fts/index.ts +0 -361
- package/out/address/index.d.ts.map +0 -1
- package/out/address/index.js.map +0 -1
- package/out/address/point/index.d.ts +0 -53
- package/out/address/point/index.d.ts.map +0 -1
- package/out/address/point/index.js +0 -222
- package/out/address/point/index.js.map +0 -1
- package/out/ancestry/index.d.ts +0 -45
- package/out/ancestry/index.d.ts.map +0 -1
- package/out/ancestry/index.js +0 -55
- package/out/ancestry/index.js.map +0 -1
- package/out/convention/index.d.ts +0 -106
- package/out/convention/index.d.ts.map +0 -1
- package/out/convention/index.js +0 -93
- package/out/convention/index.js.map +0 -1
- package/out/fst/index.d.ts.map +0 -1
- package/out/fst/index.js.map +0 -1
- package/out/fts/index.d.ts +0 -184
- package/out/fts/index.d.ts.map +0 -1
- package/out/fts/index.js +0 -277
- package/out/fts/index.js.map +0 -1
- package/out/geonames/index.d.ts.map +0 -1
- package/out/geonames/index.js.map +0 -1
- package/out/nsul/index.d.ts.map +0 -1
- package/out/nsul/index.js.map +0 -1
- package/out/poi/index.d.ts.map +0 -1
- package/out/poi/index.js.map +0 -1
- package/out/postal/index.d.ts.map +0 -1
- package/out/postal/index.js.map +0 -1
- package/out/street/centroid/index.d.ts +0 -40
- package/out/street/centroid/index.d.ts.map +0 -1
- package/out/street/centroid/index.js.map +0 -1
- package/out/street/index.d.ts.map +0 -1
- package/out/street/index.js.map +0 -1
- package/out/uprn/index.d.ts.map +0 -1
- package/out/uprn/index.js.map +0 -1
- /package/lib/{geonames/index.ts → geonames.ts} +0 -0
- /package/lib/{nsul/index.ts → nsul.ts} +0 -0
- /package/lib/{poi/index.ts → poi.ts} +0 -0
- /package/lib/{postal/index.ts → postal.ts} +0 -0
- /package/lib/{uprn/index.ts → uprn.ts} +0 -0
package/out/uprn/schema.js
CHANGED
|
@@ -3,52 +3,30 @@
|
|
|
3
3
|
* @license AGPL-3.0
|
|
4
4
|
* @author Teffen Ellis, et al.
|
|
5
5
|
*
|
|
6
|
-
*
|
|
7
|
-
* Number with its WGS84 point, so mailwoman results can carry UPRN as an interoperability key
|
|
8
|
-
* beside our own `@mailwoman/address-id`. One rowid table keyed `uprn INTEGER PRIMARY KEY` (the
|
|
9
|
-
* rowid alias — the optimal shape for an integer-PK point table; `WITHOUT ROWID` buys nothing
|
|
10
|
-
* here), plus a secondary res-9 `h3_cell` index for the bounded nearest-point probe.
|
|
11
|
-
*
|
|
12
|
-
* ## Coordinates are OS's own WGS84 columns
|
|
13
|
-
*
|
|
14
|
-
* The source CSV publishes BOTH coordinate systems per row — OSGB36 eastings/northings AND WGS84
|
|
15
|
-
* `LATITUDE`/`LONGITUDE`. This layer stores OS's own lat/lon verbatim and never reconverts from
|
|
16
|
-
* eastings: `@mailwoman/spatial`'s `osgb36ToWGS84` is a 7-parameter Helmert with a measured p95 of
|
|
17
|
-
* 4.18 m, and re-deriving what the publisher already computed (with OSTN15, exactly) would replace
|
|
18
|
-
* their answer with a strictly worse one.
|
|
19
|
-
*
|
|
20
|
-
* ## Why `h3_cell` exists at all
|
|
21
|
-
*
|
|
22
|
-
* The layer contract requires every domain row to be addressable by at least one spine key —
|
|
23
|
-
* `writeLayerManifest` throws on a manifest that declares none — and UPRN is its own id space, not
|
|
24
|
-
* H3/WOF/address-id/street. The res-9 short cell (`shortCellToInt`, the same packing as poi.db and
|
|
25
|
-
* the OSM situs extracts) is the spine that fits a point table, and its index doubles as the
|
|
26
|
-
* `nearestUPRN` ring probe.
|
|
27
|
-
*
|
|
28
|
-
* The DB also embeds the layer-contract tables from `@mailwoman/core/layers`; the builder
|
|
29
|
-
* (`packages/mailwoman/lib/gazetteer-pipeline/uprn-layer.ts`) writes the manifest and per-res-6-cell
|
|
30
|
-
* coverage.
|
|
6
|
+
* Typed schema for `uprn.db`, storing OS's own WGS84 latitude/longitude verbatim rather than reconverting from the source's eastings.
|
|
31
7
|
*/
|
|
32
8
|
import { shortCellToInt } from "@mailwoman/spatial";
|
|
33
9
|
import { latLngToCell } from "h3-js";
|
|
34
10
|
/**
|
|
35
|
-
* Resolution the `uprn` table's `h3_cell` column is keyed at
|
|
36
|
-
* extracts).
|
|
11
|
+
* Resolution the `uprn` table's `h3_cell` column is keyed at, shared with the other layer spines.
|
|
37
12
|
*/
|
|
38
13
|
export const UPRN_H3_RESOLUTION = 9;
|
|
39
14
|
/**
|
|
40
|
-
* Resolution of the layer's `layer_coverage` cells
|
|
15
|
+
* Resolution of the layer's `layer_coverage` cells, coarse per the layer interface
|
|
16
|
+
* and shared with the other spines.
|
|
41
17
|
*/
|
|
42
18
|
export const UPRN_COVERAGE_H3_RESOLUTION = 6;
|
|
43
19
|
/**
|
|
44
|
-
* The full res-9 cell for a UPRN point
|
|
45
|
-
*
|
|
20
|
+
* The full res-9 cell for a UPRN point.
|
|
21
|
+
*
|
|
22
|
+
* This is the one derivation the builder and its consumers share so their cells cannot disagree.
|
|
46
23
|
*/
|
|
47
24
|
export function uprnFullCell(latitude, longitude) {
|
|
48
25
|
return latLngToCell(latitude, longitude, UPRN_H3_RESOLUTION);
|
|
49
26
|
}
|
|
50
27
|
/**
|
|
51
|
-
* The `h3_cell` column value for a
|
|
28
|
+
* The `h3_cell` column value for a uprn point, packing {@link uprnFullCell} to
|
|
29
|
+
* the shared 48-bit short-cell integer.
|
|
52
30
|
*/
|
|
53
31
|
export function uprnH3Cell(latitude, longitude) {
|
|
54
32
|
return shortCellToInt(uprnFullCell(latitude, longitude));
|
|
@@ -70,7 +48,7 @@ export async function createUPRNMetaTable(db) {
|
|
|
70
48
|
.execute();
|
|
71
49
|
}
|
|
72
50
|
/**
|
|
73
|
-
* Secondary index for the `nearestUPRN` ring probe
|
|
51
|
+
* Secondary index for the `nearestUPRN` ring probe, created after the bulk load.
|
|
74
52
|
*/
|
|
75
53
|
export async function createUPRNIndexes(db) {
|
|
76
54
|
await db.schema.createIndex("uprn_h3_cell").on("uprn").column("h3_cell").execute();
|
package/out/uprn/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../lib/uprn/schema.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../lib/uprn/schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,cAAc,EAAe,MAAM,oBAAoB,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAGpC;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAA;AAEnC;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAA;AAuC5C;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,QAAgB,EAAE,SAAiB;IAC/D,OAAO,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,kBAAkB,CAAW,CAAA;AACvE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,QAAgB,EAAE,SAAiB;IAC7D,OAAO,cAAc,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAA;AACzD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EAAwB;IAC7D,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,MAAM,CAAC;SACnB,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;SACnD,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;SAC5C,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;SAC5C,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;SACnD,OAAO,EAAE,CAAA;AACZ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,EAAwB;IACjE,MAAM,EAAE,CAAC,MAAM;SACb,WAAW,CAAC,WAAW,CAAC;SACxB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;SAC/C,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;SAC9C,OAAO,EAAE,CAAA;AACZ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,EAAwB;IAC/D,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAA;AACnF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uprn.d.ts","sourceRoot":"","sources":["../lib/uprn.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA"}
|
package/out/uprn.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uprn.js","sourceRoot":"","sources":["../lib/uprn.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA"}
|
|
@@ -2,93 +2,103 @@
|
|
|
2
2
|
* @copyright Sister Software
|
|
3
3
|
* @license AGPL-3.0
|
|
4
4
|
* @author Teffen Ellis, et al.
|
|
5
|
-
* Shared development tooling for weights overlays: the symlink primitives every overlay linker uses, the
|
|
6
|
-
* placetype-pair index build, and the manifest form ({@link materializeDevOverlay}) each locale's
|
|
7
|
-
* `scripts/link-dev-weights.ts` declares itself in.
|
|
8
5
|
*/
|
|
6
|
+
import type { PathBuilder, PathBuilderLike } from "path-ts";
|
|
9
7
|
/**
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* rename
|
|
8
|
+
* Replaces `dest` with a symlink to `src` by renaming a temporary link over it.
|
|
9
|
+
*
|
|
10
|
+
* The rename is atomic, so concurrent test workers never see `dest` missing.
|
|
13
11
|
*/
|
|
14
|
-
export declare function linkForce(src:
|
|
12
|
+
export declare function linkForce(src: PathBuilderLike, dest: PathBuilderLike): Promise<void>;
|
|
15
13
|
/**
|
|
16
|
-
*
|
|
14
|
+
* Removes a file or symlink at `dest` so that the runtime falls back to the base en-us weights.
|
|
17
15
|
*/
|
|
18
|
-
export declare function removeIfPresent(dest:
|
|
16
|
+
export declare function removeIfPresent(dest: PathBuilder): Promise<void>;
|
|
19
17
|
/**
|
|
20
|
-
*
|
|
18
|
+
* Symlinks one optional soft-feed artifact into an overlay and returns whether the source existed.
|
|
21
19
|
*
|
|
22
|
-
*
|
|
23
|
-
* has
|
|
24
|
-
* operator needs to know which channel just resolved OFF, not to have the link step abort.
|
|
20
|
+
* A missing source prints `consequenceIfMissing` and does not throw, because the
|
|
21
|
+
* runtime has a fallback for every soft-feed artifact.
|
|
25
22
|
*/
|
|
26
|
-
export declare function linkSoftFeedSibling(source:
|
|
23
|
+
export declare function linkSoftFeedSibling(source: PathBuilderLike, destination: PathBuilder, consequenceIfMissing: string): Promise<boolean>;
|
|
27
24
|
/**
|
|
28
|
-
* The
|
|
29
|
-
* measured at δ=10 (each linker's own docstring carries its locale's receipt).
|
|
25
|
+
* The pair-index emission bias (δ) used by every shipped pair-index artifact.
|
|
30
26
|
*/
|
|
31
27
|
export declare const PAIR_INDEX_DELTA = 10;
|
|
32
28
|
/**
|
|
33
|
-
* The decoder transition-entry bonus (
|
|
34
|
-
*
|
|
35
|
-
* independently, and a locale earning one says nothing about the other.
|
|
29
|
+
* The decoder transition-entry bonus (β).
|
|
30
|
+
* Only locales that were calibrated with it pass it.
|
|
36
31
|
*/
|
|
37
32
|
export declare const PAIR_INDEX_TRANSITION_BETA = 5;
|
|
38
33
|
/**
|
|
39
|
-
* The
|
|
40
|
-
*
|
|
41
|
-
*
|
|
34
|
+
* The whole-edge parent-bias magnitude.
|
|
35
|
+
* Only locales that were calibrated with it pass it.
|
|
36
|
+
*
|
|
37
|
+
* Other locales omit the flag and do not inherit this value.
|
|
42
38
|
*/
|
|
43
39
|
export declare const PAIR_INDEX_PARENT_DELTA = 5;
|
|
44
40
|
/**
|
|
45
|
-
*
|
|
41
|
+
* Describes one locale's pair-index build.
|
|
42
|
+
*
|
|
43
|
+
* When `sources`, `inputs` and `extraArgs` are omitted, the build reads the shared WOF admin database.
|
|
46
44
|
*/
|
|
47
45
|
export interface PairIndexOverlay {
|
|
48
46
|
/**
|
|
49
|
-
*
|
|
47
|
+
* The weights workspace directory name, such as `neural-weights-de-de`.
|
|
48
|
+
* The overlay locale is derived from it.
|
|
50
49
|
*/
|
|
51
50
|
packageDir: string;
|
|
52
51
|
/**
|
|
53
|
-
* ISO country code passed to `
|
|
54
|
-
*
|
|
52
|
+
* The ISO country code passed to `--country` and used in `pair-index-<country>.bin`.
|
|
53
|
+
*
|
|
54
|
+
* It can differ from the locale tag.
|
|
55
|
+
* For example, `en-in` builds `pair-index-in.bin`.
|
|
55
56
|
*/
|
|
56
57
|
country: string;
|
|
57
58
|
/**
|
|
58
|
-
*
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
* The
|
|
59
|
+
* The child bias magnitude.
|
|
60
|
+
*
|
|
61
|
+
* The build writes `delta`, `transitionBeta` and `parentDelta` into the PIX1 header.
|
|
62
|
+
* The freshness check compares them.
|
|
63
|
+
*
|
|
64
|
+
* An absent `transitionBeta` or `parentDelta` leaves its key out of the header.
|
|
65
|
+
* The freshness check treats an absent key as distinct from zero.
|
|
62
66
|
*/
|
|
63
67
|
delta: number;
|
|
64
68
|
transitionBeta?: number;
|
|
65
69
|
parentDelta?: number;
|
|
66
70
|
/**
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
71
|
+
* The source files whose MD5s the build records, in the order that `gazetteer pair-index` records them.
|
|
72
|
+
*
|
|
73
|
+
* The freshness check compares each MD5 with the header.
|
|
74
|
+
* An empty list makes the check compare the magnitudes only.
|
|
75
|
+
*
|
|
76
|
+
* @defaultValue the WOF admin database.
|
|
72
77
|
*/
|
|
73
|
-
sources?:
|
|
78
|
+
sources?: PathBuilder[];
|
|
74
79
|
/**
|
|
75
|
-
*
|
|
76
|
-
*
|
|
80
|
+
* Files that must exist before a build runs.
|
|
81
|
+
*
|
|
82
|
+
* A missing file prints a warning and skips the build.
|
|
83
|
+
*
|
|
84
|
+
* @defaultValue `sources`
|
|
77
85
|
*/
|
|
78
|
-
inputs?:
|
|
86
|
+
inputs?: PathBuilder[];
|
|
79
87
|
/**
|
|
80
|
-
* Extra CLI
|
|
81
|
-
*
|
|
88
|
+
* Extra CLI arguments that pass the build's sources.
|
|
89
|
+
*
|
|
90
|
+
* @defaultValue `--borough-db <admin db>`
|
|
82
91
|
*/
|
|
83
|
-
extraArgs?:
|
|
92
|
+
extraArgs?: PathBuilderLike[];
|
|
84
93
|
/**
|
|
85
|
-
*
|
|
86
|
-
*
|
|
94
|
+
* The byte size below which an existing artifact is rebuilt.
|
|
95
|
+
*
|
|
96
|
+
* A build from the wrong source can have matching header magnitudes but a smaller size.
|
|
87
97
|
*/
|
|
88
98
|
minimumPlausibleBytes?: number;
|
|
89
99
|
}
|
|
90
100
|
/**
|
|
91
|
-
* The header fields
|
|
101
|
+
* The pair-index header fields that the dev-weights freshness check reads.
|
|
92
102
|
*/
|
|
93
103
|
export interface PairIndexHeaderFields {
|
|
94
104
|
delta: number;
|
|
@@ -96,33 +106,28 @@ export interface PairIndexHeaderFields {
|
|
|
96
106
|
parentDelta: number | undefined;
|
|
97
107
|
schemaVersion: number;
|
|
98
108
|
/**
|
|
99
|
-
* One
|
|
109
|
+
* One MD5 per source the build read, in recorded order.
|
|
110
|
+
* The list is empty when the header has none.
|
|
100
111
|
*/
|
|
101
112
|
sourceMD5s: string[];
|
|
102
113
|
}
|
|
103
114
|
/**
|
|
104
|
-
*
|
|
105
|
-
* `@mailwoman/neural` (which pulls onnxruntime-node) to read a few fields. `neural/pair-index-resolver.ts`'s own header
|
|
106
|
-
* parse is the source of truth this must follow.
|
|
115
|
+
* Reads the calibration fields from a PIX1 pair-index header without depending on `@mailwoman/neural`.
|
|
107
116
|
*
|
|
108
|
-
*
|
|
109
|
-
* (`neural-weights-{en-us,en-gb,en-nz,fr-fr}/scripts/link-dev-weights.ts`), which each carried their own near-copy
|
|
110
|
-
* before 2026-08-04 — the ×5 clone the taste audit named, and the reason three of them were schema-blind while this one
|
|
111
|
-
* was not.
|
|
117
|
+
* The parse must match the reader in `neural/lib/pair/index/resolver.ts`.
|
|
112
118
|
*/
|
|
113
|
-
export declare function peekPairIndexHeaderFields(path:
|
|
119
|
+
export declare function peekPairIndexHeaderFields(path: PathBuilderLike): Promise<PairIndexHeaderFields>;
|
|
114
120
|
/**
|
|
115
|
-
*
|
|
116
|
-
* source is hashed once per change rather than once per linker run. The sidecar is trusted only when at least as new as
|
|
117
|
-
* the source; a missing or stale sidecar recomputes and rewrites, so the cache self-heals.
|
|
121
|
+
* Returns the MD5 of `path`, cached in a `<path>.md5` sidecar in `md5sum` format.
|
|
118
122
|
*
|
|
119
|
-
* The
|
|
123
|
+
* The sidecar is used only when it is at least as new as the source.
|
|
120
124
|
*/
|
|
121
|
-
export declare function md5FileWithSidecar(path:
|
|
125
|
+
export declare function md5FileWithSidecar(path: PathBuilderLike): Promise<string>;
|
|
122
126
|
/**
|
|
123
|
-
* The calibrated magnitudes a linker
|
|
124
|
-
*
|
|
125
|
-
*
|
|
127
|
+
* The calibrated magnitudes that a linker writes into its pair-index artifact.
|
|
128
|
+
*
|
|
129
|
+
* An `undefined` magnitude means the header has no such key.
|
|
130
|
+
* It is distinct from zero.
|
|
126
131
|
*/
|
|
127
132
|
export interface PairIndexCalibration {
|
|
128
133
|
delta: number;
|
|
@@ -130,69 +135,46 @@ export interface PairIndexCalibration {
|
|
|
130
135
|
parentDelta?: number;
|
|
131
136
|
}
|
|
132
137
|
/**
|
|
133
|
-
*
|
|
134
|
-
*
|
|
135
|
-
* linker passes a different set of sources and only it knows what they are.
|
|
138
|
+
* Returns why a pair-index header's schema or magnitudes differ from `expected`,
|
|
139
|
+
* or `undefined` when they match.
|
|
136
140
|
*
|
|
137
|
-
*
|
|
138
|
-
* three of the four base linkers ended up unable to notice a schema bump.
|
|
141
|
+
* The caller checks the source MD5s because only the caller knows its sources.
|
|
139
142
|
*/
|
|
140
|
-
export declare function pairIndexStaleReason(header: PairIndexHeaderFields, expected: PairIndexCalibration): string |
|
|
143
|
+
export declare function pairIndexStaleReason(header: PairIndexHeaderFields, expected: PairIndexCalibration): string | null;
|
|
141
144
|
/**
|
|
142
|
-
* The PIX1 schema
|
|
143
|
-
* they are two ends of one fact, and this copy exists only because a data-only overlay must not gain a dependency on
|
|
144
|
-
* `@mailwoman/neural` (onnxruntime-node) to read one header field. Bump BOTH in the same commit; a schema bump that
|
|
145
|
-
* leaves this behind makes every dev checkout rebuild-loop or serve an artifact the runtime refuses.
|
|
145
|
+
* The PIX1 schema version the pair-index reader requires.
|
|
146
146
|
*
|
|
147
|
-
*
|
|
148
|
-
*
|
|
149
|
-
* edition. Also compared by the four hand-written base linkers (`neural-weights-{en-us,en-gb,en-nz,fr-fr}`), which
|
|
150
|
-
* import this constant rather than re-typing the number.
|
|
147
|
+
* It must equal `KNOWN_SCHEMA_VERSION` in `neural/lib/pair/index/resolver.ts`.
|
|
148
|
+
* A mismatch makes dev checkouts rebuild on every run or link an artifact that the runtime refuses.
|
|
151
149
|
*/
|
|
152
150
|
export declare const REQUIRED_PAIR_INDEX_SCHEMA = 3;
|
|
153
151
|
/**
|
|
154
|
-
*
|
|
155
|
-
* now.
|
|
152
|
+
* Warns when a linked per-locale FST was built from a different admin database than the one on disk.
|
|
156
153
|
*
|
|
157
|
-
*
|
|
158
|
-
*
|
|
159
|
-
* the swap into `fst-per-locale/` is operator-approved after the battery, because an FST changes decoder behaviour and
|
|
160
|
-
* the D-rule does not let that land unmeasured. So the guard's job is to make the drift impossible to miss, and to name
|
|
161
|
-
* the command that starts fixing it. It is also why a stale FST is never fatal: the artifact is a decode-time bias
|
|
162
|
-
* list, and a dev tree must still run.
|
|
163
|
-
*
|
|
164
|
-
* The source-side half of the comparison lives here rather than in `fst-freshness.ts` for the same reason
|
|
165
|
-
* `pairIndexStaleReason` splits: only the caller knows which database it built against. All three FST-linking base
|
|
166
|
-
* packages build against the same one, so they share this rather than each pinning it.
|
|
154
|
+
* It does not rebuild, because an FST rebuild writes to a staging directory
|
|
155
|
+
* and an operator swaps it in after evaluation.
|
|
167
156
|
*/
|
|
168
|
-
export declare function warnIfFSTStale(fstPath:
|
|
157
|
+
export declare function warnIfFSTStale(fstPath: PathBuilder, locale: string): Promise<void>;
|
|
169
158
|
/**
|
|
170
|
-
*
|
|
171
|
-
*
|
|
172
|
-
* runtime pipeline can auto-wire the gazetteer + street-context check, then run {@link warnIfFSTStale} on the linked
|
|
173
|
-
* artifact. The publish flow stages the real binary (release-sequenced).
|
|
159
|
+
* Symlinks the per-locale FST gazetteer `fst-<locale>.bin` into an overlay
|
|
160
|
+
* and checks it with {@link warnIfFSTStale}.
|
|
174
161
|
*/
|
|
175
|
-
export declare function linkLocaleFST(destDir:
|
|
162
|
+
export declare function linkLocaleFST(destDir: PathBuilder, locale: string): Promise<void>;
|
|
176
163
|
/**
|
|
177
|
-
*
|
|
178
|
-
*
|
|
179
|
-
* dev and the street-context check (#1315) deserializes the artifact instead of rebuilding from the libpostal
|
|
180
|
-
* dictionaries per process. Missing is non-fatal — the runtime loader's dictionary-build fallback covers it.
|
|
164
|
+
* Symlinks the prebuilt street-morphology FST into an overlay so that the
|
|
165
|
+
* street-context check does not rebuild it from dictionaries.
|
|
181
166
|
*/
|
|
182
|
-
export declare function linkStreetMorphologyFST(destDir:
|
|
167
|
+
export declare function linkStreetMorphologyFST(destDir: PathBuilder): Promise<void>;
|
|
183
168
|
/**
|
|
184
|
-
*
|
|
185
|
-
* these magnitudes
|
|
186
|
-
* staleness expectation and the CLI flags, so a magnitude cannot be checked by the guard and dropped from the build.
|
|
169
|
+
* Builds `pair-index-<country>.bin` into the overlay unless the existing artifact
|
|
170
|
+
* already matches these magnitudes and sources.
|
|
187
171
|
*
|
|
188
|
-
*
|
|
189
|
-
*
|
|
190
|
-
* have run a build yet rather than a real fault.
|
|
172
|
+
* A failed build exits the process.
|
|
173
|
+
* A missing CLI or input only prints a warning, because a fresh clone has neither.
|
|
191
174
|
*/
|
|
192
175
|
export declare function buildPairIndexOverlay(overlay: PairIndexOverlay): Promise<void>;
|
|
193
176
|
/**
|
|
194
|
-
* A soft-feed
|
|
195
|
-
* printed when the source is missing (the link is warn-and-continue; the channel resolves OFF).
|
|
177
|
+
* A soft-feed artifact that an overlay links, with the warning to print when its source is missing.
|
|
196
178
|
*/
|
|
197
179
|
export interface SoftFeedLink {
|
|
198
180
|
source: string;
|
|
@@ -200,18 +182,17 @@ export interface SoftFeedLink {
|
|
|
200
182
|
consequenceIfMissing: string;
|
|
201
183
|
}
|
|
202
184
|
/**
|
|
203
|
-
*
|
|
204
|
-
*
|
|
205
|
-
*
|
|
185
|
+
* Returns the committed soft-feed lexicons as links.
|
|
186
|
+
*
|
|
187
|
+
* The filenames come from `release.config.json` so that dev links match the release.
|
|
206
188
|
*/
|
|
207
189
|
export declare function committedSoftFeedLinks(): Promise<{
|
|
208
190
|
anchor: SoftFeedLink;
|
|
209
191
|
country: SoftFeedLink;
|
|
210
|
-
streetType
|
|
192
|
+
streetType: SoftFeedLink | null;
|
|
211
193
|
}>;
|
|
212
194
|
/**
|
|
213
|
-
* The
|
|
214
|
-
* release re-verifies against the published tarball, and the channel requirements that name evidence lexicons.
|
|
195
|
+
* The fields of a weights package's `model-card.json` that dev materialization reads.
|
|
215
196
|
*/
|
|
216
197
|
export interface WeightsCard {
|
|
217
198
|
files_md5?: Record<string, string>;
|
|
@@ -221,26 +202,34 @@ export interface WeightsCard {
|
|
|
221
202
|
} | undefined>;
|
|
222
203
|
}
|
|
223
204
|
/**
|
|
224
|
-
*
|
|
225
|
-
*
|
|
226
|
-
* soft-feed siblings, card-named evidence lexicons, postcode binary, pair index, FSTs.
|
|
205
|
+
* Declares what one locale's dev overlay contains. {@link materializeDevOverlay}
|
|
206
|
+
* runs the steps in the order the fields are listed.
|
|
227
207
|
*/
|
|
228
208
|
export interface DevOverlayManifest {
|
|
229
209
|
/**
|
|
230
|
-
* The overlay's locale tag
|
|
231
|
-
*
|
|
232
|
-
*
|
|
233
|
-
*
|
|
210
|
+
* The overlay's lowercase locale tag.
|
|
211
|
+
* The workspace is `neural-weights-<locale>`.
|
|
212
|
+
*
|
|
213
|
+
* Artifacts go to the data root's `weights/<locale>/` overlay because the binaries are kept out of git.
|
|
234
214
|
*/
|
|
235
215
|
locale: string;
|
|
236
216
|
/**
|
|
237
|
-
*
|
|
238
|
-
*
|
|
239
|
-
*
|
|
240
|
-
*
|
|
241
|
-
*
|
|
242
|
-
*
|
|
243
|
-
*
|
|
217
|
+
* How the overlay gets its model files.
|
|
218
|
+
*
|
|
219
|
+
* When it is omitted, `link-weights-overlay.ts` in release-kit handles them.
|
|
220
|
+
*
|
|
221
|
+
* The `link` kind symlinks `model.onnx` and `tokenizer.model` from the
|
|
222
|
+
* `release.config.json` weights paths under the data root.
|
|
223
|
+
* The `$MAILWOMAN_DEV_MODEL` and `$MAILWOMAN_DEV_TOKENIZER` variables override those paths.
|
|
224
|
+
*
|
|
225
|
+
* With `digestCard`, the linked default files must match the `files_md5` of that workspace's card.
|
|
226
|
+
* An override skips this check.
|
|
227
|
+
*
|
|
228
|
+
* The `inherit` kind removes any local pair, because the package declares
|
|
229
|
+
* `mailwoman.baseWeights` and a local file would shadow the base.
|
|
230
|
+
*
|
|
231
|
+
* The `char` kind links the `charWeights.<family>` model, character vocabulary and model card.
|
|
232
|
+
* It removes any tokenizer.
|
|
244
233
|
*/
|
|
245
234
|
model?: {
|
|
246
235
|
kind: "link";
|
|
@@ -252,48 +241,53 @@ export interface DevOverlayManifest {
|
|
|
252
241
|
family: string;
|
|
253
242
|
};
|
|
254
243
|
/**
|
|
255
|
-
* Soft-feed siblings
|
|
244
|
+
* Soft-feed siblings to link in order.
|
|
245
|
+
* A missing source prints a warning and the step continues.
|
|
256
246
|
*/
|
|
257
247
|
softFeed?: ReadonlyArray<SoftFeedLink>;
|
|
258
248
|
/**
|
|
259
|
-
*
|
|
260
|
-
*
|
|
261
|
-
*
|
|
249
|
+
* Whether to link the evidence lexicons listed under `requires.<channel>.lexicon`
|
|
250
|
+
* in the overlay's model card.
|
|
251
|
+
* A card update then changes the linked file too.
|
|
252
|
+
*
|
|
253
|
+
* The street-type lexicon comes from the repo's `data/gazetteer/`.
|
|
254
|
+
* The locality-surface lexicon comes from the data root.
|
|
262
255
|
*/
|
|
263
256
|
evidenceLexiconsFromCard?: boolean;
|
|
264
257
|
/**
|
|
265
|
-
*
|
|
266
|
-
*
|
|
258
|
+
* Builds `postcode-<country>.bin` from a WOF postcode extract with the compiled CLI.
|
|
259
|
+
* The step is skipped when the file already exists.
|
|
267
260
|
*/
|
|
268
261
|
postcodeBinary?: {
|
|
269
262
|
country: string;
|
|
270
|
-
database:
|
|
263
|
+
database: PathBuilder;
|
|
271
264
|
};
|
|
272
265
|
/**
|
|
273
|
-
* The placetype-pair index build
|
|
266
|
+
* The placetype-pair index build.
|
|
267
|
+
* Its `packageDir` is derived from `locale`.
|
|
274
268
|
*/
|
|
275
269
|
pairIndex?: Omit<PairIndexOverlay, "packageDir">;
|
|
276
270
|
/**
|
|
277
|
-
*
|
|
271
|
+
* Whether to link `fst-<locale>.bin` and warn when it is stale.
|
|
278
272
|
*/
|
|
279
273
|
localeFST?: boolean;
|
|
280
274
|
/**
|
|
281
|
-
*
|
|
275
|
+
* Whether to link the shared street-morphology FST.
|
|
282
276
|
*/
|
|
283
277
|
streetMorphologyFST?: boolean;
|
|
284
278
|
}
|
|
285
279
|
/**
|
|
286
|
-
*
|
|
287
|
-
*
|
|
280
|
+
* The overlay directory, CLI path and model card that {@link materializeDevOverlay} returns.
|
|
281
|
+
*
|
|
282
|
+
* Callers use them for locale-specific steps that a manifest cannot express.
|
|
288
283
|
*/
|
|
289
284
|
export interface DevOverlay {
|
|
290
|
-
destDir:
|
|
291
|
-
cli:
|
|
292
|
-
card: WeightsCard |
|
|
285
|
+
destDir: PathBuilder;
|
|
286
|
+
cli: PathBuilder;
|
|
287
|
+
card: WeightsCard | null;
|
|
293
288
|
}
|
|
294
289
|
/**
|
|
295
|
-
*
|
|
296
|
-
* documents, each independent on disk, and the result carries what a locale-specific step needs afterwards.
|
|
290
|
+
* Materializes one locale's dev weights overlay from its manifest.
|
|
297
291
|
*/
|
|
298
292
|
export declare function materializeDevOverlay(manifest: DevOverlayManifest): Promise<DevOverlay>;
|
|
299
293
|
//# sourceMappingURL=weights-overlay-linker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"weights-overlay-linker.d.ts","sourceRoot":"","sources":["../lib/weights-overlay-linker.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"weights-overlay-linker.d.ts","sourceRoot":"","sources":["../lib/weights-overlay-linker.ts"],"names":[],"mappings":"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"}
|