<?php
require __DIR__.'/oracle.php';require __DIR__.'/fixture-oracle.php';$auditSource=$source;$state=$auditSource();require __DIR__.'/init.php';$logic=new \app\p\logic\SyllabusEvaluate();$size=(int)\think\Config::get('pagesize');$list=$logic->lists(['staff_uuid'=>$scope['staff_uuid']],1,$size,['id'=>'desc'],['uuid,staff_uuid,test_content,test_time,achievement,demo']);$info=$logic->info($state['rows'][0]['uuid']);
$save('private-projection-probe.json',['info'=>$info,'source'=>$state['rows'][0]]);$diff=[];foreach($state['rows'][0]as $key=>$value)if(($info['data'][$key]??null)!==$value)$diff[$key]=['source_type'=>gettype($value),'wire_type'=>gettype($info['data'][$key]??null),'source_sha256'=>$hash($value),'wire_sha256'=>$hash($info['data'][$key]??null)];
$checks=['list_all6_values_types_ext_count'=>$list===['code'=>0,'message'=>'查询成功','data'=>['rows'=>array_map($listProjection,$state['rows']),'content'=>$state['ext'][0]['content'],'total'=>2]],'info_all9_native_values_types'=>$info===['code'=>0,'message'=>'查询成功','data'=>$infoProjection($state['rows'][0])],'source_unchanged'=>$state===$auditSource(),'actor_unchanged'=>$actor===$actorNow()];$report=['lane'=>$lane,'passed'=>!in_array(false,$checks,true),'checks'=>$checks,'projection_diff'=>$diff];$save('private-own-runtime-gate.json',$report);echo json_encode($report),"\n";exit($report['passed']?0:2);
