readTile

abstract suspend fun readTile(z: Int, x: Int, y: Int, sector: Sector? = null): Flow<CachedFeatureRow>?

Read rows for one tile, or null if the tile is absent (cache miss). An empty flow distinguishes "tile cached with zero rows" from "tile not cached". sector is the tile's true geographic bounds for the spatial query; null → derive Web-Mercator slippy bounds from (z, x, y) (back-compat for slippy-keyed tiles).