- MVP
- Door-to-desk with the right entrance; cool corridors (shortest or coolest walk); heat now and next 24 h.
- Later
- Last-way-home guardian; heat-safe shift planner with Gujarati and Hindi voice alerts for outdoor staff.
The short version
The problem
About 25,000 to 30,000 people work in GIFT City. Their day is shaped by heat over 40 °C, a metro branch that ran only at peak hours, and almost no autos after 7:30 pm. The city's rich operational data never reaches them.
Our answer
One twin core with two faces: a phone companion for the people who walk, commute and work there, and a 3D console where operators and planners see forecasts and test what-ifs.
Proof so far
A working twin built in two days from open data: 1,718 buildings fused from five sources, live weather and air quality, a moving metro, and three what-if questions answered with numbers.
What we need
Four decisions (endgame, primary user, team and budget, GIFTCL access) and a short round of user interviews before the MVP is locked.
Why this twin, and why now
GIFT City already runs one of India's most instrumented utility networks, and an official portal twin is being built. Neither helps a commuter at 1 pm in May. We build the part that is missing: daily usefulness and prediction, on open standards so it can plug into the official platform later.
| Documented pain | What people report | What only a twin can do about it | Fit |
|---|---|---|---|
| Heat on foot | Summers around 40 °C make walks impractical; staff ask for shaded paths. | Shade-aware walking and street-level heat stress need 3D buildings, sun position and weather together. | Strong |
| Getting home | Metro branch ran 07:36–10:18 and 16:06–19:13, every 49–57 min (Jan 2026). Autos scarce after 7:30 pm. | Door-to-desk planning across metro, GIFT Go and walking, with a warning before the last option leaves. | Strong |
| Finding the place | Visitors and new joiners cannot find the right tower, gate or lobby. | Building, entrance and company finder down to the lobby, with drop-off points. | Medium |
| After-work life | Described as a "ghost town after working hours". | Amenity and event discovery. Useful, but a map does this too. | Weak |
Sources: Outlook Business 2026 (S04), Gujarat metro timetable reporting Jan 2026 (S12). No primary user research yet; see section 07.
Where we sit next to the official twin
| Official (expected) | This project | |
|---|---|---|
| Buyer, vendor | GIFTCL, DEV IT; ₹2.79 crore, filed 1 Jul 2026 | Independent; seeks partnership |
| Focus | Web portal, content, walkthrough, investors | Daily utility for people on the ground |
| Mode | Descriptive: what exists | Predictive: what will happen, what if |
| Openness | Vendor platform | NGSI-LD, CityJSON, 3D Tiles, MCP |
What Indian city twins look like today
Varanasi, Ayodhya, Guwahati and, since September 2026, Ahmedabad (₹283 crore, 625 km², underground utilities) were all procured from mapping vendors. They are strong on base maps, CCTV and asset layers, and weak on prediction, what-if analysis and anything a citizen uses daily.
Our position: base mapping is a vendor game we should not play. The application and simulation layer on top, built on the same open standards, is open ground.
Five principles we hold ourselves to
| Useful on day one | Nothing in the public app may depend on data we do not have yet. Open data first; partner feeds plug in later. |
| Predictive, not descriptive | The MVP predicts at least street heat stress and journey reliability, and answers at least one what-if. |
| Honest by design | Every value shows how it was made. measuredderivedmodelledsynthetic |
| Built to integrate | Standards-based core with adapter interfaces, so GIFTCL's C4 or the official twin can connect without a rewrite. |
| Works in the sun | Companion interactive in 3 s on a mid-range Android over 4G; console at 30 fps on a mid-range laptop. |
Who it serves
Five groups touch GIFT City every day. Each one gets something no map, portal or control-room screen gives them today. The first column is the people we would build for first.
- MVP
- Coolest hour to go out; neighbourhood essentials with walking heat cost.
- Later
- My home's sun profile; future view from my window; report an issue on the 3D map.
- MVP
- Find the exact place, with a shareable meeting pin; a guided 3D story of GIFT City from 2016 to 2030.
- Later
- Arrival kit from airport and railway station; event mode; offline visitor card in three languages.
- MVP
- Heat-wave cockpit; tomorrow's cooling demand per building, labelled modelled.
- Later, with partner data
- Every C4 alarm in 3D context; restricted utility-tunnel view; calibrated cooling twin; evacuation planning.
- MVP
- Drop-a-tower what-if; growth vs cooling capacity by year; 4D city from 2016 to 2030.
- Later
- Plot feasibility with zoning; site selection by talent catchment; generative massing; permit pre-check.
- Shared
- One time control from past to forecast to 2030; ask-the-twin agent that cites sources; provenance on every value; English, Gujarati and Hindi; open API.
- Privacy
- No accounts in the MVP. Routes are computed on the phone; home and office never leave the device (DPDP).
Which data each user needs Data to user matrix
Filled dot: needed for that user's MVP. Ring: needed later. Buildings with heights, footpaths with shade, weather and transit timetables unlock the MVP for four of the five groups, which is why they are the critical path.
| Data | Workforce | Residents | Visitors | Operators | Planners |
|---|---|---|---|---|---|
| Buildings and heights | ● | ● | ● | ● | ● |
| Entrances and drop-offs | ● | ○ | ● | ○ | ○ |
| Footpaths with shade | ● | ● | ○ | ○ | ● |
| Weather forecast | ● | ● | ○ | ● | ● |
| Air quality | ● | ● | ○ | ○ | ○ |
| Transit timetables (GTFS) | ● | ○ | ● | ○ | ● |
| Amenities | ● | ● | ● | ○ | |
| Imagery time series | ○ | ○ | ○ | ● | |
| Master plan and zoning | ○ | ○ | ○ | ● | |
| Cooling SCADA, C4 alarms, tunnel BIM | ○ | ○ | ○ |
The deep-research report adds emergency services, tourists and city administration as separate stakeholders. We fold emergency services and administration into operators, and tourists into visitors, because they share data and interface; their extra needs (evacuation modelling, executive KPIs) sit on the operator roadmap.
What it does
One twin core, two faces, one agent. The core turns public data into a living model of GIFT City. The faces present it to two very different audiences, and the agent answers questions about it in plain language.
Feature status
| Feature | Status | Approach | Who it serves |
|---|---|---|---|
| Multi-source buildings with confidence | Built | Each source is a candidate; a ranked fusion picks a winner and keeps the rest with their evidence. | Everyone |
| Fresh imagery and 13 index layers | Built | Earth Engine composites, 1 m super-resolved scenes, swipe compare 2023 vs 2026. | Planners |
| Roads from 1 m imagery | Built | Our SegFormer model, mask to graph, every edge scored against OSM. | Planners |
| 4D city, 2016 to today | Built | Yearly satellite-derived heights, calibrated; planned towers as ghosts once the master plan is available. | Planners, visitors |
| Metro, signals and traffic animation | Built | Timetable to motion profile to CZML; signals evaluated per frame. Signals and traffic are synthetic. | Operators, planners |
| Weather, India AQI, heat comfort (UTCI) | Built | City conditions card; UTCI on a 20 m grid using every tower's shadow. | Everyone |
| What-if: place a building | Built | Live shadow plus impacts: floor area, occupants, cooling vs capacity, cars, metro load, neighbours losing sun. | Planners, residents |
| Where to open a shop | Built | Multi-criteria scoring on a 60 m grid; rules written in plain English, validated before running. | Investors |
| Scenario Lab | Built | Baseline vs scenario with KPIs, series, narrative and assumptions. Results below. | Operators, planners |
| Shade-aware walking | Feasible now | Shade per footpath segment every 15 min; routing runs on the phone. Gated by spike SP-02. | Workforce, residents |
| Growth vs cooling capacity | Feasible now | EnergyPlus prototype buildings on Ahmedabad weather, scaled by floor area, summed with diversity. | Operators, planners |
| Ask the twin | Feasible now | MCP server exposing the same endpoints as tools; a 50-question known-answer test set. | Everyone |
| Door-to-desk and last-train alert | Needs field data | Hand-built GTFS from official PDFs plus OpenTripPlanner; entrances mapped on site. | Workforce, visitors |
| Real sensor fusion | Needs field data | Optimal interpolation already runs; needs a calibration walk with loggers. | Operators |
| Spatial C4 and calibrated cooling | Needs partner | NGSI-LD adapter into the same reading model; restricted deployment. | Operators |
| Utility-tunnel view | Needs partner | Restricted IFC/CAD; never public. | Operators |
What the proof of concept already answers
Each Scenario Lab question runs a baseline and a scenario through the same engine. Grey is today; marigold is the scenario. Bars are drawn to scale within each card.
Transit
What if the metro ran every 15 minutes, all day?
Average wait for a train home. Working-day minutes with no train within 30 min fall from 78% to 0%; about 256 cars an hour leave the peak.
modelled Timetable reconstructed from news; mode shift is an elasticity estimate.
Traffic
Do coordinated signals cut waiting?
Signal wait per trip, down 37% with optimised offsets. On held-out trips: 29.4 to 20.2 s. A textbook green wave managed only 28 to 27 s.
synthetic Signal plans and demand are seeded; no queueing model yet.
Heat
How much cooler with shade trees?
Share of street cells at or above 35 °C at 14:00. Treated streets are 1.1 °C cooler in air temperature.
modelled Air temperature only; the larger radiant comfort gain is not yet modelled.
A finding that shapes the product: on 29 Oct 2026, only 3 to 7% of GIFT City's ground was in building shade at any daytime hour. Modelled comfort (UTCI) at 14:30 was 38 °C in sun and 34 °C in tower shade. Shade is scarce, which strengthens the case for trees and canopies, and is exactly why shade routing must pass its go/no-go test before it becomes the headline feature.
How it works
We borrow the shape of a proven open smart-city platform, Snap4City, and right-size it for one district and a small team. Data moves through six stages; each stage has one owner in the code and one rule it never breaks.
What we take from Snap4City
- An ontology-first entity model (their Km4City; our NGSI-LD URNs) so every sensor, building and stop is linkable.
- A broker-ready front door with an auth filter, so partner feeds arrive through one guarded entrance.
- A 3D scene built from separate buildings, so each one can be picked, inspected and replaced in a what-if. Their note that fused photoreal meshes block building substitution is why we build our own base.
- What-if as versioned scenarios keyed by time.
- One-command deployment from a single machine upward.
What we leave
- The reference footprint: an 8-CPU, 500 GB virtual machine and a PHP, Drupal, Apache and Tomcat stack. Too heavy for one district and one developer.
- Visual Node-RED flows for core logic. We keep logic in tested code so automated tests can guard it.
- AGPL coupling. Linking AGPL services would set our own licence before we have decided it (Q-10).
- No-code dashboards as the main interface. Our users need answers and routes, not widgets.
Four flows that matter
Base data build, batch
- Fetch each source; write raw files with a manifest (URL, date, SHA-256, licence).
- Validate schema, coordinate system and geometry.
- Fuse footprints and heights by trust rank; keep every candidate.
- Write entities with stable URNs; build 3D Tiles, vector tiles, shade tables, routing graph.
- Publish a versioned build (build ID, git SHA, manifests).
Shade-aware route, on the phone
- Load the routing graph and this season's shade table once; cache for offline.
- A Web Worker runs time-dependent A* with the user's shortest-to-coolest setting.
- Show the route, % shaded and extra metres.
- No trace is sent to any server.
Heat stress, hourly
- Fetch the forecast; compute UTCI per street segment from now to +24 h.
- Combine weather with each segment's shade and surface type.
- Store in TimescaleDB; serve as tiles with method and run ID.
What-if, on request
- The console posts a footprint, height and use.
- A worker recomputes shadows, broken shade routes, cooling and trips.
- Results are stored per scenario ID and diffed against the baseline build.
- Target: answer within 10 s.
Rules the design never breaks
| ADR | Decision | Why it matters | Status |
|---|---|---|---|
| 0005 | Provenance on every value | Modelled numbers mistaken for measured ones would destroy trust with a government audience. | Proposed |
| 0006 | Classification enforced server-side | Utility tunnel, substations and CCTV are critical infrastructure. Hiding a layer in the UI is not security. | Proposed |
| 0007 | Build our own 3D base | Google's photoreal tiles do not cover India, and their terms forbid measuring from them. | Proposed |
| 0008 | NGSI-LD shaped live entities | BIS IS 18003 and IUDX are NGSI-LD based; this is how we plug into Indian government platforms. | Proposed |
| 0010 | Simulation: plans in, state out | Deterministic, seeded engines make every scenario reproducible and testable. | Accepted |
| 0011 | LLM proposes, schema decides, human reviews | The model never computes a number we show; it writes rules that are validated and editable. | Accepted |
| 0013 | Air quality is city-wide; comfort is spatial | One station 4.5 km away cannot draw a street-level AQI map; heat comfort can. | Accepted |
Data model, identity and security zones Engineering
Core entities: Building, Storey, Entrance, FootpathSegment, RoadSegment, PublicSpace, TransitStop, TransitRoute, Amenity, WeatherForecast, AirQualityObserved, ShadeSample, HeatStressForecast, Scenario, DataSource. Every record carries the same envelope:
{
"id": "urn:ngsi-ld:Building:giftcity:B-GIFT-ONE", // stable forever, never derived from geometry
"type": "Building",
"geometry": "EPSG:4326 stored; EPSG:32643 (UTM 43N) for analysis",
"valid_from": "2013-01-01", "valid_to": null, // 4D: history, today, planned
"status": "operational | under_construction | planned",
"provenance": { "kind": "measured | derived | modelled | synthetic",
"source_ids": ["S24", "D41"], "method": "registry", "run_id": "…" },
"classification": "public | internal | restricted",
"xref": { "osm": "way/…", "open_buildings": "…" } // external IDs are cross-references only
}
| Zone | Contents | Access |
|---|---|---|
| Public | Companion, public tiles, public API | Anonymous, rate-limited |
| Internal | Console, scenarios, agent with internal tools | Signed in (Keycloak, OIDC) |
| Restricted | Partner data: utilities, C4, tunnel BIM | Named users, audited, separate storage, India region |
Standards mapping: buildings as CityGML 3.0 / CityJSON and NGSI-LD Building; footpaths as CityGML TrafficSpace and NGSI-LD RoadSegment; weather and air as Smart Data Models WeatherForecast and AirQualityObserved; transit as GTFS; sensors as OGC SensorThings; building systems later as Brick and IFC.
As-built proof of concept and its API Engineering
| Layer | Code | Rule |
|---|---|---|
| Sources | gifttwin/sources/* | One module per source; every download gets a manifest. |
| Domain | gifttwin/buildings/* | All height candidates kept; the winner is explained. |
| World | gifttwin/world.py | The only runtime file reader; swap for PostGIS here and nothing else changes. |
| Simulation | gifttwin/sim/* | Deterministic and seeded; CZML out. |
| Analytics | gifttwin/analysis/* | Every number carries assumptions and provenance. |
| Integrations | gifttwin/integrations/* | External ML runs behind a process boundary in its own environment. |
| Client | frontend/src/* | React never touches Cesium directly; it updates a store or calls a controller. |
| Endpoint | Purpose |
|---|---|
| GET /api/layers/{buildings,change} | Fused buildings and change polygons as GeoJSON |
| GET /api/world/{context,imagery,roads} | Boundary, metro, roads, POIs; imagery catalogue; road-extraction stages |
| GET /api/sim/{transit,vehicles}.czml | Time-dynamic metro and traffic |
| GET /api/sim/{sensors,heat,conditions,comfort} | Readings, fused heat field, weather and NAQI, UTCI raster |
| GET /api/scenarios | Scenario Lab results with assumptions |
| POST /api/whatif/building | Impacts of a proposed building |
| POST /api/siting/evaluate · /api/rules/translate | Site suitability; plain English to validated rules |
Path to target without a rewrite: PostGIS and TimescaleDB when scenarios are saved or layers pass 50 MB; 3D Tiles past 10,000 buildings or for façade shaders; an NGSI-LD adapter at the first partner feed; SUMO when real traffic counts exist; the MapLibre Companion at the first public pilot.
Data and research
Two days of research and build produced ten research notes, a 55-entry data catalogue and 99 cited sources. Every fact is tagged by how sure we are, and contradictions are kept in the open rather than smoothed over.
What we collected
| Dataset | What we hold | Used for | Provenance |
|---|---|---|---|
| OpenStreetMap | Pulled 28 Oct 2026: boundary polygon (3.68 km²), a 7,630-node road graph, metro viaduct, POIs, 61 buildings inside the boundary. | Network, context | measured |
| Google Open Buildings v3 | 10,580 footprints in the box, 1,661 inside the boundary, streamed from an 8.2 GB shard in about 12 s. | Footprints | derived |
| Open Buildings 2.5D Temporal | Yearly heights 2016 to 2023 per footprint via Earth Engine; calibrated ×1.24 against 9 trusted towers. | Heights, 4D | modelled |
| Curated registry | 43 buildings with floors, height, status and web sources. | Authoritative heights | measured |
| Sentinel-2 via Earth Engine | Oct 2026 composite; single scenes 1 Jun 2023 and 15 Oct 2026; 13 index layers (NDVI, EVI, NDBI, BSI, NDWI, MNDWI, land surface temperature, and 2023→2026 changes). | Greenery, heat, change | derived |
| S2DR3 at 1 m | Two super-resolved scenes (2023, 2026), true colour plus 12 bands; 53 of 75 monthly credits left. | Roads, future 3D | modelled |
| Roads from our model | Route Resilience SegFormer on 1 m scenes: 92–95% of detections lie on OSM roads; finds 48–51% of OSM. | OSM edit checklist | modelled |
| Change 2023 → 2026 | Spectral change polygons; 184 buildings flagged as changed. | Construction radar | derived |
| Weather and air | Open-Meteo hourly cache; CAMS pollutants with India NAQI computed by us: 120 Moderate, ozone-led, at 14:00 on 29 Oct while US AQI read 73. | Conditions, UTCI | modelled |
| Basemap | Esri World Imagery over GIFT City is Vantor 0.34 m from 16 May 2026 (non-commercial demo terms). | Visual reference | measured |
| Transit timetables | Four official PDFs (GMRC, GIFT Go, GSRTC, intra-city bus) located; GTFS to be hand-built. | Door-to-desk | to build |
| Master plan, cooling SCADA, C4, drone survey | Not available. Routes: RTI for the plan; partnership for live feeds; Digital Sky check for drones. | Zoning, operators | blocked |
The weak spot, shown plainly
Shadows, heat comfort and what-if are only as good as these heights. The roughly 60 main towers are few enough to verify by hand, which is the first field task on the roadmap.
Key research facts we build on Research
| Topic | Fact | Tag |
|---|---|---|
| Scale | ~25,000–30,000 workers; 25 operational buildings, 37 under construction; ~62 M sq ft planned, ~29.5 M allotted; use mix ~67% commercial, 22% residential. | [R] S04 S10 |
| Operations brain | C4 command centre integrates 70,000+ I/O points across power, cooling, water, waste, utility tunnel, streetlights and GIS. | [V] S82 |
| District cooling | Planned 180,000 TR; phase 1 since 2015; claims electrical demand cut from 240 to 135 MW; SCADA metered. | [V] S06 |
| Utility tunnel | ~16 km (World Bank) or ~17 km; power, water, sewage, waste pipes, chilled water. | [R] S08 |
| Metro | GIFT City branch opened Sep 2024; peak-only every 49–57 min in Jan 2026; operation until 11 pm approved from May 2026, branch details unknown; Shahpur extension approved Feb 2026. | [R] S12 S13 S15 |
| Heat | Ahmedabad's Heat Action Plan (2013) followed the May 2010 heat wave at 46.8 °C; it gives us alert thresholds and credible partners. | [V] S52 |
| Shade routing evidence | CoolWalks (Sci. Reports, 2025): uniform grids gain nothing from shade routing; mixed heights can. GIFT City is mixed, so gains are plausible but unproven. | [V] S51 |
| Maps law | DST 2021: data finer than 1 m horizontal or 3 m vertical must be Indian-owned and stored in India. | [R] S46 |
| Personal data | DPDP Rules notified Nov 2025; main obligations from about May 2027. | [R] S50 |
| Drones | GIFT City sits about 12 km from the airport, at the edge of the yellow band; assume permission is needed. | [R] S49 S85 |
How we reconciled the deep-research report Research
The external deep-research report is kept unchanged in docs/inputs/2026-10-29-deep-research-report.md. Each claim was checked against our research before use.
Adopted
- Stakeholder to data to feature mapping; adds emergency services and city administration to our users.
- Data-quality KPIs: freshness, completeness, latency, reliability, shown on a data-health page.
- Standards stack: CityGML/CityJSON, IFC, SensorThings, NGSI-LD, 3D Tiles, OGC API. It matches ours.
- Governance: catalogue, audit logs, a steering group once partners join.
- Platform comparison, used in section 06.
Deferred, by trigger
- Kafka, Kubernetes and a service per function: no event volume or team size justifies them yet.
- Graph database: PostGIS plus URN relations cover our links.
- Closed-loop control of city systems: a non-goal until an operator asks for supervised advice.
- Blockchain provenance, AR/VR: no user need found.
Not used, unverified
- "5% of assets yields 80% of benefit"; "payback in 15–18 months"; "28% water OpEx cut": no primary source.
- Snap4City licence given as GPL: the repository is AGPL-3.0.
- "NGSI-LD backbone": Snap4City is FIWARE-certified; the NGSI version is not stated.
- Roadmap dates starting Jan 2025 are out of date.
Technology
Open source end to end, chosen for a geospatial and simulation workload, and sized for one district rather than a national platform. Heavier infrastructure arrives only when a named trigger fires.
| Concern | Built today | MVP target | Why this and not the alternative |
|---|---|---|---|
| 3D console | CesiumJS 1.146 | Same, with 3D Tiles | Globe-accurate, real sun and shadows, time-dynamic CZML, Apache-2.0. Unreal needs GPU streaming and cannot reach phones. |
| Phone companion | Not yet | MapLibre + deck.gl PWA | Cesium is too heavy on a mid-range Android in the sun. One data core, two renderers (ADR-0003). |
| Web app | React 19, Vite 8, TypeScript strict, zustand | Same | Fast iteration; the store keeps React away from the 3D engine. |
| Backend | Python 3.11, FastAPI, pydantic, Typer CLI | Same | Geo, ML and simulation libraries are Python-native: shapely, pyproj, networkx, rasterio, pvlib. |
| Storage | Files with manifests | PostgreSQL + PostGIS + TimescaleDB; object storage | One database for geometry and time series. Orion-LD only when a partner feed is real. |
| Pipelines | CLI commands | Dagster | Asset-based pipelines with lineage; a scheduler only when there is something to schedule. |
| Remote sensing | Earth Engine; Gamma Earth S2DR3 | Same, plus STAC catalogue | No raster downloads for composites; 1 m scenes at a few credits each. |
| Machine learning | Our SegFormer roads model in its own environment | + ChangeFormer for new buildings | Process boundary: the twin never imports torch. |
| Journeys | Not yet | OpenTripPlanner 2 | Mature multimodal GTFS routing. Shade routing stays on the phone. |
| Simulation | Own engines; optimal interpolation for sensors | + EnergyPlus prototypes, SUMO later | Physics where it decides the answer; seeded and reproducible everywhere. |
| AI | Groq, gpt-oss-120b, JSON rules | MCP server + eval set | Swappable model; every number comes from a tool, never from the model. |
| Quality | pytest, vitest, Playwright; ruff; CI on GitHub | + performance budgets in CI | 86 automated tests today (66 backend, 13 frontend unit, 7 end-to-end), including Python and TypeScript parity for signals. |
| Platform | Local | Docker Compose, one India-region server, Keycloak, OpenTelemetry | India hosting for fine data and any personal data. Static Companion survives API downtime. |
Build or buy
| Platform | Strength | Why it is not our core | What we borrow |
|---|---|---|---|
| Snap4City | Open, FIWARE-certified, full city pipeline, 40+ deployments | Heavy VM stack; AGPL; dashboard-first | Six-stage shape, ontology-first model, scenario versions |
| FIWARE Orion-LD | The open NGSI-LD context broker; IUDX compatible | Plumbing only, no 3D or analytics | Our live-entity API shape; adopt the broker at first partner feed |
| Azure Digital Twins, AWS TwinMaker | Managed scale, enterprise support | Lock-in, cost, managed twin products get retired | Graph-of-entities thinking |
| Esri ArcGIS Urban | Best planning GIS; common in Indian government | Licence cost; weak on live data and citizen apps | Planning scenario UX |
| Bentley iTwin | BIM and infrastructure depth; owns Cesium | Cost; engineering-first UI | Restricted utility-tunnel view later |
Scale triggers: when heavier infrastructure earns its place Engineering
| Add | Only when |
|---|---|
| PostGIS + TimescaleDB | Scenarios are saved, time series accumulate, or a layer passes 50 MB |
| 3D Tiles pipeline (pg2b3dm) | More than 10,000 buildings, or façade shaders such as lit windows |
| Orion-LD broker, MQTT | The first partner or field sensor feed is live |
| SUMO traffic | Real counts and signal plans exist to calibrate it |
| Kafka | Sustained event volume beyond what Postgres and MQTT handle, roughly thousands per second |
| Kubernetes | More than one team operates the platform, or uptime commitments exceed one server with backups |
| Gaussian-splat hero zone | Drone or phone capture is permitted; Cesium has supported splat tilesets with LOD since Apr 2026 |
Feasibility
The technology is proven by the running prototype. The open risks are data access, user evidence and positioning, and each has a planned answer.
Technical
HighEvery MVP engine has a working prototype: 3D, fusion, shadows, comfort, simulation, what-if, LLM rules.
Data
MediumOpen data covers the MVP for four of five users. Heights are weak; master plan and live feeds are blocked.
Legal
MediumODbL share-alike, non-commercial API terms, DPDP, drone permission, critical-infrastructure care. All have rules in place.
Cost
HighFree tiers and one server run the MVP. Commercial use needs paid weather and imagery; the cost model is still open.
Adoption
Low to mediumNo primary user research yet, and an official twin is coming. Interviews and a partner-first pitch close this.
Team and time
OpenCapacity, deadline and budget are undecided, so the roadmap below is indicative.
Top risks and what we do about them
| Risk | Odds | Impact | Mitigation |
|---|---|---|---|
| Official twin launches overlapping public features | Medium | High | Lead with prediction and daily utility; offer integration through standards rather than compete on 3D. |
| Shade routing shows little gain | Medium | Medium | Spike SP-02 first: under 10% more shade at 15% extra distance demotes it to a layer; lead with heat stress and door-to-desk. |
| Wrong heights give wrong shadows | Medium | High | Curated registry, on-site floor counts for ~60 towers, golden tests. |
| Modelled numbers taken as real | Medium | High | Provenance chip on every value; "modelled" in the copy; hatching for synthetic layers. |
| Sensitive infrastructure exposed | Low | High | Server-side classification with tests; review before any layer is published. |
| Timetables change and mislead | High | Medium | "Timetable as of" dates; monthly re-check; feedback button. |
| Licence breach (ODbL, non-commercial terms) | Medium | High | Licence matrix; CI check that every source has a licence entry. |
| Scope creep | High | Medium | Slice gates, ADRs and a demo script written before the build. |
Limits of the prototype, stated up front Honesty
- Signals, vehicles, most sensors, shop POIs and rents are synthetic. They are labelled in the interface and deterministic by seed.
- 1,176 small footprints still use a placeholder height and are hidden by default.
- Satellite-derived heights are calibrated on only 9 tower pairs, which is why they rank as low confidence.
- The change layer is a 10 m spectral heuristic: good for "look here", not for counting buildings.
- Esri imagery and the free Open-Meteo API are used under non-commercial terms.
Roadmap
Ruthless MVP, ambitious roadmap. Each slice ships on its own and must pass a measurable gate before the next one depends on it.
Proof of concept
3D twin, fusion, imagery, metro, Scenario Lab, what-if, siting, conditions and comfort.
MVP
Slices S0 to S7 on open data and our own field data. Public Companion pilot; console demo for GIFTCL.
v1, field data
Entrances mapped, sensor calibration walk, verified GTFS, last-way-home guardian, heat-safe shift planner.
v2, live city
C4 alarms in 3D, calibrated cooling twin, restricted tunnel view, emergency planning.
Indicative, assuming one or two developers. It will be fixed once team, time and budget (Q-03 to Q-05) are answered.
How we will validate before we claim Validation
| What | How | Pass mark |
|---|---|---|
| Is the problem real? | 10–15 interviews across levels including service staff; a week of commute diaries; observation at 09:00, 13:00, 18:30, 20:00 | Top three pains confirmed or replaced |
| Shadows | Timestamped photos at 5–10 points vs predicted shadows | Edges within a few metres |
| Heat comfort | Walk with a temperature and humidity logger plus a black-globe thermometer in sun and shade | Error reported in the docs |
| Journeys | 20 timed trips vs the plan | 95% within 5 min |
| Ask the twin | ~50 known-answer questions on every change | Every number traced to a tool call |
| Performance | Real mid-range Android outdoors; budgets in CI | 3 s to interactive; 300 KB initial JS |
Decisions needed
Engineering can move ahead on the foundations today. These choices decide what the MVP looks like, so they come before slice S1.
What is the endgame: portfolio, competition, startup or a government pitch?
Recommendation: treat it as a government and GIFTCL pitch with a public pilot. It sets the bar for honesty and security that every other endgame also needs.
Who is the primary user?
Recommendation: the commuting professional, including service staff. Largest group, sharpest documented pain, and served by open data alone. Planners stay the second face.
Team, time and budget
Recommendation: one lead developer plus one part-time field and research helper for 12 weeks; budget for one India-region server, paid weather if commercial, and a few S2DR3 credits.
When to approach GIFTCL, DEV IT and GMRC
Recommendation: after S2, with a working Companion and the console demo. Lead with the NGSI-LD adapter as the integration offer.
Product name and our own licence
Recommendation: an independent name that cannot be mistaken for official branding; Apache-2.0 for code, ODbL where outputs derive from OSM.