v0.9.0 Rotation participants and schedule targets converge on spec instead of accumulating additively. A user or target removed from spec is now removed from GoAlert even while a sibling ref is unresolved, and rotation participants follow declared spec.userRefs order -- which decides who is on call for the week containing spec.start. A cache-cold grace cycle protects live on-call rotations on the first reconcile after this upgrade: a rotation whose ref cache has never been warmed adds newcomers but removes nobody, then converges normally. Participant removal is now visible via the StaleParticipantsRemoved event and the Ready condition, with ColdCacheGrace distinguishing a cycle that left participants in place. Known limitation: schedule target convergence has no grace rule; see docs/adoption.md.