openreader/src/lib/server
Richard R fc3d05d65b feat(rate-limit): add per-user PDF parsing rate limiting and job event ledger
implement a generic user_job_events table for tracking compute job creation
enforce configurable burst and sustained limits for PDF layout parsing
add admin panel controls for compute rate limiting and max upload size
update API routes to apply and record rate checks for PDF parse jobs
document new environment variables and admin settings for compute limits
improve IP extraction logic for rate limiting accuracy
add tests for request IP extraction and test namespace gating

This change introduces a robust mechanism to throttle expensive compute operations, such as PDF parsing, on a per-user basis. It provides both burst and sustained rate controls, with admin-tunable parameters and clear user feedback on throttling. The job event ledger enables accurate concurrency and rate enforcement, while new documentation and tests ensure maintainability and clarity.
2026-05-30 14:17:49 -06:00
..
admin feat(rate-limit): add per-user PDF parsing rate limiting and job event ledger 2026-05-30 14:17:49 -06:00
audiobooks refactor(tts): transition rate limiting to runtime config and admin panel 2026-05-30 09:55:16 -06:00
auth refactor: complete phase 7 error-contract rollout 2026-05-27 08:02:31 -06:00
compute feat(worker): add granular PDF progress reporting and abort error handling 2026-05-29 20:13:59 -06:00
crypto feat(admin,config,ui,db): introduce runtime-editable site config and admin-managed TTS providers 2026-05-12 22:39:24 -06:00
documents feat(rate-limit): add per-user PDF parsing rate limiting and job event ledger 2026-05-30 14:17:49 -06:00
errors refactor: complete phase 7 error-contract rollout 2026-05-27 08:02:31 -06:00
jobs refactor: complete phase 7 error-contract rollout 2026-05-27 08:02:31 -06:00
rate-limit feat(rate-limit): add per-user PDF parsing rate limiting and job event ledger 2026-05-30 14:17:49 -06:00
storage refactor(pdf): implement ONNX-based Docling layout parsing and block-level TTS for PDFs 2026-05-17 21:18:51 -06:00
testing feat(rate-limit): add per-user PDF parsing rate limiting and job event ledger 2026-05-30 14:17:49 -06:00
tts refactor: complete phase 7 error-contract rollout 2026-05-27 08:02:31 -06:00
user refactor: complete phase 7 error-contract rollout 2026-05-27 08:02:31 -06:00
logger.ts refactor: roll out phase 7 server error contract 2026-05-27 07:24:07 -06:00
runtime-config-rsc.ts fix(server): enforce server-only usage for runtime config resolvers 2026-05-14 13:07:43 -06:00
runtime-config.ts hard-cut batch A: worker-only app compute backend 2026-05-26 15:56:39 -06:00