func()

in api/proposal.go [242:264]


func (k *KEPHandler) Validate(p *Proposal) []error {
	var allErrs []error

	if err := k.validateStruct(p); err != nil {
		allErrs = append(allErrs, fmt.Errorf("struct-based validation: %w", err))
	}
	if errs := k.validateGroups(p); errs != nil {
		allErrs = append(allErrs, errs...)
	}
	if errs := k.validatePRRApprovers(p); errs != nil {
		allErrs = append(allErrs, errs...)
	}
	if err := p.Status.IsValid(); err != nil {
		allErrs = append(allErrs, err)
	}
	if err := p.Stage.IsValid(); err != nil {
		allErrs = append(allErrs, err)
	}
	if p.Status == ImplementedStatus && p.Stage != StableStage {
		allErrs = append(allErrs, fmt.Errorf("status:implemented implies stage:stable but found: %v", p.Stage))
	}
	return allErrs
}