Keep dated relationships current
Purpose
A relationship can begin or end even when no staff member edits it that day. This capability gives dated affiliations a consistent workspace calendar and processes the side effects of crossed boundaries, so current labels, automatic roles, shared-detail defaults, and compliance assessments do not depend on the browser's or server's local date.
How It Works
Rhythm classifies affiliations as upcoming, current, or past using the workspace's business day. The end day remains current. Console counts and filters use the same classification, and new ties start with that workspace day unless staff choose another supported date.
Reconciliation processes the interval since the last settled day rather than only today's boundaries. It applies role and pending default-link work for starts and recalculates organizations affected by affiliation or role boundaries. The watermark advances after all affected organizations settle; repeating an already settled interval creates no further writes. Merely passing a day does not resave every record.
An authorized on-demand run can reconcile real work or report a dry run. Dry runs may inspect a future day without writing, while actual runs use the current workspace day. Scheduled processing runs after local midnight only when deployment enables it; the pinned default leaves it disabled. Thus classification can be correct on a read while deferred boundary side effects still need reconciliation. Automatic-role settlement also has a separate due-role pass; disabling the date-window sweep does not itself establish that this independent pass is disabled.
Example
Lena's affiliation starts tomorrow with a pending work-phone link and automatic roles. Today staff see an upcoming tie without those start-day effects. After an enabled reconciliation processes the start day, eligible defaults and roles are applied and relevant organizations are reevaluated. Repeating that settled run does not add another role or revision. A missed processing day is included in the next interval rather than discarded.
Lena's association uses a business day that can differ from UTC. The coordinator checks the service's effective-day classification before interpreting Tomorrow in her own browser. For a tie ending October 23, the Current view includes that final day and the Past view applies on October 24. An administrator can inspect a dry run for October 24 without writing role or compliance changes. A real run cannot use that supplied future date. If processing misses the weekend, the next unsettled window includes the crossed boundaries; a repeated settled run changes neither the organization version nor its history. These inspections distinguish calendar classification from completed side effects.
Why It Works This Way
Our reading is that a workspace calendar is necessary when staff and infrastructure occupy different time zones; an effective business day should not change with the machine asking the question. Inclusive end dates align the final day of a relationship with staff expectations and the formal period model.
A watermark protects missed work and repeat safety together. Advancing it before every affected organization settles would make a later retry skip unfinished effects. Limiting writes to actual boundary work avoids filling history with daily no-ops. Dry-run freedom and real-run date restrictions separate planning from mutation. The disabled scheduler default is a deployment boundary, not evidence that the product intends boundary side effects never to run.
Relationships
Maintain a person’s organizational relationships owns periods and primary constraints. Maintain responsibilities on organizational relationships and Share organization contact points with affiliated people supply start-day actions. Review organization role compliance and prepare notices owns reevaluation. CRM Settings holds the settled-day watermark, while deployment enables the scheduled worker; no inference operation participates in this processing.