target-supabase-sdk 0.2.11 → 0.2.13

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.
Files changed (154) hide show
  1. package/dist/browser.d.ts +2 -3
  2. package/dist/browser.d.ts.map +1 -1
  3. package/dist/browser.js +2 -2
  4. package/dist/chunks/enable-DqnfLPsQ.js +874 -0
  5. package/dist/chunks/enable-DqnfLPsQ.js.map +1 -0
  6. package/dist/chunks/{list.api-DSTOHzOC.js → list.api-BzbTJBsM.js} +35 -2
  7. package/dist/chunks/list.api-BzbTJBsM.js.map +1 -0
  8. package/dist/chunks/{task-queue-BHvNgb-X.js → task-queue-6X3aglJh.js} +110 -17
  9. package/dist/chunks/task-queue-6X3aglJh.js.map +1 -0
  10. package/dist/node/preload/run-service-preload.d.ts +1 -0
  11. package/dist/node/preload/run-service-preload.d.ts.map +1 -1
  12. package/dist/node/preload/service-preload.interface.d.ts +7 -0
  13. package/dist/node/preload/service-preload.interface.d.ts.map +1 -1
  14. package/dist/node/process/managed-child-processes.d.ts.map +1 -1
  15. package/dist/node/service-guard/service-guard-node.d.ts.map +1 -1
  16. package/dist/node/service-host/index.d.ts +1 -0
  17. package/dist/node/service-host/index.d.ts.map +1 -1
  18. package/dist/node/service-host/service-host.d.ts +5 -1
  19. package/dist/node/service-host/service-host.d.ts.map +1 -1
  20. package/dist/node.d.ts +10 -5
  21. package/dist/node.d.ts.map +1 -1
  22. package/dist/node.js +494 -49
  23. package/dist/node.js.map +1 -1
  24. package/dist/preload.js +20 -7
  25. package/dist/preload.js.map +1 -1
  26. package/dist/resource/resource.interface.d.ts +20 -0
  27. package/dist/resource/resource.interface.d.ts.map +1 -0
  28. package/dist/service/config.api.d.ts.map +1 -1
  29. package/dist/service/index.d.ts +2 -2
  30. package/dist/service/index.d.ts.map +1 -1
  31. package/dist/service/registry.service.d.ts +19 -0
  32. package/dist/service/registry.service.d.ts.map +1 -1
  33. package/dist/shared/log/core/create-logger.d.ts.map +1 -0
  34. package/dist/shared/log/{log-batch.d.ts → core/log-batch.d.ts} +4 -4
  35. package/dist/shared/log/core/log-batch.d.ts.map +1 -0
  36. package/dist/shared/log/core/log-manager.d.ts.map +1 -0
  37. package/dist/shared/log/core/log-min-level.d.ts +15 -0
  38. package/dist/shared/log/core/log-min-level.d.ts.map +1 -0
  39. package/dist/shared/log/core/log-scope.d.ts.map +1 -0
  40. package/dist/shared/log/index.d.ts +13 -11
  41. package/dist/shared/log/index.d.ts.map +1 -1
  42. package/dist/shared/log/spool/collector.d.ts +21 -0
  43. package/dist/shared/log/spool/collector.d.ts.map +1 -0
  44. package/dist/shared/log/spool/config.d.ts +7 -0
  45. package/dist/shared/log/spool/config.d.ts.map +1 -0
  46. package/dist/shared/log/spool/coordinator.d.ts +18 -0
  47. package/dist/shared/log/spool/coordinator.d.ts.map +1 -0
  48. package/dist/shared/log/spool/enable.d.ts +23 -0
  49. package/dist/shared/log/spool/enable.d.ts.map +1 -0
  50. package/dist/shared/log/spool/file.d.ts +21 -0
  51. package/dist/shared/log/spool/file.d.ts.map +1 -0
  52. package/dist/shared/log/spool/interface.d.ts +55 -0
  53. package/dist/shared/log/spool/interface.d.ts.map +1 -0
  54. package/dist/shared/log/spool/paths.d.ts +6 -0
  55. package/dist/shared/log/spool/paths.d.ts.map +1 -0
  56. package/dist/shared/log/spool/process-roles.d.ts +17 -0
  57. package/dist/shared/log/spool/process-roles.d.ts.map +1 -0
  58. package/dist/shared/log/spool/register-collect-log-runner.d.ts +15 -0
  59. package/dist/shared/log/spool/register-collect-log-runner.d.ts.map +1 -0
  60. package/dist/shared/log/spool/service-lifecycle.d.ts +13 -0
  61. package/dist/shared/log/spool/service-lifecycle.d.ts.map +1 -0
  62. package/dist/shared/log/spool/writer.d.ts +32 -0
  63. package/dist/shared/log/spool/writer.d.ts.map +1 -0
  64. package/dist/shared/log/{log-persist-batch-id.d.ts → upload/batch-id.d.ts} +3 -3
  65. package/dist/shared/log/upload/batch-id.d.ts.map +1 -0
  66. package/dist/shared/log/upload/env.d.ts +7 -0
  67. package/dist/shared/log/upload/env.d.ts.map +1 -0
  68. package/dist/shared/log/{log-persist-flush.d.ts → upload/flush.d.ts} +3 -3
  69. package/dist/shared/log/upload/flush.d.ts.map +1 -0
  70. package/dist/shared/log/{log-persist-hook.d.ts → upload/hook.d.ts} +2 -2
  71. package/dist/shared/log/upload/hook.d.ts.map +1 -0
  72. package/dist/shared/log/upload/interface.d.ts +33 -0
  73. package/dist/shared/log/upload/interface.d.ts.map +1 -0
  74. package/dist/shared/log/upload/logger.d.ts +22 -0
  75. package/dist/shared/log/upload/logger.d.ts.map +1 -0
  76. package/package.json +1 -1
  77. package/src/browser.ts +4 -1
  78. package/src/node/preload/run-service-preload.ts +23 -4
  79. package/src/node/preload/service-preload.interface.ts +8 -0
  80. package/src/node/process/create-managed-child-processes.ts +1 -1
  81. package/src/node/process/managed-child-processes.ts +8 -1
  82. package/src/node/service-guard/service-guard-node.ts +5 -0
  83. package/src/node/service-host/index.ts +4 -0
  84. package/src/node/service-host/service-host.ts +22 -3
  85. package/src/node.ts +26 -19
  86. package/src/resource/resource.interface.ts +37 -0
  87. package/src/service/config.api.ts +1 -0
  88. package/src/service/index.ts +3 -0
  89. package/src/service/registry.service.ts +142 -0
  90. package/src/shared/log/README.md +206 -0
  91. package/src/shared/log/{log-batch.ts → core/log-batch.ts} +4 -4
  92. package/src/shared/log/{log-manager.ts → core/log-manager.ts} +3 -3
  93. package/src/shared/log/core/log-min-level.ts +46 -0
  94. package/src/shared/log/{log-scope.ts → core/log-scope.ts} +1 -1
  95. package/src/shared/log/index.ts +17 -15
  96. package/src/shared/log/spool/collector.ts +330 -0
  97. package/src/shared/log/spool/config.ts +56 -0
  98. package/src/shared/log/spool/coordinator.ts +55 -0
  99. package/src/shared/log/spool/enable.ts +136 -0
  100. package/src/shared/log/spool/file.ts +75 -0
  101. package/src/shared/log/spool/interface.ts +62 -0
  102. package/src/shared/log/spool/paths.ts +30 -0
  103. package/src/shared/log/spool/process-roles.ts +75 -0
  104. package/src/shared/log/spool/register-collect-log-runner.ts +63 -0
  105. package/src/shared/log/spool/service-lifecycle.ts +35 -0
  106. package/src/shared/log/spool/writer.ts +273 -0
  107. package/src/shared/log/{log-persist-batch-id.ts → upload/batch-id.ts} +2 -2
  108. package/src/shared/log/upload/env.ts +26 -0
  109. package/src/shared/log/{log-persist-flush.ts → upload/flush.ts} +8 -7
  110. package/src/shared/log/{log-persist-hook.ts → upload/hook.ts} +1 -1
  111. package/src/shared/log/upload/interface.ts +38 -0
  112. package/src/shared/log/upload/logger.ts +37 -0
  113. package/dist/chunks/enable-log-persist-Cu3SGxK7.js +0 -1674
  114. package/dist/chunks/enable-log-persist-Cu3SGxK7.js.map +0 -1
  115. package/dist/chunks/list.api-DSTOHzOC.js.map +0 -1
  116. package/dist/chunks/task-queue-BHvNgb-X.js.map +0 -1
  117. package/dist/idea/idea.interface.d.ts +0 -25
  118. package/dist/idea/idea.interface.d.ts.map +0 -1
  119. package/dist/shared/log/create-logger.d.ts.map +0 -1
  120. package/dist/shared/log/enable-log-persist.d.ts +0 -28
  121. package/dist/shared/log/enable-log-persist.d.ts.map +0 -1
  122. package/dist/shared/log/log-batch.d.ts.map +0 -1
  123. package/dist/shared/log/log-manager.d.ts.map +0 -1
  124. package/dist/shared/log/log-persist-batch-id.d.ts.map +0 -1
  125. package/dist/shared/log/log-persist-coordinator.d.ts +0 -37
  126. package/dist/shared/log/log-persist-coordinator.d.ts.map +0 -1
  127. package/dist/shared/log/log-persist-errors.d.ts +0 -4
  128. package/dist/shared/log/log-persist-errors.d.ts.map +0 -1
  129. package/dist/shared/log/log-persist-flush.d.ts.map +0 -1
  130. package/dist/shared/log/log-persist-hook.d.ts.map +0 -1
  131. package/dist/shared/log/log-persist-logger.d.ts +0 -16
  132. package/dist/shared/log/log-persist-logger.d.ts.map +0 -1
  133. package/dist/shared/log/log-persist-registry.d.ts +0 -18
  134. package/dist/shared/log/log-persist-registry.d.ts.map +0 -1
  135. package/dist/shared/log/log-persist.config.d.ts +0 -9
  136. package/dist/shared/log/log-persist.config.d.ts.map +0 -1
  137. package/dist/shared/log/log-persist.d.ts +0 -62
  138. package/dist/shared/log/log-persist.d.ts.map +0 -1
  139. package/dist/shared/log/log-persist.interface.d.ts +0 -132
  140. package/dist/shared/log/log-persist.interface.d.ts.map +0 -1
  141. package/dist/shared/log/log-scope.d.ts.map +0 -1
  142. package/src/idea/idea.interface.ts +0 -28
  143. package/src/shared/log/enable-log-persist.ts +0 -225
  144. package/src/shared/log/log-persist-coordinator.ts +0 -107
  145. package/src/shared/log/log-persist-errors.ts +0 -16
  146. package/src/shared/log/log-persist-logger.ts +0 -61
  147. package/src/shared/log/log-persist-registry.ts +0 -252
  148. package/src/shared/log/log-persist.config.ts +0 -115
  149. package/src/shared/log/log-persist.interface.ts +0 -150
  150. package/src/shared/log/log-persist.ts +0 -822
  151. /package/dist/shared/log/{create-logger.d.ts → core/create-logger.d.ts} +0 -0
  152. /package/dist/shared/log/{log-manager.d.ts → core/log-manager.d.ts} +0 -0
  153. /package/dist/shared/log/{log-scope.d.ts → core/log-scope.d.ts} +0 -0
  154. /package/src/shared/log/{create-logger.ts → core/create-logger.ts} +0 -0
@@ -1,115 +0,0 @@
1
- import { envBool, envInt, envMs } from "../../node/env/env-parsers";
2
- import type { LogPersistConfig } from "./log-persist.interface";
3
-
4
- export const DEFAULT_LOG_PERSIST_CONFIG: LogPersistConfig = {
5
- fast: {
6
- maxBufferEntries: 500,
7
- },
8
- medium: {
9
- debounceMs: 5_000,
10
- maxEntries: 20,
11
- maxBytes: 512 * 1024,
12
- maxBufferEntries: 1_000,
13
- },
14
- slow: {
15
- maxEntries: 400,
16
- maxBytes: 512 * 1024,
17
- maxAgeMs: 120_000,
18
- maxBufferEntries: 2_000,
19
- },
20
- postTimeoutMs: 30_000,
21
- shutdownDrainTimeoutMs: 15_000,
22
- laneRetryIntervalMs: 5_000,
23
- errorLogRateLimitMs: 5_000,
24
- circuitBreakerPermanentFailureThreshold: 3,
25
- };
26
-
27
- export function resolveLogPersistConfig(partial?: Partial<LogPersistConfig>): LogPersistConfig {
28
- const defaults = DEFAULT_LOG_PERSIST_CONFIG;
29
- return {
30
- fast: { ...defaults.fast, ...partial?.fast },
31
- medium: { ...defaults.medium, ...partial?.medium },
32
- slow: { ...defaults.slow, ...partial?.slow },
33
- postTimeoutMs: partial?.postTimeoutMs ?? defaults.postTimeoutMs,
34
- shutdownDrainTimeoutMs: partial?.shutdownDrainTimeoutMs ?? defaults.shutdownDrainTimeoutMs,
35
- laneRetryIntervalMs: partial?.laneRetryIntervalMs ?? defaults.laneRetryIntervalMs,
36
- errorLogRateLimitMs: partial?.errorLogRateLimitMs ?? defaults.errorLogRateLimitMs,
37
- circuitBreakerPermanentFailureThreshold:
38
- partial?.circuitBreakerPermanentFailureThreshold ?? defaults.circuitBreakerPermanentFailureThreshold,
39
- };
40
- }
41
-
42
- export function logPersistEnabledFromEnv(env: NodeJS.ProcessEnv = process.env): boolean {
43
- return envBool("LOG_PERSIST_ENABLED", false, env);
44
- }
45
-
46
- export function logPersistServiceFromEnv(env: NodeJS.ProcessEnv = process.env): string | undefined {
47
- const raw = env.LOG_PERSIST_SERVICE?.trim();
48
- return raw != null && raw !== "" ? raw : undefined;
49
- }
50
-
51
- export function logPersistProcessFromEnv(env: NodeJS.ProcessEnv = process.env): string | undefined {
52
- const raw = env.LOG_PERSIST_PROCESS?.trim();
53
- return raw != null && raw !== "" ? raw : undefined;
54
- }
55
-
56
- export function logPersistRegistryDirFromEnv(env: NodeJS.ProcessEnv = process.env): string | undefined {
57
- const configured = env.LOG_PERSIST_REGISTRY_DIR?.trim();
58
- if (configured != null && configured !== "") {
59
- return configured;
60
- }
61
- const runtime = env.RUNTIME_DATA_DIR?.trim();
62
- return runtime != null && runtime !== "" ? runtime : undefined;
63
- }
64
-
65
- export function logPersistConfigFromEnv(env: NodeJS.ProcessEnv = process.env): LogPersistConfig {
66
- return resolveLogPersistConfig({
67
- fast: {
68
- maxBufferEntries: envInt("LOG_FAST_MAX_BUFFER_ENTRIES", DEFAULT_LOG_PERSIST_CONFIG.fast.maxBufferEntries, {
69
- env,
70
- min: 1,
71
- }),
72
- },
73
- medium: {
74
- debounceMs: envMs("LOG_MEDIUM_DEBOUNCE_MS", DEFAULT_LOG_PERSIST_CONFIG.medium.debounceMs, { env }),
75
- maxEntries: envInt("LOG_MEDIUM_MAX_ENTRIES", DEFAULT_LOG_PERSIST_CONFIG.medium.maxEntries, {
76
- env,
77
- min: 1,
78
- }),
79
- maxBytes: envInt("LOG_MEDIUM_MAX_BYTES", DEFAULT_LOG_PERSIST_CONFIG.medium.maxBytes, { env, min: 1 }),
80
- maxBufferEntries: envInt(
81
- "LOG_MEDIUM_MAX_BUFFER_ENTRIES",
82
- DEFAULT_LOG_PERSIST_CONFIG.medium.maxBufferEntries,
83
- { env, min: 1 },
84
- ),
85
- },
86
- slow: {
87
- maxEntries: envInt("LOG_SLOW_MAX_ENTRIES", DEFAULT_LOG_PERSIST_CONFIG.slow.maxEntries, { env, min: 1 }),
88
- maxBytes: envInt("LOG_SLOW_MAX_BYTES", DEFAULT_LOG_PERSIST_CONFIG.slow.maxBytes, { env, min: 1 }),
89
- maxAgeMs: envMs("LOG_SLOW_MAX_AGE_MS", DEFAULT_LOG_PERSIST_CONFIG.slow.maxAgeMs, { env }),
90
- maxBufferEntries: envInt("LOG_SLOW_MAX_BUFFER_ENTRIES", DEFAULT_LOG_PERSIST_CONFIG.slow.maxBufferEntries, {
91
- env,
92
- min: 1,
93
- }),
94
- },
95
- postTimeoutMs: envMs("LOG_PERSIST_POST_TIMEOUT_MS", DEFAULT_LOG_PERSIST_CONFIG.postTimeoutMs, { env }),
96
- shutdownDrainTimeoutMs: envMs(
97
- "LOG_PERSIST_SHUTDOWN_DRAIN_MS",
98
- DEFAULT_LOG_PERSIST_CONFIG.shutdownDrainTimeoutMs,
99
- { env },
100
- ),
101
- laneRetryIntervalMs: envMs("LOG_PERSIST_LANE_RETRY_MS", DEFAULT_LOG_PERSIST_CONFIG.laneRetryIntervalMs, {
102
- env,
103
- }),
104
- errorLogRateLimitMs: envMs(
105
- "LOG_PERSIST_ERROR_LOG_RATE_LIMIT_MS",
106
- DEFAULT_LOG_PERSIST_CONFIG.errorLogRateLimitMs,
107
- { env },
108
- ),
109
- circuitBreakerPermanentFailureThreshold: envInt(
110
- "LOG_PERSIST_CIRCUIT_BREAKER_THRESHOLD",
111
- DEFAULT_LOG_PERSIST_CONFIG.circuitBreakerPermanentFailureThreshold,
112
- { env, min: 1 },
113
- ),
114
- });
115
- }
@@ -1,150 +0,0 @@
1
- import type { TargetDraft } from "../../core.interface";
2
- import type { List } from "../../list/list.interface";
3
- import type { LogEntry } from "./log-manager";
4
-
5
- /**
6
- * `ListDetails.loaderKey` stamped on every persisted log batch (write + read side).
7
- * Business type: **LogBatch** (transport flush). Pairs with log-service **LogTrace**
8
- * (`LogTrace.0`) after rekeying by `traceId`.
9
- */
10
- export const LOG_PERSIST_LOADER_KEY = "LogBatch.0";
11
-
12
- /** Alias for {@link LOG_PERSIST_LOADER_KEY} — preferred when contrasting with LogTrace. */
13
- export const LOG_BATCH_LOADER_KEY = LOG_PERSIST_LOADER_KEY;
14
-
15
- /** Persistence lane — maps to List tagList and flush policy. */
16
- export type LogPersistLane = "fast" | "medium" | "slow";
17
-
18
- export interface LogPersistFastConfig {
19
- maxBufferEntries: number;
20
- }
21
-
22
- export interface LogPersistMediumConfig {
23
- debounceMs: number;
24
- maxEntries: number;
25
- maxBytes: number;
26
- maxBufferEntries: number;
27
- }
28
-
29
- export interface LogPersistSlowConfig {
30
- maxEntries: number;
31
- maxBytes: number;
32
- maxAgeMs: number;
33
- maxBufferEntries: number;
34
- }
35
-
36
- export interface LogPersistConfig {
37
- fast: LogPersistFastConfig;
38
- medium: LogPersistMediumConfig;
39
- slow: LogPersistSlowConfig;
40
- /** postListCreate / network ceiling per batch */
41
- postTimeoutMs: number;
42
- /** Graceful shutdown drain ceiling */
43
- shutdownDrainTimeoutMs: number;
44
- /** Delay before medium/slow lane flush retries after failure (fast lane uses the same interval). */
45
- laneRetryIntervalMs: number;
46
- /** Suppress duplicate persistLogger warn/error lines with the same message within this window. */
47
- errorLogRateLimitMs: number;
48
- /** Disable log-persist after this many consecutive permanent flush errors. */
49
- circuitBreakerPermanentFailureThreshold: number;
50
- }
51
-
52
- export interface EnableLogPersistOptions {
53
- service: string;
54
- process: string;
55
- /** Shared registry root directory — all processes use the same path; each writes its own shard file. */
56
- registryFilePath?: string;
57
- config?: Partial<LogPersistConfig>;
58
- }
59
-
60
- export interface EnsureLogPersistFromEnvOptions {
61
- /** Overrides LOG_PERSIST_PROCESS when set. */
62
- process?: string;
63
- /** Overrides LOG_PERSIST_SERVICE when set. */
64
- service?: string;
65
- registryFilePath?: string;
66
- config?: Partial<LogPersistConfig>;
67
- }
68
-
69
- export interface LogPersistProcessRecord {
70
- pid: number;
71
- enabledAt: string;
72
- lastHeartbeatAt: string;
73
- }
74
-
75
- export interface LogPersistRegistryState {
76
- updatedAt: string;
77
- service: string;
78
- processes: Record<string, LogPersistProcessRecord>;
79
- }
80
-
81
- export interface LogPersistQueueStats {
82
- fast: number;
83
- fastRetry: number;
84
- medium: number;
85
- slow: number;
86
- }
87
-
88
- export interface LogPersistQueueBytesStats {
89
- fast: number;
90
- fastRetry: number;
91
- medium: number;
92
- slow: number;
93
- }
94
-
95
- export interface LogPersistStats {
96
- enabled: boolean;
97
- draining: boolean;
98
- circuitBreakerTripped: boolean;
99
- permanentFailureCount: number;
100
- service: string | null;
101
- process: string | null;
102
- queues: LogPersistQueueStats;
103
- queueBytes: LogPersistQueueBytesStats;
104
- mediumDebouncePending: boolean;
105
- laneFlushing: Record<LogPersistLane, boolean>;
106
- consecutiveFailures: Record<LogPersistLane, number>;
107
- config: LogPersistConfig;
108
- lastFlushAt: Record<LogPersistLane, string | null>;
109
- lastError: string | null;
110
- lastErrorAt: string | null;
111
- }
112
-
113
- export interface WaitForLogPersistReadyOptions {
114
- registryFilePath: string;
115
- service: string;
116
- expectedProcesses: string[];
117
- timeoutMs?: number;
118
- pollIntervalMs?: number;
119
- /** Process heartbeat older than this is treated as missing. */
120
- staleMs?: number;
121
- }
122
-
123
- export interface LogPersistReadySnapshot {
124
- ok: boolean;
125
- missing: string[];
126
- stale: string[];
127
- registered: string[];
128
- }
129
-
130
- export interface LogBatchMeta {
131
- service: string;
132
- process: string;
133
- pid: number;
134
- lane: LogPersistLane;
135
- count: number;
136
- from: number | null;
137
- to: number | null;
138
- flushedAt: number;
139
- idempotencyKey: string;
140
- }
141
-
142
- export interface BuildLogListDraftInput {
143
- service: string;
144
- process: string;
145
- lane: LogPersistLane;
146
- idempotencyKey: string;
147
- entries: LogEntry[];
148
- }
149
-
150
- export type LogListDraft = TargetDraft<List>;