// Code generated by cmd/asyncapi-event-contracts from specs/asyncapi/agent-manager.v1.yaml; DO NOT EDIT.

package agent

const SchemaVersion = 1

const (
	EventSessionCreated          = "agent.session.created"
	EventSessionUpdated          = "agent.session.updated"
	EventSessionSnapshotRecorded = "agent.session.snapshot_recorded"
	EventRunRequested            = "agent.run.requested"
	EventRunStarted              = "agent.run.started"
	EventRunWaiting              = "agent.run.waiting"
	EventRunCompleted            = "agent.run.completed"
	EventRunFailed               = "agent.run.failed"
	EventRunCancelled            = "agent.run.cancelled"
	EventAcceptanceRequested     = "agent.acceptance.requested"
	EventAcceptanceCompleted     = "agent.acceptance.completed"
	EventAcceptanceFailed        = "agent.acceptance.failed"
	EventFollowUpRequested       = "agent.follow_up.requested"
	EventFollowUpCreated         = "agent.follow_up.created"
	EventFollowUpUpdated         = "agent.follow_up.updated"
	EventFollowUpCommented       = "agent.follow_up.commented"
	EventFollowUpReviewSignaled  = "agent.follow_up.review_signaled"
	EventFollowUpFailed          = "agent.follow_up.failed"
	EventHumanGateRequested      = "agent.human_gate.requested"
	EventHumanGateResolved       = "agent.human_gate.resolved"
	EventSelfDeployPlanRequested = "agent.self_deploy.plan_requested"
	EventFlowVersionActivated    = "agent.flow.version_activated"
	EventRoleVersionActivated    = "agent.role.version_activated"
	EventPromptVersionActivated  = "agent.prompt.version_activated"
)

const (
	AggregateAcceptance     = "acceptance"
	AggregateFlow           = "flow"
	AggregateFollowUp       = "follow_up"
	AggregateHumanGate      = "human_gate"
	AggregatePrompt         = "prompt"
	AggregateRole           = "role"
	AggregateRun            = "run"
	AggregateSelfDeployPlan = "self_deploy_plan"
	AggregateSession        = "session"
)

// Payload is the generated common payload envelope for domain events.
type Payload struct {
	AcceptanceResultID                  string   `json:"acceptance_result_id,omitempty"`
	ActivatedVersion                    int64    `json:"activated_version,omitempty"`
	AffectedServiceKeys                 []string `json:"affected_service_keys,omitempty"`
	ExpectedRuntimeJobTypes             []string `json:"expected_runtime_job_types,omitempty"`
	FailureCode                         string   `json:"failure_code,omitempty"`
	FlowID                              string   `json:"flow_id,omitempty"`
	FlowVersionID                       string   `json:"flow_version_id,omitempty"`
	FollowUpIntentID                    string   `json:"follow_up_intent_id,omitempty"`
	FromStageID                         string   `json:"from_stage_id,omitempty"`
	GovernanceDecisionRef               string   `json:"governance_decision_ref,omitempty"`
	GovernanceGatePolicyRef             string   `json:"governance_gate_policy_ref,omitempty"`
	GovernanceGateRequestRef            string   `json:"governance_gate_request_ref,omitempty"`
	GovernanceReleaseDecisionPackageRef string   `json:"governance_release_decision_package_ref,omitempty"`
	GovernanceReleaseDecisionRef        string   `json:"governance_release_decision_ref,omitempty"`
	GovernanceReleasePolicyRef          string   `json:"governance_release_policy_ref,omitempty"`
	GovernanceRiskAssessmentRef         string   `json:"governance_risk_assessment_ref,omitempty"`
	GovernanceRiskProfileRef            string   `json:"governance_risk_profile_ref,omitempty"`
	GuidanceRefCount                    int64    `json:"guidance_ref_count,omitempty"`
	HumanGateOutcome                    string   `json:"human_gate_outcome,omitempty"`
	HumanGateRequestID                  string   `json:"human_gate_request_id,omitempty"`
	InteractionRef                      string   `json:"interaction_ref,omitempty"`
	InteractionRequestRef               string   `json:"interaction_request_ref,omitempty"`
	InteractionResponseRef              string   `json:"interaction_response_ref,omitempty"`
	MergeCommitSHA                      string   `json:"merge_commit_sha,omitempty"`
	PathCategories                      []string `json:"path_categories,omitempty"`
	PlanFingerprint                     string   `json:"plan_fingerprint,omitempty"`
	PreviousStatus                      string   `json:"previous_status,omitempty"`
	ProjectRef                          string   `json:"project_ref,omitempty"`
	PromptTemplateDigest                string   `json:"prompt_template_digest,omitempty"`
	PromptTemplateVersionID             string   `json:"prompt_template_version_id,omitempty"`
	ProviderCommentRef                  string   `json:"provider_comment_ref,omitempty"`
	ProviderOperationRef                string   `json:"provider_operation_ref,omitempty"`
	ProviderPullRequestRef              string   `json:"provider_pull_request_ref,omitempty"`
	ProviderReviewSignalRef             string   `json:"provider_review_signal_ref,omitempty"`
	ProviderSignalRef                   string   `json:"provider_signal_ref,omitempty"`
	ProviderWorkItemRef                 string   `json:"provider_work_item_ref,omitempty"`
	ProviderWorkItemType                string   `json:"provider_work_item_type,omitempty"`
	ReasonCode                          string   `json:"reason_code,omitempty"`
	RepositoryRef                       string   `json:"repository_ref,omitempty"`
	RoleProfileDigest                   string   `json:"role_profile_digest,omitempty"`
	RoleProfileID                       string   `json:"role_profile_id,omitempty"`
	RoleProfileVersion                  int64    `json:"role_profile_version,omitempty"`
	RunID                               string   `json:"run_id,omitempty"`
	RuntimeJobRef                       string   `json:"runtime_job_ref,omitempty"`
	RuntimeSlotRef                      string   `json:"runtime_slot_ref,omitempty"`
	SelfDeployPlanID                    string   `json:"self_deploy_plan_id,omitempty"`
	ServicesYamlDigest                  string   `json:"services_yaml_digest,omitempty"`
	ServicesYamlRef                     string   `json:"services_yaml_ref,omitempty"`
	SessionID                           string   `json:"session_id,omitempty"`
	SourceRef                           string   `json:"source_ref,omitempty"`
	StageID                             string   `json:"stage_id,omitempty"`
	StateSnapshotDigest                 string   `json:"state_snapshot_digest,omitempty"`
	StateSnapshotID                     string   `json:"state_snapshot_id,omitempty"`
	Status                              string   `json:"status,omitempty"`
	Summary                             string   `json:"summary,omitempty"`
	ToStageID                           string   `json:"to_stage_id,omitempty"`
	Version                             int64    `json:"version,omitempty"`
}
