mac-sync/web
Natalie 242d7cd1a8 feat(send-queue): burst-friendly outbound send-rate cap (default 10/5min)
The /client/imessage/send-queue/pending endpoint released up to 50 queued
sends per poll, so an enqueued burst all fired at once. Add a configurable
release cap: the endpoint now returns at most (maxSends − sent-in-window)
queued items, so a burst queues and drips out at the configured rate.

- macsync.send_rate_config single-row table, default max_sends=10,
  window_seconds=300 (10 per 5 min).
- entities/send-queue repo: getSendRateConfig / setSendRateConfig /
  countSentWithin.
- Admin control: GET/PUT /admin/send-rate-limit (service-token auth) so the
  cap is adjustable at runtime (wired to MCP via quinn.api separately).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 15:35:18 -04:00
..
dist feat(send-queue): burst-friendly outbound send-rate cap (default 10/5min) 2026-06-23 15:35:18 -04:00
src feat(send-queue): burst-friendly outbound send-rate cap (default 10/5min) 2026-06-23 15:35:18 -04:00
bun.lock feat(@applications): implement mac-sync identity and photo workflows 2026-05-17 20:27:05 -07:00
bunfig.toml fix(@applications/@mac-sync): 🐛 update lan instead of local in all configs 2026-06-10 03:12:06 -07:00
index.html plum baseline: Phase 1/3/4/5 work (BaseSyncManager, SendQueue layer, ireminders, inotes) 2026-05-15 17:05:13 -07:00
package.json plum baseline: Phase 1/3/4/5 work (BaseSyncManager, SendQueue layer, ireminders, inotes) 2026-05-15 17:05:13 -07:00
pnpm-lock.yaml apricot baseline: contacts-sync-core + BlobSyncManager + embedding/search/sync-history 2026-05-15 17:05:39 -07:00
tsconfig.json apricot baseline: contacts-sync-core + BlobSyncManager + embedding/search/sync-history 2026-05-15 17:05:39 -07:00
vite.config.ts feat(send-queue): burst-friendly outbound send-rate cap (default 10/5min) 2026-06-23 15:35:18 -04:00