Daniel Roth
|
62acc3ce98
|
Paginate get_plans to return flat list[PlanSummary] 🟥
|
2026-05-12 14:45:09 +00:00 |
|
Daniel Roth
|
8727a78f8b
|
correct magic plan url paths 🟩
|
2026-05-12 14:33:58 +00:00 |
|
Daniel Roth
|
beaf21fdcc
|
correct magic plan url paths
|
2026-05-12 14:32:37 +00:00 |
|
Daniel Roth
|
75d0313934
|
fix broken magicplan handler tests
|
2026-05-12 14:14:37 +00:00 |
|
Daniel Roth
|
04df924146
|
fix local invoker
|
2026-05-12 14:13:12 +00:00 |
|
Daniel Roth
|
3df726937e
|
Remove unused _api_key instance variable now auth is fully header-based 🟪
|
2026-05-12 14:03:07 +00:00 |
|
Daniel Roth
|
eb381a778c
|
_fetch_plan() sends no API key query parameter 🟩
|
2026-05-12 14:02:17 +00:00 |
|
Daniel Roth
|
7752039dbd
|
_fetch_plan() sends no API key query parameter 🟥
|
2026-05-12 14:01:40 +00:00 |
|
Daniel Roth
|
20b32bcda0
|
get_plans() sends no API key query parameter 🟩
|
2026-05-12 14:01:35 +00:00 |
|
Daniel Roth
|
ffcff33dd4
|
get_plans() sends no API key query parameter 🟥
|
2026-05-12 14:00:07 +00:00 |
|
Daniel Roth
|
d59bf2d7cb
|
Set API key as session header on MagicPlanClient construction 🟩
|
2026-05-12 13:59:33 +00:00 |
|
Daniel Roth
|
da4f5f44c0
|
Set API key as session header on MagicPlanClient construction 🟥
|
2026-05-12 13:58:16 +00:00 |
|
Daniel Roth
|
a672c0dea0
|
add localhandler for testing and update requirements
|
2026-05-12 13:51:46 +00:00 |
|
Daniel Roth
|
1243690d10
|
give handler permission to write to s3 bucket
|
2026-05-08 15:41:12 +00:00 |
|
Daniel Roth
|
ce2b61d60b
|
Upload gzip-compressed MagicPlan JSON to S3 - only make one API call 🟪
|
2026-05-08 15:07:09 +00:00 |
|
Daniel Roth
|
9f62e3c31a
|
typehint
|
2026-05-08 14:30:59 +00:00 |
|
Daniel Roth
|
e1972e4349
|
Upload gzip-compressed MagicPlan JSON to S3 🟪
|
2026-05-08 14:23:32 +00:00 |
|
Daniel Roth
|
337474e773
|
Persist UploadedFile record for each MagicPlan S3 upload 🟩
|
2026-05-08 14:20:49 +00:00 |
|
Daniel Roth
|
8ac77ce8b9
|
Persist UploadedFile record for each MagicPlan S3 upload 🟥
|
2026-05-08 14:19:49 +00:00 |
|
Daniel Roth
|
03e8750c1a
|
Upload MagicPlan JSON to S3 using hubspot_deal_id key when UPRN absent 🟩
|
2026-05-08 14:17:51 +00:00 |
|
Daniel Roth
|
14a064fdef
|
Upload gzip-compressed MagicPlan JSON to S3 🟩
|
2026-05-08 14:16:41 +00:00 |
|
Daniel Roth
|
7c9cb5b161
|
Upload gzip-compressed MagicPlan JSON to S3 🟥
|
2026-05-08 14:14:42 +00:00 |
|
Daniel Roth
|
f6c17be70a
|
Expose get_plan_raw method on MagicPlanClient 🟩
|
2026-05-08 14:09:33 +00:00 |
|
Daniel Roth
|
c3aae8fd51
|
Expose get_plan_raw method on MagicPlanClient 🟥
|
2026-05-08 14:08:56 +00:00 |
|
Daniel Roth
|
4a9cabe197
|
Add hubspot_deal_id required field to MagicPlanTriggerRequest 🟩
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-05-08 13:45:10 +00:00 |
|
Daniel Roth
|
74b3a7f297
|
Add hubspot_deal_id required field to MagicPlanTriggerRequest 🟥
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-05-08 13:42:57 +00:00 |
|
Daniel Roth
|
e30e06cb6e
|
simplify dockerfile as playwright not used
|
2026-05-08 13:24:04 +00:00 |
|
Daniel Roth
|
feaa1ea680
|
Add MagicPlan Lambda Dockerfile, CI/CD jobs, and SQS IAM wiring in hubspot_deal_etl
|
2026-05-08 13:12:13 +00:00 |
|
Daniel Roth
|
f903fdefe7
|
add TODO
|
2026-05-08 10:20:12 +00:00 |
|
Daniel Roth
|
c5408f3a89
|
typing
|
2026-05-08 10:18:12 +00:00 |
|
Daniel Roth
|
6b29086a1e
|
typing and renaming 🟪
|
2026-05-07 13:26:49 +00:00 |
|
Daniel Roth
|
91a634e637
|
Lambda handler with SQS trigger and __main__ local runner 🟩
|
2026-05-07 13:16:08 +00:00 |
|
Daniel Roth
|
05bd2ba3e2
|
MagicPlanService orchestrating fetch, match, map, persist 🟩
|
2026-05-07 13:12:00 +00:00 |
|
Daniel Roth
|
1a8b27453e
|
MagicPlanService orchestrating fetch, match, map, persist 🟥
|
2026-05-07 13:11:18 +00:00 |
|
Daniel Roth
|
bbcde75b8e
|
MagicPlan HTTP client with auth headers and response parsing 🟩
|
2026-05-07 12:51:41 +00:00 |
|
Daniel Roth
|
ef5c44f7ae
|
MagicPlan HTTP client with auth headers and response parsing 🟥
|
2026-05-07 12:49:15 +00:00 |
|
Daniel Roth
|
60c69c4786
|
match address string to magicplan plan 🟩
|
2026-05-07 12:43:45 +00:00 |
|
Daniel Roth
|
8e12ac705b
|
match address string to magicplan plan 🟥
|
2026-05-07 12:41:15 +00:00 |
|
Daniel Roth
|
5b92c31302
|
validate magicplan trigger request basemodel object 🟩
|
2026-05-07 12:38:09 +00:00 |
|
Daniel Roth
|
79db1e2c7e
|
validate plans api response as pydantic basemodel object 🟥
|
2026-05-07 12:22:04 +00:00 |
|
Daniel Roth
|
25aa57e4b6
|
missing street is not included in address string 🟥
|
2026-05-06 17:07:22 +00:00 |
|
Daniel Roth
|
3b9d40f2f8
|
include address and postcode on magicplan plan 🟥
|
2026-05-06 17:03:00 +00:00 |
|
Daniel Roth
|
079f7e3397
|
test mapping second api response round dimensions to 2 decimal places 🟩
|
2026-05-05 16:30:34 +00:00 |
|
Daniel Roth
|
d3ca6bc7ff
|
delete historic mapping and client
|
2026-05-05 15:45:36 +00:00 |
|
Daniel Roth
|
ff67297646
|
start mapping json
|
2026-05-01 16:20:55 +00:00 |
|
Daniel Roth
|
f908c3ba9b
|
remove incorrect claude comments
|
2026-04-28 15:36:27 +00:00 |
|
Daniel Roth
|
3ba9a310ab
|
start defining magic plan client
|
2026-04-28 15:24:17 +00:00 |
|
Daniel Roth
|
f6ab407b33
|
Parse Magic Plan XML 🟩
|
2026-04-28 15:11:03 +00:00 |
|
Daniel Roth
|
4b3b100d63
|
Parse Magic Plan XML 🟥
|
2026-04-28 15:01:32 +00:00 |
|
Daniel Roth
|
2255271c40
|
magicplan xml dataclasses
|
2026-04-28 14:55:55 +00:00 |
|