Can Postgres raise warnings if joins are inconsistant with foreign keys?
No.  It is up to the developer/DBA to write sensible joins, in this regard PostgreSQL is just a slave that does what its master commands.

In any case, defining the boundary between joins that make sense and those that don't is not trivial.  If that column is there because of a denormalization, for example, then it perfectly makes sense in spite of a nonexistent foreign key.  You can always decrease the possibility for accidental misjoins by not naming the primary key column just id but jobstep_id, for example.

Also, when should it emit the warning?  When you hit it with a 1000 line SQL script, containing a hundred statements, out of which 20 contain 'inconsistent' joins?

All in all, this is rather a code review problem than anything else.