103 lines
4.9 KiB
JSON
103 lines
4.9 KiB
JSON
{
|
|
"schema_version": 1,
|
|
"generated_at": "2026-08-09T13:20:00Z",
|
|
"audit_id": "reviewedexp6-provenance-migration-audit-r1",
|
|
"status": "blocked_lineage_incomplete",
|
|
"model": {
|
|
"path": "/app/models/geointel-building-yolov8s-reviewedexp6-minpx3-img640-ft20.pt",
|
|
"sha256": "038f1f97a6afd534f29e1f392a730a58207b928ca01e31ab8d8fed6106705820",
|
|
"size_bytes": 22514794,
|
|
"observed_mtime": "2026-07-15T05:11:29.338792783+02:00",
|
|
"lifecycle": "legacy_unpromoted_challenger"
|
|
},
|
|
"observed_training_artifacts": [
|
|
{
|
|
"role": "training_summary",
|
|
"path": "/app/storage/training/operator-yolo/geointel-building-yolov8s-reviewedexp6-minpx3-img640-ft20/training_summary.json",
|
|
"sha256": "961b9d119b24967977c22ba89a54f9caea51e440769bebde5641b7ee8bfae1eb"
|
|
},
|
|
{
|
|
"role": "ultralytics_arguments",
|
|
"path": "/app/storage/training/operator-yolo/geointel-building-yolov8s-reviewedexp6-minpx3-img640-ft20/args.yaml",
|
|
"sha256": "87e07dbed3ad12cc474e6b895147839431805b7044496277242e1538fcd91a0b"
|
|
},
|
|
{
|
|
"role": "training_metrics",
|
|
"path": "/app/storage/training/operator-yolo/geointel-building-yolov8s-reviewedexp6-minpx3-img640-ft20/results.csv",
|
|
"sha256": "57e72102b855c138b212efc293249952ec821e0f07201666ea4b17fb23d727a9"
|
|
},
|
|
{
|
|
"role": "dataset_summary",
|
|
"path": "/app/storage/operator-data/yolo-building-aoi1024-reviewedexp6-minpx3vis035/yolo_tile_dataset_summary.json",
|
|
"sha256": "7c917e31216d1df2174c0f9c736f88a81f3835aa991971f8fb8665e17ddf5c9c"
|
|
},
|
|
{
|
|
"role": "dataset_yaml",
|
|
"path": "/app/storage/operator-data/yolo-building-aoi1024-reviewedexp6-minpx3vis035/dataset.yaml",
|
|
"sha256": "62e12f4433508cb0640f1d90ec0ffd389cd21ebe655fac4e7d9402f04da1168e"
|
|
},
|
|
{
|
|
"role": "legacy_dataset_quality_audit",
|
|
"path": "/app/storage/operator-data/model-review/reviewedexp6-corpus/audit/operator_yolo_dataset_quality_audit.json",
|
|
"sha256": "42c34cddfcf7b8656d4513efa4e7249d73678164c2a1121f245be42ac56daf12"
|
|
}
|
|
],
|
|
"reproduced_training_configuration": {
|
|
"task": "detect",
|
|
"epochs": 20,
|
|
"image_size": 640,
|
|
"batch_size": 4,
|
|
"device": "cpu",
|
|
"seed": 0,
|
|
"deterministic_requested": true,
|
|
"base_model_sha256": "a9088b8491dfae36694b53e9e9406cb4e3511d334a5712fa34f75078a47759c1",
|
|
"dataset_tile_count": 252,
|
|
"dataset_label_count": 79192,
|
|
"train_tile_count": 234,
|
|
"validation_tile_count": 18
|
|
},
|
|
"human_review_gate": {
|
|
"evaluated_with": "scripts.training_release_manifest.human_review_audit_failures",
|
|
"passed": false,
|
|
"failures": [
|
|
"accepted_human_review_evidence_missing",
|
|
"review_audit_manifest_not_immutable",
|
|
"review_audit_spatial_leakage_not_ok",
|
|
"review_complete_not_true"
|
|
],
|
|
"interpretation": "The retained quality audit is not a checksum-bound accepted human-review ledger and cannot be upgraded into one retroactively."
|
|
},
|
|
"missing_required_original_evidence": [
|
|
"exact training repository commit recorded at training start",
|
|
"training container image digest",
|
|
"pinned Python, PyTorch, CUDA and Ultralytics runtime receipt for the original CPU run",
|
|
"dependency lock or SBOM checksum",
|
|
"immutable source corpus manifest and freeze-sidecar checksum",
|
|
"label release checksum",
|
|
"independent split manifest checksum and zero-under-2-km audit",
|
|
"accepted human review ledger with reviewer identity, per-sample decision, timestamp and reviewed artifact hash",
|
|
"complete training RunManifest binding all upstream artifacts before execution"
|
|
],
|
|
"forbidden_inferences": [
|
|
"A nearby Git commit may not be assigned as the training commit from file times.",
|
|
"The current container runtime may not be copied backwards as the historical training runtime.",
|
|
"The dataset quality contact sheet may not be represented as accepted human review.",
|
|
"A structurally valid runtime sidecar may not be generated with invented UUIDs or placeholder upstream checksums."
|
|
],
|
|
"actions": {
|
|
"runtime_sidecar_created": false,
|
|
"source_registry_rows_created": false,
|
|
"production_inference_executed": false,
|
|
"production_model_changed": false,
|
|
"candidate_quarantine_state": "not_active_and_not_exposed_by_production_catalog",
|
|
"active_model_sha256": "a9088b8491dfae36694b53e9e9406cb4e3511d334a5712fa34f75078a47759c1"
|
|
},
|
|
"decision": {
|
|
"migration_allowed": false,
|
|
"promotion_allowed": false,
|
|
"new_training_allowed": false,
|
|
"reason": "GeoIntel's execution contract explicitly forbids retroactively completing legacy RunManifest evidence. The current accuracy-program ledger also keeps training and promotion locked until P2-00 through P2-07 and the governed Phase-4 product gates pass.",
|
|
"safe_next_gate": "Complete P2-00 through P2-07, obtain representative human review, freeze a new independently split corpus, then train a new pre-registered GPU candidate with complete provenance from process start."
|
|
}
|
|
}
|