Scheduled post delete – can’t pass the cron arguments

Comparing your code to the WordPress function wp_schedule_single_event, it appears you failed to indicate that parameters would be passed.

Perhaps the following version of your code will work for you.

add_action( 'crondelete', 'delete_page_in',10,1);
wp_schedule_single_event($seconds, 'crondelete', array($new_post_id ));

Notice the add_action now includes two extra parameters: 10=Priority, and 1=Accepted Arguments to be passed.