@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.
Files changed (78) hide show
  1. package/.claude/policies/hq-cloud-strip-types-no-parameter-properties.md +22 -0
  2. package/dist/bin/sync-runner-company.d.ts.map +1 -1
  3. package/dist/bin/sync-runner-company.js +6 -0
  4. package/dist/bin/sync-runner-company.js.map +1 -1
  5. package/dist/bin/sync-runner-planning.d.ts.map +1 -1
  6. package/dist/bin/sync-runner-planning.js +3 -1
  7. package/dist/bin/sync-runner-planning.js.map +1 -1
  8. package/dist/bin/sync-runner-watch-loop.d.ts +10 -0
  9. package/dist/bin/sync-runner-watch-loop.d.ts.map +1 -1
  10. package/dist/bin/sync-runner-watch-loop.js +42 -3
  11. package/dist/bin/sync-runner-watch-loop.js.map +1 -1
  12. package/dist/bin/sync-runner-watch-routes.d.ts +1 -0
  13. package/dist/bin/sync-runner-watch-routes.d.ts.map +1 -1
  14. package/dist/bin/sync-runner-watch-routes.js +3 -0
  15. package/dist/bin/sync-runner-watch-routes.js.map +1 -1
  16. package/dist/bin/sync-runner.d.ts +17 -0
  17. package/dist/bin/sync-runner.d.ts.map +1 -1
  18. package/dist/bin/sync-runner.js +83 -33
  19. package/dist/bin/sync-runner.js.map +1 -1
  20. package/dist/bin/sync-runner.test.js +193 -5
  21. package/dist/bin/sync-runner.test.js.map +1 -1
  22. package/dist/cli/reindex.d.ts.map +1 -1
  23. package/dist/cli/reindex.js +23 -60
  24. package/dist/cli/reindex.js.map +1 -1
  25. package/dist/cli/reindex.test.d.ts +2 -2
  26. package/dist/cli/reindex.test.js +60 -109
  27. package/dist/cli/reindex.test.js.map +1 -1
  28. package/dist/cli/rescue.reindex.test.js +3 -2
  29. package/dist/cli/rescue.reindex.test.js.map +1 -1
  30. package/dist/cli/share.d.ts.map +1 -1
  31. package/dist/cli/share.js +12 -1
  32. package/dist/cli/share.js.map +1 -1
  33. package/dist/cli/share.test.js +14 -0
  34. package/dist/cli/share.test.js.map +1 -1
  35. package/dist/cli/sync.d.ts.map +1 -1
  36. package/dist/cli/sync.js +9 -1
  37. package/dist/cli/sync.js.map +1 -1
  38. package/dist/cli/sync.test.js +8 -0
  39. package/dist/cli/sync.test.js.map +1 -1
  40. package/dist/cognito-auth.d.ts +44 -12
  41. package/dist/cognito-auth.d.ts.map +1 -1
  42. package/dist/cognito-auth.js +440 -76
  43. package/dist/cognito-auth.js.map +1 -1
  44. package/dist/cognito-auth.test.js +174 -0
  45. package/dist/cognito-auth.test.js.map +1 -1
  46. package/dist/index.d.ts +1 -1
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +3 -2
  49. package/dist/index.js.map +1 -1
  50. package/dist/machine-auth.test.js +683 -5
  51. package/dist/machine-auth.test.js.map +1 -1
  52. package/dist/vault-client.d.ts +2 -1
  53. package/dist/vault-client.d.ts.map +1 -1
  54. package/dist/vault-client.js +45 -9
  55. package/dist/vault-client.js.map +1 -1
  56. package/dist/vault-client.test.js +77 -7
  57. package/dist/vault-client.test.js.map +1 -1
  58. package/package.json +2 -1
  59. package/src/bin/sync-runner-company.ts +5 -0
  60. package/src/bin/sync-runner-planning.ts +2 -1
  61. package/src/bin/sync-runner-watch-loop.ts +51 -4
  62. package/src/bin/sync-runner-watch-routes.ts +2 -0
  63. package/src/bin/sync-runner.test.ts +244 -4
  64. package/src/bin/sync-runner.ts +99 -32
  65. package/src/cli/reindex.test.ts +63 -120
  66. package/src/cli/reindex.ts +23 -62
  67. package/src/cli/rescue.reindex.test.ts +3 -2
  68. package/src/cli/share.test.ts +20 -0
  69. package/src/cli/share.ts +7 -1
  70. package/src/cli/sync.test.ts +14 -0
  71. package/src/cli/sync.ts +5 -1
  72. package/src/cognito-auth.test.ts +227 -0
  73. package/src/cognito-auth.ts +533 -71
  74. package/src/index.ts +5 -1
  75. package/src/machine-auth.test.ts +808 -5
  76. package/src/vault-client.test.ts +100 -11
  77. package/src/vault-client.ts +55 -10
  78. package/test/share-sync.integration.test.ts +12 -9
@@ -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: err instanceof Error ? err.message : String(err),
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: err.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
- const targetPlan = await buildFanoutPlan({
823
- memberships,
824
- companies: parsed.companies,
825
- personal: parsed.personal,
826
- skipPersonal: parsed.skipPersonal,
827
- client,
828
- claims,
829
- resolveSkipPersonal,
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
- const fanout = await executeCompanyFanout({
847
- plan,
848
- direction: parsed.direction,
849
- hqRoot: parsed.hqRoot,
850
- onConflict: parsed.onConflict,
851
- client,
852
- vaultConfig,
853
- ...(uploadAuthor ? { uploadAuthor } : {}),
854
- ...(deps.operationLockAlreadyHeld ? { operationLockAlreadyHeld: true } : {}),
855
- syncFn,
856
- shareFn,
857
- resolveDeletePolicy,
858
- emit,
859
- scopePaths: parsed.scopePaths,
860
- telemetryClient: client,
861
- telemetryClaims: claims,
862
- telemetrySessionId,
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, { operationLockAlreadyHeld: true }),
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":";AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,mCAAmC,EACnC,gBAAgB,EAChB,WAAW,EACX,cAAc,GASf,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,GAEtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,iCAAiC,EACjC,yBAAyB,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,IAAI,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAMrD,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAIxD,OAAO,EACL,kBAAkB,EAClB,sBAAsB,GAGvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAM9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EACL,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAOzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EACL,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,eAAe,EACf,cAAc,EACd,wBAAwB,GACzB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,wBAAwB,GAEzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,2BAA2B,EAC3B,YAAY,GACb,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,+BAA+B,CAAC;AAgBvC,8EAA8E;AAC9E,wEAAwE;AACxE,0EAA0E;AAC1E,yEAAyE;AACzE,8BAA8B;AAC9B,8EAA8E;AAE9E,MAAM,eAAe,GAAsB;IACzC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,WAAW;IAC7C,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,sBAAsB;IACvE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,4BAA4B;IAC1E,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB;QACxC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;QAC9C,CAAC,CAAC,IAAI;CACT,CAAC;AAEF,MAAM,qBAAqB,GACzB,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,2BAA2B,CAAC;AAE9D,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;AACtD,MAAM,4BAA4B,GAAG,OAAO,CAAC;AAE7C,SAAS,yBAAyB,CAAC,QAAiB;IAClD,IAAI,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QACzE,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IACD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;IAChD,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC;YAAE,OAAO,MAAM,CAAC;IAC5D,CAAC;IACD,OAAO,4BAA4B,CAAC;AACtC,CAAC;AAED,KAAK,UAAU,yBAAyB,CACtC,SAAwB,EACxB,SAAiB,EACjB,SAAqB;IAErB,IAAI,OAAkD,CAAC;IACvD,MAAM,cAAc,GAAG,IAAI,OAAO,CAAY,CAAC,OAAO,EAAE,EAAE;QACxD,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;QAC1D,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;IACpB,CAAC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;QAChC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAe,CAAC;QACrC,cAAc;KACf,CAAC,CAAC;IACH,IAAI,OAAO;QAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,MAAM,KAAK,SAAS;QAAE,SAAS,EAAE,CAAC;AACxC,CAAC;AAyBD,MAAM,UAAU,mBAAmB;IACjC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAC9C,IAAI,GAAG,KAAK,YAAY,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,gBAAgB,EAAE,CAAC;QACtE,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAa;IAC/C,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACpE,OAAO,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,KAAK,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAuC;IAEvC,IACE,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU;QACpC,OAAO,MAAM,CAAC,SAAS,KAAK,UAAU,EACtC,CAAC;QACD,OAAO,sBAAsB,CAAC,MAAgC,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,iEAAiE;AACjE,6EAA6E;AAC7E,2EAA2E;AAC3E,gCAAgC;AAChC,OAAO,EAAE,iCAAiC,EAAE,yBAAyB,EAAE,CAAC;AAmKxE,SAAS,YAAY,CAAC,GAAY;IAChC,MAAM,OAAO,GAA4B,EAAE,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;IACzE,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;QACzB,IAAI,GAAG,CAAC,IAAI;YAAE,OAAO,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACtC,MAAM,IAAI,GAAI,GAA6B,CAAC,IAAI,CAAC;QACjD,IAAI,IAAI;YAAE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAChC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,8BAA8B,CACrC,MAAoD;IAEpD,OAAO,CAAC,UAAU,EAAE,EAAE;QACpB,IAAI,CAAC;YACH,MAAM,OAAO,GAA4B;gBACvC,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE,IAAI;gBAChB,SAAS,EAAE,UAAU,CAAC,SAAS;gBAC/B,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,IAAI,EAAE,IAAI,UAAU,CAAC,SAAS,GAAG;gBACjC,OAAO,EACL,UAAU,CAAC,GAAG,KAAK,SAAS;oBAC1B,CAAC,CAAC,UAAU,CAAC,OAAO;oBACpB,CAAC,CAAC,GAAG,UAAU,CAAC,OAAO,KAAK,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;gBAC/D,GAAG,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC;aAC9B,CAAC;YACF,IAAI,UAAU,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;gBACjC,OAAO,CAAC,GAAG,GAAG,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAC7C,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/C,CAAC;QAAC,MAAM,CAAC;YACP,uDAAuD;QACzD,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,0EAA0E;AAC1E,0EAA0E;AAC1E,6EAA6E;AAC7E,yEAAyE;AACzE,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,CAAC;AAGvE;;;;;;;GAOG;AACH,MAAM,6BAA6B,GAAsB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;AAEnE,MAAM,cAAc,GAClB,2EAA2E,CAAC;AAE9E;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAE1C;;;;;;;;;;GAUG;AACH,KAAK,UAAU,wBAAwB,CACrC,MAA0B;IAE1B,IAAI,OAAgB,CAAC;IACrB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC;QAC7C,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAChB,MAAM,OAAO,GAAG,6BAA6B,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC;YAClE,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACrE,CAAC;QACD,IAAI,CAAC;YACH,OAAO,MAAM,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC1C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,cAAc;gBAAE,MAAM,GAAG,CAAC;YAC7C,OAAO,GAAG,GAAG,CAAC;QAChB,CAAC;IACH,CAAC;IACD,MAAM,OAAO,CAAC;AAChB,CAAC;AAgFD,8EAA8E;AAC9E,8EAA8E;AAC9E,yEAAyE;AACzE,2EAA2E;AAC3E,6EAA6E;AAC7E,6EAA6E;AAC7E,oDAAoD;AACpD,8EAA8E;AAE9E,SAAS,eAAe,CAAC,GAAW;IAClC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACpE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAkB,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB;IAC9B,MAAM,MAAM,GAAyB,gBAAgB,EAAE,CAAC;IACxD,IAAI,CAAC,MAAM,EAAE,OAAO;QAAE,OAAO,IAAI,CAAC;IAClC,OAAO,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,uBAAuB,CAAC,OAAe;IAC9C,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrD,OAAO,wCAAwC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,aAAa,CAC1B,MAA0B,EAC1B,MAAqB,EACrB,MAAoD;IAEpD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,2BAA2B,EAAE,CAAC;QAC3D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEjC,MAAM,WAAW,GACf,MAAM,CAAC,IAAI;YACX,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YACjE,MAAM,CAAC,KAAK;YACZ,EAAE,CAAC;QACL,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;QAClC,IAAI,CAAC,QAAQ,IAAI,CAAC,WAAW,EAAE,CAAC;YAC9B,MAAM,CAAC,KAAK,CACV,mEAAmE,CACpE,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC;YAC/C,QAAQ;YACR,WAAW;SACZ,CAAC,CAAC;QACH,MAAM,MAAM,CAAC,0BAA0B,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,CAAC,KAAK,CAAC,yCAAyC,GAAG,IAAI,CAAC,CAAC;IACjE,CAAC;AACH,CAAC;AAqDD,SAAS,SAAS,CAAC,IAAc;IAC/B,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,OAA2B,CAAC;IAChC,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,UAAU,GAAqB,OAAO,CAAC;IAC3C,IAAI,MAAM,GAAG,eAAe,CAAC;IAC7B,IAAI,SAAS,GAAc,MAAM,CAAC;IAClC,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,YAAgC,CAAC;IACrC,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,cAAkC,CAAC;IAEvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,aAAa;gBAChB,SAAS,GAAG,IAAI,CAAC;gBACjB,MAAM;YACR,KAAK,WAAW;gBACd,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACpB,IAAI,CAAC,OAAO;oBAAE,OAAO,EAAE,KAAK,EAAE,4BAA4B,EAAE,CAAC;gBAC7D,MAAM;YACR,KAAK,YAAY;gBACf,kEAAkE;gBAClE,sEAAsE;gBACtE,gEAAgE;gBAChE,gEAAgE;gBAChE,mDAAmD;gBACnD,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM;YACR,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACtB,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;oBAC7D,OAAO;wBACL,KAAK,EAAE,2DAA2D,GAAG,IAAI,WAAW,EAAE;qBACvF,CAAC;gBACJ,CAAC;gBACD,UAAU,GAAG,GAAG,CAAC;gBACjB,MAAM;YACR,CAAC;YACD,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACtB,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;oBACvD,OAAO;wBACL,KAAK,EAAE,mDAAmD,GAAG,IAAI,WAAW,EAAE;qBAC/E,CAAC;gBACJ,CAAC;gBACD,SAAS,GAAG,GAAG,CAAC;gBAChB,MAAM;YACR,CAAC;YACD,KAAK,WAAW;gBACd,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnB,IAAI,CAAC,MAAM;oBAAE,OAAO,EAAE,KAAK,EAAE,4BAA4B,EAAE,CAAC;gBAC5D,MAAM;YACR,KAAK,SAAS;gBACZ,KAAK,GAAG,IAAI,CAAC;gBACb,MAAM;YACR,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACtB,IAAI,CAAC,GAAG;oBAAE,OAAO,EAAE,KAAK,EAAE,mCAAmC,EAAE,CAAC;gBAChE,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBACtB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,OAAO;wBACL,KAAK,EAAE,0DAA0D,GAAG,EAAE;qBACvE,CAAC;gBACJ,CAAC;gBACD,YAAY,GAAG,CAAC,CAAC;gBACjB,MAAM;YACR,CAAC;YACD,KAAK,QAAQ;gBACX,yDAAyD;gBACzD,MAAM;YACR,KAAK,iBAAiB;gBACpB,0DAA0D;gBAC1D,gEAAgE;gBAChE,yBAAyB;gBACzB,YAAY,GAAG,IAAI,CAAC;gBACpB,MAAM;YACR,KAAK,cAAc;gBACjB,qEAAqE;gBACrE,+DAA+D;gBAC/D,kDAAkD;gBAClD,SAAS,GAAG,IAAI,CAAC;gBACjB,MAAM;YACR,KAAK,cAAc,CAAC,CAAC,CAAC;gBACpB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACtB,IAAI,CAAC,GAAG;oBAAE,OAAO,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAAC;gBAC5D,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACrB,MAAM;YACR,CAAC;YACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACtB,IAAI,CAAC,GAAG;oBAAE,OAAO,EAAE,KAAK,EAAE,2CAA2C,EAAE,CAAC;gBACxE,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBACtB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBAClC,OAAO;wBACL,KAAK,EAAE,iEAAiE,GAAG,EAAE;qBAC9E,CAAC;gBACJ,CAAC;gBACD,cAAc,GAAG,CAAC,CAAC;gBACnB,MAAM;YACR,CAAC;YACD;gBACE,OAAO,EAAE,KAAK,EAAE,qBAAqB,GAAG,EAAE,EAAE,CAAC;QACjD,CAAC;IACH,CAAC;IAED,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,gDAAgD,EAAE,CAAC;IACrE,CAAC;IACD,IAAI,QAAQ,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,EAAE,CAAC;QACvC,OAAO;YACL,KAAK,EAAE,+DAA+D;SACvE,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,IAAI,YAAY,EAAE,CAAC;QAC7B,OAAO;YACL,KAAK,EAAE,kDAAkD;SAC1D,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;QACxC,OAAO,EAAE,KAAK,EAAE,mDAAmD,EAAE,CAAC;IACxE,CAAC;IACD,IAAI,YAAY,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE,CAAC;QACzC,OAAO,EAAE,KAAK,EAAE,mCAAmC,EAAE,CAAC;IACxD,CAAC;IACD,IAAI,SAAS,IAAI,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAAC;IACpD,CAAC;IAED,OAAO;QACL,SAAS;QACT,OAAO;QACP,QAAQ;QACR,UAAU;QACV,MAAM;QACN,SAAS;QACT,KAAK;QACL,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,SAAS;QACT,cAAc;KACf,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,0EAA0E;AAC1E,qEAAqE;AACrE,4EAA4E;AAC5E,sEAAsE;AACtE,wDAAwD;AACxD,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAA0B,EAC1B,YAAqB,EACrB,MAAc,EACd,mBAA6C,GAAG,EAAE,CAAC,SAAS;IAE5D,IAAI,YAAY;QAAE,OAAO;IAEzB,yEAAyE;IACzE,4EAA4E;IAC5E,6EAA6E;IAC7E,6EAA6E;IAC7E,4EAA4E;IAC5E,6EAA6E;IAC7E,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,4EAA4E;IAC5E,6EAA6E;IAC7E,6EAA6E;IAC7E,0EAA0E;IAC1E,6EAA6E;IAC7E,0EAA0E;IAC1E,6EAA6E;IAC7E,mEAAmE;IACnE,0EAA0E;IAC1E,2EAA2E;IAC3E,2EAA2E;IAC3E,oEAAoE;IACpE,+CAA+C;IAC/C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,yBAAyB,CAAC,OAAO,CAAC,KAAK,IAAI;YAAE,OAAO;IAC1D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,gBAAgB,CAAC;YACf,SAAS,EAAE,WAAW;YACtB,KAAK,EAAE,sCAAsC;YAC7C,OAAO,EAAE,0DAA0D;YACnE,GAAG;YACH,OAAO,EAAE,EAAE,MAAM,EAAE;SACpB,CAAC,CAAC;QACH,gEAAgE;IAClE,CAAC;IAED,sEAAsE;IACtE,oEAAoE;IACpE,oEAAoE;IACpE,sEAAsE;IACtE,oEAAoE;IACpE,wDAAwD;IACxD,EAAE;IACF,uEAAuE;IACvE,0EAA0E;IAC1E,yEAAyE;IACzE,kCAAkC;IAClC,EAAE;IACF,uEAAuE;IACvE,qDAAqD;IACrD,IAAI,SAAiB,CAAC;IACtB,IAAI,gBAAwB,CAAC;IAC7B,IAAI,CAAC;QACH,SAAS,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;QACzC,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,UAAU,CAAC;IACpE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,gBAAgB,CAAC;YACf,SAAS,EAAE,WAAW;YACtB,KAAK,EAAE,kCAAkC;YACzC,OAAO,EAAE,0DAA0D;YACnE,GAAG;YACH,OAAO,EAAE,EAAE,MAAM,EAAE;SACpB,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,uBAAuB,CAAC;YAC5B,oEAAoE;YACpE,qEAAqE;YACrE,yDAAyD;YACzD,MAAM,EAAE,MAA4E;YACpF,SAAS;YACT,gBAAgB;YAChB,oEAAoE;YACpE,mEAAmE;YACnE,gCAAgC;YAChC,MAAM;YACN,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CACf,gBAAgB,CAAC;gBACf,SAAS,EAAE,WAAW;gBACtB,KAAK,EAAE,iCAAiC;gBACxC,OAAO;gBACP,OAAO,EAAE,EAAE,MAAM,EAAE;aACpB,CAAC;SACL,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,gBAAgB,CAAC;YACf,SAAS,EAAE,WAAW;YACtB,KAAK,EAAE,+BAA+B;YACtC,OAAO,EAAE,iCAAiC;YAC1C,GAAG;YACH,OAAO,EAAE,EAAE,MAAM,EAAE;SACpB,CAAC,CAAC;QACH,iDAAiD;IACnD,CAAC;IAED,0EAA0E;IAC1E,sEAAsE;IACtE,IAAI,CAAC;QACH,MAAM,4BAA4B,CAAC;YACjC,MAAM,EAAE,MAAiF;YACzF,SAAS;YACT,gBAAgB;YAChB,wEAAwE;YACxE,uEAAuE;YACvE,MAAM;YACN,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CACf,gBAAgB,CAAC;gBACf,SAAS,EAAE,WAAW;gBACtB,KAAK,EAAE,iCAAiC;gBACxC,OAAO;gBACP,OAAO,EAAE,EAAE,MAAM,EAAE;aACpB,CAAC;SACL,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,gBAAgB,CAAC;YACf,SAAS,EAAE,WAAW;YACtB,KAAK,EAAE,+BAA+B;YACtC,OAAO,EAAE,iCAAiC;YAC1C,GAAG;YACH,OAAO,EAAE,EAAE,MAAM,EAAE;SACpB,CAAC,CAAC;QACH,iDAAiD;IACnD,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,kCAAkC;AAClC,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,IAAc,EACd,OAAmB,EAAE;IAErB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAC7C,MAAM,gBAAgB,GAAG,8BAA8B,CAAC,MAAM,CAAC,CAAC;IAEhE,4EAA4E;IAC5E,8DAA8D;IAC9D,EAAE;IACF,wEAAwE;IACxE,oEAAoE;IACpE,uEAAuE;IACvE,sEAAsE;IACtE,uEAAuE;IACvE,oEAAoE;IACpE,sCAAsC;IACtC,EAAE;IACF,mEAAmE;IACnE,wEAAwE;IACxE,mEAAmE;IACnE,oEAAoE;IACpE,6DAA6D;IAC7D,EAAE;IACF,kEAAkE;IAClE,kEAAkE;IAClE,kEAAkE;IAClE,kEAAkE;IAClE,oCAAoC;IACpC,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAErD,0EAA0E;IAC1E,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;QACtB,MAAM,CAAC,KAAK,CAAC,mBAAmB,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;QAClD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,0EAA0E;IAC1E,4EAA4E;IAC5E,2EAA2E;IAC3E,0EAA0E;IAC1E,yEAAyE;IACzE,wEAAwE;IACxE,yEAAyE;IACzE,yEAAyE;IACzE,sEAAsE;IACtE,qEAAqE;IACrE,MAAM,cAAc,GAClB,IAAI,CAAC,cAAc;QACnB,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,eAAe,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IACvE,MAAM,YAAY,GAChB,IAAI,CAAC,YAAY,IAAI,mCAAmC,CAAC;IAC3D,IAAI,CAAC;QACH,MAAM,cAAc,EAAE,CAAC;IACzB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IACE,CAAC,GAAG,YAAY,mBAAmB,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC;YAC3D,uBAAuB,CAAC,GAAG,CAAC,EAC5B,CAAC;YACD,IAAI,CAAC;gBACH,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aAC1D,CAAC,CAAC;YACH,OAAO,sBAAsB,CAAC;QAChC,CAAC;QACD,IAAI,CAAC;YACH,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,cAAc;SACxB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,oBAAoB,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,0EAA0E;IAC1E,oEAAoE;IACpE,yEAAyE;IACzE,yEAAyE;IACzE,mEAAmE;IACnE,yEAAyE;IACzE,2EAA2E;IAC3E,2CAA2C;IAC3C,MAAM,WAAW,GAAuB;QACtC,MAAM,EAAE,qBAAqB;QAC7B,SAAS,EAAE,cAAc;QACzB,MAAM,EAAE,eAAe,CAAC,MAAM;QAC9B,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,gBAAgB,EAAE;KAC3D,CAAC;IACF,MAAM,MAAM,GACV,IAAI,CAAC,iBAAiB,EAAE,CAAC,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,WAAW,CAAC,CAAC;IAExE,yEAAyE;IACzE,iEAAiE;IACjE,0EAA0E;IAC1E,kBAAkB;IAClB,gFAAgF;IAChF,0EAA0E;IAC1E,iDAAiD;IACjD,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,IAAI,uBAAuB,CAAC;IACnE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,YAAY,GAChB,MAAM,EAAE,GAAG,IAAI,MAAM,EAAE,KAAK;QAC1B,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE;QAC9C,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,kBAAkB,GAAG,QAAQ,UAAU,EAAE,EAAE,CAAC;IAClD,KAAK,kBAAkB,CACrB,MAAM,EACN;QACE,SAAS,EAAE,6BAA6B;QACxC,MAAM,EAAE,aAAa;QACrB,SAAS,EAAE,kBAAkB;QAC7B,UAAU,EAAE;YACV,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,UAAU,EAAE,MAAM,CAAC,QAAQ;gBACzB,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,MAAM,CAAC,OAAO;oBACd,CAAC,CAAC,gBAAgB;oBAClB,CAAC,CAAC,WAAW;YACjB,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;YACjD,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;YACzD,cAAc,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC;SAC/C;KACF,EACD;QACE,MAAM;QACN,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CACf,gBAAgB,CAAC;YACf,SAAS,EAAE,kBAAkB;YAC7B,KAAK,EAAE,kCAAkC;YACzC,OAAO;YACP,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE;SACnC,CAAC;KACL,CACF,CAAC;IAEF,MAAM,2BAA2B,GAAG,CAAC,UASpC,EAAQ,EAAE;QACT,KAAK,kBAAkB,CACrB,MAAM,EACN;YACE,SAAS,EAAE,uBAAuB;YAClC,MAAM,EAAE,aAAa;YACrB,SAAS,EAAE,kBAAkB;YAC7B,UAAU;SACX,EACD;YACE,MAAM;YACN,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CACf,gBAAgB,CAAC;gBACf,SAAS,EAAE,kBAAkB;gBAC7B,KAAK,EAAE,kCAAkC;gBACzC,OAAO;gBACP,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE;aACnC,CAAC;SACL,CACF,CAAC;IACJ,CAAC,CAAC;IAEF,8EAA8E;IAC9E,yEAAyE;IACzE,4EAA4E;IAC5E,6EAA6E;IAC7E,+EAA+E;IAC/E,8EAA8E;IAC9E,6EAA6E;IAC7E,0EAA0E;IAC1E,qDAAqD;IACrD,MAAM,cAAc,GAAG,MAAyC,CAAC;IACjE,MAAM,eAAe,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;IAC9D,kBAAkB,CAAC,eAAe,CAAC,CAAC;IACpC,2EAA2E;IAC3E,2EAA2E;IAC3E,uEAAuE;IACvE,4EAA4E;IAC5E,2EAA2E;IAC3E,oEAAoE;IACpE,6EAA6E;IAC7E,yEAAyE;IACzE,8EAA8E;IAC9E,2EAA2E;IAC3E,WAAW,CAAC,uBAAuB,GAAG,eAAe,KAAK,IAAI,CAAC;IAE/D,0EAA0E;IAC1E,IAAI,WAA6C,CAAC;IAClD,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,wBAAwB,CAAC;YAChD,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM;YACN,MAAM;YACN,MAAM;YACN,aAAa;YACb,eAAe,EAAE,wBAAwB;SAC1C,CAAC,CAAC;QACH,IAAI,UAAU,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;YACzC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;YAC/B,OAAO,CAAC,CAAC;QACX,CAAC;QACD,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;IACvC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,cAAc,EAAE,CAAC;YAClC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACnC,IAAI,CAAC;gBACH,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,cAAc;aACxB,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,oBAAoB,IAAI,CAAC,CAAC;QACxC,CAAC;QACD,sEAAsE;QACtE,IAAI,CAAC;YACH,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;YACzD,IAAI,EAAE,aAAa;SACpB,CAAC,CAAC;QACH,2BAA2B,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;QAClD,oEAAoE;QACpE,2EAA2E;QAC3E,2EAA2E;QAC3E,2EAA2E;QAC3E,4EAA4E;QAC5E,kDAAkD;QAClD,OAAO,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,UAAuD,CAAC;IAC5D,IAAI,CAAC;QACH,UAAU,GAAG,MAAM,eAAe,CAAC;YACjC,WAAW;YACX,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,MAAM;YACN,MAAM;YACN,mBAAmB;SACpB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,cAAc,EAAE,CAAC;YAClC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACnC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC,oBAAoB,IAAI,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,CAAC;YACH,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;YACzD,IAAI,EAAE,aAAa;SACpB,CAAC,CAAC;QACH,2BAA2B,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;QAClD,OAAO,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;QACzC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QAC/B,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAE7B,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAE3B,uEAAuE;IACvE,yEAAyE;IACzE,0EAA0E;IAC1E,uEAAuE;IACvE,iEAAiE;IACjE,2BAA2B,EAAE,CAAC;IAE9B,0EAA0E;IAC1E,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,IAAI,WAAW,CAAC;IACxC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,IAAI,YAAY,CAAC;IAC3C,IAAI,MAAwD,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,oBAAoB,CAAC;YAClC,IAAI;YACJ,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,MAAM;YACN,WAAW;YACX,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,MAAM;YACN,OAAO;YACP,mBAAmB;YACnB,IAAI;YACJ,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,eAAe,EAAE,MAAM;YACvB,eAAe,EAAE,MAAM;YACvB,kBAAkB;SACnB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,cAAc,EAAE,CAAC;YAClC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACnC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC,oBAAoB,IAAI,CAAC,CAAC;QACxC,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,sBAAsB,EAAE,GAAG,MAAM,CAAC;IAChE,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;IAE9D,wEAAwE;IACxE,2EAA2E;IAC3E,yEAAyE;IACzE,IAAI,MAAM,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,qBAAqB,GAAG,IAAI,GAAG,CACnC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;iBACxC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC;iBAClD,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CACzB,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,wBAAwB,CAAC,CAAC;gBACzD,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAE,IAAI;gBACb,qBAAqB;gBACrB,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG;aAC7B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,gBAAgB,CAAC;gBACf,SAAS,EAAE,oBAAoB;gBAC/B,KAAK,EAAE,kCAAkC;gBACzC,OAAO,EAAE,4CAA4C;gBACrD,GAAG;gBACH,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;aACnC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,cAAc,GAAG;gBACrB,QAAQ,EAAE,MAAM,CAAC,MAAM;gBACvB,GAAG,CAAC,IAAI,CAAC,wBAAwB,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtE,CAAC;YACF,MAAM,aAAa,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,cAAc,CAAC,CAAC,cAAc,CAAC,CAAC;YACvE,KAAK,kBAAkB,CACrB,MAAM,EACN;gBACE,SAAS,EAAE,aAAa;gBACxB,MAAM,EAAE,aAAa;gBACrB,SAAS,EAAE,kBAAkB;gBAC7B,UAAU,EAAE;oBACV,MAAM,EAAE,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;oBAC3D,UAAU,EAAE,aAAa,CAAC,MAAM;oBAChC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM;oBACxC,UAAU,EACR,IAAI,CAAC,wBAAwB,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW;iBACnE;aACF,EACD;gBACE,MAAM;gBACN,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CACf,gBAAgB,CAAC;oBACf,SAAS,EAAE,kBAAkB;oBAC7B,KAAK,EAAE,kCAAkC;oBACzC,OAAO;oBACP,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE;iBACnC,CAAC;aACL,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,gBAAgB,CAAC;gBACf,SAAS,EAAE,gBAAgB;gBAC3B,KAAK,EAAE,8BAA8B;gBACrC,OAAO,EAAE,mCAAmC;gBAC5C,GAAG;gBACH,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;aACnC,CAAC,CAAC;YACH,KAAK,kBAAkB,CACrB,MAAM,EACN;gBACE,SAAS,EAAE,aAAa;gBACxB,MAAM,EAAE,aAAa;gBACrB,SAAS,EAAE,kBAAkB;gBAC7B,UAAU,EAAE;oBACV,MAAM,EAAE,OAAO;oBACf,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM;oBACxC,UAAU,EACR,IAAI,CAAC,wBAAwB,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW;iBACnE;aACF,EACD;gBACE,MAAM;gBACN,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CACf,gBAAgB,CAAC;oBACf,SAAS,EAAE,kBAAkB;oBAC7B,KAAK,EAAE,kCAAkC;oBACzC,OAAO;oBACP,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE;iBACnC,CAAC;aACL,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,0EAA0E;IAC1E,MAAM,yBAAyB,CAC7B,aAAa,CAAC;QACZ,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;QACvC,uBAAuB,EAAE,GAAG,EAAE,CAC5B,uBAAuB,CACrB,MAAM,EACN,IAAI,CAAC,iBAAiB,KAAK,SAAS,EACpC,MAAM,CAAC,MAAM,EACb,gBAAgB,CACjB;QACH,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CACf,gBAAgB,CAAC;YACf,SAAS,EAAE,WAAW;YACtB,KAAK,EAAE,mCAAmC;YAC1C,OAAO,EAAE,4BAA4B;YACrC,GAAG;YACH,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;SACnC,CAAC;KACL,CAAC,EACF,yBAAyB,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAClD,GAAG,EAAE,CACH,gBAAgB,CAAC;QACf,SAAS,EAAE,WAAW;QACtB,KAAK,EAAE,0BAA0B;QACjC,OAAO,EAAE,2DAA2D;QACpE,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;KACnC,CAAC,CACL,CAAC;IAEF,IAAI,CAAC;QACH,IAAI,EAAE,cAAc;QACpB,kBAAkB,EAAE,IAAI,CAAC,MAAM;QAC/B,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,eAAe,EAAE,MAAM,CAAC,oBAAoB;QAC5C,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,aAAa,EAAE,MAAM,CAAC,kBAAkB;QACxC,aAAa,EAAE,YAAY;QAC3B,MAAM;QACN,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC;IACH,IACE,MAAM,CAAC,OAAO;QACd,MAAM,CAAC,MAAM,GAAG,CAAC;QACjB,sBAAsB,GAAG,CAAC,EAC1B,CAAC;QACD,2BAA2B,CAAC;YAC1B,MAAM,EAAE,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW;YACrE,cAAc,EAAE,IAAI,CAAC,MAAM;YAC3B,YAAY,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM;YACrC,UAAU,EAAE,MAAM,CAAC,MAAM;YACzB,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,eAAe,EAAE,MAAM,CAAC,oBAAoB;YAC5C,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,aAAa,EAAE,MAAM,CAAC,kBAAkB;SACzC,CAAC,CAAC;IACL,CAAC;IAED,sEAAsE;IACtE,yEAAyE;IACzE,uEAAuE;IACvE,wEAAwE;IACxE,0EAA0E;IAC1E,6EAA6E;IAC7E,MAAM,eAAe,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAC5E,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,KAAK,GAAG,EAAE,CAAC;QAC7E,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,gBAAgB,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE;gBACrE,YAAY,EAAE,eAAe;gBAC7B,sBAAsB,EAAE,IAAI;gBAC5B,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CACxC,gBAAgB,CAAC;oBACf,SAAS,EAAE,aAAa;oBACxB,KAAK;oBACL,OAAO;oBACP,GAAG;oBACH,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE;iBACvD,CAAC;aACL,CAAC,CAAC;YACH,KAAK,kBAAkB,CACrB,MAAM,EACN;gBACE,SAAS,EAAE,iBAAiB;gBAC5B,MAAM,EAAE,aAAa;gBACrB,SAAS,EAAE,kBAAkB;gBAC7B,UAAU,EAAE;oBACV,MAAM,EAAE,WAAW;oBACnB,YAAY,EAAE,eAAe,CAAC,MAAM;oBACpC,QAAQ,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa;oBAC9D,qBAAqB,EAAE,SAAS,CAAC,gBAAgB,CAAC,MAAM;oBACxD,WAAW,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW;oBACxD,UAAU,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc;oBAC5D,UAAU,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO;iBAC/D;aACF,EACD;gBACE,MAAM;gBACN,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CACf,gBAAgB,CAAC;oBACf,SAAS,EAAE,kBAAkB;oBAC7B,KAAK,EAAE,kCAAkC;oBACzC,OAAO;oBACP,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE;iBACnC,CAAC;aACL,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,gBAAgB,CAAC;gBACf,SAAS,EAAE,aAAa;gBACxB,KAAK,EAAE,2BAA2B;gBAClC,OAAO,EAAE,6BAA6B;gBACtC,GAAG;gBACH,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;aACnC,CAAC,CAAC;YACH,2DAA2D;YAC3D,KAAK,kBAAkB,CACrB,MAAM,EACN;gBACE,SAAS,EAAE,iBAAiB;gBAC5B,MAAM,EAAE,aAAa;gBACrB,SAAS,EAAE,kBAAkB;gBAC7B,UAAU,EAAE;oBACV,MAAM,EAAE,OAAO;oBACf,YAAY,EAAE,eAAe,CAAC,MAAM;iBACrC;aACF,EACD;gBACE,MAAM;gBACN,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CACf,gBAAgB,CAAC;oBACf,SAAS,EAAE,kBAAkB;oBAC7B,KAAK,EAAE,kCAAkC;oBACzC,OAAO;oBACP,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE;iBACnC,CAAC;aACL,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,4EAA4E;IAC5E,0EAA0E;IAC1E,wEAAwE;IACxE,sEAAsE;IACtE,2EAA2E;IAC3E,2EAA2E;IAC3E,sEAAsE;IACtE,+BAA+B;IAC/B,IAAI,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,GAAG,EAAE,CAAC;QAClD,IAAI,CAAC;YACH,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,gBAAgB,CAAC;gBACf,SAAS,EAAE,gBAAgB;gBAC3B,KAAK,EAAE,oCAAoC;gBAC3C,OAAO,EAAE,uCAAuC;gBAChD,GAAG;gBACH,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;aACnC,CAAC,CAAC;YACH,iEAAiE;QACnE,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,6EAA6E;IAC7E,uEAAuE;IACvE,qEAAqE;IACrE,sEAAsE;IACtE,8DAA8D;IAC9D,8EAA8E;IAC9E,yEAAyE;IACzE,oCAAoC;IACpC,IACE,MAAM,EAAE,CAAC,mBAAmB,CAAC,KAAK,OAAO;QACzC,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,GAAG,EAC9C,CAAC;QACD,IAAI,CAAC;YACH,sBAAsB,CAAC;gBACrB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CACxC,gBAAgB,CAAC;oBACf,SAAS,EAAE,0BAA0B;oBACrC,KAAK;oBACL,OAAO;oBACP,GAAG;oBACH,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE;iBACvD,CAAC;aACL,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,gBAAgB,CAAC;gBACf,SAAS,EAAE,0BAA0B;gBACrC,KAAK,EAAE,wCAAwC;gBAC/C,OAAO,EAAE,0DAA0D;gBACnE,GAAG;gBACH,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;aACnC,CAAC,CAAC;YACH,iEAAiE;QACnE,CAAC;IACH,CAAC;IAED,gEAAgE;IAChE,4EAA4E;IAC5E,4EAA4E;IAC5E,yEAAyE;IACzE,yEAAyE;IACzE,8EAA8E;IAC9E,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,8EAA8E;AAC9E,4EAA4E;AAC5E,8EAA8E;AAE9E,mEAAmE;AACnE,wEAAwE;AACxE,wEAAwE;AACxE,wEAAwE;AACxE,8DAA8D;AAC9D,wEAAwE;AACxE,EAAE;AACF,yEAAyE;AACzE,yEAAyE;AACzE,mEAAmE;AACnE,8CAA8C;AAC9C,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE;IAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,OAAO,UAAU,KAAK,QAAQ,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC,EAAE,CAAC;AA+HL,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAc,EACd,OAAuB,EAAE;IAEzB,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,OAAO,GAAG;QACd,mCAAmC,EAAE,CAAC,QAAkB,EAAE,EAAE,CAC1D,SAAS,CAAC,QAAQ,EAAE;YAClB,wBAAwB,EAAE,IAAI;YAC9B,oBAAoB,EAAE,uBAAuB;SAC9C,CAAC;QACJ,oBAAoB,EAAE,uBAAuB;QAC7C,uBAAuB;QACvB,qBAAqB,EAAE,GAAG,EAAE,CAC1B,mBAAmB,CAAC,eAAe,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QAC9D,MAAM,EAAE,qBAAqB;QAC7B,MAAM,EAAE,eAAe,CAAC,MAAM;KAC/B,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,IAAI,OAAO,IAAI,MAAM;YAAE,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9C,OAAO,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,OAAO,IAAI,MAAM;QAAE,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;IAC9C,OAAO,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AACnD,CAAC;AAED,IAAI,kBAAkB,EAAE,CAAC;IACvB,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACrC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAClC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,qEAAqE;QACrE,yEAAyE;QACzE,sEAAsE;QACtE,0EAA0E;QAC1E,wCAAwC;QACxC,uBAAuB,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -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
- { type: "auth-error", message: "no cached tokens" },
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
- { type: "auth-error", message: "token expired" },
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
- { type: "auth-error", message: "token expired" },
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, expired token, corrupt vault key) must keep
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