Documentation
¶
Overview ¶
Package sandboxreaperprocess composes the independently deployable durable sandbox reconciliation owner. It never performs backend cleanup by guess.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Loop ¶
func Loop(ctx context.Context, store Store, source clock.Clock, interval time.Duration, pageSize int, wait Wait, observe Observer) error
Loop runs one immediate pass and then finite cancellable intervals.
func Run ¶
func Run(ctx context.Context, config Config, lookup SecretLookup, source clock.Clock, wait Wait, observe Observer) error
Run opens only the declared PostgreSQL authority and reconciles until cancellation. Schema creation and destructive backend cleanup remain separate audited operator/backend responsibilities.
Types ¶
type Config ¶
type Config struct {
// contains filtered or unexported fields
}
Config is one strict independently scheduled reaper declaration.
type Observer ¶
type Observer func(Summary)
Observer receives one bounded content-free reconciliation summary.
type SecretLookup ¶
SecretLookup resolves only an explicitly named injected value.
type Store ¶
type Store interface {
RecoverExpiredAssignments(context.Context, time.Time, int) ([]sandboxcontrol.Operation, error)
ClaimExpiredCleanup(context.Context, time.Time, int) ([]sandboxcontrol.Operation, error)
Reap(context.Context, time.Time, int) ([]sandboxcontrol.Operation, error)
}
Store is the bounded durable recovery authority required by the reaper.