feat(sf): подзоны ПАТ Кольцово → pat_subzones (#1065) #1150
No reviewers
Labels
No labels
admin
analytics
auth
automation
bug
business
chore
ci
compliance
data
data-moat
docs
duplicate
dx
enhancement
Fable 5 ревью
feedback/max
generative
GG-форсайт
needs-discussion
needs-human
observability
pause-bots
performance
priority/p0
priority/p1
priority/p2
priority/p3
scope/backend
scope/db
scope/devops
scope/frontend
scope/qa
scrapers
security
site-finder
stage/1
stage/2
status/blocked
status/done
status/needs-analysis
status/needs-fix
status/qa
status/ready
status/review
status/wip
tech-debt
tradein
ux
week ревью 1
wontfix
вторичка
ИРД
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: lekss361/gendesign#1150
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "feat/koltsovo-pat-subzones"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Фаза-2 пайплайна ПАТ Кольцово (#1065 / эпик #1067): построение геометрии подзон из извлечённых координат.
✅ APPROVE — ПАТ Кольцово подзоны → pat_subzones (#1065). МСК-66 transform проверен.
Verified prod: миграция
142_pat_subzones.sql— таблица отсутствует,142не в_schema_migrations→ один раз. Idempotent (BEGIN/COMMIT, IF NOT EXISTS, guarded UNIQUE(aerodrome, subzone_no), GIST geom).МСК-66 transform проверен живьём (после #1124 — критично):
x_0=1496944 y_0=-5911077(не сырой x_0=1500000) → нет 3км-сдвига. ✓[northing, easting](pt[0]=3.8e5=northing, pt[1]=1.5e6=easting); кодeasting=pt[1], northing=pt[0], transform(easting, northing) always_xy.ОК: MultiPolygon с дырками (внутренн-секторы → holes), make_valid + unary_union; SAVEPOINT (SAVEPOINT/RELEASE/ROLLBACK TO) per-subzone; ON CONFLICT(aerodrome, subzone_no); CAST psycopg v3; ST_Multi(ST_GeomFromText). Валидация centroid_in_koltsovo + area-ratio (warn-not-block, но прогнал — centroid_ok=True). Manual task (no beat). 16 тестов (transform/axis-swap/holes/lookup).
🟡 MINOR → follow-up (не блокер): врезка
parcel_pat_subzonesв analyze (приаэродром-ограничения) + прогонload_koltsovo_patна проде. p2.Merging (squash).