| App\Domain\Contact\Service\CloudflareTurnstileVerifier::verify | 182 | 0.0% |
| App\Domain\Admin\Repository\AdminRepository::getAllTransactions | 156 | 0.0% |
| App\Console\InspectPandaDocTemplateCommand::execute | 132 | 0.0% |
| App\Console\SeedE2eUsersCommand::loadE2eEnvFile | 132 | 0.0% |
| App\Domain\Document\Data\PandaDocTemplateDetailsData::fromPandaDocResponse | 90 | 0.0% |
| App\Domain\SystemSettings\Service\SystemSettingsService::validateSetting | 90 | 0.0% |
| App\Action\Auth\ResetPasswordAction::__invoke | 72 | 0.0% |
| App\Domain\Document\Provided\Service\ProvidedDocumentService::describeUploadError | 72 | 0.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::describeUploadError | 72 | 0.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::projectInterest | 72 | 0.0% |
| App\Action\Admin\CreateAdminTransactionAction::__invoke | 56 | 0.0% |
| App\Domain\Document\Service\PandaDocService::makeRequest | 56 | 0.0% |
| App\Domain\Notification\Service\CurlHealthcheckClient::get | 56 | 0.0% |
| App\Domain\ErrorLog\Repository\ErrorLogRepository::findAll | 44.54 | 69.8% |
| App\Support\Row::bool | 44.30 | 30.0% |
| App\Action\SuperAdmin\ResolveErrorLogAction::__invoke | 42 | 0.0% |
| App\Action\SuperAdmin\UpdateSystemSettingAction::__invoke | 42 | 0.0% |
| App\Console\SeedE2eUsersCommand::execute | 42 | 0.0% |
| App\Domain\Document\Service\PandaDocService::listTemplates | 42 | 0.0% |
| App\Domain\Notification\Service\SmtpEmailService::send | 42 | 0.0% |
| App\Domain\Stripe\Service\StripeService::listPaymentMethods | 42 | 0.0% |
| App\Action\Admin\GetAdminTransactionsAction::__invoke | 30 | 0.0% |
| App\Action\Document\CreateRegistrationDocumentsAction::__invoke | 30 | 0.0% |
| App\Action\SuperAdmin\DeleteErrorLogsAction::__invoke | 30 | 0.0% |
| App\Action\SuperAdmin\DeleteUserAction::__invoke | 30 | 0.0% |
| App\Domain\Stripe\Service\StripeService::chargePaymentMethod | 30 | 0.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::accrueInterest | 30 | 0.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::uploadForInvestor | 24.28 | 65.5% |
| App\Domain\SuperAdmin\Service\SuperAdminService::generateMonthTransactions | 21.22 | 92.1% |
| App\Action\Document\CreateRegistrationDocumentsAction::sendWhenDraftReady | 20 | 0.0% |
| App\Action\Funding\UpdateFundingRequestStatusAction::__invoke | 20 | 0.0% |
| App\Action\Loan\DenyLoanAction::__invoke | 20 | 0.0% |
| App\Action\Loan\GetLoanAction::__invoke | 20 | 0.0% |
| App\Domain\Admin\Service\AdminService::getAllTransactions | 20 | 0.0% |
| App\Domain\Admin\Service\AdminService::getLendingActivity | 20 | 0.0% |
| App\Domain\Document\Service\PandaDocService::createDocumentFromTemplate | 20 | 0.0% |
| App\Domain\Document\Service\PandaDocService::downloadDocument | 20 | 0.0% |
| App\Domain\Stripe\Service\StripeService::createCustomer | 20 | 0.0% |
| App\Domain\SystemSettings\Service\SystemSettingsService::update | 20 | 0.0% |
| App\Domain\Transaction\Service\TransactionService::createTransaction | 19.41 | 83.7% |
| App\Middleware\ErrorLoggingMiddleware::determineLogLevel | 16.19 | 65.0% |
| App\Domain\Document\Provided\Service\ProvidedDocumentService::uploadForInvestor | 15.08 | 76.9% |
| App\Domain\Contact\Service\ContactService::submitPublic | 14.50 | 53.3% |
| App\Domain\SuperAdmin\Service\SuperAdminService::createTestUser | 14 | 98.3% |
| App\Domain\Disbursement\Service\DisbursementService::markDisbursed | 13.31 | 87.8% |
| App\Middleware\ErrorLoggingMiddleware::buildContext | 13.05 | 63.2% |
| App\Domain\Storage\Service\LocalFileStorage::writeStreamAtomic | 13.04 | 57.1% |
| App\Domain\Transaction\Service\TransactionFinder::findByAccountId | 13 | 100.0% |
| App\Domain\Funding\Service\FundingRequestService::notifyAdmins | 12.87 | 17.9% |
| App\Action\Funding\ListPendingFundingRequestsAction::__invoke | 12 | 0.0% |
| App\Action\Funding\SubmitFundingRequestAction::__invoke | 12 | 0.0% |
| App\Action\Loan\ApproveLoanAction::__invoke | 12 | 0.0% |
| App\Action\Loan\DeclineLoanAction::__invoke | 12 | 0.0% |
| App\Action\Loan\GetPendingLoansAction::__invoke | 12 | 0.0% |
| App\Action\Loan\RequestLoanAction::__invoke | 12 | 0.0% |
| App\Console\AccrueInterestCommand::execute | 12 | 0.0% |
| App\Console\ListPandaDocTemplatesCommand::execute | 12 | 0.0% |
| App\Console\SeedE2eUsersCommand::generateAccountNumber | 12 | 0.0% |
| App\Console\SeedE2eUsersCommand::requireEnv | 12 | 0.0% |
| App\Console\SendTestEmailCommand::execute | 12 | 0.0% |
| App\Console\SnapshotAccountBalancesCommand::execute | 12 | 0.0% |
| App\Domain\Auth\Repository\AuthRepository::findValidResetToken | 12 | 0.0% |
| App\Domain\Document\Data\PandaDocDocumentData::fromPandaDocResponse | 12 | 0.0% |
| App\Domain\Document\Repository\DocumentTemplateRepository::findActive | 12 | 0.0% |
| App\Domain\Document\Service\PandaDocService::parseStatusCode | 12 | 0.0% |
| App\Domain\Funding\Repository\FundingRequestRepository::findByInvestorId | 12 | 0.0% |
| App\Domain\Loan\Repository\LoanRepository::findApproved | 12 | 0.0% |
| App\Domain\Stripe\Service\StripeService::findCustomer | 12 | 0.0% |
| App\Domain\Stripe\Service\StripeService::parseWebhookEvent | 12 | 0.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::postMonthlyInterest | 12 | 0.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::generateTransactions | 12 | 98.0% |
| App\Domain\SystemSettings\Repository\SystemSettingsRepository::update | 12 | 0.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::deleteUser | 11.10 | 90.5% |
| App\Domain\Account\Service\AccountService::createAccountForInvestor | 11 | 96.2% |
| App\Action\Disbursement\GetDisbursementHistoryAction::__invoke | 10.71 | 80.8% |
| App\Domain\Funding\Service\FundingRequestService::submit | 10.55 | 82.4% |
| App\Domain\Funding\Service\FundingRequestService::updateStatus | 10.29 | 85.7% |
| App\Action\Notification\UpdateMyNotificationPreferencesAction::validatePreferences | 10.27 | 75.0% |
| App\Domain\Loan\Service\LoanService::makeAdditionalPayment | 10.21 | 87.2% |
| App\Support\AppUrlResolver::resolve | 10.02 | 94.1% |
| App\Domain\Admin\Repository\AdminRepository::getInvestorsList | 10 | 97.0% |
| App\Middleware\ErrorLoggingMiddleware::extractErrorCode | 9.19 | 86.7% |
| App\Domain\Auth\Service\RegistrationService::registerComplete | 9.09 | 89.6% |
| App\Domain\Auth\Service\AuthService::login | 9.02 | 94.3% |
| App\Domain\ErrorLog\Data\ErrorLogFilterData::__construct | 9 | 100.0% |
| App\Action\Consent\UpdateMyConsentsAction::validateConsents | 8.25 | 84.2% |
| App\Domain\Loan\Service\LoanService::approveLoan | 8.02 | 93.8% |
| App\Domain\Investor\Service\InvestorService::createInvestor | 8.01 | 94.4% |
| App\Domain\Transaction\Repository\TransactionRepository::findByAccountId | 8.01 | 94.4% |
| App\Domain\SuperAdmin\Service\SuperAdminService::generateBulkData | 8 | 98.1% |
| App\Support\Row::string | 7.91 | 37.5% |
| App\Domain\Document\Type\Data\DocumentTypeData::decodeMimeList | 7.39 | 80.0% |
| App\Domain\Investor\Service\InvestorService::updateKycStatus | 7.05 | 90.0% |
| App\Action\Consent\UpdateMyConsentsAction::__invoke | 7.03 | 91.7% |
| App\Domain\ErrorLog\Repository\ErrorLogRepository::findById | 7.02 | 92.9% |
| App\Domain\Loan\Service\LoanService::requestLoan | 7.01 | 93.8% |
| App\Domain\SuperAdmin\Service\SuperAdminService::classifyStatus | 7.01 | 93.8% |
| App\Action\Admin\ImpersonateUserAction::__invoke | 7 | 100.0% |
| App\Domain\Auth\Service\RegistrationService::extractConsents | 7 | 100.0% |
| App\Domain\Storage\Service\LocalFileStorage::resolveKey | 7 | 100.0% |
| App\Action\Auth\RegisterAction::getClientIp | 6.92 | 70.6% |
| App\Middleware\JwtAuthMiddleware::getClientIp | 6.92 | 70.6% |
| App\Domain\Auth\Service\EmailChangeService::confirmChange | 6.42 | 77.3% |
| App\Domain\Contact\Service\ContactService::submit | 6.42 | 77.3% |
| App\Middleware\ErrorLoggingMiddleware::getClientIp | 6.32 | 62.5% |
| App\Support\Row::float | 6.32 | 62.5% |
| App\Domain\Investor\Service\InvestorService::updateInvestor | 6.29 | 80.0% |
| App\Domain\Audit\AuditService::setContext | 6.24 | 81.2% |
| App\Action\Document\DownloadDocumentAction::getOwnedDocumentName | 6.13 | 84.6% |
| App\Domain\Stripe\Service\InvestorStripeService::chargeLoanPayment | 6.04 | 90.0% |
| App\Action\Admin\SendInvestorPasswordResetAction::requireAdmin | 6.02 | 91.7% |
| App\Action\Admin\SetInvestorPasswordAction::requireAdmin | 6.02 | 91.7% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::acceptForAdmin | 6.02 | 91.3% |
| App\Domain\Auth\Service\EmailChangeService::requestChange | 6.01 | 93.3% |
| App\Domain\Loan\Service\LoanService::makePayment | 6.01 | 93.0% |
| App\Action\Account\UpdateAccountStatusAction::__invoke | 6 | 100.0% |
| App\Action\Admin\GetAdminInvestorLoansAction::__invoke | 6 | 0.0% |
| App\Action\Auth\ChangePasswordAction::__invoke | 6 | 100.0% |
| App\Action\Disbursement\MarkDisbursedAction::__invoke | 6 | 100.0% |
| App\Action\Document\CreateRegistrationDocumentsAction::createAndSendDocument | 6 | 0.0% |
| App\Action\Document\CreateRegistrationDocumentsAction::saveDocument | 6 | 0.0% |
| App\Action\Document\CreateRegistrationDocumentsAction::updateDocumentStatus | 6 | 0.0% |
| App\Action\Home\VersionAction::__invoke | 6 | 0.0% |
| App\Action\Loan\MakeAdditionalPaymentAction::__invoke | 6 | 0.0% |
| App\Action\Notification\GetMyEmailsAction::__invoke | 6 | 0.0% |
| App\Action\SuperAdmin\GetErrorLogAction::__invoke | 6 | 0.0% |
| App\Action\SuperAdmin\ProjectInterestAction::__invoke | 6 | 0.0% |
| App\Console\PostMonthlyInterestCommand::execute | 6 | 0.0% |
| App\Console\SeedE2eUsersCommand::seedInvestor | 6 | 0.0% |
| App\Console\SeedE2eUsersCommand::resetPendingLoans | 6 | 0.0% |
| App\Domain\Auth\Repository\AuthRepository::markResetTokenUsed | 6 | 0.0% |
| App\Domain\Auth\Service\AuthService::refreshToken | 6 | 100.0% |
| App\Domain\Auth\Service\AuthService::validatePassword | 6 | 100.0% |
| App\Domain\Auth\Service\RegistrationService::validatePassword | 6 | 100.0% |
| App\Domain\Consent\Service\ConsentService::getCurrentForUser | 6 | 100.0% |
| App\Domain\Document\Data\PandaDocSigningSessionData::fromPandaDocResponse | 6 | 0.0% |
| App\Domain\Document\Data\PandaDocTemplateFieldData::fromPandaDocResponse | 6 | 0.0% |
| App\Domain\Document\Service\InvestorAgreementService::listForInvestor | 6 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::sanitize | 6 | 100.0% |
| App\Domain\Storage\Service\LocalFileStorage::ensureDirectory | 6.00 | 50.0% |
| App\Domain\Stripe\Repository\StripeWebhookRepository::markProcessed | 6 | 0.0% |
| App\Domain\Stripe\Repository\StripeWebhookRepository::markFailed | 6 | 0.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::accrueDailyInterest | 6 | 0.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::snapshotDailyAccountBalance | 6 | 0.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::getActiveAccountsWithBalances | 6 | 0.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::deleteUser | 6 | 0.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::postInterest | 6 | 0.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::guardNonProduction | 6 | 0.0% |
| App\Domain\SystemSettings\Service\SystemSettingsService::updateLogLevelThreshold | 6 | 0.0% |
| App\Middleware\ResourceOwnershipMiddleware::process | 6 | 100.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::rejectForAdmin | 5.55 | 72.0% |
| App\Domain\Auth\Service\RegistrationService::validateRequiredString | 5.26 | 57.1% |
| App\Domain\Funding\Service\FundingRequestService::assertWithdrawable | 5.16 | 81.2% |
| App\Domain\SuperAdmin\Service\SuperAdminService::generateTransactionDescription | 5.12 | 83.3% |
| App\Domain\Audit\AuditService::logAccountStatusChange | 5.05 | 87.5% |
| App\Domain\Investor\Service\InvestorService::updateInvestorStatus | 5.05 | 87.5% |
| App\Domain\Investor\Repository\InvestorRepository::getStripeCustomerId | 5.03 | 90.0% |
| App\Domain\Account\Service\AccountService::closeAccount | 5.02 | 90.9% |
| App\Domain\Auth\Service\PasswordService::validateStrength | 5.02 | 90.9% |
| App\Domain\Disbursement\Service\DisbursementService::listHistory | 5.02 | 60.0% |
| App\Domain\Document\Repository\InvestorAgreementRepository::findOwnedDocumentName | 5.02 | 90.9% |
| App\Action\SuperAdmin\GenerateTransactionsAction::__invoke | 5.01 | 93.8% |
| App\Domain\Auth\Repository\AuthRepository::isAccountLocked | 5.01 | 94.1% |
| App\Domain\Notification\Repository\SentEmailRepository::record | 5.01 | 93.3% |
| App\Action\Admin\UpdateConfigurationAction::__invoke | 5 | 100.0% |
| App\Domain\Audit\AuditService::log | 5 | 95.2% |
| App\Domain\Audit\AuditService::getRecentActivity | 5.00 | 94.4% |
| App\Domain\Auth\Service\AuthService::getCurrentUser | 5 | 100.0% |
| App\Domain\Auth\Service\AuthService::validateUsername | 5 | 100.0% |
| App\Domain\Auth\Service\RegistrationService::validateUsername | 5 | 100.0% |
| App\Domain\Auth\Service\RegistrationService::validateDateOfBirth | 5 | 100.0% |
| App\Domain\Consent\Service\ConsentService::applyDecisions | 5 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::log | 5 | 100.0% |
| App\Domain\Investor\Repository\InvestorRepository::updateInvestor | 5 | 96.6% |
| App\Domain\Investor\Service\InvestorService::validateRequiredFields | 5 | 100.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::countTestData | 5.00 | 94.4% |
| App\Domain\SuperAdmin\Service\SuperAdminService::updateUserRole | 5 | 100.0% |
| App\Domain\Auth\Service\RegistrationService::validateOptionalString | 4.94 | 40.0% |
| App\Support\Row::int | 4.84 | 62.5% |
| App\Domain\Auth\Service\EmailChangeService::validateEmail | 4.59 | 66.7% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::generateUniqueAccountNumber | 4.47 | 69.2% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::findByInvestorId | 4.43 | 70.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::getCurrentFileForAdmin | 4.37 | 71.4% |
| App\Domain\Funding\Service\FundingRequestService::recordApprovedTransaction | 4.34 | 72.2% |
| App\Domain\SystemSettings\Data\SystemSettingData::__construct | 4.20 | 76.9% |
| App\Domain\Auth\Service\EmailChangeService::assertEmailAvailable | 4.13 | 80.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::withTransaction | 4.12 | 50.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::replayAccountHistory | 4.11 | 81.2% |
| App\Domain\Auth\Service\RegistrationService::generateAccountNumber | 4.10 | 81.8% |
| App\Domain\Contact\Service\ContactService::dispatchAdminEmail | 4.06 | 84.8% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::getCurrentFileForInvestor | 4.05 | 85.7% |
| App\Domain\Storage\Service\LocalFileStorage::retrieve | 4.05 | 85.7% |
| App\Domain\Stripe\Service\InvestorStripeService::assertInvestorOwnsPaymentMethod | 4.03 | 87.5% |
| App\Domain\Account\Service\AccountService::updateInterestRate | 4.02 | 88.9% |
| App\Domain\Account\Service\AccountService::updateLoanToValueRatio | 4.02 | 88.9% |
| App\Domain\Document\Provided\Repository\ProvidedDocumentRepository::findByInvestorId | 4.02 | 90.0% |
| App\Domain\Document\Provided\Service\ProvidedDocumentService::hashStream | 4.02 | 88.9% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::findPending | 4.02 | 90.0% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::findByInvestorIdForAdmin | 4.02 | 90.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::hashStream | 4.02 | 88.9% |
| App\Domain\Account\Service\AccountService::activateAccount | 4.01 | 92.9% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::findEventsForDocument | 4.01 | 91.7% |
| App\Domain\Document\Type\Repository\DocumentTypeRepository::findActive | 4.01 | 90.9% |
| App\Domain\Loan\Repository\LoanRepository::recordPayment | 4.01 | 90.3% |
| App\Domain\Loan\Service\LoanService::declineLoan | 4.01 | 92.3% |
| App\Middleware\ErrorLoggingMiddleware::logException | 4.01 | 92.3% |
| App\Action\Account\GetAccountTransactionsAction::__invoke | 4 | 100.0% |
| App\Action\Auth\ForgotPasswordAction::__invoke | 4 | 100.0% |
| App\Action\Document\Submission\UploadDocumentAction::__invoke | 4 | 95.8% |
| App\Action\Notification\UpdateMyNotificationPreferencesAction::__invoke | 4.00 | 93.8% |
| App\Domain\Admin\Service\AdminService::getInvestorsList | 4 | 100.0% |
| App\Domain\Audit\AuditService::logKycStatusChange | 4.00 | 93.3% |
| App\Domain\Auth\Service\AdminPasswordService::resolveCustomer | 4 | 100.0% |
| App\Domain\Auth\Service\AuthService::register | 4.00 | 94.7% |
| App\Domain\Auth\Service\AuthService::validateEmail | 4 | 100.0% |
| App\Domain\Auth\Service\RegistrationService::validateEmail | 4 | 100.0% |
| App\Domain\Document\Provided\Service\ProvidedDocumentService::sniffMime | 4 | 100.0% |
| App\Domain\Document\Service\PandaDocFieldMapper::map | 4 | 100.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::persist | 4 | 100.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::sniffMime | 4 | 100.0% |
| App\Domain\ErrorLog\Repository\ErrorLogRepository::insert | 4 | 95.2% |
| App\Domain\Notification\Service\NotificationDispatcher::dispatch | 4 | 100.0% |
| App\Domain\Notification\Service\NotificationDispatcher::resolveRecipients | 4 | 100.0% |
| App\Domain\Notification\Service\NotificationPreferenceService::updatePreferences | 4 | 100.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::getCronJobLastRunSummaries | 4 | 100.0% |
| App\Middleware\ExceptionMiddleware::process | 4 | 95.8% |
| App\Middleware\ExceptionMiddleware::getHttpStatusCode | 4 | 100.0% |
| App\Middleware\ExceptionMiddleware::getErrorLabel | 4 | 100.0% |
| App\Middleware\JwtAuthMiddleware::process | 4 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::generateUniqueAccountNumber | 3.79 | 55.6% |
| App\Domain\Document\Provided\Service\ProvidedDocumentService::delete | 3.33 | 66.7% |
| App\Domain\SuperAdmin\Service\SuperAdminService::pickWithdrawalAmount | 3.14 | 75.0% |
| App\Domain\Admin\Repository\AdminRepository::getStats | 3.10 | 77.8% |
| App\Action\Contact\SubmitPublicContactAction::clientIp | 3.07 | 80.0% |
| App\Domain\Configuration\ConfigKeyPolicy::canRoleEdit | 3.07 | 80.0% |
| App\Domain\Loan\Repository\LoanRepository::checkEligibility | 3.07 | 80.0% |
| App\Domain\Loan\Repository\LoanRepository::getConfigBool | 3.07 | 80.0% |
| App\Domain\Storage\Service\LocalFileStorage::delete | 3.07 | 80.0% |
| App\Action\Auth\RegisterAction::validateCompleteRegistrationInput | 3.04 | 84.2% |
| App\Domain\Account\Repository\AccountRepository::getTotalAccounts | 3.04 | 83.3% |
| App\Domain\Account\Repository\AccountRepository::getTotalBalance | 3.04 | 83.3% |
| App\Action\Document\Admin\DownloadInvestorAgreementAction::makeAttachmentFilename | 3.03 | 85.7% |
| App\Action\Document\DownloadDocumentAction::makeAttachmentFilename | 3.03 | 85.7% |
| App\Domain\Account\Service\AccountService::freezeAccount | 3.03 | 85.7% |
| App\Domain\Account\Service\AccountService::unfreezeAccount | 3.03 | 85.7% |
| App\Domain\Document\Provided\Repository\ProvidedDocumentRepository::findById | 3.03 | 85.7% |
| App\Domain\Document\Provided\Repository\ProvidedDocumentRepository::findByIdForInvestor | 3.03 | 85.7% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::findByIdForAdmin | 3.03 | 85.7% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::findByIdForInvestor | 3.03 | 85.7% |
| App\Action\SuperAdmin\ListUsersAction::__invoke | 3.02 | 87.5% |
| App\Domain\Admin\Repository\AdminRepository::getInvestorDetail | 3.02 | 87.5% |
| App\Domain\Auth\Repository\AuthRepository::getPasswordHash | 3.02 | 87.5% |
| App\Domain\Document\Type\Repository\DocumentTypeRepository::findById | 3.02 | 87.5% |
| App\Domain\ErrorLog\Repository\ErrorLogRepository::deleteByIds | 3.02 | 87.5% |
| App\Domain\Investor\Repository\InvestorRepository::findInvestorById | 3.02 | 87.5% |
| App\Domain\Investor\Repository\InvestorRepository::findInvestorByEmail | 3.02 | 87.5% |
| App\Domain\Investor\Repository\InvestorRepository::findInvestorByUserId | 3.02 | 87.5% |
| App\Domain\Loan\Repository\LoanRepository::findById | 3.02 | 87.5% |
| App\Domain\Loan\Repository\LoanRepository::getInvestorAccountId | 3.02 | 87.5% |
| App\Domain\Loan\Repository\LoanRepository::getNextUnpaidScheduleEntry | 3.02 | 87.5% |
| App\Domain\Notification\Repository\SentEmailRepository::resolveInvestorId | 3.02 | 87.5% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::getAccountYieldRate | 3.02 | 87.5% |
| App\Domain\Transaction\Repository\TransactionRepository::create | 3.02 | 87.5% |
| App\Domain\Transaction\Repository\TransactionRepository::getAccountStatus | 3.02 | 87.5% |
| App\Domain\Transaction\Repository\TransactionRepository::getAccountAvailableBalance | 3.02 | 87.5% |
| App\Action\Investor\UpdateInvestorStatusAction::__invoke | 3.01 | 88.9% |
| App\Action\Investor\UpdateKycStatusAction::__invoke | 3.01 | 88.9% |
| App\Action\SuperAdmin\DeleteTestDataAction::__invoke | 3.01 | 90.0% |
| App\Action\SuperAdmin\GetAccountsForSuperAdminAction::__invoke | 3.01 | 91.7% |
| App\Action\SuperAdmin\UpdateUserRoleAction::__invoke | 3.01 | 91.7% |
| App\Domain\Admin\Repository\AdminRepository::getAumHistory | 3.01 | 88.9% |
| App\Domain\Admin\Repository\AdminRepository::getLendingActivity | 3.01 | 89.5% |
| App\Domain\Audit\AuditService::getUserActivity | 3.01 | 91.7% |
| App\Domain\Auth\Repository\AuthRepository::findUserByEmail | 3.01 | 88.9% |
| App\Domain\Auth\Repository\AuthRepository::findUserByUsername | 3.01 | 88.9% |
| App\Domain\Auth\Repository\AuthRepository::findUserByInvestorId | 3.01 | 88.9% |
| App\Domain\Auth\Repository\AuthRepository::findUserById | 3.01 | 88.9% |
| App\Domain\Auth\Repository\AuthRepository::findSessionByRefreshToken | 3.01 | 88.9% |
| App\Domain\Disbursement\Repository\DisbursementRepository::findById | 3.01 | 88.9% |
| App\Domain\Disbursement\Repository\DisbursementRepository::listPending | 3.01 | 88.9% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::findOneByInvestorAndType | 3.01 | 90.0% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::findCurrentFileEvent | 3.01 | 88.9% |
| App\Domain\ErrorLog\Repository\ErrorLogRepository::resolve | 3.01 | 90.0% |
| App\Domain\ErrorLog\Repository\ErrorLogRepository::getCountsByLevel | 3.01 | 90.0% |
| App\Domain\Funding\Repository\FundingRequestRepository::create | 3.01 | 88.2% |
| App\Domain\Funding\Repository\FundingRequestRepository::listPending | 3.01 | 90.0% |
| App\Domain\Funding\Repository\FundingRequestRepository::findById | 3.01 | 88.9% |
| App\Domain\Investor\Repository\InvestorRepository::updateKycStatus | 3.01 | 91.7% |
| App\Domain\Investor\Repository\InvestorRepository::updateInvestorStatus | 3.01 | 91.7% |
| App\Domain\Loan\Repository\LoanRepository::findByInvestorId | 3.01 | 90.0% |
| App\Domain\Loan\Repository\LoanRepository::findActive | 3.01 | 88.9% |
| App\Domain\Loan\Repository\LoanRepository::getConfig | 3.01 | 88.9% |
| App\Domain\Loan\Repository\LoanRepository::getPaymentSchedule | 3.01 | 90.0% |
| App\Domain\Loan\Repository\LoanRepository::findPending | 3.01 | 88.9% |
| App\Domain\Notification\Repository\SentEmailRepository::findByInvestorId | 3.01 | 90.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::getAccountById | 3.01 | 88.9% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::getAllAccountsWithInvestors | 3.01 | 90.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::getAllUsers | 3.01 | 90.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::getUserById | 3.01 | 88.9% |
| App\Domain\SystemSettings\Repository\SystemSettingsRepository::findAll | 3.01 | 90.0% |
| App\Domain\SystemSettings\Repository\SystemSettingsRepository::findByKey | 3.01 | 88.9% |
| App\Domain\Transaction\Repository\TransactionRepository::findById | 3.01 | 88.9% |
| App\Domain\Transaction\Repository\TransactionRepository::getLockedInvestmentBalance | 3.01 | 90.9% |
| App\Action\Admin\GetConfigurationAction::__invoke | 3 | 100.0% |
| App\Action\Admin\GetCronJobStatusesAction::__invoke | 3 | 100.0% |
| App\Action\Admin\SetInvestorPasswordAction::__invoke | 3 | 100.0% |
| App\Action\Auth\LoginAction::validateInput | 3 | 100.0% |
| App\Action\Auth\LogoutAction::__invoke | 3 | 100.0% |
| App\Action\Auth\RefreshTokenAction::__invoke | 3 | 100.0% |
| App\Action\Auth\RegisterAction::validateSimpleRegistrationInput | 3 | 100.0% |
| App\Action\Disbursement\ListPendingDisbursementsAction::__invoke | 3 | 100.0% |
| App\Action\SuperAdmin\CreateTestUserAction::__invoke | 3.00 | 94.7% |
| App\Action\SuperAdmin\GenerateBulkDataAction::__invoke | 3.00 | 94.1% |
| App\Domain\Account\Service\AccountService::getAccount | 3 | 100.0% |
| App\Domain\Account\Service\AccountService::getAccountByInvestorId | 3 | 100.0% |
| App\Domain\Audit\AuditService::logConsent | 3 | 100.0% |
| App\Domain\Audit\AuditService::getRecordHistory | 3.00 | 92.3% |
| App\Domain\Auth\Repository\AuthRepository::findValidEmailChangeToken | 3.00 | 93.3% |
| App\Domain\Auth\Service\RegistrationService::validatePhone | 3 | 100.0% |
| App\Domain\Auth\Service\RegistrationService::validateState | 3 | 100.0% |
| App\Domain\Auth\Service\RegistrationService::validateZipCode | 3 | 100.0% |
| App\Domain\Disbursement\Repository\DisbursementRepository::listHistory | 3.00 | 92.3% |
| App\Domain\Disbursement\Service\DisbursementService::enqueue | 3 | 100.0% |
| App\Domain\Document\Repository\InvestorAgreementRepository::findByInvestorId | 3.00 | 94.4% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::listSelect | 3 | 100.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::discardForInvestor | 3.00 | 94.1% |
| App\Domain\Investor\Service\InvestorService::getInvestorByUserId | 3 | 100.0% |
| App\Domain\Investor\Service\InvestorService::validateAge | 3 | 100.0% |
| App\Domain\Loan\Repository\LoanRepository::getLoanConfig | 3.00 | 93.3% |
| App\Domain\Loan\Service\LoanService::acceptLoan | 3 | 100.0% |
| App\Domain\Loan\Service\LoanService::denyLoan | 3 | 100.0% |
| App\Domain\Notification\Service\NotificationPreferenceService::getPreferencesForUser | 3 | 100.0% |
| App\Domain\Storage\Service\LocalFileStorage::sanitiseExtension | 3 | 100.0% |
| App\Domain\Stripe\Service\InvestorStripeService::ensureCustomerExists | 3 | 100.0% |
| App\Middleware\RoleMiddleware::process | 3 | 100.0% |
| App\Support\Row::nullableInt | 3 | 100.0% |
| App\Support\Row::nullableString | 3 | 100.0% |
| App\Support\Row::nullableFloat | 3 | 100.0% |
| App\Support\Row::nullableBool | 3 | 100.0% |
| App\Support\Row::nullableArray | 3 | 100.0% |
| App\Support\Row::from | 2.86 | 40.0% |
| App\Support\Row::array | 2.50 | 50.0% |
| App\Domain\Document\Provided\Service\ProvidedDocumentService::extractExtension | 2.15 | 66.7% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::extractExtension | 2.15 | 66.7% |
| App\Support\Row::require | 2.15 | 66.7% |
| App\Domain\Auth\Service\EmailChangeService::notifyOldAddress | 2.08 | 73.3% |
| App\Domain\Consent\Data\ConsentCopy::current | 2.06 | 75.0% |
| App\Domain\Document\Provided\Service\ProvidedDocumentService::getForAdmin | 2.06 | 75.0% |
| App\Domain\ErrorLog\Repository\ErrorLogRepository::getUnresolvedCount | 2.06 | 75.0% |
| App\Domain\Loan\Repository\LoanRepository::generatePaymentSchedule | 2.06 | 75.0% |
| App\Domain\Loan\Repository\LoanRepository::reamortizeLoan | 2.06 | 75.0% |
| App\Domain\Auth\Service\RegistrationService::investorEmailExists | 2.03 | 80.0% |
| App\Domain\Disbursement\Repository\DisbursementRepository::countByStatus | 2.03 | 80.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::getForAdmin | 2.03 | 80.0% |
| App\Domain\Funding\Repository\FundingRequestRepository::countByStatus | 2.03 | 80.0% |
| App\Domain\Loan\Repository\LoanRepository::acceptLoan | 2.03 | 80.0% |
| App\Domain\Loan\Repository\LoanRepository::declineLoan | 2.03 | 80.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::pickFeeAmount | 2.03 | 80.0% |
| App\Domain\Auth\Repository\AuthRepository::updatePassword | 2.02 | 83.3% |
| App\Domain\Auth\Repository\AuthRepository::updateUserEmail | 2.02 | 83.3% |
| App\Domain\Auth\Repository\AuthRepository::markEmailChangeTokenUsed | 2.02 | 83.3% |
| App\Domain\Document\Provided\Repository\ProvidedDocumentRepository::delete | 2.02 | 83.3% |
| App\Domain\Document\Repository\InvestorAgreementRepository::updateStatus | 2.02 | 83.3% |
| App\Domain\Investor\Repository\InvestorRepository::updateEmailById | 2.02 | 83.3% |
| App\Domain\Loan\Repository\LoanRepository::updateLoanConfig | 2.02 | 83.3% |
| App\Domain\Loan\Repository\LoanRepository::markActive | 2.02 | 83.3% |
| App\Domain\Loan\Repository\LoanRepository::markRemainingScheduleEntriesPaid | 2.02 | 83.3% |
| App\Action\Admin\ImpersonateUserAction::logImpersonation | 2.01 | 88.9% |
| App\Action\Consent\GetMyConsentsAction::__invoke | 2.01 | 85.7% |
| App\Action\Document\GetDocumentsAction::__invoke | 2.01 | 87.5% |
| App\Action\Document\Provided\DownloadMyProvidedDocumentAction::__invoke | 2.01 | 85.7% |
| App\Action\Notification\GetMyNotificationPreferencesAction::__invoke | 2.01 | 87.5% |
| App\Domain\Account\Service\AccountService::getAccountSummary | 2.01 | 87.5% |
| App\Domain\Auth\Repository\AuthRepository::emailExists | 2.01 | 85.7% |
| App\Domain\Auth\Repository\AuthRepository::usernameExists | 2.01 | 85.7% |
| App\Domain\Auth\Repository\AuthRepository::revokeRefreshToken | 2.01 | 85.7% |
| App\Domain\Auth\Repository\AuthRepository::revokeAllUserTokens | 2.01 | 85.7% |
| App\Domain\Auth\Repository\AuthRepository::cleanupExpiredTokens | 2.01 | 85.7% |
| App\Domain\Auth\Repository\AuthRepository::updateLastLogin | 2.01 | 85.7% |
| App\Domain\Auth\Repository\AuthRepository::incrementFailedLoginAttempts | 2.01 | 85.7% |
| App\Domain\Auth\Repository\AuthRepository::invalidateResetTokensForUser | 2.01 | 87.5% |
| App\Domain\Auth\Repository\AuthRepository::isEmailTakenByAnotherUser | 2.01 | 85.7% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::updateStatus | 2.01 | 85.7% |
| App\Domain\Investor\Repository\InvestorRepository::emailExists | 2.01 | 85.7% |
| App\Domain\Investor\Repository\InvestorRepository::isEmailTakenByAnotherInvestor | 2.01 | 85.7% |
| App\Domain\Loan\Repository\LoanRepository::investorHasBlockingLoan | 2.01 | 85.7% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::getAccountBalance | 2.01 | 85.7% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::emailExistsInUsers | 2.01 | 85.7% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::emailExistsInInvestors | 2.01 | 85.7% |
| App\Domain\SystemSettings\Repository\SystemSettingsRepository::getLogLevelThreshold | 2.01 | 85.7% |
| App\Domain\Transaction\Repository\TransactionRepository::accountExists | 2.01 | 85.7% |
| App\Action\Account\GetAccountBalanceHistoryAction::__invoke | 2 | 100.0% |
| App\Action\Admin\CreateAdminTransactionAction::__construct | 2 | 0.0% |
| App\Action\Admin\CreateInvestorAccountAction::__construct | 2 | 0.0% |
| App\Action\Admin\CreateInvestorAccountAction::__invoke | 2 | 0.0% |
| App\Action\Admin\GetAdminInvestorDetailAction::__invoke | 2 | 100.0% |
| App\Action\Admin\GetAdminInvestorLoansAction::__construct | 2 | 0.0% |
| App\Action\Admin\GetAdminTransactionsAction::__construct | 2 | 0.0% |
| App\Action\Admin\GetAumHistoryAction::__construct | 2 | 0.0% |
| App\Action\Admin\GetAumHistoryAction::__invoke | 2 | 0.0% |
| App\Action\Admin\GetLendingActivityAction::__construct | 2 | 0.0% |
| App\Action\Admin\GetLendingActivityAction::__invoke | 2 | 0.0% |
| App\Action\Admin\SendInvestorPasswordResetAction::__invoke | 2.00 | 90.0% |
| App\Action\Auth\GetCurrentUserAction::__invoke | 2.00 | 93.3% |
| App\Action\Auth\RegisterAction::__invoke | 2 | 100.0% |
| App\Action\Auth\RegisterAction::isCompleteRegistration | 2 | 100.0% |
| App\Action\Auth\RegisterAction::handleCompleteRegistration | 2 | 100.0% |
| App\Action\Auth\ResetPasswordAction::__construct | 2 | 0.0% |
| App\Action\Contact\SubmitPublicContactAction::__invoke | 2 | 100.0% |
| App\Action\Document\Admin\DownloadInvestorAgreementAction::__invoke | 2 | 100.0% |
| App\Action\Document\CreateRegistrationDocumentsAction::__construct | 2 | 0.0% |
| App\Action\Document\Provided\Admin\UploadProvidedDocumentAction::__invoke | 2 | 100.0% |
| App\Action\Document\Provided\ListMyProvidedDocumentsAction::__invoke | 2.00 | 90.0% |
| App\Action\Document\Submission\Admin\DownloadUploadAction::sanitiseAttachmentFilename | 2 | 100.0% |
| App\Action\Document\Submission\Admin\RejectUploadAction::__invoke | 2 | 100.0% |
| App\Action\Document\Submission\DiscardUploadAction::__invoke | 2.00 | 90.9% |
| App\Action\Document\Submission\DownloadMyUploadAction::__invoke | 2.00 | 93.3% |
| App\Action\Document\Submission\DownloadMyUploadAction::sanitiseAttachmentFilename | 2 | 100.0% |
| App\Action\Document\Submission\ListMyUploadsAction::__invoke | 2.00 | 90.0% |
| App\Action\Funding\ListPendingFundingRequestsAction::__construct | 2 | 0.0% |
| App\Action\Funding\SubmitFundingRequestAction::__construct | 2 | 0.0% |
| App\Action\Funding\UpdateFundingRequestStatusAction::__construct | 2 | 0.0% |
| App\Action\Home\VersionAction::__construct | 2 | 0.0% |
| App\Action\Investor\GetInvestorAction::__invoke | 2 | 96.0% |
| App\Action\Investor\GetInvestorByUserIdAction::__invoke | 2 | 100.0% |
| App\Action\Loan\AcceptLoanAction::__construct | 2 | 0.0% |
| App\Action\Loan\AcceptLoanAction::__invoke | 2 | 0.0% |
| App\Action\Loan\ApproveLoanAction::__construct | 2 | 0.0% |
| App\Action\Loan\DeclineLoanAction::__construct | 2 | 0.0% |
| App\Action\Loan\DenyLoanAction::__construct | 2 | 0.0% |
| App\Action\Loan\GetActiveLoansAction::__construct | 2 | 0.0% |
| App\Action\Loan\GetActiveLoansAction::__invoke | 2 | 0.0% |
| App\Action\Loan\GetApprovedLoansAction::__construct | 2 | 0.0% |
| App\Action\Loan\GetApprovedLoansAction::__invoke | 2 | 0.0% |
| App\Action\Loan\GetLoanAction::__construct | 2 | 0.0% |
| App\Action\Loan\GetMyLoansAction::__construct | 2 | 0.0% |
| App\Action\Loan\GetMyLoansAction::__invoke | 2 | 0.0% |
| App\Action\Loan\GetPendingLoansAction::__construct | 2 | 0.0% |
| App\Action\Loan\MakeAdditionalPaymentAction::__construct | 2 | 0.0% |
| App\Action\Loan\MakePaymentAction::__construct | 2 | 0.0% |
| App\Action\Loan\MakePaymentAction::__invoke | 2 | 0.0% |
| App\Action\Loan\RequestLoanAction::__construct | 2 | 0.0% |
| App\Action\Notification\GetMyEmailsAction::__construct | 2 | 0.0% |
| App\Action\SuperAdmin\AccrueInterestAction::__construct | 2 | 0.0% |
| App\Action\SuperAdmin\AccrueInterestAction::__invoke | 2 | 0.0% |
| App\Action\SuperAdmin\DeleteErrorLogsAction::__construct | 2 | 0.0% |
| App\Action\SuperAdmin\DeleteUserAction::__construct | 2 | 0.0% |
| App\Action\SuperAdmin\GetErrorLogAction::__construct | 2 | 0.0% |
| App\Action\SuperAdmin\PostInterestAction::__construct | 2 | 0.0% |
| App\Action\SuperAdmin\PostInterestAction::__invoke | 2 | 0.0% |
| App\Action\SuperAdmin\ProjectInterestAction::__construct | 2 | 0.0% |
| App\Action\SuperAdmin\ResolveErrorLogAction::__construct | 2 | 0.0% |
| App\Action\SuperAdmin\UpdateSystemSettingAction::__construct | 2 | 0.0% |
| App\Console\AccrueInterestCommand::__construct | 2 | 0.0% |
| App\Console\AccrueInterestCommand::configure | 2 | 0.0% |
| App\Console\InspectPandaDocTemplateCommand::__construct | 2 | 0.0% |
| App\Console\InspectPandaDocTemplateCommand::configure | 2 | 0.0% |
| App\Console\ListPandaDocTemplatesCommand::__construct | 2 | 0.0% |
| App\Console\ListPandaDocTemplatesCommand::configure | 2 | 0.0% |
| App\Console\PostMonthlyInterestCommand::__construct | 2 | 0.0% |
| App\Console\PostMonthlyInterestCommand::configure | 2 | 0.0% |
| App\Console\SeedE2eUsersCommand::__construct | 2 | 0.0% |
| App\Console\SeedE2eUsersCommand::configure | 2 | 0.0% |
| App\Console\SeedE2eUsersCommand::seedStaffUser | 2 | 0.0% |
| App\Console\SendTestEmailCommand::__construct | 2 | 0.0% |
| App\Console\SendTestEmailCommand::configure | 2 | 0.0% |
| App\Console\SnapshotAccountBalancesCommand::__construct | 2 | 0.0% |
| App\Console\SnapshotAccountBalancesCommand::configure | 2 | 0.0% |
| App\Domain\Account\Data\AccountSummaryData::jsonSerialize | 2 | 0.0% |
| App\Domain\Account\Repository\AccountRepository::findAccountById | 2 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::findAccountByInvestorId | 2 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::findAccountByAccountNumber | 2 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::getAccountSummary | 2 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::getBalanceHistory | 2 | 100.0% |
| App\Domain\Account\Service\AccountService::getBalanceHistory | 2 | 100.0% |
| App\Domain\Admin\Service\AdminService::getInvestorDetail | 2 | 100.0% |
| App\Domain\Admin\Service\AdminService::getAumHistory | 2 | 0.0% |
| App\Domain\Audit\AuditService::logImpersonationEnd | 2 | 0.0% |
| App\Domain\Auth\Data\TokenData::toArray | 2 | 0.0% |
| App\Domain\Auth\Repository\AuthRepository::createUser | 2.00 | 92.9% |
| App\Domain\Auth\Repository\AuthRepository::storeRefreshToken | 2.00 | 92.9% |
| App\Domain\Auth\Repository\AuthRepository::lockAccount | 2.00 | 90.0% |
| App\Domain\Auth\Repository\AuthRepository::storePasswordResetToken | 2.00 | 90.0% |
| App\Domain\Auth\Repository\AuthRepository::storeEmailChangeToken | 2.00 | 91.7% |
| App\Domain\Auth\Service\AuthService::logout | 2 | 100.0% |
| App\Domain\Auth\Service\JwtService::validateToken | 2 | 100.0% |
| App\Domain\Auth\Service\JwtService::decodeToken | 2 | 100.0% |
| App\Domain\Auth\Service\PasswordService::__construct | 2 | 100.0% |
| App\Domain\Auth\Service\RegistrationService::createInvestor | 2 | 95.7% |
| App\Domain\Auth\Service\RegistrationService::createAccount | 2.00 | 93.8% |
| App\Domain\Configuration\ConfigKeyPolicy::canRoleRead | 2 | 100.0% |
| App\Domain\Consent\Data\ConsentRecord::jsonSerialize | 2 | 0.0% |
| App\Domain\Consent\Data\ConsentType::actionFor | 2 | 100.0% |
| App\Domain\Consent\Repository\ConsentRepository::append | 2 | 100.0% |
| App\Domain\Consent\Repository\ConsentRepository::hydrate | 2 | 100.0% |
| App\Domain\Consent\Service\ConsentService::currentActionMap | 2 | 100.0% |
| App\Domain\Contact\Repository\ContactRepository::insert | 2.00 | 90.9% |
| App\Domain\Contact\Repository\ContactRepository::insertPublic | 2.00 | 91.7% |
| App\Domain\Contact\Service\CloudflareTurnstileVerifier::__construct | 2 | 0.0% |
| App\Domain\Disbursement\Repository\DisbursementRepository::enqueue | 2.00 | 90.0% |
| App\Domain\Disbursement\Repository\DisbursementRepository::markDisbursed | 2.00 | 91.7% |
| App\Domain\Document\Data\DocumentTemplateData::__construct | 2 | 0.0% |
| App\Domain\Document\Data\DocumentTemplateData::fromRow | 2 | 0.0% |
| App\Domain\Document\Data\DocumentTemplateData::toArray | 2 | 0.0% |
| App\Domain\Document\Data\PandaDocDocumentRefData::__construct | 2 | 0.0% |
| App\Domain\Document\Data\PandaDocDocumentRefData::fromPandaDocResponse | 2 | 0.0% |
| App\Domain\Document\Data\PandaDocDocumentRefData::toArray | 2 | 0.0% |
| App\Domain\Document\Data\PandaDocRecipientData::fromPandaDocResponse | 2 | 0.0% |
| App\Domain\Document\Data\PandaDocTemplateDetailsData::__construct | 2 | 0.0% |
| App\Domain\Document\Data\PandaDocTemplateFieldData::__construct | 2 | 0.0% |
| App\Domain\Document\Data\PandaDocTemplateFieldData::toArray | 2 | 0.0% |
| App\Domain\Document\Data\PandaDocTemplateTokenData::__construct | 2 | 0.0% |
| App\Domain\Document\Data\PandaDocTemplateTokenData::fromPandaDocResponse | 2 | 0.0% |
| App\Domain\Document\Data\PandaDocTemplateTokenData::toArray | 2 | 0.0% |
| App\Domain\Document\Provided\Repository\ProvidedDocumentRepository::create | 2.00 | 94.4% |
| App\Domain\Document\Provided\Service\ProvidedDocumentService::getForInvestor | 2 | 100.0% |
| App\Domain\Document\Provided\Service\ProvidedDocumentService::rewindable | 2 | 100.0% |
| App\Domain\Document\Repository\DocumentTemplateRepository::__construct | 2 | 0.0% |
| App\Domain\Document\Service\IdentityVerificationService::markIdentityVerifiedIfApplicable | 2.00 | 90.0% |
| App\Domain\Document\Service\PandaDocFieldMapper::mapForW9 | 2 | 100.0% |
| App\Domain\Document\Service\PandaDocService::__construct | 2 | 0.0% |
| App\Domain\Document\Service\PandaDocService::getDocumentDetails | 2 | 0.0% |
| App\Domain\Document\Service\PandaDocService::createSigningSession | 2 | 0.0% |
| App\Domain\Document\Service\PandaDocService::resendDocument | 2 | 0.0% |
| App\Domain\Document\Service\PandaDocService::getDocumentStatus | 2 | 0.0% |
| App\Domain\Document\Service\PandaDocService::sendDocument | 2 | 0.0% |
| App\Domain\Document\Service\PandaDocService::inspectTemplate | 2 | 0.0% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::create | 2.00 | 91.7% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::insertEvent | 2.00 | 94.4% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::listActiveTypes | 2 | 0.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::rewindable | 2 | 100.0% |
| App\Domain\ErrorLog\Data\ErrorLogData::jsonSerialize | 2 | 0.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::info | 2 | 0.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::notice | 2 | 0.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::warning | 2 | 0.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::formatStackTrace | 2 | 100.0% |
| App\Domain\Exception\ValidationException::forField | 2 | 0.0% |
| App\Domain\Exception\ValidationException::getErrors | 2 | 0.0% |
| App\Domain\Funding\Data\FundingRequestData::toArray | 2 | 0.0% |
| App\Domain\Funding\Data\FundingRequestData::toAdminArray | 2 | 0.0% |
| App\Domain\Funding\Repository\FundingRequestRepository::updateStatus | 2.00 | 90.9% |
| App\Domain\Investor\Repository\InvestorRepository::createInvestor | 2 | 95.5% |
| App\Domain\Investor\Repository\InvestorRepository::setStripeCustomerId | 2.00 | 90.0% |
| App\Domain\Investor\Service\InvestorService::getInvestor | 2 | 100.0% |
| App\Domain\Investor\Service\InvestorService::getInvestorByEmail | 2 | 100.0% |
| App\Domain\Investor\Service\InvestorService::validatePhone | 2 | 100.0% |
| App\Domain\Investor\Service\InvestorService::validateZipCode | 2 | 100.0% |
| App\Domain\Loan\Data\LoanData::toArray | 2 | 0.0% |
| App\Domain\Loan\Repository\LoanRepository::createLoanRequest | 2.00 | 92.9% |
| App\Domain\Loan\Repository\LoanRepository::approveLoan | 2.00 | 92.3% |
| App\Domain\Loan\Repository\LoanRepository::denyLoan | 2.00 | 90.0% |
| App\Domain\Loan\Repository\LoanRepository::recordAdditionalPayment | 2.00 | 91.7% |
| App\Domain\Loan\Service\LoanService::getLoan | 2 | 100.0% |
| App\Domain\Loan\Service\LoanService::getApprovedLoans | 2 | 0.0% |
| App\Domain\Notification\Data\NotificationPreference::jsonSerialize | 2 | 0.0% |
| App\Domain\Notification\Data\NotificationType::allKnownTypes | 2 | 0.0% |
| App\Domain\Notification\Data\NotificationType::isValid | 2 | 0.0% |
| App\Domain\Notification\Data\SentEmailData::toArray | 2 | 0.0% |
| App\Domain\Notification\Repository\NotificationPreferenceRepository::getByUserId | 2 | 100.0% |
| App\Domain\Notification\Repository\NotificationPreferenceRepository::upsert | 2 | 100.0% |
| App\Domain\Notification\Service\CronEmailNotifier::typeFor | 2 | 100.0% |
| App\Domain\Notification\Service\HealthcheckPinger::pingSuccess | 2 | 100.0% |
| App\Domain\Notification\Service\HealthcheckPinger::pingFailure | 2 | 100.0% |
| App\Domain\Notification\Service\HealthcheckPinger::send | 2 | 100.0% |
| App\Domain\Notification\Service\NotificationPreferenceService::applicableTypesForRole | 2 | 100.0% |
| App\Domain\Notification\Service\RecordingEmailService::send | 2 | 100.0% |
| App\Domain\Storage\Service\LocalFileStorage::__construct | 2 | 100.0% |
| App\Domain\Stripe\Repository\StripeWebhookRepository::recordReceived | 2.00 | 91.7% |
| App\Domain\Stripe\Service\InvestorStripeService::listPaymentMethods | 2 | 100.0% |
| App\Domain\Stripe\Service\StripeService::__construct | 2 | 0.0% |
| App\Domain\Stripe\Service\StripeService::createSetupIntent | 2 | 0.0% |
| App\Domain\Stripe\Service\StripeService::detachPaymentMethod | 2 | 0.0% |
| App\Domain\Stripe\Service\StripeService::setDefaultPaymentMethod | 2 | 0.0% |
| App\Domain\Stripe\Service\StripeWebhookService::handleIncomingEvent | 2 | 100.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::createUser | 2.00 | 92.3% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::createInvestor | 2 | 95.5% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::createAccount | 2 | 95.2% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::createTransaction | 2.00 | 94.1% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::updateAccountBalance | 2.00 | 90.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::updateAccountStatus | 2.00 | 90.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::updateUserRole | 2.00 | 90.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::getCronJobStatuses | 2 | 96.2% |
| App\Domain\SuperAdmin\Service\SuperAdminService::generateReferenceNumber | 2 | 100.0% |
| App\Domain\SystemSettings\Data\SystemSettingData::getValue | 2 | 0.0% |
| App\Domain\SystemSettings\Service\SystemSettingsService::getByKey | 2 | 0.0% |
| App\Domain\SystemSettings\Service\SystemSettingsService::getLogLevelThreshold | 2 | 0.0% |
| App\Domain\Transaction\Service\TransactionFinder::isValidDate | 2 | 100.0% |
| App\Domain\Transaction\Service\TransactionService::getValidTypes | 2 | 0.0% |
| App\Factory\DatabaseFactory::__invoke | 2.00 | 94.7% |
| App\Middleware\ErrorLoggingMiddleware::process | 2 | 100.0% |
| App\Support\ProvidedDocumentDownload::sanitiseAttachmentFilename | 2 | 100.0% |
| App\Action\Account\CreateAccountAction::__construct | 1 | 100.0% |
| App\Action\Account\CreateAccountAction::__invoke | 1 | 100.0% |
| App\Action\Account\GetAccountAction::__construct | 1 | 100.0% |
| App\Action\Account\GetAccountAction::__invoke | 1 | 100.0% |
| App\Action\Account\GetAccountBalanceHistoryAction::__construct | 1 | 100.0% |
| App\Action\Account\GetAccountByInvestorAction::__construct | 1 | 100.0% |
| App\Action\Account\GetAccountByInvestorAction::__invoke | 1 | 100.0% |
| App\Action\Account\GetAccountSummaryAction::__construct | 1 | 100.0% |
| App\Action\Account\GetAccountSummaryAction::__invoke | 1 | 100.0% |
| App\Action\Account\GetAccountTransactionsAction::__construct | 1 | 100.0% |
| App\Action\Account\UpdateAccountStatusAction::__construct | 1 | 100.0% |
| App\Action\Admin\GetAdminInvestorDetailAction::__construct | 1 | 100.0% |
| App\Action\Admin\GetAdminInvestorsAction::__construct | 1 | 100.0% |
| App\Action\Admin\GetAdminInvestorsAction::__invoke | 1 | 100.0% |
| App\Action\Admin\GetAdminStatsAction::__construct | 1 | 100.0% |
| App\Action\Admin\GetAdminStatsAction::__invoke | 1 | 100.0% |
| App\Action\Admin\GetConfigurationAction::__construct | 1 | 100.0% |
| App\Action\Admin\GetCronJobStatusesAction::__construct | 1 | 100.0% |
| App\Action\Admin\ImpersonateUserAction::__construct | 1 | 100.0% |
| App\Action\Admin\SendInvestorPasswordResetAction::__construct | 1 | 100.0% |
| App\Action\Admin\SetInvestorPasswordAction::__construct | 1 | 100.0% |
| App\Action\Admin\UpdateConfigurationAction::__construct | 1 | 100.0% |
| App\Action\Auth\ChangePasswordAction::__construct | 1 | 100.0% |
| App\Action\Auth\ConfirmEmailChangeAction::__construct | 1 | 100.0% |
| App\Action\Auth\ConfirmEmailChangeAction::__invoke | 1 | 100.0% |
| App\Action\Auth\ForgotPasswordAction::__construct | 1 | 100.0% |
| App\Action\Auth\GetCurrentUserAction::__construct | 1 | 100.0% |
| App\Action\Auth\LoginAction::__construct | 1 | 100.0% |
| App\Action\Auth\LoginAction::__invoke | 1 | 100.0% |
| App\Action\Auth\LogoutAction::__construct | 1 | 100.0% |
| App\Action\Auth\RefreshTokenAction::__construct | 1 | 100.0% |
| App\Action\Auth\RegisterAction::__construct | 1 | 100.0% |
| App\Action\Auth\RegisterAction::handleSimpleRegistration | 1 | 100.0% |
| App\Action\Auth\RequestEmailChangeAction::__construct | 1 | 100.0% |
| App\Action\Auth\RequestEmailChangeAction::__invoke | 1 | 100.0% |
| App\Action\Consent\GetMyConsentsAction::__construct | 1 | 100.0% |
| App\Action\Consent\UpdateMyConsentsAction::__construct | 1 | 100.0% |
| App\Action\Contact\SubmitContactAction::__construct | 1 | 100.0% |
| App\Action\Contact\SubmitContactAction::__invoke | 1 | 100.0% |
| App\Action\Contact\SubmitPublicContactAction::__construct | 1 | 100.0% |
| App\Action\Disbursement\GetDisbursementHistoryAction::__construct | 1 | 100.0% |
| App\Action\Disbursement\ListPendingDisbursementsAction::__construct | 1 | 100.0% |
| App\Action\Disbursement\MarkDisbursedAction::__construct | 1 | 100.0% |
| App\Action\Document\Admin\DownloadInvestorAgreementAction::__construct | 1 | 100.0% |
| App\Action\Document\Admin\GetInvestorAgreementsAction::__construct | 1 | 100.0% |
| App\Action\Document\Admin\GetInvestorAgreementsAction::__invoke | 1 | 100.0% |
| App\Action\Document\CreateSigningSessionAction::__construct | 1 | 100.0% |
| App\Action\Document\CreateSigningSessionAction::__invoke | 1 | 100.0% |
| App\Action\Document\DownloadDocumentAction::__construct | 1 | 100.0% |
| App\Action\Document\DownloadDocumentAction::__invoke | 1 | 100.0% |
| App\Action\Document\GetDocumentAction::__construct | 1 | 100.0% |
| App\Action\Document\GetDocumentAction::__invoke | 1 | 100.0% |
| App\Action\Document\GetDocumentsAction::__construct | 1 | 100.0% |
| App\Action\Document\Provided\Admin\DeleteProvidedDocumentAction::__construct | 1 | 100.0% |
| App\Action\Document\Provided\Admin\DeleteProvidedDocumentAction::__invoke | 1 | 100.0% |
| App\Action\Document\Provided\Admin\DownloadProvidedDocumentAction::__construct | 1 | 100.0% |
| App\Action\Document\Provided\Admin\DownloadProvidedDocumentAction::__invoke | 1 | 100.0% |
| App\Action\Document\Provided\Admin\ListInvestorProvidedDocumentsAction::__construct | 1 | 100.0% |
| App\Action\Document\Provided\Admin\ListInvestorProvidedDocumentsAction::__invoke | 1 | 100.0% |
| App\Action\Document\Provided\Admin\UploadProvidedDocumentAction::__construct | 1 | 100.0% |
| App\Action\Document\Provided\DownloadMyProvidedDocumentAction::__construct | 1 | 100.0% |
| App\Action\Document\Provided\ListMyProvidedDocumentsAction::__construct | 1 | 100.0% |
| App\Action\Document\ResendDocumentAction::__construct | 1 | 100.0% |
| App\Action\Document\ResendDocumentAction::__invoke | 1 | 100.0% |
| App\Action\Document\Submission\Admin\AcceptUploadAction::__construct | 1 | 100.0% |
| App\Action\Document\Submission\Admin\AcceptUploadAction::__invoke | 1 | 100.0% |
| App\Action\Document\Submission\Admin\DownloadUploadAction::__construct | 1 | 100.0% |
| App\Action\Document\Submission\Admin\DownloadUploadAction::__invoke | 1 | 100.0% |
| App\Action\Document\Submission\Admin\GetUploadAction::__construct | 1 | 100.0% |
| App\Action\Document\Submission\Admin\GetUploadAction::__invoke | 1 | 100.0% |
| App\Action\Document\Submission\Admin\ListInvestorUploadsAction::__construct | 1 | 100.0% |
| App\Action\Document\Submission\Admin\ListInvestorUploadsAction::__invoke | 1 | 100.0% |
| App\Action\Document\Submission\Admin\ListPendingUploadsAction::__construct | 1 | 100.0% |
| App\Action\Document\Submission\Admin\ListPendingUploadsAction::__invoke | 1 | 100.0% |
| App\Action\Document\Submission\Admin\RejectUploadAction::__construct | 1 | 100.0% |
| App\Action\Document\Submission\DiscardUploadAction::__construct | 1 | 100.0% |
| App\Action\Document\Submission\DownloadMyUploadAction::__construct | 1 | 100.0% |
| App\Action\Document\Submission\ListMyUploadsAction::__construct | 1 | 100.0% |
| App\Action\Document\Submission\UploadDocumentAction::__construct | 1 | 100.0% |
| App\Action\Document\Type\ListDocumentTypesAction::__construct | 1 | 100.0% |
| App\Action\Document\Type\ListDocumentTypesAction::__invoke | 1 | 100.0% |
| App\Action\Home\HomeAction::__invoke | 1 | 100.0% |
| App\Action\Home\PingAction::__construct | 1 | 100.0% |
| App\Action\Home\PingAction::__invoke | 1 | 100.0% |
| App\Action\Investor\CreateInvestorAction::__construct | 1 | 100.0% |
| App\Action\Investor\CreateInvestorAction::__invoke | 1 | 100.0% |
| App\Action\Investor\CreateSetupIntentAction::__construct | 1 | 100.0% |
| App\Action\Investor\CreateSetupIntentAction::__invoke | 1 | 100.0% |
| App\Action\Investor\DetachPaymentMethodAction::__construct | 1 | 100.0% |
| App\Action\Investor\DetachPaymentMethodAction::__invoke | 1 | 100.0% |
| App\Action\Investor\GetInvestorAction::__construct | 1 | 100.0% |
| App\Action\Investor\GetInvestorByUserIdAction::__construct | 1 | 100.0% |
| App\Action\Investor\ListPaymentMethodsAction::__construct | 1 | 100.0% |
| App\Action\Investor\ListPaymentMethodsAction::__invoke | 1 | 100.0% |
| App\Action\Investor\SetDefaultPaymentMethodAction::__construct | 1 | 100.0% |
| App\Action\Investor\SetDefaultPaymentMethodAction::__invoke | 1 | 100.0% |
| App\Action\Investor\UpdateInvestorAction::__construct | 1 | 100.0% |
| App\Action\Investor\UpdateInvestorAction::__invoke | 1 | 100.0% |
| App\Action\Investor\UpdateInvestorStatusAction::__construct | 1 | 100.0% |
| App\Action\Investor\UpdateKycStatusAction::__construct | 1 | 100.0% |
| App\Action\Loan\CheckEligibilityAction::__construct | 1 | 100.0% |
| App\Action\Loan\CheckEligibilityAction::__invoke | 1 | 100.0% |
| App\Action\Notification\GetMyNotificationPreferencesAction::__construct | 1 | 100.0% |
| App\Action\Notification\UpdateMyNotificationPreferencesAction::__construct | 1 | 100.0% |
| App\Action\Stripe\WebhookAction::__construct | 1 | 100.0% |
| App\Action\Stripe\WebhookAction::__invoke | 1 | 100.0% |
| App\Action\SuperAdmin\CreateTestUserAction::__construct | 1 | 100.0% |
| App\Action\SuperAdmin\DeleteTestDataAction::__construct | 1 | 100.0% |
| App\Action\SuperAdmin\GenerateBulkDataAction::__construct | 1 | 100.0% |
| App\Action\SuperAdmin\GenerateTransactionsAction::__construct | 1 | 100.0% |
| App\Action\SuperAdmin\GetAccountsForSuperAdminAction::__construct | 1 | 100.0% |
| App\Action\SuperAdmin\GetSystemSettingsAction::__construct | 1 | 100.0% |
| App\Action\SuperAdmin\GetSystemSettingsAction::__invoke | 1 | 100.0% |
| App\Action\SuperAdmin\ListErrorLogsAction::__construct | 1 | 100.0% |
| App\Action\SuperAdmin\ListErrorLogsAction::__invoke | 1 | 100.0% |
| App\Action\SuperAdmin\ListUsersAction::__construct | 1 | 100.0% |
| App\Action\SuperAdmin\UpdateUserRoleAction::__construct | 1 | 100.0% |
| App\Domain\Account\Data\AccountData::__construct | 1 | 100.0% |
| App\Domain\Account\Data\AccountData::jsonSerialize | 1 | 100.0% |
| App\Domain\Account\Data\AccountSummaryData::__construct | 1 | 100.0% |
| App\Domain\Account\Data\BalanceHistoryPointData::__construct | 1 | 100.0% |
| App\Domain\Account\Data\BalanceHistoryPointData::jsonSerialize | 1 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::__construct | 1 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::accountNumberExists | 1 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::createAccount | 1 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::investorHasAccount | 1 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::updateAccountStatus | 1 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::updateBankAccountStatus | 1 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::setBankAccountId | 1 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::updateInterestRate | 1 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::updateLoanToValueRatio | 1 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::getAvailableForLoan | 1 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::hasActiveLoans | 1 | 100.0% |
| App\Domain\Account\Repository\AccountRepository::canCloseAccount | 1 | 100.0% |
| App\Domain\Account\Service\AccountService::__construct | 1 | 100.0% |
| App\Domain\Admin\Data\AdminStatsData::__construct | 1 | 100.0% |
| App\Domain\Admin\Data\AdminStatsData::jsonSerialize | 1 | 100.0% |
| App\Domain\Admin\Repository\AdminRepository::__construct | 1 | 100.0% |
| App\Domain\Admin\Service\AdminService::__construct | 1 | 100.0% |
| App\Domain\Admin\Service\AdminService::getStats | 1 | 100.0% |
| App\Domain\Audit\AuditService::__construct | 1 | 100.0% |
| App\Domain\Audit\AuditService::getRequestId | 1 | 100.0% |
| App\Domain\Audit\AuditService::logLogin | 1 | 100.0% |
| App\Domain\Audit\AuditService::logLoginFailed | 1 | 100.0% |
| App\Domain\Audit\AuditService::logLogout | 1 | 100.0% |
| App\Domain\Audit\AuditService::logImpersonationStart | 1 | 100.0% |
| App\Domain\Audit\AuditService::logSensitiveDataAccess | 1 | 100.0% |
| App\Domain\Auth\Data\AdminActor::__construct | 1 | 100.0% |
| App\Domain\Auth\Data\TokenData::__construct | 1 | 100.0% |
| App\Domain\Auth\Data\UserAuthData::__construct | 1 | 100.0% |
| App\Domain\Auth\Data\UserAuthData::fromRow | 1 | 100.0% |
| App\Domain\Auth\Repository\AuthRepository::__construct | 1 | 100.0% |
| App\Domain\Auth\Service\AdminPasswordService::__construct | 1 | 100.0% |
| App\Domain\Auth\Service\AdminPasswordService::sendResetLinkForInvestor | 1 | 100.0% |
| App\Domain\Auth\Service\AdminPasswordService::setPasswordForInvestor | 1 | 100.0% |
| App\Domain\Auth\Service\AuthService::__construct | 1 | 100.0% |
| App\Domain\Auth\Service\AuthService::generateTokens | 1 | 100.0% |
| App\Domain\Auth\Service\AuthService::logoutAllDevices | 1 | 100.0% |
| App\Domain\Auth\Service\EmailChangeService::__construct | 1 | 100.0% |
| App\Domain\Auth\Service\EmailChangeService::buildEmailHtml | 1 | 100.0% |
| App\Domain\Auth\Service\EmailChangeService::buildChangedNoticeHtml | 1 | 100.0% |
| App\Domain\Auth\Service\JwtService::__construct | 1 | 100.0% |
| App\Domain\Auth\Service\JwtService::generateTokenPair | 1 | 100.0% |
| App\Domain\Auth\Service\JwtService::generateAccessToken | 1 | 100.0% |
| App\Domain\Auth\Service\JwtService::generateRefreshToken | 1 | 100.0% |
| App\Domain\Auth\Service\JwtService::getAccessTokenExpiry | 1 | 100.0% |
| App\Domain\Auth\Service\JwtService::getRefreshTokenExpiry | 1 | 100.0% |
| App\Domain\Auth\Service\PasswordResetService::__construct | 1 | 100.0% |
| App\Domain\Auth\Service\PasswordResetService::sendResetLink | 1 | 100.0% |
| App\Domain\Auth\Service\PasswordResetService::buildEmailHtml | 1 | 100.0% |
| App\Domain\Auth\Service\PasswordService::hashPassword | 1 | 100.0% |
| App\Domain\Auth\Service\PasswordService::verifyPassword | 1 | 100.0% |
| App\Domain\Auth\Service\PasswordService::needsRehash | 1 | 100.0% |
| App\Domain\Auth\Service\RegistrationService::__construct | 1 | 100.0% |
| App\Domain\Auth\Service\RegistrationService::validateAllInput | 1 | 100.0% |
| App\Domain\Consent\Data\ConsentCopy::all | 1 | 100.0% |
| App\Domain\Consent\Data\ConsentRecord::__construct | 1 | 100.0% |
| App\Domain\Consent\Data\ConsentRecord::isGranted | 1 | 100.0% |
| App\Domain\Consent\Data\ConsentType::requiredTypes | 1 | 100.0% |
| App\Domain\Consent\Data\ConsentType::optionalTypes | 1 | 100.0% |
| App\Domain\Consent\Data\ConsentType::allTypes | 1 | 100.0% |
| App\Domain\Consent\Data\ConsentType::isValid | 1 | 100.0% |
| App\Domain\Consent\Data\ConsentType::isOptional | 1 | 100.0% |
| App\Domain\Consent\Data\ConsentType::isValidSource | 1 | 100.0% |
| App\Domain\Consent\Repository\ConsentRepository::__construct | 1 | 100.0% |
| App\Domain\Consent\Repository\ConsentRepository::getCurrentForUser | 1 | 100.0% |
| App\Domain\Consent\Repository\ConsentRepository::getHistoryForUser | 1 | 100.0% |
| App\Domain\Consent\Service\ConsentService::__construct | 1 | 100.0% |
| App\Domain\Contact\Data\ContactMessageData::__construct | 1 | 100.0% |
| App\Domain\Contact\Data\ContactMessageData::fromRow | 1 | 100.0% |
| App\Domain\Contact\Data\ContactMessageData::toArray | 1 | 100.0% |
| App\Domain\Contact\Repository\ContactRepository::__construct | 1 | 100.0% |
| App\Domain\Contact\Service\ContactService::__construct | 1 | 100.0% |
| App\Domain\Disbursement\Data\DisbursementData::__construct | 1 | 100.0% |
| App\Domain\Disbursement\Data\DisbursementData::fromRow | 1 | 100.0% |
| App\Domain\Disbursement\Data\DisbursementData::toArray | 1 | 100.0% |
| App\Domain\Disbursement\Repository\DisbursementRepository::__construct | 1 | 100.0% |
| App\Domain\Disbursement\Service\DisbursementService::__construct | 1 | 100.0% |
| App\Domain\Disbursement\Service\DisbursementService::listPending | 1 | 100.0% |
| App\Domain\Disbursement\Service\DisbursementService::countByStatus | 1 | 100.0% |
| App\Domain\Document\Data\PandaDocDocumentData::__construct | 1 | 100.0% |
| App\Domain\Document\Data\PandaDocDocumentData::fromStoredFallback | 1 | 100.0% |
| App\Domain\Document\Data\PandaDocDocumentData::toArray | 1 | 100.0% |
| App\Domain\Document\Data\PandaDocRecipientData::__construct | 1 | 100.0% |
| App\Domain\Document\Data\PandaDocRecipientData::toArray | 1 | 100.0% |
| App\Domain\Document\Data\PandaDocSigningSessionData::__construct | 1 | 100.0% |
| App\Domain\Document\Data\PandaDocSigningSessionData::toArray | 1 | 100.0% |
| App\Domain\Document\Provided\Data\ProvidedDocumentData::__construct | 1 | 100.0% |
| App\Domain\Document\Provided\Data\ProvidedDocumentData::fromRow | 1 | 100.0% |
| App\Domain\Document\Provided\Data\ProvidedDocumentData::toArray | 1 | 100.0% |
| App\Domain\Document\Provided\Repository\ProvidedDocumentRepository::__construct | 1 | 100.0% |
| App\Domain\Document\Provided\Repository\ProvidedDocumentRepository::listSelect | 1 | 100.0% |
| App\Domain\Document\Provided\Service\ProvidedDocumentService::__construct | 1 | 100.0% |
| App\Domain\Document\Provided\Service\ProvidedDocumentService::listForInvestor | 1 | 100.0% |
| App\Domain\Document\Provided\Service\ProvidedDocumentService::getStream | 1 | 100.0% |
| App\Domain\Document\Repository\InvestorAgreementRepository::__construct | 1 | 100.0% |
| App\Domain\Document\Service\IdentityVerificationService::__construct | 1 | 100.0% |
| App\Domain\Document\Service\InvestorAgreementService::__construct | 1 | 100.0% |
| App\Domain\Document\Service\PandaDocFieldMapper::mapForMpa | 1 | 100.0% |
| App\Domain\Document\Submission\Data\AdminInvestorDocumentData::__construct | 1 | 100.0% |
| App\Domain\Document\Submission\Data\AdminInvestorDocumentData::fromRow | 1 | 100.0% |
| App\Domain\Document\Submission\Data\AdminInvestorDocumentData::toArray | 1 | 100.0% |
| App\Domain\Document\Submission\Data\InvestorDocumentData::__construct | 1 | 100.0% |
| App\Domain\Document\Submission\Data\InvestorDocumentData::fromRow | 1 | 100.0% |
| App\Domain\Document\Submission\Data\InvestorDocumentData::toArray | 1 | 100.0% |
| App\Domain\Document\Submission\Data\InvestorDocumentEventData::__construct | 1 | 100.0% |
| App\Domain\Document\Submission\Data\InvestorDocumentEventData::fromRow | 1 | 100.0% |
| App\Domain\Document\Submission\Data\InvestorDocumentEventData::toArray | 1 | 100.0% |
| App\Domain\Document\Submission\Repository\InvestorDocumentRepository::__construct | 1 | 100.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::__construct | 1 | 100.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::listForInvestor | 1 | 100.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::getStream | 1 | 100.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::listPendingForAdmin | 1 | 100.0% |
| App\Domain\Document\Submission\Service\InvestorDocumentService::listForInvestorAsAdmin | 1 | 100.0% |
| App\Domain\Document\Type\Data\DocumentTypeData::__construct | 1 | 100.0% |
| App\Domain\Document\Type\Data\DocumentTypeData::fromRow | 1 | 100.0% |
| App\Domain\Document\Type\Data\DocumentTypeData::toArray | 1 | 100.0% |
| App\Domain\Document\Type\Repository\DocumentTypeRepository::__construct | 1 | 100.0% |
| App\Domain\ErrorLog\Data\ErrorLogData::__construct | 1 | 100.0% |
| App\Domain\ErrorLog\Data\ErrorLogFilterData::getOffset | 1 | 100.0% |
| App\Domain\ErrorLog\Repository\ErrorLogRepository::__construct | 1 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::__construct | 1 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::debug | 1 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::error | 1 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::critical | 1 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::alert | 1 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::emergency | 1 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::getById | 1 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::list | 1 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::resolve | 1 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::delete | 1 | 100.0% |
| App\Domain\ErrorLog\Service\ErrorLogService::getLogLevels | 1 | 100.0% |
| App\Domain\Exception\AuthenticationException::getStatusCode | 1 | 100.0% |
| App\Domain\Exception\AuthenticationException::getTitle | 1 | 100.0% |
| App\Domain\Exception\BadRequestException::getStatusCode | 1 | 100.0% |
| App\Domain\Exception\BadRequestException::getTitle | 1 | 100.0% |
| App\Domain\Exception\ConflictException::getStatusCode | 1 | 100.0% |
| App\Domain\Exception\ConflictException::getTitle | 1 | 100.0% |
| App\Domain\Exception\ForbiddenException::getStatusCode | 1 | 100.0% |
| App\Domain\Exception\ForbiddenException::getTitle | 1 | 100.0% |
| App\Domain\Exception\NotFoundException::getStatusCode | 1 | 100.0% |
| App\Domain\Exception\NotFoundException::getTitle | 1 | 100.0% |
| App\Domain\Exception\ValidationException::__construct | 1 | 100.0% |
| App\Domain\Exception\ValidationException::getStatusCode | 1 | 100.0% |
| App\Domain\Exception\ValidationException::getTitle | 1 | 100.0% |
| App\Domain\Funding\Data\FundingRequestData::__construct | 1 | 100.0% |
| App\Domain\Funding\Data\FundingRequestData::fromRow | 1 | 100.0% |
| App\Domain\Funding\Repository\FundingRequestRepository::__construct | 1 | 100.0% |
| App\Domain\Funding\Service\FundingRequestService::__construct | 1 | 100.0% |
| App\Domain\Funding\Service\FundingRequestService::listPending | 1 | 100.0% |
| App\Domain\Funding\Service\FundingRequestService::countPending | 1 | 100.0% |
| App\Domain\Investor\Data\InvestorData::__construct | 1 | 100.0% |
| App\Domain\Investor\Data\InvestorData::fromRow | 1 | 100.0% |
| App\Domain\Investor\Repository\InvestorRepository::__construct | 1 | 100.0% |
| App\Domain\Investor\Service\InvestorService::__construct | 1 | 100.0% |
| App\Domain\Investor\Service\InvestorService::activateInvestor | 1 | 100.0% |
| App\Domain\Investor\Service\InvestorService::deactivateInvestor | 1 | 100.0% |
| App\Domain\Investor\Service\InvestorService::suspendInvestor | 1 | 100.0% |
| App\Domain\Loan\Data\LoanData::__construct | 1 | 100.0% |
| App\Domain\Loan\Data\LoanData::fromRow | 1 | 100.0% |
| App\Domain\Loan\Data\LoanEligibilityData::__construct | 1 | 100.0% |
| App\Domain\Loan\Data\LoanEligibilityData::fromRow | 1 | 100.0% |
| App\Domain\Loan\Data\LoanEligibilityData::toArray | 1 | 100.0% |
| App\Domain\Loan\Repository\LoanRepository::__construct | 1 | 100.0% |
| App\Domain\Loan\Service\LoanService::__construct | 1 | 100.0% |
| App\Domain\Loan\Service\LoanService::checkEligibility | 1 | 100.0% |
| App\Domain\Loan\Service\LoanService::getInvestorLoans | 1 | 100.0% |
| App\Domain\Loan\Service\LoanService::getPendingLoans | 1 | 100.0% |
| App\Domain\Loan\Service\LoanService::getActiveLoans | 1 | 100.0% |
| App\Domain\Loan\Service\LoanService::getConfig | 1 | 100.0% |
| App\Domain\Loan\Service\LoanService::getPaymentSchedule | 1 | 100.0% |
| App\Domain\Loan\Service\LoanService::getValidTerms | 1 | 100.0% |
| App\Domain\Notification\Data\EmailMessage::__construct | 1 | 100.0% |
| App\Domain\Notification\Data\NotificationPreference::__construct | 1 | 100.0% |
| App\Domain\Notification\Data\NotificationType::adminTypes | 1 | 100.0% |
| App\Domain\Notification\Data\NotificationType::isAdminType | 1 | 100.0% |
| App\Domain\Notification\Data\SentEmailData::__construct | 1 | 100.0% |
| App\Domain\Notification\Data\SentEmailData::fromRow | 1 | 100.0% |
| App\Domain\Notification\Repository\NotificationPreferenceRepository::__construct | 1 | 100.0% |
| App\Domain\Notification\Repository\NotificationPreferenceRepository::getEnabledRecipientsForAdminType | 1 | 100.0% |
| App\Domain\Notification\Repository\SentEmailRepository::__construct | 1 | 100.0% |
| App\Domain\Notification\Service\CronEmailNotifier::__construct | 1 | 100.0% |
| App\Domain\Notification\Service\CronEmailNotifier::notifyJobSuccess | 1 | 100.0% |
| App\Domain\Notification\Service\CronEmailNotifier::notifyJobAnomaly | 1 | 100.0% |
| App\Domain\Notification\Service\CronEmailNotifier::notifyJobFailure | 1 | 100.0% |
| App\Domain\Notification\Service\HealthcheckPinger::__construct | 1 | 100.0% |
| App\Domain\Notification\Service\NotificationDispatcher::__construct | 1 | 100.0% |
| App\Domain\Notification\Service\NotificationPreferenceService::__construct | 1 | 100.0% |
| App\Domain\Notification\Service\RecordingEmailService::__construct | 1 | 100.0% |
| App\Domain\Notification\Service\SmtpEmailService::__construct | 1 | 100.0% |
| App\Domain\Storage\Service\LocalFileStorage::store | 1 | 100.0% |
| App\Domain\Storage\Service\LocalFileStorage::exists | 1 | 100.0% |
| App\Domain\Storage\Service\LocalFileStorage::generateUuidV4 | 1 | 100.0% |
| App\Domain\Stripe\Data\PaymentChargeData::__construct | 1 | 100.0% |
| App\Domain\Stripe\Data\PaymentMethodData::__construct | 1 | 100.0% |
| App\Domain\Stripe\Data\SetupIntentData::__construct | 1 | 100.0% |
| App\Domain\Stripe\Data\StripeCustomerData::__construct | 1 | 100.0% |
| App\Domain\Stripe\Data\WebhookEventData::__construct | 1 | 100.0% |
| App\Domain\Stripe\Exception\WebhookSignatureException::getStatusCode | 1 | 100.0% |
| App\Domain\Stripe\Exception\WebhookSignatureException::getTitle | 1 | 100.0% |
| App\Domain\Stripe\Repository\StripeWebhookRepository::__construct | 1 | 100.0% |
| App\Domain\Stripe\Service\InvestorStripeService::__construct | 1 | 100.0% |
| App\Domain\Stripe\Service\InvestorStripeService::createSetupIntentClientSecret | 1 | 100.0% |
| App\Domain\Stripe\Service\InvestorStripeService::detachPaymentMethod | 1 | 100.0% |
| App\Domain\Stripe\Service\InvestorStripeService::setDefaultPaymentMethod | 1 | 100.0% |
| App\Domain\Stripe\Service\StripeWebhookService::__construct | 1 | 100.0% |
| App\Domain\SuperAdmin\Data\CronJobStatusData::__construct | 1 | 100.0% |
| App\Domain\SuperAdmin\Data\CronJobStatusData::jsonSerialize | 1 | 100.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::__construct | 1 | 100.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::deleteTestData | 1 | 100.0% |
| App\Domain\SuperAdmin\Repository\SuperAdminRepository::toIntArrayLiteral | 1 | 100.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::__construct | 1 | 100.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::replayAccountHistory | 1 | 100.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::getAccountsForDropdown | 1 | 100.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::deleteTestData | 1 | 100.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::getTestDataCounts | 1 | 100.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::generateEmail | 1 | 100.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::generateUsername | 1 | 100.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::generateRandomDateOfBirth | 1 | 100.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::generateRandomInvestment | 1 | 100.0% |
| App\Domain\SuperAdmin\Service\SuperAdminService::generateRandomDateInRange | 1 | 100.0% |
| App\Domain\SystemSettings\Data\SystemSettingData::jsonSerialize | 1 | 100.0% |
| App\Domain\SystemSettings\Repository\SystemSettingsRepository::__construct | 1 | 100.0% |
| App\Domain\SystemSettings\Repository\SystemSettingsRepository::getValue | 1 | 100.0% |
| App\Domain\SystemSettings\Service\SystemSettingsService::__construct | 1 | 100.0% |
| App\Domain\SystemSettings\Service\SystemSettingsService::getAll | 1 | 100.0% |
| App\Domain\Transaction\Data\TransactionData::__construct | 1 | 100.0% |
| App\Domain\Transaction\Data\TransactionData::fromRow | 1 | 100.0% |
| App\Domain\Transaction\Data\TransactionData::jsonSerialize | 1 | 100.0% |
| App\Domain\Transaction\Repository\TransactionRepository::__construct | 1 | 100.0% |
| App\Domain\Transaction\Service\TransactionFinder::__construct | 1 | 100.0% |
| App\Domain\Transaction\Service\TransactionService::__construct | 1 | 100.0% |
| App\Middleware\ErrorLoggingMiddleware::__construct | 1 | 100.0% |
| App\Middleware\ExceptionMiddleware::__construct | 1 | 100.0% |
| App\Middleware\JwtAuthMiddleware::__construct | 1 | 100.0% |
| App\Middleware\JwtAuthMiddleware::unauthorizedResponse | 1 | 100.0% |
| App\Middleware\ResourceOwnershipMiddleware::__construct | 1 | 100.0% |
| App\Middleware\ResourceOwnershipMiddleware::forbiddenResponse | 1 | 100.0% |
| App\Middleware\RoleMiddleware::__construct | 1 | 100.0% |
| App\Middleware\RoleMiddleware::forbiddenResponse | 1 | 100.0% |
| App\Renderer\JsonRenderer::json | 1 | 100.0% |
| App\Support\ProvidedDocumentDownload::respond | 1 | 100.0% |