LibreChat/api/server/controllers
Danny Avila 8a0efa95d0 fix: Codex round — deletion/lease window, resume self-capacity, abort-as-aborted, weekly label
Address all 6 findings from Codex review of 912d75bff:

- Exclude the resumed run from capacity checks (P2): reserveScheduledResume discounts
  this occurrence's own started row (isOccurrenceStarted) so a self-active row (from a
  transient pause-bookkeeping failure) doesn't push the global count over the cap and
  block resuming the same occurrence.

- Preserve the lease marker while deleting (P2): markScheduleDeleting no longer unsets
  leaseUntil/leaseBy, so a fire that already reserved a started row can prove
  (holdsLease) it still owns the lease and roll back its own unposted row instead of
  leaving a ghost.

- Treat a live lease as undrained (P2): eraseScheduleIfDrained also refuses to erase
  while a LIVE lease is held (a worker claimed but hasn't reserved yet), so it can't
  erase out from under a worker about to insert a reservation.

- Release own lease after owner-edit supersedes fire (P2): the superseded rollback path
  now releaseLeaseByHolder(leaseBy) since advance() is token-fenced and no-ops after an
  edit — otherwise the edited schedule / Run now reads 'already in progress' until TTL.

- Preserve early-abort jobs as aborted (P2): the createJob->liveness early abort uses
  abortJob (stored 'aborted' -> reconcile 'interrupted') instead of completeJob, whose
  preserved 'complete' the reconciler would map to 'success'.

- Show default weekly schedules as weekly (P3, client): describeCadence renders a
  weekly cadence without daysOfWeek on the server's default weekly day instead of
  falling through to the daily label.
2026-07-22 13:10:39 -04:00
..
__tests__ test: mock Schedules service in UserController specs (CI shard fix) 2026-07-22 10:18:34 -04:00
agents fix: Codex round — deletion/lease window, resume self-capacity, abort-as-aborted, weekly label 2026-07-22 13:10:39 -04:00
assistants 🙋 feat: ask_user_question - agent-initiated questions with durable pause/resume (#14139) 2026-07-08 15:31:05 -04:00
auth 🚪 fix: Support Admin Redirect Detection for Same-Origin Subpaths (#14040) 2026-07-01 11:40:02 -04:00
AuthController.js feat: Make OpenID Token Reuse Window Configurable (#13546) 2026-06-06 15:15:58 -04:00
AuthController.spec.js feat: Make OpenID Token Reuse Window Configurable (#13546) 2026-06-06 15:15:58 -04:00
Balance.js 🤫 chore: Quiet Repetitive Log Noise from Balance, CloudFront, and Capability Paths (#13461) 2026-06-01 20:40:16 -04:00
Balance.spec.js 🤫 chore: Quiet Repetitive Log Noise from Balance, CloudFront, and Capability Paths (#13461) 2026-06-01 20:40:16 -04:00
EndpointController.js refactor: Integrate Capabilities into Agent File Uploads and Tool Handling (#5048) 2024-12-19 13:04:48 -05:00
FavoritesController.js 📌 feat: Add Pin Support for Model Specs (#11219) 2026-04-09 18:37:25 -04:00
FavoritesController.spec.js 📌 feat: Add Pin Support for Model Specs (#11219) 2026-04-09 18:37:25 -04:00
mcp.js 📉 perf: Skip Redundant Permission Queries on MCP Servers List (#14077) 2026-07-02 11:45:23 -04:00
ModelController.js 🏗️ refactor: Remove Redundant Caching, Migrate Config Services to TypeScript (#12466) 2026-03-30 16:49:48 -04:00
PermissionsController.js 🪪 fix: Filter ACL Principal Details (#13524) 2026-06-05 19:06:41 -04:00
PluginController.js 🙋 feat: ask_user_question - agent-initiated questions with durable pause/resume (#14139) 2026-07-08 15:31:05 -04:00
PluginController.spec.js 🙋 feat: ask_user_question - agent-initiated questions with durable pause/resume (#14139) 2026-07-08 15:31:05 -04:00
SkillStatesController.js 🗂️ feat: Add Deployment Skill Directory (#13523) 2026-06-05 10:24:28 -04:00
TokenConfigController.js 🗂️ fix: Scope Token Config Cache (#13770) 2026-06-15 15:25:19 -04:00
tools.js 🧯 fix: Harden Data Retention Semantics (#13049) 2026-05-19 21:58:42 -04:00
TwoFactorController.js 🔑 fix: Require OTP Verification for 2FA Re-Enrollment and Backup Code Regeneration (#12223) 2026-03-14 01:51:31 -04:00
UserController.js feat: Scheduled chats lifecycle/concurrency hardening (merge blockers) 2026-07-22 09:38:14 -04:00
UserController.spec.js test: mock Schedules service in UserController specs (CI shard fix) 2026-07-22 10:18:34 -04:00