On a segment where S2's run isn't read once ahead of the chain, group's chain stops at trailing_start. After merging, it re-asks the peel, and reruns the chain without the stop if the peel no longer takes what it stopped before (the left < tail block in _group_segment). The documented case was Freiherr von Berg Ma, and that has taken #614's read-once path since #614.
#623's review replaced the re-ask with a no-op. Nothing changed: no test failed on master or on #623's branch, and 0 of 226,776 generated parses moved. 31 case rows reach the block and 3 fire it (Smith, John PhD Jr. de la, Berg, Jan de vd, Doe, John van DO), and those three read the same without it.
Proposal: find an input where the re-ask decides something, or delete it along with its snapshot and comment. The bound at that site still matters: reverting it alone to trailing_start fails 9 tests, because the re-ask then sees left = 0.
On a segment where S2's run isn't read once ahead of the chain, group's chain stops at
trailing_start. After merging, it re-asks the peel, and reruns the chain without the stop if the peel no longer takes what it stopped before (theleft < tailblock in_group_segment). The documented case wasFreiherr von Berg Ma, and that has taken #614's read-once path since #614.#623's review replaced the re-ask with a no-op. Nothing changed: no test failed on master or on #623's branch, and 0 of 226,776 generated parses moved. 31 case rows reach the block and 3 fire it (
Smith, John PhD Jr. de la,Berg, Jan de vd,Doe, John van DO), and those three read the same without it.Proposal: find an input where the re-ask decides something, or delete it along with its snapshot and comment. The bound at that site still matters: reverting it alone to
trailing_startfails 9 tests, because the re-ask then seesleft = 0.