Enable governed GRB evolution
GeoIntel CI / docs-smoke (push) Canceled after 0s
GeoIntel CI / contract-smoke (push) Canceled after 0s

This commit is contained in:
Codex
2026-07-16 19:30:46 +02:00
parent 1d515e4901
commit a8b18942f5
12 changed files with 448 additions and 59 deletions
+9 -5
View File
@@ -10,7 +10,6 @@ VectorFeatureService; this operator never writes directly to vector_features.
from __future__ import annotations
import argparse
import hashlib
import json
import os
import sys
@@ -340,11 +339,11 @@ def build_partition_features(
pages_by_collection[collection.name] += 1
for source_feature in payload.get("features") or []:
bbox_feature_count += 1
raw_id = str(source_feature.get("id") or "")
raw_id = str(source_feature.get("id") or "").strip()
if not raw_id:
raw_id = hashlib.sha256(
json.dumps(source_feature.get("geometry"), sort_keys=True).encode("utf-8")
).hexdigest()
raise RuntimeError(
f"GRB {collection.name} feature is missing an official source identity"
)
feature_id = f"{collection.name}:{raw_id}"
if feature_id in seen_ids:
continue
@@ -736,6 +735,11 @@ def provision_dataset(
"feature_count": manifest["feature_count"],
"partition_count": len(partition_paths),
"partition_strategy": manifest["partition_strategy"],
"identity_stable": True,
"identity_scheme": "grb_ogc_feature_id",
"identity_prefixes": [
f"{item.name}:{item.name}." for item in definition.collections
],
"selection_aggregation": {
"metric_key": definition.metric_key,
"method": definition.metric_method,