# Real vs Demo Data Policy GeoIntel may use demo fixtures during early development, but the UI and backend must clearly distinguish demo data from live data. ## Data Categories ### Real Data Data fetched from or uploaded by a real source: - GRB WFS/cache, - user-uploaded GeoTIFF, - user-uploaded GeoJSON/Shapefile/GPKG, - Sentinel scene, - DHMV product. ### Demo Fixture Data Small repository-contained examples used for development and tests: - `demo/geel/reference_buildings.geojson`, - `demo/geel/demo_detections.geojson`, - `fixtures/geojson/*`. ### Synthetic Test Data Minimal generated data used only in unit tests. ## Rules - Demo data may be used to build UI states and verify pipelines. - Demo data must be labeled as demo in API responses. - Real-data adapters must not silently fall back to demo data. - A failed external fetch must return an error/status, not demo data. - Synthetic data must not appear in production UI unless under a test/demo route. ## Dataset Metadata Field Every dataset must include: ```json { "source_mode": "real|demo|synthetic", "source_name": "GRB|OSM|user_upload|fixture|generated_test", "license": "string or unknown", "retrieved_at": "ISO date or null" } ``` ## UI Requirement The dataset table must display a source badge: - Real - Demo - Synthetic - Unknown Synthetic should never be shown in normal user workflows.