feat: close final competitive gap — professional review workflow + multi-country (MY/SG/UK)

Closes the 4th and final gap from the competitive benchmark: the
human-in-the-loop professional tier every commercial competitor pairs
with their software. Deliberately NOT a marketplace or payment
integration — a structured review-request status on each member's
Wassiyah (not_requested -> requested -> reviewed, with reviewer name
recorded), surfaced on the Mutawalli dashboard so nothing quietly ships
as final without the legally-required review being flagged.

Paired with a new whole-app jurisdiction setting since 'necessary in
certain countries' only makes sense per-jurisdiction:

- nf_families.jurisdiction (MY/SG/UK), owner-only to change — first
  UPDATE policy ever added to nf_families, which previously had none.
- New Settings-tab jurisdiction selector (JurisdictionSetting.svelte).
- Wassiyah tab and the draft will document now carry jurisdiction-
  specific legal notes: Wills Act 1959 + state Syariah (Malaysia),
  Wills Act 1838 + AMLA (Singapore), Wills Act 1837 (UK). Singapore
  added as a full third jurisdiction option, not just a stub.
- Zakat calculator's currency label and Nisab default now follow the
  family's jurisdiction (RM/SGD/GBP) instead of a hardcoded RM guess.

Covered by e2e-jurisdiction-review.cjs (13/13). Full regression:
253/253 across all suites (2 reruns confirmed as pre-existing
parallel-load flakes, not regressions).
This commit is contained in:
2026-08-14 12:37:25 +08:00
parent 71aa4ae47c
commit 97a1d2ebe2
11 changed files with 327 additions and 31 deletions
+9 -2
View File
@@ -62,8 +62,15 @@ differentiators:
spouse. Ja'fari (Shia) is deliberately gated as unsupported rather than silently computed
with Sunni rules, since it uses a structurally different classification system, not a
parameter tweak.
4. **No human-in-the-loop / professional tier — open.** Every competitor pairs software with a
lawyer or consultant; Nur Falah remains self-serve only.
4. **Human-in-the-loop / professional tier — closed, as a review-request workflow.** Not a
marketplace or payment integration (out of scope) — a structured status on each member's
Wassiyah (Not reviewed → Review requested → Reviewed, with reviewer name recorded), surfaced
on the Mutawalli dashboard so nothing quietly ships as final without the legally-required
review being flagged. Pairs with a new whole-app jurisdiction setting (Malaysia/Singapore/UK,
owner-configurable in Settings) that drives jurisdiction-specific legal notes in both the
Wassiyah tab and the generated draft will document (Wills Act 1959/state Syariah for
Malaysia, Wills Act 1838 + AMLA for Singapore, Wills Act 1837 for the UK) and Zakat
currency/Nisab defaults.
5. **AI guidance layer — closed.** Coverage Dashboard now surfaces a rule-based
recommendations list (exposed assets, missing Wassiyah, unverified assets, unlinked
liabilities, no insurance logged, no Zakat set up, insufficient attestors, no agent