When a project's status becomes Billed, set project.locked to true, set commission.snapshot to true and enroll it in service-based programs (sealcoat, roof inspection).
When
Fires when: Project status → Billed
Only if
Runs for every matching event — locked projects are still skipped.
Then
1
2
3
End
Ends after the last step — or early on a reply, a stage change, a locked project, or do-not-contact.