Generalzing ConstructionRequest.toConstruction