@catalyst-cloud/sdk 0.5.0 → 0.7.0
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/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/live-sync-client.d.ts +162 -9
- package/dist/live-sync-client.d.ts.map +1 -1
- package/dist/live-sync-client.js +497 -41
- package/dist/live-sync-client.js.map +1 -1
- package/dist/node.d.ts +1 -1
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js.map +1 -1
- package/dist/otel.d.ts +14 -0
- package/dist/otel.d.ts.map +1 -1
- package/dist/otel.js +9 -0
- package/dist/otel.js.map +1 -1
- package/dist/replica/catalyst-replica.d.ts +39 -1
- package/dist/replica/catalyst-replica.d.ts.map +1 -1
- package/dist/replica/catalyst-replica.js +202 -69
- package/dist/replica/catalyst-replica.js.map +1 -1
- package/dist/types.d.ts +17 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -69,6 +69,12 @@ export class CatalystReplica {
|
|
|
69
69
|
readonlyMode = false;
|
|
70
70
|
/** The claimed single-writer lock (writers only; null for readers / `:memory:` / disabled). */
|
|
71
71
|
writerLock = null;
|
|
72
|
+
/** The in-flight seed's AbortController (CTC-281), or null when no seed is running. close() aborts
|
|
73
|
+
* it SYNCHRONOUSLY so the pending /snapshot fetch + body read release their connection instead of
|
|
74
|
+
* keeping the event loop referenced after close() resolved — the "close() succeeded but the
|
|
75
|
+
* process can't exit" hostage mechanism from the incident chain. Also the seed idle-timeout's
|
|
76
|
+
* abort seam. One controller per seed RUN (a retried seed gets a fresh one). */
|
|
77
|
+
seedAbort = null;
|
|
72
78
|
/** Resolved on the first 'live' status (start() = caught-up + ready to read); rejected on close /
|
|
73
79
|
* an initial seed failure. */
|
|
74
80
|
liveResolve = null;
|
|
@@ -211,6 +217,10 @@ export class CatalystReplica {
|
|
|
211
217
|
maxBackoffMs: this.opts.maxBackoffMs,
|
|
212
218
|
pingIntervalMs: this.opts.pingIntervalMs,
|
|
213
219
|
pongTimeoutMs: this.opts.pongTimeoutMs,
|
|
220
|
+
openTimeoutMs: this.opts.openTimeoutMs,
|
|
221
|
+
reseedTimeoutMs: this.opts.reseedTimeoutMs,
|
|
222
|
+
gapTimeoutMs: this.opts.gapTimeoutMs,
|
|
223
|
+
gapRetryLimit: this.opts.gapRetryLimit,
|
|
214
224
|
wsFactory: this.opts.wsFactory,
|
|
215
225
|
log: this.log,
|
|
216
226
|
telemetry: this.telemetry,
|
|
@@ -268,6 +278,17 @@ export class CatalystReplica {
|
|
|
268
278
|
return;
|
|
269
279
|
this.closed = true;
|
|
270
280
|
this.client?.stop();
|
|
281
|
+
// Abort any in-flight seed SYNCHRONOUSLY (CTC-281) — never await its settlement (close() must
|
|
282
|
+
// stay one-tick). Without this, the pending /snapshot fetch + un-cancelled body reader kept the
|
|
283
|
+
// TCP connection referenced after close() resolved, holding a supervised process's exit hostage.
|
|
284
|
+
// stop() ran first, so the seed's rejection lands in paths that already refuse to reopen.
|
|
285
|
+
try {
|
|
286
|
+
this.seedAbort?.abort(new Error("CatalystReplica closed"));
|
|
287
|
+
}
|
|
288
|
+
catch (err) {
|
|
289
|
+
this.log("warn", "seed abort threw", err);
|
|
290
|
+
}
|
|
291
|
+
this.seedAbort = null;
|
|
271
292
|
const rej = this.liveReject;
|
|
272
293
|
this.clearLiveDeferred();
|
|
273
294
|
rej?.(new Error("CatalystReplica: closed before first 'live'"));
|
|
@@ -337,6 +358,13 @@ export class CatalystReplica {
|
|
|
337
358
|
get lastFrameAt() {
|
|
338
359
|
return this.client?.lastFrameAt ?? null;
|
|
339
360
|
}
|
|
361
|
+
/** Epoch ms of the last inbound CHANGE frame (CTL-1402), or null before the first / in reader mode.
|
|
362
|
+
* Unlike {@link lastFrameAt} — which the mirror's watchdog auto-pongs also stamp — this only moves
|
|
363
|
+
* when the feed pushes data, so a stall supervisor can separate "socket alive" (lastFrameAt fresh)
|
|
364
|
+
* from "feed delivering" (lastChangeFrameAt fresh) without the unhealthy-status AND-gate. */
|
|
365
|
+
get lastChangeFrameAt() {
|
|
366
|
+
return this.client?.lastChangeFrameAt ?? null;
|
|
367
|
+
}
|
|
340
368
|
/** The raw driver Database the SDK owns — for `drizzle(replica.handle, { schema: mirrorSchema })`. */
|
|
341
369
|
get handle() {
|
|
342
370
|
return this.engine?.handle;
|
|
@@ -457,7 +485,10 @@ export class CatalystReplica {
|
|
|
457
485
|
engine.transaction(() => {
|
|
458
486
|
written = applyDelta(writeDb, { entity: frame.entity, op: frame.op, row: frame.row ?? {}, entityId: frame.entityId }, engine.toBindable, this.applyOpts);
|
|
459
487
|
// Advance to the seq we SAW (not just applied), so a stale-but-newer-seq delta still moves the
|
|
460
|
-
// cursor forward and a reconnect doesn't re-request it.
|
|
488
|
+
// cursor forward and a reconnect doesn't re-request it. Safe ONLY because the transport now
|
|
489
|
+
// guarantees contiguity (CTL-1402): LiveSyncClient never delivers a frame beyond
|
|
490
|
+
// deliveredSeq+1 — it holds the cursor at the hole and re-requests the gap — so "seen" here
|
|
491
|
+
// can no longer seal over an undelivered frame.
|
|
461
492
|
if (frame.seq > this.highWater)
|
|
462
493
|
setCursor(writeDb, frame.seq, engine.toBindable);
|
|
463
494
|
});
|
|
@@ -542,63 +573,126 @@ export class CatalystReplica {
|
|
|
542
573
|
return this.telemetry.withActiveSpan(REPLICA_SPAN.seed, { [CATALYST_ATTR.tenant]: this.opts.account }, async (span) => {
|
|
543
574
|
const engine = this.engine;
|
|
544
575
|
const writeDb = this.writeDb;
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
this.
|
|
553
|
-
//
|
|
554
|
-
//
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
let
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
576
|
+
// CTC-281: one AbortController per seed run, published on the instance so close() can abort
|
|
577
|
+
// it synchronously. Every await below (fetch, each body chunk) is bounded by it — a hung
|
|
578
|
+
// /snapshot can no longer wedge the transport in "resyncing" (no socket, no timers) or keep
|
|
579
|
+
// the event loop referenced after close().
|
|
580
|
+
if (this.closed)
|
|
581
|
+
throw new Error("CatalystReplica: seed aborted (already closed)");
|
|
582
|
+
const abort = new AbortController();
|
|
583
|
+
this.seedAbort = abort;
|
|
584
|
+
// The idle (NO-PROGRESS) deadline: (re)armed before the fetch and on every body chunk, so a
|
|
585
|
+
// big-but-flowing seed never trips it while a silent half-open connection always does.
|
|
586
|
+
// Unref'd — the timer must never itself hold the process open.
|
|
587
|
+
const idleMs = this.opts.snapshotIdleTimeoutMs ?? 30_000;
|
|
588
|
+
let idleTimer = null;
|
|
589
|
+
const clearIdle = () => {
|
|
590
|
+
if (idleTimer != null) {
|
|
591
|
+
clearTimeout(idleTimer);
|
|
592
|
+
idleTimer = null;
|
|
593
|
+
}
|
|
594
|
+
};
|
|
595
|
+
const armIdle = () => {
|
|
596
|
+
clearIdle();
|
|
597
|
+
if (idleMs <= 0)
|
|
561
598
|
return;
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
engine.transaction(() => {
|
|
567
|
-
for (const rec of rows) {
|
|
568
|
-
if (rec.entity === undefined)
|
|
569
|
-
continue;
|
|
570
|
-
applyDelta(writeDb, { entity: rec.entity, op: rec.op ?? "upsert", row: rec.row ?? {} }, engine.toBindable, this.applyOpts);
|
|
571
|
-
}
|
|
572
|
-
});
|
|
573
|
-
});
|
|
574
|
-
this.applyBatchHistogram.record(rows.length, { [CATALYST_ATTR.tenant]: this.opts.account });
|
|
599
|
+
idleTimer = setTimeout(() => {
|
|
600
|
+
abort.abort(new Error(`/snapshot made no progress for ${idleMs}ms (idle timeout, CTC-281)`));
|
|
601
|
+
}, idleMs);
|
|
602
|
+
idleTimer.unref?.();
|
|
575
603
|
};
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
cursor = rec.cursor; // the FINAL line carries the cursor
|
|
581
|
-
continue;
|
|
582
|
-
}
|
|
583
|
-
batch.push(rec);
|
|
584
|
-
rowCount++;
|
|
585
|
-
if (batch.length >= SEED_BATCH_ROWS)
|
|
586
|
-
flush();
|
|
587
|
-
}
|
|
588
|
-
flush();
|
|
589
|
-
engine.transaction(() => setCursor(writeDb, cursor, engine.toBindable));
|
|
590
|
-
this.highWater = cursor;
|
|
591
|
-
this.lastAppliedAtMs = Date.now(); // a completed seed refreshes freshness_ms
|
|
592
|
-
span.setAttribute(CATALYST_ATTR.rowCount, rowCount);
|
|
593
|
-
span.setAttribute(CATALYST_ATTR.cursor, cursor);
|
|
594
|
-
this.log("info", `snapshot seeded (${rowCount} rows), cursor=${cursor}`);
|
|
604
|
+
/** The abort reason as a throwable Error (close() and the idle deadline both pass one). */
|
|
605
|
+
const abortError = () => abort.signal.reason instanceof Error
|
|
606
|
+
? abort.signal.reason
|
|
607
|
+
: new Error("CatalystReplica: seed aborted");
|
|
595
608
|
try {
|
|
596
|
-
this.opts.
|
|
609
|
+
const url = `${this.baseUrl}/snapshot?account=${encodeURIComponent(this.opts.account)}`;
|
|
610
|
+
armIdle(); // bounds the headers phase
|
|
611
|
+
const res = await this.fetchImpl(url, { headers: this.feedHeaders(), signal: abort.signal });
|
|
612
|
+
armIdle(); // headers arrived — progress
|
|
613
|
+
if (!res.ok)
|
|
614
|
+
throw new Error(`/snapshot ${res.status}`);
|
|
615
|
+
// CTC-137: the /snapshot response is the SINGLE HTTP Response the SDK reads, so it is the one
|
|
616
|
+
// place to learn the mirror's head_seq (+ server clock). Stashed for the lag_seq gauge, which
|
|
617
|
+
// only emits while head_seq is known. Guarded: test fetch stand-ins return no `headers`.
|
|
618
|
+
this.readHeadSeqHeaders(res);
|
|
619
|
+
// Never write to a closed engine (CTC-281): close() runs synchronously between our awaits,
|
|
620
|
+
// so re-check before the first write — and again before the final cursor commit below.
|
|
621
|
+
if (this.closed || abort.signal.aborted)
|
|
622
|
+
throw abortError();
|
|
623
|
+
// Invalidate the cursor BEFORE truncating so a crash mid-seed re-seeds rather than going live over
|
|
624
|
+
// an empty replica from a stale cursor.
|
|
625
|
+
engine.run("DELETE FROM sync_meta WHERE key = 'cursor'");
|
|
626
|
+
engine.transaction(() => truncateReplica(writeDb));
|
|
627
|
+
let cursor = 0;
|
|
628
|
+
let batch = [];
|
|
629
|
+
const flush = () => {
|
|
630
|
+
if (batch.length === 0)
|
|
631
|
+
return;
|
|
632
|
+
if (this.closed)
|
|
633
|
+
throw abortError(); // CTC-281: never apply a batch into a closed engine
|
|
634
|
+
const rows = batch;
|
|
635
|
+
batch = [];
|
|
636
|
+
// The literal batched-apply seam: one transaction per ≤SEED_BATCH_ROWS rows → its own span.
|
|
637
|
+
this.telemetry.withActiveSpanSync(REPLICA_SPAN.applyBatch, { [CATALYST_ATTR.tenant]: this.opts.account, [CATALYST_ATTR.batchRows]: rows.length }, () => {
|
|
638
|
+
engine.transaction(() => {
|
|
639
|
+
for (const rec of rows) {
|
|
640
|
+
if (rec.entity === undefined)
|
|
641
|
+
continue;
|
|
642
|
+
applyDelta(writeDb, { entity: rec.entity, op: rec.op ?? "upsert", row: rec.row ?? {} }, engine.toBindable, this.applyOpts);
|
|
643
|
+
}
|
|
644
|
+
});
|
|
645
|
+
});
|
|
646
|
+
this.applyBatchHistogram.record(rows.length, { [CATALYST_ATTR.tenant]: this.opts.account });
|
|
647
|
+
};
|
|
648
|
+
let rowCount = 0;
|
|
649
|
+
// The body stream rides the same abort seam: each chunk re-arms the idle deadline, and an
|
|
650
|
+
// abort (close() or the deadline) cancels the reader so a pending read() settles promptly.
|
|
651
|
+
for await (const line of iterateNdjson(res, { signal: abort.signal, onProgress: armIdle })) {
|
|
652
|
+
const rec = JSON.parse(line);
|
|
653
|
+
if (typeof rec.cursor === "number") {
|
|
654
|
+
cursor = rec.cursor; // the FINAL line carries the cursor
|
|
655
|
+
continue;
|
|
656
|
+
}
|
|
657
|
+
batch.push(rec);
|
|
658
|
+
rowCount++;
|
|
659
|
+
if (batch.length >= SEED_BATCH_ROWS)
|
|
660
|
+
flush();
|
|
661
|
+
}
|
|
662
|
+
flush();
|
|
663
|
+
// Same closed-engine guard before the final commit (see above) — an abort that raced the last
|
|
664
|
+
// chunk must not stamp a cursor over a truncated replica.
|
|
665
|
+
if (this.closed || abort.signal.aborted)
|
|
666
|
+
throw abortError();
|
|
667
|
+
engine.transaction(() => setCursor(writeDb, cursor, engine.toBindable));
|
|
668
|
+
this.highWater = cursor;
|
|
669
|
+
this.lastAppliedAtMs = Date.now(); // a completed seed refreshes freshness_ms
|
|
670
|
+
span.setAttribute(CATALYST_ATTR.rowCount, rowCount);
|
|
671
|
+
span.setAttribute(CATALYST_ATTR.cursor, cursor);
|
|
672
|
+
this.log("info", `snapshot seeded (${rowCount} rows), cursor=${cursor}`);
|
|
673
|
+
try {
|
|
674
|
+
this.opts.onChange?.();
|
|
675
|
+
}
|
|
676
|
+
catch (err) {
|
|
677
|
+
this.log("warn", "onChange handler threw", err);
|
|
678
|
+
}
|
|
679
|
+
return cursor;
|
|
597
680
|
}
|
|
598
681
|
catch (err) {
|
|
599
|
-
|
|
682
|
+
// A close()-triggered abort is NORMAL teardown, not a failure: log at info and rethrow so
|
|
683
|
+
// the callers' existing recovery paths run (the resync catch logs-and-backs-off; the
|
|
684
|
+
// cold-start rejection is absorbed by the already-cleared live deferred). The interrupted
|
|
685
|
+
// seed self-heals on the next boot — the cursor row was deleted up front.
|
|
686
|
+
if (this.closed) {
|
|
687
|
+
this.log("info", "seed aborted by close() — normal during teardown (CTC-281)");
|
|
688
|
+
}
|
|
689
|
+
throw err;
|
|
690
|
+
}
|
|
691
|
+
finally {
|
|
692
|
+
clearIdle();
|
|
693
|
+
if (this.seedAbort === abort)
|
|
694
|
+
this.seedAbort = null;
|
|
600
695
|
}
|
|
601
|
-
return cursor;
|
|
602
696
|
});
|
|
603
697
|
}
|
|
604
698
|
/** Read CTC-137's `x-catalyst-head-seq` (+ `x-catalyst-server-time-ms`) off the /snapshot response,
|
|
@@ -632,35 +726,74 @@ export class CatalystReplica {
|
|
|
632
726
|
* Iterate an NDJSON Response as non-empty lines. Streams `response.body` (chunked + partial-line
|
|
633
727
|
* buffered) when present — the production path that never buffers the whole snapshot; falls back to a
|
|
634
728
|
* buffered `await res.text()` when the body is absent (e.g. a test fetch stand-in).
|
|
729
|
+
*
|
|
730
|
+
* Cancellation (CTC-281): `opts.signal` bounds the read loop — on abort the reader is cancelled, which
|
|
731
|
+
* settles a pending `read()` promptly ({done:true}) EVEN when the Response was never wired to the
|
|
732
|
+
* signal (injected fetch stand-ins), and the loop then throws the abort reason. The `finally` ALWAYS
|
|
733
|
+
* cancels the reader: an abnormal exit in the CALLER (a JSON.parse throw, a closed-engine throw)
|
|
734
|
+
* previously ended the generator with the body still locked, leaving the connection referenced —
|
|
735
|
+
* a leaked handle that held process exit hostage after close(). `opts.onProgress` fires per chunk
|
|
736
|
+
* (the seed's idle-deadline refund).
|
|
635
737
|
*/
|
|
636
|
-
async function* iterateNdjson(res) {
|
|
738
|
+
async function* iterateNdjson(res, opts) {
|
|
739
|
+
const signal = opts?.signal;
|
|
740
|
+
const throwIfAborted = () => {
|
|
741
|
+
if (!signal?.aborted)
|
|
742
|
+
return;
|
|
743
|
+
throw signal.reason instanceof Error ? signal.reason : new Error("snapshot read aborted");
|
|
744
|
+
};
|
|
637
745
|
const body = res.body;
|
|
638
746
|
if (body && typeof body.getReader === "function") {
|
|
639
747
|
const reader = body.getReader();
|
|
748
|
+
const onAbort = () => {
|
|
749
|
+
void reader.cancel().catch(() => {
|
|
750
|
+
// already released/closed — the abort still surfaces via throwIfAborted
|
|
751
|
+
});
|
|
752
|
+
};
|
|
753
|
+
if (signal) {
|
|
754
|
+
if (signal.aborted)
|
|
755
|
+
onAbort();
|
|
756
|
+
else
|
|
757
|
+
signal.addEventListener("abort", onAbort, { once: true });
|
|
758
|
+
}
|
|
640
759
|
const decoder = new TextDecoder();
|
|
641
760
|
let buf = "";
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
761
|
+
try {
|
|
762
|
+
for (;;) {
|
|
763
|
+
const { done, value } = await reader.read();
|
|
764
|
+
throwIfAborted(); // an abort settles read() via cancel — surface it as an error, not EOF
|
|
765
|
+
if (done)
|
|
766
|
+
break;
|
|
767
|
+
opts?.onProgress?.();
|
|
768
|
+
buf += decoder.decode(value, { stream: true });
|
|
769
|
+
let nl;
|
|
770
|
+
while ((nl = buf.indexOf("\n")) >= 0) {
|
|
771
|
+
const line = buf.slice(0, nl);
|
|
772
|
+
buf = buf.slice(nl + 1);
|
|
773
|
+
if (line.length > 0)
|
|
774
|
+
yield line;
|
|
775
|
+
}
|
|
776
|
+
}
|
|
777
|
+
buf += decoder.decode();
|
|
778
|
+
if (buf.length > 0) {
|
|
779
|
+
for (const line of buf.split("\n"))
|
|
780
|
+
if (line.length > 0)
|
|
781
|
+
yield line;
|
|
653
782
|
}
|
|
654
783
|
}
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
784
|
+
finally {
|
|
785
|
+
signal?.removeEventListener("abort", onAbort);
|
|
786
|
+
try {
|
|
787
|
+
await reader.cancel(); // release the body/connection on EVERY exit path (no-op when done)
|
|
788
|
+
}
|
|
789
|
+
catch {
|
|
790
|
+
// already released/closed
|
|
791
|
+
}
|
|
660
792
|
}
|
|
661
793
|
return;
|
|
662
794
|
}
|
|
663
795
|
const text = await res.text();
|
|
796
|
+
throwIfAborted();
|
|
664
797
|
for (const line of text.split("\n"))
|
|
665
798
|
if (line.length > 0)
|
|
666
799
|
yield line;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalyst-replica.js","sourceRoot":"","sources":["../../src/replica/catalyst-replica.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"catalyst-replica.js","sourceRoot":"","sources":["../../src/replica/catalyst-replica.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -51,6 +51,20 @@ export interface SyncFrame {
|
|
|
51
51
|
/** The durable cursor: the last feed seq the consumer has applied (-1 if none). */
|
|
52
52
|
after: number;
|
|
53
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* The end-of-pass head nudge (CTL-1402). The mirror's reconcile pass appends `change_log` rows but
|
|
56
|
+
* never broadcasts them individually, so a quiet-webhook period leaves the client with no later frame
|
|
57
|
+
* to detect a gap FROM. After a pass the mirror broadcasts ONE `{type:"head", seq:<max change_log
|
|
58
|
+
* seq>}` so the client can notice its baseline trails the feed head and re-request the hole. It is a
|
|
59
|
+
* pure control nudge — never applied and never a cursor advance. Transport-internal: the
|
|
60
|
+
* {@link LiveSyncClient} consumes it and NEVER surfaces it to `onFrame`/`onChange`.
|
|
61
|
+
*/
|
|
62
|
+
export interface HeadFrame {
|
|
63
|
+
type: "head";
|
|
64
|
+
accountId?: AccountId;
|
|
65
|
+
/** The mirror's current feed head — the max `change_log` seq at the end of the reconcile pass. */
|
|
66
|
+
seq: number;
|
|
67
|
+
}
|
|
54
68
|
/**
|
|
55
69
|
* The liveness ping/pong wire literals (CTC-135). The client sends `PING_FRAME` after an idle
|
|
56
70
|
* interval; the mirror answers `PONG_FRAME` via `setWebSocketAutoResponse`, which matches the request
|
|
@@ -69,6 +83,7 @@ export declare const PONG_FRAME = "{\"type\":\"pong\"}";
|
|
|
69
83
|
export interface PongFrame {
|
|
70
84
|
type: "pong";
|
|
71
85
|
}
|
|
72
|
-
/** Any frame the service can push to a consumer over `/connect`. `pong`
|
|
73
|
-
|
|
86
|
+
/** Any frame the service can push to a consumer over `/connect`. `pong` and `head` are
|
|
87
|
+
* transport-internal (consumed by the client, never surfaced to `onFrame`/`onChange`). */
|
|
88
|
+
export type ServerFrame = ChangeFrame | ResyncFrame | PongFrame | HeadFrame;
|
|
74
89
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAUA,iFAAiF;AACjF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAClB,QAAQ,GACR,QAAQ,GACR,OAAO,GACP,cAAc,GACd,WAAW,GACX,eAAe,GACf,UAAU,GACV,QAAQ,GACR,aAAa,GACb,qBAAqB,GACrB,UAAU,GACV,eAAe,GACf,YAAY,GACZ,iBAAiB,GACjB,SAAS,CAAC;AAEd;;;;GAIG;AACH,eAAO,MAAM,YAAY,2NAgBiB,CAAC;AAE3C,qDAAqD;AACrD,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3C,0FAA0F;AAC1F,eAAO,MAAM,UAAU,+BAA8D,CAAC;AAEtF;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,EAAE,SAAS,CAAC;IACrB,wEAAwE;IACxE,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,UAAU,CAAC;IACnB,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,QAAQ,CAAC;IACb,2EAA2E;IAC3E,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,mFAAmF;IACnF,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,wBAAoB,CAAC;AAC5C,eAAO,MAAM,UAAU,wBAAoB,CAAC;AAE5C;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAUA,iFAAiF;AACjF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAClB,QAAQ,GACR,QAAQ,GACR,OAAO,GACP,cAAc,GACd,WAAW,GACX,eAAe,GACf,UAAU,GACV,QAAQ,GACR,aAAa,GACb,qBAAqB,GACrB,UAAU,GACV,eAAe,GACf,YAAY,GACZ,iBAAiB,GACjB,SAAS,CAAC;AAEd;;;;GAIG;AACH,eAAO,MAAM,YAAY,2NAgBiB,CAAC;AAE3C,qDAAqD;AACrD,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3C,0FAA0F;AAC1F,eAAO,MAAM,UAAU,+BAA8D,CAAC;AAEtF;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,EAAE,SAAS,CAAC;IACrB,wEAAwE;IACxE,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,UAAU,CAAC;IACnB,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,QAAQ,CAAC;IACb,2EAA2E;IAC3E,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,mFAAmF;IACnF,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,kGAAkG;IAClG,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,wBAAoB,CAAC;AAC5C,eAAO,MAAM,UAAU,wBAAoB,CAAC;AAE5C;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;2FAC2F;AAC3F,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,EAAE;AACF,sGAAsG;AACtG,sGAAsG;AACtG,qGAAqG;AACrG,mBAAmB;AACnB,EAAE;AACF,iGAAiG;AACjG,2FAA2F;AA4B3F;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,cAAc;IACd,WAAW;IACX,eAAe;IACf,UAAU;IACV,QAAQ;IACR,aAAa;IACb,qBAAqB;IACrB,UAAU;IACV,eAAe;IACf,YAAY;IACZ,iBAAiB;IACjB,SAAS;CAC+B,CAAC;AAK3C,0FAA0F;AAC1F,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,EAAE;AACF,sGAAsG;AACtG,sGAAsG;AACtG,qGAAqG;AACrG,mBAAmB;AACnB,EAAE;AACF,iGAAiG;AACjG,2FAA2F;AA4B3F;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,cAAc;IACd,WAAW;IACX,eAAe;IACf,UAAU;IACV,QAAQ;IACR,aAAa;IACb,qBAAqB;IACrB,UAAU;IACV,eAAe;IACf,YAAY;IACZ,iBAAiB;IACjB,SAAS;CAC+B,CAAC;AAK3C,0FAA0F;AAC1F,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAwC,CAAC;AAsDtF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,iBAAiB,CAAC;AAC5C,MAAM,CAAC,MAAM,UAAU,GAAG,iBAAiB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@catalyst-cloud/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Keep a live local copy of your Linear and GitHub project data — pushed in real time, without polling rate limits or webhook tunnels.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Coalesce Labs",
|