// Package interfaces defines the contracts for worker components package interfaces import ( "github.com/jfraeys/fetch_ml/internal/manifest" "github.com/jfraeys/fetch_ml/internal/queue" ) // ManifestWriter defines the contract for writing run manifests type ManifestWriter interface { // Upsert updates or creates a manifest in the given directory // The mutate function is called with the current or new manifest Upsert(dir string, task *queue.Task, mutate func(*manifest.RunManifest)) // BuildInitial creates a new initial manifest for a task BuildInitial(task *queue.Task, podmanImage string) *manifest.RunManifest }