Add cross-binary integration for OSM ingest → API HTTP read#93
Conversation
|
Claude finished @koinsaari's task in 2m 36s —— View job Code Review
No blocking issues. The test correctly catches persistence-shape drift between the ingestion and API binaries by writing via What the test exercisesThe structure is sound:
🟡 Nits1. Sweep error should carry a diagnostic message ( // current
if _, err := sweeper.Sweep(ctx, touched); err != nil {
t.Logf("sweep: %v", err)
}A sweep panic would surface as a confusing failure elsewhere. A short comment explaining why this is non-fatal ( 2. The canonical batch size lives in 3. Lat/lng are not verified after HTTP decode ( Coordinates come through the if got.Lat == 0 && got.Lng == 0 {
t.Errorf("lat/lng both zero — geometry may not have scanned correctly")
}4. After a fresh truncate + ingest this is equivalent to collecting Plus one similar item: the pinned OSM node ID |
Runs the real OSM source against the Andorra fixture, then GETs the pinned Supermercat Saint Moritz place over real HTTP through the full middleware stack. Catches drift in the shared persistence shape between cmd/ingestion and cmd/api that single-binary integration tests cannot. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
0244ea5 to
4db18fd
Compare
Summary
cmd/ingestionandcmd/api(GORM tags, JSONB scanners, response converters) that single-binary integration tests cannotcmd/ingestion/main_integration_test.go— any fixture or transformer change flushes both tests in the same PRTest plan
🤖 Generated with Claude Code