Added in test reproducing a bug in the merging of partial test vectors.
Test for inconsistent filter and raise a precondition violation when doing a merge-and-remove.
Beef up invariant checking and also improve diagnostics for when an inconsistent filter has been used.
Correct filter implementation, which fixes the bug!
Hoist combined filter calculation for efficiency - I will revisit this to see if the calculation of the filler sections can also use the combined filters in an upcoming commit.
Name change to reflect the fact that what I thought was an NTestCaseBuilder bug wasn't - so the corrected test is now an example.
Vet potential filler sections against the combined filter so that the filter isn't confronted by full test vectors when all it takes is a peek at the filler to decide that it won't pass.
WIP: cutover API and a test to reflect that 'WithDeferralBudget' should act as a *local* property on a factory that may be overridden in child factories by larger values. The test fails, and there needs to be some thought about how to reproduce a failing test case made with multiple overrides of the deferral budget.
WIP: support for producing a map of node indices in depth-first post order search to the associated deferral budget, and for rebuilding a node tree to pick up the deferral budgets from such a map.
WIP: completed implementation for reproducing the deferral budgets stored at various factories in an overall tree; there is at least one test failure.
Fix for test failure - fixed a typo wherein the wrong variable was used.
Merge in corrections to example filter and changes to the deferral budget implementation allowing multiple budgets to be set at different points in the a tree of factories.
Renaming so that the names of subtree root nodes are more consistent across the codebase.
Cutover to using a record representation for 'Node' to leverage easy copy-with-single field-change syntax for records.
Octopus merge of rename refactorings and cutover of 'Node' to a record-based representation.
Fix grammar typo.
Renaming of 'MergedPartialTestVectorRepresentations' to 'SetOfMergedPaths'.
'Vector' to 'Path' rename for file being broken out only.
Rename of 'Level' to 'Step'.
Rename 'TestVector' to 'Path'.