GeoIntel release gates / Compile, test, contracts and builds (push) Successful in 1m49s
GeoIntel release gates / Python and npm vulnerability policy (push) Successful in 21s
GeoIntel release gates / Production AI image, SBOM and container scan (push) Successful in 5m39s
GeoIntel release gates / Deploy exact gated revision to Unraid (push) Failing after 58m43s
33 lines
1.1 KiB
Python
33 lines
1.1 KiB
Python
#!/usr/bin/env python3
|
|
from pathlib import Path
|
|
import sys
|
|
|
|
ROOT = Path(__file__).resolve().parents[1]
|
|
required = [
|
|
"CODEX_START.md",
|
|
"README.md",
|
|
"docs/00-start/START_HERE.md",
|
|
"docs/20-run-readiness/RUN_READINESS_FINAL.md",
|
|
"docs/20-run-readiness/PASS_SEQUENCE_FINAL.md",
|
|
"docs/20-run-readiness/CODEX_TOMORROW_RUNBOOK.md",
|
|
"docs/governance/GEOINTEL_CONSTITUTION.md",
|
|
"docs/governance/ARCHITECTURE_INVARIANTS.md",
|
|
"docs/governance/FORBIDDEN_DECISIONS.md",
|
|
"docs/specs/CANONICAL_DOMAIN_MODELS.md",
|
|
"docs/specs/GIS_STANDARDS.md",
|
|
"docs/specs/STATE_MACHINES.md",
|
|
"docs/workflows/GOLDEN_PATHS.md",
|
|
"prompts/codex/final/DAY_1_MASTER_PROMPT.md",
|
|
"demo/geel/area_geel_center.geojson",
|
|
"demo/geel/reference_buildings.geojson",
|
|
"demo/geel/demo_detections.geojson",
|
|
]
|
|
missing = [p for p in required if not (ROOT / p).exists()]
|
|
if missing:
|
|
print("Preimplementation audit failed. Missing required files:")
|
|
for p in missing:
|
|
print(f"- {p}")
|
|
sys.exit(1)
|
|
print("Preimplementation audit passed.")
|
|
print(f"Checked {len(required)} required files.")
|