orez 0.9.7 → 0.10.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/README.md +27 -19
- package/dist/config.d.ts +0 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +0 -1
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -43
- package/dist/index.js.map +1 -1
- package/package.json +7 -71
- package/dist/cf-deploy/bundle.d.ts +0 -21
- package/dist/cf-deploy/bundle.d.ts.map +0 -1
- package/dist/cf-deploy/bundle.js +0 -347
- package/dist/cf-deploy/bundle.js.map +0 -1
- package/dist/cf-deploy/config.d.ts +0 -52
- package/dist/cf-deploy/config.d.ts.map +0 -1
- package/dist/cf-deploy/config.js +0 -23
- package/dist/cf-deploy/config.js.map +0 -1
- package/dist/cf-deploy/index.d.ts +0 -11
- package/dist/cf-deploy/index.d.ts.map +0 -1
- package/dist/cf-deploy/index.js +0 -17
- package/dist/cf-deploy/index.js.map +0 -1
- package/dist/cf-deploy/leaves.d.ts +0 -19
- package/dist/cf-deploy/leaves.d.ts.map +0 -1
- package/dist/cf-deploy/leaves.js +0 -109
- package/dist/cf-deploy/leaves.js.map +0 -1
- package/dist/cf-deploy/migration.d.ts +0 -40
- package/dist/cf-deploy/migration.d.ts.map +0 -1
- package/dist/cf-deploy/migration.js +0 -891
- package/dist/cf-deploy/migration.js.map +0 -1
- package/dist/cf-deploy/nativeMigrations.d.ts +0 -24
- package/dist/cf-deploy/nativeMigrations.d.ts.map +0 -1
- package/dist/cf-deploy/nativeMigrations.js +0 -185
- package/dist/cf-deploy/nativeMigrations.js.map +0 -1
- package/dist/cf-deploy/prune.d.ts +0 -14
- package/dist/cf-deploy/prune.d.ts.map +0 -1
- package/dist/cf-deploy/prune.js +0 -235
- package/dist/cf-deploy/prune.js.map +0 -1
- package/dist/cf-deploy/shims.d.ts +0 -13
- package/dist/cf-deploy/shims.d.ts.map +0 -1
- package/dist/cf-deploy/shims.js +0 -737
- package/dist/cf-deploy/shims.js.map +0 -1
- package/dist/cf-deploy/smoke.d.ts +0 -15
- package/dist/cf-deploy/smoke.d.ts.map +0 -1
- package/dist/cf-deploy/smoke.js +0 -141
- package/dist/cf-deploy/smoke.js.map +0 -1
- package/dist/cf-deploy/sources.d.ts +0 -9
- package/dist/cf-deploy/sources.d.ts.map +0 -1
- package/dist/cf-deploy/sources.js +0 -276
- package/dist/cf-deploy/sources.js.map +0 -1
- package/dist/cf-deploy/wrangler.d.ts +0 -6
- package/dist/cf-deploy/wrangler.d.ts.map +0 -1
- package/dist/cf-deploy/wrangler.js +0 -168
- package/dist/cf-deploy/wrangler.js.map +0 -1
- package/dist/cf-do/application-sql.d.ts +0 -49
- package/dist/cf-do/application-sql.d.ts.map +0 -1
- package/dist/cf-do/application-sql.js +0 -124
- package/dist/cf-do/application-sql.js.map +0 -1
- package/dist/cf-do/cdc.d.ts +0 -155
- package/dist/cf-do/cdc.d.ts.map +0 -1
- package/dist/cf-do/cdc.js +0 -719
- package/dist/cf-do/cdc.js.map +0 -1
- package/dist/cf-do/cursor-pull.d.ts +0 -27
- package/dist/cf-do/cursor-pull.d.ts.map +0 -1
- package/dist/cf-do/cursor-pull.js +0 -78
- package/dist/cf-do/cursor-pull.js.map +0 -1
- package/dist/cf-do/row-undo.d.ts +0 -36
- package/dist/cf-do/row-undo.d.ts.map +0 -1
- package/dist/cf-do/row-undo.js +0 -221
- package/dist/cf-do/row-undo.js.map +0 -1
- package/dist/cf-do/tx-journal.d.ts +0 -119
- package/dist/cf-do/tx-journal.d.ts.map +0 -1
- package/dist/cf-do/tx-journal.js +0 -718
- package/dist/cf-do/tx-journal.js.map +0 -1
- package/dist/cf-do/watermark.d.ts +0 -29
- package/dist/cf-do/watermark.d.ts.map +0 -1
- package/dist/cf-do/watermark.js +0 -105
- package/dist/cf-do/watermark.js.map +0 -1
- package/dist/cf-do/worker.d.ts +0 -287
- package/dist/cf-do/worker.d.ts.map +0 -1
- package/dist/cf-do/worker.js +0 -1961
- package/dist/cf-do/worker.js.map +0 -1
- package/dist/do-sql-tracking.d.ts +0 -104
- package/dist/do-sql-tracking.d.ts.map +0 -1
- package/dist/do-sql-tracking.js +0 -255
- package/dist/do-sql-tracking.js.map +0 -1
- package/dist/pg-proxy-do-backend.d.ts +0 -211
- package/dist/pg-proxy-do-backend.d.ts.map +0 -1
- package/dist/pg-proxy-do-backend.js +0 -7884
- package/dist/pg-proxy-do-backend.js.map +0 -1
- package/dist/pg-sqlite-compiler/catalog/seed.d.ts +0 -67
- package/dist/pg-sqlite-compiler/catalog/seed.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/catalog/seed.js +0 -436
- package/dist/pg-sqlite-compiler/catalog/seed.js.map +0 -1
- package/dist/pg-sqlite-compiler/compiler.d.ts +0 -17
- package/dist/pg-sqlite-compiler/compiler.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/compiler.js +0 -86
- package/dist/pg-sqlite-compiler/compiler.js.map +0 -1
- package/dist/pg-sqlite-compiler/index.d.ts +0 -2
- package/dist/pg-sqlite-compiler/index.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/index.js +0 -13
- package/dist/pg-sqlite-compiler/index.js.map +0 -1
- package/dist/pg-sqlite-compiler/passes/array.d.ts +0 -3
- package/dist/pg-sqlite-compiler/passes/array.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/passes/array.js +0 -223
- package/dist/pg-sqlite-compiler/passes/array.js.map +0 -1
- package/dist/pg-sqlite-compiler/passes/ast-utils.d.ts +0 -48
- package/dist/pg-sqlite-compiler/passes/ast-utils.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/passes/ast-utils.js +0 -93
- package/dist/pg-sqlite-compiler/passes/ast-utils.js.map +0 -1
- package/dist/pg-sqlite-compiler/passes/catalog.d.ts +0 -34
- package/dist/pg-sqlite-compiler/passes/catalog.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/passes/catalog.js +0 -30
- package/dist/pg-sqlite-compiler/passes/catalog.js.map +0 -1
- package/dist/pg-sqlite-compiler/passes/datetime.d.ts +0 -23
- package/dist/pg-sqlite-compiler/passes/datetime.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/passes/datetime.js +0 -55
- package/dist/pg-sqlite-compiler/passes/datetime.js.map +0 -1
- package/dist/pg-sqlite-compiler/passes/dml-cte.d.ts +0 -22
- package/dist/pg-sqlite-compiler/passes/dml-cte.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/passes/dml-cte.js +0 -161
- package/dist/pg-sqlite-compiler/passes/dml-cte.js.map +0 -1
- package/dist/pg-sqlite-compiler/passes/index.d.ts +0 -24
- package/dist/pg-sqlite-compiler/passes/index.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/passes/index.js +0 -52
- package/dist/pg-sqlite-compiler/passes/index.js.map +0 -1
- package/dist/pg-sqlite-compiler/passes/json-functions.d.ts +0 -3
- package/dist/pg-sqlite-compiler/passes/json-functions.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/passes/json-functions.js +0 -57
- package/dist/pg-sqlite-compiler/passes/json-functions.js.map +0 -1
- package/dist/pg-sqlite-compiler/passes/row-json.d.ts +0 -3
- package/dist/pg-sqlite-compiler/passes/row-json.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/passes/row-json.js +0 -230
- package/dist/pg-sqlite-compiler/passes/row-json.js.map +0 -1
- package/dist/pg-sqlite-compiler/passes/schema.d.ts +0 -4
- package/dist/pg-sqlite-compiler/passes/schema.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/passes/schema.js +0 -128
- package/dist/pg-sqlite-compiler/passes/schema.js.map +0 -1
- package/dist/pg-sqlite-compiler/passes/string-functions.d.ts +0 -11
- package/dist/pg-sqlite-compiler/passes/string-functions.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/passes/string-functions.js +0 -37
- package/dist/pg-sqlite-compiler/passes/string-functions.js.map +0 -1
- package/dist/pg-sqlite-compiler/passes/types.d.ts +0 -41
- package/dist/pg-sqlite-compiler/passes/types.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/passes/types.js +0 -115
- package/dist/pg-sqlite-compiler/passes/types.js.map +0 -1
- package/dist/pg-sqlite-compiler/passes/unsupported.d.ts +0 -3
- package/dist/pg-sqlite-compiler/passes/unsupported.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/passes/unsupported.js +0 -57
- package/dist/pg-sqlite-compiler/passes/unsupported.js.map +0 -1
- package/dist/pg-sqlite-compiler/test/oracle.d.ts +0 -34
- package/dist/pg-sqlite-compiler/test/oracle.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/test/oracle.js +0 -204
- package/dist/pg-sqlite-compiler/test/oracle.js.map +0 -1
- package/dist/pg-sqlite-compiler/types.d.ts +0 -66
- package/dist/pg-sqlite-compiler/types.d.ts.map +0 -1
- package/dist/pg-sqlite-compiler/types.js +0 -2
- package/dist/pg-sqlite-compiler/types.js.map +0 -1
- package/dist/sync-browser-host/generated/sqlite3-browser.wasm +0 -0
- package/dist/sync-browser-host/generated/sync_wasm.js +0 -922
- package/dist/sync-browser-host/generated/sync_wasm_bg.wasm +0 -0
- package/dist/sync-browser-host/host.d.ts +0 -10
- package/dist/sync-browser-host/host.d.ts.map +0 -1
- package/dist/sync-browser-host/host.js +0 -496
- package/dist/sync-browser-host/host.js.map +0 -1
- package/dist/sync-browser-host/idb-snapshot.d.ts +0 -11
- package/dist/sync-browser-host/idb-snapshot.d.ts.map +0 -1
- package/dist/sync-browser-host/idb-snapshot.js +0 -122
- package/dist/sync-browser-host/idb-snapshot.js.map +0 -1
- package/dist/sync-browser-host/index.d.ts +0 -5
- package/dist/sync-browser-host/index.d.ts.map +0 -1
- package/dist/sync-browser-host/index.js +0 -5
- package/dist/sync-browser-host/index.js.map +0 -1
- package/dist/sync-browser-host/message-port.d.ts +0 -7
- package/dist/sync-browser-host/message-port.d.ts.map +0 -1
- package/dist/sync-browser-host/message-port.js +0 -188
- package/dist/sync-browser-host/message-port.js.map +0 -1
- package/dist/sync-browser-host/sqlite-adapter.d.ts +0 -67
- package/dist/sync-browser-host/sqlite-adapter.d.ts.map +0 -1
- package/dist/sync-browser-host/sqlite-adapter.js +0 -145
- package/dist/sync-browser-host/sqlite-adapter.js.map +0 -1
- package/dist/sync-browser-host/types.d.ts +0 -52
- package/dist/sync-browser-host/types.d.ts.map +0 -1
- package/dist/sync-browser-host/types.js +0 -2
- package/dist/sync-browser-host/types.js.map +0 -1
- package/dist/sync-cf-host.d.ts +0 -2
- package/dist/sync-cf-host.d.ts.map +0 -1
- package/dist/sync-cf-host.js +0 -2
- package/dist/sync-cf-host.js.map +0 -1
- package/dist/sync-executor.d.ts +0 -2
- package/dist/sync-executor.d.ts.map +0 -1
- package/dist/sync-executor.js +0 -2
- package/dist/sync-executor.js.map +0 -1
- package/dist/wake.d.ts +0 -22
- package/dist/wake.d.ts.map +0 -1
- package/dist/wake.js +0 -114
- package/dist/wake.js.map +0 -1
- package/dist/worker/cf-do-shim.d.ts +0 -55
- package/dist/worker/cf-do-shim.d.ts.map +0 -1
- package/dist/worker/cf-do-shim.js +0 -58
- package/dist/worker/cf-do-shim.js.map +0 -1
- package/dist/worker/cf-patches.d.ts +0 -43
- package/dist/worker/cf-patches.d.ts.map +0 -1
- package/dist/worker/cf-patches.js +0 -840
- package/dist/worker/cf-patches.js.map +0 -1
- package/dist/worker/local-sql-backend.d.ts +0 -35
- package/dist/worker/local-sql-backend.d.ts.map +0 -1
- package/dist/worker/local-sql-backend.js +0 -217
- package/dist/worker/local-sql-backend.js.map +0 -1
- package/dist/worker/zero-cache-embed-cf.d.ts +0 -92
- package/dist/worker/zero-cache-embed-cf.d.ts.map +0 -1
- package/dist/worker/zero-cache-embed-cf.js +0 -764
- package/dist/worker/zero-cache-embed-cf.js.map +0 -1
- package/dist/worker/zero-sql-write-circuit.d.ts +0 -46
- package/dist/worker/zero-sql-write-circuit.d.ts.map +0 -1
- package/dist/worker/zero-sql-write-circuit.js +0 -161
- package/dist/worker/zero-sql-write-circuit.js.map +0 -1
- package/dist/zero-http/encrypted-column-codec.d.ts +0 -46
- package/dist/zero-http/encrypted-column-codec.d.ts.map +0 -1
- package/dist/zero-http/encrypted-column-codec.js +0 -676
- package/dist/zero-http/encrypted-column-codec.js.map +0 -1
- package/dist/zero-http/encrypted-column-conformance.d.ts +0 -7
- package/dist/zero-http/encrypted-column-conformance.d.ts.map +0 -1
- package/dist/zero-http/encrypted-column-conformance.js +0 -161
- package/dist/zero-http/encrypted-column-conformance.js.map +0 -1
- package/dist/zero-http/fixture-schema.d.ts +0 -127
- package/dist/zero-http/fixture-schema.d.ts.map +0 -1
- package/dist/zero-http/fixture-schema.js +0 -56
- package/dist/zero-http/fixture-schema.js.map +0 -1
- package/dist/zero-http/mount.d.ts +0 -71
- package/dist/zero-http/mount.d.ts.map +0 -1
- package/dist/zero-http/mount.js +0 -594
- package/dist/zero-http/mount.js.map +0 -1
- package/dist/zero-http/payload-codec.d.ts +0 -91
- package/dist/zero-http/payload-codec.d.ts.map +0 -1
- package/dist/zero-http/payload-codec.js +0 -10
- package/dist/zero-http/payload-codec.js.map +0 -1
- package/dist/zero-http/server.d.ts +0 -16
- package/dist/zero-http/server.d.ts.map +0 -1
- package/dist/zero-http/server.js +0 -270
- package/dist/zero-http/server.js.map +0 -1
- package/dist/zero-http/test-harness.d.ts +0 -32
- package/dist/zero-http/test-harness.d.ts.map +0 -1
- package/dist/zero-http/test-harness.js +0 -77
- package/dist/zero-http/test-harness.js.map +0 -1
- package/dist/zero-http/transport.d.ts +0 -71
- package/dist/zero-http/transport.d.ts.map +0 -1
- package/dist/zero-http/transport.js +0 -1106
- package/dist/zero-http/transport.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"zero-cache-embed-cf.js","sourceRoot":"","sources":["../../src/worker/zero-cache-embed-cf.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* runaway-write circuit breaker for a Durable Object's SQLite storage.
|
|
3
|
-
*
|
|
4
|
-
* a ZeroSqlDO (orez `ZeroDO`) runs the pg-over-DO backend in-instance, so a
|
|
5
|
-
* buggy or malicious mutation flow can write unbounded rows into the DO's
|
|
6
|
-
* SQLite and blow past the platform's per-object storage + billing limits
|
|
7
|
-
* before anything notices. this wraps `sql.exec` to meter rows written per
|
|
8
|
-
* rolling window and trip — refusing further writes — once the rate stays over
|
|
9
|
-
* a soft threshold for a sustained period, or instantly past a hard threshold.
|
|
10
|
-
*
|
|
11
|
-
* the meter state lives in a single-row table in the same SQLite, so a tripped
|
|
12
|
-
* breaker survives DO eviction (the object stays bricked-for-writes until an
|
|
13
|
-
* operator clears the row). reads are never gated. the wrap is idempotent per
|
|
14
|
-
* `sql` handle.
|
|
15
|
-
*
|
|
16
|
-
* pure logic over the minimal `DurableSqlStorage` shape (no `@cloudflare/...`
|
|
17
|
-
* types), unit-tested in zero-sql-write-circuit.test.ts. consumers install it
|
|
18
|
-
* from their ZeroSqlDO constructor with their own table/log prefix.
|
|
19
|
-
*/
|
|
20
|
-
export interface DurableSqlCursor {
|
|
21
|
-
one(): Record<string, unknown> | undefined;
|
|
22
|
-
rowsWritten?: number;
|
|
23
|
-
}
|
|
24
|
-
export interface DurableSqlStorage {
|
|
25
|
-
exec(sql: string, ...params: unknown[]): DurableSqlCursor;
|
|
26
|
-
}
|
|
27
|
-
export interface WriteCircuitOptions {
|
|
28
|
-
/** single-row meter table name. default `_orez_write_circuit`. */
|
|
29
|
-
table?: string;
|
|
30
|
-
/** soft cap: rows/window above which the sustained timer starts. default 2,000,000. */
|
|
31
|
-
rowsPerWindow?: number;
|
|
32
|
-
/** hard cap: rows/window that trips instantly. default 10,000,000. */
|
|
33
|
-
hardRowsPerWindow?: number;
|
|
34
|
-
/** rolling window length in ms. default 60,000. */
|
|
35
|
-
windowMs?: number;
|
|
36
|
-
/** how long the rate must stay over the soft cap before tripping, in ms. default 180,000. */
|
|
37
|
-
sustainedMs?: number;
|
|
38
|
-
/** log prefix for the trip diagnostics. default `[orez]`. */
|
|
39
|
-
logPrefix?: string;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* wrap `sql.exec` with the runaway-write circuit breaker. idempotent: a second
|
|
43
|
-
* call on the same `sql` handle is a no-op.
|
|
44
|
-
*/
|
|
45
|
-
export declare function installZeroSqlWriteCircuitBreaker(sql: DurableSqlStorage, opts?: WriteCircuitOptions): void;
|
|
46
|
-
//# sourceMappingURL=zero-sql-write-circuit.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"zero-sql-write-circuit.d.ts","sourceRoot":"","sources":["../../src/worker/zero-sql-write-circuit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAAA;CAC1D;AAED,MAAM,WAAW,mBAAmB;IAClC,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,uFAAuF;IACvF,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,sEAAsE;IACtE,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,6FAA6F;IAC7F,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAoBD;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,GAAG,EAAE,iBAAiB,EACtB,IAAI,GAAE,mBAAwB,GAC7B,IAAI,CA4JN"}
|
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* runaway-write circuit breaker for a Durable Object's SQLite storage.
|
|
3
|
-
*
|
|
4
|
-
* a ZeroSqlDO (orez `ZeroDO`) runs the pg-over-DO backend in-instance, so a
|
|
5
|
-
* buggy or malicious mutation flow can write unbounded rows into the DO's
|
|
6
|
-
* SQLite and blow past the platform's per-object storage + billing limits
|
|
7
|
-
* before anything notices. this wraps `sql.exec` to meter rows written per
|
|
8
|
-
* rolling window and trip — refusing further writes — once the rate stays over
|
|
9
|
-
* a soft threshold for a sustained period, or instantly past a hard threshold.
|
|
10
|
-
*
|
|
11
|
-
* the meter state lives in a single-row table in the same SQLite, so a tripped
|
|
12
|
-
* breaker survives DO eviction (the object stays bricked-for-writes until an
|
|
13
|
-
* operator clears the row). reads are never gated. the wrap is idempotent per
|
|
14
|
-
* `sql` handle.
|
|
15
|
-
*
|
|
16
|
-
* pure logic over the minimal `DurableSqlStorage` shape (no `@cloudflare/...`
|
|
17
|
-
* types), unit-tested in zero-sql-write-circuit.test.ts. consumers install it
|
|
18
|
-
* from their ZeroSqlDO constructor with their own table/log prefix.
|
|
19
|
-
*/
|
|
20
|
-
// any statement that can write rows (so reads never pay the meter cost).
|
|
21
|
-
const MUTATION_RE = /^\s*(?:insert|update|delete|replace|create|alter|drop|truncate|vacuum|reindex)\b/i;
|
|
22
|
-
// a WITH statement only writes when a data-modifying clause follows the CTEs;
|
|
23
|
-
// WITH ... SELECT is a read and must stay open while tripped (2026-07-10
|
|
24
|
-
// incident: gating `with` wholesale refused CTE reads during recovery). a
|
|
25
|
-
// keyword match inside a literal/identifier only over-gates, never under-gates:
|
|
26
|
-
// a real WITH write always carries insert/update/delete/replace.
|
|
27
|
-
const WITH_RE = /^\s*with\b/i;
|
|
28
|
-
const WITH_MUTATION_RE = /\b(?:insert|update|delete|replace)\b/i;
|
|
29
|
-
const CREATE_TABLE_IF_NOT_EXISTS_RE = /^\s*create\s+table\s+if\s+not\s+exists\s+("(?:[^"]|"")*"|`(?:[^`]|``)*`|\[[^\]]+\]|[^\s(]+)\s*\(/i;
|
|
30
|
-
const isMutationStatement = (text) => MUTATION_RE.test(text) || (WITH_RE.test(text) && WITH_MUTATION_RE.test(text));
|
|
31
|
-
const INSTALLED = new WeakSet();
|
|
32
|
-
/**
|
|
33
|
-
* wrap `sql.exec` with the runaway-write circuit breaker. idempotent: a second
|
|
34
|
-
* call on the same `sql` handle is a no-op.
|
|
35
|
-
*/
|
|
36
|
-
export function installZeroSqlWriteCircuitBreaker(sql, opts = {}) {
|
|
37
|
-
if (!sql || INSTALLED.has(sql))
|
|
38
|
-
return;
|
|
39
|
-
const table = opts.table ?? '_orez_write_circuit';
|
|
40
|
-
const rowsPerWindow = opts.rowsPerWindow ?? 2_000_000;
|
|
41
|
-
const hardRowsPerWindow = opts.hardRowsPerWindow ?? 10_000_000;
|
|
42
|
-
const windowMs = opts.windowMs ?? 60 * 1000;
|
|
43
|
-
const sustainedMs = opts.sustainedMs ?? 3 * 60 * 1000;
|
|
44
|
-
const logPrefix = opts.logPrefix ?? '[orez]';
|
|
45
|
-
const rawExec = sql.exec.bind(sql);
|
|
46
|
-
let ready = false;
|
|
47
|
-
const ensureReady = () => {
|
|
48
|
-
if (ready)
|
|
49
|
-
return;
|
|
50
|
-
rawExec('CREATE TABLE IF NOT EXISTS ' +
|
|
51
|
-
table +
|
|
52
|
-
' (id INTEGER PRIMARY KEY CHECK (id = 1), window_start INTEGER NOT NULL DEFAULT 0, rows_in_window INTEGER NOT NULL DEFAULT 0, first_over_at INTEGER NOT NULL DEFAULT 0, tripped_at INTEGER NOT NULL DEFAULT 0, last_statement TEXT)');
|
|
53
|
-
rawExec('INSERT OR IGNORE INTO ' +
|
|
54
|
-
table +
|
|
55
|
-
' (id, window_start, rows_in_window, first_over_at, tripped_at, last_statement) VALUES (1, 0, 0, 0, 0, ?)', '');
|
|
56
|
-
ready = true;
|
|
57
|
-
};
|
|
58
|
-
const readState = () => {
|
|
59
|
-
ensureReady();
|
|
60
|
-
return (rawExec('SELECT window_start, rows_in_window, first_over_at, tripped_at FROM ' +
|
|
61
|
-
table +
|
|
62
|
-
' WHERE id = 1').one() || {});
|
|
63
|
-
};
|
|
64
|
-
const clippedStatement = (statement) => String(statement || '')
|
|
65
|
-
.replace(/\s+/g, ' ')
|
|
66
|
-
.trim()
|
|
67
|
-
.slice(0, 500);
|
|
68
|
-
const assertOpen = (statement, allowExistingTableNoop = false) => {
|
|
69
|
-
const state = readState();
|
|
70
|
-
const trippedAt = Number(state.tripped_at || 0);
|
|
71
|
-
if (trippedAt > 0 &&
|
|
72
|
-
!(allowExistingTableNoop && isExistingTableNoop(String(statement || '')))) {
|
|
73
|
-
throw new Error(logPrefix +
|
|
74
|
-
' ZeroSqlDO write circuit breaker tripped at ' +
|
|
75
|
-
new Date(trippedAt).toISOString() +
|
|
76
|
-
'; refusing SQL write: ' +
|
|
77
|
-
clippedStatement(statement));
|
|
78
|
-
}
|
|
79
|
-
};
|
|
80
|
-
const isExistingTableNoop = (statement) => {
|
|
81
|
-
// cache recovery repeats trusted CREATE TABLE IF NOT EXISTS guards before
|
|
82
|
-
// reads. sqlite guarantees those statements are no-ops only when the target
|
|
83
|
-
// already exists, so prove that state without opening any other ddl path.
|
|
84
|
-
if (statement.includes(';'))
|
|
85
|
-
return false;
|
|
86
|
-
const identifier = CREATE_TABLE_IF_NOT_EXISTS_RE.exec(statement)?.[1];
|
|
87
|
-
if (!identifier)
|
|
88
|
-
return false;
|
|
89
|
-
const tableName = identifier.startsWith('"')
|
|
90
|
-
? identifier.slice(1, -1).replace(/""/g, '"')
|
|
91
|
-
: identifier.startsWith('`')
|
|
92
|
-
? identifier.slice(1, -1).replace(/``/g, '`')
|
|
93
|
-
: identifier.startsWith('[')
|
|
94
|
-
? identifier.slice(1, -1)
|
|
95
|
-
: identifier;
|
|
96
|
-
try {
|
|
97
|
-
return Boolean(rawExec("SELECT 1 AS ok FROM sqlite_master WHERE type = 'table' AND name = ? LIMIT 1", tableName).one());
|
|
98
|
-
}
|
|
99
|
-
catch {
|
|
100
|
-
return false;
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
const recordRowsWritten = (rowsWritten, statement) => {
|
|
104
|
-
const rows = Number(rowsWritten || 0);
|
|
105
|
-
if (!Number.isFinite(rows) || rows <= 0)
|
|
106
|
-
return false;
|
|
107
|
-
const now = Date.now();
|
|
108
|
-
const state = readState();
|
|
109
|
-
let windowStart = Number(state.window_start || 0);
|
|
110
|
-
let rowsInWindow = Number(state.rows_in_window || 0);
|
|
111
|
-
let firstOverAt = Number(state.first_over_at || 0);
|
|
112
|
-
const trippedAt = Number(state.tripped_at || 0);
|
|
113
|
-
if (trippedAt > 0)
|
|
114
|
-
return true;
|
|
115
|
-
const windowAgeMs = windowStart ? now - windowStart : 0;
|
|
116
|
-
if (!windowStart || windowAgeMs >= windowMs) {
|
|
117
|
-
const previousWindowWasOver = windowAgeMs < windowMs * 2 && rowsInWindow > rowsPerWindow;
|
|
118
|
-
windowStart = now;
|
|
119
|
-
rowsInWindow = 0;
|
|
120
|
-
if (!previousWindowWasOver)
|
|
121
|
-
firstOverAt = 0;
|
|
122
|
-
}
|
|
123
|
-
rowsInWindow += rows;
|
|
124
|
-
let nextTrippedAt = 0;
|
|
125
|
-
if (rowsInWindow > rowsPerWindow) {
|
|
126
|
-
if (!firstOverAt)
|
|
127
|
-
firstOverAt = now;
|
|
128
|
-
if (rowsInWindow > hardRowsPerWindow || now - firstOverAt >= sustainedMs) {
|
|
129
|
-
nextTrippedAt = now;
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
rawExec('UPDATE ' +
|
|
133
|
-
table +
|
|
134
|
-
' SET window_start = ?, rows_in_window = ?, first_over_at = ?, tripped_at = ?, last_statement = ? WHERE id = 1', windowStart, rowsInWindow, firstOverAt, nextTrippedAt, clippedStatement(statement));
|
|
135
|
-
if (nextTrippedAt) {
|
|
136
|
-
console.error(logPrefix +
|
|
137
|
-
' ZeroSqlDO write circuit breaker tripped: rows_in_window=' +
|
|
138
|
-
rowsInWindow +
|
|
139
|
-
', rows_written=' +
|
|
140
|
-
rows +
|
|
141
|
-
', statement=' +
|
|
142
|
-
clippedStatement(statement));
|
|
143
|
-
return true;
|
|
144
|
-
}
|
|
145
|
-
return false;
|
|
146
|
-
};
|
|
147
|
-
sql.exec = (statement, ...params) => {
|
|
148
|
-
const text = String(statement || '');
|
|
149
|
-
const isCircuitStatement = text.includes(table);
|
|
150
|
-
const isMutation = isMutationStatement(text) && !isCircuitStatement;
|
|
151
|
-
if (isMutation)
|
|
152
|
-
assertOpen(text, true);
|
|
153
|
-
const cursor = rawExec(statement, ...params);
|
|
154
|
-
if (isMutation && recordRowsWritten(cursor && cursor.rowsWritten, text)) {
|
|
155
|
-
assertOpen(text);
|
|
156
|
-
}
|
|
157
|
-
return cursor;
|
|
158
|
-
};
|
|
159
|
-
INSTALLED.add(sql);
|
|
160
|
-
}
|
|
161
|
-
//# sourceMappingURL=zero-sql-write-circuit.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"zero-sql-write-circuit.js","sourceRoot":"","sources":["../../src/worker/zero-sql-write-circuit.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import type { EncryptedColumnManifest, EncryptionKeyring, PayloadCodec } from './payload-codec.js';
|
|
2
|
-
export type { EncryptedColumnManifest, EncryptedRowBatch, EncryptionKeyring, JSONObject, JSONPrimitive, JSONValue, PayloadCodec, PullResponse, PushMutation, PushRequest, } from './payload-codec.js';
|
|
3
|
-
export type RandomBytes = (length: number) => Uint8Array;
|
|
4
|
-
export type X25519KeyPair = {
|
|
5
|
-
readonly privateKey: Uint8Array;
|
|
6
|
-
readonly publicKey: Uint8Array;
|
|
7
|
-
};
|
|
8
|
-
export type HPKECiphertext = {
|
|
9
|
-
readonly encapsulatedKey: Uint8Array;
|
|
10
|
-
readonly ciphertext: Uint8Array;
|
|
11
|
-
};
|
|
12
|
-
export declare function createEncryptedColumnCodec(options: {
|
|
13
|
-
readonly manifest: EncryptedColumnManifest;
|
|
14
|
-
readonly keyring: EncryptionKeyring;
|
|
15
|
-
}): PayloadCodec;
|
|
16
|
-
export declare function deriveX25519KeyPair(inputKeyMaterial: Uint8Array): X25519KeyPair;
|
|
17
|
-
export declare function generateX25519KeyPair(randomBytes: RandomBytes): X25519KeyPair;
|
|
18
|
-
export declare function hpkeSeal(options: {
|
|
19
|
-
readonly recipientPublicKey: Uint8Array;
|
|
20
|
-
readonly plaintext: Uint8Array;
|
|
21
|
-
readonly info?: Uint8Array;
|
|
22
|
-
readonly associatedData?: Uint8Array;
|
|
23
|
-
readonly randomBytes: RandomBytes;
|
|
24
|
-
}): HPKECiphertext;
|
|
25
|
-
export declare function hpkeOpen(options: {
|
|
26
|
-
readonly recipientPrivateKey: Uint8Array;
|
|
27
|
-
readonly encapsulatedKey: Uint8Array;
|
|
28
|
-
readonly ciphertext: Uint8Array;
|
|
29
|
-
readonly info?: Uint8Array;
|
|
30
|
-
readonly associatedData?: Uint8Array;
|
|
31
|
-
}): Uint8Array;
|
|
32
|
-
export declare function wrapContentKey(options: {
|
|
33
|
-
readonly recipientPublicKey: Uint8Array;
|
|
34
|
-
readonly contentKey: Uint8Array;
|
|
35
|
-
readonly info: Uint8Array;
|
|
36
|
-
readonly associatedData: Uint8Array;
|
|
37
|
-
readonly randomBytes: RandomBytes;
|
|
38
|
-
}): HPKECiphertext;
|
|
39
|
-
export declare function unwrapContentKey(options: {
|
|
40
|
-
readonly recipientPrivateKey: Uint8Array;
|
|
41
|
-
readonly encapsulatedKey: Uint8Array;
|
|
42
|
-
readonly ciphertext: Uint8Array;
|
|
43
|
-
readonly info: Uint8Array;
|
|
44
|
-
readonly associatedData: Uint8Array;
|
|
45
|
-
}): Uint8Array;
|
|
46
|
-
//# sourceMappingURL=encrypted-column-codec.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"encrypted-column-codec.d.ts","sourceRoot":"","sources":["../../src/zero-http/encrypted-column-codec.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,uBAAuB,EAEvB,iBAAiB,EAGjB,YAAY,EAIb,MAAM,oBAAoB,CAAA;AAE3B,YAAY,EACV,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,aAAa,EACb,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,oBAAoB,CAAA;AAoB3B,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,UAAU,CAAA;AAExD,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAA;IAC/B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAA;CAC/B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAA;IACpC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAA;CAChC,CAAA;AAoCD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE;IAClD,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,CAAA;IAC1C,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAA;CACpC,GAAG,YAAY,CA+Ff;AAED,wBAAgB,mBAAmB,CAAC,gBAAgB,EAAE,UAAU,GAAG,aAAa,CAU/E;AAED,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,WAAW,GAAG,aAAa,CAE7E;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE;IAChC,QAAQ,CAAC,kBAAkB,EAAE,UAAU,CAAA;IACvC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAA;IAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;IAC1B,QAAQ,CAAC,cAAc,CAAC,EAAE,UAAU,CAAA;IACpC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;CAClC,GAAG,cAAc,CAqBjB;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE;IAChC,QAAQ,CAAC,mBAAmB,EAAE,UAAU,CAAA;IACxC,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAA;IACpC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAA;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;IAC1B,QAAQ,CAAC,cAAc,CAAC,EAAE,UAAU,CAAA;CACrC,GAAG,UAAU,CAiBb;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE;IACtC,QAAQ,CAAC,kBAAkB,EAAE,UAAU,CAAA;IACvC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAA;IAC/B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAA;IACnC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;CAClC,GAAG,cAAc,CASjB;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE;IACxC,QAAQ,CAAC,mBAAmB,EAAE,UAAU,CAAA;IACxC,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAA;IACpC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAA;IAC/B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAA;CACpC,GAAG,UAAU,CAIb"}
|