Skip to content

Add direct AllThePlaces enrichment if the pilot justifies it #400

Closed as not planned
Closed as not planned

Description

@Medformatik

Provider or source name

Direct AllThePlaces (ATP) business extract; conditional production follow-up to pilot #397.

What would this enable?

Verified need and scope

Rechecked on 30 October 2026 against main at fe796a6405f215fda3b18032e8181ed8647ac108; existing issues/discussions contain only pilot #397 for direct ATP. Existing Overture source normalization already credits ATP-derived records, but no direct ATP importer/job is present; ambient place publication states that ATP ingestion is not part of that pipeline. Reuse the staged Overture jobs (including conflation safeguards), ambient place generations and Overture fact enrichment, adapting contracts where necessary rather than weakening identity rules. The generic poi-ingest pipeline previously linked here was removed in fa60fb46d (charging sites moved to OpenConditions), so it is no longer a reuse candidate.

Prepare for production only after #397 demonstrates useful correct delta. Add source-aware normalization, staged/atomic generations, repeatable update jobs, field-level donation/conflict policy and rollback. Feed the canonical place identities that #399 established through #436 (publication, retention and identity, packages/core/src/ambient-places.ts). Out of scope: rerunning ATP spiders in the shared API, replacing OSM facts blindly, scraping proprietary providers or expanding to a planet-scale deployment.

Acceptance criteria

  • The pilot's go/no-go decision and selected region/schema are explicit; a no-go leaves production deferred.
  • Acquisition verifies run/checksum/coverage and handles corrupt/changed/missing sources without replacing the previous generation.
  • Updates are idempotent, resumable/cancellable and observable, with bounded resource preflight, retention and rollback.
  • Canonical donor IDs and observation times survive into per-field facts; contradictory/missing/stale facts follow a documented precedence policy.
  • Same-brand branches, tenants/floors, closures and coordinate ambiguity have negative conflation tests and sampled quality thresholds.
  • API/search/details and ambient product resolve the same entity; incremental source changes invalidate affected caches/generations coherently.
  • OSM contribution eligibility remains separate from display enrichment; attribution/provenance and operator docs are updated.
  • Repeat the pilot's useful-place/hour/contact metrics after publication, with no false improvement from raw row counts.

Official website or documentation (if known)

https://www.alltheplaces.xyz/

API and data documentation

ATP upstream project, its published run format and data/software license. Pin the exact chosen run/schema/checksum during the pilot; a floating latest URL is not a release contract.

Capability

POI / places; Knowledge / enrichment

Geographic coverage (if known)

Source-dependent business coverage; launch in the pilot region only. This issue does not claim uniform global coverage or guaranteed operating-hours freshness.

Access requirements (if known)

Fully open, no key required

Rights and attribution (if known)

ATP output data is released under CC0; spider software is MIT. Preserve canonical source/run/observation metadata and donor provenance even where attribution is optional. Merged OSM/Overture content retains its own source-specific license/notice requirements. Do not infer permission to make automatic OSM edits from possession of a business fact.

Additional context

Maps to an existing service?

Extend data-manager/PostGIS ingestion and the existing place/conflation/resolver pipeline. Decide whether the staged Overture and ambient place generation mechanisms can host this source; a new daemon is not assumed.

Ownership and status

Conditional backlog. Production implementation depends on the pilot result.

Dependencies and verification

Blocked by positive ATP pilot #397. The place identity/publication contract from #399 landed in #436 and is no longer a blocker. Related #301 (Overture scaling) and #303 (OSM replication) are separate work, not required planet-scale prerequisites. Resolve donor precedence and closure/freshness policy before implementation.

Use staging failure/retry/rollback and real migrated PostGIS tests, provider/conflation negative fixtures, source notices and resolver/cache tests. Run pnpm lint, pnpm check-types, pnpm test, applicable pnpm test:database, pnpm check:policy, and docs build; publish a bounded-region rollout/rollback report.

Activity

  1. added
    integrationNew or changed provider, source or backend integration
    needs-triageOpen issue awaiting initial maintainer review
    on Oct 6, 2026
  2. updated Priority Medium and Effort Medium on Oct 6, 2026
  3. Medformatik commented on Oct 7, 2026

    @Medformatik
    CollaboratorAuthor

    Overnight dependency check: #397 remains an uncompleted measured pilot, and #399's common place identity/publication work remains open. This issue explicitly requires both a positive ATP pilot and that identity contract before production ingestion.

    Current code already maps ATP-derived Overture donor metadata (packages/core/src/utils/overtureSource.ts) and has staged Overture/conflation mechanisms, but those do not prove a useful incremental direct-ATP delta. I left this conditional production task open and did not start a source job during the at-most-Medium batch. The #397 preflight records the exact-generation and independent-label prerequisites. Resume only after its evidence supports a go and the shared publication identity/rollback contract is established; otherwise retain a no-go/deferred production decision.

  4. changed the title [-]Productionize direct AllThePlaces enrichment after a successful pilot[/-] [+]Add direct AllThePlaces enrichment if the pilot justifies it[/+] on Oct 18, 2026
  5. Medformatik commented on Nov 1, 2026

    @Medformatik
    CollaboratorAuthor

    Closing as not planned after a backlog review, together with the pilot #397 it depends on.

    This issue is conditional on a positive result from #397, which has not run and is now closed. ATP data already arrives through Overture (packages/core/src/utils/overtureSource.ts). Reopen both only if user reports show that Overture's ATP-derived hours or contacts are insufficient.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    integrationNew or changed provider, source or backend integration

    Fields

    Priority

    Medium

    Effort

    Medium

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions