Files
tasks/chasm/lib/scheduler/gen/schedulerpb/v1/tasks.go-helpers.pb.go
Alex StanfieldandGitHub 3fa7f5adcf feat: add CHASM-to-workflow scheduler migration (#9537)
## What Changed

This PR adds a safe rollback path for schedules by enabling migration
from CHASM-backed schedulers (V2) back to workflow-backed schedulers
(V1).

if we need to move a schedule off CHASM, migration should preserve
schedule behavior and state, remain idempotent under retries, and leave
the system in a consistent post-migration state.

## Expected Behavior

- A V2 schedule can be migrated to V1 through admin APIs.
- Migration preserves user-visible schedule semantics (including
paused/notes state and conflict-token value semantics).
- Migration is retry-safe/idempotent.
- Once migration completes, the V1 schedule is active and the CHASM
scheduler is no longer serving requests.
- Unpause is blocked while migration is pending to prevent state
divergence.
2026-03-20 10:34:21 -05:00

266 lines
7.2 KiB
Go

// Code generated by protoc-gen-go-helpers. DO NOT EDIT.
package schedulerpb
import (
"google.golang.org/protobuf/proto"
)
// Marshal an object of type SchedulerIdleTask to the protobuf v3 wire format
func (val *SchedulerIdleTask) Marshal() ([]byte, error) {
return proto.Marshal(val)
}
// Unmarshal an object of type SchedulerIdleTask from the protobuf v3 wire format
func (val *SchedulerIdleTask) Unmarshal(buf []byte) error {
return proto.Unmarshal(buf, val)
}
// Size returns the size of the object, in bytes, once serialized
func (val *SchedulerIdleTask) Size() int {
return proto.Size(val)
}
// Equal returns whether two SchedulerIdleTask values are equivalent by recursively
// comparing the message's fields.
// For more information see the documentation for
// https://pkg.go.dev/google.golang.org/protobuf/proto#Equal
func (this *SchedulerIdleTask) Equal(that interface{}) bool {
if that == nil {
return this == nil
}
var that1 *SchedulerIdleTask
switch t := that.(type) {
case *SchedulerIdleTask:
that1 = t
case SchedulerIdleTask:
that1 = &t
default:
return false
}
return proto.Equal(this, that1)
}
// Marshal an object of type SchedulerCallbacksTask to the protobuf v3 wire format
func (val *SchedulerCallbacksTask) Marshal() ([]byte, error) {
return proto.Marshal(val)
}
// Unmarshal an object of type SchedulerCallbacksTask from the protobuf v3 wire format
func (val *SchedulerCallbacksTask) Unmarshal(buf []byte) error {
return proto.Unmarshal(buf, val)
}
// Size returns the size of the object, in bytes, once serialized
func (val *SchedulerCallbacksTask) Size() int {
return proto.Size(val)
}
// Equal returns whether two SchedulerCallbacksTask values are equivalent by recursively
// comparing the message's fields.
// For more information see the documentation for
// https://pkg.go.dev/google.golang.org/protobuf/proto#Equal
func (this *SchedulerCallbacksTask) Equal(that interface{}) bool {
if that == nil {
return this == nil
}
var that1 *SchedulerCallbacksTask
switch t := that.(type) {
case *SchedulerCallbacksTask:
that1 = t
case SchedulerCallbacksTask:
that1 = &t
default:
return false
}
return proto.Equal(this, that1)
}
// Marshal an object of type GeneratorTask to the protobuf v3 wire format
func (val *GeneratorTask) Marshal() ([]byte, error) {
return proto.Marshal(val)
}
// Unmarshal an object of type GeneratorTask from the protobuf v3 wire format
func (val *GeneratorTask) Unmarshal(buf []byte) error {
return proto.Unmarshal(buf, val)
}
// Size returns the size of the object, in bytes, once serialized
func (val *GeneratorTask) Size() int {
return proto.Size(val)
}
// Equal returns whether two GeneratorTask values are equivalent by recursively
// comparing the message's fields.
// For more information see the documentation for
// https://pkg.go.dev/google.golang.org/protobuf/proto#Equal
func (this *GeneratorTask) Equal(that interface{}) bool {
if that == nil {
return this == nil
}
var that1 *GeneratorTask
switch t := that.(type) {
case *GeneratorTask:
that1 = t
case GeneratorTask:
that1 = &t
default:
return false
}
return proto.Equal(this, that1)
}
// Marshal an object of type InvokerProcessBufferTask to the protobuf v3 wire format
func (val *InvokerProcessBufferTask) Marshal() ([]byte, error) {
return proto.Marshal(val)
}
// Unmarshal an object of type InvokerProcessBufferTask from the protobuf v3 wire format
func (val *InvokerProcessBufferTask) Unmarshal(buf []byte) error {
return proto.Unmarshal(buf, val)
}
// Size returns the size of the object, in bytes, once serialized
func (val *InvokerProcessBufferTask) Size() int {
return proto.Size(val)
}
// Equal returns whether two InvokerProcessBufferTask values are equivalent by recursively
// comparing the message's fields.
// For more information see the documentation for
// https://pkg.go.dev/google.golang.org/protobuf/proto#Equal
func (this *InvokerProcessBufferTask) Equal(that interface{}) bool {
if that == nil {
return this == nil
}
var that1 *InvokerProcessBufferTask
switch t := that.(type) {
case *InvokerProcessBufferTask:
that1 = t
case InvokerProcessBufferTask:
that1 = &t
default:
return false
}
return proto.Equal(this, that1)
}
// Marshal an object of type InvokerExecuteTask to the protobuf v3 wire format
func (val *InvokerExecuteTask) Marshal() ([]byte, error) {
return proto.Marshal(val)
}
// Unmarshal an object of type InvokerExecuteTask from the protobuf v3 wire format
func (val *InvokerExecuteTask) Unmarshal(buf []byte) error {
return proto.Unmarshal(buf, val)
}
// Size returns the size of the object, in bytes, once serialized
func (val *InvokerExecuteTask) Size() int {
return proto.Size(val)
}
// Equal returns whether two InvokerExecuteTask values are equivalent by recursively
// comparing the message's fields.
// For more information see the documentation for
// https://pkg.go.dev/google.golang.org/protobuf/proto#Equal
func (this *InvokerExecuteTask) Equal(that interface{}) bool {
if that == nil {
return this == nil
}
var that1 *InvokerExecuteTask
switch t := that.(type) {
case *InvokerExecuteTask:
that1 = t
case InvokerExecuteTask:
that1 = &t
default:
return false
}
return proto.Equal(this, that1)
}
// Marshal an object of type BackfillerTask to the protobuf v3 wire format
func (val *BackfillerTask) Marshal() ([]byte, error) {
return proto.Marshal(val)
}
// Unmarshal an object of type BackfillerTask from the protobuf v3 wire format
func (val *BackfillerTask) Unmarshal(buf []byte) error {
return proto.Unmarshal(buf, val)
}
// Size returns the size of the object, in bytes, once serialized
func (val *BackfillerTask) Size() int {
return proto.Size(val)
}
// Equal returns whether two BackfillerTask values are equivalent by recursively
// comparing the message's fields.
// For more information see the documentation for
// https://pkg.go.dev/google.golang.org/protobuf/proto#Equal
func (this *BackfillerTask) Equal(that interface{}) bool {
if that == nil {
return this == nil
}
var that1 *BackfillerTask
switch t := that.(type) {
case *BackfillerTask:
that1 = t
case BackfillerTask:
that1 = &t
default:
return false
}
return proto.Equal(this, that1)
}
// Marshal an object of type SchedulerMigrateToWorkflowTask to the protobuf v3 wire format
func (val *SchedulerMigrateToWorkflowTask) Marshal() ([]byte, error) {
return proto.Marshal(val)
}
// Unmarshal an object of type SchedulerMigrateToWorkflowTask from the protobuf v3 wire format
func (val *SchedulerMigrateToWorkflowTask) Unmarshal(buf []byte) error {
return proto.Unmarshal(buf, val)
}
// Size returns the size of the object, in bytes, once serialized
func (val *SchedulerMigrateToWorkflowTask) Size() int {
return proto.Size(val)
}
// Equal returns whether two SchedulerMigrateToWorkflowTask values are equivalent by recursively
// comparing the message's fields.
// For more information see the documentation for
// https://pkg.go.dev/google.golang.org/protobuf/proto#Equal
func (this *SchedulerMigrateToWorkflowTask) Equal(that interface{}) bool {
if that == nil {
return this == nil
}
var that1 *SchedulerMigrateToWorkflowTask
switch t := that.(type) {
case *SchedulerMigrateToWorkflowTask:
that1 = t
case SchedulerMigrateToWorkflowTask:
that1 = &t
default:
return false
}
return proto.Equal(this, that1)
}