@usherlabs/cex-broker 0.2.48 → 0.2.50
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/commands/cex-canonical-orderbook-export.js +72 -358
- package/dist/commands/cex-canonical-orderbook-export.js.map +7 -19
- package/dist/commands/cli.js +224 -67
- package/dist/commands/market-data-vendor-backfill.js +975 -1198
- package/dist/commands/market-data-vendor-backfill.js.map +13 -25
- package/dist/helpers/logger.d.ts +4 -0
- package/dist/helpers/market-data-vendor-backfill/cryptohftdata.d.ts +3 -1
- package/dist/helpers/market-data-vendor-backfill/manifests.d.ts +58 -4
- package/dist/helpers/market-data-vendor-backfill/semantic-verification.d.ts +1 -0
- package/dist/helpers/otel.d.ts +1 -0
- package/dist/helpers/trace-context.d.ts +8 -0
- package/dist/index.js +183 -63
- package/dist/index.js.map +9 -8
- package/dist/market-data-preparation/fixtures/conformance-v2.json +8 -8
- package/dist/market-data-preparation/policies/capability-policy-v1.json +28 -0
- package/dist/market-data-preparation/policies/capability-policy.json +14 -3
- package/dist/market-data-preparation/policies/resource-policy-v1.json +16 -0
- package/dist/market-data-preparation/policies/resource-policy.json +3 -3
- package/dist/market-data-preparation.js +70 -359
- package/dist/market-data-preparation.js.map +9 -21
- package/dist/market-data-vendor-backfill/policies/capability-policy-v2.json +39 -0
- package/dist/market-data-vendor-backfill/policies/resource-policy-v2.json +16 -0
- package/dist/market-data-vendor-backfill.d.ts +2 -2
- package/dist/market-data-vendor-backfill.js +1528 -1750
- package/dist/market-data-vendor-backfill.js.map +13 -25
- package/package.json +1 -1
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
"policy_sha256": "51f522286ad24ec55525c19cad5c2c37043f9325a5a8f20d838adb7fd71191bf"
|
|
27
27
|
},
|
|
28
28
|
"resource_policy": {
|
|
29
|
-
"policy_id": "market-data-vendor-backfill-resources/
|
|
30
|
-
"policy_sha256": "
|
|
29
|
+
"policy_id": "market-data-vendor-backfill-resources/v2",
|
|
30
|
+
"policy_sha256": "5c095c9af4450a0dd110cae04215b9188c6522ab16f4524a41b6122b154160a2"
|
|
31
31
|
},
|
|
32
32
|
"started_at": "2026-08-20T12:00:01.000Z",
|
|
33
33
|
"completed_at": "2026-08-20T12:00:03.000Z",
|
|
@@ -191,7 +191,7 @@
|
|
|
191
191
|
"promoted_rows": 50
|
|
192
192
|
}
|
|
193
193
|
},
|
|
194
|
-
"result_sha256": "
|
|
194
|
+
"result_sha256": "3d77158ab5609eab483333810b59b38967ca399feaee6e8a8f62aa5196814cfe"
|
|
195
195
|
},
|
|
196
196
|
"canonical_orderbook_export_request": {
|
|
197
197
|
"schema_id": "https://schemas.usher.so/cex-canonical-orderbook-export-request/v1",
|
|
@@ -406,18 +406,18 @@
|
|
|
406
406
|
}
|
|
407
407
|
],
|
|
408
408
|
"capability_policy": {
|
|
409
|
-
"policy_id": "market-data-vendor-backfill-capabilities/
|
|
410
|
-
"policy_sha256": "
|
|
409
|
+
"policy_id": "market-data-vendor-backfill-capabilities/v2",
|
|
410
|
+
"policy_sha256": "1dc3f918c6de98d4f65dc1439e16e8c8e0269b5eb9063e3617a52e457fdc24d1"
|
|
411
411
|
},
|
|
412
412
|
"resource_policy": {
|
|
413
|
-
"policy_id": "market-data-vendor-backfill-resources/
|
|
414
|
-
"policy_sha256": "
|
|
413
|
+
"policy_id": "market-data-vendor-backfill-resources/v2",
|
|
414
|
+
"policy_sha256": "5c095c9af4450a0dd110cae04215b9188c6522ab16f4524a41b6122b154160a2"
|
|
415
415
|
}
|
|
416
416
|
}
|
|
417
417
|
},
|
|
418
418
|
"identities": {
|
|
419
419
|
"manifest_sha256": "0e226165c78c6217a765c09be15b6305a574e69b6e05e8607f399b468ba04d5b",
|
|
420
|
-
"backfill_result_sha256": "
|
|
420
|
+
"backfill_result_sha256": "3d77158ab5609eab483333810b59b38967ca399feaee6e8a8f62aa5196814cfe",
|
|
421
421
|
"selection_sha256": "cc4869df6d08c79d030c8407e7a55e5c534e6a96da7c1ac3f726e814c66a108e",
|
|
422
422
|
"export_result_sha256": "4be9b182d1858bf4dd60da823e245f9a6ca472e99b3b50b94c17a48c71c9dc67"
|
|
423
423
|
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"policy_id": "market-data-vendor-backfill-capabilities/v1",
|
|
3
|
+
"provider": "cryptohftdata",
|
|
4
|
+
"adapter_policy": {
|
|
5
|
+
"policy_id": "cryptohftdata-orderbook-adapter/v1",
|
|
6
|
+
"adapter_version": "cryptohftdata-orderbook/v2"
|
|
7
|
+
},
|
|
8
|
+
"acquisition_policy": {
|
|
9
|
+
"policy_id": "cryptohftdata-hourly-acquisition/v1",
|
|
10
|
+
"object_granularity": "utc_hour",
|
|
11
|
+
"authentication": "bearer",
|
|
12
|
+
"initialization_lookback_ms": 0
|
|
13
|
+
},
|
|
14
|
+
"profiles": [
|
|
15
|
+
{
|
|
16
|
+
"exchange": "okx",
|
|
17
|
+
"market_type": "spot",
|
|
18
|
+
"feed": "ORDERBOOK",
|
|
19
|
+
"canonical_trading_pair": "ARB-USDT",
|
|
20
|
+
"provider_exchange_id": "okx_spot",
|
|
21
|
+
"resolved_symbol": "ARB-USDT",
|
|
22
|
+
"construction_modes": ["sampled_top_n_snapshot"],
|
|
23
|
+
"source_policies": ["authoritative_window"],
|
|
24
|
+
"max_depth": 400
|
|
25
|
+
}
|
|
26
|
+
],
|
|
27
|
+
"policy_sha256": "51f522286ad24ec55525c19cad5c2c37043f9325a5a8f20d838adb7fd71191bf"
|
|
28
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"policy_id": "market-data-vendor-backfill-capabilities/
|
|
2
|
+
"policy_id": "market-data-vendor-backfill-capabilities/v2",
|
|
3
3
|
"provider": "cryptohftdata",
|
|
4
4
|
"adapter_policy": {
|
|
5
5
|
"policy_id": "cryptohftdata-orderbook-adapter/v1",
|
|
@@ -20,9 +20,20 @@
|
|
|
20
20
|
"provider_exchange_id": "okx_spot",
|
|
21
21
|
"resolved_symbol": "ARB-USDT",
|
|
22
22
|
"construction_modes": ["sampled_top_n_snapshot"],
|
|
23
|
-
"source_policies": ["authoritative_window"],
|
|
23
|
+
"source_policies": ["authoritative_window", "fill_gaps"],
|
|
24
|
+
"max_depth": 400
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"exchange": "okx",
|
|
28
|
+
"market_type": "spot",
|
|
29
|
+
"feed": "ORDERBOOK",
|
|
30
|
+
"canonical_trading_pair": "ARB-USDC",
|
|
31
|
+
"provider_exchange_id": "okx_spot",
|
|
32
|
+
"resolved_symbol": "ARB-USDC",
|
|
33
|
+
"construction_modes": ["sampled_top_n_snapshot"],
|
|
34
|
+
"source_policies": ["authoritative_window", "fill_gaps"],
|
|
24
35
|
"max_depth": 400
|
|
25
36
|
}
|
|
26
37
|
],
|
|
27
|
-
"policy_sha256": "
|
|
38
|
+
"policy_sha256": "1dc3f918c6de98d4f65dc1439e16e8c8e0269b5eb9063e3617a52e457fdc24d1"
|
|
28
39
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"policy_id": "market-data-vendor-backfill-resources/v1",
|
|
3
|
+
"limits": {
|
|
4
|
+
"max_files": 10000,
|
|
5
|
+
"max_bytes": 107374182400,
|
|
6
|
+
"max_rows": 1000000000,
|
|
7
|
+
"max_duration_ms": 86400000,
|
|
8
|
+
"max_boundary_lookback_ms": 604800000
|
|
9
|
+
},
|
|
10
|
+
"request_bounds": {
|
|
11
|
+
"max_depth": 500,
|
|
12
|
+
"max_window_ms": 604800000,
|
|
13
|
+
"max_required_events": 100000
|
|
14
|
+
},
|
|
15
|
+
"policy_sha256": "38d4f47cbd15794efed570801556a95f724561a8b45567d518c044da9d454142"
|
|
16
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"policy_id": "market-data-vendor-backfill-resources/
|
|
2
|
+
"policy_id": "market-data-vendor-backfill-resources/v2",
|
|
3
3
|
"limits": {
|
|
4
4
|
"max_files": 10000,
|
|
5
5
|
"max_bytes": 107374182400,
|
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
},
|
|
10
10
|
"request_bounds": {
|
|
11
11
|
"max_depth": 500,
|
|
12
|
-
"max_window_ms":
|
|
12
|
+
"max_window_ms": 2678400000,
|
|
13
13
|
"max_required_events": 100000
|
|
14
14
|
},
|
|
15
|
-
"policy_sha256": "
|
|
15
|
+
"policy_sha256": "5c095c9af4450a0dd110cae04215b9188c6522ab16f4524a41b6122b154160a2"
|
|
16
16
|
}
|
|
@@ -8256,241 +8256,6 @@ var require_src = __commonJS((exports) => {
|
|
|
8256
8256
|
};
|
|
8257
8257
|
});
|
|
8258
8258
|
|
|
8259
|
-
// node_modules/@loglayer/transport-opentelemetry/node_modules/@opentelemetry/api-logs/build/src/types/LogRecord.js
|
|
8260
|
-
var require_LogRecord = __commonJS((exports) => {
|
|
8261
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8262
|
-
exports.SeverityNumber = undefined;
|
|
8263
|
-
var SeverityNumber;
|
|
8264
|
-
(function(SeverityNumber2) {
|
|
8265
|
-
SeverityNumber2[SeverityNumber2["UNSPECIFIED"] = 0] = "UNSPECIFIED";
|
|
8266
|
-
SeverityNumber2[SeverityNumber2["TRACE"] = 1] = "TRACE";
|
|
8267
|
-
SeverityNumber2[SeverityNumber2["TRACE2"] = 2] = "TRACE2";
|
|
8268
|
-
SeverityNumber2[SeverityNumber2["TRACE3"] = 3] = "TRACE3";
|
|
8269
|
-
SeverityNumber2[SeverityNumber2["TRACE4"] = 4] = "TRACE4";
|
|
8270
|
-
SeverityNumber2[SeverityNumber2["DEBUG"] = 5] = "DEBUG";
|
|
8271
|
-
SeverityNumber2[SeverityNumber2["DEBUG2"] = 6] = "DEBUG2";
|
|
8272
|
-
SeverityNumber2[SeverityNumber2["DEBUG3"] = 7] = "DEBUG3";
|
|
8273
|
-
SeverityNumber2[SeverityNumber2["DEBUG4"] = 8] = "DEBUG4";
|
|
8274
|
-
SeverityNumber2[SeverityNumber2["INFO"] = 9] = "INFO";
|
|
8275
|
-
SeverityNumber2[SeverityNumber2["INFO2"] = 10] = "INFO2";
|
|
8276
|
-
SeverityNumber2[SeverityNumber2["INFO3"] = 11] = "INFO3";
|
|
8277
|
-
SeverityNumber2[SeverityNumber2["INFO4"] = 12] = "INFO4";
|
|
8278
|
-
SeverityNumber2[SeverityNumber2["WARN"] = 13] = "WARN";
|
|
8279
|
-
SeverityNumber2[SeverityNumber2["WARN2"] = 14] = "WARN2";
|
|
8280
|
-
SeverityNumber2[SeverityNumber2["WARN3"] = 15] = "WARN3";
|
|
8281
|
-
SeverityNumber2[SeverityNumber2["WARN4"] = 16] = "WARN4";
|
|
8282
|
-
SeverityNumber2[SeverityNumber2["ERROR"] = 17] = "ERROR";
|
|
8283
|
-
SeverityNumber2[SeverityNumber2["ERROR2"] = 18] = "ERROR2";
|
|
8284
|
-
SeverityNumber2[SeverityNumber2["ERROR3"] = 19] = "ERROR3";
|
|
8285
|
-
SeverityNumber2[SeverityNumber2["ERROR4"] = 20] = "ERROR4";
|
|
8286
|
-
SeverityNumber2[SeverityNumber2["FATAL"] = 21] = "FATAL";
|
|
8287
|
-
SeverityNumber2[SeverityNumber2["FATAL2"] = 22] = "FATAL2";
|
|
8288
|
-
SeverityNumber2[SeverityNumber2["FATAL3"] = 23] = "FATAL3";
|
|
8289
|
-
SeverityNumber2[SeverityNumber2["FATAL4"] = 24] = "FATAL4";
|
|
8290
|
-
})(SeverityNumber = exports.SeverityNumber || (exports.SeverityNumber = {}));
|
|
8291
|
-
});
|
|
8292
|
-
|
|
8293
|
-
// node_modules/@loglayer/transport-opentelemetry/node_modules/@opentelemetry/api-logs/build/src/NoopLogger.js
|
|
8294
|
-
var require_NoopLogger = __commonJS((exports) => {
|
|
8295
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8296
|
-
exports.NOOP_LOGGER = exports.NoopLogger = undefined;
|
|
8297
|
-
|
|
8298
|
-
class NoopLogger {
|
|
8299
|
-
emit(_logRecord) {}
|
|
8300
|
-
}
|
|
8301
|
-
exports.NoopLogger = NoopLogger;
|
|
8302
|
-
exports.NOOP_LOGGER = new NoopLogger;
|
|
8303
|
-
});
|
|
8304
|
-
|
|
8305
|
-
// node_modules/@loglayer/transport-opentelemetry/node_modules/@opentelemetry/api-logs/build/src/NoopLoggerProvider.js
|
|
8306
|
-
var require_NoopLoggerProvider = __commonJS((exports) => {
|
|
8307
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8308
|
-
exports.NOOP_LOGGER_PROVIDER = exports.NoopLoggerProvider = undefined;
|
|
8309
|
-
var NoopLogger_1 = require_NoopLogger();
|
|
8310
|
-
|
|
8311
|
-
class NoopLoggerProvider {
|
|
8312
|
-
getLogger(_name, _version, _options) {
|
|
8313
|
-
return new NoopLogger_1.NoopLogger;
|
|
8314
|
-
}
|
|
8315
|
-
}
|
|
8316
|
-
exports.NoopLoggerProvider = NoopLoggerProvider;
|
|
8317
|
-
exports.NOOP_LOGGER_PROVIDER = new NoopLoggerProvider;
|
|
8318
|
-
});
|
|
8319
|
-
|
|
8320
|
-
// node_modules/@loglayer/transport-opentelemetry/node_modules/@opentelemetry/api-logs/build/src/ProxyLogger.js
|
|
8321
|
-
var require_ProxyLogger = __commonJS((exports) => {
|
|
8322
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8323
|
-
exports.ProxyLogger = undefined;
|
|
8324
|
-
var NoopLogger_1 = require_NoopLogger();
|
|
8325
|
-
|
|
8326
|
-
class ProxyLogger {
|
|
8327
|
-
constructor(_provider, name, version2, options) {
|
|
8328
|
-
this._provider = _provider;
|
|
8329
|
-
this.name = name;
|
|
8330
|
-
this.version = version2;
|
|
8331
|
-
this.options = options;
|
|
8332
|
-
}
|
|
8333
|
-
emit(logRecord) {
|
|
8334
|
-
this._getLogger().emit(logRecord);
|
|
8335
|
-
}
|
|
8336
|
-
_getLogger() {
|
|
8337
|
-
if (this._delegate) {
|
|
8338
|
-
return this._delegate;
|
|
8339
|
-
}
|
|
8340
|
-
const logger = this._provider._getDelegateLogger(this.name, this.version, this.options);
|
|
8341
|
-
if (!logger) {
|
|
8342
|
-
return NoopLogger_1.NOOP_LOGGER;
|
|
8343
|
-
}
|
|
8344
|
-
this._delegate = logger;
|
|
8345
|
-
return this._delegate;
|
|
8346
|
-
}
|
|
8347
|
-
}
|
|
8348
|
-
exports.ProxyLogger = ProxyLogger;
|
|
8349
|
-
});
|
|
8350
|
-
|
|
8351
|
-
// node_modules/@loglayer/transport-opentelemetry/node_modules/@opentelemetry/api-logs/build/src/ProxyLoggerProvider.js
|
|
8352
|
-
var require_ProxyLoggerProvider = __commonJS((exports) => {
|
|
8353
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8354
|
-
exports.ProxyLoggerProvider = undefined;
|
|
8355
|
-
var NoopLoggerProvider_1 = require_NoopLoggerProvider();
|
|
8356
|
-
var ProxyLogger_1 = require_ProxyLogger();
|
|
8357
|
-
|
|
8358
|
-
class ProxyLoggerProvider {
|
|
8359
|
-
getLogger(name, version2, options) {
|
|
8360
|
-
var _a2;
|
|
8361
|
-
return (_a2 = this._getDelegateLogger(name, version2, options)) !== null && _a2 !== undefined ? _a2 : new ProxyLogger_1.ProxyLogger(this, name, version2, options);
|
|
8362
|
-
}
|
|
8363
|
-
_getDelegate() {
|
|
8364
|
-
var _a2;
|
|
8365
|
-
return (_a2 = this._delegate) !== null && _a2 !== undefined ? _a2 : NoopLoggerProvider_1.NOOP_LOGGER_PROVIDER;
|
|
8366
|
-
}
|
|
8367
|
-
_setDelegate(delegate) {
|
|
8368
|
-
this._delegate = delegate;
|
|
8369
|
-
}
|
|
8370
|
-
_getDelegateLogger(name, version2, options) {
|
|
8371
|
-
var _a2;
|
|
8372
|
-
return (_a2 = this._delegate) === null || _a2 === undefined ? undefined : _a2.getLogger(name, version2, options);
|
|
8373
|
-
}
|
|
8374
|
-
}
|
|
8375
|
-
exports.ProxyLoggerProvider = ProxyLoggerProvider;
|
|
8376
|
-
});
|
|
8377
|
-
|
|
8378
|
-
// node_modules/@loglayer/transport-opentelemetry/node_modules/@opentelemetry/api-logs/build/src/platform/node/globalThis.js
|
|
8379
|
-
var require_globalThis2 = __commonJS((exports) => {
|
|
8380
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8381
|
-
exports._globalThis = undefined;
|
|
8382
|
-
exports._globalThis = typeof globalThis === "object" ? globalThis : global;
|
|
8383
|
-
});
|
|
8384
|
-
|
|
8385
|
-
// node_modules/@loglayer/transport-opentelemetry/node_modules/@opentelemetry/api-logs/build/src/platform/node/index.js
|
|
8386
|
-
var require_node2 = __commonJS((exports) => {
|
|
8387
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8388
|
-
exports._globalThis = undefined;
|
|
8389
|
-
var globalThis_1 = require_globalThis2();
|
|
8390
|
-
Object.defineProperty(exports, "_globalThis", { enumerable: true, get: function() {
|
|
8391
|
-
return globalThis_1._globalThis;
|
|
8392
|
-
} });
|
|
8393
|
-
});
|
|
8394
|
-
|
|
8395
|
-
// node_modules/@loglayer/transport-opentelemetry/node_modules/@opentelemetry/api-logs/build/src/platform/index.js
|
|
8396
|
-
var require_platform2 = __commonJS((exports) => {
|
|
8397
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8398
|
-
exports._globalThis = undefined;
|
|
8399
|
-
var node_1 = require_node2();
|
|
8400
|
-
Object.defineProperty(exports, "_globalThis", { enumerable: true, get: function() {
|
|
8401
|
-
return node_1._globalThis;
|
|
8402
|
-
} });
|
|
8403
|
-
});
|
|
8404
|
-
|
|
8405
|
-
// node_modules/@loglayer/transport-opentelemetry/node_modules/@opentelemetry/api-logs/build/src/internal/global-utils.js
|
|
8406
|
-
var require_global_utils2 = __commonJS((exports) => {
|
|
8407
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8408
|
-
exports.API_BACKWARDS_COMPATIBILITY_VERSION = exports.makeGetter = exports._global = exports.GLOBAL_LOGS_API_KEY = undefined;
|
|
8409
|
-
var platform_1 = require_platform2();
|
|
8410
|
-
exports.GLOBAL_LOGS_API_KEY = Symbol.for("io.opentelemetry.js.api.logs");
|
|
8411
|
-
exports._global = platform_1._globalThis;
|
|
8412
|
-
function makeGetter(requiredVersion, instance, fallback) {
|
|
8413
|
-
return (version2) => version2 === requiredVersion ? instance : fallback;
|
|
8414
|
-
}
|
|
8415
|
-
exports.makeGetter = makeGetter;
|
|
8416
|
-
exports.API_BACKWARDS_COMPATIBILITY_VERSION = 1;
|
|
8417
|
-
});
|
|
8418
|
-
|
|
8419
|
-
// node_modules/@loglayer/transport-opentelemetry/node_modules/@opentelemetry/api-logs/build/src/api/logs.js
|
|
8420
|
-
var require_logs = __commonJS((exports) => {
|
|
8421
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8422
|
-
exports.LogsAPI = undefined;
|
|
8423
|
-
var global_utils_1 = require_global_utils2();
|
|
8424
|
-
var NoopLoggerProvider_1 = require_NoopLoggerProvider();
|
|
8425
|
-
var ProxyLoggerProvider_1 = require_ProxyLoggerProvider();
|
|
8426
|
-
|
|
8427
|
-
class LogsAPI {
|
|
8428
|
-
constructor() {
|
|
8429
|
-
this._proxyLoggerProvider = new ProxyLoggerProvider_1.ProxyLoggerProvider;
|
|
8430
|
-
}
|
|
8431
|
-
static getInstance() {
|
|
8432
|
-
if (!this._instance) {
|
|
8433
|
-
this._instance = new LogsAPI;
|
|
8434
|
-
}
|
|
8435
|
-
return this._instance;
|
|
8436
|
-
}
|
|
8437
|
-
setGlobalLoggerProvider(provider) {
|
|
8438
|
-
if (global_utils_1._global[global_utils_1.GLOBAL_LOGS_API_KEY]) {
|
|
8439
|
-
return this.getLoggerProvider();
|
|
8440
|
-
}
|
|
8441
|
-
global_utils_1._global[global_utils_1.GLOBAL_LOGS_API_KEY] = (0, global_utils_1.makeGetter)(global_utils_1.API_BACKWARDS_COMPATIBILITY_VERSION, provider, NoopLoggerProvider_1.NOOP_LOGGER_PROVIDER);
|
|
8442
|
-
this._proxyLoggerProvider._setDelegate(provider);
|
|
8443
|
-
return provider;
|
|
8444
|
-
}
|
|
8445
|
-
getLoggerProvider() {
|
|
8446
|
-
var _a2, _b;
|
|
8447
|
-
return (_b = (_a2 = global_utils_1._global[global_utils_1.GLOBAL_LOGS_API_KEY]) === null || _a2 === undefined ? undefined : _a2.call(global_utils_1._global, global_utils_1.API_BACKWARDS_COMPATIBILITY_VERSION)) !== null && _b !== undefined ? _b : this._proxyLoggerProvider;
|
|
8448
|
-
}
|
|
8449
|
-
getLogger(name, version2, options) {
|
|
8450
|
-
return this.getLoggerProvider().getLogger(name, version2, options);
|
|
8451
|
-
}
|
|
8452
|
-
disable() {
|
|
8453
|
-
delete global_utils_1._global[global_utils_1.GLOBAL_LOGS_API_KEY];
|
|
8454
|
-
this._proxyLoggerProvider = new ProxyLoggerProvider_1.ProxyLoggerProvider;
|
|
8455
|
-
}
|
|
8456
|
-
}
|
|
8457
|
-
exports.LogsAPI = LogsAPI;
|
|
8458
|
-
});
|
|
8459
|
-
|
|
8460
|
-
// node_modules/@loglayer/transport-opentelemetry/node_modules/@opentelemetry/api-logs/build/src/index.js
|
|
8461
|
-
var require_src2 = __commonJS((exports) => {
|
|
8462
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8463
|
-
exports.logs = exports.ProxyLoggerProvider = exports.ProxyLogger = exports.NoopLoggerProvider = exports.NOOP_LOGGER_PROVIDER = exports.NoopLogger = exports.NOOP_LOGGER = exports.SeverityNumber = undefined;
|
|
8464
|
-
var LogRecord_1 = require_LogRecord();
|
|
8465
|
-
Object.defineProperty(exports, "SeverityNumber", { enumerable: true, get: function() {
|
|
8466
|
-
return LogRecord_1.SeverityNumber;
|
|
8467
|
-
} });
|
|
8468
|
-
var NoopLogger_1 = require_NoopLogger();
|
|
8469
|
-
Object.defineProperty(exports, "NOOP_LOGGER", { enumerable: true, get: function() {
|
|
8470
|
-
return NoopLogger_1.NOOP_LOGGER;
|
|
8471
|
-
} });
|
|
8472
|
-
Object.defineProperty(exports, "NoopLogger", { enumerable: true, get: function() {
|
|
8473
|
-
return NoopLogger_1.NoopLogger;
|
|
8474
|
-
} });
|
|
8475
|
-
var NoopLoggerProvider_1 = require_NoopLoggerProvider();
|
|
8476
|
-
Object.defineProperty(exports, "NOOP_LOGGER_PROVIDER", { enumerable: true, get: function() {
|
|
8477
|
-
return NoopLoggerProvider_1.NOOP_LOGGER_PROVIDER;
|
|
8478
|
-
} });
|
|
8479
|
-
Object.defineProperty(exports, "NoopLoggerProvider", { enumerable: true, get: function() {
|
|
8480
|
-
return NoopLoggerProvider_1.NoopLoggerProvider;
|
|
8481
|
-
} });
|
|
8482
|
-
var ProxyLogger_1 = require_ProxyLogger();
|
|
8483
|
-
Object.defineProperty(exports, "ProxyLogger", { enumerable: true, get: function() {
|
|
8484
|
-
return ProxyLogger_1.ProxyLogger;
|
|
8485
|
-
} });
|
|
8486
|
-
var ProxyLoggerProvider_1 = require_ProxyLoggerProvider();
|
|
8487
|
-
Object.defineProperty(exports, "ProxyLoggerProvider", { enumerable: true, get: function() {
|
|
8488
|
-
return ProxyLoggerProvider_1.ProxyLoggerProvider;
|
|
8489
|
-
} });
|
|
8490
|
-
var logs_1 = require_logs();
|
|
8491
|
-
exports.logs = logs_1.LogsAPI.getInstance();
|
|
8492
|
-
});
|
|
8493
|
-
|
|
8494
8259
|
// src/helpers/market-data-preparation/contracts.ts
|
|
8495
8260
|
var import__20202 = __toESM(require_2020(), 1);
|
|
8496
8261
|
|
|
@@ -22248,102 +22013,6 @@ var BaseTransport = class {
|
|
|
22248
22013
|
return this.logger;
|
|
22249
22014
|
}
|
|
22250
22015
|
};
|
|
22251
|
-
var LoggerlessTransport = class {
|
|
22252
|
-
id;
|
|
22253
|
-
enabled;
|
|
22254
|
-
level;
|
|
22255
|
-
consoleDebug;
|
|
22256
|
-
constructor(config2) {
|
|
22257
|
-
this.id = Date.now().toString() + Math.random().toString();
|
|
22258
|
-
this.enabled = config2.enabled ?? true;
|
|
22259
|
-
this.consoleDebug = config2.consoleDebug ?? false;
|
|
22260
|
-
this.level = config2.level ?? "trace";
|
|
22261
|
-
}
|
|
22262
|
-
_sendToLogger(params) {
|
|
22263
|
-
if (!this.enabled)
|
|
22264
|
-
return;
|
|
22265
|
-
if (LogLevelPriority[params.logLevel] < LogLevelPriority[this.level])
|
|
22266
|
-
return;
|
|
22267
|
-
const messages = this.shipToLogger(params);
|
|
22268
|
-
if (this.consoleDebug)
|
|
22269
|
-
switch (params.logLevel) {
|
|
22270
|
-
case LogLevel.info:
|
|
22271
|
-
console.info(...messages);
|
|
22272
|
-
break;
|
|
22273
|
-
case LogLevel.warn:
|
|
22274
|
-
console.warn(...messages);
|
|
22275
|
-
break;
|
|
22276
|
-
case LogLevel.error:
|
|
22277
|
-
console.error(...messages);
|
|
22278
|
-
break;
|
|
22279
|
-
case LogLevel.trace:
|
|
22280
|
-
console.debug(...messages);
|
|
22281
|
-
break;
|
|
22282
|
-
case LogLevel.debug:
|
|
22283
|
-
console.debug(...messages);
|
|
22284
|
-
break;
|
|
22285
|
-
case LogLevel.fatal:
|
|
22286
|
-
console.debug(...messages);
|
|
22287
|
-
break;
|
|
22288
|
-
default:
|
|
22289
|
-
console.log(...messages);
|
|
22290
|
-
}
|
|
22291
|
-
}
|
|
22292
|
-
getLoggerInstance() {
|
|
22293
|
-
throw new Error("This transport does not have a logger instance");
|
|
22294
|
-
}
|
|
22295
|
-
};
|
|
22296
|
-
|
|
22297
|
-
// node_modules/@loglayer/transport-opentelemetry/dist/index.mjs
|
|
22298
|
-
var import_api_logs = __toESM(require_src2(), 1);
|
|
22299
|
-
var logLayerLevels = {
|
|
22300
|
-
fatal: import_api_logs.SeverityNumber.FATAL,
|
|
22301
|
-
error: import_api_logs.SeverityNumber.ERROR,
|
|
22302
|
-
warn: import_api_logs.SeverityNumber.WARN,
|
|
22303
|
-
info: import_api_logs.SeverityNumber.INFO,
|
|
22304
|
-
debug: import_api_logs.SeverityNumber.DEBUG,
|
|
22305
|
-
trace: import_api_logs.SeverityNumber.TRACE
|
|
22306
|
-
};
|
|
22307
|
-
function getSeverityNumber(level) {
|
|
22308
|
-
return logLayerLevels[level] ?? import_api_logs.SeverityNumber.TRACE;
|
|
22309
|
-
}
|
|
22310
|
-
function emitLogRecord(record2, logger) {
|
|
22311
|
-
const { message, level, ...splat } = record2;
|
|
22312
|
-
const attributes = {};
|
|
22313
|
-
for (const key in splat)
|
|
22314
|
-
if (Object.hasOwn(splat, key))
|
|
22315
|
-
attributes[key] = splat[key];
|
|
22316
|
-
const logRecord = {
|
|
22317
|
-
severityNumber: getSeverityNumber(level),
|
|
22318
|
-
severityText: level,
|
|
22319
|
-
body: message,
|
|
22320
|
-
attributes
|
|
22321
|
-
};
|
|
22322
|
-
logger.emit(logRecord);
|
|
22323
|
-
}
|
|
22324
|
-
var OpenTelemetryTransport = class extends LoggerlessTransport {
|
|
22325
|
-
_logger;
|
|
22326
|
-
onError;
|
|
22327
|
-
constructor(config2 = {}) {
|
|
22328
|
-
super(config2);
|
|
22329
|
-
this._logger = import_api_logs.logs.getLogger("loglayer");
|
|
22330
|
-
this.onError = config2.onError;
|
|
22331
|
-
}
|
|
22332
|
-
shipToLogger({ logLevel, messages, data, hasData }) {
|
|
22333
|
-
const assembled = {
|
|
22334
|
-
level: logLevel,
|
|
22335
|
-
message: messages.join(" "),
|
|
22336
|
-
...hasData ? data : {}
|
|
22337
|
-
};
|
|
22338
|
-
try {
|
|
22339
|
-
emitLogRecord(assembled, this._logger);
|
|
22340
|
-
} catch (error48) {
|
|
22341
|
-
if (this.onError)
|
|
22342
|
-
this.onError(error48);
|
|
22343
|
-
}
|
|
22344
|
-
return [assembled];
|
|
22345
|
-
}
|
|
22346
|
-
};
|
|
22347
22016
|
|
|
22348
22017
|
// node_modules/@loglayer/transport-tslog/dist/index.js
|
|
22349
22018
|
var TsLogTransport = class extends BaseTransport {
|
|
@@ -24515,13 +24184,7 @@ var tslogLogger = new Logger({
|
|
|
24515
24184
|
minLevel: process.env.LOG_LEVEL === "debug" ? 0 : 3
|
|
24516
24185
|
});
|
|
24517
24186
|
var baseLogger = new LogLayer({
|
|
24518
|
-
transport: [
|
|
24519
|
-
new TsLogTransport({ id: "tslog", logger: tslogLogger }),
|
|
24520
|
-
new OpenTelemetryTransport({
|
|
24521
|
-
id: "otel",
|
|
24522
|
-
enabled: true
|
|
24523
|
-
})
|
|
24524
|
-
],
|
|
24187
|
+
transport: [new TsLogTransport({ id: "tslog", logger: tslogLogger })],
|
|
24525
24188
|
plugins: [openTelemetryPlugin()],
|
|
24526
24189
|
errorSerializer: serializeError
|
|
24527
24190
|
});
|
|
@@ -25554,12 +25217,14 @@ var result_schema_default = {
|
|
|
25554
25217
|
};
|
|
25555
25218
|
|
|
25556
25219
|
// src/helpers/market-data-vendor-backfill/manifests.ts
|
|
25557
|
-
var
|
|
25558
|
-
var
|
|
25220
|
+
var LEGACY_CAPABILITY_POLICY_ID = "market-data-vendor-backfill-capabilities/v1";
|
|
25221
|
+
var CAPABILITY_POLICY_ID = "market-data-vendor-backfill-capabilities/v2";
|
|
25222
|
+
var LEGACY_RESOURCE_POLICY_ID = "market-data-vendor-backfill-resources/v1";
|
|
25223
|
+
var RESOURCE_POLICY_ID = "market-data-vendor-backfill-resources/v2";
|
|
25559
25224
|
var ADAPTER_POLICY_ID = "cryptohftdata-orderbook-adapter/v1";
|
|
25560
25225
|
var ACQUISITION_POLICY_ID = "cryptohftdata-hourly-acquisition/v1";
|
|
25561
|
-
var
|
|
25562
|
-
policy_id:
|
|
25226
|
+
var legacyCapabilityPolicyContent = {
|
|
25227
|
+
policy_id: LEGACY_CAPABILITY_POLICY_ID,
|
|
25563
25228
|
provider: "cryptohftdata",
|
|
25564
25229
|
adapter_policy: {
|
|
25565
25230
|
policy_id: ADAPTER_POLICY_ID,
|
|
@@ -25585,12 +25250,37 @@ var capabilityPolicyContent = {
|
|
|
25585
25250
|
}
|
|
25586
25251
|
]
|
|
25587
25252
|
};
|
|
25253
|
+
var LEGACY_CAPABILITY_POLICY = Object.freeze({
|
|
25254
|
+
...legacyCapabilityPolicyContent,
|
|
25255
|
+
policy_sha256: jcsSha256(legacyCapabilityPolicyContent)
|
|
25256
|
+
});
|
|
25257
|
+
var capabilityPolicyContent = {
|
|
25258
|
+
...legacyCapabilityPolicyContent,
|
|
25259
|
+
policy_id: CAPABILITY_POLICY_ID,
|
|
25260
|
+
profiles: [
|
|
25261
|
+
...legacyCapabilityPolicyContent.profiles.map((profile) => ({
|
|
25262
|
+
...profile,
|
|
25263
|
+
source_policies: ["authoritative_window", "fill_gaps"]
|
|
25264
|
+
})),
|
|
25265
|
+
{
|
|
25266
|
+
exchange: "okx",
|
|
25267
|
+
market_type: "spot",
|
|
25268
|
+
feed: "ORDERBOOK",
|
|
25269
|
+
canonical_trading_pair: "ARB-USDC",
|
|
25270
|
+
provider_exchange_id: "okx_spot",
|
|
25271
|
+
resolved_symbol: "ARB-USDC",
|
|
25272
|
+
construction_modes: ["sampled_top_n_snapshot"],
|
|
25273
|
+
source_policies: ["authoritative_window", "fill_gaps"],
|
|
25274
|
+
max_depth: 400
|
|
25275
|
+
}
|
|
25276
|
+
]
|
|
25277
|
+
};
|
|
25588
25278
|
var CAPABILITY_POLICY = Object.freeze({
|
|
25589
25279
|
...capabilityPolicyContent,
|
|
25590
25280
|
policy_sha256: jcsSha256(capabilityPolicyContent)
|
|
25591
25281
|
});
|
|
25592
|
-
var
|
|
25593
|
-
policy_id:
|
|
25282
|
+
var legacyResourcePolicyContent = {
|
|
25283
|
+
policy_id: LEGACY_RESOURCE_POLICY_ID,
|
|
25594
25284
|
limits: {
|
|
25595
25285
|
max_files: 1e4,
|
|
25596
25286
|
max_bytes: 100 * 1024 * 1024 * 1024,
|
|
@@ -25604,17 +25294,29 @@ var resourcePolicyContent = {
|
|
|
25604
25294
|
max_required_events: 1e5
|
|
25605
25295
|
}
|
|
25606
25296
|
};
|
|
25297
|
+
var LEGACY_RESOURCE_POLICY = Object.freeze({
|
|
25298
|
+
...legacyResourcePolicyContent,
|
|
25299
|
+
policy_sha256: jcsSha256(legacyResourcePolicyContent)
|
|
25300
|
+
});
|
|
25301
|
+
var resourcePolicyContent = {
|
|
25302
|
+
...legacyResourcePolicyContent,
|
|
25303
|
+
policy_id: RESOURCE_POLICY_ID,
|
|
25304
|
+
request_bounds: {
|
|
25305
|
+
...legacyResourcePolicyContent.request_bounds,
|
|
25306
|
+
max_window_ms: 31 * 24 * 60 * 60 * 1000
|
|
25307
|
+
}
|
|
25308
|
+
};
|
|
25607
25309
|
var RESOURCE_POLICY = Object.freeze({
|
|
25608
25310
|
...resourcePolicyContent,
|
|
25609
25311
|
policy_sha256: jcsSha256(resourcePolicyContent)
|
|
25610
25312
|
});
|
|
25611
25313
|
var EFFECTIVE_ADAPTER_POLICY_PIN = Object.freeze({
|
|
25612
25314
|
policy_id: ADAPTER_POLICY_ID,
|
|
25613
|
-
policy_sha256: jcsSha256(
|
|
25315
|
+
policy_sha256: jcsSha256(legacyCapabilityPolicyContent.adapter_policy)
|
|
25614
25316
|
});
|
|
25615
25317
|
var EFFECTIVE_ACQUISITION_POLICY_PIN = Object.freeze({
|
|
25616
25318
|
policy_id: ACQUISITION_POLICY_ID,
|
|
25617
|
-
policy_sha256: jcsSha256(
|
|
25319
|
+
policy_sha256: jcsSha256(legacyCapabilityPolicyContent.acquisition_policy)
|
|
25618
25320
|
});
|
|
25619
25321
|
var schemaArtifacts = [
|
|
25620
25322
|
["schemas/request.schema.json", request_schema_default],
|
|
@@ -26754,6 +26456,9 @@ function assertSelectionLinks(selection) {
|
|
|
26754
26456
|
throw new ExactOrderBookExportError("selection_bundle_identity_duplicate");
|
|
26755
26457
|
}
|
|
26756
26458
|
const requested = selection.requested_intervals.map((interval, index) => intervalMs(interval, `requested_interval_${index}`));
|
|
26459
|
+
if (selection.source_policy === "authoritative_window" && new Set(selection.selected_intervals.map((selected) => selected.capture_origin)).size > 1) {
|
|
26460
|
+
throw new ExactOrderBookExportError("authoritative_selection_mixes_capture_origins");
|
|
26461
|
+
}
|
|
26757
26462
|
return selection.selected_intervals.map((selected, index) => {
|
|
26758
26463
|
const selectedMs = intervalMs(selected, `selected_interval_${index}`);
|
|
26759
26464
|
const bundle = bundleById.get(selected.capture_bundle_id);
|
|
@@ -26766,9 +26471,6 @@ function assertSelectionLinks(selection) {
|
|
|
26766
26471
|
if (!requested.some((interval) => contains(interval, selectedMs))) {
|
|
26767
26472
|
throw new ExactOrderBookExportError("selected_interval_outside_request");
|
|
26768
26473
|
}
|
|
26769
|
-
if (selection.source_policy === "authoritative_window" && selected.capture_origin !== "vendor_historical_backfill") {
|
|
26770
|
-
throw new ExactOrderBookExportError("authoritative_selection_not_vendor");
|
|
26771
|
-
}
|
|
26772
26474
|
if (selected.capture_origin === "vendor_historical_backfill") {
|
|
26773
26475
|
const qualification = bundle.qualification;
|
|
26774
26476
|
if (qualification?.state !== "qualified" || !selection.receipt_ids.includes(qualification.receipt_id) || !selection.qualification_event_ids.includes(qualification.qualification_event_id)) {
|
|
@@ -27259,12 +26961,12 @@ var requestContent = {
|
|
|
27259
26961
|
},
|
|
27260
26962
|
product_pins: {
|
|
27261
26963
|
capability_policy: {
|
|
27262
|
-
policy_id:
|
|
27263
|
-
policy_sha256:
|
|
26964
|
+
policy_id: LEGACY_CAPABILITY_POLICY.policy_id,
|
|
26965
|
+
policy_sha256: LEGACY_CAPABILITY_POLICY.policy_sha256
|
|
27264
26966
|
},
|
|
27265
26967
|
resource_policy: {
|
|
27266
|
-
policy_id:
|
|
27267
|
-
policy_sha256:
|
|
26968
|
+
policy_id: LEGACY_RESOURCE_POLICY.policy_id,
|
|
26969
|
+
policy_sha256: LEGACY_RESOURCE_POLICY.policy_sha256
|
|
27268
26970
|
}
|
|
27269
26971
|
},
|
|
27270
26972
|
production_authorization_id: authorizationId
|
|
@@ -27413,8 +27115,8 @@ var CONFORMANCE_FIXTURES = Object.freeze({
|
|
|
27413
27115
|
promotion_identity_sha256: promotionReceipt.promotion_identity_sha256,
|
|
27414
27116
|
receipt_id: promotionReceipt.receipt_id,
|
|
27415
27117
|
result_sha256: result.result_sha256,
|
|
27416
|
-
capability_policy_sha256:
|
|
27417
|
-
resource_policy_sha256:
|
|
27118
|
+
capability_policy_sha256: LEGACY_CAPABILITY_POLICY.policy_sha256,
|
|
27119
|
+
resource_policy_sha256: LEGACY_RESOURCE_POLICY.policy_sha256
|
|
27418
27120
|
},
|
|
27419
27121
|
jcs_edge_vector: jcsEdgeVector,
|
|
27420
27122
|
hashes: { jcs_edge_vector_sha256: jcsSha256(jcsEdgeVector) }
|
|
@@ -27490,7 +27192,10 @@ var backfillResult = finalizeBackfillResultV2({
|
|
|
27490
27192
|
schema_manifest_sha256: PREPARATION_SCHEMA_MANIFEST_V2.manifest_sha256,
|
|
27491
27193
|
producer: backfillProducer,
|
|
27492
27194
|
capability_policy: legacyResult.capability_policy,
|
|
27493
|
-
resource_policy:
|
|
27195
|
+
resource_policy: {
|
|
27196
|
+
policy_id: RESOURCE_POLICY.policy_id,
|
|
27197
|
+
policy_sha256: RESOURCE_POLICY.policy_sha256
|
|
27198
|
+
},
|
|
27494
27199
|
started_at: legacyResult.started_at,
|
|
27495
27200
|
completed_at: legacyResult.completed_at,
|
|
27496
27201
|
outcome: legacyResult.outcome
|
|
@@ -27525,8 +27230,14 @@ var productPin = preparationProductPinCodec.decode({
|
|
|
27525
27230
|
relative_path: "dist/market-data-preparation/schema-manifest.json"
|
|
27526
27231
|
},
|
|
27527
27232
|
schema_pins: PREPARATION_SCHEMA_ARTIFACTS.map(({ schema_id, schema_sha256 }) => ({ schema_id, schema_sha256 })),
|
|
27528
|
-
capability_policy:
|
|
27529
|
-
|
|
27233
|
+
capability_policy: {
|
|
27234
|
+
policy_id: CAPABILITY_POLICY.policy_id,
|
|
27235
|
+
policy_sha256: CAPABILITY_POLICY.policy_sha256
|
|
27236
|
+
},
|
|
27237
|
+
resource_policy: {
|
|
27238
|
+
policy_id: RESOURCE_POLICY.policy_id,
|
|
27239
|
+
policy_sha256: RESOURCE_POLICY.policy_sha256
|
|
27240
|
+
}
|
|
27530
27241
|
});
|
|
27531
27242
|
var PREPARATION_CONFORMANCE_FIXTURES = Object.freeze({
|
|
27532
27243
|
fixture_id: "cex-market-data-preparation-conformance/v2",
|
|
@@ -27566,4 +27277,4 @@ export {
|
|
|
27566
27277
|
BACKFILL_RESULT_V2_SCHEMA_ID
|
|
27567
27278
|
};
|
|
27568
27279
|
|
|
27569
|
-
//# debugId=
|
|
27280
|
+
//# debugId=ADB22A3D53607DAD64756E2164756E21
|