Preserve calibration portfolio model provenance
GeoIntel CI / docs-smoke (push) Has been cancelled
GeoIntel CI / contract-smoke (push) Has been cancelled

This commit is contained in:
Codex
2026-07-08 14:25:01 +02:00
parent 8e1e80e22e
commit 51b7d1eec7
5 changed files with 91 additions and 0 deletions
@@ -110,6 +110,10 @@ def normalize_calibration_items(summary):
"analysis_run_id": row.get("analysis_run_id"),
"job_id": row.get("job_id"),
"quality_check_id": quality_check_id,
"model_asset_id": row.get("model_asset_id"),
"model_request": row.get("model_request"),
"tile_size": row.get("tile_size"),
"tile_overlap": row.get("tile_overlap"),
"threshold": row.get("threshold"),
"detection_count": row.get("detection_count"),
"quality_score": row.get("quality_score") or row.get("f1_score"),
@@ -190,6 +194,10 @@ def normalize_calibration_items(summary):
"analysis_run_id": row.get("analysis_run_id"),
"job_id": row.get("job_id"),
"quality_check_id": quality_check_id,
"model_asset_id": row.get("model_asset_id"),
"model_request": row.get("model_request"),
"tile_size": row.get("tile_size"),
"tile_overlap": row.get("tile_overlap"),
"threshold": row.get("threshold"),
"detection_count": row.get("detection_count"),
"quality_score": row.get("quality_score") or row.get("f1_score"),
@@ -240,6 +248,10 @@ for response_path in sorted(glob.glob(os.path.join(output_dir, "threshold_*_evid
properties.update(
{
"calibration_threshold": threshold,
"calibration_model_asset_id": item.get("model_asset_id"),
"calibration_model_request": item.get("model_request"),
"calibration_tile_size": item.get("tile_size"),
"calibration_tile_overlap": item.get("tile_overlap"),
"calibration_quality_score": item.get("quality_score"),
"calibration_precision": item.get("precision"),
"calibration_recall": item.get("recall"),
@@ -257,6 +269,10 @@ for response_path in sorted(glob.glob(os.path.join(output_dir, "threshold_*_evid
"project_id": item.get("project_id"),
"analysis_run_id": item.get("analysis_run_id"),
"quality_check_id": quality_check_id,
"model_asset_id": item.get("model_asset_id"),
"model_request": item.get("model_request"),
"tile_size": item.get("tile_size"),
"tile_overlap": item.get("tile_overlap"),
"detection_count": item.get("detection_count"),
"quality_score": item.get("quality_score"),
"precision": item.get("precision"),