There is an issue with zooming (effectiveLods in MapView.constraints is null) when using WMTS as a basemap. The metadata from the WMTS is converted into TileInfo, but it’s stored in an undocumented property called tilemapCache. However, this TileInfo object is not applied to MapView.constraints.lods, which causes improper handling of LODs during map rendering and zooming.
According to the MapView documentation (section Zoom and LODs) https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html effectiveLODs will be null if the basemap doesn’t have tileInfo. However, WMTS services do have TileInfo (calculated from their metadata - TileMatrixSet), so effectiveLODs should not be null.