Store workflow definitions as table rows and drop YAML

This commit is contained in:
Ian Gulliver
2026-10-20 21:30:39 -07:00
parent 5823af6ff9
commit 32ebf08b66
17 changed files with 624 additions and 454 deletions
+20
View File
@@ -0,0 +1,20 @@
package workflow
import (
"bytes"
"encoding/json"
"fmt"
"g.fc.run/ai/byre/internal/api"
)
func Parse(data []byte) (api.WorkflowDefinition, error) {
def := api.WorkflowDefinition{}
dec := json.NewDecoder(bytes.NewReader(data))
dec.DisallowUnknownFields()
err := dec.Decode(&def)
if err != nil {
return api.WorkflowDefinition{}, fmt.Errorf("%w: %v", ErrInvalid, err)
}
return def, Validate(def)
}