mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-07-12 13:29:04 +00:00
A live test returned 'no documents could be packaged' for 91 correctly-resolved properties. Root cause: no upload source populates uploaded_files.landlord_property_id (pashub/magic-plan/audit set hubspot_deal_id; ECMK sets hubspot_listing_id), so matching on landlord_property_id found zero rows. Match fix: the worker now joins uploaded_files -> hubspot_deal_data (on deal_id) -> landlord_property_id, taking the property identity from the bridge. The repository returns a small PropertyDocument read-model instead of the infra ORM row, so the orchestrator no longer names infrastructure.postgres.* (resolves the leak dancafc flagged) and the s3_upload_timestamp cast is gone. Coverage is limited to deal-id-linked sources; listing_id/uprn-only files are a noted follow-up. Observability: the empty-selection failure now carries stage counts (selected/matched/planned/skipped) in both the message (-> the worker WARNING log) and details (-> sub_task.outputs), and the run logs those counts. The next failure says 'matched 0 documents' instead of failing opaquely. ADR-0060 + CONTEXT.md updated (matching decision + considered options). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| audit_generator | ||
| magic_plan | ||
| __init__.py | ||
| fakes.py | ||
| test_abri_orchestrator_abandon_job.py | ||
| test_abri_orchestrator_amend_job.py | ||
| test_abri_orchestrator_log_job.py | ||
| test_abri_orchestrator_tenant_data_sync.py | ||
| test_ara_first_run_pipeline.py | ||
| test_ara_first_run_pipeline_integration.py | ||
| test_build_canonical_filename.py | ||
| test_bulk_document_download_orchestrator.py | ||
| test_bulk_upload_finaliser_orchestrator.py | ||
| test_first_run_without_database.py | ||
| test_ingestion_orchestrator.py | ||
| test_ingestion_prediction.py | ||
| test_landlord_description_overrides_orchestrator.py | ||
| test_modelling_heat_pump_sizing_threading.py | ||
| test_modelling_solar_threading.py | ||
| test_postcode_splitter_orchestrator.py | ||
| test_property_baseline_orchestrator.py | ||
| test_task_orchestrator.py | ||