PHYSICS · Multi-part · Fermi University Physics · Computational Physics · Research software practice, verification and validation · Research software practice, verification and validation
Scientific Computing for Physicists, Ch A repository others can build on: collaboration, history and workflows
Problem
Two feature branches, solver-A and solver-B, are merged into main in turn. First solver-A is merged, producing merge commit M1. By the time solver-B is merged, main has gained its own commits since solver-B branched off, and merging it into main's tip produces commit M2. After M2, 1200 further ordinary commits are made on main, and at the current HEAD the diffusion known-answer test fails; it passed at M2, which is the last known-good commit.
((a)) State the number of parent commits of M2 and name this type of merge.
((b)) Using bisection search along the ancestry path from M2 (good) to HEAD (bad), with the deterministic known-answer test as the automatic check, how many test runs are needed in the worst case to isolate the first bad commit among the 1200 commits?