@indigoai-us/hq-cloud 6.15.81 → 6.15.83

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 (91) hide show
  1. package/dist/backup-prune.d.ts +18 -0
  2. package/dist/backup-prune.d.ts.map +1 -1
  3. package/dist/backup-prune.js +20 -0
  4. package/dist/backup-prune.js.map +1 -1
  5. package/dist/backup-prune.test.js +30 -1
  6. package/dist/backup-prune.test.js.map +1 -1
  7. package/dist/bin/backup-prune-runner.d.ts +4 -1
  8. package/dist/bin/backup-prune-runner.d.ts.map +1 -1
  9. package/dist/bin/backup-prune-runner.js +61 -38
  10. package/dist/bin/backup-prune-runner.js.map +1 -1
  11. package/dist/bin/backup-prune-runner.test.d.ts +2 -0
  12. package/dist/bin/backup-prune-runner.test.d.ts.map +1 -0
  13. package/dist/bin/backup-prune-runner.test.js +22 -0
  14. package/dist/bin/backup-prune-runner.test.js.map +1 -0
  15. package/dist/bin/layout-compatibility.d.ts +12 -0
  16. package/dist/bin/layout-compatibility.d.ts.map +1 -0
  17. package/dist/bin/layout-compatibility.js +50 -0
  18. package/dist/bin/layout-compatibility.js.map +1 -0
  19. package/dist/bin/layout-compatibility.test.d.ts +2 -0
  20. package/dist/bin/layout-compatibility.test.d.ts.map +1 -0
  21. package/dist/bin/layout-compatibility.test.js +87 -0
  22. package/dist/bin/layout-compatibility.test.js.map +1 -0
  23. package/dist/bin/sync-runner-watch-loop.d.ts +2 -0
  24. package/dist/bin/sync-runner-watch-loop.d.ts.map +1 -1
  25. package/dist/bin/sync-runner-watch-loop.js +81 -13
  26. package/dist/bin/sync-runner-watch-loop.js.map +1 -1
  27. package/dist/bin/sync-runner.d.ts.map +1 -1
  28. package/dist/bin/sync-runner.js +11 -1
  29. package/dist/bin/sync-runner.js.map +1 -1
  30. package/dist/bin/sync-runner.test.js +254 -2
  31. package/dist/bin/sync-runner.test.js.map +1 -1
  32. package/dist/index.d.ts +2 -2
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +1 -1
  35. package/dist/index.js.map +1 -1
  36. package/dist/journal.d.ts +18 -0
  37. package/dist/journal.d.ts.map +1 -1
  38. package/dist/journal.js +41 -17
  39. package/dist/journal.js.map +1 -1
  40. package/dist/journal.test.js +8 -1
  41. package/dist/journal.test.js.map +1 -1
  42. package/dist/outposts/self-deploy.d.ts.map +1 -1
  43. package/dist/outposts/self-deploy.js +10 -1
  44. package/dist/outposts/self-deploy.js.map +1 -1
  45. package/dist/outposts/self-deploy.test.js +4 -1
  46. package/dist/outposts/self-deploy.test.js.map +1 -1
  47. package/dist/sync/area-ledger-migration.d.ts +8 -1
  48. package/dist/sync/area-ledger-migration.d.ts.map +1 -1
  49. package/dist/sync/area-ledger-migration.js +23 -0
  50. package/dist/sync/area-ledger-migration.js.map +1 -1
  51. package/dist/sync/area-ledger-migration.test.js +20 -0
  52. package/dist/sync/area-ledger-migration.test.js.map +1 -1
  53. package/dist/sync/area-ledger.d.ts +10 -0
  54. package/dist/sync/area-ledger.d.ts.map +1 -1
  55. package/dist/sync/area-ledger.js +11 -0
  56. package/dist/sync/area-ledger.js.map +1 -1
  57. package/dist/sync/feature-flags.d.ts +20 -0
  58. package/dist/sync/feature-flags.d.ts.map +1 -1
  59. package/dist/sync/feature-flags.js +25 -0
  60. package/dist/sync/feature-flags.js.map +1 -1
  61. package/dist/sync/feature-flags.test.js +28 -1
  62. package/dist/sync/feature-flags.test.js.map +1 -1
  63. package/dist/sync/index.d.ts +6 -0
  64. package/dist/sync/index.d.ts.map +1 -1
  65. package/dist/sync/index.js +3 -0
  66. package/dist/sync/index.js.map +1 -1
  67. package/dist/sync/layout-compatibility.d.ts +17 -0
  68. package/dist/sync/layout-compatibility.d.ts.map +1 -0
  69. package/dist/sync/layout-compatibility.js +29 -0
  70. package/dist/sync/layout-compatibility.js.map +1 -0
  71. package/dist/sync/per-area-maintenance.d.ts +45 -0
  72. package/dist/sync/per-area-maintenance.d.ts.map +1 -0
  73. package/dist/sync/per-area-maintenance.js +131 -0
  74. package/dist/sync/per-area-maintenance.js.map +1 -0
  75. package/dist/sync/per-area-maintenance.test.d.ts +2 -0
  76. package/dist/sync/per-area-maintenance.test.d.ts.map +1 -0
  77. package/dist/sync/per-area-maintenance.test.js +100 -0
  78. package/dist/sync/per-area-maintenance.test.js.map +1 -0
  79. package/dist/sync/realtime-telemetry.d.ts +49 -0
  80. package/dist/sync/realtime-telemetry.d.ts.map +1 -0
  81. package/dist/sync/realtime-telemetry.js +101 -0
  82. package/dist/sync/realtime-telemetry.js.map +1 -0
  83. package/dist/sync/realtime-telemetry.test.d.ts +2 -0
  84. package/dist/sync/realtime-telemetry.test.d.ts.map +1 -0
  85. package/dist/sync/realtime-telemetry.test.js +64 -0
  86. package/dist/sync/realtime-telemetry.test.js.map +1 -0
  87. package/dist/sync/state-store.d.ts +10 -0
  88. package/dist/sync/state-store.d.ts.map +1 -1
  89. package/dist/sync/state-store.js +18 -0
  90. package/dist/sync/state-store.js.map +1 -1
  91. package/package.json +3 -2
@@ -25,7 +25,7 @@ import { mkdtempSync, rmSync, writeFileSync } from "node:fs";
25
25
  import { tmpdir } from "node:os";
26
26
  import path from "node:path";
27
27
  import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
28
- import { EVENT_SYNC_LOCAL_DISABLE_ENV_VAR, isEventSyncLocallyDisabled, isParallelCoordinatorEnabled, PARALLEL_COORDINATOR_ENV_VAR, } from "./feature-flags.js";
28
+ import { AREA_STORAGE_ENV_VAR, EVENT_SYNC_LOCAL_DISABLE_ENV_VAR, isAreaStorageEnabled, isEventSyncLocallyDisabled, isParallelCoordinatorEnabled, PARALLEL_COORDINATOR_ENV_VAR, resolveParallelSyncRollout, } from "./feature-flags.js";
29
29
  import { HttpPushTransport, NoopPushTransport, getPublishFailureOutcome, getPublishSuccessOutcome, } from "./push-transport.js";
30
30
  import { decodePushEvent } from "./push-event.js";
31
31
  import { PushEventEmitter } from "../watcher.js";
@@ -78,6 +78,33 @@ describe("Parallel coordinator local control", () => {
78
78
  expect(isParallelCoordinatorEnabled("anything else")).toBe(false);
79
79
  });
80
80
  it.each(["1", "true", "yes", "on", " TRUE "])("accepts %j as an explicit opt-in", (value) => expect(isParallelCoordinatorEnabled(value)).toBe(true));
81
+ it("keeps area storage and parallel execution independently switchable", () => {
82
+ expect(AREA_STORAGE_ENV_VAR).toBe("HQ_SYNC_AREA_STORAGE");
83
+ expect(isAreaStorageEnabled(undefined)).toBe(false);
84
+ expect(resolveParallelSyncRollout({})).toEqual({
85
+ areaStorageEnabled: false,
86
+ parallelExecutionEnabled: false,
87
+ executionMode: "dual-layout-serialized-bridge",
88
+ });
89
+ expect(resolveParallelSyncRollout({ [AREA_STORAGE_ENV_VAR]: "on" })).toEqual({
90
+ areaStorageEnabled: true,
91
+ parallelExecutionEnabled: false,
92
+ executionMode: "dual-layout-serialized-bridge",
93
+ });
94
+ expect(resolveParallelSyncRollout({ [PARALLEL_COORDINATOR_ENV_VAR]: "on" })).toEqual({
95
+ areaStorageEnabled: false,
96
+ parallelExecutionEnabled: true,
97
+ executionMode: "parallel",
98
+ });
99
+ expect(resolveParallelSyncRollout({
100
+ [AREA_STORAGE_ENV_VAR]: "on",
101
+ [PARALLEL_COORDINATOR_ENV_VAR]: "on",
102
+ })).toEqual({
103
+ areaStorageEnabled: true,
104
+ parallelExecutionEnabled: true,
105
+ executionMode: "parallel",
106
+ });
107
+ });
81
108
  });
82
109
  // ─── 2. POST (HttpPushTransport) ──────────────────────────────────────────────
83
110
  describe("HttpPushTransport — POST /sync/push", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"feature-flags.test.js","sourceRoot":"","sources":["../../src/sync/feature-flags.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature-flags.test.js","sourceRoot":"","sources":["../../src/sync/feature-flags.test.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,12 @@ export type { PushEvent, PushEventInput, PushEventDecodeIssue, } from "./push-ev
9
9
  export { NoopPushTransport, HttpPushTransport } from "./push-transport.js";
10
10
  export type { PushTransport, HttpPushTransportOptions, AuthTokenSource, FetchLike, } from "./push-transport.js";
11
11
  export { EVENT_SYNC_LOCAL_DISABLE_ENV_VAR, isEventSyncLocallyDisabled, StaticFlagProvider, } from "./feature-flags.js";
12
+ export { AREA_STORAGE_ENV_VAR, PARALLEL_COORDINATOR_ENV_VAR, isAreaStorageEnabled, isParallelCoordinatorEnabled, resolveParallelSyncRollout, } from "./feature-flags.js";
13
+ export type { ParallelSyncRollout } from "./feature-flags.js";
14
+ export { REALTIME_TELEMETRY_EVENT, REALTIME_TELEMETRY_SCHEMA_VERSION, RealtimeTelemetrySpan, assertRealtimeTelemetryLowCardinality } from "./realtime-telemetry.js";
15
+ export type { RealtimeTelemetryRecord, RealtimeTimingStage } from "./realtime-telemetry.js";
16
+ export { resolveLayoutCompatibility } from "./layout-compatibility.js";
17
+ export type { LauncherPinKind, LayoutCompatibility } from "./layout-compatibility.js";
12
18
  export type { EventDrivenPushFlagProvider, FlagProviderWarnFn, EnvTenantListFlagProviderOptions, } from "./feature-flags.js";
13
19
  export { NoopPushReceiver, SqsPushReceiver, InMemoryFanout, InMemoryPushReceiver, createPushReceiver, DEFAULT_RECEIVER_DISPOSE_DRAIN_MS, DEFAULT_WAIT_TIME_SECONDS, DEFAULT_MAX_MESSAGES, DEFAULT_RECEIVER_BATCH_MAX_PATHS, DEFAULT_RECEIVER_DRAIN_MAX_MESSAGES, } from "./push-receiver.js";
14
20
  export type { PushReceiver, PushReceiverContext, PushReceiverBatchContext, SyncEngineFn, SyncBatchEngineFn, PublishMetricFn, ReceiverLogger, SqsClientLike, SqsMessageLike, SqsPushReceiverOptions, InMemoryPushReceiverOptions, CreatePushReceiverOptions, } from "./push-receiver.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sync/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sync/index.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,9 @@
7
7
  export { CONTENT_HASH_PATTERN, ISO8601_DATETIME_PATTERN, PushEventSchema, PushEventDecodeError, encodePushEvent, decodePushEvent, } from "./push-event.js";
8
8
  export { NoopPushTransport, HttpPushTransport } from "./push-transport.js";
9
9
  export { EVENT_SYNC_LOCAL_DISABLE_ENV_VAR, isEventSyncLocallyDisabled, StaticFlagProvider, } from "./feature-flags.js";
10
+ export { AREA_STORAGE_ENV_VAR, PARALLEL_COORDINATOR_ENV_VAR, isAreaStorageEnabled, isParallelCoordinatorEnabled, resolveParallelSyncRollout, } from "./feature-flags.js";
11
+ export { REALTIME_TELEMETRY_EVENT, REALTIME_TELEMETRY_SCHEMA_VERSION, RealtimeTelemetrySpan, assertRealtimeTelemetryLowCardinality } from "./realtime-telemetry.js";
12
+ export { resolveLayoutCompatibility } from "./layout-compatibility.js";
10
13
  export { NoopPushReceiver, SqsPushReceiver, InMemoryFanout, InMemoryPushReceiver, createPushReceiver, DEFAULT_RECEIVER_DISPOSE_DRAIN_MS, DEFAULT_WAIT_TIME_SECONDS, DEFAULT_MAX_MESSAGES, DEFAULT_RECEIVER_BATCH_MAX_PATHS, DEFAULT_RECEIVER_DRAIN_MAX_MESSAGES, } from "./push-receiver.js";
11
14
  export { SYNC_METRIC_NAMESPACE, SYNC_LATENCY_METRIC_NAME, _setSyncCloudWatchClient, publishSyncLatencyMetric, } from "./metrics.js";
12
15
  export { createLogger } from "./logger.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sync/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAOzB,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAQ3E,OAAO,EACL,gCAAgC,EAChC,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAO5B,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,iCAAiC,EACjC,yBAAyB,EACzB,oBAAoB,EACpB,gCAAgC,EAChC,mCAAmC,GACpC,MAAM,oBAAoB,CAAC;AAgB5B,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,cAAc,CAAC;AAMtB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAa7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,gCAAgC,CAAC;AAShF,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAiBzD,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAY3I,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAE5G,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sync/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAOzB,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAQ3E,OAAO,EACL,gCAAgC,EAChC,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,oBAAoB,EACpB,4BAA4B,EAC5B,oBAAoB,EACpB,4BAA4B,EAC5B,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,wBAAwB,EAAE,iCAAiC,EAAE,qBAAqB,EAAE,qCAAqC,EAAE,MAAM,yBAAyB,CAAC;AAGpK,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAQvE,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,iCAAiC,EACjC,yBAAyB,EACzB,oBAAoB,EACpB,gCAAgC,EAChC,mCAAmC,GACpC,MAAM,oBAAoB,CAAC;AAgB5B,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,cAAc,CAAC;AAMtB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAa7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,gCAAgC,CAAC;AAShF,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAiBzD,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAY3I,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAE5G,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,17 @@
1
+ export type LauncherPinKind = "dual-layout" | "v3-only";
2
+ export type LayoutCompatibility = {
3
+ schemaVersion: 1;
4
+ journalSlug: string;
5
+ pinKind: LauncherPinKind;
6
+ rollbackSafe: boolean;
7
+ compatible: boolean;
8
+ selectedRunner: "dual-layout-serialized-bridge" | "v3-only";
9
+ reason: "rollback-safe" | "rollback-unsafe-area-layout" | "legacy-layout";
10
+ };
11
+ /**
12
+ * A launcher must call this before selecting a v3-only pin. The bridge is
13
+ * always safe to start: it reads the committed layout state and can compose
14
+ * back, whereas a v3-only binary can strand the latest area mutation.
15
+ */
16
+ export declare function resolveLayoutCompatibility(rootDir: string, journalSlug: string, pinKind: LauncherPinKind): LayoutCompatibility;
17
+ //# sourceMappingURL=layout-compatibility.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout-compatibility.d.ts","sourceRoot":"","sources":["../../src/sync/layout-compatibility.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG,SAAS,CAAC;AAExD,MAAM,MAAM,mBAAmB,GAAG;IAChC,aAAa,EAAE,CAAC,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,eAAe,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,+BAA+B,GAAG,SAAS,CAAC;IAC5D,MAAM,EAAE,eAAe,GAAG,6BAA6B,GAAG,eAAe,CAAC;CAC3E,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,eAAe,GACvB,mBAAmB,CAoBrB"}
@@ -0,0 +1,29 @@
1
+ /** Launcher-facing layout/pin compatibility decision. */
2
+ import { readAreaLayoutState } from "./area-ledger-migration.js";
3
+ /**
4
+ * A launcher must call this before selecting a v3-only pin. The bridge is
5
+ * always safe to start: it reads the committed layout state and can compose
6
+ * back, whereas a v3-only binary can strand the latest area mutation.
7
+ */
8
+ export function resolveLayoutCompatibility(rootDir, journalSlug, pinKind) {
9
+ const state = readAreaLayoutState(rootDir, journalSlug);
10
+ const areaAuthoritative = state?.phase === "area-authoritative";
11
+ const rollbackSafe = !areaAuthoritative || state.rollbackSafe;
12
+ const compatible = pinKind === "dual-layout" || rollbackSafe;
13
+ return {
14
+ schemaVersion: 1,
15
+ journalSlug,
16
+ pinKind,
17
+ rollbackSafe,
18
+ compatible,
19
+ selectedRunner: compatible && pinKind === "v3-only"
20
+ ? "v3-only"
21
+ : "dual-layout-serialized-bridge",
22
+ reason: !areaAuthoritative
23
+ ? "legacy-layout"
24
+ : rollbackSafe
25
+ ? "rollback-safe"
26
+ : "rollback-unsafe-area-layout",
27
+ };
28
+ }
29
+ //# sourceMappingURL=layout-compatibility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout-compatibility.js","sourceRoot":"","sources":["../../src/sync/layout-compatibility.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAcjE;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CACxC,OAAe,EACf,WAAmB,EACnB,OAAwB;IAExB,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACxD,MAAM,iBAAiB,GAAG,KAAK,EAAE,KAAK,KAAK,oBAAoB,CAAC;IAChE,MAAM,YAAY,GAAG,CAAC,iBAAiB,IAAI,KAAK,CAAC,YAAY,CAAC;IAC9D,MAAM,UAAU,GAAG,OAAO,KAAK,aAAa,IAAI,YAAY,CAAC;IAC7D,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,WAAW;QACX,OAAO;QACP,YAAY;QACZ,UAAU;QACV,cAAc,EAAE,UAAU,IAAI,OAAO,KAAK,SAAS;YACjD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,+BAA+B;QACnC,MAAM,EAAE,CAAC,iBAAiB;YACxB,CAAC,CAAC,eAAe;YACjB,CAAC,CAAC,YAAY;gBACZ,CAAC,CAAC,eAAe;gBACjB,CAAC,CAAC,6BAA6B;KACpC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,45 @@
1
+ export declare const AREA_MAINTENANCE_CURSOR_FORMAT = 1;
2
+ export type AreaMaintenanceCursor = {
3
+ format: typeof AREA_MAINTENANCE_CURSOR_FORMAT;
4
+ epoch: string;
5
+ pendingAreaIds: readonly string[];
6
+ nextIndex: number;
7
+ };
8
+ export type AreaMaintenanceCursorStoreOptions = {
9
+ rootDir: string;
10
+ journalSlug: string;
11
+ layoutEpoch: number;
12
+ };
13
+ export type AreaMaintenanceTarget = {
14
+ maintenanceAreaIds(): readonly string[];
15
+ maintainArea(areaId: string): unknown;
16
+ };
17
+ export type AreaMaintenanceOutcome = {
18
+ areaId: string;
19
+ status: "maintained";
20
+ result: unknown;
21
+ } | {
22
+ areaId: string;
23
+ status: "isolated";
24
+ error: string;
25
+ };
26
+ /**
27
+ * One tiny cursor per journal layout. It is advanced after each area, not at
28
+ * the end of a sweep, so a worker restart cannot make a healthy area repeat a
29
+ * large maintenance pass because another area was corrupt.
30
+ */
31
+ export declare class AreaMaintenanceCursorStore {
32
+ private readonly store;
33
+ private constructor();
34
+ static open(options: AreaMaintenanceCursorStoreOptions): AreaMaintenanceCursorStore;
35
+ read(): AreaMaintenanceCursor | undefined;
36
+ begin(epoch: string, areaIds: readonly string[]): AreaMaintenanceCursor;
37
+ completeUnit(cursor: AreaMaintenanceCursor, areaId: string): AreaMaintenanceCursor;
38
+ }
39
+ /** Execute at most one area maintenance unit and durably checkpoint its result. */
40
+ export declare function runBoundedAreaMaintenance(target: AreaMaintenanceTarget, cursorStore: AreaMaintenanceCursorStore, epoch: string): {
41
+ cursor: AreaMaintenanceCursor;
42
+ outcome?: AreaMaintenanceOutcome;
43
+ complete: boolean;
44
+ };
45
+ //# sourceMappingURL=per-area-maintenance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"per-area-maintenance.d.ts","sourceRoot":"","sources":["../../src/sync/per-area-maintenance.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,OAAO,8BAA8B,CAAC;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,kBAAkB,IAAI,SAAS,MAAM,EAAE,CAAC;IACxC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAC9B;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GACzD;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAI1D;;;;GAIG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiD;IAEvE,OAAO;IAcP,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,iCAAiC,GAAG,0BAA0B;IAInF,IAAI,IAAI,qBAAqB,GAAG,SAAS;IAKzC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,qBAAqB;IAsBvE,YAAY,CAAC,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,GAAG,qBAAqB;CAYnF;AAED,mFAAmF;AACnF,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,qBAAqB,EAC7B,WAAW,EAAE,0BAA0B,EACvC,KAAK,EAAE,MAAM,GACZ;IAAE,MAAM,EAAE,qBAAqB,CAAC;IAAC,OAAO,CAAC,EAAE,sBAAsB,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAmBxF"}
@@ -0,0 +1,131 @@
1
+ /**
2
+ * Durable, bounded maintenance chores for an area-authoritative journal.
3
+ *
4
+ * This module deliberately knows nothing about the global operation lock.
5
+ * Normal rotation and healthy repair are per-area work; callers reserve the
6
+ * exclusive gate only for a format change or an authority cutover.
7
+ */
8
+ import { StateStore } from "./state-store.js";
9
+ export const AREA_MAINTENANCE_CURSOR_FORMAT = 1;
10
+ const CURSOR_SET = 1;
11
+ /**
12
+ * One tiny cursor per journal layout. It is advanced after each area, not at
13
+ * the end of a sweep, so a worker restart cannot make a healthy area repeat a
14
+ * large maintenance pass because another area was corrupt.
15
+ */
16
+ export class AreaMaintenanceCursorStore {
17
+ store;
18
+ constructor(options) {
19
+ if (!Number.isSafeInteger(options.layoutEpoch) || options.layoutEpoch < 1) {
20
+ throw new Error("area maintenance layoutEpoch must be a positive safe integer");
21
+ }
22
+ if (options.journalSlug.length === 0)
23
+ throw new Error("area maintenance journalSlug is required");
24
+ this.store = StateStore.open({
25
+ rootDir: options.rootDir,
26
+ scopeId: `area-maintenance:${options.journalSlug}:${options.layoutEpoch}`,
27
+ initialState: {},
28
+ reduce: reduceCursor,
29
+ validateRecord: validateCursorRecord,
30
+ });
31
+ }
32
+ static open(options) {
33
+ return new AreaMaintenanceCursorStore(options);
34
+ }
35
+ read() {
36
+ this.store.refresh();
37
+ return cloneCursor(this.store.getState().cursor);
38
+ }
39
+ begin(epoch, areaIds) {
40
+ if (epoch.length === 0)
41
+ throw new Error("area maintenance epoch is required");
42
+ const pendingAreaIds = [...new Set(areaIds)].sort((left, right) => left.localeCompare(right));
43
+ if (pendingAreaIds.some((areaId) => areaId.length === 0))
44
+ throw new Error("area maintenance areaId is required");
45
+ const current = this.read();
46
+ // A scheduler's calendar epoch can advance before a bounded sweep is
47
+ // complete. Keep that sweep's durable epoch until every area has been
48
+ // checkpointed; otherwise the next daily invocation would reset to index
49
+ // zero and starve every later area indefinitely.
50
+ if (current && sameAreas(current.pendingAreaIds, pendingAreaIds) && current.nextIndex < current.pendingAreaIds.length) {
51
+ return current;
52
+ }
53
+ const cursor = {
54
+ format: AREA_MAINTENANCE_CURSOR_FORMAT,
55
+ epoch,
56
+ pendingAreaIds,
57
+ nextIndex: 0,
58
+ };
59
+ this.store.append(CURSOR_SET, { cursor });
60
+ return cursor;
61
+ }
62
+ completeUnit(cursor, areaId) {
63
+ const current = this.read();
64
+ if (!current || current.epoch !== cursor.epoch || !sameAreas(current.pendingAreaIds, cursor.pendingAreaIds)) {
65
+ throw new Error("area maintenance cursor changed before checkpoint");
66
+ }
67
+ if (current.pendingAreaIds[current.nextIndex] !== areaId) {
68
+ throw new Error("area maintenance cursor checkpoint is out of order");
69
+ }
70
+ const next = { ...current, nextIndex: current.nextIndex + 1 };
71
+ this.store.append(CURSOR_SET, { cursor: next });
72
+ return next;
73
+ }
74
+ }
75
+ /** Execute at most one area maintenance unit and durably checkpoint its result. */
76
+ export function runBoundedAreaMaintenance(target, cursorStore, epoch) {
77
+ let cursor = cursorStore.begin(epoch, target.maintenanceAreaIds());
78
+ const areaId = cursor.pendingAreaIds[cursor.nextIndex];
79
+ if (areaId === undefined)
80
+ return { cursor, complete: true };
81
+ let outcome;
82
+ try {
83
+ outcome = { areaId, status: "maintained", result: target.maintainArea(areaId) };
84
+ }
85
+ catch (error) {
86
+ // A malformed/corrupt area is recorded as its own completed unit. The
87
+ // next scheduler tick can continue the healthy areas while the operator
88
+ // receives the isolated error through its ordinary chore reporting path.
89
+ outcome = {
90
+ areaId,
91
+ status: "isolated",
92
+ error: error instanceof Error ? error.message : String(error),
93
+ };
94
+ }
95
+ cursor = cursorStore.completeUnit(cursor, areaId);
96
+ return { cursor, outcome, complete: cursor.nextIndex >= cursor.pendingAreaIds.length };
97
+ }
98
+ function reduceCursor(_state, record) {
99
+ if (record.type !== CURSOR_SET)
100
+ throw new Error(`area maintenance: unknown record type ${record.type}`);
101
+ return { cursor: cloneCursor(record.payload.cursor) };
102
+ }
103
+ function validateCursorRecord(record) {
104
+ if (record.type !== CURSOR_SET)
105
+ throw new Error(`area maintenance: unknown record type ${record.type}`);
106
+ const cursor = record.payload.cursor;
107
+ const nextIndex = cursor?.nextIndex;
108
+ if (!cursor ||
109
+ cursor.format !== AREA_MAINTENANCE_CURSOR_FORMAT ||
110
+ typeof cursor.epoch !== "string" ||
111
+ !Array.isArray(cursor.pendingAreaIds) ||
112
+ !cursor.pendingAreaIds.every((areaId) => typeof areaId === "string" && areaId.length > 0) ||
113
+ typeof nextIndex !== "number" ||
114
+ !Number.isSafeInteger(nextIndex) ||
115
+ nextIndex < 0 ||
116
+ nextIndex > cursor.pendingAreaIds.length) {
117
+ throw new Error("area maintenance: invalid cursor record");
118
+ }
119
+ }
120
+ function cloneCursor(cursor) {
121
+ return cursor && {
122
+ format: cursor.format,
123
+ epoch: cursor.epoch,
124
+ pendingAreaIds: [...cursor.pendingAreaIds],
125
+ nextIndex: cursor.nextIndex,
126
+ };
127
+ }
128
+ function sameAreas(left, right) {
129
+ return left.length === right.length && left.every((areaId, index) => areaId === right[index]);
130
+ }
131
+ //# sourceMappingURL=per-area-maintenance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"per-area-maintenance.js","sourceRoot":"","sources":["../../src/sync/per-area-maintenance.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=per-area-maintenance.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"per-area-maintenance.test.d.ts","sourceRoot":"","sources":["../../src/sync/per-area-maintenance.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,100 @@
1
+ import * as fs from "node:fs";
2
+ import * as os from "node:os";
3
+ import * as path from "node:path";
4
+ import { afterEach, describe, expect, it } from "vitest";
5
+ import { AreaLedger } from "./area-ledger.js";
6
+ import { runBoundedAreaMaintenance, AreaMaintenanceCursorStore } from "./per-area-maintenance.js";
7
+ import { setStateStoreAfterGenerationStageHookForTest } from "./state-store.js";
8
+ const roots = [];
9
+ afterEach(() => {
10
+ setStateStoreAfterGenerationStageHookForTest(undefined);
11
+ for (const root of roots.splice(0))
12
+ fs.rmSync(root, { recursive: true, force: true });
13
+ });
14
+ function makeRoot() {
15
+ const root = fs.mkdtempSync(path.join(os.tmpdir(), "hq-area-maintenance-test-"));
16
+ roots.push(root);
17
+ return root;
18
+ }
19
+ function entry(size) {
20
+ return { hash: `${size}`.repeat(64), size, syncedAt: "2026-08-27T00:00:00.000Z", direction: "up" };
21
+ }
22
+ function openLedger(root) {
23
+ return AreaLedger.open({
24
+ rootDir: root,
25
+ journalSlug: "personal-vault",
26
+ layoutEpoch: 1,
27
+ areaIds: ["root:alpha", "root:beta"],
28
+ resolveArea: (key) => key.startsWith("alpha/") ? "root:alpha" : "root:beta",
29
+ });
30
+ }
31
+ describe("per-area maintenance", () => {
32
+ it("rotates one area while a realtime append commits in another area", () => {
33
+ const root = makeRoot();
34
+ const ledger = openLedger(root);
35
+ ledger.append({ upserts: { "alpha/before.md": entry(1) } });
36
+ let appended = false;
37
+ setStateStoreAfterGenerationStageHookForTest(() => {
38
+ if (appended)
39
+ return;
40
+ appended = true;
41
+ ledger.append({ upserts: { "beta/realtime.md": entry(2) } });
42
+ });
43
+ ledger.maintainArea("root:alpha", { force: true });
44
+ expect(appended).toBe(true);
45
+ expect(openLedger(root).read().files).toMatchObject({
46
+ "alpha/before.md": { size: 1 },
47
+ "beta/realtime.md": { size: 2 },
48
+ });
49
+ const directories = ledger.stateDirectoriesForTest();
50
+ expect(directories.get("root:alpha")).not.toBe(directories.get("root:beta"));
51
+ });
52
+ it("isolates a corrupt area and continues to the next healthy area", () => {
53
+ const root = makeRoot();
54
+ const ledger = openLedger(root);
55
+ ledger.append({ upserts: { "alpha/bad.md": entry(1), "beta/good.md": entry(2) } });
56
+ const alphaDir = ledger.stateDirectoriesForTest().get("root:alpha");
57
+ const stateFiles = fs.readdirSync(alphaDir).filter((name) => /^(?:snapshot|wal)-\d+\.bin$/.test(name));
58
+ expect(stateFiles.length).toBeGreaterThan(0);
59
+ for (const stateFile of stateFiles)
60
+ fs.writeFileSync(path.join(alphaDir, stateFile), "corrupt");
61
+ const target = {
62
+ maintenanceAreaIds: () => ["root:alpha", "root:beta"],
63
+ maintainArea: (areaId) => openLedger(root).maintainArea(areaId, { force: true }),
64
+ };
65
+ const cursor = AreaMaintenanceCursorStore.open({ rootDir: root, journalSlug: "personal-vault", layoutEpoch: 1 });
66
+ const first = runBoundedAreaMaintenance(target, cursor, "daily-1");
67
+ const second = runBoundedAreaMaintenance(target, cursor, "daily-1");
68
+ expect(first.outcome).toMatchObject({ areaId: "root:alpha", status: "isolated" });
69
+ expect(second.outcome).toMatchObject({ areaId: "root:beta", status: "maintained" });
70
+ expect(second.complete).toBe(true);
71
+ });
72
+ it("durably resumes the next bounded unit after a worker restart", () => {
73
+ const root = makeRoot();
74
+ const calls = [];
75
+ const target = {
76
+ maintenanceAreaIds: () => ["root:beta", "root:alpha"],
77
+ maintainArea: (areaId) => calls.push(areaId),
78
+ };
79
+ const firstStore = AreaMaintenanceCursorStore.open({ rootDir: root, journalSlug: "personal-vault", layoutEpoch: 1 });
80
+ expect(runBoundedAreaMaintenance(target, firstStore, "daily-2").outcome).toMatchObject({ areaId: "root:alpha" });
81
+ const restartedStore = AreaMaintenanceCursorStore.open({ rootDir: root, journalSlug: "personal-vault", layoutEpoch: 1 });
82
+ expect(runBoundedAreaMaintenance(target, restartedStore, "daily-2").outcome).toMatchObject({ areaId: "root:beta" });
83
+ expect(calls).toEqual(["root:alpha", "root:beta"]);
84
+ });
85
+ it("finishes an incomplete sweep when the scheduler advances to a new day", () => {
86
+ const root = makeRoot();
87
+ const calls = [];
88
+ const target = {
89
+ maintenanceAreaIds: () => ["root:alpha", "root:beta"],
90
+ maintainArea: (areaId) => calls.push(areaId),
91
+ };
92
+ const cursor = AreaMaintenanceCursorStore.open({ rootDir: root, journalSlug: "personal-vault", layoutEpoch: 1 });
93
+ expect(runBoundedAreaMaintenance(target, cursor, "2026-08-27").outcome)
94
+ .toMatchObject({ areaId: "root:alpha" });
95
+ expect(runBoundedAreaMaintenance(target, cursor, "2026-08-28").outcome)
96
+ .toMatchObject({ areaId: "root:beta" });
97
+ expect(calls).toEqual(["root:alpha", "root:beta"]);
98
+ });
99
+ });
100
+ //# sourceMappingURL=per-area-maintenance.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"per-area-maintenance.test.js","sourceRoot":"","sources":["../../src/sync/per-area-maintenance.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Low-cardinality telemetry contract for coordinator-owned realtime work.
3
+ *
4
+ * The values are per-item observations and every timing carries an explicit
5
+ * denominator. Paths, causality IDs, area IDs, tenant IDs, and worker PIDs are
6
+ * intentionally excluded: they belong in bounded diagnostic traces, never in
7
+ * metric labels.
8
+ */
9
+ export declare const REALTIME_TELEMETRY_EVENT = "sync.realtime.timing";
10
+ export declare const REALTIME_TELEMETRY_SCHEMA_VERSION = 1;
11
+ export declare const REALTIME_TIMING_STAGES: readonly ["queue", "conflict", "worker", "operationGate", "appendLock", "network", "commit"];
12
+ export type RealtimeTimingStage = (typeof REALTIME_TIMING_STAGES)[number];
13
+ export type RealtimeTelemetrySource = "watcher" | "receiver" | "wake";
14
+ export type RealtimeTelemetryDirection = "push" | "pull";
15
+ export type RealtimeTelemetryOutcome = "durable" | "retryable" | "refused";
16
+ export type RealtimeTelemetryRecord = {
17
+ event: typeof REALTIME_TELEMETRY_EVENT;
18
+ schemaVersion: typeof REALTIME_TELEMETRY_SCHEMA_VERSION;
19
+ source: RealtimeTelemetrySource;
20
+ direction: RealtimeTelemetryDirection;
21
+ outcome: RealtimeTelemetryOutcome;
22
+ items: number;
23
+ timingMs: Record<RealtimeTimingStage, number>;
24
+ denominator: Record<RealtimeTimingStage, number>;
25
+ };
26
+ export type RealtimeTelemetrySink = (record: RealtimeTelemetryRecord) => void;
27
+ export type RealtimeTelemetryClock = () => number;
28
+ /** Reject dynamic dimensions before they can become a metric-key convention. */
29
+ export declare function assertRealtimeTelemetryLowCardinality(record: RealtimeTelemetryRecord): void;
30
+ /**
31
+ * A bridge executor currently exposes one composite sync pass. It marks all
32
+ * seven contract stages around that pass so dashboards remain denominator-safe
33
+ * while child workers gain finer internal probes. The stages are separately
34
+ * named now, so that refinement does not change the published schema.
35
+ */
36
+ export declare class RealtimeTelemetrySpan {
37
+ private readonly source;
38
+ private readonly direction;
39
+ private readonly items;
40
+ private readonly sink;
41
+ private readonly now;
42
+ private readonly startedAt;
43
+ private readonly marks;
44
+ constructor(source: RealtimeTelemetrySource, direction: RealtimeTelemetryDirection, items: number, sink: RealtimeTelemetrySink, now?: RealtimeTelemetryClock);
45
+ mark(stage: RealtimeTimingStage): void;
46
+ finish(outcome: RealtimeTelemetryOutcome): RealtimeTelemetryRecord;
47
+ }
48
+ export declare function writeRealtimeTelemetryToStderr(record: RealtimeTelemetryRecord): void;
49
+ //# sourceMappingURL=realtime-telemetry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"realtime-telemetry.d.ts","sourceRoot":"","sources":["../../src/sync/realtime-telemetry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,eAAO,MAAM,wBAAwB,yBAAyB,CAAC;AAC/D,eAAO,MAAM,iCAAiC,IAAI,CAAC;AAEnD,eAAO,MAAM,sBAAsB,8FAQzB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC1E,MAAM,MAAM,uBAAuB,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;AACtE,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG,MAAM,CAAC;AACzD,MAAM,MAAM,wBAAwB,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAE3E,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,EAAE,OAAO,wBAAwB,CAAC;IACvC,aAAa,EAAE,OAAO,iCAAiC,CAAC;IACxD,MAAM,EAAE,uBAAuB,CAAC;IAChC,SAAS,EAAE,0BAA0B,CAAC;IACtC,OAAO,EAAE,wBAAwB,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAC9C,WAAW,EAAE,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,CAAC;AAC9E,MAAM,MAAM,sBAAsB,GAAG,MAAM,MAAM,CAAC;AAclD,gFAAgF;AAChF,wBAAgB,qCAAqC,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI,CAa3F;AAED;;;;;GAKG;AACH,qBAAa,qBAAqB;IAK9B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,GAAG;IARtB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0C;gBAG7C,MAAM,EAAE,uBAAuB,EAC/B,SAAS,EAAE,0BAA0B,EACrC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,qBAAqB,EAC3B,GAAG,GAAE,sBAAiC;IAKzD,IAAI,CAAC,KAAK,EAAE,mBAAmB,GAAG,IAAI;IAItC,MAAM,CAAC,OAAO,EAAE,wBAAwB,GAAG,uBAAuB;CAwBnE;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI,CAEpF"}