Repository navigation
Investigate ordinary business name/address retrieval using the Berlin EDEKA case #430
Description
Activity
- addedneeds-triageNeeds initial review and categorizationNeeds initial review and categorization
on Oct 7, 2026 The bounded investigation is delivered in PR #434, now reduced to reusable evaluation inputs/tools and a concise report. Dated UI/status/timing/complete per-query capture records and the throwaway prototype stay outside repository Git:
- October 7 capture archive: immutable commit, checksums, source credits/rights, original report, selected raw/adapted/aggregate captures and historical UI/rank/Enter observations. Full raw operator files were temporary and are not claimed as a durable public artifact.
- October 8 reviewed lexical probe: immutable commit, source projection/provenance, checksums, pinned disposable-container command, probe/tests, SQL plans/measurements and source replay.
Moch is verified in Overture
2026-09-23.1(GERS035b544e-40f5-4ce0-a06f-1c9032ded028, v13). Its official Grunerstr. 20 address/phone were rechecked October 8. MapTiler's Alexanderstraße 25 result points to a generic OSM EDEKA mall room; that remains an unresolved business identity/address inference, not a verified different branch or Moch success. Official Schaaf profile now returned 404; dated source/control identity remains retained, current operating status unknown rather than closed.Initial follow-up source replay uses main
fe6b7969979ae024655e38d3b4f605295e757f93(the later fresh-main/#438 comparison is pinned below), including #432; fixed raw/provider inputs are dated October 7, deployment/source/cache conditions unknown. #432 moves Berlin MediaMarkt above Rijswijk and avoids opening the Dutch branch on Enter. Raw/adapted/current-ranked geocoder recall stays 4/9: ranking does not recover missing named candidates.The disposable SQL prototype over 3,255 cached Overture bbox records retrieves 7/8 positive queries whose targets were inspected (REWE outside bbox, unknown). Combined with the saved geocoder pool, verified Hit@3 increases 4/9→8/9. Both lexical negatives return no result. EDEKA Alexa stays missing without a verified mall-name association. Three valid Moch address variants rank first but still produce weak/search Enter on main. These are offline candidate/composition results, not an enabled provider or new live UI outcome.
Warm SQL p95 across 20 repeats/query is 0.205–3.396ms on PostgreSQL 18.6/PostGIS 3.6.4, own network-disabled 2 CPU/512MiB container/tmpfs. Import 1.60 s/index 0.16 s; table 2,392,064/index 1,056,768 bytes; whole-container peak 300,068,864 bytes. Docker/psql command p95 67.8–94.0ms is not provider latency. Cold/region-scale/API costs remain unknown; broad plans can scan rows beyond the candidate cap.
Review found postcode-as-house substitution in the initial probe and missing image-startup instructions. Separate house/locality roles plus postcode/region negatives now pass (10 normalization/SQL + 15 real DB checks); the refreshed archive has a pullable pinned image and executable reproduction. Café/store name priority was also reproduced and corrected without merging tenants. Repo checks: 113 focused tests passed, 2 opt-in database suites skipped; types/lint/docs passed. Full local suite limitations and current CI are tracked in the PR.
Decision: GO for staged existing-data lexical development; NO-GO for production adoption yet. Remaining gates: verified mall association, verified name+address Enter intent, intended deployed generation/resolver readiness, verified cross-source duplicate handling, regional/cold/warm/fallback budgets. #429 is actively owned by a separate task; coordination occurred and its worktree/branch were left untouched. No production pipeline/data/cache/config changes, embeddings, new ATP ingestion, global rollout, merge or deployment.
Separately evaluated #438 at head
dadd03d5339ad65b64de7a8240054d3befacd10cvs ancestor5f07b70967319b4b2c86769b542b551b93f98e02(current main9b212363ba891e97ac4a19c080a10bbc0e343cbdidentical on these traces): ranked geocoder rows 65→78 of 78; lexical+geocoder rows 75→90 of 90. Strict Hit@3 and all Enter unchanged. Candidate preservation is deduplication, not retrieval improvement; cross-source duplicates remain pending corroborated identity. No other worktree/branch changed. Updated archive includes all separately pinned traces.
Before you start
Objective
Determine why ordinary business name/address searches fail to retrieve a verified nearby business, using EDEKA Moch at Grunerstraße 20 in Berlin as the initial case. Establish whether the limiting factor is upstream coverage, query interpretation, deployed local data, or the lack of a local lexical candidate path, then recommend a bounded next step.
The goal is to make named business search reliable using evidence from existing sources before adding another production data pipeline or a semantic-search engine.
Scope
Verified starting evidence
Checked on 2026-10-07, against relevant code on main
3c80939d26a09f131b16d849895255436b5e5798:EDEKA AlexaandEDEKA Grunerstraßereturn an EDEKA at Alexanderstraße 25. That is a different returned address; it has not been verified as the same tenant. A nearby same-brand result must not count automatically as successful retrieval.The code exposes distinct limitations that warrant investigation:
Investigation boundaries
Use a small, versioned set of ordinary business queries, including short names, names plus addresses, nearby alternative branches, ambiguous brands and negative queries. Start in the existing German pilot regions. Inspect available OSM/Overture data with stable source IDs and actual addresses; report explicitly when deployed data cannot be inspected.
Keep raw-provider retrieval, adapter output, combined candidates, ranking and UI selection as separate evidence layers. Capture authorized raw-provider evidence with credentials redacted. A missing final row does not by itself prove a missing source feature.
If the desired business exists in an available dataset, describe and evaluate a bounded lexical candidate path through the existing search composition. If it is absent, document the source gap and the evidence needed for a source-enrichment pilot.
Outside this task: a production ingestion pipeline, embeddings/vector search, global rollout, broad search UI redesign, or changing production data.
Completion criteria
Dependencies
No known hard prerequisite. Reuse the evaluation foundation from #409 / #424 and its live evidence comment. #428 and #429 address independently reproduced ranking/deduplication defects; keep those effects separate when measuring retrieval. Related: #297 (semantic recall), #399 (place identity/map discovery), #397 / #400 (conditional ATP evaluation/productionization). These are related work, not blockers or a requirement to add a new source.