@tracelog/lib 2.8.2-rc.102.6 → 2.8.3-rc.103.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -822,8 +822,9 @@ TraceLog implements intelligent error handling with automatic retries for transi
822
822
  - **Persistence after exhaustion**: Events saved to localStorage for next-page recovery
823
823
 
824
824
  **Rate Limit** (429):
825
- - **No in-session retries** (deferred to EventManager periodic backoff)
826
- - **Events persisted immediately** to localStorage for next-cycle recovery
825
+ - **No in-session retries** arms a 60-second cooldown instead
826
+ - **Cooldown is mirrored to localStorage** and shared across tabs/windows on the same origin (prevents every fresh page load from hammering the server's 429 window)
827
+ - **Events persisted immediately** to localStorage; retried once the cooldown elapses
827
828
  - TraceLog SaaS deduplicates retries server-side; custom backends should implement idempotency
828
829
 
829
830
  **Permanent Errors** (4xx except 408, 429):
@@ -856,7 +857,7 @@ await tracelog.init({
856
857
  | **2xx** | Success | None | Cleared |
857
858
  | **4xx** (except 408, 429) | Permanent | ❌ None | ❌ Discarded |
858
859
  | **408** Request Timeout | Transient | ✅ Up to 2 | ✅ After exhaustion |
859
- | **429** Too Many Requests | Rate Limited | ❌ None | ✅ Immediate |
860
+ | **429** Too Many Requests | Rate Limited (60s cooldown, shared across tabs) | ❌ None | ✅ Immediate |
860
861
  | **5xx** | Transient | ✅ Up to 2 | ✅ After exhaustion |
861
862
  | **Network Error** | Transient | ✅ Up to 2 | ✅ After exhaustion |
862
863
  | **Timeout** | Transient | ✅ Up to 2 | ✅ After exhaustion |