Skip to content

fix: find Portuguese houses under the national register's street names - #224

Merged
Mokto merged 1 commit into
mainfrom
fix/portugal-register-street-names
Oct 20, 2026
Merged

Mokto merged 1 commit into
mainfrom
fix/portugal-register-street-names

Conversation

@Mokto

@Mokto Mokto commented Oct 20, 2026

Copy link
Copy Markdown
Owner

Summary

Portuguese address search and autocomplete now return the house instead of stopping at the street. On the global_osm_pt panel, SearchAddress and SuggestAddress both go from 22/100 to 46/100 on a local full index. Refs #222 (Portugal rows only; the issue tracks many markets).

Every Portuguese house in the index comes from Overture's pt/countrywide addresses, which use the national register (CTT) spelling: R FARIAS for the map's Rua dos Farias, with the type and titles abbreviated and the particle after the type dropped. Queries matched the map street, which has no houses, so they answered at street level. A second defect: libpostal leaves a number before Avenida inside the road.

Changes

  • A Portuguese road gets its register spelling as an alternative (abbreviated type and titles, Santa/Santo as S, particle after the type dropped).
  • Street lookup tries the alternative spellings whenever the stated road has no such house, not only when no street matched. The existing guards still apply.
  • SuggestAddress tries the register spelling for Portugal only. A general version recursed until timeout on South Africa's straat/street swap.
  • With Portugal stated, a number before avenida in the road becomes the house number. Not applied elsewhere, since 6 Avenida is a street name in Guatemala.
  • Triage write-up with evidence and remaining failures in docs/evaluation/triage/portugal.md.

The builder and index are unchanged, so the builder hash is unchanged.

Review focus

Check ctt_road in src/matching.rs for abbreviations that would over-match, and the Portugal-only gate in src/index/suggest.rs.

Results

Local full index 74a1eec034f5 (builder 9d4006a4eec15abb), base 7a02601, same evaluator, models and reference data:

  • global_osm_pt SearchAddress 22 to 46/100 (tuning groups 9 to 19/39, held-out 2 to 4/11; held-out groups were scored, not inspected).
  • SuggestAddress 22 to 46/100. ReverseGeocode country stays 100/100.
  • The full 21,282-case gold diff has no newly failing or worse cases. All 48 newly passing checks are Portuguese.
  • One unscored address case changed: 4 Rua da Imprensa à Estrela now resolves to house 4 on the same street, about 100 m from the old street point.
  • The local speed comparison passed, but the host was under heavy load (load average about 105), so it is not a speed measurement. CI gold-speed needs reading.

Checks run: cargo fmt --check, clippy -D warnings on all targets, cargo test, and the synthetic tests including --ignored. The new Portugal search and suggest cases fail on base and pass on head. tests/rpc.rs rpc_contracts fails on both base and head at the same CDG landmark check, because the local index has no answer for "CDG". It is unrelated to this change.

Remaining Portuguese tuning failures (20 groups): 18 numbers absent from the index (source coverage), and 2 name mismatches not bridged (Virgílio/Vergílio spelling, the GNR acronym).

… street names

Portugal's houses come from the CTT register, which writes "R FARIAS" for the map's "Rua dos Farias" (types and titles abbreviated, the particle after the type dropped). Search now tries that spelling when the stated road has no such house, SuggestAddress does too for Portugal, and a number libpostal leaves before a Portuguese "Avenida" becomes the house number. global_osm_pt: SearchAddress 22 -> 46/100, SuggestAddress 22 -> 46/100. Refs #222.
@github-actions

Copy link
Copy Markdown

Speed, full index: no slowdown over 10%

Details

SearchAddress

Time in ms over 1995 cases, each the fastest of 3 requests.

Total p50 p90 p99 Max
base 6419.8 2.3 5.7 14.9 21.8
head 5796.9 2.2 5.3 14.2 21.1
change -10% -8% -7% -4% -3%

SuggestAddress

Time in ms over 1996 checks, each the fastest of 3 requests.

Total p50 p90 p99 Max
base 2648.5 1.1 2.1 4.3 12.5
head 2466.5 1.1 1.9 3.7 14.3
change -7% -4% -11% -14% +15%

ReverseGeocode

Time in ms over 1994 cases, each the fastest of 3 requests.

Total p50 p90 p99 Max
base 1924.5 0.8 1.2 4.1 7.0
head 1773.9 0.8 1.1 3.6 5.4
change -8% -6% -8% -12% -22%

Fails when the total, p50, p90 or p99 of any table is more than 10% slower. Runs of one binary differ by up to 5%; the max is one request and only reported.

Base 7a02601 → b4b1356, one after the other in one pod on the same node and index.

@github-actions

Copy link
Copy Markdown

Gold check, full index: no regressions

RPC Checked Pass base Pass head Change Results changed
SearchAddress 21203 16861 16885 +24 (+0.1%) 27
SuggestAddress 21287 15042 15066 +24 (+0.2%) 24
ResolveRegion 3341 3322 3322 0 0
ReverseGeocode 20913 20787 20787 0 0

Pass rate by country

Passing checks out of those checked, baseline → candidate, for the 1 expected country where any RPC changed. A case that expects several countries has its own row. Counts are checks, not independent locations.

Country SearchAddress % SuggestAddress % ReverseGeocode % ResolveRegion %
Portugal 28 → 52 / 106 (+24) 26.4% → 49.1% 30 → 54 / 108 (+24) 27.8% → 50.0% 106 / 106 100.0% 6 / 6 100.0%
Runs
  • baseline: base, backend overture-index data index 9f26cb6d546a, consumer binary 1d721fca24d8 models 2de098b5667f
  • candidate: head, backend overture-index data index 9f26cb6d546a, consumer binary 963ebb11aa52 models 2de098b5667f

SearchAddress: changes by cohort

Cohort Cases Changed finer moved nudged good_match components
address 923 1 1 0 1 1 1
global_osm_pt 100 26 26 2 15 24 26

Only cohorts with a change and kinds that occur are shown. gained/lost: a result appeared/disappeared; finer/coarser: resolution level; moved: >1 km; nudged: <1 km but visible at 3 decimals.

SuggestAddress

Check Checked Pass base Pass head Change ranked_low missing unexpected error
full 20333 14242 14266 +24 0 6067 0 0

full types the query; name types the place's name alone, which must come no later than the places of that name with more population. off requires no landmarks with the flag false. The last four columns count the head's failures.

Newly passing (verify before relabelling) (48)
  • global-osm-pt-13045478456-0 suggest full missing -> pass: "106 Caminho Figueirinhas, 9135-130, Portugal" -> rank 1 (want <= 5); first address 106, CAM FIGUEIRINHAS, Camacha, Santa Cruz Municipality, Mad [pt]
  • global-osm-pt-13045478456-0 too_coarse -> pass: "106 Caminho Figueirinhas, 9135-130, Portugal" -> "house 106 CAM FIGUEIRINHAS, 9135-130, Camacha [pt] 32.694,-16.872"
  • global-osm-pt-13524887511-0 suggest full missing -> pass: "16 Rua das Fortunatas, Vale das Mós, 2205-810, Portugal" -> rank 1 (want <= 5); first address 16, R FORTUNATAS, São Facundo e Vale das Mós, Abrantes Munic [pt]
  • global-osm-pt-13524887511-0 too_coarse -> pass: "16 Rua das Fortunatas, Vale das Mós, 2205-810, Portugal" -> "house 16 R FORTUNATAS, 2205-810, Vale Das Mós [pt] 39.342,-8.063"
  • global-osm-pt-4730933879-0 suggest full missing -> pass: "41 Avenida da Liberdade, Serra d'El Rei, 2525-801, Portugal" -> rank 1 (want <= 5); first address 41, AV LIBERDADE, Serra d'El-Rei, Peniche Municipality, Leir [pt]
  • global-osm-pt-4730933879-0 too_coarse -> pass: "41 Avenida da Liberdade, Serra d'El Rei, 2525-801, Portugal" -> "house 41 AV LIBERDADE, 2525-801, Serra d'El-Rei [pt] 39.332,-9.268"
  • global-osm-pt-13045478456-1 suggest full missing -> pass: "Caminho Figueirinhas 106, 9135-130, Portugal" -> rank 1 (want <= 5); first address 106, CAM FIGUEIRINHAS, Camacha, Santa Cruz Municipality, Mad [pt]
  • global-osm-pt-13045478456-1 too_coarse -> pass: "Caminho Figueirinhas 106, 9135-130, Portugal" -> "house 106 CAM FIGUEIRINHAS, 9135-130, Camacha [pt] 32.694,-16.872"
  • global-osm-pt-6808076453-1 suggest full missing -> pass: "Rua Tenente Valadim 29, Leiria, 2410-190, Portugal" -> rank 1 (want <= 5); first address 29, R TEN VALADIM, Leiria, Pousos, Barreira e Cortes, Leiria [pt]
  • global-osm-pt-6808076453-1 too_coarse -> pass: "Rua Tenente Valadim 29, Leiria, 2410-190, Portugal" -> "house 29 R TEN VALADIM, 2410-190, Leiria, Pousos, Barreira e Cortes [pt] 39.743,-8.804"
  • global-osm-pt-6808076453-0 suggest full missing -> pass: "29 Rua Tenente Valadim, Leiria, 2410-190, Portugal" -> rank 1 (want <= 5); first address 29, R TEN VALADIM, Leiria, Pousos, Barreira e Cortes, Leiria [pt]
  • global-osm-pt-6808076453-0 too_coarse -> pass: "29 Rua Tenente Valadim, Leiria, 2410-190, Portugal" -> "house 29 R TEN VALADIM, 2410-190, Leiria, Pousos, Barreira e Cortes [pt] 39.743,-8.804"
  • global-osm-pt-8500012250-0 suggest full missing -> pass: "20 Rua da Azenha Velha, Pedrogão, 7960-063, Portugal" -> rank 1 (want <= 5); first address 20, R AZENHA VELHA, Pedrógão, Vidigueira Municipality, Beja, [pt]
  • global-osm-pt-8500012250-0 near_miss -> pass: "20 Rua da Azenha Velha, Pedrogão, 7960-063, Portugal" -> "house 20 R AZENHA VELHA, 7960-063, Pedrógão [pt] 38.121,-7.648"
  • global-osm-pt-8500012250-1 suggest full missing -> pass: "Rua da Azenha Velha 20, Pedrogão, 7960-063, Portugal" -> rank 1 (want <= 5); first address 20, R AZENHA VELHA, Pedrógão, Vidigueira Municipality, Beja, [pt]
  • global-osm-pt-8500012250-1 near_miss -> pass: "Rua da Azenha Velha 20, Pedrogão, 7960-063, Portugal" -> "house 20 R AZENHA VELHA, 7960-063, Pedrógão [pt] 38.121,-7.648"
  • global-osm-pt-12393916706-0 suggest full missing -> pass: "12 Rua dos Farias, Pinhal Novo, 2955-243, Portugal" -> rank 1 (want <= 5); first address 12, R FARIAS, Pinhal Novo, Palmela Municipality, Setúbal, Po [pt]
  • global-osm-pt-12393916706-0 too_coarse -> pass: "12 Rua dos Farias, Pinhal Novo, 2955-243, Portugal" -> "house 12 R FARIAS, 2955-243, Pinhal Novo [pt] 38.620,-8.902"
  • global-osm-pt-12393916706-1 suggest full missing -> pass: "Rua dos Farias 12, Pinhal Novo, 2955-243, Portugal" -> rank 1 (want <= 5); first address 12, R FARIAS, Pinhal Novo, Palmela Municipality, Setúbal, Po [pt]
  • global-osm-pt-12393916706-1 too_coarse -> pass: "Rua dos Farias 12, Pinhal Novo, 2955-243, Portugal" -> "house 12 R FARIAS, 2955-243, Pinhal Novo [pt] 38.620,-8.902"
  • global-osm-pt-9846324789-0 suggest full missing -> pass: "12 Travessa da Belchiora, Santo Aleixo, 7450-242, Portugal" -> rank 1 (want <= 5); first address 12, TV BELCHIORA, Santo Aleixo, Monforte Municipality, Porta [pt]
  • global-osm-pt-9846324789-0 too_coarse -> pass: "12 Travessa da Belchiora, Santo Aleixo, 7450-242, Portugal" -> "house 12 TV BELCHIORA, 7450-242, Santo Aleixo [pt] 38.921,-7.419"
  • global-osm-pt-9846324789-1 suggest full missing -> pass: "Travessa da Belchiora 12, Santo Aleixo, 7450-242, Portugal" -> rank 1 (want <= 5); first address 12, TV BELCHIORA, Santo Aleixo, Monforte Municipality, Porta [pt]
  • global-osm-pt-9846324789-1 too_coarse -> pass: "Travessa da Belchiora 12, Santo Aleixo, 7450-242, Portugal" -> "house 12 TV BELCHIORA, 7450-242, Santo Aleixo [pt] 38.921,-7.419"
  • global-osm-pt-3768703397-0 suggest full missing -> pass: "6 Avenida da Noruega, Ribeira de Pena, 4870-151, Portugal" -> rank 1 (want <= 5); first address 6, AV NORUEGA, Ribeira de Pena (Salvador) e Santo Aleixo de [pt]
  • global-osm-pt-3768703397-0 too_coarse -> pass: "6 Avenida da Noruega, Ribeira de Pena, 4870-151, Portugal" -> "house 6 AV NORUEGA, 4870-151, Ribeira de Pena (Salvador) e Santo Aleixo de Além-Tâmega [pt] 41.518,-7.794"
  • global-osm-pt-3768703397-1 suggest full missing -> pass: "Avenida da Noruega 6, Ribeira de Pena, 4870-151, Portugal" -> rank 1 (want <= 5); first address 6, AV NORUEGA, Ribeira de Pena (Salvador) e Santo Aleixo de [pt]
  • global-osm-pt-3768703397-1 too_coarse -> pass: "Avenida da Noruega 6, Ribeira de Pena, 4870-151, Portugal" -> "house 6 AV NORUEGA, 4870-151, Ribeira de Pena (Salvador) e Santo Aleixo de Além-Tâmega [pt] 41.518,-7.794"
  • global-osm-pt-8623636413-0 suggest full missing -> pass: "1 Travessa da Cruz, Cachopo, 8800-014, Portugal" -> rank 1 (want <= 5); first address 1, TV CRUZ, Cachopo, Tavira Municipality, Faro, Portugal [pt]
  • global-osm-pt-8623636413-0 too_coarse -> pass: "1 Travessa da Cruz, Cachopo, 8800-014, Portugal" -> "house 1 TV CRUZ, 8800-014, Cachopo [pt] 37.334,-7.818"
  • global-osm-pt-8528915510-0 suggest full missing -> pass: "867 Bairro de Santa Bárbara, Aljustrel, 7600-023, Portugal" -> rank 1 (want <= 5); first address 867, BR S BARBARA, Aljustrel, Aljustrel Municipality, Beja, [pt]
  • global-osm-pt-8528915510-0 too_coarse -> pass: "867 Bairro de Santa Bárbara, Aljustrel, 7600-023, Portugal" -> "house 867 BR S BARBARA, 7600-023, Aljustrel [pt] 37.868,-8.166"
  • global-osm-pt-8528915510-1 suggest full missing -> pass: "Bairro de Santa Bárbara 867, Aljustrel, 7600-023, Portugal" -> rank 1 (want <= 5); first address 867, BR S BARBARA, Aljustrel, Aljustrel Municipality, Beja, [pt]
  • global-osm-pt-8528915510-1 too_coarse -> pass: "Bairro de Santa Bárbara 867, Aljustrel, 7600-023, Portugal" -> "house 867 BR S BARBARA, 7600-023, Aljustrel [pt] 37.868,-8.166"
  • global-osm-pt-8623636413-1 suggest full missing -> pass: "Travessa da Cruz 1, Cachopo, 8800-014, Portugal" -> rank 1 (want <= 5); first address 1, TV CRUZ, Cachopo, Tavira Municipality, Faro, Portugal [pt]
  • global-osm-pt-8623636413-1 too_coarse -> pass: "Travessa da Cruz 1, Cachopo, 8800-014, Portugal" -> "house 1 TV CRUZ, 8800-014, Cachopo [pt] 37.334,-7.818"
  • global-osm-pt-13524887511-1 suggest full missing -> pass: "Rua das Fortunatas 16, Vale das Mós, 2205-810, Portugal" -> rank 1 (want <= 5); first address 16, R FORTUNATAS, São Facundo e Vale das Mós, Abrantes Munic [pt]
  • global-osm-pt-13524887511-1 too_coarse -> pass: "Rua das Fortunatas 16, Vale das Mós, 2205-810, Portugal" -> "house 16 R FORTUNATAS, 2205-810, Vale Das Mós [pt] 39.342,-8.063"
  • global-osm-pt-4730933879-1 suggest full missing -> pass: "Avenida da Liberdade 41, Serra d'El Rei, 2525-801, Portugal" -> rank 1 (want <= 5); first address 41, AV LIBERDADE, Serra d'El-Rei, Peniche Municipality, Leir [pt]
  • global-osm-pt-4730933879-1 too_coarse -> pass: "Avenida da Liberdade 41, Serra d'El Rei, 2525-801, Portugal" -> "house 41 AV LIBERDADE, 2525-801, Serra d'El-Rei [pt] 39.332,-9.268"
  • global-osm-pt-12161246110-1 suggest full missing -> pass: "Rua Dom Sancho I 14, Covilhã, 6200-197, Portugal" -> rank 1 (want <= 5); first address 14, R D SANCHO I, Covilhã e Canhoso, Covilhã Municipality, C [pt]
  • global-osm-pt-12161246110-1 too_coarse -> pass: "Rua Dom Sancho I 14, Covilhã, 6200-197, Portugal" -> "house 14 R D SANCHO I, 6200-197, Covilhã e Canhoso [pt] 40.276,-7.499"
  • global-osm-pt-12161246110-0 suggest full missing -> pass: "14 Rua Dom Sancho I, Covilhã, 6200-197, Portugal" -> rank 1 (want <= 5); first address 14, R D SANCHO I, Covilhã e Canhoso, Covilhã Municipality, C [pt]
  • global-osm-pt-12161246110-0 too_coarse -> pass: "14 Rua Dom Sancho I, Covilhã, 6200-197, Portugal" -> "house 14 R D SANCHO I, 6200-197, Covilhã e Canhoso [pt] 40.276,-7.499"
  • global-osm-pt-4867999694-0 suggest full missing -> pass: "86 Estrada de Mem Martins, Mem Martins, 2725-377, Portugal" -> rank 1 (want <= 5); first address 86, ESTR MEM MARTINS, Algueirão-Mem Martins, Sintra Municipa [pt]
  • global-osm-pt-4867999694-0 too_coarse -> pass: "86 Estrada de Mem Martins, Mem Martins, 2725-377, Portugal" -> "house 86 ESTR MEM MARTINS, 2725-377, Mem Martins [pt] 38.784,-9.345"
  • global-osm-pt-4867999694-1 suggest full missing -> pass: "Estrada de Mem Martins 86, Mem Martins, 2725-377, Portugal" -> rank 1 (want <= 5); first address 86, ESTR MEM MARTINS, Algueirão-Mem Martins, Sintra Municipa [pt]
  • global-osm-pt-4867999694-1 too_coarse -> pass: "Estrada de Mem Martins 86, Mem Martins, 2725-377, Portugal" -> "house 86 ESTR MEM MARTINS, 2725-377, Mem Martins [pt] 38.784,-9.345"
SearchAddress: changed cases (27)

finer (27)

  • global-osm-pt-13045478456-0 [global_osm_pt] finer, nudged, good_match, components: "106 Caminho Figueirinhas, 9135-130, Portugal": "street Caminho das Figueirinhas, 9135-130, Camacha [pt] 32.687,-16.871" -> "house 106 CAM FIGUEIRINHAS, 9135-130, Camacha [pt] 32.694,-16.872"
  • global-osm-pt-12235122947-0 [global_osm_pt] finer, components: "38 Avenida General Humberto Delgado, Castelo Branco, 6000-08": "postcode 6000-081, Castelo Branco [pt] 39.825,-7.487" -> "street Avenida General Humberto Delgado, 6000-081, Castelo Branco [pt] 39.825,-7.487"
  • global-osm-pt-13524887511-0 [global_osm_pt] finer, good_match, components: "16 Rua das Fortunatas, Vale das Mós, 2205-810, Portugal": "street Rua das Fortunatas, 2205-810, São Facundo e Vale das Mós [pt] 39.342,-8.063" -> "house 16 R FORTUNATAS, 2205-810, Vale Das Mós [pt] 39.342,-8.063"
  • global-osm-pt-4730933879-0 [global_osm_pt] finer, nudged, good_match, components: "41 Avenida da Liberdade, Serra d'El Rei, 2525-801, Portugal": "postcode 2525-801, Serra d'El-Rei [pt] 39.332,-9.271" -> "house 41 AV LIBERDADE, 2525-801, Serra d'El-Rei [pt] 39.332,-9.268"
  • address-4-rua-da-imprensa-estrela-portugal [address] finer, nudged, good_match, components: "4 Rua da Imprensa à Estrela, Portugal": "street Rua da Imprensa à Estrela, Estrela [pt] 38.714,-9.156" -> "house 4 R IMPRENSA A ESTRELA S BENTO, 1200-873, Estrela [pt] 38.713,-9.155"
  • global-osm-pt-13697969410-0 [global_osm_pt] finer, nudged, components: "2 Avenida Virgílio Ferreira, Melo, 6290-121, Portugal": "postcode 6290-121, Melo e Nabais [pt] 40.520,-7.535" -> "street AV VIRGILIO FERREIRA, 6290-121, Melo [pt] 40.519,-7.532"
  • global-osm-pt-13045478456-1 [global_osm_pt] finer, nudged, good_match, components: "Caminho Figueirinhas 106, 9135-130, Portugal": "street Caminho das Figueirinhas, 9135-130, Camacha [pt] 32.687,-16.871" -> "house 106 CAM FIGUEIRINHAS, 9135-130, Camacha [pt] 32.694,-16.872"
  • global-osm-pt-6808076453-1 [global_osm_pt] finer, nudged, good_match, components: "Rua Tenente Valadim 29, Leiria, 2410-190, Portugal": "street Rua Tenente Valadim, 2410-190, Leiria, Pousos, Barreira e Cortes [pt] 39.742,-8.803" -> "house 29 R TEN VALADIM, 2410-190, Leiria, Pousos, Barreira e Cortes [pt] 39.743,-8.804"
  • global-osm-pt-6808076453-0 [global_osm_pt] finer, nudged, good_match, components: "29 Rua Tenente Valadim, Leiria, 2410-190, Portugal": "street Rua Tenente Valadim, 2410-190, Leiria, Pousos, Barreira e Cortes [pt] 39.742,-8.803" -> "house 29 R TEN VALADIM, 2410-190, Leiria, Pousos, Barreira e Cortes [pt] 39.743,-8.804"
  • global-osm-pt-8500012250-0 [global_osm_pt] finer, moved, good_match, components: "20 Rua da Azenha Velha, Pedrogão, 7960-063, Portugal": "postcode 7960-063, Selmes [pt] 38.191,-7.727" -> "house 20 R AZENHA VELHA, 7960-063, Pedrógão [pt] 38.121,-7.648"
  • global-osm-pt-8500012250-1 [global_osm_pt] finer, moved, good_match, components: "Rua da Azenha Velha 20, Pedrogão, 7960-063, Portugal": "postcode 7960-063, Selmes [pt] 38.191,-7.727" -> "house 20 R AZENHA VELHA, 7960-063, Pedrógão [pt] 38.121,-7.648"
  • global-osm-pt-12393916706-0 [global_osm_pt] finer, nudged, good_match, components: "12 Rua dos Farias, Pinhal Novo, 2955-243, Portugal": "street Rua dos Farias, 2955-243, Pinhal Novo [pt] 38.622,-8.903" -> "house 12 R FARIAS, 2955-243, Pinhal Novo [pt] 38.620,-8.902"
  • global-osm-pt-12393916706-1 [global_osm_pt] finer, nudged, good_match, components: "Rua dos Farias 12, Pinhal Novo, 2955-243, Portugal": "street Rua dos Farias, 2955-243, Pinhal Novo [pt] 38.622,-8.903" -> "house 12 R FARIAS, 2955-243, Pinhal Novo [pt] 38.620,-8.902"
  • global-osm-pt-9846324789-0 [global_osm_pt] finer, good_match, components: "12 Travessa da Belchiora, Santo Aleixo, 7450-242, Portugal": "street Travessa da Belchiora, 7450-242, Santo Aleixo [pt] 38.921,-7.419" -> "house 12 TV BELCHIORA, 7450-242, Santo Aleixo [pt] 38.921,-7.419"
  • global-osm-pt-9846324789-1 [global_osm_pt] finer, good_match, components: "Travessa da Belchiora 12, Santo Aleixo, 7450-242, Portugal": "street Travessa da Belchiora, 7450-242, Santo Aleixo [pt] 38.921,-7.419" -> "house 12 TV BELCHIORA, 7450-242, Santo Aleixo [pt] 38.921,-7.419"
  • global-osm-pt-3768703397-0 [global_osm_pt] finer, nudged, good_match, components: "6 Avenida da Noruega, Ribeira de Pena, 4870-151, Portugal": "postcode 4870-151, Ribeira de Pena (Salvador) e Santo Aleixo de Além-Tâmega [pt] 41.519,-7.793" -> "house 6 AV NORUEGA, 4870-151, Ribeira de Pena (Salvador) e Santo Aleixo de Além-Tâmega [pt] 41.518,-7.794"
  • global-osm-pt-3768703397-1 [global_osm_pt] finer, nudged, good_match, components: "Avenida da Noruega 6, Ribeira de Pena, 4870-151, Portugal": "street Avenida da Noruega, 4870-151, Ribeira de Pena (Salvador) e Santo Aleixo de Além-Tâmega [pt] 41.519,-7.794" -> "house 6 AV NORUEGA, 4870-151, Ribeira de Pena (Salvador) e Santo Aleixo de Além-Tâmega [pt] 41.518,-7.794"
  • global-osm-pt-8623636413-0 [global_osm_pt] finer, nudged, good_match, components: "1 Travessa da Cruz, Cachopo, 8800-014, Portugal": "street Travessa da Cruz, 8800-014, Cachopo [pt] 37.334,-7.817" -> "house 1 TV CRUZ, 8800-014, Cachopo [pt] 37.334,-7.818"
  • global-osm-pt-8528915510-0 [global_osm_pt] finer, good_match, components: "867 Bairro de Santa Bárbara, Aljustrel, 7600-023, Portugal": "postcode 7600-023, Aljustrel [pt] 37.868,-8.166" -> "house 867 BR S BARBARA, 7600-023, Aljustrel [pt] 37.868,-8.166"
  • global-osm-pt-8528915510-1 [global_osm_pt] finer, good_match, components: "Bairro de Santa Bárbara 867, Aljustrel, 7600-023, Portugal": "postcode 7600-023, Aljustrel [pt] 37.868,-8.166" -> "house 867 BR S BARBARA, 7600-023, Aljustrel [pt] 37.868,-8.166"
  • global-osm-pt-8623636413-1 [global_osm_pt] finer, nudged, good_match, components: "Travessa da Cruz 1, Cachopo, 8800-014, Portugal": "street Travessa da Cruz, 8800-014, Cachopo [pt] 37.334,-7.817" -> "house 1 TV CRUZ, 8800-014, Cachopo [pt] 37.334,-7.818"
  • global-osm-pt-13524887511-1 [global_osm_pt] finer, good_match, components: "Rua das Fortunatas 16, Vale das Mós, 2205-810, Portugal": "street Rua das Fortunatas, 2205-810, São Facundo e Vale das Mós [pt] 39.342,-8.063" -> "house 16 R FORTUNATAS, 2205-810, Vale Das Mós [pt] 39.342,-8.063"
  • global-osm-pt-4730933879-1 [global_osm_pt] finer, nudged, good_match, components: "Avenida da Liberdade 41, Serra d'El Rei, 2525-801, Portugal": "street Avenida da Liberdade, 2525-801, Serra d'El-Rei [pt] 39.332,-9.270" -> "house 41 AV LIBERDADE, 2525-801, Serra d'El-Rei [pt] 39.332,-9.268"
  • global-osm-pt-12161246110-1 [global_osm_pt] finer, good_match, components: "Rua Dom Sancho I 14, Covilhã, 6200-197, Portugal": "street Rua Dom Sancho I, 6200-197, Covilhã e Canhoso [pt] 40.276,-7.499" -> "house 14 R D SANCHO I, 6200-197, Covilhã e Canhoso [pt] 40.276,-7.499"
  • global-osm-pt-12161246110-0 [global_osm_pt] finer, good_match, components: "14 Rua Dom Sancho I, Covilhã, 6200-197, Portugal": "street Rua Dom Sancho I, 6200-197, Covilhã e Canhoso [pt] 40.276,-7.499" -> "house 14 R D SANCHO I, 6200-197, Covilhã e Canhoso [pt] 40.276,-7.499"
  • global-osm-pt-4867999694-0 [global_osm_pt] finer, nudged, good_match, components: "86 Estrada de Mem Martins, Mem Martins, 2725-377, Portugal": "street Estrada de Mem Martins, 2725-377, Algueirão-Mem Martins [pt] 38.789,-9.345" -> "house 86 ESTR MEM MARTINS, 2725-377, Mem Martins [pt] 38.784,-9.345"
  • global-osm-pt-4867999694-1 [global_osm_pt] finer, nudged, good_match, components: "Estrada de Mem Martins 86, Mem Martins, 2725-377, Portugal": "street Estrada de Mem Martins, 2725-377, Algueirão-Mem Martins [pt] 38.789,-9.345" -> "house 86 ESTR MEM MARTINS, 2725-377, Mem Martins [pt] 38.784,-9.345"

Landmark checks (head)

Check Cohort pass ranked_low missing unexpected error
full suggest_landmark 53 0 18 0 0
off suggest_landmark 71 0 0 0 0
Check Cohort pass empty wrong_place wrong_region wrong_country
--- --- ---: ---: ---: ---: ---:

@codspeed

codspeed Bot commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Merging this PR will not alter performance

✅ 8 untouched benchmarks
⏩ 2 skipped benchmarks1


Comparing fix/portugal-register-street-names (b4b1356) with main (7a02601)

Open in CodSpeed

Footnotes

  1. 2 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩

@Mokto
Mokto merged commit 94e6674 into main Oct 20, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant