The initialDataTimestamp is the earliest time the system knows the data to be consistent. setOldestTimestampFromStable will intentionally lag the oldest timestamp a few seconds behind the stable timestamp to provide a window for reads to get in.
At startup, the initialDataTimestamp will be set to the checkpoint timestamp. The system has no history before this time. However, setOldestFromStable will communicate an earlier oldest_timestamp to WiredTiger. This means a transaction with a read_timestamp can come in that WT will allow, but does not have the history to correctly satisfy.