feat: add PostgreSQL full-text search
- Add generated search_vector tsvector column with immutable wrapper
  to_tsvector_simple() for mixed ru/ua text
- Add GIN index ix_property_listings_search_vector_gin
- Add PropertyRepository.search_fulltext() using plainto_tsquery(simple)
  and ts_rank_cd() with optional filters
- Add POST /api/v1/search/fulltext endpoint (120/min rate limit)
- Add FulltextSearchRequest/Result/Response schemas
- Update alembic.ini to use Docker PostgreSQL on port 5433

Co-Authored-By: Claude <noreply@anthropic.com>
1 parent ac1975f commit e18a02f2c280589ca122e83e9117adc32729b448
@Eugene Sukhodolskiy Eugene Sukhodolskiy authored 1 day ago
Showing 7 changed files
View
.plan.md 0 → 100644
View
alembic.ini
View
alembic/versions/5e1da0609f70_add_fts_search_vector_column_and_gin_.py 0 → 100644
View
src/vmk_data_collector/api/v1/router_properties.py
View
src/vmk_data_collector/db/repositories/property.py
View
src/vmk_data_collector/models/property_listing.py
View
src/vmk_data_collector/schemas/search.py