From 8682ec8140438a55898a3bfec2663c9fef6888f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ullrich=20Sch=C3=A4fer?= Date: Sun, 12 Apr 2026 22:32:54 +0200 Subject: [PATCH] Archive map-core-package, sync spec to main All 28 tasks complete. Spec synced to openspec/specs/map-core/. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../.openspec.yaml | 0 .../2026-04-12-map-core-package}/design.md | 0 .../2026-04-12-map-core-package}/proposal.md | 0 .../specs/map-core/spec.md | 0 .../2026-04-12-map-core-package}/tasks.md | 0 openspec/specs/map-core/spec.md | 23 +++++++++++++++++++ 6 files changed, 23 insertions(+) rename openspec/changes/{map-core-package => archive/2026-04-12-map-core-package}/.openspec.yaml (100%) rename openspec/changes/{map-core-package => archive/2026-04-12-map-core-package}/design.md (100%) rename openspec/changes/{map-core-package => archive/2026-04-12-map-core-package}/proposal.md (100%) rename openspec/changes/{map-core-package => archive/2026-04-12-map-core-package}/specs/map-core/spec.md (100%) rename openspec/changes/{map-core-package => archive/2026-04-12-map-core-package}/tasks.md (100%) create mode 100644 openspec/specs/map-core/spec.md diff --git a/openspec/changes/map-core-package/.openspec.yaml b/openspec/changes/archive/2026-04-12-map-core-package/.openspec.yaml similarity index 100% rename from openspec/changes/map-core-package/.openspec.yaml rename to openspec/changes/archive/2026-04-12-map-core-package/.openspec.yaml diff --git a/openspec/changes/map-core-package/design.md b/openspec/changes/archive/2026-04-12-map-core-package/design.md similarity index 100% rename from openspec/changes/map-core-package/design.md rename to openspec/changes/archive/2026-04-12-map-core-package/design.md diff --git a/openspec/changes/map-core-package/proposal.md b/openspec/changes/archive/2026-04-12-map-core-package/proposal.md similarity index 100% rename from openspec/changes/map-core-package/proposal.md rename to openspec/changes/archive/2026-04-12-map-core-package/proposal.md diff --git a/openspec/changes/map-core-package/specs/map-core/spec.md b/openspec/changes/archive/2026-04-12-map-core-package/specs/map-core/spec.md similarity index 100% rename from openspec/changes/map-core-package/specs/map-core/spec.md rename to openspec/changes/archive/2026-04-12-map-core-package/specs/map-core/spec.md diff --git a/openspec/changes/map-core-package/tasks.md b/openspec/changes/archive/2026-04-12-map-core-package/tasks.md similarity index 100% rename from openspec/changes/map-core-package/tasks.md rename to openspec/changes/archive/2026-04-12-map-core-package/tasks.md diff --git a/openspec/specs/map-core/spec.md b/openspec/specs/map-core/spec.md new file mode 100644 index 0000000..23d1b4b --- /dev/null +++ b/openspec/specs/map-core/spec.md @@ -0,0 +1,23 @@ +## ADDED Requirements + +### Requirement: Renderer-agnostic map definitions +The `@trails-cool/map-core` package SHALL provide map configuration data usable by any rendering engine. + +#### Scenario: Tile source definitions +- **WHEN** a renderer needs tile layer URLs +- **THEN** `map-core` provides base layer and overlay layer configs with URL templates, attribution, and zoom limits + +#### Scenario: Route color palettes +- **WHEN** a renderer needs to color a route by surface, highway, grade, or other mode +- **THEN** `map-core` provides the color mapping and color functions for all supported modes + +#### Scenario: POI category definitions +- **WHEN** a renderer needs POI icons, colors, and Overpass queries +- **THEN** `map-core` provides the full category configuration + +### Requirement: No rendering dependencies +The package SHALL have zero dependencies on any rendering library (Leaflet, MapLibre, React, DOM). + +#### Scenario: Import in any environment +- **WHEN** `map-core` is imported in Node.js, a browser, or React Native +- **THEN** it works without errors — no DOM APIs, no rendering side effects