--- last_updated: 2026-08-08 tags: [fanavaran, dependencies] source: fanavaran-module-docs --- # 08 — System dependencies ## Required | Dependency | Role | |------------|------| | **MongoDB** | `claimCases`, `blameCases` / request-management, `fanavaranAuthTokens`, `fanavaranAuditLogs`, `fanavaranClientConfigs`, claim documents refs | | **Outbound HTTPS** | Fanavaran API Manager (`apimanager.iraneit.com`) | | **Filesystem** | `files/fanavaran-lookups/{client}/`, uploaded claim media for GEN.07 | | **Env / config** | `FANAVARAN_CLIENT`, `INSURANCE_CORP_ID`, optional `FANAVARAN_DUMMY_LICENCE_NO`, SMS provider env | | **Nest HttpModule** | Axios via `HttpService` | | **Logging** | Nest `Logger` + audit collection | ## Optional / related | Dependency | Role | |------------|------| | **SMS provider** | Notify owner after successful GEN.08 expertise (`SmsOrchestrationService`; same as login SMS stack) | | **Offline inquiry seeds** | Can supply driver/policy test data without live inquiry | | **Redis / Queue** | **Not** used for Fanavaran stage orchestration today — retries are in-process `setTimeout` + Mongo `nextRetryAt` | ## Config sources (priority) 1. Mongo `fanavaranClientConfigs` (loaded to memory on boot) 2. Seed `SEED_FANAVARAN_CLIENT_PROFILES` if key missing (never overwrite existing DB edits on seed) 3. Env selects **which** client is active (`FANAVARAN_CLIENT`) ## Collections (Fanavaran-specific) | Collection | Purpose | |------------|---------| | `fanavaranClientConfigs` | Per-tenant auth + defaults | | `fanavaranAuthTokens` | Shared token until Tehran midnight | | `fanavaranAuditLogs` | Request/response audit (secrets masked, bodies truncated ~80KB) | | `claimCases.fanavaranSync` | Stage state machine | ## File storage Local claim images/documents must be readable by the process for multipart upload. Failures on missing files are recorded on the attachments stage without blocking the user journey.