Files
heicode/heicode/model/agnet_deployment.go
T

32 lines
1.8 KiB
Go

package model
// AgnetDeployment stores the Manager-side deployment placeholder.
// It is intentionally a control-plane snapshot: the real Agnet platform
// execution state can attach later, but Manager must not lose the accepted
// plan, manifest, status, or audit context across container restarts.
type AgnetDeployment struct {
Id int `gorm:"primaryKey" json:"id"`
DeploymentID string `gorm:"type:varchar(64);uniqueIndex" json:"deployment_id"`
UserID string `gorm:"type:varchar(64);index" json:"user_id"`
ChannelID string `gorm:"type:varchar(64)" json:"channel_id"`
BindingScope string `gorm:"type:varchar(512);index" json:"binding_scope"`
CorrelationID string `gorm:"type:varchar(64);index" json:"correlation_id"`
SubMode string `gorm:"type:varchar(32);index" json:"sub_mode"`
Status string `gorm:"type:varchar(32);index" json:"status"`
Phase string `gorm:"type:varchar(32);index" json:"phase"`
RuntimeState string `gorm:"type:varchar(32)" json:"runtime_state"`
FailureReason string `gorm:"type:varchar(512)" json:"failure_reason"`
CreatedAtText string `gorm:"type:varchar(32)" json:"created_at"`
UpdatedAtText string `gorm:"type:varchar(32)" json:"updated_at"`
CreatedAtMs int64 `gorm:"bigint;index" json:"created_at_ms"`
UpdatedAtMs int64 `gorm:"bigint;index" json:"updated_at_ms"`
PlanJSON string `gorm:"type:text" json:"plan_json"`
AgentInstancesJSON string `gorm:"type:text" json:"agent_instances_json"`
PermissionManifestJSON string `gorm:"type:text" json:"permission_manifest_json"`
PayloadJSON string `gorm:"type:text" json:"payload_json"`
}
func (AgnetDeployment) TableName() string {
return "agnet_deployments"
}