LibreChat/api/server
Danny Avila 431547757f fix: address deep review — indexes, redis metadata, capacity, crash-retry, cascade (14 findings)
P1:
- F1: explicitly build Schedule/ScheduleRun indexes at engine start (autoIndex
  is off by default, so the unique idempotency + TTL indexes never existed)
- F2: persist scheduleId/scheduledFor through RedisJobStore deserialization
- F3: re-enter owner tenant context before getLimits in reconciliation
- F4: a scheduled HITL pause no longer decrements an interactive slot it never took
- F5: reserve-then-verify fireConcurrency cap (covers engine + run-now)
- F6: cascade schedule/run deletion on account delete

P2:
- F7: classify ambiguous loopback failures as interrupted (no false auto-disable)
- F8: crash-retryable bookkeeping (lastCountedFor idempotency + bookkept marker,
  reconciler catches un-bookkept terminal runs)
- F9: reconciliation fetches started + requires_action in separate budgeted,
  ordered buckets; add {status,firedAt} index
- F10: abort route finalizes scheduled runs (interrupted)
- F11: resolve attachments before inserting the started run (no phantom active run)
- F12: PATCH re-validates effective cadence against the current interval floor
- F13: dialog preserves stored weekly daysOfWeek when cadence untouched
- F14: schedules query refetches on focus/interval so panel status stays fresh

Plus e2e mock spec for the schedule CRUD round-trip. +4 method tests.
2026-07-21 20:13:15 -04:00
..
controllers fix: address deep review — indexes, redis metadata, capacity, crash-retry, cascade (14 findings) 2026-07-21 20:13:15 -04:00
middleware 🔍 refactor: Surface primary OpenID JWT failure reason in auth failure log (#14346) 2026-07-20 21:05:20 -04:00
routes fix: address deep review — indexes, redis metadata, capacity, crash-retry, cascade (14 findings) 2026-07-21 20:13:15 -04:00
services fix: address deep review — indexes, redis metadata, capacity, crash-retry, cascade (14 findings) 2026-07-21 20:13:15 -04:00
utils 🔄 feat: Continue Shared Conversations as Personal Copies (#13714) 2026-06-24 16:27:01 -04:00
cleanup.js 🧹 refactor: Tighten Config Schema Typing and Remove Deprecated Fields (#12452) 2026-03-29 01:10:57 -04:00
experimental.js 🧹 feat: Eager HITL Checkpoint Cleanup (Expiry + Deletion) & Full-Wiring E2E (#14123) 2026-07-05 11:29:30 -04:00
index.js fix: address deep review — indexes, redis metadata, capacity, crash-retry, cascade (14 findings) 2026-07-21 20:13:15 -04:00
index.metrics.spec.js ⚖️ feat: Add Operational Prometheus Metrics (#13265) 2026-05-22 20:47:41 -04:00
index.spec.js ⚙️ refactor: lazy-load React Query Devtools (#13639) 2026-06-10 13:06:20 -04:00
socialLogins.js feat: Make OpenID Token Reuse Window Configurable (#13546) 2026-06-06 15:15:58 -04:00
socialLogins.spec.js feat: Make OpenID Token Reuse Window Configurable (#13546) 2026-06-06 15:15:58 -04:00
telemetry.js 📡 feat: Add Backend OpenTelemetry Tracing (#12909) 2026-05-14 09:08:55 -04:00
telemetry.spec.js 📡 feat: Add Backend OpenTelemetry Tracing (#12909) 2026-05-14 09:08:55 -04:00