MCPcopy Create free account
hub / github.com/github/gh-aw / validateFeatures

Function validateFeatures

pkg/workflow/features_validation.go:35–55  ·  view source on GitHub ↗

validateFeatures validates all feature flags in the workflow data

(data *WorkflowData)

Source from the content-addressed store, hash-verified

33
34// validateFeatures validates all feature flags in the workflow data
35func validateFeatures(data *WorkflowData) error {
36 if data == nil || data.Features == nil {
37 featuresValidationLog.Print("No features to validate")
38 return nil
39 }
40
41 featuresValidationLog.Printf("Validating features: count=%d", len(data.Features))
42
43 // Validate action-tag if present
44 if actionTagVal, exists := data.Features["action-tag"]; exists {
45 featuresValidationLog.Print("Validating action-tag feature")
46 if err := validateActionTag(actionTagVal); err != nil {
47 featuresValidationLog.Printf("Action-tag validation failed: %v", err)
48 return err
49 }
50 featuresValidationLog.Print("Action-tag validation passed")
51 }
52
53 featuresValidationLog.Print("Features validation completed successfully")
54 return nil
55}
56
57// validateActionTag validates that action-tag is a full 40-character SHA or a version tag when specified
58func validateActionTag(value any) error {

Callers 2

TestValidateFeaturesFunction · 0.85
validateFeatureConfigMethod · 0.85

Calls 3

validateActionTagFunction · 0.85
PrintMethod · 0.80
PrintfMethod · 0.45

Tested by 1

TestValidateFeaturesFunction · 0.68