Jorijn asked for the control that settles it -- a fresh template, tested with
learning off -- and ran it twice.
fresh template, 0 folds 30/30, two consecutive blocks of fifteen
same lineage, 40 folds 12/15
same lineage, 185 folds total failure, 108 consecutive rejections
Every one of those measured with learning switched off during the measurement
itself, so nothing moved underneath the numbers, and the fresh-template result is
replicated back to back. Three points, monotonic in fold count.
The mechanism has been visible since the 185-fold collapse: the frames one press
contributes are near-duplicates of a single image from one finger position, so
folding them spends the template's ninety-six slots on that position and evicts
the diversity a twenty-sample enrolment put there. Stock's updates are spread
across many separate presses hours apart, which is where diversity actually comes
from.
And there is nothing on the other side of the scale. A plain enrolment measures
thirty out of thirty, so learning has no headroom to improve anything, and it has
never once been observed to raise a rate under conditions worth defending -- the
run that once looked like proof was confounded by a freshly wiped sensor and a
user learning the technique, both of which Jorijn identified himself while the
numbers were still climbing.
The code stays behind --learn=1. The finding is about this trustlet's algorithm,
not about the idea.