feat: add insurance/Takaful tracking, liabilities, and asset ownership verification

Per-member Insurance & Takaful tab (life/Takaful/medical/asset policies,
same author-owns/family-reads pattern as Wassiyah/Waqf), a family-shared
Liabilities section on the Asset Registry (kept distinct from assets since
Faraid requires debts settled before distribution), and dual-path asset
ownership verification (proof document + confirm by either the
mutawalli/agent or any other family member, since not every demo family
has an agent assigned). All proof documents share a new private
nf-asset-documents storage bucket with the same RLS pattern as person
photos. Mutawalli dashboard now surfaces each member's insurance policies.

Covered by e2e-insurance-verification.cjs (12/12); full regression sweep
233/233 across all suites.
This commit is contained in:
2026-08-14 10:17:03 +08:00
parent d5e25e9f8e
commit 49706e0cd2
7 changed files with 642 additions and 17 deletions
+22
View File
@@ -34,3 +34,25 @@ Ran `verify-demo-families.cjs` against the live app (not just SQL success) —
confirms sign-in, correct asset count, non-zero estate total, coverage
percentage, correct person count, and non-empty tree render for all 5
families. 35/35 passing.
## Insurance/Takaful, Liabilities & Asset Verification (added later)
Three additions, covered by `e2e-insurance-verification.cjs` (12/12):
- **Insurance & Takaful tab** — per-member (`nf_insurance_policies`), same
author-owns-writes/family-reads pattern as Wassiyah/Waqf. Life, Takaful,
medical, or asset-specific policies with an optional proof document.
- **Liabilities** (bottom of the Assets tab) — family-shared
(`nf_liabilities`), kept distinct from assets because Faraid requires debts
settled before distribution. Optionally linked to the asset it's secured
against, with a loan-document attachment.
- **Asset ownership verification** — every asset in the Asset Registry can
now take a proof document (car grant, land title, cover note) and a
verified/unverified badge. Either the mutawalli/agent OR any other family
member can confirm — not gated to a single approver, since several demo
families have no agent assigned.
- The Mutawalli dashboard's per-member document summary now also lists each
member's insurance/Takaful policies.
- All proof documents (policies, liabilities, assets) share one private
Storage bucket, `nf-asset-documents`, with the same family-membership RLS
pattern used for person photos.