mirror of
https://github.com/azaion/satellite-provider.git
synced 2026-06-21 16:21:15 +00:00
fcd494f67e
Mirror of AZ-794 (inventory z/x/y rename). RequestRegionRequest.cs renames C#
props Latitude→Lat / Longitude→Lon and adds [JsonPropertyName("lat"/"lon")] so
the wire format is unambiguous under the AZ-795 strict-parsing stack
(UnmappedMemberHandling.Disallow → legacy {"latitude":..,"longitude":..} now
returns HTTP 400 instead of silently coercing).
Updates all in-repo consumers: API handler (Program.cs), integration tests
(Models.cs, RegionTests.cs, IdempotentPostTests.cs, SecurityTests.cs), the
performance harness (run-performance-tests.sh PT-03/04/05/07), and module
docs (common_dtos.md, api_program.md; system-flows.md F2 already used
lat/lon). New RegionFieldRenameTests.cs covers AC-4 both directions (new
format → 200, legacy format → 400). Smoke green; no regressions.
region-request.md contract doc not bumped here — AZ-808 publishes v1.0.0
directly with the post-rename names per AZ-812 coordination clause.
Batch 01 of cycle 8. PASS_WITH_WARNINGS (one Low DRY finding for follow-up
test-helper consolidation; details in
_docs/03_implementation/reviews/batch_01_cycle8_review.md).
Co-authored-by: Cursor <cursoragent@cursor.com>
3.5 KiB
3.5 KiB
Batch Report
Batch: 01 (cycle 8) Tasks: AZ-812 (Region API field rename Latitude/Longitude → Lat/Lon, OSM convention) Date: 2026-05-22
Task Results
| Task | Status | Files Modified | Tests | AC Coverage | Issues |
|---|---|---|---|---|---|
| AZ-812_region_field_rename_to_osm | Done | 11 files (1 new) | smoke pass (mode=smoke, exit 0) | 6/6 ACs covered | 1 Low (DRY in test helper) |
AC Test Coverage: All covered (6/6)
| AC | Coverage |
|---|---|
| AC-1 | DTO RequestRegionRequest uses Lat/Lon + [JsonPropertyName("lat"/"lon")] — verified by reading SatelliteProvider.Common/DTO/RequestRegionRequest.cs. |
| AC-2 | Wire format {"lat":..,"lon":..} end-to-end — exercised by RegionFieldRenameTests.NewLatLonFormat_Returns200, RegionTests.RunRegionProcessingTest_* (200m/400m/500m), IdempotentPostTests, SecurityTests, scripts/run-performance-tests.sh PT-03..PT-07. |
| AC-3 | RegionTests.cs happy-path tests pass against the new wire format — confirmed by smoke (RegionTests.RunRegionProcessingTest_200m_Zoom18 green). |
| AC-4 | Old {"latitude":..,"longitude":..} returns HTTP 400 with UnmappedMemberHandling.Disallow — RegionFieldRenameTests.OldLatitudeLongitudeFormat_Returns400 exercises this; smoke green. New {"lat":..,"lon":..} returns HTTP 200 — RegionFieldRenameTests.NewLatLonFormat_Returns200; smoke green. |
| AC-5 | Docs updated: _docs/02_document/modules/common_dtos.md (added RequestRegionRequest section, disambiguated RegionRequest as internal queue type), _docs/02_document/modules/api_program.md (relocated RequestRegionRequest from Local Records to Common/DTO), _docs/02_document/system-flows.md::F2 (verified — already used lat, lon). |
| AC-6 | _docs/02_document/contracts/api/region-request.md does NOT yet exist — AZ-808 (region validator, queued for Batch 2) will publish v1.0.0 directly with the post-rename lat/lon names per the spec's coordination clause. No version bump needed here. |
Code Review Verdict: PASS_WITH_WARNINGS
See _docs/03_implementation/reviews/batch_01_cycle8_review.md for the single Low finding (test-helper DRY).
Auto-Fix Attempts: 0
Stuck Agents: None
Files Modified
| Path | Kind |
|---|---|
SatelliteProvider.Common/DTO/RequestRegionRequest.cs |
DTO rename + JsonPropertyName |
SatelliteProvider.Api/Program.cs |
Handler property access |
SatelliteProvider.IntegrationTests/Models.cs |
Test-side DTO mirror |
SatelliteProvider.IntegrationTests/RegionTests.cs |
Happy-path uses Lat/Lon |
SatelliteProvider.IntegrationTests/IdempotentPostTests.cs |
JSON payload lat/lon |
SatelliteProvider.IntegrationTests/SecurityTests.cs |
JSON payload lat/lon |
SatelliteProvider.IntegrationTests/RegionFieldRenameTests.cs |
NEW — AC-4 positive + negative |
SatelliteProvider.IntegrationTests/Program.cs |
Wire RegionFieldRenameTests into smoke + full suites |
scripts/run-performance-tests.sh |
PT-03/04/05/07 JSON bodies → lat/lon |
_docs/02_document/modules/common_dtos.md |
Documentation |
_docs/02_document/modules/api_program.md |
Documentation |
Tracker
- AZ-812: To Do → In Progress (set at Batch 1 start) → In Testing (set at Batch 1 commit, post-smoke).
Next Batch
Batch 2: AZ-811 + AZ-808 — lat/lon GET endpoint validator (AZ-811) + region-request validator (AZ-808). AZ-808's contract doc region-request.md will be published at v1.0.0 with lat/lon per AZ-812's coordination clause.