implement shouldRunBaseCase, mustRunBaseCase, and canRunBaseCase