# ========================= # ERP TEST TARGET # ========================= BASE_URL=https://erp-test.vavalam.com START_ERP=false ERP_WORKDIR= ERP_COMMAND=uvicorn app.main:app --reload # ========================= # OTP MODE # Order used by fixtures/auth.js: # 1) STATIC_OTP if set # 2) results/current-otp.txt if present # 3) IMAP when OTP_FROM_IMAP=true # ========================= OTP_FROM_CONSOLE=false OTP_FROM_IMAP=true STATIC_OTP= # ========================= # COMMON IMAP SETTINGS # Used with per-role IMAP credentials below. # IMAP_OTP_REGEX may include one capture group; if present, group 1 is used. # ========================= IMAP_HOST=mail.vavalam.com IMAP_PORT=993 IMAP_SECURE=true IMAP_MAILBOX=INBOX IMAP_SEARCH_FROM=no-reply@vavalam.com IMAP_OTP_REGEX=\b\d{6}\b IMAP_OTP_REGEX_FLAGS=m IMAP_WAIT_SECONDS=60 IMAP_LOOKBACK_MINUTES=10 IMAP_MAX_MESSAGES=20 IMAP_FAIL_FAST=false IMAP_THROW_ON_TIMEOUT=false # ========================= # SMTP / SYSTEM MAILS # These are reference values for the UAT system and documentation. # The Playwright suite reads OTP from recipient IMAP accounts, not from the sender account. # ========================= SMTP_FROM_EMAIL=no-reply@vavalam.com SUPPORT_EMAIL=support@vavalam.com # ========================= # SYSTEM ADMIN # ========================= SYSTEM_ADMIN_EMAIL=uat.admin@vavalam.com SYSTEM_ADMIN_PASSWORD=Password@123 SYSTEM_ADMIN_IMAP_USER=uat.admin@vavalam.com SYSTEM_ADMIN_IMAP_PASSWORD= # ========================= # FIRM ADMIN # ========================= FIRM_ADMIN_EMAIL=uat.firmadmin@vavalam.com FIRM_ADMIN_PASSWORD=Password@123 FIRM_ADMIN_IMAP_USER=uat.firmadmin@vavalam.com FIRM_ADMIN_IMAP_PASSWORD= # ========================= # PARTNER # ========================= PARTNER_EMAIL=uat.partner@vavalam.com PARTNER_PASSWORD=Password@123 PARTNER_IMAP_USER=uat.partner@vavalam.com PARTNER_IMAP_PASSWORD= # ========================= # MANAGER / BRANCH MANAGER # ========================= MANAGER_EMAIL=uat.manager@vavalam.com MANAGER_PASSWORD=Password@123 MANAGER_IMAP_USER=uat.manager@vavalam.com MANAGER_IMAP_PASSWORD= # ========================= # STAFF USERS # ========================= STAFF_EMAIL=uat.staff@vavalam.com STAFF_PASSWORD=Password@123 STAFF_IMAP_USER=uat.staff@vavalam.com STAFF_IMAP_PASSWORD= STAFF2_EMAIL=uat.staff2@vavalam.com STAFF2_PASSWORD=Password@123 STAFF2_IMAP_USER=uat.staff2@vavalam.com STAFF2_IMAP_PASSWORD= BRANCH2_STAFF_EMAIL=uat.branch2staff@vavalam.com BRANCH2_STAFF_PASSWORD=Password@123 BRANCH2_STAFF_IMAP_USER=uat.branch2staff@vavalam.com BRANCH2_STAFF_IMAP_PASSWORD= # ========================= # CLIENT USERS # ========================= CLIENT_EMAIL=uat.client@vavalam.com CLIENT_PASSWORD=Password@123 CLIENT_IMAP_USER=uat.client@vavalam.com CLIENT_IMAP_PASSWORD= CLIENT2_EMAIL=uat.client2@vavalam.com CLIENT2_PASSWORD=Password@123 CLIENT2_IMAP_USER=uat.client2@vavalam.com CLIENT2_IMAP_PASSWORD= # ========================= # CONSULTANT # ========================= CONSULTANT_EMAIL=uat.consultant@vavalam.com CONSULTANT_PASSWORD=Password@123 CONSULTANT_IMAP_USER=uat.consultant@vavalam.com CONSULTANT_IMAP_PASSWORD= # ========================= # INVITE / RESET / LOCKED USER TESTS # ========================= INVITE_TEST_EMAIL=uat.invite@vavalam.com INVITE_TEST_PASSWORD=Password@123 INVITE_TEST_IMAP_USER=uat.invite@vavalam.com INVITE_TEST_IMAP_PASSWORD= RESET_TEST_EMAIL=uat.reset@vavalam.com RESET_TEST_PASSWORD=Password@123 RESET_TEST_IMAP_USER=uat.reset@vavalam.com RESET_TEST_IMAP_PASSWORD= LOCKED_USER_EMAIL=uat.lockeduser@vavalam.com LOCKED_USER_PASSWORD=Password@123 LOCKED_USER_IMAP_USER=uat.lockeduser@vavalam.com LOCKED_USER_IMAP_PASSWORD= # ========================= # TENANT / BRANCH TEST CONTEXT # ========================= TENANT_A_CODE=UAT-A TENANT_B_CODE=UAT-B BRANCH_A_CODE=UAT-BA BRANCH_B_CODE=UAT-BB TENANT_B_NAME=UAT Tenant B TENANT_B_ADMIN_EMAIL=uat.firmadminb@vavalam.com TENANT_B_ADMIN_PASSWORD=Password@123 TENANT_B_ADMIN_IMAP_USER=uat.firmadminb@vavalam.com TENANT_B_ADMIN_IMAP_PASSWORD= # ========================= # FINANCIAL YEAR # ========================= ACTIVE_FY=2025-26 PREVIOUS_FY=2024-25 LOCKED_FY= DEFAULT_YEAR_CODE=2025-26 # ========================= # OPTIONAL DIRECT IDS # Leave blank initially. Fill only when direct-ID tests require them. # ========================= TENANT_A_ID= TENANT_B_ID= BRANCH_A_ID= BRANCH_B_ID= CLIENT_A_ID= CLIENT_B_ID= SERVICE_A_ID= ENGAGEMENT_A_ID= NOTICE_CASE_A_ID= TASK_DOCUMENT_A_ID= CASE_DOCUMENT_A_ID= YEAR_BACKUP_EXPORT_ID= # ========================= # SECURITY EXPECTATIONS # Set true later after production hardening. # ========================= EXPECT_SECURE_COOKIES=false EXPECT_STRICT_CSP=false TRUST_CONTEXT_HEADERS=false CONTEXT_HEADER_SECRET= # ========================= # RESULT FILES # ========================= MASTER_EXCEL=Audit_Firm_ERP_Master_UAT_VAPT_Checklist.xlsx UPDATED_EXCEL=results/Audit_Firm_ERP_Master_UAT_VAPT_Checklist_v2_4_Results.xlsx API_CHECK_RESULTS_FILE=results/api-check-results.json # ========================= # V2.5 OPTIONAL DIRECT IDS # These are only needed for direct-ID/deep module tests. If blank, affected tests skip gracefully. # ========================= EMPLOYEE_A_ID= EMPLOYEE_B_ID= PAYROLL_RUN_ID= SALARY_STRUCTURE_ID= LEAVE_TYPE_ID= LEAVE_REQUEST_ID= ATTENDANCE_ID= REG_REQUEST_ID= ONBOARDING_TASK_ID= OFFBOARDING_REQ_ID= EMP_DOCUMENT_ID= INVOICE_A_ID= PAYMENT_A_ID= PARTNER_TASK_A_ID= CONSULTANT_A_ID= CONSULTANT_B_ID= CONVERSION_REQUEST_ID= SERVICE_REQUEST_ID= CONSULTANT_DOCUMENT_ID= DOCUMENT_A_ID= DOCUMENT_B_ID= CASE_DOCUMENT_ID= SUBSCRIPTION_A_ID= TASK_A_ID= WORK_ITEM_A_ID=