|
feat: implement review items 1-7
- Decompose PropertyPipeline into 8 explicit stages with PipelineContext - Add tenacity retry (3 attempts, exponential backoff) to OllamaClient and ImageDownloader - Add simple in-memory circuit breaker for Ollama calls - Resize images to 1024px before base64 encoding for vision model - Add /health endpoint (DB, Ollama, disk checks) - Add DB performance indexes + alembic migration - Classify AI errors: OllamaRetryableError vs OllamaFatalError - Add strict PayloadSchema validation for ingest endpoint Co-Authored-By: Claude <noreply@anthropic.com> |
|---|
|
|
| alembic/versions/ce83ed173113_add_performance_indexes.py 0 → 100644 |
|---|
| docs/REVIEW_FOLLOWUP.md 0 → 100644 |
|---|
| src/vmk_data_collector/api/deps.py |
|---|
| src/vmk_data_collector/api/v1/router_health.py 0 → 100644 |
|---|
| src/vmk_data_collector/api/v1/router_properties.py |
|---|
| src/vmk_data_collector/core/circuit_breaker.py 0 → 100644 |
|---|
| src/vmk_data_collector/core/exceptions.py |
|---|
| src/vmk_data_collector/db/repositories/property.py |
|---|
| src/vmk_data_collector/main.py |
|---|
| src/vmk_data_collector/models/ai_enrichment.py |
|---|
| src/vmk_data_collector/models/property_custom_field.py |
|---|
| src/vmk_data_collector/models/property_image.py |
|---|
| src/vmk_data_collector/models/property_listing.py |
|---|
| src/vmk_data_collector/models/property_snapshot.py |
|---|
| src/vmk_data_collector/models/raw_parsing_data.py |
|---|
| src/vmk_data_collector/schemas/raw_data.py |
|---|
| src/vmk_data_collector/services/ai_enricher.py |
|---|
| src/vmk_data_collector/services/ai_image_analyzer.py |
|---|
| src/vmk_data_collector/services/ai_normalizer.py |
|---|
| src/vmk_data_collector/services/image_downloader.py |
|---|
| src/vmk_data_collector/services/ollama_client.py |
|---|
| src/vmk_data_collector/services/property_pipeline.py |
|---|