Daniel Roth
|
c0e444fccb
|
abri_api not abri
|
2026-07-07 14:40:33 +00:00 |
|
Daniel Roth
|
04b32b1515
|
minor refactor
|
2026-07-07 13:21:01 +00:00 |
|
Daniel Roth
|
7b6c7e1168
|
remove bad import
|
2026-07-07 13:19:03 +00:00 |
|
Daniel Roth
|
252a146cc3
|
remove silly comment
|
2026-07-07 13:17:24 +00:00 |
|
Daniel Roth
|
3934e2d359
|
move trigger check to HubspotDealDiffer
|
2026-07-07 13:15:40 +00:00 |
|
Daniel Roth
|
d9b441962f
|
Name the Abri trigger builder for its None-or-message contract 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 13:02:25 +00:00 |
|
Daniel Roth
|
c016c8b754
|
Extract _trigger_abri_lambda for consistency with the other scraper triggers 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 12:58:48 +00:00 |
|
Daniel Roth
|
a3985389ab
|
The deal row names the job number client_booking_reference, matching HubSpot and the schema 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 12:43:40 +00:00 |
|
Daniel Roth
|
481c01098d
|
Real Abri portal deals fire the job-logging trigger 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:46:33 +00:00 |
|
Daniel Roth
|
eaedd9a63d
|
Real Abri portal deals fire the job-logging trigger 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 11:44:51 +00:00 |
|
Daniel Roth
|
8847d06d68
|
A first confirmed survey date on an Abri deal reaches the abri queue 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 10:19:01 +00:00 |
|
Daniel Roth
|
d70853bfd2
|
The scraper sends fired Abri flows to the abri queue on each deal change 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 10:16:13 +00:00 |
|
Daniel Roth
|
28b4a8927f
|
A scrape that fires Abri triggers builds one message naming the fired flows 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 10:13:48 +00:00 |
|
Daniel Roth
|
2e72f32d52
|
A scrape that fires Abri triggers builds one message naming the fired flows 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-07 10:12:41 +00:00 |
|
Daniel Roth
|
359516fa5f
|
The deal upsert lands client_booking_reference in the job_no column 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 16:10:29 +00:00 |
|
Daniel Roth
|
62d9bbf147
|
The deal upsert lands client_booking_reference in the job_no column 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 16:08:17 +00:00 |
|
Daniel Roth
|
0cd4efbf83
|
A client_booking_reference change triggers a deal database update 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 16:05:20 +00:00 |
|
Daniel Roth
|
faac50eca4
|
A client_booking_reference change triggers a deal database update 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 16:04:54 +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
|
b96aceaf7b
|
HubSpot calls share one retry policy behind a single guarded entry point 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:42:58 +00:00 |
|
Daniel Roth
|
8d9fb0ade4
|
Transient HubSpot failures are retried under the shared rate-limit policy 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:38:20 +00:00 |
|
Daniel Roth
|
e3894b0309
|
HubSpot failures surface without the response body that echoes tenant PII 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:34:33 +00:00 |
|
Daniel Roth
|
76d0b4bac9
|
Abri tenancy signatory becomes an associated HubSpot deal contact 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-06 13:24:47 +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 |
|
Daniel Roth
|
021e7c15bb
|
Abri job amendment trigger is named after the OpenHousing job it amends 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 16:26:15 +00:00 |
|
Daniel Roth
|
ff868156d1
|
Abri job logging trigger is named after the DomnaRelay route it fires 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 15:26:41 +00:00 |
|
Daniel Roth
|
1a5368571f
|
add typehint
|
2026-07-03 10:46:24 +00:00 |
|
Daniel Roth
|
f4f915cfb7
|
Abri deal abandonment names its attempt threshold 🟪
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:19:06 +00:00 |
|
Daniel Roth
|
18989252f4
|
Deal differ detects number of attempts changes for db update 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:17:51 +00:00 |
|
Daniel Roth
|
c00ae894ee
|
Deal differ detects number of attempts changes for db update 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:14:22 +00:00 |
|
Daniel Roth
|
58ce855e0b
|
Abri deal abandonment fires only when the deal newly becomes abandoned 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:13:58 +00:00 |
|
Daniel Roth
|
9559f23741
|
Abri deal abandonment fires only when the deal newly becomes abandoned 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:12:59 +00:00 |
|
Daniel Roth
|
6de0da869e
|
Abri deal abandonment requires a negative outcome 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:11:14 +00:00 |
|
Daniel Roth
|
41d62ce2b2
|
Abri deal abandonment requires a negative outcome 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:10:26 +00:00 |
|
Daniel Roth
|
88093eb7cd
|
Abri deal abandonment requires at least three parseable attempts 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:10:03 +00:00 |
|
Daniel Roth
|
af85e0ed2b
|
Abri deal abandonment requires at least three parseable attempts 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:07:38 +00:00 |
|
Daniel Roth
|
79423f594c
|
Abri deal abandonment ignores deals that are not Abri condition deals 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:06:53 +00:00 |
|
Daniel Roth
|
33848a76fe
|
Abri deal abandonment ignores deals that are not Abri condition deals 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:04:45 +00:00 |
|
Daniel Roth
|
262f22764a
|
Abri deal abandonment triggers after three attempts with a negative outcome 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:03:57 +00:00 |
|
Daniel Roth
|
aca507cc47
|
Abri deal abandonment triggers after three attempts with a negative outcome 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 10:03:42 +00:00 |
|
Daniel Roth
|
05ca0bb280
|
move static method below non-statics
|
2026-07-03 08:33:10 +00:00 |
|
Daniel Roth
|
a36fe00132
|
Abri tenant data fetch resolves abri deals by associated project id 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 08:28:25 +00:00 |
|
Daniel Roth
|
5df1237b90
|
Abri tenant data fetch requires a parseable new commencement date 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 08:27:42 +00:00 |
|
Daniel Roth
|
47842da7b9
|
Abri tenant data fetch requires a parseable new commencement date 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 08:27:22 +00:00 |
|
Daniel Roth
|
b4d2d9cd37
|
Abri tenant data fetch ignores already-set commencement dates 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 08:26:20 +00:00 |
|
Daniel Roth
|
c18f4feb3e
|
Abri tenant data fetch ignores already-set commencement dates 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 08:26:02 +00:00 |
|
Daniel Roth
|
426aa9a15e
|
Abri tenant data fetch does not trigger for non-abri deals 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 08:25:26 +00:00 |
|
Daniel Roth
|
0b8f0f17a9
|
Abri tenant data fetch does not trigger for non-abri deals 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 08:25:07 +00:00 |
|
Daniel Roth
|
2f1dfaa5a6
|
Abri tenant data fetch triggers when commencement date is first set 🟩
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 08:24:36 +00:00 |
|
Daniel Roth
|
da0ef3e5e0
|
Abri tenant data fetch triggers when commencement date is first set 🟥
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-07-03 08:24:11 +00:00 |
|