<?php
declare(strict_types=1);
require __DIR__.'/contract.php';$db=smPdo();$pre=smLoad('preflight-private.json');$journal=smLoad('setup-intent-private.json');$ids=$journal['inserted_ids'];$counts=[];
foreach(HC_TABLES as $t){$where='id<>?';$args=[$ids[$t]];if($t==='initial_menu'){$where.=' AND menu_date=?';$args[]=$pre['seed']['date'];}$r=smRows($db,'SELECT COUNT(*) n FROM ydy_'.$t.' WHERE '.$where,$args);$counts[$t]=['before'=>$pre['before'][$t]['rows'],'now'=>(int)$r[0]['n']];}
$counts['initial_menu_global_count']=['before'=>$pre['before']['initial_menu_global_count'],'now'=>(int)$db->query('SELECT COUNT(*) FROM ydy_initial_menu')->fetchColumn()-1];
$after=hcSnapshot($db,$pre['seed'],$ids);$diff=[];foreach($after as $t=>$v){if($v!==$pre['before'][$t]){$diff[$t]=['before'=>$pre['before'][$t],'after'=>$v];}}
$own=hcOwnRows($db,$pre['seed'],$ids);$funds=true;foreach($own as $r){foreach($r as $f=>$v){if(preg_match('/money|balance|cash|subsidy|gift|price/',$f)&&$v!==null&&(!is_numeric($v)||bccomp((string)$v,'0',8)!==0)){$funds=false;}}}
smSave('snapshot-diagnostic-private.json',['counts'=>$counts,'diff'=>$diff,'own_rows'=>$own,'funds_zero'=>$funds,'dml'=>0]);echo json_encode(['counts'=>$counts,'diff'=>$diff,'owned_rows'=>count($own),'funds_zero'=>$funds,'dml'=>0]),PHP_EOL;
