2026-10-16
A pull longer than its page limit is refused, not cut short
dsFetchInto used to stop quietly at a function's page limit and answer as if the collection had ended there, so a nightly comparison could take every record past the limit as deleted. It now ends with PULL_INCOMPLETE, naming the limit and how much was staged; the staged records stay. A script that wanted only the first pages catches the refusal, or reads them with fetchPage.