I would appreciate confirmation that the following understanding is correct:
There is no persistent ID associated with a program. Programs are identified only by their current index (pid), which changes whenever a program is deleted or reordered.
So if I delete or reorder a program, the history events in the log prior to the deletion or reordering:
(1) will report the wrong program name for programs whose index was greater than that of the deleted or reordered program.
(2) in case of a deletion, can include a program index (pid) that is out of range, i.e., that exceeds the current number of programs “nprogs”.