<?php
declare(strict_types=1);require __DIR__.'/bootstrap.php';require __DIR__.'/natural.php';$fixture=json_decode(file_get_contents($runtime.'/fixture-journal.json'),true);$final=$own();$n=$natural();$protection=$protect();$check($fixture['committed']&&$final===$fixture['after'],'All32 final original rows exact');$check($n===$fixture['natural_after']&&$protection===$fixture['before_protect'],'Natural projections/digests/prior default exact');$persist('final-original.json',['original'=>$final,'natural'=>$n,'protect'=>$protection]);$dir=$runtime.'/evidence';if(!is_dir($dir))mkdir($dir,0700);foreach(glob($runtime.'/*') as $file){$name=basename($file);if(preg_match('/^(fixture-journal|final-original|run-[A-Z]+|cases-[A-Z]+|equipment-schema-original|equipment-schema-fresh|ddl-rehearsal|ddl-apply)\.json$|^(private-wire|private-sql|queries)\.jsonl$|^source-original-EquipmentService\.php$/D',$name)){copy($file,$dir.'/'.$name);chmod($dir.'/'.$name,0600);}}$tokens=0;foreach(glob($runtime.'/run-*.json') as $file){$run=json_decode(file_get_contents($file),true);$check($run['all_own_tokens_absent'],'Each phase own tokens removed');$tokens+=$run['own_tokens'];}foreach(glob($runtime.'/native-*/*.json') as $file){$r=json_decode(file_get_contents($file),true);if(isset($r['run'])){$phase=substr(basename(dirname($file)),7);file_put_contents(__DIR__.'/native-'.$phase.'-'.$lane.'.json',json_encode(['stats'=>$r['run']['stats'],'failures'=>count($r['run']['failures']),'raw_result_sha256'=>hash_file('sha256',$file)],JSON_PRETTY_PRINT));}}$out=['lane'=>$lane,'final_all32_exact'=>true,'natural4_exact'=>naturalDigest($n),'old_default_scope_exact'=>true,'own_phase_tokens_absent'=>$tokens,'HTTP_DML'=>0,'preparation_INSERT'=>3,'preparation_UPDATE'=>0,'preparation_DELETE'=>0,'marked_equipment_dish_image_retained'=>3,'evidence'=>$dir,'files'=>array_map('basename',glob($dir.'/*'))];file_put_contents(__DIR__.'/audit-'.$lane.'.json',json_encode($out,JSON_PRETTY_PRINT));echo json_encode($out),"\n";
