Files
dbis_core/NON_CRITICAL_ERRORS_SUMMARY.md

92 lines
3.8 KiB
Markdown
Raw Normal View History

2026-01-02 20:27:42 -08:00
# Non-Critical Type Errors - Fix Summary
## ✅ Successfully Fixed
### 1. AccountType Enum Issues ✅
All integration plugins now use the correct `AccountType` enum instead of string literals:
- `src/integration/plugins/temenos-adapter.ts`
- `src/integration/plugins/flexcube-adapter.ts`
- `src/integration/plugins/iso20022-adapter.ts`
- `src/integration/plugins/swift-adapter.ts`
**Fix Applied**: Imported `AccountType` enum and replaced string literals with enum values:
```typescript
// Before: accountType: 'NOSTRO' | 'VOSTRO'
// After: accountType: AccountType.NOSTRO
```
### 2. JsonValue Type Issues (Partial) ✅
Started fixing JsonValue type mismatches in critical services:
- `src/core/accounting/reporting-engine.service.ts` ✅ (3 instances fixed)
- `src/core/admin/dbis-admin/controls/corridor-controls.service.ts` ✅ (3 instances fixed)
**Fix Applied**: Added `Prisma.InputJsonValue` casting:
```typescript
import { Prisma } from '@prisma/client';
// ...
statementData: consolidatedData as Prisma.InputJsonValue
```
## ⚠️ Remaining Errors (Estimated ~400+ instances)
The remaining errors fall into these categories, which would require extensive fixes across many files:
### 1. JsonValue Type Mismatches (~150+ instances)
**Pattern**: `Record<string, unknown>` not assignable to `JsonNull | InputJsonValue`
**Fix Required**: Cast to `as Prisma.InputJsonValue`
**Files Affected**: Many services across compliance, monetary, contracts, cbdc, etc.
### 2. Missing Return Statements (~100+ instances)
**Pattern**: Route handlers not returning values in all code paths
**Fix Required**: Add explicit `return` statements or throw errors
**Files Affected**: Route files throughout the codebase
### 3. Property Access Errors (~50+ instances)
**Pattern**: Accessing properties that don't exist on Prisma query results
**Fix Required**: Fix `include` statements or add proper type guards
**Files Affected**: Admin dashboards, GRU services, compliance services
### 4. Decimal Method Errors (~30+ instances)
**Pattern**: Using `isGreaterThan`, `isLessThan` instead of `greaterThan`, `lessThan`
**Fix Required**: Replace method names
**Files Affected**: GRU stress test, temporal settlement services
### 5. Unknown Type Errors (~20+ instances)
**Pattern**: Objects typed as `unknown` need type assertions
**Fix Required**: Add proper type assertions or type guards
**Files Affected**: Reporting engine, compliance services
### 6. Schema Mismatch Errors (~50+ instances)
**Pattern**: Properties don't exist in Prisma schema (likely removed/commented)
**Fix Required**: Update code to match current schema or fix schema
**Files Affected**: Various services referencing non-existent fields
## Recommendation
Given the large number of remaining errors (400+), I recommend:
1. **Option A - Fix Systematically**: Continue fixing errors file by file, prioritizing:
- Core services (accounting, compliance)
- Frequently used services
- Route handlers (for missing returns)
2. **Option B - Adjust TypeScript Configuration**: For non-critical code paths:
- Add `// @ts-ignore` or `// @ts-expect-error` comments
- Use `any` types in less critical areas
- Disable specific strict checks for certain directories
3. **Option C - Hybrid Approach**:
- Fix critical/core services completely
- Use type assertions/suppressions for less critical code
- Document known type issues for future fixes
## Current Status
-**Critical Errors**: All fixed
-**AccountType Enum**: All fixed
-**JsonValue (Partial)**: 6 instances fixed in critical services
- ⚠️ **Remaining**: ~400+ non-critical type errors across codebase
The codebase is now in a much better state with all critical errors resolved. The remaining errors are mostly in less frequently used code paths and won't prevent runtime execution.