v5.2.0
Introducing Super Mappers and Badges
This release introduces two major new features:
- Badges and
- the new Super Mapper level, to better recognize mapper expertise and enhance project quality.
🏅 Badges
Badges are a brand-new way to celebrate mapper achievements. They’re automatically awarded based on your lifetime mapping activity in OpenStreetMap.
Examples include:
- 🛣️ Highways Badge: 1,000 km of highways created
- 🌊 Waterways Badge: 1,000 km of waterways created
- 🏠 Buildings Badge: 100,000 buildings created
Badges will appear on your Tasking Manager profile and Contributions page: https://tasks.hotosm.org/contributions
💪 Super Mapper Level
A new top-tier level, Super Mapper, sits above Advanced users.
To qualify, you’ll need to:
1. Earn the required badges (Highways, Waterways, Buildings)
2. Pass a human review by Tasking Manager admins (and later, select Super Mappers)
This new level helps project creators confidently assign complex mapping tasks to the most skilled contributors, thereby improving mapping quality and easing pressure on validator teams.
⚙️ Project Permissions
Project creators can now:
- Restrict mapping and validation access by mapper level, including the new Super Mapper level
- Restrict projects to Advanced-only users (previously unavailable)
Existing project permissions will automatically align with this new structure without changes.
This feature was made possible through a collaboration between HOTOSM and Codeando México with the idea proposed by @RAytoun. Please check out @SColchester's OSM diary post for further details.
Expand to see detailed codebase changes 🖥️
- user stats table and model by @categulario in /pull/6800
- Correct localization key for `timeSpentContributing` by @suzit-10 in /pull/6991
- Download task grid file with auth token using fetch and Blob by @suzit-10 in /pull/6993
- Remove fixed width causing login button overlap. by @suzit-10 in /pull/6985
- eslint fixes for super mapper feature by @categulario in /pull/6997
- fix progress message for levels by @categulario in /pull/6998
- fix(infra/ecs): add ohsome envs by @nischalstha9 in/pull/7000
- Restore three requested functionality related to super mapper by @categulario in /pull/7013
- fix problem when deleting level with votes by @categulario in /pull/7014
- clear next level and votes on badge and level update by @categulario in /pull/7016
- properly handle when there is no next level for the user by @categulario in /pull/7017
- Fix/script formatting by @prabinoid in /pull/7018
- Add option to immediately exit cron_jobs script by @jacobwhall in /pull/7003
- project id from taskdto instead of task object by @prabinoid in /pull/7021
- Run pre-commit on all files by @prabinoid in /pull/7022
- badges not assigned by @categulario in /pull/7023
- allow listing projects to map or validate as anonymous user by @categulario in /pull/7024
- Fix/project search by @categulario in /pull/7025
- set default validation permission to any with intermediate level by @categulario in /pull/7026
- bring back project statistics: users per level by @categulario in /pull/7027
- Use check and update stats function in refresh mapper level command by @prabinoid in /pull/7019
- Update docs by @prabinoid in /pull/7011
- Adapt frontend test cases as per supper mapper changes by @suzit-10 in /pull/7029
- Update user stats in parallel by @prabinoid in /pull/7031
- Application db pool made dynamic and created separate connection and … by @prabinoid in /pull/7036
- New badges + mapper level system (ie: Supper Mapper) by @emi420 in /pull/7033
- Make `ecs_execute_command` controllable from env by @nischalstha9 in/pull/7037
- Exception handling for users not found in osm and users deleted from osm by @prabinoid in /pull/7038
- Merge develop changes to staging by @nischalstha9 in /pull/7039
- SuperMapper Release to production. by @nischalstha9 in /pull/7047
New Contributors
- @categulario made their first contribution in #6800
- @jacobwhall made their first contribution in #7003
Full Changelog: v5.1.2...v5.2.0