type

Operation

One physical or semantic planner operation before checkpointed phases are built.

Properties

PropertyTypeDescription
KindStepKindKind selects the runner behavior.
NamestringName is a stable, review-friendly operation label.
SQLstringSQL is present only for StepSQL.
Rename*RenameRename is present only for StepRenameContent.
ResourceIDs[]schema.StableIDResourceIDs is present only while planning a StepRetireResources step.
PurgeVersionOwnerIDs[]schema.StableIDPurgeVersionOwnerIDs identifies surviving resources whose complete historical version rows could otherwise restore references to a retired resource. It is present only while planning StepRetireResources.
RequiredFields[]RequiredFieldAddressRequiredFields is present only for StepAuditRequiredValues.
EnableVersions*EnableVersionsPayloadEnableVersions is present only for StepEnableVersions.

How it works

Store adapters convert operations into immutable Phase and Step values before writing an artifact.

Full signature

type Operation struct { // Kind selects the runner behavior. Kind StepKind `json:"kind"` // Name is a stable, review-friendly operation label. Name string `json:"name"` // SQL is present only for StepSQL. SQL string `json:"sql,omitempty"` // Rename is present only for StepRenameContent. Rename *Rename `json:"rename,omitempty"` // ResourceIDs is present only while planning a StepRetireResources step. ResourceIDs []schema.StableID `json:"resourceIds,omitempty"` // PurgeVersionOwnerIDs identifies surviving resources whose complete // historical version rows could otherwise restore references to a retired // resource. It is present only while planning StepRetireResources. PurgeVersionOwnerIDs []schema.StableID `json:"purgeVersionOwnerIds,omitempty"` // RequiredFields is present only for StepAuditRequiredValues. RequiredFields []RequiredFieldAddress `json:"requiredFields,omitempty"` // EnableVersions is present only for StepEnableVersions. EnableVersions *EnableVersionsPayload `json:"enableVersions,omitempty"` }

Source migration/migration.go:249