Repository navigation
feat(places): add ranked regional places to normal map browsing - #436
Open
Medformatik wants to merge 14 commits into
Open
Medformatik wants to merge 14 commits into
Medformatik wants to merge 14 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Show ranked, named OSM/Overture destinations during ordinary browsing in one operator-published German region. Tiles, accepted OSM↔GERS search results, matched owned-basemap taps and details share canonical identities; category/selection markers suppress duplicates.
Publish bounded immutable PostGIS generations with conservative closure/confidence/tenant policy, source provenance, staged atomic publication, generation cache URLs, failed-build fallback, disable/enable and rollback. Authenticated admin controls expose coverage and policy version. Existing developer and user documentation is updated.
Policy 2 uses auditable regional landmark evidence rather than translated-name count alone. Actual extractor categories and legacy tag storage are handled, production localization preserves supplied translations, category/DOM markers retain click priority, retained snapshots resolve their exact GERS entity, theme recreation retains suppression, and uncategorized indexed road/building records stay out of ambient publication. Quirinus-Münster and Cologne Cathedral are real positive controls; ordinary/private/closed/tenant features remain negative controls.
Ambient places now use the active basemap's category badges, label colors, fonts, sizes and halos. The separate teal dots are removed. Ordinary names sit below their badges; landmark names use compact wrapping and can remain visible when only the badge collides. Neither icons nor text force overlap. Style reloads refresh both cartography and canonical suppression.
Fixes #399
Final implementation commit:
6a3c4fbf0(includes the current-main integration and cartographic correction).Verification
78e099076, resolving the database-suite script and the new ambient importer peer version while preserving upstream migrations and dependency pins. The artifact preserves earlier measurements with their original hashes and identifies the final cartographic renderer, Next 16.3.8 and MapLibre 6.10.0 separately.[6.58,50.89,7.07,51.31], produced 14,232 indexed places and 13,454 eligible ambient destinations. Source URLs, SHA-256, epochs, runtime, generations, code hashes, individual measurements and image hashes are recorded in the acceptance artifact.Before / after
Before is the actual PR base (
78e099076424), without any changes from this PR. These replacement images were captured from a separate production build of that base commit; the ambient integration does not exist in that source. They replace the incorrectly labelled images of an intermediate renderer within this PR. After remains the unchanged6a3c4fbf0capture.Matching Neuss camera
[6.6916,51.1982], zoom 16, bearing/pitch 0, German, owned light/dark style and hosted basemap. The basemap style assets and tileset build/replication provenance match the after captures. Temporary camera/theme QA controls are visible in both sets and absent from the shipped app; the baseline controls identify the pre-PR build. Desktop CSS viewport: 1280 × 800, exported by T3 preview as 640 × 400 PNGs. Native iPhone Safari PNGs: 402 × 874.Light style:
Dark style, same camera:
Native iPhone 18 Pro simulator Safari, same camera:
78e099076)6a3c4fbf0)The
visualCartographyFollowupsection in the acceptance artifact retains the historical comparison of two renderers within this PR. Those historical images are not the pre-PR baseline shown above.The unchanged admin controls/provenance from the prior implementation acceptance are shown below. This earlier capture uses its own generation; the induced failed-stage error retains active publication. Outer authentication is bypassed only in the disposable rendering fixture; production API authorization is tested separately.
Rollout limits
An operator must build the existing regional OSM index, optionally finish Overture ingestion/conflation, then publish under Admin → Services → Data workflows → Nearby places. This PR verifies a real OSM-only regional extract locally; Overture/confidence/conflation and enabled-provider canonical and retained-snapshot GERS resolution use real PostGIS regression fixtures. It has not merged or deployed anything.
The existing OSM index requires alias/code/acronym terms: source-present name-only objects can still be missing. Uncategorized destinations, conservative policy, tile caps, source gaps and collisions limit coverage. Initial bounds are at most 0.5° × 0.5°, 100,000 input rows per source/output places, source publication age at most 90 days. Discovery disable does not revoke cached immutable tiles.
Frame results are qualified local simulator measurements, not physical-device thermal/battery certification. Restarted-cold database, deployed network/CDN and physical devices remain rollout checks. Snapshot GERS details can lack richer live-provider metadata. No planet/direct ATP ingestion, geocoder rewrite, OpenConditions/adapters/feeds/mobility changes, or offline package is included.
Checklist