26 lines
1,006 B
Python
26 lines
1,006 B
Python
from rest_framework import serializers
|
|
from apps.agents.models import Agent, AgentExecution, AgentEvent
|
|
|
|
|
|
class AgentEventSerializer(serializers.ModelSerializer):
|
|
class Meta:
|
|
model = AgentEvent
|
|
fields = ['uuid', 'event_type', 'content', 'timestamp']
|
|
|
|
|
|
class AgentExecutionSerializer(serializers.ModelSerializer):
|
|
events = AgentEventSerializer(many=True, read_only=True)
|
|
|
|
class Meta:
|
|
model = AgentExecution
|
|
fields = ['uuid', 'agent', 'user', 'status', 'input_data', 'output_data', 'error_message', 'created_at', 'started_at', 'completed_at', 'events']
|
|
read_only_fields = ['uuid', 'created_at', 'started_at', 'completed_at', 'events']
|
|
|
|
|
|
class AgentSerializer(serializers.ModelSerializer):
|
|
executions = AgentExecutionSerializer(many=True, read_only=True)
|
|
|
|
class Meta:
|
|
model = Agent
|
|
fields = ['uuid', 'user', 'name', 'description', 'status', 'task_id', 'created_at', 'updated_at', 'started_at', 'completed_at', 'executions']
|
|
read_only_fields = ['uuid', 'user', 'created_at', 'updated_at']
|