VectorCast::class, 'allowed_actions' => 'array', 'is_ai_draft' => 'boolean', ]; public function decisions(): HasMany { return $this->hasMany(AIDecision::class); } public function category(): BelongsTo { return $this->belongsTo(Category::class, 'category_id'); } public function subcategory(): BelongsTo { return $this->belongsTo(Category::class, 'subcategory_id'); } public function sourceTicket(): BelongsTo { return $this->belongsTo(Ticket::class, 'source_ticket_id'); } public function chunks(): HasMany { return $this->hasMany(ArticleChunk::class); } public function quickReplies(): BelongsToMany { return $this->belongsToMany(QuickReply::class)->withTimestamps(); } public function activeQuickReplies(): BelongsToMany { return $this->quickReplies()->where('is_active', true); } }