Daniel Roth
|
1c5a43df56
|
One message dispatches the fired Abri flows in a fixed, retry-safe order 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 10:09:20 +00:00 |
|
Daniel Roth
|
8d70679ab0
|
Amending an appointment needs only the deal's changed date and time 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 10:07:23 +00:00 |
|
Daniel Roth
|
c281456164
|
A trigger message validates the fields each fired Abri flow needs 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 10:04:55 +00:00 |
|
Daniel Roth
|
6a580d7691
|
A non-retriable failure marks the task failed without requeueing the message 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 10:03:36 +00:00 |
|
Daniel Roth
|
fac9dde77e
|
A non-retriable failure marks the task failed without requeueing the message 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 10:02:45 +00:00 |
|
Daniel Roth
|
9bae8df6ea
|
A changed booking amends the deal's OpenHousing appointment 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 10:01:01 +00:00 |
|
Daniel Roth
|
a93346ec7f
|
A changed booking amends the deal's OpenHousing appointment 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 09:56:54 +00:00 |
|
Daniel Roth
|
2b29a2412b
|
The deal database gateway reads back a deal's recorded job_no 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 09:54:56 +00:00 |
|
Daniel Roth
|
d33c171494
|
The deal database gateway records a deal's OpenHousing job_no 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 09:53:42 +00: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 |
|
Daniel Roth
|
78fcba45e5
|
Abri tenancy signatory becomes an associated HubSpot deal contact 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:22:52 +00:00 |
|
Jun-te Kim
|
c238a0e6a0
|
Merge pull request #1449 from Hestia-Homes/feat/sap-corpus-campaign
fix(rdsap): RdSAP 10 Table 13 200/280mm solid-brick wall boundary
|
2026-07-06 12:25:17 +01:00 |
|
KhalimCK
|
180863ed41
|
Merge pull request #1456 from Hestia-Homes/fix/electric-boiler-cpsu-companions
Electric boiler/CPSU overrides drag category 2 and the conservative Group 1 control (#1444 A+B for 191/192)
|
2026-07-06 12:07:25 +01:00 |
|
Daniel Roth
|
b2754baa04
|
Merge pull request #1463 from Hestia-Homes/feature/abri-api-integration
Abri OpenHousing DomnaRelay — Amend Appointment vertical (amendoptiappt)
|
2026-07-06 09:08:00 +01:00 |
|
KhalimCK
|
6dfaecc352
|
Merge pull request #1460 from Hestia-Homes/fix/table-12a-underfloor-rows
Electric underfloor codes resolve their Table 12a Grid 1 rows (ADR-0050 deferred follow-up)
|
2026-07-03 17:53:59 +01:00 |
|
KhalimCK
|
adcdce4271
|
Merge pull request #1462 from Hestia-Homes/fix/floor-u-value-gate
Floor insulation gated on the derived floor U-value (ADR-0051 floor arm)
|
2026-07-03 17:53:34 +01:00 |
|
Khalim Conn-Kowlessar
|
04810896e0
|
A community override keeps an assessor-observed Group 3 control 🟥
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-07-03 16:33:40 +00:00 |
|
Khalim Conn-Kowlessar
|
2bfda711d8
|
Community-heating overrides default to Group 3 control 2313 🟥
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-07-03 16:32:15 +00:00 |
|
Daniel Roth
|
05bd22269d
|
Abri amend_job raises retriable transport errors when the amendment outcome is unknown 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 16:23:53 +00:00 |
|
Daniel Roth
|
65ec38012b
|
Abri amend_job treats an unconfirmed amendment response as retriable 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 16:22:49 +00:00 |
|
Daniel Roth
|
e9cb46a58b
|
Abri amend_job surfaces OpenHousing rejections with code and message verbatim 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 16:22:11 +00:00 |
|
Daniel Roth
|
b70afc8d9d
|
Abri amend_job omits the surveyor resource so amendments cannot clobber Abri-side reassignments 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 16:20:41 +00:00 |
|
Daniel Roth
|
fbb4345116
|
Abri amend_job serialises the spec's amendoptiappt envelope with the surveyor resource last 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 16:18:24 +00:00 |
|
Daniel Roth
|
2cfed0c33d
|
Abri amend_job amends an OpenHousing appointment and returns the echoed booking 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 16:15:44 +00:00 |
|
Khalim Conn-Kowlessar
|
128981289a
|
Floor insulation is withheld when it cannot lower the derived floor U 🟥
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-07-03 16:05:04 +00:00 |
|
Khalim Conn-Kowlessar
|
f604672ae0
|
Electric underfloor codes resolve their SAP 10.2 Table 12a Grid 1 rows 🟥
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-07-03 15:57:37 +00:00 |
|
Daniel Roth
|
c0d36d1e67
|
Merge pull request #1458 from Hestia-Homes/feature/abri-api-integration
Abri DomnaRelay client — foundation + LogJob vertical (strictly typed)
|
2026-07-03 16:49:46 +01:00 |
|
Daniel Roth
|
c1c2a1947e
|
Abri log_job treats a logged-job response missing its job number as retriable 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 14:35:35 +00:00 |
|
Daniel Roth
|
39055bafed
|
Abri relay credentials and defaults hydrate from environment configuration 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 14:34:27 +00:00 |
|
Daniel Roth
|
caffa5c4e1
|
Abri job descriptions identify the visit as a Domna condition survey 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 14:33:40 +00:00 |
|