$invoice){$ob=$host->table('sr_records')->where($f['scope'])->where(['invoice_id'=>$invoice,'kind'=>'obligation'])->value('id');$p=$sr->position($ob,$actor);$positions[$name]=array_intersect_key($p,array_flip(['original','reduced','received','allocated','available','balance']));} if($positions['credit']['balance']!=='500.00'||$positions['invoice_receipt']['balance']!=='0.00'||$host->table('sd_cancellations')->count()!==0)throw new LogicException('Presentation state changed'); $out=['passed'=>true,'positions'=>$positions,'committed_documents'=>$host->table('sd_outputs')->count(),'committed_cancellations'=>0,'journals'=>$native->table('gl_journals')->count(),'period_status'=>$native->table('gl_periods')->where('period_key','QA-2026-INTEGRADO')->orderByDesc('version')->value('status'),'read_only'=>true];file_put_contents($work.'/service-documents-status.json',json_encode($out,JSON_PRETTY_PRINT));echo json_encode(['passed'=>true,'positions'=>$positions,'proof'=>$work.'/service-documents-status.json']).PHP_EOL;