@indigoai-us/hq-cloud 6.14.12 → 6.14.14
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.
- package/.claude/policies/hq-cloud-strip-types-no-parameter-properties.md +22 -0
- package/dist/bin/sync-runner-company.d.ts.map +1 -1
- package/dist/bin/sync-runner-company.js +6 -0
- package/dist/bin/sync-runner-company.js.map +1 -1
- package/dist/bin/sync-runner-planning.d.ts.map +1 -1
- package/dist/bin/sync-runner-planning.js +3 -1
- package/dist/bin/sync-runner-planning.js.map +1 -1
- package/dist/bin/sync-runner-watch-loop.d.ts +10 -0
- package/dist/bin/sync-runner-watch-loop.d.ts.map +1 -1
- package/dist/bin/sync-runner-watch-loop.js +42 -3
- package/dist/bin/sync-runner-watch-loop.js.map +1 -1
- package/dist/bin/sync-runner-watch-routes.d.ts +1 -0
- package/dist/bin/sync-runner-watch-routes.d.ts.map +1 -1
- package/dist/bin/sync-runner-watch-routes.js +3 -0
- package/dist/bin/sync-runner-watch-routes.js.map +1 -1
- package/dist/bin/sync-runner.d.ts +17 -0
- package/dist/bin/sync-runner.d.ts.map +1 -1
- package/dist/bin/sync-runner.js +83 -33
- package/dist/bin/sync-runner.js.map +1 -1
- package/dist/bin/sync-runner.test.js +193 -5
- package/dist/bin/sync-runner.test.js.map +1 -1
- package/dist/cli/reindex.d.ts.map +1 -1
- package/dist/cli/reindex.js +23 -60
- package/dist/cli/reindex.js.map +1 -1
- package/dist/cli/reindex.test.d.ts +2 -2
- package/dist/cli/reindex.test.js +60 -109
- package/dist/cli/reindex.test.js.map +1 -1
- package/dist/cli/rescue.reindex.test.js +3 -2
- package/dist/cli/rescue.reindex.test.js.map +1 -1
- package/dist/cli/share.d.ts.map +1 -1
- package/dist/cli/share.js +12 -1
- package/dist/cli/share.js.map +1 -1
- package/dist/cli/share.test.js +14 -0
- package/dist/cli/share.test.js.map +1 -1
- package/dist/cli/sync.d.ts.map +1 -1
- package/dist/cli/sync.js +9 -1
- package/dist/cli/sync.js.map +1 -1
- package/dist/cli/sync.test.js +8 -0
- package/dist/cli/sync.test.js.map +1 -1
- package/dist/cognito-auth.d.ts +44 -12
- package/dist/cognito-auth.d.ts.map +1 -1
- package/dist/cognito-auth.js +440 -76
- package/dist/cognito-auth.js.map +1 -1
- package/dist/cognito-auth.test.js +174 -0
- package/dist/cognito-auth.test.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/machine-auth.test.js +683 -5
- package/dist/machine-auth.test.js.map +1 -1
- package/dist/vault-client.d.ts +2 -1
- package/dist/vault-client.d.ts.map +1 -1
- package/dist/vault-client.js +45 -9
- package/dist/vault-client.js.map +1 -1
- package/dist/vault-client.test.js +77 -7
- package/dist/vault-client.test.js.map +1 -1
- package/package.json +2 -1
- package/src/bin/sync-runner-company.ts +5 -0
- package/src/bin/sync-runner-planning.ts +2 -1
- package/src/bin/sync-runner-watch-loop.ts +51 -4
- package/src/bin/sync-runner-watch-routes.ts +2 -0
- package/src/bin/sync-runner.test.ts +244 -4
- package/src/bin/sync-runner.ts +99 -32
- package/src/cli/reindex.test.ts +63 -120
- package/src/cli/reindex.ts +23 -62
- package/src/cli/rescue.reindex.test.ts +3 -2
- package/src/cli/share.test.ts +20 -0
- package/src/cli/share.ts +7 -1
- package/src/cli/sync.test.ts +14 -0
- package/src/cli/sync.ts +5 -1
- package/src/cognito-auth.test.ts +227 -0
- package/src/cognito-auth.ts +533 -71
- package/src/index.ts +5 -1
- package/src/machine-auth.test.ts +808 -5
- package/src/vault-client.test.ts +100 -11
- package/src/vault-client.ts +55 -10
- package/test/share-sync.integration.test.ts +12 -9
package/dist/bin/sync-runner.js
CHANGED
|
@@ -60,7 +60,7 @@ import * as path from "path";
|
|
|
60
60
|
import * as fs from "fs";
|
|
61
61
|
import { randomUUID } from "node:crypto";
|
|
62
62
|
import { fileURLToPath } from "url";
|
|
63
|
-
import { getValidAccessToken, loadCachedTokens, VaultClient, VaultAuthError, } from "../index.js";
|
|
63
|
+
import { CognitoRefreshError, getValidAccessToken, invalidateCachedTokensByFingerprint, loadCachedTokens, VaultClient, VaultAuthError, } from "../index.js";
|
|
64
64
|
import { pickCanonicalPersonEntity } from "../vault-client.js";
|
|
65
65
|
import { resolvePullScope, readPinnedPrefixes, SESSIONS_SCOPE_PREFIX, } from "../sync/pull-scope.js";
|
|
66
66
|
import { PERSONAL_VAULT_EXCLUDED_TOP_LEVEL, computePersonalVaultPaths, } from "../personal-vault.js";
|
|
@@ -246,6 +246,13 @@ export { resolvePullScope, readPinnedPrefixes, SESSIONS_SCOPE_PREFIX };
|
|
|
246
246
|
* the tray can show its error banner before the user notices a delay.
|
|
247
247
|
*/
|
|
248
248
|
const MEMBERSHIPS_RETRY_BACKOFFS_MS = [50, 100];
|
|
249
|
+
const REAUTH_MESSAGE = "Your HQ session needs a quick refresh. Sign in again to keep sync moving.";
|
|
250
|
+
/**
|
|
251
|
+
* Internal-only result used between a watch pass and its owning loop. The
|
|
252
|
+
* outer process still exits 0 (auth-required is a handled UX state), while
|
|
253
|
+
* the loop stops instead of retrying a known-unusable session forever.
|
|
254
|
+
*/
|
|
255
|
+
export const AUTH_REQUIRED_PASS_EXIT = 18;
|
|
249
256
|
/**
|
|
250
257
|
* Call `listMyMemberships()` with up to 3 attempts and a small linear
|
|
251
258
|
* backoff between them. The single network call that drives every cloud
|
|
@@ -674,15 +681,25 @@ export async function runRunner(argv, deps = {}) {
|
|
|
674
681
|
// expired while the menubar was happily rotating the on-disk token).
|
|
675
682
|
const getAccessToken = deps.getAccessToken ??
|
|
676
683
|
(() => getValidAccessToken(DEFAULT_COGNITO, { interactive: false }));
|
|
684
|
+
const clearSession = deps.clearSession ?? invalidateCachedTokensByFingerprint;
|
|
677
685
|
try {
|
|
678
686
|
await getAccessToken();
|
|
679
687
|
}
|
|
680
688
|
catch (err) {
|
|
689
|
+
if ((err instanceof CognitoRefreshError && !err.requiresReauth) ||
|
|
690
|
+
isTransientNetworkError(err)) {
|
|
691
|
+
emit({
|
|
692
|
+
type: "error",
|
|
693
|
+
path: "(auth)",
|
|
694
|
+
message: err instanceof Error ? err.message : String(err),
|
|
695
|
+
});
|
|
696
|
+
return TRANSIENT_NETWORK_EXIT;
|
|
697
|
+
}
|
|
681
698
|
emit({
|
|
682
699
|
type: "auth-error",
|
|
683
|
-
message:
|
|
700
|
+
message: REAUTH_MESSAGE,
|
|
684
701
|
});
|
|
685
|
-
return 0;
|
|
702
|
+
return deps.authRequiredExitCode ?? 0;
|
|
686
703
|
}
|
|
687
704
|
// ---- vault client -----------------------------------------------------
|
|
688
705
|
// Stamp clientInfo so every vault request (incl. /sts/vend) carries
|
|
@@ -798,11 +815,12 @@ export async function runRunner(argv, deps = {}) {
|
|
|
798
815
|
}
|
|
799
816
|
catch (err) {
|
|
800
817
|
if (err instanceof VaultAuthError) {
|
|
818
|
+
clearSession(err.tokenFingerprint);
|
|
801
819
|
emit({
|
|
802
820
|
type: "auth-error",
|
|
803
|
-
message:
|
|
821
|
+
message: REAUTH_MESSAGE,
|
|
804
822
|
});
|
|
805
|
-
return 0;
|
|
823
|
+
return deps.authRequiredExitCode ?? 0;
|
|
806
824
|
}
|
|
807
825
|
// Surface the failure as an error event for observability either way.
|
|
808
826
|
emit({
|
|
@@ -819,15 +837,32 @@ export async function runRunner(argv, deps = {}) {
|
|
|
819
837
|
// is treated as a hard error (exit 1), as before.
|
|
820
838
|
return isTransientNetworkError(err) ? TRANSIENT_NETWORK_EXIT : 1;
|
|
821
839
|
}
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
840
|
+
let targetPlan;
|
|
841
|
+
try {
|
|
842
|
+
targetPlan = await buildFanoutPlan({
|
|
843
|
+
memberships,
|
|
844
|
+
companies: parsed.companies,
|
|
845
|
+
personal: parsed.personal,
|
|
846
|
+
skipPersonal: parsed.skipPersonal,
|
|
847
|
+
client,
|
|
848
|
+
claims,
|
|
849
|
+
resolveSkipPersonal,
|
|
850
|
+
});
|
|
851
|
+
}
|
|
852
|
+
catch (err) {
|
|
853
|
+
if (err instanceof VaultAuthError) {
|
|
854
|
+
clearSession(err.tokenFingerprint);
|
|
855
|
+
emit({ type: "auth-error", message: REAUTH_MESSAGE });
|
|
856
|
+
return deps.authRequiredExitCode ?? 0;
|
|
857
|
+
}
|
|
858
|
+
emit({
|
|
859
|
+
type: "error",
|
|
860
|
+
message: err instanceof Error ? err.message : String(err),
|
|
861
|
+
path: "(discovery)",
|
|
862
|
+
});
|
|
863
|
+
emitRunnerTerminalTelemetry({ status: "failed" });
|
|
864
|
+
return isTransientNetworkError(err) ? TRANSIENT_NETWORK_EXIT : 1;
|
|
865
|
+
}
|
|
831
866
|
if (targetPlan.status === "setup-needed") {
|
|
832
867
|
emit({ type: "setup-needed" });
|
|
833
868
|
return 0;
|
|
@@ -843,24 +878,35 @@ export async function runRunner(argv, deps = {}) {
|
|
|
843
878
|
// ---- fanout -----------------------------------------------------------
|
|
844
879
|
const syncFn = deps.sync ?? defaultSync;
|
|
845
880
|
const shareFn = deps.share ?? defaultShare;
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
881
|
+
let fanout;
|
|
882
|
+
try {
|
|
883
|
+
fanout = await executeCompanyFanout({
|
|
884
|
+
plan,
|
|
885
|
+
direction: parsed.direction,
|
|
886
|
+
hqRoot: parsed.hqRoot,
|
|
887
|
+
onConflict: parsed.onConflict,
|
|
888
|
+
client,
|
|
889
|
+
vaultConfig,
|
|
890
|
+
...(uploadAuthor ? { uploadAuthor } : {}),
|
|
891
|
+
...(deps.operationLockAlreadyHeld ? { operationLockAlreadyHeld: true } : {}),
|
|
892
|
+
syncFn,
|
|
893
|
+
shareFn,
|
|
894
|
+
resolveDeletePolicy,
|
|
895
|
+
emit,
|
|
896
|
+
scopePaths: parsed.scopePaths,
|
|
897
|
+
telemetryClient: client,
|
|
898
|
+
telemetryClaims: claims,
|
|
899
|
+
telemetrySessionId,
|
|
900
|
+
});
|
|
901
|
+
}
|
|
902
|
+
catch (err) {
|
|
903
|
+
if (err instanceof VaultAuthError) {
|
|
904
|
+
clearSession(err.tokenFingerprint);
|
|
905
|
+
emit({ type: "auth-error", message: REAUTH_MESSAGE });
|
|
906
|
+
return deps.authRequiredExitCode ?? 0;
|
|
907
|
+
}
|
|
908
|
+
throw err;
|
|
909
|
+
}
|
|
864
910
|
const { errors, allConflicts, meaningfulOutcomeCount } = fanout;
|
|
865
911
|
const rollup = rollupAllComplete(plan, fanout.stateByCompany);
|
|
866
912
|
// The personal-vault target runs last and can pull an older copy of the
|
|
@@ -1156,7 +1202,11 @@ const isDirectInvocation = (() => {
|
|
|
1156
1202
|
export async function runRunnerWithLoop(argv, deps = {}) {
|
|
1157
1203
|
const parsed = parseArgs(argv);
|
|
1158
1204
|
const runtime = {
|
|
1159
|
-
runPassWithOperationLockAlreadyHeld: (passArgv) => runRunner(passArgv, {
|
|
1205
|
+
runPassWithOperationLockAlreadyHeld: (passArgv) => runRunner(passArgv, {
|
|
1206
|
+
operationLockAlreadyHeld: true,
|
|
1207
|
+
authRequiredExitCode: AUTH_REQUIRED_PASS_EXIT,
|
|
1208
|
+
}),
|
|
1209
|
+
authRequiredPassExit: AUTH_REQUIRED_PASS_EXIT,
|
|
1160
1210
|
defaultGetIdTokenClaims,
|
|
1161
1211
|
defaultGetAccessToken: () => getValidAccessToken(DEFAULT_COGNITO, { interactive: false }),
|
|
1162
1212
|
apiUrl: DEFAULT_VAULT_API_URL,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-runner.js","sourceRoot":"","sources":["../../src/bin/sync-runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sync-runner.js","sourceRoot":"","sources":["../../src/bin/sync-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,9 +10,10 @@ import { describe, it, expect, vi, beforeEach, afterEach } from "vitest";
|
|
|
10
10
|
import * as fs from "fs";
|
|
11
11
|
import * as os from "os";
|
|
12
12
|
import * as path from "path";
|
|
13
|
-
import { runRunner, runRunnerWithLoop, resolveDeletePolicy, resolveSkipPersonal, selectObjectIOFactory, routeChangeToTarget, buildTargetedPushArgv, resolvePullScope, readPinnedPrefixes, SESSIONS_SCOPE_PREFIX, defaultCollectTelemetry, } from "./sync-runner.js";
|
|
13
|
+
import { runRunner, runRunnerWithLoop, resolveDeletePolicy, resolveSkipPersonal, selectObjectIOFactory, routeChangeToTarget, buildTargetedPushArgv, resolvePullScope, readPinnedPrefixes, SESSIONS_SCOPE_PREFIX, defaultCollectTelemetry, AUTH_REQUIRED_PASS_EXIT, } from "./sync-runner.js";
|
|
14
14
|
import { PresignObjectIO, S3SdkObjectIO } from "../object-io.js";
|
|
15
15
|
import { FakeClock } from "../watcher.js";
|
|
16
|
+
import { adaptivePollMs } from "./sync-runner-watch-loop.js";
|
|
16
17
|
import { PERSONAL_VAULT_JOURNAL_SLUG } from "../journal.js";
|
|
17
18
|
import { HQ_CLOUD_VERSION } from "../version.js";
|
|
18
19
|
import { lockPathFor, OPERATION_LOCKED_EXIT } from "../operation-lock.js";
|
|
@@ -20,6 +21,7 @@ import { TRANSIENT_NETWORK_EXIT } from "../lib/net-errors.js";
|
|
|
20
21
|
import { PARTIAL_SYNC_EXIT } from "../lib/exit-codes.js";
|
|
21
22
|
import { isCoveredByAny } from "../prefix-coalesce.js";
|
|
22
23
|
import { VaultAuthError, VaultNotFoundError } from "../vault-client.js";
|
|
24
|
+
import { CognitoRefreshError } from "../cognito-auth.js";
|
|
23
25
|
// ---------------------------------------------------------------------------
|
|
24
26
|
// Hermetic journal state — the runner now calls migratePersonalVaultJournal()
|
|
25
27
|
// on every --companies fanout (one-time seed of the reserved vault journal
|
|
@@ -136,6 +138,11 @@ function makeDeps(overrides = {}) {
|
|
|
136
138
|
// deps without each override re-wrapping.
|
|
137
139
|
return {
|
|
138
140
|
getAccessToken: vi.fn().mockResolvedValue("test-access-token"),
|
|
141
|
+
clearSession: vi.fn(),
|
|
142
|
+
// Keep tests isolated from the developer/agent token cache. Without this,
|
|
143
|
+
// an agent-shaped real idToken enables the post-sync AGENTS materializer
|
|
144
|
+
// and adds ambient diagnostic events to otherwise-hermetic assertions.
|
|
145
|
+
getIdTokenClaims: vi.fn().mockReturnValue(null),
|
|
139
146
|
createVaultClient: vi.fn().mockImplementation(() => makeVaultStub()),
|
|
140
147
|
sync: vi.fn().mockResolvedValue(defaultSyncResult()),
|
|
141
148
|
reindex: vi.fn(() => ({ status: 0 })),
|
|
@@ -204,10 +211,30 @@ describe("auth", () => {
|
|
|
204
211
|
expect(code).toBe(0);
|
|
205
212
|
// auth-error is an error-class event → stderr, not stdout
|
|
206
213
|
expect(deps.stderr.events()).toEqual([
|
|
207
|
-
{
|
|
214
|
+
{
|
|
215
|
+
type: "auth-error",
|
|
216
|
+
message: "Your HQ session needs a quick refresh. Sign in again to keep sync moving.",
|
|
217
|
+
},
|
|
208
218
|
]);
|
|
209
219
|
expect(deps.stdout.events()).toEqual([]);
|
|
210
220
|
});
|
|
221
|
+
it("keeps the watch pass retryable when initial refresh fails transiently", async () => {
|
|
222
|
+
const deps = makeDeps({
|
|
223
|
+
getAccessToken: vi
|
|
224
|
+
.fn()
|
|
225
|
+
.mockRejectedValue(new CognitoRefreshError("Cognito refresh request failed: ECONNRESET", false)),
|
|
226
|
+
});
|
|
227
|
+
const code = await runRunner(["--companies"], deps);
|
|
228
|
+
expect(code).toBe(TRANSIENT_NETWORK_EXIT);
|
|
229
|
+
expect(deps.stderr.events()).toEqual([
|
|
230
|
+
{
|
|
231
|
+
type: "error",
|
|
232
|
+
path: "(auth)",
|
|
233
|
+
message: "Cognito refresh request failed: ECONNRESET",
|
|
234
|
+
},
|
|
235
|
+
]);
|
|
236
|
+
expect(deps.clearSession).not.toHaveBeenCalled();
|
|
237
|
+
});
|
|
211
238
|
it("emits auth-error on stderr when VaultAuthError thrown during discovery", async () => {
|
|
212
239
|
const deps = makeDeps({
|
|
213
240
|
createVaultClient: () => ({
|
|
@@ -218,10 +245,30 @@ describe("auth", () => {
|
|
|
218
245
|
const code = await runRunner(["--companies"], deps);
|
|
219
246
|
expect(code).toBe(0);
|
|
220
247
|
expect(deps.stderr.events()).toEqual([
|
|
221
|
-
{
|
|
248
|
+
{
|
|
249
|
+
type: "auth-error",
|
|
250
|
+
message: "Your HQ session needs a quick refresh. Sign in again to keep sync moving.",
|
|
251
|
+
},
|
|
222
252
|
]);
|
|
253
|
+
expect(deps.clearSession).toHaveBeenCalledTimes(1);
|
|
223
254
|
expect(deps.stdout.events()).toEqual([]);
|
|
224
255
|
});
|
|
256
|
+
it("handles a typed 401 while planning the personal target", async () => {
|
|
257
|
+
const deps = makeDeps({
|
|
258
|
+
createVaultClient: () => makeVaultStub({
|
|
259
|
+
listPersons: () => Promise.reject(new VaultAuthError("personal lookup unauthorized")),
|
|
260
|
+
}),
|
|
261
|
+
});
|
|
262
|
+
const code = await runRunner(["--personal"], deps);
|
|
263
|
+
expect(code).toBe(0);
|
|
264
|
+
expect(deps.clearSession).toHaveBeenCalledTimes(1);
|
|
265
|
+
expect(deps.stderr.events()).toEqual([
|
|
266
|
+
{
|
|
267
|
+
type: "auth-error",
|
|
268
|
+
message: "Your HQ session needs a quick refresh. Sign in again to keep sync moving.",
|
|
269
|
+
},
|
|
270
|
+
]);
|
|
271
|
+
});
|
|
225
272
|
it("emits error event on stderr and returns 1 on non-auth discovery failure (after 3 attempts)", async () => {
|
|
226
273
|
let calls = 0;
|
|
227
274
|
const deps = makeDeps({
|
|
@@ -365,8 +412,12 @@ describe("memberships retry", () => {
|
|
|
365
412
|
// Auth failures don't retry — re-vending creds is the caller's job.
|
|
366
413
|
expect(listCalls).toBe(1);
|
|
367
414
|
expect(deps.stderr.events()).toEqual([
|
|
368
|
-
{
|
|
415
|
+
{
|
|
416
|
+
type: "auth-error",
|
|
417
|
+
message: "Your HQ session needs a quick refresh. Sign in again to keep sync moving.",
|
|
418
|
+
},
|
|
369
419
|
]);
|
|
420
|
+
expect(deps.clearSession).toHaveBeenCalledTimes(1);
|
|
370
421
|
});
|
|
371
422
|
it("single-company mode bypasses listMyMemberships entirely (no retry path triggered)", async () => {
|
|
372
423
|
let listCalls = 0;
|
|
@@ -1257,6 +1308,25 @@ describe("per-company fanout", () => {
|
|
|
1257
1308
|
expect(betaComplete).toBeDefined();
|
|
1258
1309
|
expect(betaComplete?.filesDownloaded).toBe(1);
|
|
1259
1310
|
});
|
|
1311
|
+
it("turns a typed mid-fanout 401 into one terminal auth-error", async () => {
|
|
1312
|
+
const deps = makeDeps({
|
|
1313
|
+
createVaultClient: () => makeVaultStub({
|
|
1314
|
+
memberships: [{ companyUid: "cmp_auth" }],
|
|
1315
|
+
entityGet: (uid) => Promise.resolve({ uid, slug: "auth-co" }),
|
|
1316
|
+
}),
|
|
1317
|
+
sync: vi.fn().mockRejectedValue(new VaultAuthError("expired access token")),
|
|
1318
|
+
});
|
|
1319
|
+
const code = await runRunner(["--companies"], deps);
|
|
1320
|
+
expect(code).toBe(0);
|
|
1321
|
+
expect(deps.clearSession).toHaveBeenCalledTimes(1);
|
|
1322
|
+
expect(deps.stderr.events()).toEqual([
|
|
1323
|
+
{
|
|
1324
|
+
type: "auth-error",
|
|
1325
|
+
message: "Your HQ session needs a quick refresh. Sign in again to keep sync moving.",
|
|
1326
|
+
},
|
|
1327
|
+
]);
|
|
1328
|
+
expect(deps.stdout.events().some((event) => event.type === "all-complete")).toBe(false);
|
|
1329
|
+
});
|
|
1260
1330
|
/**
|
|
1261
1331
|
* Regression test: AWS SDK v3 raises an opaque `UnknownError` (name and
|
|
1262
1332
|
* message both literally "UnknownError") when it cannot match a Node-side
|
|
@@ -2741,6 +2811,9 @@ describe("routeChangeToTarget", () => {
|
|
|
2741
2811
|
expect(routeChangeToTarget("companies")).toBeNull();
|
|
2742
2812
|
expect(routeChangeToTarget("companies/")).toBeNull();
|
|
2743
2813
|
});
|
|
2814
|
+
it("does not route the company scaffold to cloud sync", () => {
|
|
2815
|
+
expect(routeChangeToTarget("companies/_template/knowledge/README.md")).toBeNull();
|
|
2816
|
+
});
|
|
2744
2817
|
});
|
|
2745
2818
|
describe("buildTargetedPushArgv", () => {
|
|
2746
2819
|
it("company route → --company <slug> --direction push", () => {
|
|
@@ -2816,6 +2889,105 @@ function makeSteppableSleep() {
|
|
|
2816
2889
|
},
|
|
2817
2890
|
};
|
|
2818
2891
|
}
|
|
2892
|
+
// ---------------------------------------------------------------------------
|
|
2893
|
+
// Adaptive remote-poll backoff — whole-box CPU aware (no --poll-remote-ms)
|
|
2894
|
+
// ---------------------------------------------------------------------------
|
|
2895
|
+
describe("adaptivePollMs (whole-box CPU backoff)", () => {
|
|
2896
|
+
const FLOOR = 60_000;
|
|
2897
|
+
const CEIL = 600_000;
|
|
2898
|
+
it("returns the floor when the box is idle (load 0)", () => {
|
|
2899
|
+
expect(adaptivePollMs(0, 8)).toBe(FLOOR);
|
|
2900
|
+
});
|
|
2901
|
+
it("returns the ceiling when load equals the core count (fully saturated)", () => {
|
|
2902
|
+
expect(adaptivePollMs(8, 8)).toBe(CEIL);
|
|
2903
|
+
});
|
|
2904
|
+
it("clamps to the ceiling when load exceeds the core count", () => {
|
|
2905
|
+
expect(adaptivePollMs(64, 8)).toBe(CEIL);
|
|
2906
|
+
});
|
|
2907
|
+
it("scales linearly between floor and ceiling at half saturation", () => {
|
|
2908
|
+
// load 4 on 8 cores → ratio 0.5 → midpoint of [60s, 600s] = 330s.
|
|
2909
|
+
expect(adaptivePollMs(4, 8)).toBe(330_000);
|
|
2910
|
+
});
|
|
2911
|
+
it("treats a negative load sample as idle (defensive)", () => {
|
|
2912
|
+
expect(adaptivePollMs(-1, 8)).toBe(FLOOR);
|
|
2913
|
+
});
|
|
2914
|
+
it("guards a zero/absent core count without dividing by zero", () => {
|
|
2915
|
+
// cores coerced to 1; load 1 → fully saturated → ceil.
|
|
2916
|
+
expect(adaptivePollMs(1, 0)).toBe(CEIL);
|
|
2917
|
+
});
|
|
2918
|
+
it("honors custom floor/ceil bounds", () => {
|
|
2919
|
+
expect(adaptivePollMs(0, 4, 30_000, 300_000)).toBe(30_000);
|
|
2920
|
+
expect(adaptivePollMs(4, 4, 30_000, 300_000)).toBe(300_000);
|
|
2921
|
+
});
|
|
2922
|
+
});
|
|
2923
|
+
describe("runRunnerWithLoop — adaptive poll interval (no --poll-remote-ms)", () => {
|
|
2924
|
+
// Capture the ms handed to sleep on the FIRST poll, then hang so the loop
|
|
2925
|
+
// parks until shutdown (mirrors the never-resolving sleep the other loop
|
|
2926
|
+
// tests use).
|
|
2927
|
+
function makeCapturingSleep() {
|
|
2928
|
+
const calls = [];
|
|
2929
|
+
return {
|
|
2930
|
+
calls,
|
|
2931
|
+
sleep: (ms) => {
|
|
2932
|
+
calls.push(ms);
|
|
2933
|
+
return new Promise(() => { });
|
|
2934
|
+
},
|
|
2935
|
+
};
|
|
2936
|
+
}
|
|
2937
|
+
it("sleeps the floor interval when the box is idle", async () => {
|
|
2938
|
+
const { calls, sleep } = makeCapturingSleep();
|
|
2939
|
+
let triggerShutdown = () => { };
|
|
2940
|
+
const loop = runRunnerWithLoop(["--companies", "--watch", "--hq-root", "/tmp/hq"], {
|
|
2941
|
+
runPass: vi.fn().mockResolvedValue(0),
|
|
2942
|
+
sleep,
|
|
2943
|
+
sampleLoadAvg: () => 0,
|
|
2944
|
+
onShutdownSignal: (handler) => {
|
|
2945
|
+
triggerShutdown = handler;
|
|
2946
|
+
return () => { };
|
|
2947
|
+
},
|
|
2948
|
+
});
|
|
2949
|
+
await flushLoopMicrotasks();
|
|
2950
|
+
expect(calls[0]).toBe(60_000);
|
|
2951
|
+
triggerShutdown();
|
|
2952
|
+
await loop;
|
|
2953
|
+
});
|
|
2954
|
+
it("backs off to the ceiling interval when the box is fully loaded", async () => {
|
|
2955
|
+
const { calls, sleep } = makeCapturingSleep();
|
|
2956
|
+
let triggerShutdown = () => { };
|
|
2957
|
+
const loop = runRunnerWithLoop(["--companies", "--watch", "--hq-root", "/tmp/hq"], {
|
|
2958
|
+
runPass: vi.fn().mockResolvedValue(0),
|
|
2959
|
+
sleep,
|
|
2960
|
+
sampleLoadAvg: () => 1_000, // far above any core count → clamps to ceil
|
|
2961
|
+
onShutdownSignal: (handler) => {
|
|
2962
|
+
triggerShutdown = handler;
|
|
2963
|
+
return () => { };
|
|
2964
|
+
},
|
|
2965
|
+
});
|
|
2966
|
+
await flushLoopMicrotasks();
|
|
2967
|
+
expect(calls[0]).toBe(600_000);
|
|
2968
|
+
triggerShutdown();
|
|
2969
|
+
await loop;
|
|
2970
|
+
});
|
|
2971
|
+
it("an explicit --poll-remote-ms pins a fixed interval and ignores load", async () => {
|
|
2972
|
+
const { calls, sleep } = makeCapturingSleep();
|
|
2973
|
+
const sampleLoadAvg = vi.fn(() => 1_000);
|
|
2974
|
+
let triggerShutdown = () => { };
|
|
2975
|
+
const loop = runRunnerWithLoop(["--companies", "--watch", "--poll-remote-ms", "123456", "--hq-root", "/tmp/hq"], {
|
|
2976
|
+
runPass: vi.fn().mockResolvedValue(0),
|
|
2977
|
+
sleep,
|
|
2978
|
+
sampleLoadAvg,
|
|
2979
|
+
onShutdownSignal: (handler) => {
|
|
2980
|
+
triggerShutdown = handler;
|
|
2981
|
+
return () => { };
|
|
2982
|
+
},
|
|
2983
|
+
});
|
|
2984
|
+
await flushLoopMicrotasks();
|
|
2985
|
+
expect(calls[0]).toBe(123456);
|
|
2986
|
+
expect(sampleLoadAvg).not.toHaveBeenCalled();
|
|
2987
|
+
triggerShutdown();
|
|
2988
|
+
await loop;
|
|
2989
|
+
});
|
|
2990
|
+
});
|
|
2819
2991
|
describe("runRunnerWithLoop — event-push wiring", () => {
|
|
2820
2992
|
it("starts the watcher alongside the poll loop when --event-push is on", async () => {
|
|
2821
2993
|
const watcher = makeWatcherStub();
|
|
@@ -3080,6 +3252,22 @@ describe("runRunnerWithLoop — event-push wiring", () => {
|
|
|
3080
3252
|
expect(code).toBe(1);
|
|
3081
3253
|
expect(watcher.disposed).toBe(true);
|
|
3082
3254
|
});
|
|
3255
|
+
it("an exit-0 auth-required pass stops the unattended loop without reporting a crash", async () => {
|
|
3256
|
+
const watcher = makeWatcherStub();
|
|
3257
|
+
const runPass = vi.fn().mockResolvedValue(AUTH_REQUIRED_PASS_EXIT);
|
|
3258
|
+
const sleep = vi.fn().mockResolvedValue(undefined);
|
|
3259
|
+
const code = await runRunnerWithLoop(["--companies", "--watch", "--event-push", "--hq-root", "/tmp/hq"], {
|
|
3260
|
+
runPass,
|
|
3261
|
+
sleep,
|
|
3262
|
+
clock: new FakeClock(),
|
|
3263
|
+
createWatcher: () => watcher,
|
|
3264
|
+
onShutdownSignal: () => () => { },
|
|
3265
|
+
});
|
|
3266
|
+
expect(code).toBe(0);
|
|
3267
|
+
expect(runPass).toHaveBeenCalledTimes(1);
|
|
3268
|
+
expect(sleep).not.toHaveBeenCalled();
|
|
3269
|
+
expect(watcher.disposed).toBe(true);
|
|
3270
|
+
});
|
|
3083
3271
|
it("a TRANSIENT_NETWORK_EXIT poll pass does NOT surface as a crash — the loop retries (HQ-SYNC-1W)", async () => {
|
|
3084
3272
|
// A transient offline blip must keep the watcher alive: the loop logs and
|
|
3085
3273
|
// polls again instead of returning the code and letting the process exit
|
|
@@ -3109,7 +3297,7 @@ describe("runRunnerWithLoop — event-push wiring", () => {
|
|
|
3109
3297
|
});
|
|
3110
3298
|
it("a PARTIAL_SYNC_EXIT poll pass does NOT surface as a crash — the loop retries", async () => {
|
|
3111
3299
|
// A partial pass (some per-file transfers threw: oversized object on an
|
|
3112
|
-
// old runner, presign denial,
|
|
3300
|
+
// old runner, presign denial, corrupt vault key) must keep
|
|
3113
3301
|
// the watcher alive. Exiting on it got the watcher hot-respawned by the
|
|
3114
3302
|
// menubar supervisor and Sentry-captured on EVERY failing pass — the
|
|
3115
3303
|
// July 2026 "watcher exited unexpectedly (code=Some(2))" alert flood. The
|