target-supabase-sdk 0.2.18 → 0.2.20
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 +28 -0
- package/dist/browser.d.ts +4 -0
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +1 -1
- package/dist/chunks/{task-queue-DufG7PlX.js → task-queue-CqmIVCBi.js} +165 -2
- package/dist/chunks/task-queue-CqmIVCBi.js.map +1 -0
- package/dist/node.d.ts +2 -0
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +251 -10
- package/dist/node.js.map +1 -1
- package/dist/shared/feed/feed.build.d.ts +33 -0
- package/dist/shared/feed/feed.build.d.ts.map +1 -0
- package/dist/shared/feed/feed.interface.d.ts +35 -0
- package/dist/shared/feed/feed.interface.d.ts.map +1 -0
- package/dist/shared/feed/feed.name.d.ts +8 -0
- package/dist/shared/feed/feed.name.d.ts.map +1 -0
- package/dist/shared/feed/feed.query.d.ts +8 -0
- package/dist/shared/feed/feed.query.d.ts.map +1 -0
- package/dist/shared/feed/index.d.ts +13 -0
- package/dist/shared/feed/index.d.ts.map +1 -0
- package/dist/shared/feed/node/feed.access.d.ts +34 -0
- package/dist/shared/feed/node/feed.access.d.ts.map +1 -0
- package/dist/shared/feed/node/feed.service.d.ts +23 -0
- package/dist/shared/feed/node/feed.service.d.ts.map +1 -0
- package/dist/shared/feed/node/index.d.ts +11 -0
- package/dist/shared/feed/node/index.d.ts.map +1 -0
- package/dist/shared/review/index.d.ts +7 -0
- package/dist/shared/review/index.d.ts.map +1 -0
- package/dist/shared/review/review.build.d.ts +19 -0
- package/dist/shared/review/review.build.d.ts.map +1 -0
- package/dist/shared/review/review.interface.d.ts +14 -0
- package/dist/shared/review/review.interface.d.ts.map +1 -0
- package/dist/shared/review/review.query.d.ts +7 -0
- package/dist/shared/review/review.query.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/browser.ts +10 -1
- package/src/node.ts +14 -0
- package/src/shared/feed/README.md +163 -0
- package/src/shared/feed/feed.build.ts +101 -0
- package/src/shared/feed/feed.interface.ts +50 -0
- package/src/shared/feed/feed.name.ts +20 -0
- package/src/shared/feed/feed.query.ts +13 -0
- package/src/shared/feed/index.ts +13 -0
- package/src/shared/feed/node/feed.access.ts +134 -0
- package/src/shared/feed/node/feed.service.ts +183 -0
- package/src/shared/feed/node/index.ts +11 -0
- package/src/shared/review/README.md +128 -0
- package/src/shared/review/index.ts +7 -0
- package/src/shared/review/review.build.ts +39 -0
- package/src/shared/review/review.interface.ts +19 -0
- package/src/shared/review/review.query.ts +16 -0
- package/dist/chunks/task-queue-DufG7PlX.js.map +0 -1
package/dist/node.d.ts
CHANGED
|
@@ -27,6 +27,8 @@ export { createL3ChildLauncher, createServiceHost, runSingleProcessService } fro
|
|
|
27
27
|
export type { CallTelegramOptions, ResolvedTelegramStorageOptions, TelegramApiResponse, TelegramChunkDeleteResult, TelegramDocument, TelegramFile, TelegramMessage, TelegramStorageProvider, TelegramStorageProviderOptions, TelegramUploadResult, } from "./node/telegram";
|
|
28
28
|
export { callTelegramApi, createTelegramStorageProvider, downloadTelegramChunk, encodeTelegramChunkUrl, PROVIDER_TELEGRAM, parseTelegramChunkUrl, resolveTelegramStorageOptions, telegramDownloadBinary, telegramFileDownloadUrl, } from "./node/telegram";
|
|
29
29
|
export { RepoManager } from "./repo/repo-manager";
|
|
30
|
+
export type { CheckFeedLocalAvailabilityInput, FeedAvailabilityResult, FeedIngestSource, RegisterFeedInput, RegisterFeedResult, } from "./shared/feed/node";
|
|
31
|
+
export { checkFeedLocalAvailability, checkFeedOssAvailability, FEED_INGEST_SOURCES, isFeedIngestSource, registerFeed, } from "./shared/feed/node";
|
|
30
32
|
export { runCollectLogTick } from "./shared/log/spool/collector";
|
|
31
33
|
export { LOG_SPOOL_SERVICE_ID_ENV } from "./shared/log/spool/config";
|
|
32
34
|
export type { LogSpoolCoordinator, LogSpoolCoordinatorOptions } from "./shared/log/spool/coordinator";
|
package/dist/node.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
|
package/dist/node.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { M as MAX_POLL_TARGET_LIST_SIZE, V as validateWithSchema, g as createLogger, z as pollTargetList, k as generateResponse, h as createTarget, K as supabase, w as logManager, X as createScope, d as LogLevel, Y as patchScope, J as scanTargetList, Z as withModule, l as getPossibleTarget, E as postTarget, q as isCreateTargetAlreadyExistsError, t as isOptimisticLockResponse, R as updateTargetDetails } from './chunks/list.api-BzbTJBsM.js';
|
|
3
|
-
export { B as BaseValidator, C as CREATE_TARGET_ALREADY_EXISTS_MESSAGE, a as CategoryList, L as LOG_BATCH_LOADER_KEY, b as LOG_MIN_LEVEL_ENV_KEY, c as LOG_PERSIST_LOADER_KEY, e as MAX_TARGET_LIST_PAGE_SIZE, O as OPTIMISTIC_LOCK_ERROR_CODE, f as OPTIMISTIC_LOCK_FAILED_MESSAGE, P as PostListValidator, S as StatusCode, U as UPDATE_TARGET_NOT_FOUND_MESSAGE, i as deleteTarget, j as formatZodError,
|
|
2
|
+
import { M as MAX_POLL_TARGET_LIST_SIZE, V as validateWithSchema, g as createLogger, z as pollTargetList, k as generateResponse, h as createTarget, K as supabase, w as logManager, X as createScope, d as LogLevel, Y as patchScope, J as scanTargetList, Z as withModule, l as getPossibleTarget, m as getTarget, Q as updateTarget, E as postTarget, q as isCreateTargetAlreadyExistsError, t as isOptimisticLockResponse, R as updateTargetDetails } from './chunks/list.api-BzbTJBsM.js';
|
|
3
|
+
export { B as BaseValidator, C as CREATE_TARGET_ALREADY_EXISTS_MESSAGE, a as CategoryList, L as LOG_BATCH_LOADER_KEY, b as LOG_MIN_LEVEL_ENV_KEY, c as LOG_PERSIST_LOADER_KEY, e as MAX_TARGET_LIST_PAGE_SIZE, O as OPTIMISTIC_LOCK_ERROR_CODE, f as OPTIMISTIC_LOCK_FAILED_MESSAGE, P as PostListValidator, S as StatusCode, U as UPDATE_TARGET_NOT_FOUND_MESSAGE, i as deleteTarget, j as formatZodError, n as getTargetList, o as getTargetTotalCount, p as handleSupabaseError, r as isDevEnvironment, s as isOptimisticLockError, u as logDev, v as logDevGroup, x as logMinLevelFromEnv, y as patchTarget, A as postListCreate, D as postLogListCreate, F as postTargetPayloadSchema, G as queryFilterSchema, H as resolveLogMinLevel, I as safeParseWithSchema, N as targetDraftSchema, T as validateWith } from './chunks/list.api-BzbTJBsM.js';
|
|
4
4
|
import { l as loadEnvFiles, b as readEnv, c as requireEnv, d as resolveLogSpoolSpawnEnvForLabel, e as resolveLogSpoolConfig, f as resolveLogSpoolRoot, g as resolveAllLogSpoolProcessRoles, h as logSpoolProcessDir, s as spoolLogger, i as parseLogSpoolBatchFilename, j as computeLogBatchIdempotencyKey, k as buildLogListDraft, n as postLogBatch, a as logSpoolEnabledFromEnv, o as logSpoolConfigFromEnv, L as LOG_SPOOL_SERVICE_ID_ENV, q as ensureLogSpoolFromEnv, t as shutdownLogSpoolFromEnv, u as getLogSpoolStats } from './chunks/enable-C7lFooTG.js';
|
|
5
5
|
export { C as CLI_PROD_FLAG, S as SERVICE_ENV_PROFILE_ENV_KEY, w as SERVICE_ENV_PROFILE_PROD, x as buildLogSpoolSpawnEnv, y as envBool, z as envInt, A as envMs, B as envNumber, D as envPort, E as envProfileFromProcess, F as resolveDefaultEnvFiles, r as resolveProjectRootByPackageName, G as resolveProjectRootFromModule, v as validateLogSpoolPreloadEnv } from './chunks/enable-C7lFooTG.js';
|
|
6
6
|
import { randomBytes, createHash } from 'node:crypto';
|
|
7
7
|
import { readFile, unlink, mkdir, writeFile, rename, access, stat, readdir, constants } from 'node:fs/promises';
|
|
8
8
|
import { dirname, resolve, join, isAbsolute } from 'node:path';
|
|
9
|
-
import {
|
|
10
|
-
export { A as ApiMethod, C as CategoryConfig, a as CategoryExtraction,
|
|
9
|
+
import { bx as sha256Hex, bD as getErrorMessage, bE as LOG_TOPIC_NODE, a_ as postRegisterNode, aE as patchChangeNodeStatus, N as NodeStatus, aP as patchStopNode, aM as patchNodeHeartBeat, E as EMPTY_REGISTRY_SLOT_RUNTIME_STATE, bn as runRegistrySlotGuardCheck, bc as registrySlotRuntimePatchFromGuardResult, c as CategoryNode, a1 as evaluateBusyNodeLiveness, aO as patchServiceRuntime, at as isLogEntry, J as claimServiceRegistrySlot, m as ServiceRegistryError, a4 as fetchWithRetry, aw as isRetryableHttpStatus, a3 as fetchBinaryWithRetry, av as isOpaqueChunkUrl, e as CategoryRepo, aq as isHttpUrl, bF as isFeedIngestSource, bG as resolveFeedOriginalStorageProvider, b as CategoryLink, bH as buildFeedTagList, ap as isFeedValue, an as guessMediaMime, M as MEDIA_CONTENT_HASH_ALGORITHM, au as isMediaValue, ay as mediaLinkDedupFilters, B as buildMediaLinkDraft, R as ResultCode, bI as LOG_TOPIC_TASK, o as TASK_REPO_USAGE, ah as getScanRemoteRepoValues, aI as patchClaimTask, bJ as CRITICAL_UNKNOWN_TASK_TRACE_ID, aG as patchChangeTaskStatus, q as TaskStatusAction, bK as toError, b6 as postTaskSchema, bL as createTaskRow, p as TaskStatus } from './chunks/task-queue-CqmIVCBi.js';
|
|
10
|
+
export { A as ApiMethod, C as CategoryConfig, a as CategoryExtraction, d as CategoryParcel, f as CategoryService, g as CategoryTask, D as DEFAULT_SYSTEM_REGISTRY_SEED_SLOTS, bM as FEED_INGEST_SOURCES, F as FEED_VALUES, L as LINK_MANIFEST_VERSION, h as LIST_MANIFEST_VERSION, i as MEDIA_CONTENT_HASH_PREFIX_LENGTH, j as MEDIA_VALUES, P as POST_TASK_DEFAULT_MAX_ATTEMPTS, k as ParcelManager, l as PostLinkValidator, S as ServiceLifecycleStatus, n as ServiceSlotStatus, T as TARGET_SYSTEM_REGISTRY_KEY, r as apiDetailsSchema, s as appendSystemRegistryEmptySlots, t as assertRegistrySlotAvailable, u as assertRegistrySlotOwner, v as buildEmptyServiceSlots, w as buildFeedLinkDraft, x as buildFeedLinkName, y as buildLinkTargetDraft, z as buildListTargetDraft, G as buildMediaNameFromLocator, H as buildReviewLinkDraft, I as buildSystemRegistryConfigDetails, K as classifyNetworkError, O as countTasksByType, Q as createActiveServiceLifecycle, U as createClaimedRegistrySlotRuntimeState, V as createStorageProviderRegistry, W as createUploadTracker, X as decodeLogBatch, Y as decodeLogBatchList, Z as defaultL3ServiceDetails, _ as deleteParcel, $ as deleteParcelSchema, a0 as escapeIlikePattern, a2 as feedLinkDedupFilters, a5 as fieldDefinitionSchema, a6 as flattenLogBatch, a7 as flattenLogBatches, a8 as formatNetworkError, a9 as getApi, aa as getApiSchema, ab as getConfig, ac as getConfigSchema, ad as getExtraction, ae as getExtractionSchema, af as getParcel, ag as getParcelSchema, ai as getScanRemoteRepoValuesSchema, aj as getService, ak as getServiceSchema, al as getTargetSystemRegistry, am as getValueAtPath, ao as installChunkFetchRegistry, ar as isLocalFilesystemPath, as as isLogBatchList, ax as linkTargetDraftBuildInputSchema, az as parcelDetailsSchema, aA as parseLogBatchMeta, aB as parseProviderPrefixedUrl, aC as parseServiceSlot, aD as parseServiceSlots, aF as patchChangeNodeStatusSchema, aH as patchChangeTaskStatusSchema, aJ as patchClaimTaskSchema, aK as patchExtractionObjects, aL as patchExtractionObjectsSchema, aN as patchNodeHeartBeatSchema, aQ as patchStopNodeSchema, aR as patchTaskProgress, aS as patchTaskProgressSchema, aT as postApi, aU as postApiSchema, aV as postExtraction, aW as postExtractionSchema, aX as postLinkCreate, aY as postParcel, aZ as postParcelSchema, a$ as postRegisterNodeSchema, b0 as postService, b1 as postServiceInstance, b2 as postServiceSchema, b3 as postSystemRegistryConfig, b4 as postSystemRegistryConfigSchema, b5 as postTask, b7 as postTaskWithRetry, b8 as publishParcel, b9 as registerProviderChunkResolver, ba as registerService, bb as registerServiceAtStartup, bd as releaseSystemRegistrySlots, be as releaseSystemRegistrySlotsByServiceId, bf as requestHasBody, bg as resetSystemRegistryConfig, bh as resetSystemRegistryConfigSchema, bi as resolveActiveRegistryServiceId, bj as resolveFetchUrl, bk as restoreParcel, bl as restoreParcelById, bm as reviewLinksForTargetFilters, bo as sanitizeFileName, bp as sanitizeParcelFileName, bq as scanExtractionList, br as scanExtractionListSchema, bs as schemaDefinitionSchema, bt as serviceDetailsSchema, bu as serviceLifecycleSchema, bv as serviceNodeSnapshotSchema, bw as serviceRuntimeSchema, by as summarizeTaskQueue, bz as systemRegistrySeedSlotSchema, bA as toPostgrestTextArrayLiteral, bB as unregisterService, bC as unregisterServiceAtShutdown } from './chunks/task-queue-CqmIVCBi.js';
|
|
11
11
|
import { spawn } from 'node:child_process';
|
|
12
12
|
import { ProxyAgent } from 'undici';
|
|
13
13
|
import { tmpdir } from 'node:os';
|
|
@@ -2612,7 +2612,7 @@ async function runSingleProcessService(options) {
|
|
|
2612
2612
|
}
|
|
2613
2613
|
}
|
|
2614
2614
|
|
|
2615
|
-
const logger$
|
|
2615
|
+
const logger$2 = createLogger({ module: "telegram" });
|
|
2616
2616
|
let cachedDispatcher;
|
|
2617
2617
|
let cachedProxyUrl;
|
|
2618
2618
|
/** Per-request undici dispatcher when proxyUrl is set (Supabase stays direct). */
|
|
@@ -2663,7 +2663,7 @@ async function callTelegramApi(options, method, initOrFactory, callOptions = {})
|
|
|
2663
2663
|
retryBaseMs,
|
|
2664
2664
|
dispatcher,
|
|
2665
2665
|
hint,
|
|
2666
|
-
logger: logger$
|
|
2666
|
+
logger: logger$2,
|
|
2667
2667
|
});
|
|
2668
2668
|
let payload;
|
|
2669
2669
|
try {
|
|
@@ -2681,7 +2681,7 @@ async function callTelegramApi(options, method, initOrFactory, callOptions = {})
|
|
|
2681
2681
|
const description = payload.description ?? `HTTP ${response.status}`;
|
|
2682
2682
|
lastError = new Error(`${label}: ${description}`);
|
|
2683
2683
|
if (attempt < maxAttempts && isRetryableHttpStatus(response.status)) {
|
|
2684
|
-
logger$
|
|
2684
|
+
logger$2.warn("retrying after API error", {
|
|
2685
2685
|
topic: "telegram",
|
|
2686
2686
|
data: { method, attempt, description },
|
|
2687
2687
|
});
|
|
@@ -2694,7 +2694,7 @@ async function callTelegramApi(options, method, initOrFactory, callOptions = {})
|
|
|
2694
2694
|
throw new Error(`${label}: empty result in response`);
|
|
2695
2695
|
}
|
|
2696
2696
|
if (attempt > 1) {
|
|
2697
|
-
logger$
|
|
2697
|
+
logger$2.info("request succeeded after retry", { topic: "telegram", data: { method, attempt } });
|
|
2698
2698
|
}
|
|
2699
2699
|
return payload.result;
|
|
2700
2700
|
}
|
|
@@ -2709,7 +2709,7 @@ async function telegramDownloadBinary(options, url, label, callOptions = {}) {
|
|
|
2709
2709
|
retryBaseMs: callOptions.retryBaseMs ?? options.uploadRetryBaseMs,
|
|
2710
2710
|
dispatcher,
|
|
2711
2711
|
hint: telegramNetworkHint(options.proxyUrl),
|
|
2712
|
-
logger: logger$
|
|
2712
|
+
logger: logger$2,
|
|
2713
2713
|
});
|
|
2714
2714
|
}
|
|
2715
2715
|
|
|
@@ -3355,6 +3355,247 @@ const RepoManager = {
|
|
|
3355
3355
|
clearRepoScriptModuleCache,
|
|
3356
3356
|
};
|
|
3357
3357
|
|
|
3358
|
+
function sameStorageHost$1(storageProvider, localStorageProvider) {
|
|
3359
|
+
return storageProvider.trim() === localStorageProvider.trim();
|
|
3360
|
+
}
|
|
3361
|
+
function isFeedDirectoryValue(value) {
|
|
3362
|
+
return value === "feed.image-list";
|
|
3363
|
+
}
|
|
3364
|
+
/**
|
|
3365
|
+
* Local reachability for feed ingest (`.local` source).
|
|
3366
|
+
*
|
|
3367
|
+
* - Requires `storageProvider === localStorageProvider`.
|
|
3368
|
+
* - `locator` must be an absolute path.
|
|
3369
|
+
* - `feed.image-list`: directory exists.
|
|
3370
|
+
* - Other feed values: non-empty file.
|
|
3371
|
+
*
|
|
3372
|
+
* **Node-only**
|
|
3373
|
+
*/
|
|
3374
|
+
async function checkFeedLocalAvailability(input) {
|
|
3375
|
+
const storageProvider = input.storageProvider.trim();
|
|
3376
|
+
const localStorageProvider = input.localStorageProvider.trim();
|
|
3377
|
+
const locator = input.locator.trim();
|
|
3378
|
+
if (storageProvider === "" || localStorageProvider === "") {
|
|
3379
|
+
return { ok: false, reason: "storageProvider and localStorageProvider are required" };
|
|
3380
|
+
}
|
|
3381
|
+
if (locator === "") {
|
|
3382
|
+
return { ok: false, reason: "locator is empty" };
|
|
3383
|
+
}
|
|
3384
|
+
if (!sameStorageHost$1(storageProvider, localStorageProvider)) {
|
|
3385
|
+
return {
|
|
3386
|
+
ok: false,
|
|
3387
|
+
reason: `storageProvider not on this host (${storageProvider} !== ${localStorageProvider})`,
|
|
3388
|
+
};
|
|
3389
|
+
}
|
|
3390
|
+
if (!isAbsolute(locator)) {
|
|
3391
|
+
return { ok: false, reason: `locator must be an absolute path: ${locator}` };
|
|
3392
|
+
}
|
|
3393
|
+
const absolutePath = resolve(locator);
|
|
3394
|
+
try {
|
|
3395
|
+
const info = await stat(absolutePath);
|
|
3396
|
+
if (isFeedDirectoryValue(input.value)) {
|
|
3397
|
+
if (!info.isDirectory()) {
|
|
3398
|
+
return { ok: false, reason: `feed.image-list locator is not a directory: ${absolutePath}` };
|
|
3399
|
+
}
|
|
3400
|
+
return { ok: true, absolutePath };
|
|
3401
|
+
}
|
|
3402
|
+
if (!info.isFile()) {
|
|
3403
|
+
return { ok: false, reason: `locator is not a file: ${absolutePath}` };
|
|
3404
|
+
}
|
|
3405
|
+
if (info.size <= 0) {
|
|
3406
|
+
return { ok: false, reason: `file is empty: ${absolutePath}` };
|
|
3407
|
+
}
|
|
3408
|
+
return { ok: true, absolutePath };
|
|
3409
|
+
}
|
|
3410
|
+
catch (error) {
|
|
3411
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
3412
|
+
return { ok: false, reason: `locator not reachable: ${absolutePath} (${message})` };
|
|
3413
|
+
}
|
|
3414
|
+
}
|
|
3415
|
+
const OSS_CHECK_TIMEOUT_MS = 15_000;
|
|
3416
|
+
const OSS_CHECK_MAX_ATTEMPTS = 2;
|
|
3417
|
+
async function probeHttpLocator(locator, method) {
|
|
3418
|
+
return fetchWithRetry(locator, {
|
|
3419
|
+
method,
|
|
3420
|
+
...(method === "GET" ? { headers: { Range: "bytes=0-0" } } : {}),
|
|
3421
|
+
}, {
|
|
3422
|
+
label: "feed-oss-check",
|
|
3423
|
+
timeoutMs: OSS_CHECK_TIMEOUT_MS,
|
|
3424
|
+
maxAttempts: OSS_CHECK_MAX_ATTEMPTS,
|
|
3425
|
+
});
|
|
3426
|
+
}
|
|
3427
|
+
/**
|
|
3428
|
+
* Remote reachability for feed ingest (`.oss` source) via HTTP(S).
|
|
3429
|
+
*
|
|
3430
|
+
* Tries `HEAD`, then `GET` with `Range: bytes=0-0` when `HEAD` is not allowed.
|
|
3431
|
+
*
|
|
3432
|
+
* **Node-only**
|
|
3433
|
+
*/
|
|
3434
|
+
async function checkFeedOssAvailability(locator) {
|
|
3435
|
+
const trimmed = locator.trim();
|
|
3436
|
+
if (trimmed === "") {
|
|
3437
|
+
return { ok: false, reason: "locator is empty" };
|
|
3438
|
+
}
|
|
3439
|
+
if (!isHttpUrl(trimmed)) {
|
|
3440
|
+
return { ok: false, reason: `oss locator must be an http(s) URL: ${trimmed}` };
|
|
3441
|
+
}
|
|
3442
|
+
try {
|
|
3443
|
+
let response = await probeHttpLocator(trimmed, "HEAD");
|
|
3444
|
+
if (response.status === 405 || response.status === 501) {
|
|
3445
|
+
response = await probeHttpLocator(trimmed, "GET");
|
|
3446
|
+
}
|
|
3447
|
+
if (response.ok || (response.status >= 200 && response.status < 400)) {
|
|
3448
|
+
return { ok: true };
|
|
3449
|
+
}
|
|
3450
|
+
return { ok: false, reason: `oss locator HTTP ${response.status}: ${trimmed}` };
|
|
3451
|
+
}
|
|
3452
|
+
catch (error) {
|
|
3453
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
3454
|
+
return { ok: false, reason: `oss locator request failed: ${trimmed} (${message})` };
|
|
3455
|
+
}
|
|
3456
|
+
}
|
|
3457
|
+
|
|
3458
|
+
const logger$1 = createLogger({ module: "feed" });
|
|
3459
|
+
function parseFeedOriginal(original) {
|
|
3460
|
+
if (original == null || typeof original !== "object") {
|
|
3461
|
+
return null;
|
|
3462
|
+
}
|
|
3463
|
+
const record = original;
|
|
3464
|
+
const storageProvider = typeof record.storageProvider === "string" ? record.storageProvider : null;
|
|
3465
|
+
const locator = typeof record.locator === "string" ? record.locator : null;
|
|
3466
|
+
if (storageProvider == null || locator == null) {
|
|
3467
|
+
return null;
|
|
3468
|
+
}
|
|
3469
|
+
const twinList = Array.isArray(record.twinList)
|
|
3470
|
+
? record.twinList.filter((entry) => typeof entry === "string")
|
|
3471
|
+
: undefined;
|
|
3472
|
+
return {
|
|
3473
|
+
storageProvider,
|
|
3474
|
+
locator,
|
|
3475
|
+
...(twinList !== undefined ? { twinList } : {}),
|
|
3476
|
+
};
|
|
3477
|
+
}
|
|
3478
|
+
function assertFeedLink(target) {
|
|
3479
|
+
if (target.category !== CategoryLink.LINK) {
|
|
3480
|
+
throw new Error(`registerFeed: target is not a link (category=${target.category})`);
|
|
3481
|
+
}
|
|
3482
|
+
if (!isFeedValue(target.value)) {
|
|
3483
|
+
throw new Error(`registerFeed: target value is not a feed loader: ${target.value}`);
|
|
3484
|
+
}
|
|
3485
|
+
const details = target.details;
|
|
3486
|
+
if (details == null || details.loaderKey !== target.value) {
|
|
3487
|
+
throw new Error("registerFeed: invalid feed link details (loaderKey must equal value)");
|
|
3488
|
+
}
|
|
3489
|
+
return target;
|
|
3490
|
+
}
|
|
3491
|
+
function hasIngestSourceTag(tagList) {
|
|
3492
|
+
return tagList.some((tag) => tag === ".local" || tag === ".oss");
|
|
3493
|
+
}
|
|
3494
|
+
function isSameIngestState(link, source, storageProvider, locator) {
|
|
3495
|
+
if (!link.tagList.includes(source)) {
|
|
3496
|
+
return false;
|
|
3497
|
+
}
|
|
3498
|
+
const original = parseFeedOriginal(link.details.original);
|
|
3499
|
+
if (original == null) {
|
|
3500
|
+
return false;
|
|
3501
|
+
}
|
|
3502
|
+
return original.storageProvider === storageProvider && original.locator === locator;
|
|
3503
|
+
}
|
|
3504
|
+
/**
|
|
3505
|
+
* Ingest a `.public` feed Link: validate locator, then promote `tagList` source to `.local` or `.oss`
|
|
3506
|
+
* and update `details.original.storageProvider` + `locator`.
|
|
3507
|
+
*
|
|
3508
|
+
* **Node-only** — under `shared/feed/node/`; do not import from the browser entry.
|
|
3509
|
+
*/
|
|
3510
|
+
async function registerFeed(input) {
|
|
3511
|
+
const id = input.id.trim();
|
|
3512
|
+
if (id === "") {
|
|
3513
|
+
throw new Error("registerFeed: id is empty");
|
|
3514
|
+
}
|
|
3515
|
+
if (!isFeedIngestSource(input.source)) {
|
|
3516
|
+
throw new Error(`registerFeed: source must be .local or .oss, got ${String(input.source)}`);
|
|
3517
|
+
}
|
|
3518
|
+
const resolvedStorageProvider = resolveFeedOriginalStorageProvider(input.source, input.storageProvider);
|
|
3519
|
+
const locator = input.locator.trim();
|
|
3520
|
+
if (locator === "") {
|
|
3521
|
+
throw new Error("registerFeed: locator is empty");
|
|
3522
|
+
}
|
|
3523
|
+
const { data: target } = await getTarget({ id });
|
|
3524
|
+
if (target == null) {
|
|
3525
|
+
throw new Error(`registerFeed: target not found: ${id}`);
|
|
3526
|
+
}
|
|
3527
|
+
const link = assertFeedLink(target);
|
|
3528
|
+
const feedValue = link.value;
|
|
3529
|
+
if (!link.tagList.includes(".public")) {
|
|
3530
|
+
if (isSameIngestState(link, input.source, resolvedStorageProvider, locator)) {
|
|
3531
|
+
logger$1.info("feed already ingested", {
|
|
3532
|
+
topic: "dedup",
|
|
3533
|
+
data: { id, source: input.source, locator },
|
|
3534
|
+
});
|
|
3535
|
+
return { id, updated: false };
|
|
3536
|
+
}
|
|
3537
|
+
if (hasIngestSourceTag(link.tagList)) {
|
|
3538
|
+
throw new Error("registerFeed: feed already ingested with different source, storageProvider, or locator");
|
|
3539
|
+
}
|
|
3540
|
+
throw new Error("registerFeed: feed is not .public — cannot ingest");
|
|
3541
|
+
}
|
|
3542
|
+
if (input.source === ".local") {
|
|
3543
|
+
const localStorageProvider = input.localStorageProvider?.trim() ?? "";
|
|
3544
|
+
if (localStorageProvider === "") {
|
|
3545
|
+
throw new Error("registerFeed: localStorageProvider is required when source is .local");
|
|
3546
|
+
}
|
|
3547
|
+
const availability = await checkFeedLocalAvailability({
|
|
3548
|
+
value: feedValue,
|
|
3549
|
+
storageProvider: resolvedStorageProvider,
|
|
3550
|
+
locator,
|
|
3551
|
+
localStorageProvider,
|
|
3552
|
+
});
|
|
3553
|
+
if (!availability.ok) {
|
|
3554
|
+
throw new Error(`registerFeed: local locator unavailable — ${availability.reason ?? "unknown"}`);
|
|
3555
|
+
}
|
|
3556
|
+
}
|
|
3557
|
+
else {
|
|
3558
|
+
const availability = await checkFeedOssAvailability(locator);
|
|
3559
|
+
if (!availability.ok) {
|
|
3560
|
+
throw new Error(`registerFeed: oss locator unavailable — ${availability.reason ?? "unknown"}`);
|
|
3561
|
+
}
|
|
3562
|
+
}
|
|
3563
|
+
await updateTarget({
|
|
3564
|
+
id,
|
|
3565
|
+
optimisticLockFilterList: [
|
|
3566
|
+
{ field: "category", operator: "eq", value: CategoryLink.LINK },
|
|
3567
|
+
{ field: "details->original->>storageProvider", operator: "eq", value: "" },
|
|
3568
|
+
],
|
|
3569
|
+
updateFn: (row) => {
|
|
3570
|
+
if (!row.tagList.includes(".public")) {
|
|
3571
|
+
throw new Error("registerFeed: optimistic lock failed — .public tag missing");
|
|
3572
|
+
}
|
|
3573
|
+
if (hasIngestSourceTag(row.tagList) && !row.tagList.includes(".public")) {
|
|
3574
|
+
throw new Error("registerFeed: feed already ingested");
|
|
3575
|
+
}
|
|
3576
|
+
const details = row.details;
|
|
3577
|
+
const prior = parseFeedOriginal(details.original);
|
|
3578
|
+
const nextOriginal = {
|
|
3579
|
+
storageProvider: resolvedStorageProvider,
|
|
3580
|
+
locator,
|
|
3581
|
+
...(prior?.twinList !== undefined ? { twinList: prior.twinList } : {}),
|
|
3582
|
+
};
|
|
3583
|
+
return {
|
|
3584
|
+
tagList: buildFeedTagList(input.source, row.tagList),
|
|
3585
|
+
details: {
|
|
3586
|
+
...details,
|
|
3587
|
+
original: nextOriginal,
|
|
3588
|
+
},
|
|
3589
|
+
};
|
|
3590
|
+
},
|
|
3591
|
+
});
|
|
3592
|
+
logger$1.info("feed ingested", {
|
|
3593
|
+
topic: "register",
|
|
3594
|
+
data: { id, source: input.source, storageProvider: resolvedStorageProvider, locator },
|
|
3595
|
+
});
|
|
3596
|
+
return { id, updated: true };
|
|
3597
|
+
}
|
|
3598
|
+
|
|
3358
3599
|
function createLogSpoolCoordinator(options) {
|
|
3359
3600
|
const { serviceValue, serviceId } = options;
|
|
3360
3601
|
return {
|
|
@@ -4531,5 +4772,5 @@ const patchTriggerFired = validateWithSchema(patchTriggerFiredSchema, "patchTrig
|
|
|
4531
4772
|
}
|
|
4532
4773
|
});
|
|
4533
4774
|
|
|
4534
|
-
export { BaseNodeRuntime, COLLECT_LOG_RUNNER_KEY, CategoryCommand, CategoryNode, CategoryRepo, CategoryTrigger, CommandType, EMPTY_REGISTRY_SLOT_RUNTIME_STATE, LOG_SPOOL_SERVICE_ID_ENV, LOG_TOPIC_TRIGGER, LogLevel, MAX_POLL_TARGET_LIST_SIZE, MEDIA_CONTENT_HASH_ALGORITHM, ManagedChildProcesses, NodeStatus, PROVIDER_TELEGRAM, RepoManager, ResultCode, SERVICE_GUARD_RUNNER_KEY, ServiceGuardNode, ServiceRegistryError, TASK_LOCAL_PACKAGE_CONFIG_FILENAME, TASK_REPO_SCRIPT_CATEGORY, TASK_REPO_USAGE, TASK_RUNNER_CONFIG_DIR, TASK_RUNNER_ROOT_CONFIG_FILENAME, TASK_RUNNER_ROOT_CONFIG_LEGACY_RELATIVE_PATH, TASK_RUNNER_ROOT_CONFIG_RELATIVE_PATH, TRIGGER_LOOP_INTERVAL_MS, TRIGGER_RUNNER_DEFAULT_RETRY_COUNT, TRIGGER_RUNNER_DEFAULT_RETRY_DELAY_MS, TaskManager, TaskNode, TaskRepoValidation, TaskStatus, TaskStatusAction, TriggerManager, TriggerNode, TriggerStatus, applyRegistrySlotGuardStep, buildMediaLinkDraft, buildNodeImportArgs, callTelegramApi, checkMediaAvailability, claimServiceRegistrySlot, createJsonFileStateStore, createL3ChildLauncher, createLogSpoolCoordinator, createLogger, createManagedChildProcesses, createPathsExistCheck, createRequiredEnvCheck, createServiceHost, createServiceRuntimeStateStore, createSupabaseReachableCheck, createTarget, createTelegramStorageProvider, downloadTelegramChunk, enableLogSpoolFromEnvInChild, encodeTelegramChunkUrl, ensureLogSpoolFromEnv, evaluateBusyNodeLiveness, fetchBinaryWithRetry, fetchWithRetry, findMediaLink, generateResponse, getConfigFileDir, getLogSpoolStats, getMainLogSpoolWriterStats, getPollCommandList, getPollCommandListSchema, getPossibleTarget, getScanRemoteRepoValues, guardRetryAfterSec, guessMediaMime, importJsConfigModule, initSupabaseFromStandardEnv, isChildProcessRunning, isCreateTargetAlreadyExistsError, isGuardAvailable, isLogEntry, isLogSpoolEnabled, isMediaValue, isOpaqueChunkUrl, isOptimisticLockResponse, isRetryableHttpStatus, loadCachedJsConfigModule, loadEnvFiles, logManager, logSpoolEnabledFromEnv, markWorkerSpawned, mediaLinkDedupFilters, nodeBufferToArrayBuffer, parseTelegramChunkUrl, patchChangeNodeStatus, patchChangeTaskStatus, patchClaimTask, patchNodeHeartBeat, patchServiceRuntime, patchStopNode, patchTriggerFired, patchTriggerFiredSchema, pathExists, pollTargetList, pollUntil, postCommand, postCommandSchema, postRegisterNode, postTarget, postTaskSchema, postTaskWithValidation, postTrigger, postTriggerSchema, probeMediaOriginal, publicBaseUrlFromEnv, readAndVerifySourceFile, readEnv, registerCollectLogRunner, registerMediaLink, registerServiceGuardRunner, registrySlotRuntimePatchFromGuardResult, requireEnv, resolveFirstExistingPath, resolveLogSpoolRoot, resolvePathFromBaseDir, resolvePathFromConfigFile, resolvePathFromCwd, resolveTelegramStorageOptions, runCollectLogTick, runReadinessChecks, runReadinessGate, runRegistrySlotGuardCheck, runServiceGuardTick, runSingleProcessService, scanEnabledTriggers, scanEnabledTriggersSchema, scanTargetList, sha256Hex, shutdownLogSpool, shutdownLogSpoolFromEnv, spawnTsxChild, supabase, telegramDownloadBinary, telegramFileDownloadUrl, toFileImportHref, updateTargetDetails, validateTaskRepoAndParams, validateWithSchema, waitForServiceReady };
|
|
4775
|
+
export { BaseNodeRuntime, COLLECT_LOG_RUNNER_KEY, CategoryCommand, CategoryLink, CategoryNode, CategoryRepo, CategoryTrigger, CommandType, EMPTY_REGISTRY_SLOT_RUNTIME_STATE, LOG_SPOOL_SERVICE_ID_ENV, LOG_TOPIC_TRIGGER, LogLevel, MAX_POLL_TARGET_LIST_SIZE, MEDIA_CONTENT_HASH_ALGORITHM, ManagedChildProcesses, NodeStatus, PROVIDER_TELEGRAM, RepoManager, ResultCode, SERVICE_GUARD_RUNNER_KEY, ServiceGuardNode, ServiceRegistryError, TASK_LOCAL_PACKAGE_CONFIG_FILENAME, TASK_REPO_SCRIPT_CATEGORY, TASK_REPO_USAGE, TASK_RUNNER_CONFIG_DIR, TASK_RUNNER_ROOT_CONFIG_FILENAME, TASK_RUNNER_ROOT_CONFIG_LEGACY_RELATIVE_PATH, TASK_RUNNER_ROOT_CONFIG_RELATIVE_PATH, TRIGGER_LOOP_INTERVAL_MS, TRIGGER_RUNNER_DEFAULT_RETRY_COUNT, TRIGGER_RUNNER_DEFAULT_RETRY_DELAY_MS, TaskManager, TaskNode, TaskRepoValidation, TaskStatus, TaskStatusAction, TriggerManager, TriggerNode, TriggerStatus, applyRegistrySlotGuardStep, buildMediaLinkDraft, buildNodeImportArgs, callTelegramApi, checkFeedLocalAvailability, checkFeedOssAvailability, checkMediaAvailability, claimServiceRegistrySlot, createJsonFileStateStore, createL3ChildLauncher, createLogSpoolCoordinator, createLogger, createManagedChildProcesses, createPathsExistCheck, createRequiredEnvCheck, createServiceHost, createServiceRuntimeStateStore, createSupabaseReachableCheck, createTarget, createTelegramStorageProvider, downloadTelegramChunk, enableLogSpoolFromEnvInChild, encodeTelegramChunkUrl, ensureLogSpoolFromEnv, evaluateBusyNodeLiveness, fetchBinaryWithRetry, fetchWithRetry, findMediaLink, generateResponse, getConfigFileDir, getLogSpoolStats, getMainLogSpoolWriterStats, getPollCommandList, getPollCommandListSchema, getPossibleTarget, getScanRemoteRepoValues, getTarget, guardRetryAfterSec, guessMediaMime, importJsConfigModule, initSupabaseFromStandardEnv, isChildProcessRunning, isCreateTargetAlreadyExistsError, isFeedIngestSource, isFeedValue, isGuardAvailable, isHttpUrl, isLogEntry, isLogSpoolEnabled, isMediaValue, isOpaqueChunkUrl, isOptimisticLockResponse, isRetryableHttpStatus, loadCachedJsConfigModule, loadEnvFiles, logManager, logSpoolEnabledFromEnv, markWorkerSpawned, mediaLinkDedupFilters, nodeBufferToArrayBuffer, parseTelegramChunkUrl, patchChangeNodeStatus, patchChangeTaskStatus, patchClaimTask, patchNodeHeartBeat, patchServiceRuntime, patchStopNode, patchTriggerFired, patchTriggerFiredSchema, pathExists, pollTargetList, pollUntil, postCommand, postCommandSchema, postRegisterNode, postTarget, postTaskSchema, postTaskWithValidation, postTrigger, postTriggerSchema, probeMediaOriginal, publicBaseUrlFromEnv, readAndVerifySourceFile, readEnv, registerCollectLogRunner, registerFeed, registerMediaLink, registerServiceGuardRunner, registrySlotRuntimePatchFromGuardResult, requireEnv, resolveFirstExistingPath, resolveLogSpoolRoot, resolvePathFromBaseDir, resolvePathFromConfigFile, resolvePathFromCwd, resolveTelegramStorageOptions, runCollectLogTick, runReadinessChecks, runReadinessGate, runRegistrySlotGuardCheck, runServiceGuardTick, runSingleProcessService, scanEnabledTriggers, scanEnabledTriggersSchema, scanTargetList, sha256Hex, shutdownLogSpool, shutdownLogSpoolFromEnv, spawnTsxChild, supabase, telegramDownloadBinary, telegramFileDownloadUrl, toFileImportHref, updateTarget, updateTargetDetails, validateTaskRepoAndParams, validateWithSchema, waitForServiceReady };
|
|
4535
4776
|
//# sourceMappingURL=node.js.map
|