guideCity/backend
vrubelroman f6735db46f Add ~1550 more Moscow places, fixed from broken/corrupted source files
Loaded and fixed four seed files the user generated with other tools:

- moscow_top1500_gen.yaml (1500 places): every single entry had a
  YAML-breaking bug — the "long" variant's second paragraph was
  emitted with zero indentation, breaking the block scalar in all
  1500 cases identically. Also ~95% of entries had the literal string
  "null" instead of a real null for empty optional fields. Fixed both
  mechanically (reindent + string replace) and verified structurally
  (categories valid, coords sane, no empty content, no dup slugs).
  Content quality caveat (flagged to and accepted by the user): ~99%
  of entries have identical short/medium text, and "long" is just
  short + one bonus paragraph — shallow but broad coverage.

- moscow_top1500.yaml, moscow_batch1.yaml, moscow_churches.yaml
  (15/18/25 places): these are genuinely well-researched, differentiated
  content (Kremlin cathedrals/palaces, monasteries) comparable in
  quality to the original hand-written seed files. moscow_top1500.yaml
  had a different corruption — every line had had a stray "N|" or
  "N|N|" row-number prefix baked in (looks like terminal output with
  line numbers got saved as file content) — stripped mechanically.

  These three files heavily overlap each other (~37 unique slugs
  across 58 entries) and 8 slugs overlap the generic _gen file;
  loaded in an order where the better-written content wins on upsert.

Database now holds 1556 places (was 27). Verified via direct DB count,
the local API, and the public https://guidetest.vrubel.xyz/ endpoint —
all agree. Backend pytest suite still passes. No Android changes, so
no APK rebuild needed; the existing installed app will see the new
data on its next request to the already-updated live backend.

Known follow-up (not fixed here): a handful of real-world landmarks
now have multiple near-duplicate entries under different slugs (e.g.
"Церковь Ризоположения" vs "Церковь Ризоположения Московского
Кремля"), since the source files independently slugified the same
places differently. Left for a dedicated dedup pass.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-10 06:06:08 +00:00
..
alembic Add researched Moscow seed content (22 places, RU/EN, 3 lengths) 2026-07-09 18:41:16 +00:00
app Add structured logging throughout the backend 2026-07-09 20:10:10 +00:00
seed Add ~1550 more Moscow places, fixed from broken/corrupted source files 2026-07-10 06:06:08 +00:00
tests Add FastAPI backend with PostGIS-backed nearby search 2026-07-09 18:31:29 +00:00
alembic.ini Add FastAPI backend with PostGIS-backed nearby search 2026-07-09 18:31:29 +00:00
Dockerfile Add FastAPI backend with PostGIS-backed nearby search 2026-07-09 18:31:29 +00:00
requirements-dev.txt Add FastAPI backend with PostGIS-backed nearby search 2026-07-09 18:31:29 +00:00
requirements.txt Add FastAPI backend with PostGIS-backed nearby search 2026-07-09 18:31:29 +00:00