KhalimCK
|
9ff4de0563
|
Merge pull request #1481 from Hestia-Homes/feature/modelling-trigger-run
Modelling Run Distributor: POST /v1/modelling/trigger-run
|
2026-07-07 14:36:45 +01:00 |
|
Khalim Conn-Kowlessar
|
ddd64a9297
|
Legacy property columns no longer resolve type or built form 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 12:49:19 +00:00 |
|
Khalim Conn-Kowlessar
|
ca799cc5e5
|
Scenarios outside the portfolio refuse the run 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 12:06:02 +00:00 |
|
Khalim Conn-Kowlessar
|
e9b39df322
|
Filters that match no properties refuse the run 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 12:05:03 +00:00 |
|
Khalim Conn-Kowlessar
|
dade7a3a5f
|
A task that already has sub_tasks refuses re-distribution 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 12:04:05 +00:00 |
|
Khalim Conn-Kowlessar
|
489e2b5d47
|
Trigger-run fans out one sub_task and message per scenario batch 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 12:02:12 +00:00 |
|
Khalim Conn-Kowlessar
|
7606480338
|
An oversized postcode becomes its own batch 🟩
Behavior emerged from the packing rule — pinned straight to green.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 12:00:07 +00:00 |
|
Khalim Conn-Kowlessar
|
80c474b37b
|
Batches never split a postcode 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:58:41 +00:00 |
|
Khalim Conn-Kowlessar
|
3cf44d6409
|
An attach-mode partial failure persists successes then records the failure 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:55:49 +00:00 |
|
Khalim Conn-Kowlessar
|
b840af11de
|
An attach-mode batch models under the supplied sub_task without children 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:52:45 +00:00 |
|
Khalim Conn-Kowlessar
|
52b07e3ea4
|
A recorded batch failure does not return the message to SQS 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:50:38 +00:00 |
|
Khalim Conn-Kowlessar
|
8a3c0f3e77
|
A recorded batch failure carries structured details onto the sub_task outputs 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:49:56 +00:00 |
|
Khalim Conn-Kowlessar
|
f01131a064
|
A batch message with task_id and subtask_id attaches to the app-owned task 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:48:53 +00:00 |
|
Khalim Conn-Kowlessar
|
ca6ca2a220
|
A batch message with task_id and subtask_id attaches to the app-owned task 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:47:20 +00:00 |
|
Khalim Conn-Kowlessar
|
513977a6fd
|
Filters combine with AND 🟩
Behavior emerged from filter composition — pinned straight to green.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:43:51 +00:00 |
|
Khalim Conn-Kowlessar
|
d56079a1d4
|
Built-form filter resolves with the same precedence as property type 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:42:14 +00:00 |
|
Khalim Conn-Kowlessar
|
4d0af87d5a
|
Unknown is a selectable property-type bucket 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:40:46 +00:00 |
|
Khalim Conn-Kowlessar
|
faea3209b2
|
A property without override or EPC falls back to the legacy column 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:39:54 +00:00 |
|
Khalim Conn-Kowlessar
|
9b146dfaf4
|
An EPC without property_type falls back to its dwelling_type 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:39:10 +00:00 |
|
Khalim Conn-Kowlessar
|
302861309c
|
Numeric RdSAP property-type codes map to their labels 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:38:18 +00:00 |
|
Khalim Conn-Kowlessar
|
45dab78f4e
|
EPC-derived property type prefers lodged over predicted 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:37:18 +00:00 |
|
Khalim Conn-Kowlessar
|
f40abcedeb
|
Property-type override beats the lodged EPC 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:36:13 +00:00 |
|
Khalim Conn-Kowlessar
|
b865e89195
|
Postcode filter matches the canonical postcode exactly 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:33:29 +00:00 |
|
Khalim Conn-Kowlessar
|
84fb9884d6
|
No filters resolves the whole portfolio minus deletions 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:32:10 +00:00 |
|
Khalim Conn-Kowlessar
|
561b8b078b
|
Test names state the surviving failure-recovery behaviors 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:12:12 +00:00 |
|
Khalim Conn-Kowlessar
|
d0439dd11e
|
Completing a re-run failed batch un-fails the task 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:10:43 +00:00 |
|
Khalim Conn-Kowlessar
|
3d643965b5
|
A failed batch sub_task restarts for a re-run 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:05:34 +00:00 |
|
Khalim Conn-Kowlessar
|
1c7b71bcce
|
A run with finished and queued batches rolls up in progress, not waiting 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:03:28 +00:00 |
|
Jun-te Kim
|
bc1cca77db
|
Merge pull request #1356 from Hestia-Homes/feature/historic-epc-repository
Historic EPC repository: DDD port + resolver for address→UPRN
|
2026-07-07 10:56:33 +01:00 |
|
Daniel Roth
|
a5868cc2e0
|
One AbriOrchestrator runs every Abri flow for a deal 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 16:26:48 +00:00 |
|
Daniel Roth
|
7e5dc1722e
|
A rate-limited HubSpot write is retried before succeeding 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 15:59:27 +00:00 |
|
Daniel Roth
|
350a76f942
|
A failed HubSpot write raises a scrubbed error carrying the orphaned job_no 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 15:57:16 +00:00 |
|
Daniel Roth
|
b847fa2f4c
|
Transport and parse failures propagate with nothing recorded 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 15:55:38 +00:00 |
|
Daniel Roth
|
ddfbbd0052
|
An OpenHousing rejection is surfaced verbatim with nothing recorded 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 15:54:58 +00:00 |
|
Daniel Roth
|
6912dabf22
|
A logged job's job_no is written to HubSpot and then the deal database 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 15:52:35 +00:00 |
|
Daniel Roth
|
98674ae895
|
Log an OpenHousing job from a confirmed survey booking's deal fields 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 15:50:07 +00:00 |
|
Daniel Roth
|
6335796d6e
|
Merge pull request #1471 from Hestia-Homes/feature/abri-api-integration
Abri OpenHousing DomnaRelay — GetTenantData vertical (tenancy signatories to HubSpot)
|
2026-07-06 16:15:36 +01:00 |
|
Daniel Roth
|
06354a166e
|
Phone-number selection policy lives in the domain layer 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 14:47:37 +00:00 |
|
Daniel Roth
|
76896f9a8e
|
rename tenant data sync to abri tenant data sync
|
2026-07-06 14:05:42 +00:00 |
|
Daniel Roth
|
578de8845a
|
Tenant-data fixtures carry fictional names and Ofcom-reserved phone numbers 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 14:02:38 +00:00 |
|
Daniel Roth
|
8fd808ffd9
|
HubSpot deal-contacts transport lives under infrastructure like the other API clients 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 14:01:47 +00:00 |
|
Daniel Roth
|
8d684c57c7
|
Transient HubSpot failures are retried under the shared rate-limit policy 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:36:43 +00:00 |
|
Daniel Roth
|
065217f8af
|
A failed HubSpot write stops the sync and reports the orphaned contacts 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:35:20 +00:00 |
|
Daniel Roth
|
2e19085875
|
HubSpot failures surface without the response body that echoes tenant PII 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:33:42 +00:00 |
|
Daniel Roth
|
203ffac01f
|
Empty tenancies, Abri rejections and ambiguous responses resolve like the other relay operations 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:31:55 +00:00 |
|
Daniel Roth
|
d4bdbf2e2f
|
Tenant vulnerabilities are recorded on the tenant's own contact 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:30:22 +00:00 |
|
Daniel Roth
|
10636c1752
|
Runner-up number fills the contact's secondary phone number 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:28:56 +00:00 |
|
Daniel Roth
|
1d3219ca60
|
Contact carries the best-priority mobile and landline Abri lists 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:27:39 +00:00 |
|
Daniel Roth
|
01e61a6275
|
Each tenancy signatory gets its own deal contact, with blank fields omitted 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:27:04 +00:00 |
|
Daniel Roth
|
0ef1687bd7
|
Relay receives the spec's recorded getSCSTenantData envelope 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:26:07 +00:00 |
|