P0 fixes: - ModelError.Is(): use exact matching instead of substring contains() - shouldClearStickySession: add context param for cancellation/tracing P1 fixes: - TODO stubs: return 501 Not Implemented errors - validateInstanceSignature: deduplicate to shared validateCodeSignature() - Error messages: standardize to English only - http.go: remove pseudo if-else with duplicate branches
22 lines
450 B
Go
22 lines
450 B
Go
package service
|
|
|
|
import (
|
|
"context"
|
|
"time"
|
|
)
|
|
|
|
type SchedulerOutboxEvent struct {
|
|
ID int64
|
|
EventType string
|
|
AccountID *int64
|
|
GroupID *int64
|
|
Payload map[string]any
|
|
CreatedAt time.Time
|
|
}
|
|
|
|
// SchedulerOutboxRepository 提供调度 outbox 的读取接口。
|
|
type SchedulerOutboxRepository interface {
|
|
ListAfter(ctx context.Context, afterID int64, limit int) ([]SchedulerOutboxEvent, error)
|
|
MaxID(ctx context.Context) (int64, error)
|
|
}
|