[AZ-373] Refactor C20: drop MapsVersion from new writes (option a)

- Stop writing "downloaded_YYYY-MM-DD" into tiles.maps_version: new rows
  bind @MapsVersion to NULL via TileService.BuildTileEntity.
- Retain the tiles.maps_version column (coderule.mdc forbids unprompted
  column drops); pre-existing rows keep their values for forensics.
- Remove MapsVersion property from DownloadTileResponse (API wire shape)
  and TileMetadata (internal DTO); OpenAPI schema regenerates from the
  DTO via Swashbuckle.
- Add 3 AC tests in TileServiceTests covering the captured-entity write
  (AC-1) and the DTO/wire-shape removal (AC-2).
- Update integration-test local DTO + console output; refresh docs in
  common_dtos.md, services_tile_service.md, data_model.md.
- Archive AZ-373 task file: todo/ -> done/.

174 unit + 5 smoke pass.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Oleksandr Bezdieniezhnykh
2026-05-11 04:05:40 +03:00
parent 45f7852fb2
commit 7c37636fdf
11 changed files with 55 additions and 14 deletions
@@ -154,7 +154,7 @@ public class TileService : ITileService
TileSizeMeters = downloaded.TileSizeMeters,
TileSizePixels = _mapConfig.TileSizePixels,
ImageType = "jpg",
MapsVersion = $"downloaded_{now:yyyy-MM-dd}",
MapsVersion = null,
Version = null,
FilePath = downloaded.FilePath,
CreatedAt = now,
@@ -175,7 +175,6 @@ public class TileService : ITileService
TileSizeMeters = entity.TileSizeMeters,
TileSizePixels = entity.TileSizePixels,
ImageType = entity.ImageType,
MapsVersion = entity.MapsVersion,
Version = entity.Version,
FilePath = entity.FilePath,
CreatedAt = entity.CreatedAt,