Support governed train-only corpus shards
GeoIntel release gates / Compile, test, contracts and builds (push) Canceled after 0s
GeoIntel release gates / Python and npm vulnerability policy (push) Canceled after 0s
GeoIntel release gates / GIS image, SBOM and container scan (push) Canceled after 0s

This commit is contained in:
Jens
2026-07-29 17:21:18 +02:00
parent 08d406ce7d
commit 8c9a58948b
2 changed files with 32 additions and 3 deletions
@@ -142,6 +142,15 @@ def test_manifest_sample_selection_keeps_external_holdouts_out_of_targeted_datas
module.select_manifest_samples(samples, {"geel", "missing"})
def test_train_only_shard_requires_explicit_opt_in() -> None:
module = load_tile_exporter()
samples = [{"sample_slug": "new-train-aoi", "recommended_split": "train"}]
with pytest.raises(SystemExit, match="must include at least one"):
module.validate_validation_split(samples, set())
assert module.validate_validation_split(samples, set(), allow_empty=True) == set()
def test_validation_coverage_reports_holdouts_without_retained_tiles() -> None:
module = load_tile_exporter()
coverage = module.validation_sample_coverage(