How to publish custom post type for custom role user and not “submit for review”?

You have map_meta_cap as true, and yet you are defining the capabilities using ‘capabilities’ yourself, and with backwards syntax.

When the capabilities are mapped, the verb goes at the beginning and the noun at the end, so the ‘edit_post’ capability would be ‘edit_openproject’.