Skip to main content

Module strength

Module strength 

Source
Expand description

Measuring the acceptance set’s strength: wrong and permitted candidates of a verified task’s change, run against its acceptance tests.

Every candidate is written into the task’s worktree under a checkpoint — as held-out tests are overlaid — run with the visible acceptance command (and, for the combined set, each held-out file overlaid), and the tree is put back. Afterwards the tree and the judge inputs must be exactly as before, or the measurement is void. The rules are speccoder_core::strength’s; this module only runs things.

Structs§

Authored
What measure needs from the author.
Held
An attempt held for a ruling: what a person decides on.
Rulings
A ruling a person made (task rule --tests-right).
Setup
What measuring needs.
Variant
One candidate: files that replace changed source files.

Functions§

add_ruling
Records ruling.
changed_files
The changed source files with their final contents.
classify
What one acceptance run says about a candidate.
dir
Where a task’s variants, findings and rulings are kept.
held
What a held attempt waits on, if it is held.
held_elsewhere
Another task of feature whose attempt is held for a ruling: it holds the worktree, so task must wait.
hold
Holds the attempt for a person.
measure
Measures the set. author is asked for variants (after the mutants, so a slow tool leaves the call for last only when there is budget). Err: the tree or the judge inputs did not come back as they were, and the measurement is void.
release
Releases a held attempt (ticked, set aside, or re-judged).
rulings
The task’s rulings.
validate
The author’s answer, validated: only the changed source files, each a real change, no duplicates, at most near_miss wrong and permitted permitted. What was dropped and why goes to notes.
weak
The input part weak for a regeneration: what got through, described to the test author (never to the implementer).