Commit Graph

23 Commits

Author SHA1 Message Date
Claude d968205376 fix: resolve TypeScript errors in merged code
- Add null check for decoded in getLIDsForPNs loop
- Fix jest mock typing in process-message.test.ts
2026-01-21 04:24:09 +00:00
Renato Alcara 31fdfa8b7c chore: log fallback mapping availability 2026-01-21 00:52:17 -03:00
Claude 4e68f9885c fix(lid-mapping): address PR #9 code review feedback
- Add bounds validation for config values (prevent DoS via env vars)
- Replace ?? false with || false in isValidMapping (correct operator)
- Rename deleteMapping to deleteMappingFromCache (clarify behavior)
- Keep deleteMapping as deprecated alias for backward compatibility
- Document destroyed state handling in read-only methods
- Document async metrics module loading race condition
- Document storeLIDPNMappings return type change
- Add failure tracking and warning in getLIDsForPNs
- Document exponential backoff retry pattern in config and method
2026-01-20 05:04:25 +00:00
Claude 0688a5ec4a feat(lid-mapping): enhance with enterprise-grade features
Major improvements to LIDMappingStore:

Configuration (BAILEYS_LID_* env vars):
- BAILEYS_LID_CACHE_TTL_MS: Cache TTL (default: 3 days)
- BAILEYS_LID_MAX_CACHE_SIZE: Max cache entries (default: 50000)
- BAILEYS_LID_BATCH_SIZE: Batch size for bulk ops (default: 100)
- BAILEYS_LID_RETRY_ATTEMPTS: Retry attempts (default: 3)
- BAILEYS_LID_RETRY_DELAY_MS: Retry delay (default: 1000)
- BAILEYS_LID_METRICS: Enable Prometheus metrics
- BAILEYS_LID_DEBUG: Enable debug logging

New Features:
- Comprehensive statistics tracking (getStatistics())
- Cache warming capability (warmCache())
- Cache management (clearCache(), getCacheInfo())
- Batch operations for bulk mappings
- Retry logic with exponential backoff
- Custom error types (LIDMappingError, LIDMappingErrorCode)
- Proper resource cleanup (destroy())
- hasMappingForPN() for existence checks
- deleteMapping() for cache invalidation

Enterprise Patterns:
- Environment variable configuration
- Statistics and metrics integration
- Retry with exponential backoff
- Destroyed state protection
- Batch processing for performance
- Detailed error codes and messages
2026-01-20 04:42:08 +00:00
Rajeh Taher 50d410d117 chore: lint 2025-11-19 16:25:56 +02:00
Clayton Lopes ae5260fc96 Fix memory leak caused by missing TTL in cache (#2044) 2025-11-19 15:23:34 +02:00
Rajeh Taher 29318cf6c2 chore: lint and re-organize 2025-10-20 00:37:37 +03:00
Rajeh Taher cc3cd17392 cleanup: remove string lid / jid refs and improve hosted support 2025-10-20 00:05:54 +03:00
Rajeh Taher 7ee0b61716 chore: lint 2025-10-18 20:35:36 +03:00
Rajeh Taher 08f1d816d1 lid-mapping: fix getPNForLID in hosted env 2025-10-16 18:59:21 +03:00
Rajeh Taher e41a66b3c4 libsignal,lid-mapping, etc.: Partially fix "No sessions" on hosted JIDs 2025-10-16 18:31:01 +03:00
Jefferson Felix a3ec28e051 fix error and linting (#1888)
* fix: build

* fix: linting

* fix: cast type
2025-10-08 09:27:43 +03:00
Rajeh Taher e9198b773e lid-mapping,signal: improvements to hosted device support in lid map 2025-10-08 02:39:02 +03:00
Rajeh Taher 1afc566e90 lid-mapping, messages-send: Batch getLIDForPN calls 2025-10-03 01:09:13 +03:00
Rajeh Taher 50b36ece3b decode-wa-message, process-message: Fix @hosted lids processing 2025-10-03 00:22:57 +03:00
Rajeh Taher 592f70b81d general: Bring back USYNC calls for LID getting, and improve 2025-10-03 00:04:39 +03:00
Gustavo Quadri ae456cb342 fix: send message speed, lid logic, remove messages-send useless functions (#1794)
* fix: remove redundant migration

* fix: remove deduplicatelidpnjids

* fix: assertsessions complexity

* fix: assertsessions call

* fix: remove getencryptionjid

* fix: add wirejid to injecte2esession, remove libsignal lid migration

* fix: logger lid-mapping

* fix: injecte2esession decoded approach

* fix: changes made by @AstroX11

* fix: lint

* fix: lint

* fix: lint

* Revert "fix: injecte2esession decoded approach"

This reverts commit 4e368296ed084398b8a173ec117dc2478e481748.

* fix: centralize getlidforpn calls in messages-send

* fix: add resolvechunklids to signal

* fix: remove useless arrays

* fix: assertsessions logic

* fix: lint

* Revert "fix: assertsessions logic"

This reverts commit 65b0730891c91573edcab1c96af010db54382fba.

* fix: remove onwhatsapp fallback to prevent rate limit, migrate sessions when lid-map is created, new migration logic and user devices key

* fix: migrate session devices, socket creation

* fix: add back decryptionjid validation

* fix: add resolveSignalAddress to get lid

* fix: type error migration

* fix: lint

* fix: device level cache, proposed changes
2025-09-26 06:53:15 +03:00
Rajeh Taher d0acd42992 lid-mapping: remove redundant logic 2025-09-25 23:53:05 +03:00
Gustavo Quadri 194b557b0f fix: optimize LID migration performance and introduce cache (#1782)
* chore: lid-map cache, bulk migration, fixes

* fix: type error

* fix: signalrepository with lid type, remove check from assertsessions, lid-mapping store level deduplication

* fix: migrations logs

* fix: remove migrationsops lenght check

* fix: skip deletesession if cached or existing migrations

* chore: remove check migrated session

* fix: remove return null loadsession

* fix: getLIDforPN call and jidsrequiringfetch

* fix: longer lid map cache TTL

* fix: lint

* fix: lid type

* fix: lid socket type
2025-09-14 21:58:59 +03:00
Rajeh Taher 8204e57a40 socket: fix onWhatsApp 2025-09-09 00:54:59 +03:00
Rajeh Taher 20693a59d0 lid, wip: Support LIDs in Baileys (#1747)
* lid-mapping: get missing lid from usync

* lid-mapping, jid-utils: change to isPnUser and store multiple mappings

* process-message: parse protocolMsg mapping, and store from new msgs

* types: lid-mapping event, addressing enum, alt, contact, group types

* validate, decode: use lid for identity, better logic

* lid: final commit

* linting

* linting

* linting

* linting

* misc: fix testing and also remove version json

* lint: IDE fucking up lint

* lid-mapping: fix build error on NPM

* message-retry: fix proto import
2025-09-08 10:03:28 +03:00
Rajeh Taher 2a00d65e44 cleaning up after AI slop! 2025-09-07 20:34:19 +03:00
Gustavo Quadri 0043f8be21 Add: LID support with lid-map and migrations of sessions (#1694)
* fix: add lid-map logic

* fix: lint and simplified version

* fix: single device migration

* fix: lid map discovery

* fix: lint

* fix: lid migration in socket connection

* fix: lint

* fix: decode-wa-message consistency

* fix: yarn lock

* fix: lint

* fix: retry logic

* fix: logger level
2025-09-07 14:12:24 +03:00