Because wherePreflight performs the query direct on the relationship. It's the same as this
JobPreflight::preflight()->where('id', 1)->get();
Well you get the idea. You don't want that. Instead, you want to do something like this
JobPreflight::with('preflight', function ($query) {
return $query->where('id', 1);
})->get();
Anyway, your query seems to be doing a lot of things going from JobPreflight to preflight and also including job. It's a but a mess in my opinion.