@secondlayer/shared 11.7.1 → 11.8.1
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/src/archive/copy-loader.d.ts +1 -1
- package/dist/src/archive/copy-loader.js +4 -20
- package/dist/src/archive/copy-loader.js.map +2 -2
- package/dist/src/archive/derived-stage-report.d.ts +1 -1
- package/dist/src/archive/derived-stage-report.js +3 -19
- package/dist/src/archive/derived-stage-report.js.map +2 -2
- package/dist/src/archive/disk-guard.d.ts +1 -1
- package/dist/src/archive/disk-guard.js +3 -19
- package/dist/src/archive/disk-guard.js.map +2 -2
- package/dist/src/archive/instance-diagnosis.d.ts +1 -1
- package/dist/src/archive/instance-diagnosis.js +6 -22
- package/dist/src/archive/instance-diagnosis.js.map +2 -2
- package/dist/src/archive/key-registry.d.ts +1 -1
- package/dist/src/archive/key-registry.js +12 -12
- package/dist/src/archive/key-registry.js.map +1 -1
- package/dist/src/archive/per-height-digest.d.ts +1 -1
- package/dist/src/archive/per-height-digest.js +3 -17
- package/dist/src/archive/per-height-digest.js.map +5 -5
- package/dist/src/archive/progress.d.ts +1 -1
- package/dist/src/archive/progress.js +4 -20
- package/dist/src/archive/progress.js.map +2 -2
- package/dist/src/archive/range-digest.d.ts +28 -3
- package/dist/src/archive/range-digest.js +4 -20
- package/dist/src/archive/range-digest.js.map +2 -2
- package/dist/src/archive/reference.d.ts +1 -1
- package/dist/src/archive/reference.js +14 -12
- package/dist/src/archive/reference.js.map +5 -5
- package/dist/src/archive/root-key.d.ts +1 -1
- package/dist/src/archive/root-key.js +3 -19
- package/dist/src/archive/root-key.js.map +2 -2
- package/dist/src/archive/semantic-digest-builder.d.ts +28 -3
- package/dist/src/archive/semantic-digest-builder.js +5 -19
- package/dist/src/archive/semantic-digest-builder.js.map +5 -5
- package/dist/src/archive/semantic-digest.d.ts +1 -1
- package/dist/src/archive/semantic-digest.js +4 -20
- package/dist/src/archive/semantic-digest.js.map +2 -2
- package/dist/src/archive/status.d.ts +1 -1
- package/dist/src/archive/status.js +4 -20
- package/dist/src/archive/status.js.map +2 -2
- package/dist/src/coverage/index.d.ts +27 -2
- package/dist/src/coverage/index.js +80 -96
- package/dist/src/coverage/index.js.map +2 -2
- package/dist/src/crypto/ed25519.d.ts +1 -1
- package/dist/src/crypto/ed25519.js +13 -13
- package/dist/src/crypto/ed25519.js.map +1 -1
- package/dist/src/crypto/hmac.d.ts +1 -1
- package/dist/src/crypto/hmac.js +9 -9
- package/dist/src/crypto/hmac.js.map +1 -1
- package/dist/src/crypto/secondlayer-webhook.d.ts +1 -1
- package/dist/src/crypto/secondlayer-webhook.js +14 -14
- package/dist/src/crypto/secondlayer-webhook.js.map +2 -2
- package/dist/src/crypto/secrets.d.ts +1 -1
- package/dist/src/crypto/secrets.js +15 -29
- package/dist/src/crypto/secrets.js.map +5 -5
- package/dist/src/crypto/standard-webhooks.d.ts +1 -1
- package/dist/src/crypto/standard-webhooks.js +3 -19
- package/dist/src/crypto/standard-webhooks.js.map +2 -2
- package/dist/src/db/index.d.ts +48 -19
- package/dist/src/db/index.js +41 -55
- package/dist/src/db/index.js.map +6 -6
- package/dist/src/db/jsonb.d.ts +1 -1
- package/dist/src/db/jsonb.js +3 -19
- package/dist/src/db/jsonb.js.map +2 -2
- package/dist/src/db/queries/chain-reorgs.d.ts +27 -2
- package/dist/src/db/queries/chain-reorgs.js +28 -42
- package/dist/src/db/queries/chain-reorgs.js.map +6 -6
- package/dist/src/db/queries/contracts.d.ts +27 -2
- package/dist/src/db/queries/contracts.js +9 -23
- package/dist/src/db/queries/contracts.js.map +5 -5
- package/dist/src/db/queries/instance.d.ts +27 -2
- package/dist/src/db/queries/instance.js +7 -23
- package/dist/src/db/queries/instance.js.map +2 -2
- package/dist/src/db/queries/integrity.d.ts +27 -2
- package/dist/src/db/queries/integrity.js +5 -21
- package/dist/src/db/queries/integrity.js.map +2 -2
- package/dist/src/db/queries/subgraph-gaps.d.ts +27 -2
- package/dist/src/db/queries/subgraph-gaps.js +5 -21
- package/dist/src/db/queries/subgraph-gaps.js.map +2 -2
- package/dist/src/db/queries/subgraph-operations.d.ts +27 -2
- package/dist/src/db/queries/subgraph-operations.js +17 -33
- package/dist/src/db/queries/subgraph-operations.js.map +2 -2
- package/dist/src/db/queries/subgraphs.d.ts +28 -14
- package/dist/src/db/queries/subgraphs.js +15 -37
- package/dist/src/db/queries/subgraphs.js.map +5 -5
- package/dist/src/db/queries/sync-scope.d.ts +27 -2
- package/dist/src/db/queries/sync-scope.js +6 -22
- package/dist/src/db/queries/sync-scope.js.map +2 -2
- package/dist/src/db/queries/webhooks.d.ts +27 -2
- package/dist/src/db/queries/webhooks.js +54 -50
- package/dist/src/db/queries/webhooks.js.map +5 -5
- package/dist/src/db/schema.d.ts +30 -2
- package/dist/src/env.d.ts +1 -1
- package/dist/src/env.js +7 -23
- package/dist/src/env.js.map +2 -2
- package/dist/src/errors.d.ts +4 -4
- package/dist/src/errors.js +15 -31
- package/dist/src/errors.js.map +3 -3
- package/dist/src/index-http.d.ts +1 -1
- package/dist/src/index-http.js +4 -20
- package/dist/src/index-http.js.map +3 -3
- package/dist/src/index-internal-auth.d.ts +4 -7
- package/dist/src/index-internal-auth.js +8 -24
- package/dist/src/index-internal-auth.js.map +3 -3
- package/dist/src/index.d.ts +176 -152
- package/dist/src/index.js +305 -317
- package/dist/src/index.js.map +15 -15
- package/dist/src/leader.d.ts +1 -1
- package/dist/src/leader.js +7 -21
- package/dist/src/leader.js.map +5 -5
- package/dist/src/logger.js +1 -17
- package/dist/src/logger.js.map +2 -2
- package/dist/src/mode.d.ts +1 -1
- package/dist/src/mode.js +5 -21
- package/dist/src/mode.js.map +2 -2
- package/dist/src/node/archive-client.d.ts +1 -1
- package/dist/src/node/archive-client.js +9 -23
- package/dist/src/node/archive-client.js.map +5 -5
- package/dist/src/node/client.d.ts +1 -1
- package/dist/src/node/client.js +4 -18
- package/dist/src/node/client.js.map +5 -5
- package/dist/src/node/consensus.d.ts +1 -1
- package/dist/src/node/consensus.js +5 -21
- package/dist/src/node/consensus.js.map +2 -2
- package/dist/src/node/hiro-client.d.ts +1 -1
- package/dist/src/node/hiro-client.js +1 -17
- package/dist/src/node/hiro-client.js.map +2 -2
- package/dist/src/node/hiro-pg-client.js +1 -17
- package/dist/src/node/hiro-pg-client.js.map +2 -2
- package/dist/src/node/local-client.d.ts +27 -2
- package/dist/src/node/local-client.js +3 -19
- package/dist/src/node/local-client.js.map +2 -2
- package/dist/src/node/nakamoto.d.ts +1 -1
- package/dist/src/node/nakamoto.js +12 -28
- package/dist/src/node/nakamoto.js.map +2 -2
- package/dist/src/queue/listener.d.ts +1 -1
- package/dist/src/queue/listener.js +4 -20
- package/dist/src/queue/listener.js.map +2 -2
- package/dist/src/runtime/index.d.ts +1 -1
- package/dist/src/runtime/index.js +51 -67
- package/dist/src/runtime/index.js.map +2 -2
- package/dist/src/schemas/index.d.ts +8 -4
- package/dist/src/schemas/index.js +64 -41
- package/dist/src/schemas/index.js.map +4 -4
- package/dist/src/schemas/subgraphs.d.ts +1 -4
- package/dist/src/schemas/subgraphs.js +1 -18
- package/dist/src/schemas/subgraphs.js.map +3 -3
- package/dist/src/schemas/webhooks.d.ts +19 -1
- package/dist/src/schemas/webhooks.js +70 -41
- package/dist/src/schemas/webhooks.js.map +3 -3
- package/dist/src/streams-bulk-manifest.d.ts +1 -1
- package/dist/src/streams-bulk-manifest.js +9 -9
- package/dist/src/streams-bulk-manifest.js.map +1 -1
- package/dist/src/streams-rows/index.d.ts +1 -1
- package/dist/src/streams-rows/index.js +32 -48
- package/dist/src/streams-rows/index.js.map +2 -2
- package/dist/src/subgraphs/spec.d.ts +1 -11
- package/dist/src/subgraphs/spec.js +27 -93
- package/dist/src/subgraphs/spec.js.map +3 -3
- package/dist/src/types.d.ts +1 -1
- package/migrations/0136_drop_subgraph_visibility.ts +34 -0
- package/migrations/0137_webhook_outbox_last_error.ts +27 -0
- package/migrations/0138_usage_ledger.ts +46 -0
- package/package.json +1 -1
|
@@ -102,4 +102,4 @@ declare function fetchNakamotoBlock(opts: {
|
|
|
102
102
|
blockHash: string
|
|
103
103
|
indexBlockHash: string
|
|
104
104
|
}>;
|
|
105
|
-
export {
|
|
105
|
+
export { MerkleProofStep, NAKAMOTO_BLOCK_VERSION, NAKAMOTO_BLOCK_VERSION_EPOCH_4, NakamotoBlockHeader, ProblematicTxMarker, fetchNakamotoBlock, nakamotoBlockHash, nakamotoBlockId, parseNakamotoBlockHeader, sha512_256, stacksTxid, txMerkleProof, txMerkleRoot, verifyTxMerkleProof, versionIncludesProblematicTxs };
|
|
@@ -1,19 +1,3 @@
|
|
|
1
|
-
import { createRequire } from "node:module";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __returnValue = (v) => v;
|
|
4
|
-
function __exportSetter(name, newValue) {
|
|
5
|
-
this[name] = __returnValue.bind(null, newValue);
|
|
6
|
-
}
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all)
|
|
9
|
-
__defProp(target, name, {
|
|
10
|
-
get: all[name],
|
|
11
|
-
enumerable: true,
|
|
12
|
-
configurable: true,
|
|
13
|
-
set: __exportSetter.bind(all, name)
|
|
14
|
-
});
|
|
15
|
-
};
|
|
16
|
-
|
|
17
1
|
// src/node/nakamoto.ts
|
|
18
2
|
import { createHash } from "node:crypto";
|
|
19
3
|
function sha512_256(bytes) {
|
|
@@ -200,19 +184,19 @@ async function fetchNakamotoBlock(opts) {
|
|
|
200
184
|
};
|
|
201
185
|
}
|
|
202
186
|
export {
|
|
203
|
-
|
|
204
|
-
verifyTxMerkleProof,
|
|
205
|
-
txMerkleRoot,
|
|
206
|
-
txMerkleProof,
|
|
207
|
-
stacksTxid,
|
|
208
|
-
sha512_256,
|
|
209
|
-
parseNakamotoBlockHeader,
|
|
210
|
-
nakamotoBlockId,
|
|
211
|
-
nakamotoBlockHash,
|
|
212
|
-
fetchNakamotoBlock,
|
|
187
|
+
NAKAMOTO_BLOCK_VERSION,
|
|
213
188
|
NAKAMOTO_BLOCK_VERSION_EPOCH_4,
|
|
214
|
-
|
|
189
|
+
fetchNakamotoBlock,
|
|
190
|
+
nakamotoBlockHash,
|
|
191
|
+
nakamotoBlockId,
|
|
192
|
+
parseNakamotoBlockHeader,
|
|
193
|
+
sha512_256,
|
|
194
|
+
stacksTxid,
|
|
195
|
+
txMerkleProof,
|
|
196
|
+
txMerkleRoot,
|
|
197
|
+
verifyTxMerkleProof,
|
|
198
|
+
versionIncludesProblematicTxs
|
|
215
199
|
};
|
|
216
200
|
|
|
217
|
-
//# debugId=
|
|
201
|
+
//# debugId=A1DE6C55EBE1455D64756E2164756E21
|
|
218
202
|
//# sourceMappingURL=nakamoto.js.map
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"sourcesContent": [
|
|
5
5
|
"import { createHash } from \"node:crypto\";\n\n/**\n * Nakamoto block-header parsing + consensus hashing for trustless verification.\n *\n * Version 0 is bit-exact against mainnet `stacks-node 3.4.0.0.3`. Version 1\n * (Epoch 4.0 / PoX-5, first mainnet height 8,665,568) appends\n * `problematic_txs` after `pox_treatment` and includes those bytes in the\n * signer-signature-hash preimage. Pre-4.0 hashes are unchanged.\n */\n\n/** SHA-512/256 — the hash Stacks uses everywhere (NOT truncated SHA-512). */\nexport function sha512_256(bytes: Uint8Array): Uint8Array {\n\treturn createHash(\"sha512-256\").update(bytes).digest();\n}\n\nconst toHex = (b: Uint8Array): string => Buffer.from(b).toString(\"hex\");\nconst fromHex = (h: string): Uint8Array =>\n\tUint8Array.from(Buffer.from(h.startsWith(\"0x\") ? h.slice(2) : h, \"hex\"));\n\n// Fixed-size header prefix: version..miner_signature, before signer_signature.\nconst PREFIX_LEN = 206;\nconst CONSENSUS_HASH_OFF = 17;\nconst TX_MERKLE_ROOT_OFF = 69;\nconst STATE_INDEX_ROOT_OFF = 101;\nconst TIMESTAMP_OFF = 133;\nconst MINER_SIG_OFF = 141;\nconst SIGNER_VEC_OFF = 206; // u32 count, then 65 bytes per signer\nconst SIG_LEN = 65;\nconst PROBLEMATIC_TX_MARKER_LEN = 5; // u32 tx_index ‖ u8 category\n\n/** Pre-Epoch-4.0 Nakamoto header. Omits `problematic_txs`. */\nexport const NAKAMOTO_BLOCK_VERSION = 0;\n/** Epoch 4.0+ header. Serializes and hashes `problematic_txs`. */\nexport const NAKAMOTO_BLOCK_VERSION_EPOCH_4 = 1;\n\nexport type ProblematicTxMarker = {\n\ttxIndex: number;\n\tcategory: number;\n};\n\n/** Low 7 bits are the header version; high bit 0x80 is the shadow-block flag. */\nexport function versionIncludesProblematicTxs(version: number): boolean {\n\treturn (version & 0x7f) >= NAKAMOTO_BLOCK_VERSION_EPOCH_4;\n}\n\nexport interface NakamotoBlockHeader {\n\tversion: number;\n\tchainLength: bigint;\n\tburnSpent: bigint;\n\t/** 20-byte consensus hash (hex). */\n\tconsensusHash: string;\n\t/** 32-byte parent StacksBlockId (hex). */\n\tparentBlockId: string;\n\t/** 32-byte SHA512/256 merkle root over the block's txids (hex). */\n\ttxMerkleRoot: string;\n\t/** 32-byte MARF root after applying this block (hex). */\n\tstateIndexRoot: string;\n\ttimestamp: bigint;\n\t/** 65-byte recoverable ECDSA miner signature (hex). */\n\tminerSignature: string;\n\t/** Per-signer recoverable ECDSA signatures, reward-set order (hex, 65B each). */\n\tsignerSignatures: string[];\n\t/** Full serialized pox_treatment BitVec bytes (u16 bits ‖ u32 len ‖ data). */\n\tpoxTreatment: Uint8Array;\n\t/**\n\t * Epoch 4.0+ marker list. Empty (and absent from the wire) on version 0.\n\t * An empty list still serializes as a u32 count of 0 on version 1+.\n\t */\n\tproblematicTxs: ProblematicTxMarker[];\n\t/**\n\t * Exact bytes whose SHA512/256 IS the block_hash / signer_signature_hash:\n\t * header minus the signer_signature vector. Version 0 is\n\t * prefix[0:206] ‖ pox; version 1+ is prefix[0:206] ‖ pox ‖ problematic_txs.\n\t */\n\tsignerSignatureHashPreimage: Uint8Array;\n\t/** Offset at which the tx `Vec` begins (= total header byte length). */\n\theaderByteLength: number;\n}\n\nfunction u32(b: Uint8Array, off: number): number {\n\treturn new DataView(b.buffer, b.byteOffset, b.byteLength).getUint32(off);\n}\nfunction u64(b: Uint8Array, off: number): bigint {\n\treturn new DataView(b.buffer, b.byteOffset, b.byteLength).getBigUint64(off);\n}\n\n/** Parse the Nakamoto block header from the raw `/v3/blocks` body. */\nexport function parseNakamotoBlockHeader(raw: Uint8Array): NakamotoBlockHeader {\n\tif (raw.length < PREFIX_LEN + 4) {\n\t\tthrow new Error(\"raw block too short for a Nakamoto header\");\n\t}\n\tconst version = raw[0];\n\tconst signerCount = u32(raw, SIGNER_VEC_OFF);\n\tconst sigsStart = SIGNER_VEC_OFF + 4;\n\tif (sigsStart + signerCount * SIG_LEN > raw.length) {\n\t\tthrow new Error(\"raw block truncated in signer_signature vector\");\n\t}\n\tconst signerSignatures: string[] = [];\n\tfor (let i = 0; i < signerCount; i++) {\n\t\tconst off = sigsStart + i * SIG_LEN;\n\t\tsignerSignatures.push(toHex(raw.subarray(off, off + SIG_LEN)));\n\t}\n\t// pox_treatment: u16 num_bits ‖ u32 data_len ‖ data[data_len].\n\tconst poxOff = sigsStart + signerCount * SIG_LEN;\n\tif (poxOff + 6 > raw.length) {\n\t\tthrow new Error(\"raw block truncated in pox_treatment\");\n\t}\n\tconst poxDataLen = u32(raw, poxOff + 2);\n\tconst poxEnd = poxOff + 6 + poxDataLen;\n\tif (poxEnd > raw.length) {\n\t\tthrow new Error(\"raw block truncated in pox_treatment data\");\n\t}\n\tconst poxTreatment = raw.subarray(poxOff, poxEnd);\n\n\t// Epoch 4.0+ (version low-7-bits >= 1): Vec<ProblematicTxMarker>\n\t// after pox_treatment. Version 0 omits the field entirely so pre-fork\n\t// hashes stay byte-identical.\n\tlet headerEnd = poxEnd;\n\tconst problematicTxs: ProblematicTxMarker[] = [];\n\tif (versionIncludesProblematicTxs(version)) {\n\t\tif (poxEnd + 4 > raw.length) {\n\t\t\tthrow new Error(\"raw block truncated in problematic_txs count\");\n\t\t}\n\t\tconst markerCount = u32(raw, poxEnd);\n\t\theaderEnd = poxEnd + 4 + markerCount * PROBLEMATIC_TX_MARKER_LEN;\n\t\tif (headerEnd > raw.length) {\n\t\t\tthrow new Error(\"raw block truncated in problematic_txs list\");\n\t\t}\n\t\tfor (let i = 0; i < markerCount; i++) {\n\t\t\tconst off = poxEnd + 4 + i * PROBLEMATIC_TX_MARKER_LEN;\n\t\t\tproblematicTxs.push({\n\t\t\t\ttxIndex: u32(raw, off),\n\t\t\t\tcategory: raw[off + 4] ?? 0,\n\t\t\t});\n\t\t}\n\t}\n\n\t// block_hash preimage = header minus signer_signature.\n\t// v0: prefix[0:206] ‖ pox\n\t// v1: prefix[0:206] ‖ pox ‖ problematic_txs (count + markers)\n\tconst markersBytes = raw.subarray(poxEnd, headerEnd);\n\tconst preimage = new Uint8Array(\n\t\tPREFIX_LEN + poxTreatment.length + markersBytes.length,\n\t);\n\tpreimage.set(raw.subarray(0, PREFIX_LEN), 0);\n\tpreimage.set(poxTreatment, PREFIX_LEN);\n\tpreimage.set(markersBytes, PREFIX_LEN + poxTreatment.length);\n\n\treturn {\n\t\tversion,\n\t\tchainLength: u64(raw, 1),\n\t\tburnSpent: u64(raw, 9),\n\t\tconsensusHash: toHex(\n\t\t\traw.subarray(CONSENSUS_HASH_OFF, CONSENSUS_HASH_OFF + 20),\n\t\t),\n\t\tparentBlockId: toHex(raw.subarray(37, 69)),\n\t\ttxMerkleRoot: toHex(\n\t\t\traw.subarray(TX_MERKLE_ROOT_OFF, TX_MERKLE_ROOT_OFF + 32),\n\t\t),\n\t\tstateIndexRoot: toHex(\n\t\t\traw.subarray(STATE_INDEX_ROOT_OFF, STATE_INDEX_ROOT_OFF + 32),\n\t\t),\n\t\ttimestamp: u64(raw, TIMESTAMP_OFF),\n\t\tminerSignature: toHex(raw.subarray(MINER_SIG_OFF, MINER_SIG_OFF + SIG_LEN)),\n\t\tsignerSignatures,\n\t\tpoxTreatment,\n\t\tproblematicTxs,\n\t\tsignerSignatureHashPreimage: preimage,\n\t\theaderByteLength: headerEnd,\n\t};\n}\n\n/**\n * block_hash (== signer_signature_hash): SHA512/256 over the header with the\n * signer_signature vector omitted. This is what each signer signs.\n */\nexport function nakamotoBlockHash(header: NakamotoBlockHeader): string {\n\treturn toHex(sha512_256(header.signerSignatureHashPreimage));\n}\n\n/** index_block_hash (StacksBlockId) = SHA512/256(block_hash ‖ consensus_hash). */\nexport function nakamotoBlockId(\n\tblockHashHex: string,\n\tconsensusHashHex: string,\n): string {\n\tconst a = fromHex(blockHashHex);\n\tconst b = fromHex(consensusHashHex);\n\tconst buf = new Uint8Array(a.length + b.length);\n\tbuf.set(a, 0);\n\tbuf.set(b, a.length);\n\treturn toHex(sha512_256(buf));\n}\n\n/** A Stacks txid = SHA512/256 of the transaction's consensus serialization. */\nexport function stacksTxid(rawTx: Uint8Array): string {\n\treturn toHex(sha512_256(rawTx));\n}\n\nconst LEAF_TAG = 0x00;\nconst NODE_TAG = 0x01;\n\nfunction tagged(tag: number, ...parts: Uint8Array[]): Uint8Array {\n\tconst len = parts.reduce((n, p) => n + p.length, 1);\n\tconst buf = new Uint8Array(len);\n\tbuf[0] = tag;\n\tlet o = 1;\n\tfor (const p of parts) {\n\t\tbuf.set(p, o);\n\t\to += p.length;\n\t}\n\treturn sha512_256(buf);\n}\n\n/**\n * tx_merkle_root over the block's txids (hex), reproducing the consensus rule:\n * leaf = H(0x00 ‖ txid), node = H(0x01 ‖ left ‖ right), odd level duplicates the\n * last node. Returns the root hex; throws on an empty tx list.\n */\nexport function txMerkleRoot(txidsHex: string[]): string {\n\tif (txidsHex.length === 0) throw new Error(\"no transactions\");\n\tlet level = txidsHex.map((t) => tagged(LEAF_TAG, fromHex(t)));\n\twhile (level.length > 1) {\n\t\tif (level.length % 2 === 1) level.push(level[level.length - 1]);\n\t\tconst next: Uint8Array[] = [];\n\t\tfor (let i = 0; i < level.length; i += 2) {\n\t\t\tnext.push(tagged(NODE_TAG, level[i], level[i + 1]));\n\t\t}\n\t\tlevel = next;\n\t}\n\treturn toHex(level[0]);\n}\n\n/** One authentication-path step: the sibling hash and which side it's on. */\nexport interface MerkleProofStep {\n\t/** Side the SIBLING is on relative to the accumulator. */\n\tposition: \"left\" | \"right\";\n\t/** Sibling node hash (hex). */\n\thash: string;\n}\n\n/**\n * Build the tx-inclusion authentication path for the tx at `index` in a block,\n * reproducing the consensus merkle tree (incl. duplicate-last-on-odd). The path\n * lets a verifier recompute `tx_merkle_root` from just the target txid.\n */\nexport function txMerkleProof(\n\ttxidsHex: string[],\n\tindex: number,\n): MerkleProofStep[] {\n\tif (index < 0 || index >= txidsHex.length) {\n\t\tthrow new Error(\"index out of range\");\n\t}\n\tlet level = txidsHex.map((t) => tagged(LEAF_TAG, fromHex(t)));\n\tlet idx = index;\n\tconst path: MerkleProofStep[] = [];\n\twhile (level.length > 1) {\n\t\tif (level.length % 2 === 1) level.push(level[level.length - 1]);\n\t\tconst siblingIdx = idx % 2 === 0 ? idx + 1 : idx - 1;\n\t\tpath.push({\n\t\t\tposition: idx % 2 === 0 ? \"right\" : \"left\",\n\t\t\thash: toHex(level[siblingIdx]),\n\t\t});\n\t\tconst next: Uint8Array[] = [];\n\t\tfor (let i = 0; i < level.length; i += 2) {\n\t\t\tnext.push(tagged(NODE_TAG, level[i], level[i + 1]));\n\t\t}\n\t\tlevel = next;\n\t\tidx = Math.floor(idx / 2);\n\t}\n\treturn path;\n}\n\n/**\n * Verify a tx-inclusion proof: fold the target `txid` (hex) up through `path`\n * and check it equals `txMerkleRoot` (hex). The verifier recomputes the txid\n * itself from the raw tx bytes, so nothing here is trusted.\n */\nexport function verifyTxMerkleProof(\n\ttxidHex: string,\n\tpath: MerkleProofStep[],\n\ttxMerkleRootHex: string,\n): boolean {\n\tlet acc = tagged(LEAF_TAG, fromHex(txidHex));\n\tfor (const step of path) {\n\t\tconst sib = fromHex(step.hash);\n\t\tacc =\n\t\t\tstep.position === \"right\"\n\t\t\t\t? tagged(NODE_TAG, acc, sib)\n\t\t\t\t: tagged(NODE_TAG, sib, acc);\n\t}\n\tconst root = txMerkleRootHex.startsWith(\"0x\")\n\t\t? txMerkleRootHex.slice(2)\n\t\t: txMerkleRootHex;\n\treturn toHex(acc) === root;\n}\n\n/**\n * Fetch and parse a Nakamoto block from a stacks-node. `blockId` is the\n * index_block_hash (with or without 0x). Returns the raw bytes + parsed header +\n * the recomputed block_hash / index_block_hash so a caller can cross-check.\n */\nexport async function fetchNakamotoBlock(opts: {\n\tnodeUrl: string;\n\tblockId: string;\n\tfetchImpl?: typeof fetch;\n}): Promise<{\n\traw: Uint8Array;\n\theader: NakamotoBlockHeader;\n\tblockHash: string;\n\tindexBlockHash: string;\n}> {\n\tconst id = opts.blockId.startsWith(\"0x\")\n\t\t? opts.blockId.slice(2)\n\t\t: opts.blockId;\n\tconst f = opts.fetchImpl ?? fetch;\n\tconst res = await f(`${opts.nodeUrl.replace(/\\/+$/, \"\")}/v3/blocks/${id}`);\n\tif (!res.ok) {\n\t\tthrow new Error(`/v3/blocks/${id} returned ${res.status}`);\n\t}\n\tconst raw = new Uint8Array(await res.arrayBuffer());\n\tconst header = parseNakamotoBlockHeader(raw);\n\tconst blockHash = nakamotoBlockHash(header);\n\treturn {\n\t\traw,\n\t\theader,\n\t\tblockHash,\n\t\tindexBlockHash: nakamotoBlockId(blockHash, header.consensusHash),\n\t};\n}\n"
|
|
6
6
|
],
|
|
7
|
-
"mappings": "
|
|
8
|
-
"debugId": "
|
|
7
|
+
"mappings": "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",
|
|
8
|
+
"debugId": "A1DE6C55EBE1455D64756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|
|
@@ -21,4 +21,4 @@ declare function sourceListenerUrl(): string | undefined;
|
|
|
21
21
|
declare function targetListenerUrl(): string | undefined;
|
|
22
22
|
declare function listen(channel: string, callback: (payload?: string) => void, opts?: ListenOptions): Promise<() => Promise<void>>;
|
|
23
23
|
declare function notify(channel: string, payload?: string, opts?: ListenOptions): Promise<void>;
|
|
24
|
-
export {
|
|
24
|
+
export { listen, notify, sourceListenerUrl, targetListenerUrl };
|
|
@@ -1,19 +1,3 @@
|
|
|
1
|
-
import { createRequire } from "node:module";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __returnValue = (v) => v;
|
|
4
|
-
function __exportSetter(name, newValue) {
|
|
5
|
-
this[name] = __returnValue.bind(null, newValue);
|
|
6
|
-
}
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all)
|
|
9
|
-
__defProp(target, name, {
|
|
10
|
-
get: all[name],
|
|
11
|
-
enumerable: true,
|
|
12
|
-
configurable: true,
|
|
13
|
-
set: __exportSetter.bind(all, name)
|
|
14
|
-
});
|
|
15
|
-
};
|
|
16
|
-
|
|
17
1
|
// src/queue/listener.ts
|
|
18
2
|
import postgres from "postgres";
|
|
19
3
|
function sourceListenerUrl() {
|
|
@@ -54,11 +38,11 @@ async function notify(channel, payload, opts) {
|
|
|
54
38
|
}
|
|
55
39
|
}
|
|
56
40
|
export {
|
|
57
|
-
|
|
58
|
-
sourceListenerUrl,
|
|
41
|
+
listen,
|
|
59
42
|
notify,
|
|
60
|
-
|
|
43
|
+
sourceListenerUrl,
|
|
44
|
+
targetListenerUrl
|
|
61
45
|
};
|
|
62
46
|
|
|
63
|
-
//# debugId=
|
|
47
|
+
//# debugId=572FCF166DDCA86A64756E2164756E21
|
|
64
48
|
//# sourceMappingURL=listener.js.map
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"sourcesContent": [
|
|
5
5
|
"import postgres from \"postgres\";\n\ninterface ListenOptions {\n\t/**\n\t * Connection string to LISTEN on. Defaults to `process.env.DATABASE_URL`.\n\t * In dual-DB mode, pass `SOURCE_DATABASE_URL` for indexer-fired channels\n\t * (`indexer:new_block`, `subgraph_reorg`, `tx:confirmed`) and\n\t * `TARGET_DATABASE_URL` for tenant-local channels (`subgraph_changes`).\n\t */\n\tconnectionString?: string;\n}\n\n/**\n * LISTEN/NOTIFY connection for indexer-fired channels (`indexer:new_block`,\n * `subgraph_reorg`, `tx:confirmed`) — they fire on the SOURCE (chain) DB.\n * `||` (not `??`) so an empty-string env (an unset `SOURCE_DATABASE_URL` passed\n * through docker-compose as `\"\"`) falls back to `DATABASE_URL`.\n */\nexport function sourceListenerUrl(): string | undefined {\n\treturn process.env.SOURCE_DATABASE_URL || process.env.DATABASE_URL;\n}\n\n/**\n * LISTEN/NOTIFY connection for control-plane channels (`webhooks:new_outbox`,\n * `webhooks:changed`, subgraph operations) — they fire on the TARGET DB.\n */\nexport function targetListenerUrl(): string | undefined {\n\treturn process.env.TARGET_DATABASE_URL || process.env.DATABASE_URL;\n}\n\nfunction resolveUrl(opts?: ListenOptions): string {\n\t// `||` not `??`: an empty-string connectionString (e.g. an unset\n\t// SOURCE_/TARGET_DATABASE_URL passed through docker-compose as \"\") must fall\n\t// back to DATABASE_URL, not be treated as a valid value.\n\tconst url = opts?.connectionString || process.env.DATABASE_URL;\n\tif (!url) {\n\t\tthrow new Error(\n\t\t\t\"listen/notify requires a connection string (opts.connectionString or DATABASE_URL)\",\n\t\t);\n\t}\n\treturn url;\n}\n\nexport async function listen(\n\tchannel: string,\n\tcallback: (payload?: string) => void,\n\topts?: ListenOptions,\n): Promise<() => Promise<void>> {\n\tconst client = postgres(resolveUrl(opts), {\n\t\tmax: 1,\n\t\tonnotice: () => {},\n\t});\n\n\tawait client.listen(channel, (payload) => {\n\t\tcallback(payload);\n\t});\n\n\treturn async () => {\n\t\tawait client.end();\n\t};\n}\n\nexport async function notify(\n\tchannel: string,\n\tpayload?: string,\n\topts?: ListenOptions,\n): Promise<void> {\n\tconst client = postgres(resolveUrl(opts), { max: 1 });\n\n\ttry {\n\t\tif (payload) {\n\t\t\tawait client`SELECT pg_notify(${channel}, ${payload})`;\n\t\t} else {\n\t\t\tawait client`SELECT pg_notify(${channel}, '')`;\n\t\t}\n\t} finally {\n\t\tawait client.end();\n\t}\n}\n"
|
|
6
6
|
],
|
|
7
|
-
"mappings": "
|
|
8
|
-
"debugId": "
|
|
7
|
+
"mappings": ";AAAA;AAkBO,SAAS,iBAAiB,GAAuB;AAAA,EACvD,OAAO,QAAQ,IAAI,uBAAuB,QAAQ,IAAI;AAAA;AAOhD,SAAS,iBAAiB,GAAuB;AAAA,EACvD,OAAO,QAAQ,IAAI,uBAAuB,QAAQ,IAAI;AAAA;AAGvD,SAAS,UAAU,CAAC,MAA8B;AAAA,EAIjD,MAAM,MAAM,MAAM,oBAAoB,QAAQ,IAAI;AAAA,EAClD,IAAI,CAAC,KAAK;AAAA,IACT,MAAM,IAAI,MACT,oFACD;AAAA,EACD;AAAA,EACA,OAAO;AAAA;AAGR,eAAsB,MAAM,CAC3B,SACA,UACA,MAC+B;AAAA,EAC/B,MAAM,SAAS,SAAS,WAAW,IAAI,GAAG;AAAA,IACzC,KAAK;AAAA,IACL,UAAU,MAAM;AAAA,EACjB,CAAC;AAAA,EAED,MAAM,OAAO,OAAO,SAAS,CAAC,YAAY;AAAA,IACzC,SAAS,OAAO;AAAA,GAChB;AAAA,EAED,OAAO,YAAY;AAAA,IAClB,MAAM,OAAO,IAAI;AAAA;AAAA;AAInB,eAAsB,MAAM,CAC3B,SACA,SACA,MACgB;AAAA,EAChB,MAAM,SAAS,SAAS,WAAW,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC;AAAA,EAEpD,IAAI;AAAA,IACH,IAAI,SAAS;AAAA,MACZ,MAAM,0BAA0B,YAAY;AAAA,IAC7C,EAAO;AAAA,MACN,MAAM,0BAA0B;AAAA;AAAA,YAEhC;AAAA,IACD,MAAM,OAAO,IAAI;AAAA;AAAA;",
|
|
8
|
+
"debugId": "572FCF166DDCA86A64756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|
|
@@ -423,4 +423,4 @@ declare function runPreflight(input: {
|
|
|
423
423
|
}): Promise<PreflightDecision>;
|
|
424
424
|
declare const MODULE_COMMANDS: Record<ModuleId, readonly string[]>;
|
|
425
425
|
declare function commandFor(id: ModuleId): readonly string[];
|
|
426
|
-
export {
|
|
426
|
+
export { BACKUP_MANIFEST_VERSION, BACKUP_PARTS, BackupManifest, BackupPart, BackupPlan, ConfigResult, DEFAULT_PROFILE, DiskEstimates, EmbeddedMigration, FLOORS, GuardrailNetwork, GuardrailResult, ISOLATION_FAULTS, IsolationFault, IsolationKillError, IsolationLimits, IsolationNetworkError, IsolationOomError, IsolationResult, MIGRATION_LOCK_KEY, MODULE_COMMANDS, MODULE_IDS, MODULE_STATES, MeasuredResources, MigrationRunner, ModuleHealth, ModuleId, ModuleState, NETWORKS, NODE_MODES, NodeMode, OPTIONAL_KEYS, PRESERVED, PUBLISHER_PROFILE, PlaneStatus, PreflightDecision, Preserved, REMOVABLE, REQUIRED_KEYS, Removable, RequiredConfigKey, ResourceSnapshot, RestorePrecheck, RuntimeConfig, RuntimeModule, RuntimeNetwork, RuntimeStatusReport, SECRET_KEYS, STATUS_PLANES, StatusPlane, Supervisor, SupervisorHealth, UNDERSIZED_OVERRIDE, UPGRADE_STEPS, UninstallDecision, UninstallPlan, UpgradePlan, UpgradeStep, actionFor, applyUpgrade, commandFor, createMemoryMigrationRunner, createMemoryModule, createSupervisor, decidePreflight, decryptBundle, diskFloorGb, emptyHealth, encryptBundle, isModuleId, isolateHandler, keyMatchesCanary, measureResources, migrateEmbedded, parseRuntimeConfig, planBackup, planUninstall, planUpgrade, precheckRestore, preflightResources, reportRuntimeStatus, runPreflight, sealKeyCanary, uninstallCommand };
|
|
@@ -1,19 +1,3 @@
|
|
|
1
|
-
import { createRequire } from "node:module";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __returnValue = (v) => v;
|
|
4
|
-
function __exportSetter(name, newValue) {
|
|
5
|
-
this[name] = __returnValue.bind(null, newValue);
|
|
6
|
-
}
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all)
|
|
9
|
-
__defProp(target, name, {
|
|
10
|
-
get: all[name],
|
|
11
|
-
enumerable: true,
|
|
12
|
-
configurable: true,
|
|
13
|
-
set: __exportSetter.bind(all, name)
|
|
14
|
-
});
|
|
15
|
-
};
|
|
16
|
-
|
|
17
1
|
// src/runtime/modules.ts
|
|
18
2
|
var MODULE_IDS = [
|
|
19
3
|
"api",
|
|
@@ -145,8 +129,8 @@ function createSupervisor(modules) {
|
|
|
145
129
|
} catch {}
|
|
146
130
|
},
|
|
147
131
|
health() {
|
|
148
|
-
const
|
|
149
|
-
return { status: aggregate(
|
|
132
|
+
const modules = snapshot();
|
|
133
|
+
return { status: aggregate(modules), modules };
|
|
150
134
|
}
|
|
151
135
|
};
|
|
152
136
|
}
|
|
@@ -942,56 +926,56 @@ function commandFor(id) {
|
|
|
942
926
|
return MODULE_COMMANDS[id];
|
|
943
927
|
}
|
|
944
928
|
export {
|
|
945
|
-
|
|
946
|
-
sealKeyCanary,
|
|
947
|
-
runPreflight,
|
|
948
|
-
reportRuntimeStatus,
|
|
949
|
-
preflightResources,
|
|
950
|
-
precheckRestore,
|
|
951
|
-
planUpgrade,
|
|
952
|
-
planUninstall,
|
|
953
|
-
planBackup,
|
|
954
|
-
parseRuntimeConfig,
|
|
955
|
-
migrateEmbedded,
|
|
956
|
-
measureResources,
|
|
957
|
-
keyMatchesCanary,
|
|
958
|
-
isolateHandler,
|
|
959
|
-
isModuleId,
|
|
960
|
-
encryptBundle,
|
|
961
|
-
emptyHealth,
|
|
962
|
-
diskFloorGb,
|
|
963
|
-
decryptBundle,
|
|
964
|
-
decidePreflight,
|
|
965
|
-
createSupervisor,
|
|
966
|
-
createMemoryModule,
|
|
967
|
-
createMemoryMigrationRunner,
|
|
968
|
-
commandFor,
|
|
969
|
-
applyUpgrade,
|
|
970
|
-
actionFor,
|
|
971
|
-
UPGRADE_STEPS,
|
|
972
|
-
UNDERSIZED_OVERRIDE,
|
|
973
|
-
STATUS_PLANES,
|
|
974
|
-
SECRET_KEYS,
|
|
975
|
-
REQUIRED_KEYS,
|
|
976
|
-
REMOVABLE,
|
|
977
|
-
PUBLISHER_PROFILE,
|
|
978
|
-
PRESERVED,
|
|
979
|
-
OPTIONAL_KEYS,
|
|
980
|
-
NODE_MODES,
|
|
981
|
-
NETWORKS,
|
|
982
|
-
MODULE_STATES,
|
|
983
|
-
MODULE_IDS,
|
|
984
|
-
MODULE_COMMANDS,
|
|
985
|
-
MIGRATION_LOCK_KEY,
|
|
986
|
-
IsolationOomError,
|
|
987
|
-
IsolationNetworkError,
|
|
988
|
-
IsolationKillError,
|
|
989
|
-
ISOLATION_FAULTS,
|
|
990
|
-
FLOORS,
|
|
991
|
-
DEFAULT_PROFILE,
|
|
929
|
+
BACKUP_MANIFEST_VERSION,
|
|
992
930
|
BACKUP_PARTS,
|
|
993
|
-
|
|
931
|
+
DEFAULT_PROFILE,
|
|
932
|
+
FLOORS,
|
|
933
|
+
ISOLATION_FAULTS,
|
|
934
|
+
IsolationKillError,
|
|
935
|
+
IsolationNetworkError,
|
|
936
|
+
IsolationOomError,
|
|
937
|
+
MIGRATION_LOCK_KEY,
|
|
938
|
+
MODULE_COMMANDS,
|
|
939
|
+
MODULE_IDS,
|
|
940
|
+
MODULE_STATES,
|
|
941
|
+
NETWORKS,
|
|
942
|
+
NODE_MODES,
|
|
943
|
+
OPTIONAL_KEYS,
|
|
944
|
+
PRESERVED,
|
|
945
|
+
PUBLISHER_PROFILE,
|
|
946
|
+
REMOVABLE,
|
|
947
|
+
REQUIRED_KEYS,
|
|
948
|
+
SECRET_KEYS,
|
|
949
|
+
STATUS_PLANES,
|
|
950
|
+
UNDERSIZED_OVERRIDE,
|
|
951
|
+
UPGRADE_STEPS,
|
|
952
|
+
actionFor,
|
|
953
|
+
applyUpgrade,
|
|
954
|
+
commandFor,
|
|
955
|
+
createMemoryMigrationRunner,
|
|
956
|
+
createMemoryModule,
|
|
957
|
+
createSupervisor,
|
|
958
|
+
decidePreflight,
|
|
959
|
+
decryptBundle,
|
|
960
|
+
diskFloorGb,
|
|
961
|
+
emptyHealth,
|
|
962
|
+
encryptBundle,
|
|
963
|
+
isModuleId,
|
|
964
|
+
isolateHandler,
|
|
965
|
+
keyMatchesCanary,
|
|
966
|
+
measureResources,
|
|
967
|
+
migrateEmbedded,
|
|
968
|
+
parseRuntimeConfig,
|
|
969
|
+
planBackup,
|
|
970
|
+
planUninstall,
|
|
971
|
+
planUpgrade,
|
|
972
|
+
precheckRestore,
|
|
973
|
+
preflightResources,
|
|
974
|
+
reportRuntimeStatus,
|
|
975
|
+
runPreflight,
|
|
976
|
+
sealKeyCanary,
|
|
977
|
+
uninstallCommand
|
|
994
978
|
};
|
|
995
979
|
|
|
996
|
-
//# debugId=
|
|
980
|
+
//# debugId=1E88D745090C651F64756E2164756E21
|
|
997
981
|
//# sourceMappingURL=index.js.map
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"/**\n * Boot-time resource preflight — the thing that makes the guardrail floors real.\n *\n * `preflightResources` existed and was correct for a long time, but nothing\n * called it, so the self-host docs claimed \"constrained boxes fail at start\"\n * while no box ever did. This module closes that gap.\n *\n * The refusal is deliberately overridable. Enforcing a floor on a runtime that\n * is already released can stop a running install from coming back up after an\n * upgrade — a box that was undersized yesterday is still undersized today, and\n * discovering that during a restart is the worst possible moment. So an\n * operator can proceed past the refusal with SECONDLAYER_ALLOW_UNDERSIZED,\n * which converts a silent risk into an acknowledged one. That is the honest\n * trade: we refuse by default, and we never take away the operator's ability to\n * run their own box.\n */\nimport { type GuardrailNetwork, preflightResources } from \"./guardrails.ts\";\nimport { type MeasuredResources, measureResources } from \"./resources.ts\";\n\nexport const UNDERSIZED_OVERRIDE = \"SECONDLAYER_ALLOW_UNDERSIZED\";\n\nexport type PreflightDecision = {\n\taction: \"pass\" | \"warn\" | \"refuse\";\n\tmessages: string[];\n};\n\nfunction isOverridden(env: Record<string, string | undefined>): boolean {\n\treturn env[UNDERSIZED_OVERRIDE]?.trim().toLowerCase() === \"true\";\n}\n\nexport function decidePreflight(input: {\n\tmeasured: MeasuredResources;\n\tmode: \"external\" | \"stacks\" | \"full\";\n\tnetwork: GuardrailNetwork;\n\tenv?: Record<string, string | undefined>;\n}): PreflightDecision {\n\tconst env = input.env ?? {};\n\tconst result = preflightResources(\n\t\tinput.measured.snapshot,\n\t\tinput.mode,\n\t\tinput.network,\n\t);\n\n\tconst messages: string[] = [];\n\t// Say what we could not see. An operator debugging a surprising pass\n\t// deserves to know the check was partial.\n\tif (input.measured.unknown.length > 0) {\n\t\tmessages.push(\n\t\t\t`resource preflight could not measure: ${input.measured.unknown.join(\", \")}`,\n\t\t);\n\t}\n\n\tif (result.ok) {\n\t\treturn { action: messages.length > 0 ? \"warn\" : \"pass\", messages };\n\t}\n\n\tmessages.push(...result.errors);\n\tif (isOverridden(env)) {\n\t\tmessages.push(\n\t\t\t`${UNDERSIZED_OVERRIDE}=true — starting anyway. This box is below the documented floor; expect to run out of disk as history accumulates.`,\n\t\t);\n\t\treturn { action: \"warn\", messages };\n\t}\n\n\tmessages.push(\n\t\t`Refusing to start. Resize the box, or set ${UNDERSIZED_OVERRIDE}=true to proceed at your own risk. Sizing guidance: https://www.secondlayer.tools/docs/self-host#guardrails`,\n\t);\n\treturn { action: \"refuse\", messages };\n}\n\n/** Measure this box and decide. Returns the decision; the caller exits. */\nexport async function runPreflight(input: {\n\tdataDir: string;\n\tmode: \"external\" | \"stacks\" | \"full\";\n\tnetwork: GuardrailNetwork;\n\tquery?: (sql: string) => Promise<Array<Record<string, unknown>>>;\n\tenv?: Record<string, string | undefined>;\n}): Promise<PreflightDecision> {\n\tconst measured = await measureResources({\n\t\tdataDir: input.dataDir,\n\t\tquery: input.query,\n\t});\n\treturn decidePreflight({\n\t\tmeasured,\n\t\tmode: input.mode,\n\t\tnetwork: input.network,\n\t\tenv: input.env,\n\t});\n}\n",
|
|
17
17
|
"/**\n * Child-process commands the one-box supervisor starts.\n * Publisher stays off the default profile.\n */\n\nimport type { ModuleId } from \"./modules.ts\";\n\nexport const MODULE_COMMANDS: Record<ModuleId, readonly string[]> = {\n\tapi: [\"bun\", \"run\", \"packages/api/src/index.ts\"],\n\tingest: [\"bun\", \"run\", \"packages/indexer/src/index.ts\"],\n\tdecoder: [\"bun\", \"run\", \"packages/indexer/src/decode/service.ts\"],\n\tsubgraph: [\"bun\", \"run\", \"packages/subgraphs/src/service.ts\"],\n\tnotification: [\"bun\", \"run\", \"packages/subgraphs/src/webhook-service.ts\"],\n\tverification: [\"bun\", \"run\", \"packages/shared/src/runtime/verify-loop.ts\"],\n\tpublisher: [\"bun\", \"run\", \"packages/indexer/src/streams-bulk/scheduler.ts\"],\n};\n\nexport function commandFor(id: ModuleId): readonly string[] {\n\treturn MODULE_COMMANDS[id];\n}\n"
|
|
18
18
|
],
|
|
19
|
-
"mappings": "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",
|
|
20
|
-
"debugId": "
|
|
19
|
+
"mappings": "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",
|
|
20
|
+
"debugId": "1E88D745090C651F64756E2164756E21",
|
|
21
21
|
"names": []
|
|
22
22
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
interface DeploySubgraphRequest {
|
|
3
3
|
name: string;
|
|
4
|
-
version?: string;
|
|
5
4
|
description?: string;
|
|
6
5
|
sources: Record<string, Record<string, unknown>>;
|
|
7
6
|
schema: Record<string, unknown>;
|
|
@@ -54,7 +53,6 @@ interface SubgraphSummary {
|
|
|
54
53
|
gapCount: number;
|
|
55
54
|
/** history_filling = expected gaps while a tip-first backfill op runs. */
|
|
56
55
|
integrity: "complete" | "gaps_detected" | "history_filling";
|
|
57
|
-
visibility?: "public" | "private";
|
|
58
56
|
/** Most recent indexing error reason + when it occurred, if any. */
|
|
59
57
|
lastError?: string | null;
|
|
60
58
|
lastErrorAt?: string | null;
|
|
@@ -111,7 +109,6 @@ interface SubgraphDetail {
|
|
|
111
109
|
version: string;
|
|
112
110
|
schemaHash?: string;
|
|
113
111
|
status: string;
|
|
114
|
-
visibility?: "public" | "private";
|
|
115
112
|
lastProcessedBlock: number;
|
|
116
113
|
description?: string;
|
|
117
114
|
sources?: Record<string, unknown>;
|
|
@@ -424,6 +421,13 @@ interface WebhookDetail extends WebhookSummary {
|
|
|
424
421
|
circuitFailures: number;
|
|
425
422
|
circuitOpenedAt: string | null;
|
|
426
423
|
lastError: string | null;
|
|
424
|
+
/** Set on a `kind="chain"` webhook when this instance's chain-trigger
|
|
425
|
+
* evaluator isn't running (`SUBGRAPH_SOURCE` != `streams-index`) — the
|
|
426
|
+
* webhook will never fire until that's fixed. Null otherwise. Surfaced
|
|
427
|
+
* on create (so it's seen immediately) and on every read (so `secondlayer
|
|
428
|
+
* webhooks doctor` reports it for a webhook created before the mismatch,
|
|
429
|
+
* or on an instance whose config changed since). */
|
|
430
|
+
warning: string | null;
|
|
427
431
|
}
|
|
428
432
|
interface CreateWebhookResponse {
|
|
429
433
|
webhook: WebhookDetail;
|
|
@@ -472,4 +476,4 @@ declare function validateWebhookFilterForTable(input: {
|
|
|
472
476
|
filter?: unknown
|
|
473
477
|
tables: WebhookSchemaTables
|
|
474
478
|
}): string[];
|
|
475
|
-
export {
|
|
479
|
+
export { CHAIN_TRIGGER_FIELDS, CHAIN_TRIGGER_TYPES, CreateWebhookRequest, CreateWebhookRequestSchema, CreateWebhookResponse, DeadRow, DeliveryRow, DeploySubgraphRequest, DeploySubgraphRequestSchema, DeploySubgraphResponse, ParsedCreateWebhookRequest, ParsedReplayWebhookRequest, ParsedUpdateWebhookRequest, ReindexResponse, ReplayResult, ReplayWebhookRequest, ReplayWebhookRequestSchema, RotateSecretResponse, SubgraphAggregateParams, SubgraphAggregateResponse, SubgraphDetail, SubgraphGapEntry, SubgraphGapRange, SubgraphGapsResponse, SubgraphQueryParams, SubgraphSummary, SubgraphSyncInfo, UpdateWebhookRequest, UpdateWebhookRequestSchema, WEBHOOK_FILTER_OPERATORS, WEBHOOK_FORMATS, WEBHOOK_RUNTIMES, WEBHOOK_STATUSES, WebhookDetail, WebhookFilter, WebhookFilterClause, WebhookFilterClauseSchema, WebhookFilterOperator, WebhookFilterOperatorSchema, WebhookFilterPrimitive, WebhookFilterPrimitiveSchema, WebhookFilterSchema, WebhookFormatSchema, WebhookRuntimeSchema, WebhookSchemaColumn, WebhookSchemaTable, WebhookSchemaTables, WebhookStatusSchema, WebhookSummary, formatWebhookSchemaErrors, validateWebhookFilterForTable };
|
|
@@ -1,24 +1,7 @@
|
|
|
1
|
-
import { createRequire } from "node:module";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __returnValue = (v) => v;
|
|
4
|
-
function __exportSetter(name, newValue) {
|
|
5
|
-
this[name] = __returnValue.bind(null, newValue);
|
|
6
|
-
}
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all)
|
|
9
|
-
__defProp(target, name, {
|
|
10
|
-
get: all[name],
|
|
11
|
-
enumerable: true,
|
|
12
|
-
configurable: true,
|
|
13
|
-
set: __exportSetter.bind(all, name)
|
|
14
|
-
});
|
|
15
|
-
};
|
|
16
|
-
|
|
17
1
|
// src/schemas/subgraphs.ts
|
|
18
2
|
import { z } from "zod";
|
|
19
3
|
var DeploySubgraphRequestSchema = z.object({
|
|
20
4
|
name: z.string().regex(/^[a-z0-9-]+$/, "lowercase alphanumeric + hyphens only").max(63),
|
|
21
|
-
version: z.string().optional(),
|
|
22
5
|
description: z.string().optional(),
|
|
23
6
|
sources: z.record(z.string(), z.record(z.string(), z.unknown())).refine((s) => Object.keys(s).length > 0, "Must have at least one source"),
|
|
24
7
|
schema: z.record(z.string(), z.unknown()),
|
|
@@ -27,7 +10,6 @@ var DeploySubgraphRequestSchema = z.object({
|
|
|
27
10
|
sourceCode: z.string().max(1048576, "source code exceeds 1MB limit").optional(),
|
|
28
11
|
dryRun: z.boolean().optional()
|
|
29
12
|
});
|
|
30
|
-
|
|
31
13
|
// src/schemas/webhooks.ts
|
|
32
14
|
import { z as z2 } from "zod";
|
|
33
15
|
var WEBHOOK_FORMATS = [
|
|
@@ -45,6 +27,47 @@ var WEBHOOK_RUNTIMES = [
|
|
|
45
27
|
"node"
|
|
46
28
|
];
|
|
47
29
|
var WEBHOOK_STATUSES = ["active", "paused", "error"];
|
|
30
|
+
var WEBHOOK_MAX_RETRIES_CEILING_DEFAULT = 100;
|
|
31
|
+
var WEBHOOK_TIMEOUT_MS_CEILING_DEFAULT = 300000;
|
|
32
|
+
function ceilingFromEnv(envVar, fallback) {
|
|
33
|
+
const raw = process.env[envVar];
|
|
34
|
+
if (raw === undefined)
|
|
35
|
+
return fallback;
|
|
36
|
+
const parsed = Number.parseInt(raw, 10);
|
|
37
|
+
return Number.isFinite(parsed) && parsed > 0 ? parsed : fallback;
|
|
38
|
+
}
|
|
39
|
+
function webhookMaxRetriesCeiling() {
|
|
40
|
+
return ceilingFromEnv("WEBHOOK_MAX_RETRIES_CEILING", WEBHOOK_MAX_RETRIES_CEILING_DEFAULT);
|
|
41
|
+
}
|
|
42
|
+
function webhookTimeoutMsCeiling() {
|
|
43
|
+
return ceilingFromEnv("WEBHOOK_TIMEOUT_MS_CEILING", WEBHOOK_TIMEOUT_MS_CEILING_DEFAULT);
|
|
44
|
+
}
|
|
45
|
+
function maxRetriesField() {
|
|
46
|
+
return z2.number().int().min(0).optional().superRefine((v, ctx) => {
|
|
47
|
+
if (v === undefined)
|
|
48
|
+
return;
|
|
49
|
+
const ceiling = webhookMaxRetriesCeiling();
|
|
50
|
+
if (v > ceiling) {
|
|
51
|
+
ctx.addIssue({
|
|
52
|
+
code: "custom",
|
|
53
|
+
message: `maxRetries exceeds ceiling (${ceiling})`
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
function timeoutMsField() {
|
|
59
|
+
return z2.number().int().min(100).optional().superRefine((v, ctx) => {
|
|
60
|
+
if (v === undefined)
|
|
61
|
+
return;
|
|
62
|
+
const ceiling = webhookTimeoutMsCeiling();
|
|
63
|
+
if (v > ceiling) {
|
|
64
|
+
ctx.addIssue({
|
|
65
|
+
code: "custom",
|
|
66
|
+
message: `timeoutMs exceeds ceiling (${ceiling})`
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
}
|
|
48
71
|
var WEBHOOK_FILTER_OPERATORS = [
|
|
49
72
|
"eq",
|
|
50
73
|
"neq",
|
|
@@ -265,8 +288,8 @@ var CreateWebhookRequestSchema = z2.object({
|
|
|
265
288
|
format: WebhookFormatSchema.default("standard-webhooks"),
|
|
266
289
|
runtime: WebhookRuntimeSchema.nullable().optional(),
|
|
267
290
|
authConfig: z2.record(z2.string(), z2.unknown()).optional(),
|
|
268
|
-
maxRetries:
|
|
269
|
-
timeoutMs:
|
|
291
|
+
maxRetries: maxRetriesField(),
|
|
292
|
+
timeoutMs: timeoutMsField(),
|
|
270
293
|
concurrency: z2.number().int().min(1).max(100).optional()
|
|
271
294
|
}).refine((v) => {
|
|
272
295
|
const subgraphMode = v.subgraphName !== undefined || v.tableName !== undefined;
|
|
@@ -289,8 +312,8 @@ var UpdateWebhookRequestSchema = z2.object({
|
|
|
289
312
|
format: WebhookFormatSchema.optional(),
|
|
290
313
|
runtime: WebhookRuntimeSchema.nullable().optional(),
|
|
291
314
|
authConfig: z2.record(z2.string(), z2.unknown()).optional(),
|
|
292
|
-
maxRetries:
|
|
293
|
-
timeoutMs:
|
|
315
|
+
maxRetries: maxRetriesField(),
|
|
316
|
+
timeoutMs: timeoutMsField(),
|
|
294
317
|
concurrency: z2.number().int().min(1).max(100).optional()
|
|
295
318
|
}).refine((value) => Object.keys(value).length > 0, {
|
|
296
319
|
message: "At least one field must be provided"
|
|
@@ -431,26 +454,26 @@ function validateWebhookFilterForTable(input) {
|
|
|
431
454
|
return errors;
|
|
432
455
|
}
|
|
433
456
|
export {
|
|
434
|
-
|
|
435
|
-
formatWebhookSchemaErrors,
|
|
436
|
-
WebhookStatusSchema,
|
|
437
|
-
WebhookRuntimeSchema,
|
|
438
|
-
WebhookFormatSchema,
|
|
439
|
-
WebhookFilterSchema,
|
|
440
|
-
WebhookFilterPrimitiveSchema,
|
|
441
|
-
WebhookFilterOperatorSchema,
|
|
442
|
-
WebhookFilterClauseSchema,
|
|
443
|
-
WEBHOOK_STATUSES,
|
|
444
|
-
WEBHOOK_RUNTIMES,
|
|
445
|
-
WEBHOOK_FORMATS,
|
|
446
|
-
WEBHOOK_FILTER_OPERATORS,
|
|
447
|
-
UpdateWebhookRequestSchema,
|
|
448
|
-
ReplayWebhookRequestSchema,
|
|
449
|
-
DeploySubgraphRequestSchema,
|
|
450
|
-
CreateWebhookRequestSchema,
|
|
457
|
+
CHAIN_TRIGGER_FIELDS,
|
|
451
458
|
CHAIN_TRIGGER_TYPES,
|
|
452
|
-
|
|
459
|
+
CreateWebhookRequestSchema,
|
|
460
|
+
DeploySubgraphRequestSchema,
|
|
461
|
+
ReplayWebhookRequestSchema,
|
|
462
|
+
UpdateWebhookRequestSchema,
|
|
463
|
+
WEBHOOK_FILTER_OPERATORS,
|
|
464
|
+
WEBHOOK_FORMATS,
|
|
465
|
+
WEBHOOK_RUNTIMES,
|
|
466
|
+
WEBHOOK_STATUSES,
|
|
467
|
+
WebhookFilterClauseSchema,
|
|
468
|
+
WebhookFilterOperatorSchema,
|
|
469
|
+
WebhookFilterPrimitiveSchema,
|
|
470
|
+
WebhookFilterSchema,
|
|
471
|
+
WebhookFormatSchema,
|
|
472
|
+
WebhookRuntimeSchema,
|
|
473
|
+
WebhookStatusSchema,
|
|
474
|
+
formatWebhookSchemaErrors,
|
|
475
|
+
validateWebhookFilterForTable
|
|
453
476
|
};
|
|
454
477
|
|
|
455
|
-
//# debugId=
|
|
478
|
+
//# debugId=FCD340D7FE7ACB2C64756E2164756E21
|
|
456
479
|
//# sourceMappingURL=index.js.map
|