Mapframe and maplink tags can be assigned an explicit name (like "see"), and if one is lacking then they will be given an automatically-assigned name which is calculated from the hash of fully-parsed GeoJSON contents. We have experiences some weaknesses caused by this magic (TBD: link tasks).
Is it possible to assign a plain, autoincrement numeric ID instead?
Open questions:
* [x] Explore changes needed to drop production of hash IDs:
* https://gerrit.wikimedia.org/r/c/mediawiki/extensions/Kartographer/+/887779
* [ ] Where is back-compatibility required?
* [x] Static image URL with old group IDs. groups are passed to the mapdata library and included in the mapdata API, so we can push compat back to the mapdata API for this case.
* [ ] mapdata API when requesting old group IDs
* Could we hash the mapdata on-demand, whenever old group IDs are passed?
* https://gerrit.wikimedia.org/r/c/mediawiki/extensions/Kartographer/+/887782
* [ ] mapdata API when requesting all groups?
* Could the consumer silently know old group IDs?
* [x] How often is the mapdata API called without group IDs? Querying the webrequest table for uri_query matching "mapdata" but not "mpdgroups", 0.1% of the requests match, or roughly 4000 per day.
SELECT * from wmf.webrequest where uri_path='/w/api.php' and uri_query rlike "mapdata" and uri_query not rlike "mpdgroups" and year=2023 and month=2 and day=1 limit 100;
* [ ] mapdata API when requesting by titles and not revids?
* [ ] mapdata API should accept additional parameters which cause variation in parsed output, eg. isMobile. (can be follow-up work)
* [ ] Consider rollback. Add compatiblity before emitting new IDs. Toggle emitter with configuration.
If successful, consider how this can be applied to solve {T328772}.