@indigoai-us/hq-cloud 6.14.34 → 6.14.35

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.
@@ -1 +1 @@
1
- {"version":3,"file":"sync-runner-watch-loop.d.ts","sourceRoot":"","sources":["../../src/bin/sync-runner-watch-loop.ts"],"names":[],"mappings":"AAwBA,OAAO,EAIL,WAAW,EAEZ,MAAM,eAAe,CAAC;AAWvB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAU9D,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EAElB,MAAM,kBAAkB,CAAC;AAiB1B;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,MAA+B,EACxC,MAAM,GAAE,MAA8B,GACrC,MAAM,CAKR;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,mCAAmC,EAAE,CACnC,QAAQ,EAAE,MAAM,EAAE,KACf,OAAO,CAAC,MAAM,GAAG,iBAAiB,CAAC,CAAC;IACzC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,uBAAuB,EAAE,MAAM,CAAC;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,eAAe,CAAC,GAAG,IAAI,CAAC;IAC7E,qBAAqB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC;AAE5D;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,QAAQ,GAAG,WAAW,GAC3B,KAAK,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CASvC;AAWD;;;;;;;;;;;;GAYG;AACH,wBAAgB,oCAAoC,CAClD,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,GACrB,OAAO,CAIT;AAuBD,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAED,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,MAAM,CAAC,CAqwBjB"}
1
+ {"version":3,"file":"sync-runner-watch-loop.d.ts","sourceRoot":"","sources":["../../src/bin/sync-runner-watch-loop.ts"],"names":[],"mappings":"AAwBA,OAAO,EAIL,WAAW,EAEZ,MAAM,eAAe,CAAC;AAWvB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAU9D,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EAElB,MAAM,kBAAkB,CAAC;AAiB1B;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,MAA+B,EACxC,MAAM,GAAE,MAA8B,GACrC,MAAM,CAKR;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,mCAAmC,EAAE,CACnC,QAAQ,EAAE,MAAM,EAAE,KACf,OAAO,CAAC,MAAM,GAAG,iBAAiB,CAAC,CAAC;IACzC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,uBAAuB,EAAE,MAAM,CAAC;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,eAAe,CAAC,GAAG,IAAI,CAAC;IAC7E,qBAAqB,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC;AAE5D;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,QAAQ,GAAG,WAAW,GAC3B,KAAK,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CASvC;AAWD;;;;;;;;;;;;GAYG;AACH,wBAAgB,oCAAoC,CAClD,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,GACrB,OAAO,CAIT;AAuBD,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAED,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,MAAM,CAAC,CA81BjB"}
@@ -346,6 +346,40 @@ export async function runWatchLoop(argv, parsed, deps, runtime) {
346
346
  pendingWatcherPaths.set(absolutePath, relativePath);
347
347
  }
348
348
  };
349
+ /**
350
+ * Journal roots the bulk-intent quarantine has refused for the current
351
+ * delete episode, keyed `slug\0journalKey`.
352
+ *
353
+ * Chokidar (the Linux backend) reports every removed child through `unlink`
354
+ * BEFORE the parent `unlinkDir`, so by the time the directory expansion is
355
+ * refused each descendant has already persisted its own version-bound intent
356
+ * and handed a snapshot to the pending batch. Declining the expansion alone
357
+ * leaves those intents standing and `prepareWatcherChanges` re-stamps them
358
+ * from the snapshots, so a large `rm -rf` still propagates in full under
359
+ * `HQ_SYNC_DELETE_POLICY=all` — the path this producer-side layer exists to
360
+ * cover, because it bypasses the engine breaker entirely. The trip therefore
361
+ * revokes the descendants' intents as well, and this set keeps the refusal
362
+ * in force for the rest of the episode (the native macOS/Windows backends
363
+ * make no child-before-parent guarantee, so descendants can also arrive
364
+ * after the directory event).
365
+ */
366
+ const quarantinedDeleteRoots = new Set();
367
+ const QUARANTINE_KEY_SEPARATOR = "\u0000";
368
+ const quarantineRootKey = (slug, journalKey) => `${slug}${QUARANTINE_KEY_SEPARATOR}${journalKey}`;
369
+ const quarantineRootFor = (slug, journalKey) => {
370
+ for (const root of quarantinedDeleteRoots) {
371
+ const separator = root.indexOf(QUARANTINE_KEY_SEPARATOR);
372
+ if (root.slice(0, separator) !== slug)
373
+ continue;
374
+ const rootKey = root.slice(separator + 1);
375
+ if (rootKey === "" ||
376
+ journalKey === rootKey ||
377
+ journalKey.startsWith(`${rootKey}/`)) {
378
+ return root;
379
+ }
380
+ }
381
+ return null;
382
+ };
349
383
  const journalCoordinates = (relativePath) => {
350
384
  const route = routeChangeToTarget(relativePath);
351
385
  if (!route)
@@ -391,6 +425,29 @@ export async function runWatchLoop(argv, parsed, deps, runtime) {
391
425
  // whole shard for every exact-key event; directory unlinks alone need
392
426
  // descendant expansion.
393
427
  const covered = journalEntriesForWatcherDelete(journal.files, coordinates.key, kind);
428
+ /**
429
+ * Revoke every delete intent under this event, including ones a descendant
430
+ * `unlink` already persisted before the parent `unlinkDir` arrived. An
431
+ * intent-less disappearance is the safe state: the engine refuses it
432
+ * (`missing-delete-intent`) under every delete policy, nothing is deleted
433
+ * locally or remotely, and the next pull restores the subtree.
434
+ */
435
+ const revokeCoveredDeleteIntents = () => {
436
+ let revoked = 0;
437
+ for (const [key] of covered) {
438
+ if (clearLocalDeleteIntent(journal, key))
439
+ revoked += 1;
440
+ }
441
+ if (revoked > 0)
442
+ writeJournal(coordinates.slug, journal);
443
+ return revoked;
444
+ };
445
+ // A refused directory removal covers its descendants for the rest of the
446
+ // episode, whichever order the backend reports them in.
447
+ if (quarantineRootFor(coordinates.slug, coordinates.key)) {
448
+ revokeCoveredDeleteIntents();
449
+ return [];
450
+ }
394
451
  // Bulk-intent quarantine: one directory event must not be able to mint
395
452
  // intents across a large fraction of the shard. Leaving them intent-less
396
453
  // is the safe state — the engine refuses intent-less disappearances and
@@ -399,11 +456,15 @@ export async function runWatchLoop(argv, parsed, deps, runtime) {
399
456
  if (kind === "unlinkDir" &&
400
457
  !isBulkIntentOverride() &&
401
458
  shouldQuarantineWatcherDeleteIntents(stampable.length, Object.keys(journal.files).length)) {
459
+ quarantinedDeleteRoots.add(quarantineRootKey(coordinates.slug, coordinates.key));
460
+ const revoked = revokeCoveredDeleteIntents();
402
461
  process.stderr.write(`hq-sync-runner: refusing to record delete intent for ${stampable.length} ` +
403
462
  `of ${Object.keys(journal.files).length} journal entries under ` +
404
463
  `"${coordinates.key || "<root>"}" — a single directory removal that large ` +
405
464
  `is treated as a possible mirror loss. Nothing was deleted. ` +
406
- `Set HQ_SYNC_DELETE_BULK_OVERRIDE=1 to propagate it deliberately.\n`);
465
+ `Revoked ${revoked} intent(s) already recorded by descendant unlink ` +
466
+ `events. Set HQ_SYNC_DELETE_BULK_OVERRIDE=1 to propagate it ` +
467
+ `deliberately.\n`);
407
468
  return [];
408
469
  }
409
470
  for (const [key, entry] of stampable) {
@@ -431,6 +492,16 @@ export async function runWatchLoop(argv, parsed, deps, runtime) {
431
492
  for (const [absolutePath, change] of changes.entries()) {
432
493
  if (change.kind === "unlink" || change.kind === "unlinkDir") {
433
494
  for (const snapshot of change.deleteSnapshots ?? []) {
495
+ // Snapshots captured by descendant unlinks before the directory
496
+ // expansion was refused are part of the same quarantined episode.
497
+ // Re-stamping them here would hand the engine exactly the bulk
498
+ // delete the quarantine declined.
499
+ if (quarantineRootFor(snapshot.journalSlug, snapshot.journalPath)) {
500
+ if (clearLocalDeleteIntent(journalFor(snapshot.journalSlug), snapshot.journalPath)) {
501
+ dirty.add(snapshot.journalSlug);
502
+ }
503
+ continue;
504
+ }
434
505
  let absent = false;
435
506
  try {
436
507
  fs.lstatSync(snapshot.absolutePath);
@@ -693,6 +764,11 @@ export async function runWatchLoop(argv, parsed, deps, runtime) {
693
764
  const result = shouldRunFull
694
765
  ? await runGuarded(passArgv)
695
766
  : await runScopedDrain(pending.batch);
767
+ // The quarantine is scoped to the delete episode it refused. The batch
768
+ // carrying that episode has now been prepared and pushed, so a later
769
+ // removal under the same path is judged fresh — a root that never
770
+ // expired would silently refuse ordinary deletes from here on.
771
+ quarantinedDeleteRoots.clear();
696
772
  const exitCode = passExitCode(result);
697
773
  if (exitCode === runtime.authRequiredPassExit) {
698
774
  // The pass already emitted auth-error. Stop the unattended loop but
@@ -1 +1 @@
1
- {"version":3,"file":"sync-runner-watch-loop.js","sourceRoot":"","sources":["../../src/bin/sync-runner-watch-loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-runner-watch-loop.js","sourceRoot":"","sources":["../../src/bin/sync-runner-watch-loop.ts"],"names":[],"mappings":"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"}
@@ -6559,6 +6559,107 @@ describe("watcher delete intents without pre-seeded authorization", () => {
6559
6559
  expect(Object.keys(readJournal("indigo").files)).toHaveLength(12);
6560
6560
  await stopHarness(h);
6561
6561
  });
6562
+ // Chokidar (the Linux backend) reports every removed child through `unlink`
6563
+ // BEFORE the parent `unlinkDir`. Each descendant therefore persists its own
6564
+ // version-bound intent and hands a snapshot to the pending batch before the
6565
+ // directory expansion is ever seen, so a quarantine that only declines the
6566
+ // expansion leaves a whole `rm -rf` intent-backed — and
6567
+ // `HQ_SYNC_DELETE_POLICY=all`, which bypasses the engine breaker entirely,
6568
+ // would still delete the subtree without HQ_SYNC_DELETE_BULK_OVERRIDE.
6569
+ it("unlink-before-unlinkDir: the trip revokes intents descendants already recorded", async () => {
6570
+ const keys = Array.from({ length: 12 }, (_, i) => `knowledge/moved/f-${i}.md`);
6571
+ const h = startDeleteHarness(keys);
6572
+ await settle();
6573
+ const subtree = path.join(h.companyRoot, "knowledge/moved");
6574
+ const intentCount = () => Object.values(readJournal("indigo").files).filter((entry) => entry.localDeleteIntent).length;
6575
+ const childChanges = new Map();
6576
+ for (const key of keys) {
6577
+ const absolutePath = path.join(h.companyRoot, key);
6578
+ fs.unlinkSync(absolutePath);
6579
+ const snapshots = h.capture()(`companies/indigo/${key}`, "unlink");
6580
+ expect(snapshots).toHaveLength(1);
6581
+ childChanges.set(absolutePath, {
6582
+ kind: "unlink",
6583
+ deleteSnapshots: snapshots,
6584
+ });
6585
+ }
6586
+ expect(intentCount()).toBe(12);
6587
+ fs.rmSync(subtree, { recursive: true, force: true });
6588
+ const dirSnapshots = h.capture()("companies/indigo/knowledge/moved", "unlinkDir");
6589
+ expect(dirSnapshots).toHaveLength(0);
6590
+ expect(intentCount()).toBe(0);
6591
+ h.watcher.emit("companies/indigo/knowledge/moved", {
6592
+ paths: new Map([
6593
+ ...keys.map((key) => [
6594
+ path.join(h.companyRoot, key),
6595
+ `companies/indigo/${key}`,
6596
+ ]),
6597
+ [subtree, "companies/indigo/knowledge/moved"],
6598
+ ]),
6599
+ changes: new Map([
6600
+ ...childChanges,
6601
+ [subtree, { kind: "unlinkDir", deleteSnapshots: dirSnapshots }],
6602
+ ]),
6603
+ });
6604
+ h.tick();
6605
+ await settle();
6606
+ // The batch still carries the descendants' snapshots; preparing it must
6607
+ // not re-stamp the intents the trip revoked.
6608
+ expect(intentCount()).toBe(0);
6609
+ expect(h.remote.size).toBe(12);
6610
+ expect(Object.keys(readJournal("indigo").files)).toHaveLength(12);
6611
+ await stopHarness(h);
6612
+ });
6613
+ // The native macOS/Windows backends make no child-before-parent guarantee,
6614
+ // so the refusal has to hold for descendants that arrive after it too.
6615
+ it("a descendant unlink arriving after a refused unlinkDir records no intent", async () => {
6616
+ const keys = Array.from({ length: 12 }, (_, i) => `knowledge/moved/f-${i}.md`);
6617
+ const h = startDeleteHarness(keys);
6618
+ await settle();
6619
+ const subtree = path.join(h.companyRoot, "knowledge/moved");
6620
+ fs.rmSync(subtree, { recursive: true, force: true });
6621
+ expect(h.capture()("companies/indigo/knowledge/moved", "unlinkDir")).toHaveLength(0);
6622
+ expect(h.capture()(`companies/indigo/${keys[0]}`, "unlink")).toHaveLength(0);
6623
+ expect(readJournal("indigo").files[keys[0]]?.localDeleteIntent).toBeUndefined();
6624
+ await stopHarness(h);
6625
+ });
6626
+ // The quarantine must not reach past the episode it refused: an unexpired
6627
+ // root would silently swallow every later delete under that path.
6628
+ it("an ordinary delete under a previously refused root still propagates", async () => {
6629
+ const keys = Array.from({ length: 12 }, (_, i) => `knowledge/moved/f-${i}.md`);
6630
+ const h = startDeleteHarness(keys);
6631
+ await settle();
6632
+ const subtree = path.join(h.companyRoot, "knowledge/moved");
6633
+ fs.rmSync(subtree, { recursive: true, force: true });
6634
+ const dirSnapshots = h.capture()("companies/indigo/knowledge/moved", "unlinkDir");
6635
+ h.watcher.emit("companies/indigo/knowledge/moved", {
6636
+ paths: new Map([[subtree, "companies/indigo/knowledge/moved"]]),
6637
+ changes: new Map([
6638
+ [subtree, { kind: "unlinkDir", deleteSnapshots: dirSnapshots }],
6639
+ ]),
6640
+ });
6641
+ h.tick();
6642
+ await settle();
6643
+ expect(h.remote.size).toBe(12);
6644
+ // Next episode: one ordinary file removal under the same directory.
6645
+ const lonePath = path.join(h.companyRoot, keys[0]);
6646
+ fs.mkdirSync(path.dirname(lonePath), { recursive: true });
6647
+ fs.writeFileSync(lonePath, `synced:${keys[0]}`);
6648
+ fs.unlinkSync(lonePath);
6649
+ const snapshots = h.capture()(`companies/indigo/${keys[0]}`, "unlink");
6650
+ expect(snapshots).toHaveLength(1);
6651
+ h.watcher.emit(`companies/indigo/${keys[0]}`, {
6652
+ paths: new Map([[lonePath, `companies/indigo/${keys[0]}`]]),
6653
+ changes: new Map([
6654
+ [lonePath, { kind: "unlink", deleteSnapshots: snapshots }],
6655
+ ]),
6656
+ });
6657
+ h.tick();
6658
+ await settle();
6659
+ expect(h.remote.has(keys[0])).toBe(false);
6660
+ expect(h.remote.size).toBe(11);
6661
+ await stopHarness(h);
6662
+ });
6562
6663
  it("HQ_SYNC_DELETE_BULK_OVERRIDE=1 lets a whole-shard unlinkDir propagate", async () => {
6563
6664
  process.env.HQ_SYNC_DELETE_BULK_OVERRIDE = "1";
6564
6665
  try {