make(Kernel::class)->bootstrap(); portalQaAssertTarget($target); $proof = DB::transaction(function () use ($target) { DB::statement('SET TRANSACTION READ ONLY'); return ['target' => $target, 'code_hash' => app(PortalProfileInstallation::class)->fingerprint(), 'captured_at' => gmdate('c'), 'schema_installed' => DB::table('migrations')->where('migration', PortalProfileInstallation::MIGRATION)->exists(), 'users' => DB::table('users')->count(), 'grants' => DB::table('portal_role_assignments')->count(), 'pair_hash' => hash('sha256', json_encode(DB::table('portal_superuser_pair')->first(), JSON_THROW_ON_ERROR)), 'active_manifest_sha256' => hash_file('sha256', public_path('build/manifest.json')), 'active_writes' => 0]; }); file_put_contents(storage_path('app/private/investmoz-v2/portal-audit/profile-installation-status-qa.json'), json_encode($proof, JSON_PRETTY_PRINT | JSON_THROW_ON_ERROR)); echo json_encode($proof, JSON_THROW_ON_ERROR).PHP_EOL;