subscription = $subscription; $this->order = $order; $this->customer = $customer; $this->oldNextBillingDate = $oldNextBillingDate; $this->newNextBillingDate = $newNextBillingDate; } public function toArray(): array { // Brand-new tag — no prior contract to preserve. return [ 'subscription' => $this->subscription, 'order' => $this->order, 'customer' => $this->customer ?? [], 'old_next_billing_date' => $this->oldNextBillingDate, 'new_next_billing_date' => $this->newNextBillingDate, ]; } public function getActivityEventModel(): Subscription { return $this->subscription; } public function shouldCreateActivity(): bool { // skipNextPeriod() already writes a detailed addLog() entry with the old and // new billing dates. Skipping the generic Activity row keeps the timeline unchanged. return false; } }