php-agentic/Models/PromptVersion.php
Snider adcc163775 refactor: update namespaces for L1/L2 package convention
- Core\Mod\Tenant -> Core\Tenant
- Core\Service\Agentic -> Core\Mod\Agentic\Service

Part of namespace restructure to align with L1/L2 module conventions.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 17:34:46 +00:00

56 lines
1.1 KiB
PHP

<?php
declare(strict_types=1);
namespace Core\Mod\Agentic\Models;
use Core\Tenant\Models\User;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
class PromptVersion extends Model
{
protected $fillable = [
'prompt_id',
'version',
'system_prompt',
'user_template',
'variables',
'created_by',
];
protected $casts = [
'variables' => 'array',
'version' => 'integer',
];
/**
* Get the parent prompt.
*/
public function prompt(): BelongsTo
{
return $this->belongsTo(Prompt::class);
}
/**
* Get the user who created this version.
*/
public function creator(): BelongsTo
{
return $this->belongsTo(User::class, 'created_by');
}
/**
* Restore this version to the parent prompt.
*/
public function restore(): Prompt
{
$this->prompt->update([
'system_prompt' => $this->system_prompt,
'user_template' => $this->user_template,
'variables' => $this->variables,
]);
return $this->prompt;
}
}