@@ -670,18 +670,32 @@ def read_runtime_inspection(
670670 "workbook_classification" ,
671671 "workbook_project_file" ,
672672 "workbook_runtime_path" ,
673+ "match_principal" ,
674+ "runtime_uid" ,
675+ "runtime_gid" ,
676+ "runtime_files" ,
673677 "topology" ,
674678 }
675679 if expected_notary_image is not None :
676680 expected_keys .add ("notary" )
677681 if not isinstance (runtime_manifest , dict ) or set (runtime_manifest ) != expected_keys :
678682 raise ReleaseFormError ("canonical runtime manifest fields are not closed" )
679683 if (
680- runtime_manifest .get ("schema_version" ) != "registryctl.local_runtime.v1 "
684+ runtime_manifest .get ("schema_version" ) != "registryctl.local_runtime.v2 "
681685 or runtime_manifest .get ("environment" ) != "local"
682686 or runtime_manifest .get ("relay_image" ) != expected_relay_image
683687 or runtime_manifest .get ("workbook_classification" )
684688 != "operator_owned_source_data"
689+ or not isinstance (runtime_manifest .get ("match_principal" ), str )
690+ or not runtime_manifest ["match_principal" ]
691+ or not isinstance (runtime_manifest .get ("runtime_uid" ), str )
692+ or not runtime_manifest ["runtime_uid" ].isdigit ()
693+ or runtime_manifest .get ("runtime_uid" ) == "0"
694+ or not isinstance (runtime_manifest .get ("runtime_gid" ), str )
695+ or not runtime_manifest ["runtime_gid" ].isdigit ()
696+ or runtime_manifest .get ("runtime_gid" ) == "0"
697+ or not isinstance (runtime_manifest .get ("runtime_files" ), dict )
698+ or not runtime_manifest ["runtime_files" ]
685699 or runtime_manifest .get ("topology" ) != expected_topology
686700 ):
687701 raise ReleaseFormError (
0 commit comments