Initial state in a Redux app can be set in two ways:
createStore
(docs link)
In a nutshell: it's Redux the one who passes the initial state to the reducers, you don't need to do anything.
When you call createStore(reducer, [initialState])
you are letting Redux know what is the initial state to be passed to the reducer when the first action comes in.
The second option you mention, applies only in case you didn't pass an initial state when creating the store. i.e.
function todoApp(state = initialState, action)
state will only be initialised if there was no state passed by Redux