#!/usr/bin/env python3 """Verify the Ground Zero visual asset acquisition queue stays actionable.""" from pathlib import Path ROOT = Path(__file__).resolve().parents[1] QUEUE = ROOT / "Docs" / "Art" / "GroundZeroAssetAcquisitionQueue.md" BIOME_PLAN = ROOT / "Docs" / "World" / "BiomeAndNaturalResourceGenerationPlan.md" ROADMAP = ROOT / "AGRARIAN_DEVELOPMENT_ROADMAP.md" REQUIRED_QUEUE = [ "Free Shrubs Pack (Ultra Realistic Wind)", "Mediterranean Vegetation: Plant Pack I", "temperate Vegetation: optimized Grass Library", "Soul: Cave", "Modular Rural House & Pine Forest Environment", "/home/nathan/AssetStaging/Agrarian/Incoming", "verify_asset_license_free_only.py", "persistent world-resource record", ] REQUIRED_BIOME_PLAN = [ "weighted macro/regional/local biome blends", "Persistent Natural Resources", "removed/depleted timestamp", "Player-removed trees and shrubs stay removed", "realistic seasonal timelines", "asset sets by biome weight", ] REQUIRED_ROADMAP = [ "Ground Zero asset acquisition queue", "Tile Biome And Natural Resource Foundation", "persistent removable natural resource records", ] def require_snippets(path: Path, snippets: list[str]) -> list[str]: if not path.exists(): return [f"missing file: {path.relative_to(ROOT)}"] text = path.read_text(encoding="utf-8") return [ f"{path.relative_to(ROOT)} missing {snippet!r}" for snippet in snippets if snippet not in text ] def main() -> None: failures: list[str] = [] failures.extend(require_snippets(QUEUE, REQUIRED_QUEUE)) failures.extend(require_snippets(BIOME_PLAN, REQUIRED_BIOME_PLAN)) failures.extend(require_snippets(ROADMAP, REQUIRED_ROADMAP)) if failures: raise SystemExit("\n".join(failures)) print("Ground Zero asset queue and biome/resource plan verification complete.") if __name__ == "__main__": main()