Bulk re-score after rule changes
In brief: When you change a risk rule or template, re-score every client.
When you edit a risk question, change a scoring rule, or switch your firm's default risk template, every existing client's stored score becomes stale. This tool re-scores every client using their stored answers against the current rules in a single click.
When to use it
- After editing a question on a firm-owned template
- After adding or removing a scoring rule
- After switching the default template for a client type
- Before publishing a new annual risk policy
Where to find it
Settings → Risk Templates → Re-score all clients (top of the page, only visible to firm owners and managers).
What it does
For each non-deleted client of your firm whose stored
risk_assessment_data.answers exists:
- Reads their stored answers (the actual responses to each question)
- Looks up their current active EDD narrative (if any)
- Re-runs the scorer with the current rules and questions
- Writes a new assessment-history row
- May transition the client's
compliance_statusif score changes
Who can run it
- ✅ Firm owners
- ✅ Managers
- ❌ Staff (the RPC rejects with NOT_AUTHORISED)
- ❌ Auditors (read-only role)
How long it takes
Sub-second for small firms (~50 clients). Linear with client count — expect ~1ms per client for the actual score plus database overhead. A firm with 5,000 clients should complete in under 30 seconds.
What you'll see after
A summary card on the same page:
- Succeeded — clients re-scored successfully
- Skipped (no stored answers) — clients who've never been assessed; nothing to re-score against
- Failed — clients where the scorer errored (rare; usually malformed answers or a deleted question id still in their data)
The errors section is collapsible and shows the first 20 failures with client name and error message.
Caveats
- Prior scores are preserved in assessment history — re-scoring doesn't erase the record of what the score was before. Auditors can always see the score trajectory.
- It will transition compliance status — if a client moves from
Low → High, their
compliance_statusmay shift (e.g. requiring a re-review). That's intentional. - EDD narratives are preserved — the rescore looks up the latest
non-superseded narrative and passes it through, so the link in
risk_assessment_data.edd_record_idstays intact.
Didn't find what you needed?
Contact support