target-supabase-sdk 0.2.5 → 0.2.6
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/browser.d.ts +2 -3
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +1 -1
- package/dist/chunks/{word.interface-Mw7bTSqs.js → task-queue-D_7kYBx3.js} +83 -7
- package/dist/chunks/task-queue-D_7kYBx3.js.map +1 -0
- package/dist/node.js +2 -2
- package/dist/service/config.api.d.ts.map +1 -1
- package/dist/service/index.d.ts +2 -2
- package/dist/service/index.d.ts.map +1 -1
- package/dist/service/registry.service.d.ts +19 -0
- package/dist/service/registry.service.d.ts.map +1 -1
- package/package.json +1 -3
- package/src/browser.ts +3 -1
- package/src/service/config.api.ts +1 -0
- package/src/service/index.ts +3 -0
- package/src/service/registry.service.ts +111 -0
- package/dist/chunks/word.interface-Mw7bTSqs.js.map +0 -1
- package/dist/word/word.api.d.ts +0 -15
- package/dist/word/word.api.d.ts.map +0 -1
- package/dist/word/word.interface.d.ts +0 -20
- package/dist/word/word.interface.d.ts.map +0 -1
- package/src/word/word.api.ts +0 -41
- package/src/word/word.interface.ts +0 -22
package/dist/node.js
CHANGED
|
@@ -5,8 +5,8 @@ import { l as loadEnvFiles, b as readEnv, c as requireEnv, d as createJsonFileSt
|
|
|
5
5
|
export { C as CLI_PROD_FLAG, S as SERVICE_ENV_PROFILE_ENV_KEY, h as SERVICE_ENV_PROFILE_PROD, i as enableLogPersist, j as envBool, k as envInt, m as envMs, n as envNumber, o as envPort, q as envProfileFromProcess, t as parseEnvFile, u as parseEnvLine, p as pinEnvProfileFromArgv, x as pollUntil, y as resolveDefaultEnvFiles, z as resolveLogPersistRegistryPath, r as resolveProjectRootByPackageName, A as resolveProjectRootFromModule, v as validateLogPersistPreloadEnv } from './chunks/enable-log-persist-BL2FaGQp.js';
|
|
6
6
|
import { access, stat, readFile, mkdir, unlink, writeFile, readdir } from 'node:fs/promises';
|
|
7
7
|
import { resolve, join, dirname, isAbsolute } from 'node:path';
|
|
8
|
-
import { bd as sha256Hex, bi as getErrorMessage, aI as postRegisterNode, am as patchChangeNodeStatus, N as NodeStatus, ax as patchStopNode, au as patchNodeHeartBeat, E as EMPTY_REGISTRY_SLOT_RUNTIME_STATE, b3 as runRegistrySlotGuardCheck, aW as registrySlotRuntimePatchFromGuardResult, d as CategoryNode, L as evaluateBusyNodeLiveness, aw as patchServiceRuntime,
|
|
9
|
-
export { A as ApiMethod, C as CategoryConfig, a as CategoryExtraction, b as CategoryIdea, c as CategoryLink, e as CategoryParcel, g as CategoryService, h as CategoryTask,
|
|
8
|
+
import { bd as sha256Hex, bi as getErrorMessage, aI as postRegisterNode, am as patchChangeNodeStatus, N as NodeStatus, ax as patchStopNode, au as patchNodeHeartBeat, E as EMPTY_REGISTRY_SLOT_RUNTIME_STATE, b3 as runRegistrySlotGuardCheck, aW as registrySlotRuntimePatchFromGuardResult, d as CategoryNode, L as evaluateBusyNodeLiveness, aw as patchServiceRuntime, k as ServiceRegistryError, v as claimServiceRegistrySlot, f as CategoryRepo, R as ResultCode, bj as LOG_TOPIC_TASK, m as TASK_REPO_USAGE, a4 as getScanRemoteRepoValues, aq as patchClaimTask, bk as CRITICAL_UNKNOWN_TASK_TRACE_ID, ao as patchChangeTaskStatus, o as TaskStatusAction, bl as toError, aQ as postTaskSchema, bm as createTaskRow, n as TaskStatus } from './chunks/task-queue-D_7kYBx3.js';
|
|
9
|
+
export { A as ApiMethod, C as CategoryConfig, a as CategoryExtraction, b as CategoryIdea, c as CategoryLink, e as CategoryParcel, g as CategoryService, h as CategoryTask, D as DEFAULT_SYSTEM_REGISTRY_SEED_SLOTS, M as Market, P as POST_TASK_DEFAULT_MAX_ATTEMPTS, i as ParcelManager, j as PostLinkValidator, S as ServiceLifecycleStatus, l as ServiceSlotStatus, T as TARGET_SYSTEM_REGISTRY_KEY, p as apiDetailsSchema, q as appendSystemRegistrySlots, r as assertRegistrySlotAvailable, s as assertRegistrySlotOwner, t as buildEmptyServiceSlots, u as buildSystemRegistryConfigDetails, w as classifyNetworkError, x as countTasksByType, y as createActiveServiceLifecycle, z as createClaimedRegistrySlotRuntimeState, B as createStorageProviderRegistry, F as createUploadTracker, G as decodeLogBatch, H as decodeLogBatchList, I as defaultL3ServiceDetails, J as deleteParcel, K as deleteParcelSchema, O as fetchBinaryWithRetry, Q as fetchWithRetry, U as fieldDefinitionSchema, V as flattenLogBatch, W as flattenLogBatches, X as formatNetworkError, Y as getApi, Z as getApiSchema, _ as getConfig, $ as getConfigSchema, a0 as getExtraction, a1 as getExtractionSchema, a2 as getParcel, a3 as getParcelSchema, a5 as getScanRemoteRepoValuesSchema, a6 as getService, a7 as getServiceSchema, a8 as getTargetSystemRegistry, a9 as getValueAtPath, aa as installChunkFetchRegistry, ab as isHttpUrl, ac as isLocalFilesystemPath, ad as isLogBatchList, ae as isLogEntry, af as isOpaqueChunkUrl, ag as isRetryableHttpStatus, ah as parcelDetailsSchema, ai as parseLogBatchMeta, aj as parseProviderPrefixedUrl, ak as parseServiceSlot, al as parseServiceSlots, an as patchChangeNodeStatusSchema, ap as patchChangeTaskStatusSchema, ar as patchClaimTaskSchema, as as patchExtractionObjects, at as patchExtractionObjectsSchema, av as patchNodeHeartBeatSchema, ay as patchStopNodeSchema, az as patchTaskProgress, aA as patchTaskProgressSchema, aB as postApi, aC as postApiSchema, aD as postExtraction, aE as postExtractionSchema, aF as postLinkCreate, aG as postParcel, aH as postParcelSchema, aJ as postRegisterNodeSchema, aK as postService, aL as postServiceInstance, aM as postServiceSchema, aN as postSystemRegistryConfig, aO as postSystemRegistryConfigSchema, aP as postTask, aR as postTaskWithRetry, aS as publishParcel, aT as registerProviderChunkResolver, aU as registerService, aV as registerServiceAtStartup, aX as releaseSystemRegistrySlots, aY as requestHasBody, aZ as resetSystemRegistryConfig, a_ as resetSystemRegistryConfigSchema, a$ as resolveActiveRegistryServiceId, b0 as resolveFetchUrl, b1 as restoreParcel, b2 as restoreParcelById, b4 as sanitizeFileName, b5 as sanitizeParcelFileName, b6 as scanExtractionList, b7 as scanExtractionListSchema, b8 as schemaDefinitionSchema, b9 as serviceDetailsSchema, ba as serviceLifecycleSchema, bb as serviceNodeSnapshotSchema, bc as serviceRuntimeSchema, be as summarizeTaskQueue, bf as systemRegistrySeedSlotSchema, bg as unregisterService, bh as unregisterServiceAtShutdown } from './chunks/task-queue-D_7kYBx3.js';
|
|
10
10
|
import { spawn } from 'node:child_process';
|
|
11
11
|
import { createHash } from 'node:crypto';
|
|
12
12
|
import { tmpdir } from 'node:os';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.api.d.ts","sourceRoot":"","sources":["../../src/service/config.api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,OAAO,EAAkB,KAAK,MAAM,EAAE,KAAK,aAAa,EAA8B,MAAM,oBAAoB,CAAC;AACjH,OAAO,EAAE,KAAK,WAAW,EAAqB,MAAM,qBAAqB,CAAC;AAI1E,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;EAYvB,CAAC;AAEN,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE/D,wEAAwE;AACxE,eAAO,MAAM,4BAA4B;;;;;;EAEvC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF,eAAO,MAAM,8BAA8B;IACvC,wEAAwE;;;;;;;;;;;;;;;;;;;EAG1E,CAAC;AAEH,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAE7F,qGAAqG;AACrG,eAAO,MAAM,+BAA+B;IARxC,wEAAwE;;;;;;;;;;;;;;;;;;;EAQC,CAAC;AAE9E,MAAM,MAAM,gCAAgC,GAAG,+BAA+B,CAAC;AAK/E,uFAAuF;AACvF,eAAO,MAAM,kCAAkC,EAAE,SAAS,sBAAsB,
|
|
1
|
+
{"version":3,"file":"config.api.d.ts","sourceRoot":"","sources":["../../src/service/config.api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,OAAO,EAAkB,KAAK,MAAM,EAAE,KAAK,aAAa,EAA8B,MAAM,oBAAoB,CAAC;AACjH,OAAO,EAAE,KAAK,WAAW,EAAqB,MAAM,qBAAqB,CAAC;AAI1E,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;EAYvB,CAAC;AAEN,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE/D,wEAAwE;AACxE,eAAO,MAAM,4BAA4B;;;;;;EAEvC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF,eAAO,MAAM,8BAA8B;IACvC,wEAAwE;;;;;;;;;;;;;;;;;;;EAG1E,CAAC;AAEH,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAE7F,qGAAqG;AACrG,eAAO,MAAM,+BAA+B;IARxC,wEAAwE;;;;;;;;;;;;;;;;;;;EAQC,CAAC;AAE9E,MAAM,MAAM,gCAAgC,GAAG,+BAA+B,CAAC;AAK/E,uFAAuF;AACvF,eAAO,MAAM,kCAAkC,EAAE,SAAS,sBAAsB,EAMtE,CAAC;AAkBX,wFAAwF;AACxF,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,SAAS,sBAAsB,EAAE,GAAG,WAAW,EAAE,CAMlG;AAgBD,yEAAyE;AACzE,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,GAAG,aAAa,CAO7F;AAED,+EAA+E;AAC/E,eAAO,MAAM,SAAS;;;;UAaW,MAAM;;;;;;YA3GnC,CAAC;;;;;;;;;YAAD,CAAC;;;UA2G4B,MAAM;;;;;;YA3GnC,CAAC;;;;;;;;;YAAD,CAAC;;EA8HH,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,wBAAwB;;;;;4FAsBnC,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,yBAAyB;;;;;4FA2CpC,CAAC"}
|
package/dist/service/index.d.ts
CHANGED
|
@@ -7,8 +7,8 @@ export type { GetConfigPayload, PostSystemRegistryConfigPayload, ResetSystemRegi
|
|
|
7
7
|
export { buildEmptyServiceSlots, buildSystemRegistryConfigDetails, DEFAULT_SYSTEM_REGISTRY_SEED_SLOTS, getConfig, getConfigSchema, postSystemRegistryConfig, postSystemRegistryConfigSchema, resetSystemRegistryConfig, resetSystemRegistryConfigSchema, systemRegistrySeedSlotSchema, } from "./config.api";
|
|
8
8
|
export type { Config, ConfigDetails } from "./config.interface";
|
|
9
9
|
export { CategoryConfig, TARGET_SYSTEM_REGISTRY_KEY } from "./config.interface";
|
|
10
|
-
export type { PatchServiceRuntimeInput, RegisterServiceInput, ReleasedRegistrySlot, ReleaseSystemRegistrySlotsInput, ReleaseSystemRegistrySlotsOutcome, TargetSystemRegistrySlotView, TargetSystemRegistryView, } from "./registry.service";
|
|
11
|
-
export { assertRegistrySlotAvailable, assertRegistrySlotOwner, getTargetSystemRegistry, parseServiceSlot, parseServiceSlots, patchServiceRuntime, registerService, registerServiceAtStartup, releaseSystemRegistrySlots, resolveActiveRegistryServiceId, ServiceRegistryError, unregisterService, unregisterServiceAtShutdown, } from "./registry.service";
|
|
10
|
+
export type { AppendSystemRegistrySlotsInput, AppendSystemRegistrySlotsOutcome, PatchServiceRuntimeInput, RegisterServiceInput, ReleasedRegistrySlot, ReleaseSystemRegistrySlotsInput, ReleaseSystemRegistrySlotsOutcome, TargetSystemRegistrySlotView, TargetSystemRegistryView, } from "./registry.service";
|
|
11
|
+
export { appendSystemRegistrySlots, assertRegistrySlotAvailable, assertRegistrySlotOwner, getTargetSystemRegistry, parseServiceSlot, parseServiceSlots, patchServiceRuntime, registerService, registerServiceAtStartup, releaseSystemRegistrySlots, resolveActiveRegistryServiceId, ServiceRegistryError, unregisterService, unregisterServiceAtShutdown, } from "./registry.service";
|
|
12
12
|
export type { ClaimRegistrySlotInput, RegistrySlotGuardResult, RegistrySlotRuntimeState, ServiceRegistrySession, } from "./registry-lifecycle";
|
|
13
13
|
export { claimServiceRegistrySlot, createClaimedRegistrySlotRuntimeState, EMPTY_REGISTRY_SLOT_RUNTIME_STATE, registrySlotRuntimePatchFromGuardResult, runRegistrySlotGuardCheck, } from "./registry-lifecycle";
|
|
14
14
|
export type { GetApiPayload, GetServicePayload, PostApiPayload, PostServicePayload } from "./service.api";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/service/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EACR,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,gBAAgB,GACnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,YAAY,EACR,gBAAgB,EAChB,+BAA+B,EAC/B,gCAAgC,EAChC,sBAAsB,GACzB,MAAM,cAAc,CAAC;AACtB,OAAO,EACH,sBAAsB,EACtB,gCAAgC,EAChC,kCAAkC,EAClC,SAAS,EACT,eAAe,EACf,wBAAwB,EACxB,8BAA8B,EAC9B,yBAAyB,EACzB,+BAA+B,EAC/B,4BAA4B,GAC/B,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChF,YAAY,EACR,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EACpB,+BAA+B,EAC/B,iCAAiC,EACjC,4BAA4B,EAC5B,wBAAwB,GAC3B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACH,2BAA2B,EAC3B,uBAAuB,EACvB,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,0BAA0B,EAC1B,8BAA8B,EAC9B,oBAAoB,EACpB,iBAAiB,EACjB,2BAA2B,GAC9B,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACR,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACH,wBAAwB,EACxB,qCAAqC,EACrC,iCAAiC,EACjC,uCAAuC,EACvC,yBAAyB,GAC5B,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC1G,OAAO,EACH,gBAAgB,EAChB,qBAAqB,EACrB,MAAM,EACN,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,oBAAoB,GACvB,MAAM,eAAe,CAAC;AACvB,YAAY,EACR,GAAG,EACH,UAAU,EACV,OAAO,EACP,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,WAAW,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACjG,YAAY,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EACH,4BAA4B,EAC5B,uBAAuB,EACvB,mBAAmB,GACtB,MAAM,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/service/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EACR,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,gBAAgB,GACnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,YAAY,EACR,gBAAgB,EAChB,+BAA+B,EAC/B,gCAAgC,EAChC,sBAAsB,GACzB,MAAM,cAAc,CAAC;AACtB,OAAO,EACH,sBAAsB,EACtB,gCAAgC,EAChC,kCAAkC,EAClC,SAAS,EACT,eAAe,EACf,wBAAwB,EACxB,8BAA8B,EAC9B,yBAAyB,EACzB,+BAA+B,EAC/B,4BAA4B,GAC/B,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChF,YAAY,EACR,8BAA8B,EAC9B,gCAAgC,EAChC,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EACpB,+BAA+B,EAC/B,iCAAiC,EACjC,4BAA4B,EAC5B,wBAAwB,GAC3B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACH,yBAAyB,EACzB,2BAA2B,EAC3B,uBAAuB,EACvB,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,0BAA0B,EAC1B,8BAA8B,EAC9B,oBAAoB,EACpB,iBAAiB,EACjB,2BAA2B,GAC9B,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACR,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACH,wBAAwB,EACxB,qCAAqC,EACrC,iCAAiC,EACjC,uCAAuC,EACvC,yBAAyB,GAC5B,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC1G,OAAO,EACH,gBAAgB,EAChB,qBAAqB,EACrB,MAAM,EACN,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,oBAAoB,GACvB,MAAM,eAAe,CAAC;AACvB,YAAY,EACR,GAAG,EACH,UAAU,EACV,OAAO,EACP,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,WAAW,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACjG,YAAY,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EACH,4BAA4B,EAC5B,uBAAuB,EACvB,mBAAmB,GACtB,MAAM,qBAAqB,CAAC"}
|
|
@@ -44,6 +44,19 @@ export interface ReleaseSystemRegistrySlotsOutcome {
|
|
|
44
44
|
/** Requested `serviceValues` with no ACTIVE slot released (already EMPTY or never bound). */
|
|
45
45
|
unchangedServiceValues: string[];
|
|
46
46
|
}
|
|
47
|
+
export interface AppendSystemRegistrySlotsInput {
|
|
48
|
+
/** Logical service keys to declare with one new EMPTY slot each when missing. */
|
|
49
|
+
serviceValues: string[];
|
|
50
|
+
traceId?: string;
|
|
51
|
+
maxAttempts?: number;
|
|
52
|
+
}
|
|
53
|
+
export interface AppendSystemRegistrySlotsOutcome {
|
|
54
|
+
config: Config;
|
|
55
|
+
/** Service keys that received a new EMPTY slot this run. */
|
|
56
|
+
added: string[];
|
|
57
|
+
/** Requested keys that already had at least one declared slot — no change. */
|
|
58
|
+
skipped: string[];
|
|
59
|
+
}
|
|
47
60
|
export declare class ServiceRegistryError extends Error {
|
|
48
61
|
readonly code: "REGISTRY_CONFIG_NOT_FOUND" | "SERVICE_NOT_DECLARED" | "SERVICE_SLOTS_FULL" | "REGISTRY_SLOT_LOST" | "REGISTRY_UPDATE_FAILED";
|
|
49
62
|
constructor(message: string, code: "REGISTRY_CONFIG_NOT_FOUND" | "SERVICE_NOT_DECLARED" | "SERVICE_SLOTS_FULL" | "REGISTRY_SLOT_LOST" | "REGISTRY_UPDATE_FAILED");
|
|
@@ -76,6 +89,12 @@ export declare function assertRegistrySlotOwner(input: {
|
|
|
76
89
|
* Does not delete Service rows or mutate `details.runtime`.
|
|
77
90
|
*/
|
|
78
91
|
export declare function releaseSystemRegistrySlots(input: ReleaseSystemRegistrySlotsInput): Promise<ReleaseSystemRegistrySlotsOutcome>;
|
|
92
|
+
/**
|
|
93
|
+
* Append EMPTY {@link ServiceSlot} rows for logical service keys not yet declared.
|
|
94
|
+
* Idempotent — skips keys that already appear in `details.objects`.
|
|
95
|
+
* Does not modify existing slots or release ACTIVE bindings.
|
|
96
|
+
*/
|
|
97
|
+
export declare function appendSystemRegistrySlots(input: AppendSystemRegistrySlotsInput): Promise<AppendSystemRegistrySlotsOutcome>;
|
|
79
98
|
/**
|
|
80
99
|
* Claim one EMPTY slot for a running Service instance (`EMPTY → ACTIVE` only).
|
|
81
100
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.service.d.ts","sourceRoot":"","sources":["../../src/service/registry.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.service.d.ts","sourceRoot":"","sources":["../../src/service/registry.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "target-supabase-sdk",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.6",
|
|
4
4
|
"description": "Supabase client initializer and data access APIs",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "KyLoc20",
|
|
@@ -56,8 +56,6 @@
|
|
|
56
56
|
"worker:trigger": "tsx scripts/run-trigger-node.ts",
|
|
57
57
|
"post-command": "tsx scripts/post-command.ts",
|
|
58
58
|
"post-trigger": "tsx scripts/post-trigger.ts",
|
|
59
|
-
"seed:system-registry": "tsx scripts/seed-system-registry.ts",
|
|
60
|
-
"reset:system-registry": "tsx scripts/reset-system-registry.ts",
|
|
61
59
|
"parcel:split": "tsx scripts/parcel-split-local.ts",
|
|
62
60
|
"parcel:restore": "tsx scripts/parcel-restore-local.ts",
|
|
63
61
|
"dev": "rollup -c --watch",
|
package/src/browser.ts
CHANGED
|
@@ -104,6 +104,8 @@ export * from "./repo/repo.interface";
|
|
|
104
104
|
export type {
|
|
105
105
|
Api,
|
|
106
106
|
ApiDetails,
|
|
107
|
+
AppendSystemRegistrySlotsInput,
|
|
108
|
+
AppendSystemRegistrySlotsOutcome,
|
|
107
109
|
ClaimRegistrySlotInput,
|
|
108
110
|
Config,
|
|
109
111
|
ConfigDetails,
|
|
@@ -136,6 +138,7 @@ export type {
|
|
|
136
138
|
export {
|
|
137
139
|
ApiMethod,
|
|
138
140
|
apiDetailsSchema,
|
|
141
|
+
appendSystemRegistrySlots,
|
|
139
142
|
assertRegistrySlotAvailable,
|
|
140
143
|
assertRegistrySlotOwner,
|
|
141
144
|
buildEmptyServiceSlots,
|
|
@@ -260,4 +263,3 @@ export type { PostTaskWithRetryOptions, PostTaskWithRetryResult } from "./task/t
|
|
|
260
263
|
export { POST_TASK_DEFAULT_MAX_ATTEMPTS, postTaskWithRetry } from "./task/task-post-retry.api";
|
|
261
264
|
export type { TaskStatusCount } from "./task/task-queue";
|
|
262
265
|
export { countTasksByType, summarizeTaskQueue } from "./task/task-queue";
|
|
263
|
-
export * from "./word/word.interface";
|
|
@@ -59,6 +59,7 @@ export const DEFAULT_SYSTEM_REGISTRY_SEED_SLOTS: readonly SystemRegistrySeedSlot
|
|
|
59
59
|
{ serviceValue: "watch-service" },
|
|
60
60
|
{ serviceValue: "download-service" },
|
|
61
61
|
{ serviceValue: "storage-service" },
|
|
62
|
+
{ serviceValue: "gc-service" },
|
|
62
63
|
] as const;
|
|
63
64
|
|
|
64
65
|
const configCategoryFilter: QueryFilter = {
|
package/src/service/index.ts
CHANGED
|
@@ -30,6 +30,8 @@ export {
|
|
|
30
30
|
export type { Config, ConfigDetails } from "./config.interface";
|
|
31
31
|
export { CategoryConfig, TARGET_SYSTEM_REGISTRY_KEY } from "./config.interface";
|
|
32
32
|
export type {
|
|
33
|
+
AppendSystemRegistrySlotsInput,
|
|
34
|
+
AppendSystemRegistrySlotsOutcome,
|
|
33
35
|
PatchServiceRuntimeInput,
|
|
34
36
|
RegisterServiceInput,
|
|
35
37
|
ReleasedRegistrySlot,
|
|
@@ -39,6 +41,7 @@ export type {
|
|
|
39
41
|
TargetSystemRegistryView,
|
|
40
42
|
} from "./registry.service";
|
|
41
43
|
export {
|
|
44
|
+
appendSystemRegistrySlots,
|
|
42
45
|
assertRegistrySlotAvailable,
|
|
43
46
|
assertRegistrySlotOwner,
|
|
44
47
|
getTargetSystemRegistry,
|
|
@@ -71,6 +71,21 @@ export interface ReleaseSystemRegistrySlotsOutcome {
|
|
|
71
71
|
unchangedServiceValues: string[];
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
+
export interface AppendSystemRegistrySlotsInput {
|
|
75
|
+
/** Logical service keys to declare with one new EMPTY slot each when missing. */
|
|
76
|
+
serviceValues: string[];
|
|
77
|
+
traceId?: string;
|
|
78
|
+
maxAttempts?: number;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export interface AppendSystemRegistrySlotsOutcome {
|
|
82
|
+
config: Config;
|
|
83
|
+
/** Service keys that received a new EMPTY slot this run. */
|
|
84
|
+
added: string[];
|
|
85
|
+
/** Requested keys that already had at least one declared slot — no change. */
|
|
86
|
+
skipped: string[];
|
|
87
|
+
}
|
|
88
|
+
|
|
74
89
|
export class ServiceRegistryError extends Error {
|
|
75
90
|
constructor(
|
|
76
91
|
message: string,
|
|
@@ -460,6 +475,102 @@ export async function releaseSystemRegistrySlots(
|
|
|
460
475
|
);
|
|
461
476
|
}
|
|
462
477
|
|
|
478
|
+
/**
|
|
479
|
+
* Append EMPTY {@link ServiceSlot} rows for logical service keys not yet declared.
|
|
480
|
+
* Idempotent — skips keys that already appear in `details.objects`.
|
|
481
|
+
* Does not modify existing slots or release ACTIVE bindings.
|
|
482
|
+
*/
|
|
483
|
+
export async function appendSystemRegistrySlots(
|
|
484
|
+
input: AppendSystemRegistrySlotsInput,
|
|
485
|
+
): Promise<AppendSystemRegistrySlotsOutcome> {
|
|
486
|
+
const serviceValues = [
|
|
487
|
+
...new Set(input.serviceValues.map((value) => value.trim()).filter((value) => value !== "")),
|
|
488
|
+
];
|
|
489
|
+
if (serviceValues.length === 0) {
|
|
490
|
+
throw new Error("[appendSystemRegistrySlots] serviceValues must not be empty");
|
|
491
|
+
}
|
|
492
|
+
|
|
493
|
+
const maxAttempts = input.maxAttempts ?? DEFAULT_REGISTER_RETRY_ATTEMPTS;
|
|
494
|
+
const logger = createLogger({
|
|
495
|
+
module: "appendSystemRegistrySlots",
|
|
496
|
+
traceId: input.traceId,
|
|
497
|
+
labels: { serviceValues: serviceValues.join(",") },
|
|
498
|
+
});
|
|
499
|
+
|
|
500
|
+
logger.info("开始追加 registry 槽位声明", {
|
|
501
|
+
topic: LOG_TOPIC_REGISTRY,
|
|
502
|
+
data: { serviceValues },
|
|
503
|
+
});
|
|
504
|
+
|
|
505
|
+
for (let attempt = 1; attempt <= maxAttempts; attempt += 1) {
|
|
506
|
+
try {
|
|
507
|
+
const config = await loadSystemRegistryConfig();
|
|
508
|
+
const revision = parseRegistryRevision(config.details.meta);
|
|
509
|
+
const slots = parseServiceSlots(config);
|
|
510
|
+
|
|
511
|
+
const added: string[] = [];
|
|
512
|
+
const skipped: string[] = [];
|
|
513
|
+
const nextSlots = [...slots];
|
|
514
|
+
|
|
515
|
+
for (const serviceValue of serviceValues) {
|
|
516
|
+
if (isServiceValueDeclared(nextSlots, serviceValue)) {
|
|
517
|
+
skipped.push(serviceValue);
|
|
518
|
+
continue;
|
|
519
|
+
}
|
|
520
|
+
nextSlots.push({
|
|
521
|
+
serviceValue,
|
|
522
|
+
serviceId: null,
|
|
523
|
+
status: ServiceSlotStatus.EMPTY,
|
|
524
|
+
});
|
|
525
|
+
added.push(serviceValue);
|
|
526
|
+
}
|
|
527
|
+
|
|
528
|
+
if (added.length === 0) {
|
|
529
|
+
logger.info("所有 service 已声明 — 无需追加", {
|
|
530
|
+
topic: LOG_TOPIC_REGISTRY,
|
|
531
|
+
data: { serviceValues, skipped },
|
|
532
|
+
});
|
|
533
|
+
return { config, added, skipped: serviceValues };
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
await persistSlotClaim({
|
|
537
|
+
configId: config.id,
|
|
538
|
+
revision,
|
|
539
|
+
slots: nextSlots,
|
|
540
|
+
});
|
|
541
|
+
|
|
542
|
+
const updated = await loadSystemRegistryConfig();
|
|
543
|
+
logger.info("registry 槽位追加成功", {
|
|
544
|
+
topic: LOG_TOPIC_REGISTRY,
|
|
545
|
+
data: { added, skipped, attempt, revision: revision + 1 },
|
|
546
|
+
});
|
|
547
|
+
|
|
548
|
+
return { config: updated, added, skipped };
|
|
549
|
+
} catch (error) {
|
|
550
|
+
if (isOptimisticLockError(error) && attempt < maxAttempts) {
|
|
551
|
+
logger.warn("registry 乐观锁冲突,重试", {
|
|
552
|
+
topic: LOG_TOPIC_REGISTRY,
|
|
553
|
+
data: { serviceValues, attempt, maxAttempts },
|
|
554
|
+
});
|
|
555
|
+
await sleep(50 * attempt);
|
|
556
|
+
continue;
|
|
557
|
+
}
|
|
558
|
+
|
|
559
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
560
|
+
logger.error("registry 槽位追加失败", {
|
|
561
|
+
topic: LOG_TOPIC_REGISTRY,
|
|
562
|
+
data: { serviceValues, attempt, message },
|
|
563
|
+
});
|
|
564
|
+
throw new ServiceRegistryError(message, "REGISTRY_UPDATE_FAILED");
|
|
565
|
+
}
|
|
566
|
+
}
|
|
567
|
+
|
|
568
|
+
throw new ServiceRegistryError(
|
|
569
|
+
"[appendSystemRegistrySlots] Optimistic lock retries exhausted",
|
|
570
|
+
"REGISTRY_UPDATE_FAILED",
|
|
571
|
+
);
|
|
572
|
+
}
|
|
573
|
+
|
|
463
574
|
/**
|
|
464
575
|
* Claim one EMPTY slot for a running Service instance (`EMPTY → ACTIVE` only).
|
|
465
576
|
*
|