Concepts rapidvalue.eu →

Joiner / Mover / Leaver Flows

Joiner, mover and leaver events — triggers, workflows, and leaver safety.

What is a JML event?

Joiner / mover / leaver (JML) are the three lifecycle events that identities go through. JML events are detected from changes in HR syncs (a new row is a joiner, a changed department or manager is a mover, an end date in the past is a leaver) and published on the event bus for downstream workflows.

JML owns no access — the model (revised 2026-06-19)

JML does not own access and is not a second provisioning path. Access is always driven by access grant policies plus reconciliation: birthright is simply a policy match (provenance policy), and reconciliation converges the target to the Expected state. JML itself is two things:

Grant provenance uses a fixed vocabulary: policy · request · manual · sync. The reconciliation comparison is labelled Expected / Actual throughout the product.

Joiner — what triggers it

Mover — the most complex

Mover events fire when one of the identity's trigger attributes changes (configurable via IdentitySyncConfig.sol_trigger_attributes). The default set is department, function, manager_id, cost_center, and location.

Leaver — soft versus hard

Leaver events are detected via identity.end_date < now or an explicit status change to TERMINATED.

Note

A hard leaver triggers a revoke on every target system where the identity has an account. ALWAYS test your leaver flow with a dummy account in a development environment — a misconfiguration here breaks legitimate users.

Relationship with Sync Strategy

If you have configured an upstream sync (for example on-premises Active Directory → Entra Connect), certain JML actions are blocked on target systems that are managed by that sync. A joiner workflow that has "create AD account" as a step must work through the source system; the platform spawns a ManualProvisioningTask if the admin tries to do it through the target.


Further reading: