d0072125fe
CRITICAL FIX: Resolves TypeScript compilation error preventing npm install
ERROR:
src/Socket/chats.ts(117,52): error TS2344: Type 'IAppStateSyncKeyData | null'
does not satisfy the constraint '{}'. Type 'null' is not assignable to type '{}'.
ROOT CAUSE:
LRUCache v10+ has a generic constraint where value type V must satisfy constraint {}.
The type 'IAppStateSyncKeyData | null' includes null, which doesn't satisfy {}.
ANALYSIS:
The code NEVER caches null values (line 152 only calls set() if key is truthy),
so the | null in the type declaration was unnecessary and incorrect.
SOLUTION:
1. Remove | null from LRUCache type parameter (line 121)
2. Simplify getCachedAppStateSyncKey return (line 143)
3. Add documentation about type safety
VALIDATION:
✓ TypeScript error TS2344 resolved
✓ Logic unchanged: still only caches non-null values
✓ LRUCache.get() still returns undefined for missing keys
✓ Null cache poisoning prevention maintained (commit 4e05e62)
This fix enables successful npm install and build.
https://claude.ai/code/session_01NTVq3RHgGpgKL289JGvw55