HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: /home/xedaptot/be.naniguide.com/app/Model/BrandVoice.php
<?php

namespace App\Model;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;

/**
 * BrandVoice — per-user brand voice preferences consumed by the
 * AI inline rewrite pipeline (`BrandVoiceContextProvider`, tier 4).
 *
 * `adjectives` + `forbidden` are JSON lists of short keywords.
 * `sample` is a freeform writing sample (≤2000 chars).
 *
 * Created by F1.0 (AI_FEATURES_PLAN §0.2).
 */
class BrandVoice extends Model
{
    protected $table = 'brand_voices';

    protected $fillable = [
        'user_id',
        'adjectives',
        'forbidden',
        'sample',
    ];

    protected $casts = [
        'adjectives' => 'array',
        'forbidden' => 'array',
    ];

    /**
     * @return BelongsTo<User, $this>
     */
    public function user(): BelongsTo
    {
        return $this->belongsTo(User::class);
    }
}