Multi-source BFS: every source is seeded before the first pop, so one sweep gives every cell its distance to the nearest source. The fresh counter is what separates finished from unreachable.
"All rotten oranges must be enqueued at time $t=0$ before processing begins. They radiate outwards in lockstep concentric waves."
"We maintain a fresh count. When a fresh orange rots, we decrement fresh--. At the end, if fresh > 0, isolated oranges exist and we return -1."
minutes - 1?"The final wave rots the last orange, but its subsequent empty loop increments minutes one extra time before discovering the queue is empty. Hence, minutes - 1."
"Every cell is visited and rotted at most once. Time is strictly $O(m \cdot n)$ and auxiliary queue space is $O(m \cdot n)$."
minutes - 1 because the sources themselves occupy level 1 and rot nothing; a fresh orange left at the end means it was never reachable, which is -1, not a larger number.