Versions in this module Expand all Collapse all v0 v0.2.0 Apr 25, 2026 Changes in this version + var ProfileAggressive = model.MergeProfile + var ProfileBalanced = model.MergeProfile + var ProfileConservative = model.MergeProfile + func EvaluateProfile(profile *model.MergeProfile, pr *model.PullRequest, checks []model.CheckRun) (bool, string) + func GetProfile(name string) *model.MergeProfile + func ListProfiles() []string + func LoadProfileFromBytes(data []byte) (*model.MergeProfile, error) + func LoadProfileFromFile(path string) (*model.MergeProfile, error) + func SaveProfileToFile(profile *model.MergeProfile, path string) error + type ContextBuilder struct + func NewContextBuilder() *ContextBuilder + func (b *ContextBuilder) Build(pr *model.PullRequest, repo *model.Repo, checks []model.CheckRun) *model.PolicyContext + type Engine struct + func NewEngine(profileName string) (*Engine, error) + func NewEngineWithProfile(profile *model.MergeProfile) *Engine + func (e *Engine) CanMerge(ctx context.Context, pr *model.PullRequest, checks []model.CheckRun) (*model.PolicyDecision, error) + func (e *Engine) CanRelease(ctx context.Context) (*model.PolicyDecision, error) + func (e *Engine) CanReview(ctx context.Context, pr *model.PullRequest, checks []model.CheckRun) (*model.PolicyDecision, error) + func (e *Engine) Evaluate(ctx context.Context, action model.PolicyAction, pr *model.PullRequest, ...) (*model.PolicyDecision, error)