Files
dbis_core/FIXES_SESSION_5.md

52 lines
2.0 KiB
Markdown
Raw Normal View History

2026-01-02 20:27:42 -08:00
# Type Error Fixes - Session 5
## ✅ Completed Fixes
### CBDC Services - Additional Fixes
1. **cbdc.service.ts**
- Fixed null handling: Changed `null` to `Prisma.JsonNull` for metadata when reason is not provided
2. **cbdc-wallet.service.ts**
- Fixed tieredAccess: Added `as Prisma.InputJsonValue` casting
3. **face-behavioral.service.ts**
- Fixed engineConfig: Added `as Prisma.InputJsonValue` casting (2 instances)
4. **cbdc-velocity-control.service.ts**
- Fixed timeBasedThrottle: Changed null handling to use `Prisma.JsonNull`
5. **zk-validation services**
- Fixed proofData: Changed from `InputJsonValue` to `string` (correct type)
- Fixed publicInputs: Changed from `as unknown as Record<string, unknown>` to `as Prisma.InputJsonValue` (3 files)
### Compliance ARI Services - Additional Fixes
1. **ari-cortex.service.ts**
- Fixed policyRules: Changed from `as unknown as Record<string, unknown>` to `as Prisma.InputJsonValue`
2. **ari-decisioning.service.ts**
- Fixed decisionData and policyRules: Changed from `as unknown as Record<string, unknown>` to `as Prisma.InputJsonValue` (multiple instances)
3. **ari-reflex.service.ts**
- Fixed policyRules and newRules: Changed from `as unknown as Record<string, unknown>` to `as Prisma.InputJsonValue` (multiple instances)
## Key Fixes
### Null Handling Pattern
- For nullable JSON fields that can be null, use `Prisma.JsonNull` instead of `null`
- Pattern: `value ? (value as Prisma.InputJsonValue) : Prisma.JsonNull`
### String vs JsonValue
- proofData fields should be `string`, not `Prisma.InputJsonValue`
- Pattern: `proofData: proofData as string`
### Cleaner Type Casting
- Replaced `as unknown as Record<string, unknown>` with proper `as Prisma.InputJsonValue`
- This is cleaner and more type-safe
## Progress
- Fixed additional ~15+ JsonValue errors in files we previously worked on
- Improved type safety by using proper Prisma types instead of workarounds
- Total JsonValue fixes so far: ~55+ instances across ~30 files