Go types and validator for ChangeSpec 1.0 events.
go get github.com/changespec/changespec-goRequires Go 1.22+.
import "github.com/changespec/changespec-go"
event, err := changespec.Validate(jsonBytes)
if err != nil {
var ve *changespec.ValidationError
if errors.As(err, &ve) {
fmt.Println(ve.Details)
}
}
fmt.Println(event.VendorID, event.Category)Validate(data []byte) (*Event, error)- parse and validate raw JSON against the ChangeSpec 1.0 schemaValidationError- structured error with a.Details []stringfield for field-level messagesEvent- typed struct for a ChangeSpec eventCategory,Severity,SourceType,ReviewerRole- string enumsSignature- Ed25519 signature block
ChangeSpec 1.0 - github.com/changespec/spec
Apache 2.0