Commit graph

1293 commits

Author SHA1 Message Date
Daniel Roth
88af4ec00e
Merge pull request #265 from Hestia-Homes/feature/new-file-types
Some checks failed
Test Suite / unit-tests (push) Has been cancelled
Uploaded Files: new file type and file source for MagicPlan
2026-05-08 16:15:29 +01:00
Daniel Roth
32dbb18980 migration files 2026-05-08 14:15:39 +00:00
Daniel Roth
edcabea199 add magic plan file source and file type 2026-05-08 14:15:08 +00:00
KhalimCK
28735205fb
Merge pull request #264 from Hestia-Homes/feature/db-migrations-0197
adding index to allow multiple organidations to be mapped to a project
2026-05-07 19:20:49 +01:00
Khalim Conn-Kowlessar
4357ae9802 add schema files and migration 0198 for magic_plan_uid 2026-05-07 18:13:17 +00:00
Khalim Conn-Kowlessar
00e22a15e9 Merge branch 'main' of https://github.com/Hestia-Homes/assessment-model into feature/db-migrations-0197 2026-05-07 17:08:08 +00:00
Khalim Conn-Kowlessar
7b45aa669d adding index to allow multiple organidations to be mapped to a project 2026-05-07 17:06:40 +00:00
KhalimCK
4c5dd5c68c
Merge pull request #263 from Hestia-Homes/feature/db-migrations
adding migration files for pm changes
2026-05-07 11:39:06 +01:00
Khalim Conn-Kowlessar
efc4a3bb56 adding migration files for pm changes 2026-05-07 09:08:11 +00:00
Daniel Roth
0eec1d8499
Merge pull request #262 from Hestia-Homes/feature/magicplan-tables
Magicplan tables - migration
2026-05-06 16:26:45 +01:00
Daniel Roth
cadf15af54 corrected migration files 2026-05-06 15:21:02 +00:00
Daniel Roth
2cf0985503 Merge branch 'main' into feature/magicplan-tables 2026-05-06 14:36:42 +00:00
KhalimCK
a456be3c54
Merge pull request #248 from Hestia-Homes/feature/additional-db-columns
added hubspot user table
2026-05-06 15:35:31 +01:00
Daniel Roth
e5fdea1608
Merge pull request #261 from Hestia-Homes/revert-unpushed-migration
revert unpushed migration
2026-05-06 15:34:17 +01:00
Daniel Roth
278f2af758 revert unpushed migration 2026-05-06 14:30:14 +00:00
KhalimCK
4cff53336a
Merge pull request #260 from Hestia-Homes/claude/assessment-model-p2
Claude/assessment model p2
2026-05-06 15:25:48 +01:00
Khalim Conn-Kowlessar
bf85787936 re-designing UI for PM' 2026-05-06 14:23:54 +00:00
Daniel Roth
ad55132f97
Merge pull request #259 from Hestia-Homes/feature/magicplan-tables
MagicPlan tables
2026-05-06 15:16:24 +01:00
Daniel Roth
64b7c27878 correct casing 2026-05-06 14:13:59 +00:00
Daniel Roth
92eefd4ab4 migration files 2026-05-06 14:03:20 +00:00
Daniel Roth
09697884eb add postcode to plan 2026-05-06 14:03:00 +00:00
Daniel Roth
6ad0d069ee revert migration 2026-05-06 14:02:28 +00:00
Daniel Roth
dbbaedd6cd migration files 2026-05-06 13:59:48 +00:00
Daniel Roth
a1b086f18e indent 2026-05-06 13:58:51 +00:00
Daniel Roth
19df0e2cd5 indent 2026-05-06 13:58:12 +00:00
Daniel Roth
9f6eb888d9 correct casing 2026-05-06 13:57:49 +00:00
Daniel Roth
e85eabf89d correct column name in window 2026-05-06 13:56:54 +00:00
Daniel Roth
855cf2a10b change door width to mm 2026-05-06 13:56:46 +00:00
Daniel Roth
dd02b7f85d indent 2026-05-06 13:55:02 +00:00
Daniel Roth
d63cfe6828 rename magic plan plan plan_name to name 2026-05-06 13:54:29 +00:00
Daniel Roth
a8c5e7e923 add magicplan tables 2026-05-06 13:52:55 +00:00
Daniel Roth
f8bbb19b07 remove readonly on gitconfig 2026-05-06 13:49:40 +00:00
Khalim Conn-Kowlessar
a754f9a7a3 moving location of timeline 2026-05-06 12:10:30 +00:00
Khalim Conn-Kowlessar
dda2980cac redesigning ui for tracking page 2026-05-06 11:56:26 +00:00
Jun-te Kim
30848ce3a2
Merge pull request #258 from Hestia-Homes/feature/domna-agentic-model
pr for claude skills
2026-05-06 10:37:50 +01:00
Khalim Conn-Kowlessar
4734eeed07 updating live tracking new features UI 2026-05-05 20:43:19 +00:00
Jun-te Kim
2d05405205 pr for claude skills 2026-05-05 19:53:21 +00:00
Khalim Conn-Kowlessar
72b58739ff Merge branch 'main' of https://github.com/Hestia-Homes/assessment-model into claude/assessment-model-p2 2026-05-05 19:40:34 +00:00
Khalim Conn-Kowlessar
1c4532f2eb updating CI 2026-05-05 19:36:33 +00:00
KhalimCK
66c3e515cc
Merge pull request #257 from Hestia-Homes/claude/assessment-model-p2
Implement project #2 — live tracking properties tab operational workflow
2026-05-05 20:35:59 +01:00
Khalim Conn-Kowlessar
084391b9dc add cypress spec for pibi-measure selection flow
Verifies that an approver can open the drawer, tick/untick PIBI
measures, save the selection, and that the POST to pibi-measures route
(which pushes measures_for_pibi_ordered to HubSpot) is intercepted with
the correct payload. Uses cy.intercept stubs for both GET and POST.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-05 19:15:35 +00:00
Khalim Conn-Kowlessar
1767733441 add vitest unit tests for pibi-selection service
Covers: happy path (tx committed, HubSpot called with
measures_for_pibi_ordered, pushed_at stamped), empty selection,
no approval rows touched, DB failure (ok=false, no HubSpot call),
HubSpot failure (pushed_at null), correct property name assertion.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-05 19:15:05 +00:00
Khalim Conn-Kowlessar
240b633928 add PIBI measure selector to property drawer
Adds PibiMeasureSelector component (issue #254) inside the drawer's
PIBI section. Approvers see a checkbox multi-select listing proposed +
instructed measures; approved measures are pre-ticked. Non-approvers
retain the existing read-only chip list. Saves via POST
/api/portfolio/[portfolioId]/pibi-measures and invalidates the query
cache on success.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-05 19:14:33 +00:00
Khalim Conn-Kowlessar
1e5eb09c3e add pibi-measures route
Adds POST /api/portfolio/[portfolioId]/pibi-measures (approver-gated)
that accepts { dealId, measureNames[] } and delegates to
selectPibiMeasures. Also adds a GET handler that returns the current
pibi_ordered selection, approved measures, and instructed measures for
a deal — used by the drawer's PIBI selector to pre-populate.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-05 19:14:20 +00:00
Khalim Conn-Kowlessar
091388692e add pibi-selection service
Implements selectPibiMeasures (issue #254): replaces all pibi_ordered
rows for a deal, then pushes the new list to HubSpot under
measures_for_pibi_ordered via syncMeasuresFieldToHubSpot. Mirrors the
instruct-measure service; no approval rows touched.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-05 19:14:12 +00:00
Khalim Conn-Kowlessar
f3ce506653 add cypress spec for instruct-measure flow
Approver opens the drawer at the Measures section, picks a measure from
the catalogue dropdown, submits, and the spec asserts the optimistic
chip, the POST payload + response shape, and that the approval log
surfaces the new approval row.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-05 18:58:08 +00:00
Khalim Conn-Kowlessar
c5083cbc78 add instruct-measure drawer form
Approver-only catalogue dropdown + submit button at the bottom of the
Measures section with optimistic chip rendering, error surfacing, and
the out-of-order soft warning when technical-approved measures already
exist on the deal.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-05 18:58:01 +00:00
Khalim Conn-Kowlessar
7de92cf5ea add instruct-measure service, route and soft-warning helper
Approver-only flow that records an instructed measure in
user_defined_deal_measures, auto-creates a deal_measure_approvals row +
event in a single tx, then pushes the instructed list to HubSpot under
instructed_measures. When the deal has no proposed measures and no prior
approvals, also pushes the new measure as proposed_measures so the deal
has a coherent starting point. Soft-warning helper surfaces the
out-of-order case for the drawer (and later slices).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-05 18:56:48 +00:00
Khalim Conn-Kowlessar
4181af6d15 add syncMeasuresFieldToHubSpot helper
Generic push for multi-value HubSpot deal properties (semicolon-separated)
with the same ECONNRESET retry pattern as pushDealPropertiesToHubSpot.
Returns a discriminated ok result so callers can stamp pushed_at only on
success. Slice 4 (PIBI selections) will reuse the same helper.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-05 18:56:19 +00:00
Khalim Conn-Kowlessar
54e093891d add user_defined_deal_measures table migration and schema
Track instructed and pibi-ordered measures locally with a source enum,
created-by user, and HubSpot sync timestamps so issue #253 can persist
approver instructions and slice 4 can reuse the table for PIBI selections.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-05 18:56:09 +00:00