@bobfrankston/mailx-imap 0.1.103 → 0.1.104

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.
Files changed (2) hide show
  1. package/index.js +9 -1
  2. package/package.json +3 -3
package/index.js CHANGED
@@ -1367,8 +1367,16 @@ export class ImapManager extends EventEmitter {
1367
1367
  // recent under stable UIDVALIDITY, so prefer newest when capping — the
1368
1368
  // user cares most about recent mail and the deficit gate keeps calling
1369
1369
  // us until the backlog is drained.
1370
+ //
1371
+ // Kept deliberately small (Bob 2026-06-20): each backfilled batch feeds
1372
+ // the body-prefetcher, which issues large UID FETCHes on the single
1373
+ // shared slow-lane connection. A 5000-message batch flooded that
1374
+ // connection (cmd-chain waits of 70s+, 90s FETCH timeouts) and wedged
1375
+ // the whole sync worker. A small batch per cycle keeps prefetch's queue
1376
+ // shallow so the connection stays responsive; the deficit gate drains
1377
+ // the backlog over more cycles instead of one connection-killing burst.
1370
1378
  const BACKFILL_CHUNK_SIZE = 100;
1371
- const RECONCILE_FETCH_CAP = 5000;
1379
+ const RECONCILE_FETCH_CAP = 1000;
1372
1380
  let toFetch = missingUids;
1373
1381
  if (missingUids.length > RECONCILE_FETCH_CAP) {
1374
1382
  console.log(` ${folderPath}: ${missingUids.length} server-only UIDs — capped at ${RECONCILE_FETCH_CAP}; resumes next cycle`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bobfrankston/mailx-imap",
3
- "version": "0.1.103",
3
+ "version": "0.1.104",
4
4
  "type": "module",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -10,7 +10,7 @@
10
10
  "license": "ISC",
11
11
  "dependencies": {
12
12
  "@bobfrankston/mailx-types": "^0.1.19",
13
- "@bobfrankston/mailx-settings": "^0.1.29",
13
+ "@bobfrankston/mailx-settings": "^0.1.30",
14
14
  "@bobfrankston/mailx-store": "^0.1.54",
15
15
  "@bobfrankston/iflow-direct": "^0.1.55",
16
16
  "@bobfrankston/tcp-transport": "^0.1.7",
@@ -38,7 +38,7 @@
38
38
  ".transformedSnapshot": {
39
39
  "dependencies": {
40
40
  "@bobfrankston/mailx-types": "^0.1.19",
41
- "@bobfrankston/mailx-settings": "^0.1.29",
41
+ "@bobfrankston/mailx-settings": "^0.1.30",
42
42
  "@bobfrankston/mailx-store": "^0.1.54",
43
43
  "@bobfrankston/iflow-direct": "^0.1.55",
44
44
  "@bobfrankston/tcp-transport": "^0.1.7",