Future Extensions & Conventions

Ported from the full pack's future-extensions and package-conventions docs. For the immediate runtime work (the spatial/event engine), see 03 — Phase 2 Scope.

Spatial database path

SQLite + JSON  →  SpatiaLite  →  PostgreSQL + PostGIS

GIS integrations

ArcGIS REST Feature Services · GeoJSON APIs · WFS · WMS · GeoPackage · Shapefile import · QGIS/PostGIS.

Coordinate systems

gist already declares storage EPSG:4326 and analysis EPSG:7856; extend with per-layer declared CRS, transformation caching and projected-distance handling for other regions.

Spatial operations

touches · crosses · overlaps · buffer · nearest · union/intersection · change detection.

Temporal spatial data

SpatialFeature already carries valid_from / valid_to; extend to answer "what did the spatial relationship look like when the decision was made?" with versioned/immutable geometry snapshots.

External identity

Map DSLCore feature IDs to ArcGIS object IDs, government identifiers and internal asset IDs (the external_ref + source_ref fields are the anchor).

Downstream governance chain

evidence → exception → risk → decision → obligation → action

The GIS portal remains the source of spatial evidence rather than absorbing the full governance workflow (that lives in the Orchestrator and downstream apps).


Package conventions

Separation of concerns

  • DSL (schema/gist.dsl) — structural contracts: models, fields, enums, relationships, API shape.
  • YAML (schema/*.yaml) — runtime/configurable behaviour: app/menu/dashboard/field/tab/ui config; the spec pack's seed/rules/config/tests.
  • Documentation (docs_portal/) — purpose, boundaries, architecture, behaviour, tests, order.

Stable codes — reference by stable code, never display name: ROAD_INTERSECTS_MINING_LEASE, RP-2026-001, ML-1032, EA-076, PIPE-44, coordination_basic.

Version fieldsdsl_schema_version, config_schema_version, event_schema_version (the pack is 0.2.0; event templates schema_version: "1.0"). Introduce explicit versions before external consumers depend on the contracts.