cemdiscriminate

package
v0.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 23, 2026 License: AGPL-3.0, AGPL-3.0-or-later Imports: 7 Imported by: 0

Documentation

Overview

Package cemdiscriminate is the mutation runner behind `cem discriminate` (TCQ-V0-055..058). It lives outside internal/cem so the CEM seams' closure stays the standard library and internal/cem: the binary installs Open as workflow.OpenHunkJudge. It imports only the standard library, internal/liveverify/mutate, and internal/cem/wire.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Judge

type Judge struct {
	// contains filtered or unexported fields
}

Judge runs hunk mutants on one exported copy of a target tree.

func Open

func Open(ctx context.Context, root, target string) (*Judge, error)

Open exports the target revision of the repository at root for the prove --mutate runner (mutate.Open).

func (*Judge) Close

func (judge *Judge) Close()

Close removes the exported tree.

func (*Judge) Judge

func (judge *Judge) Judge(ctx context.Context, hunk wire.Hunk, tests []string, maxMutants int, wallTime time.Duration) wire.DiscriminationWitness

Judge runs every mutant of one hunk against each cited test file and folds the reports: a mutant survives only when every cited test lets it live, and any report the runner could not complete makes the hunk not-run. A not-run detail is the runner's text; the caller bounds it for the wire.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL