@antseed/node 0.2.152 → 0.2.154

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 (125) hide show
  1. package/dist/buyer-identity-context.d.ts +2 -0
  2. package/dist/buyer-identity-context.d.ts.map +1 -1
  3. package/dist/buyer-identity-context.js +1 -0
  4. package/dist/buyer-identity-context.js.map +1 -1
  5. package/dist/discovery/announcer.d.ts +2 -0
  6. package/dist/discovery/announcer.d.ts.map +1 -1
  7. package/dist/discovery/announcer.js +11 -9
  8. package/dist/discovery/announcer.js.map +1 -1
  9. package/dist/health/gas-health-monitor.d.ts +19 -0
  10. package/dist/health/gas-health-monitor.d.ts.map +1 -1
  11. package/dist/health/gas-health-monitor.js +21 -0
  12. package/dist/health/gas-health-monitor.js.map +1 -1
  13. package/dist/health/model-health-checker.d.ts +52 -0
  14. package/dist/health/model-health-checker.d.ts.map +1 -1
  15. package/dist/health/model-health-checker.js +139 -7
  16. package/dist/health/model-health-checker.js.map +1 -1
  17. package/dist/health/seller-events.d.ts +24 -0
  18. package/dist/health/seller-events.d.ts.map +1 -0
  19. package/dist/health/seller-events.js +71 -0
  20. package/dist/health/seller-events.js.map +1 -0
  21. package/dist/health/upstream-credit.d.ts +8 -0
  22. package/dist/health/upstream-credit.d.ts.map +1 -0
  23. package/dist/health/upstream-credit.js +22 -0
  24. package/dist/health/upstream-credit.js.map +1 -0
  25. package/dist/index.d.ts +13 -3
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +7 -1
  28. package/dist/index.js.map +1 -1
  29. package/dist/interfaces/seller-provider.d.ts +4 -1
  30. package/dist/interfaces/seller-provider.d.ts.map +1 -1
  31. package/dist/metering/index.d.ts +1 -1
  32. package/dist/metering/index.d.ts.map +1 -1
  33. package/dist/metering/index.js.map +1 -1
  34. package/dist/metering/seller-session-tracker.d.ts +7 -0
  35. package/dist/metering/seller-session-tracker.d.ts.map +1 -1
  36. package/dist/metering/seller-session-tracker.js +29 -0
  37. package/dist/metering/seller-session-tracker.js.map +1 -1
  38. package/dist/metering/storage.d.ts +146 -6
  39. package/dist/metering/storage.d.ts.map +1 -1
  40. package/dist/metering/storage.js +209 -14
  41. package/dist/metering/storage.js.map +1 -1
  42. package/dist/node.d.ts +44 -0
  43. package/dist/node.d.ts.map +1 -1
  44. package/dist/node.js +122 -11
  45. package/dist/node.js.map +1 -1
  46. package/dist/payments/channel-store.d.ts +10 -0
  47. package/dist/payments/channel-store.d.ts.map +1 -1
  48. package/dist/payments/channel-store.js +17 -0
  49. package/dist/payments/channel-store.js.map +1 -1
  50. package/dist/payments/evm/seller-pools-client.d.ts +9 -0
  51. package/dist/payments/evm/seller-pools-client.d.ts.map +1 -1
  52. package/dist/payments/evm/seller-pools-client.js +23 -0
  53. package/dist/payments/evm/seller-pools-client.js.map +1 -1
  54. package/dist/payments/free-tier-delegation.d.ts +65 -0
  55. package/dist/payments/free-tier-delegation.d.ts.map +1 -0
  56. package/dist/payments/free-tier-delegation.js +145 -0
  57. package/dist/payments/free-tier-delegation.js.map +1 -0
  58. package/dist/payments/free-tier-program.d.ts +97 -0
  59. package/dist/payments/free-tier-program.d.ts.map +1 -0
  60. package/dist/payments/free-tier-program.js +267 -0
  61. package/dist/payments/free-tier-program.js.map +1 -0
  62. package/dist/payments/free-tier-stake-resolver.d.ts +79 -0
  63. package/dist/payments/free-tier-stake-resolver.d.ts.map +1 -0
  64. package/dist/payments/free-tier-stake-resolver.js +152 -0
  65. package/dist/payments/free-tier-stake-resolver.js.map +1 -0
  66. package/dist/payments/free-tier-stake.d.ts +101 -0
  67. package/dist/payments/free-tier-stake.d.ts.map +1 -0
  68. package/dist/payments/free-tier-stake.js +116 -0
  69. package/dist/payments/free-tier-stake.js.map +1 -0
  70. package/dist/payments/index.d.ts +7 -1
  71. package/dist/payments/index.d.ts.map +1 -1
  72. package/dist/payments/index.js +3 -0
  73. package/dist/payments/index.js.map +1 -1
  74. package/dist/payments/seller-free-tier-limiter.d.ts +124 -6
  75. package/dist/payments/seller-free-tier-limiter.d.ts.map +1 -1
  76. package/dist/payments/seller-free-tier-limiter.js +342 -32
  77. package/dist/payments/seller-free-tier-limiter.js.map +1 -1
  78. package/dist/payments/seller-free-usage-manager.d.ts.map +1 -1
  79. package/dist/payments/seller-free-usage-manager.js +5 -1
  80. package/dist/payments/seller-free-usage-manager.js.map +1 -1
  81. package/dist/seller-request-handler.d.ts.map +1 -1
  82. package/dist/seller-request-handler.js +113 -19
  83. package/dist/seller-request-handler.js.map +1 -1
  84. package/dist/storage/migrate.d.ts +6 -0
  85. package/dist/storage/migrate.d.ts.map +1 -1
  86. package/dist/storage/migrate.js +11 -0
  87. package/dist/storage/migrate.js.map +1 -1
  88. package/dist/storage/migrations/metering/004_add_free_tier_staked_usage.d.ts +3 -0
  89. package/dist/storage/migrations/metering/004_add_free_tier_staked_usage.d.ts.map +1 -0
  90. package/dist/storage/migrations/metering/004_add_free_tier_staked_usage.js +21 -0
  91. package/dist/storage/migrations/metering/004_add_free_tier_staked_usage.js.map +1 -0
  92. package/dist/storage/migrations/metering/005_add_free_tier_scope.d.ts +8 -0
  93. package/dist/storage/migrations/metering/005_add_free_tier_scope.d.ts.map +1 -0
  94. package/dist/storage/migrations/metering/005_add_free_tier_scope.js +23 -0
  95. package/dist/storage/migrations/metering/005_add_free_tier_scope.js.map +1 -0
  96. package/dist/storage/migrations/metering/006_add_event_service.d.ts +4 -0
  97. package/dist/storage/migrations/metering/006_add_event_service.d.ts.map +1 -0
  98. package/dist/storage/migrations/metering/006_add_event_service.js +11 -0
  99. package/dist/storage/migrations/metering/006_add_event_service.js.map +1 -0
  100. package/dist/storage/migrations/metering/007_add_event_detail.d.ts +4 -0
  101. package/dist/storage/migrations/metering/007_add_event_detail.d.ts.map +1 -0
  102. package/dist/storage/migrations/metering/007_add_event_detail.js +12 -0
  103. package/dist/storage/migrations/metering/007_add_event_detail.js.map +1 -0
  104. package/dist/storage/migrations/metering/008_add_event_request_id.d.ts +4 -0
  105. package/dist/storage/migrations/metering/008_add_event_request_id.d.ts.map +1 -0
  106. package/dist/storage/migrations/metering/008_add_event_request_id.js +10 -0
  107. package/dist/storage/migrations/metering/008_add_event_request_id.js.map +1 -0
  108. package/dist/storage/migrations/metering/009_index_receipts_by_event.d.ts +4 -0
  109. package/dist/storage/migrations/metering/009_index_receipts_by_event.d.ts.map +1 -0
  110. package/dist/storage/migrations/metering/009_index_receipts_by_event.js +9 -0
  111. package/dist/storage/migrations/metering/009_index_receipts_by_event.js.map +1 -0
  112. package/dist/storage/migrations/metering/010_repair_free_tier_usage.d.ts +8 -0
  113. package/dist/storage/migrations/metering/010_repair_free_tier_usage.d.ts.map +1 -0
  114. package/dist/storage/migrations/metering/010_repair_free_tier_usage.js +35 -0
  115. package/dist/storage/migrations/metering/010_repair_free_tier_usage.js.map +1 -0
  116. package/dist/storage/migrations/metering/index.d.ts.map +1 -1
  117. package/dist/storage/migrations/metering/index.js +8 -1
  118. package/dist/storage/migrations/metering/index.js.map +1 -1
  119. package/dist/types/metering.d.ts +8 -0
  120. package/dist/types/metering.d.ts.map +1 -1
  121. package/dist/utils/file-lock.d.ts +12 -0
  122. package/dist/utils/file-lock.d.ts.map +1 -0
  123. package/dist/utils/file-lock.js +58 -0
  124. package/dist/utils/file-lock.js.map +1 -0
  125. package/package.json +11 -3
@@ -1,5 +1,6 @@
1
1
  import { isNativeVideoProtocol, isRoutingProtocol } from '../types/service-api.js';
2
2
  import { debugLog, debugWarn } from '../utils/debug.js';
3
+ import { isLiveResponseOutOfCredit, isUpstreamOutOfCredit } from './upstream-credit.js';
3
4
  /** Default sweep interval. Each sweep sends one 1-token probe per advertised service. */
4
5
  export const DEFAULT_HEALTH_CHECK_INTERVAL_MS = 5 * 60_000;
5
6
  /** Consecutive probe failures before a service is unadvertised. */
@@ -25,15 +26,27 @@ export class ModelHealthChecker {
25
26
  _probeTimeoutMs;
26
27
  _onChange;
27
28
  _states = new Map();
29
+ /** Stable per-instance ids: providers are told apart by instance, not by name. */
30
+ _providerIds = new Map();
28
31
  _timer = null;
29
32
  _sweepInFlight = null;
30
33
  _stopped = false;
34
+ _onUpstreamAccount;
35
+ _lowBalanceUsd;
36
+ _onSweepComplete;
37
+ /** Each upstream's credit as last seen; unset until something said. */
38
+ _accounts = new Map();
39
+ /** Services withdrawn before `onChange` could be told; reported on the first start. */
40
+ _withdrawnAtInit = [];
31
41
  constructor(config) {
32
42
  this._targets = config.targets;
33
43
  this._intervalMs = config.intervalMs ?? DEFAULT_HEALTH_CHECK_INTERVAL_MS;
34
44
  this._failureThreshold = Math.max(1, config.failureThreshold ?? DEFAULT_HEALTH_CHECK_FAILURE_THRESHOLD);
35
45
  this._probeTimeoutMs = config.probeTimeoutMs ?? DEFAULT_HEALTH_CHECK_PROBE_TIMEOUT_MS;
36
46
  this._onChange = config.onChange;
47
+ this._onUpstreamAccount = config.onUpstreamAccount;
48
+ this._lowBalanceUsd = config.lowBalanceUsd;
49
+ this._onSweepComplete = config.onSweepComplete;
37
50
  // Providers retained after an OAuth initialization failure must pass a real
38
51
  // probe before any service is advertised. Keep their services in recovery
39
52
  // state rather than dropping the provider permanently.
@@ -41,10 +54,11 @@ export class ModelHealthChecker {
41
54
  if (provider.healthCheckAvailable !== false)
42
55
  continue;
43
56
  for (const [index, service] of provider.services.entries()) {
44
- const state = this._stateFor(provider.name, service);
57
+ const state = this._stateFor(provider, service);
45
58
  state.removed = true;
46
59
  state.removedAtIndex = index;
47
60
  state.lastDetail = 'Awaiting successful probe after initialization failure';
61
+ this._withdrawnAtInit.push(state);
48
62
  }
49
63
  provider.services.splice(0);
50
64
  }
@@ -54,6 +68,18 @@ export class ModelHealthChecker {
54
68
  if (this._timer)
55
69
  return;
56
70
  this._stopped = false;
71
+ for (const state of this._withdrawnAtInit.splice(0)) {
72
+ if (!state.removed)
73
+ continue;
74
+ this._emitChange({
75
+ provider: state.providerName,
76
+ providerId: state.providerId,
77
+ service: state.service,
78
+ status: 'removed',
79
+ consecutiveFailures: state.consecutiveFailures,
80
+ detail: state.lastDetail ?? 'initialization failed',
81
+ });
82
+ }
57
83
  void this.runSweep();
58
84
  this._timer = setInterval(() => {
59
85
  void this.runSweep();
@@ -74,12 +100,21 @@ export class ModelHealthChecker {
74
100
  return this._sweepInFlight;
75
101
  this._sweepInFlight = this._runSweep().finally(() => {
76
102
  this._sweepInFlight = null;
103
+ if (this._stopped || !this._onSweepComplete)
104
+ return;
105
+ try {
106
+ this._onSweepComplete();
107
+ }
108
+ catch (err) {
109
+ debugWarn(`[ModelHealth] onSweepComplete failed: ${err instanceof Error ? err.message : err}`);
110
+ }
77
111
  });
78
112
  return this._sweepInFlight;
79
113
  }
80
114
  getSnapshot() {
81
115
  return Array.from(this._states.values()).map((state) => ({
82
116
  provider: state.providerName,
117
+ providerId: state.providerId,
83
118
  service: state.service,
84
119
  advertised: !state.removed,
85
120
  consecutiveFailures: state.consecutiveFailures,
@@ -109,7 +144,7 @@ export class ModelHealthChecker {
109
144
  // the live array on state transitions.
110
145
  const services = new Set(provider.services);
111
146
  for (const state of this._states.values()) {
112
- if (state.providerName === provider.name && state.removed) {
147
+ if (state.provider === provider && state.removed) {
113
148
  services.add(state.service);
114
149
  }
115
150
  }
@@ -151,6 +186,20 @@ export class ModelHealthChecker {
151
186
  : undefined,
152
187
  ]);
153
188
  const balance = account?.status === 'available' ? account.balanceUsd : undefined;
189
+ if (account?.status === 'unavailable' && (account.outOfCredit === true || isUpstreamOutOfCredit(null, account.reason))) {
190
+ this._setAccount(provider, 'out', account.reason, null);
191
+ }
192
+ else if (account?.status === 'available') {
193
+ const low = this._lowLine();
194
+ // Without a balance, an answering account endpoint is no proof of credit: only a billable success clears "out".
195
+ const unproven = balance === undefined && this._accounts.get(provider) === 'out';
196
+ if (balance !== undefined && balance <= 0)
197
+ this._setAccount(provider, 'out', `Balance $${balance.toFixed(2)}`, balance);
198
+ else if (balance !== undefined && low !== undefined && balance < low)
199
+ this._setAccount(provider, 'low', `Balance $${balance.toFixed(2)}, under $${low.toFixed(2)}`, balance);
200
+ else if (!unproven)
201
+ this._setAccount(provider, 'ok', balance === undefined ? 'Account check passed' : `Balance $${balance.toFixed(2)}`, balance ?? null);
202
+ }
154
203
  const combine = (service) => {
155
204
  const model = models === undefined
156
205
  ? undefined
@@ -164,7 +213,7 @@ export class ModelHealthChecker {
164
213
  if (this._stopped)
165
214
  return;
166
215
  const result = combine(service);
167
- const state = this._stateFor(provider.name, service);
216
+ const state = this._stateFor(provider, service);
168
217
  if (result.status === 'unknown') {
169
218
  debugLog(`[ModelHealth] ${provider.name}/${service}: inconclusive (${result.reason ?? 'no result'})`);
170
219
  continue;
@@ -183,12 +232,19 @@ export class ModelHealthChecker {
183
232
  this._restoreService(provider, state);
184
233
  }
185
234
  }
186
- _stateFor(providerName, service) {
187
- const key = `${providerName}\0${service}`;
235
+ _stateFor(provider, service) {
236
+ let id = this._providerIds.get(provider);
237
+ if (id === undefined) {
238
+ id = this._providerIds.size;
239
+ this._providerIds.set(provider, id);
240
+ }
241
+ const key = `${id}\0${service}`;
188
242
  let state = this._states.get(key);
189
243
  if (!state) {
190
244
  state = {
191
- providerName,
245
+ provider,
246
+ providerName: provider.name,
247
+ providerId: this._targets.find((target) => target.provider === provider)?.id ?? provider.name,
192
248
  service,
193
249
  consecutiveFailures: 0,
194
250
  removed: false,
@@ -204,9 +260,10 @@ export class ModelHealthChecker {
204
260
  async _probeService(target, service) {
205
261
  const provider = target.provider;
206
262
  const probeProvider = target.probeProvider ?? provider;
207
- const state = this._stateFor(provider.name, service);
263
+ const state = this._stateFor(provider, service);
208
264
  state.lastProbeAt = Date.now();
209
265
  let outcome;
266
+ let errorText = null;
210
267
  try {
211
268
  const protocol = resolveProbeProtocol(provider, service);
212
269
  if (!supportsHealthProbe(protocol)) {
@@ -219,6 +276,9 @@ export class ModelHealthChecker {
219
276
  const response = await withTimeout(probeProvider.handleRequest(request), this._probeTimeoutMs, `health probe for ${service} timed out after ${this._probeTimeoutMs}ms`);
220
277
  state.lastStatusCode = response.statusCode;
221
278
  outcome = classifyProbeStatus(response.statusCode);
279
+ // Classified on the body itself, not the 200-byte summary: a billing code can follow a long message.
280
+ if (outcome !== 'healthy')
281
+ errorText = decodeBody(response.body, 16_384);
222
282
  state.lastDetail = outcome === 'healthy'
223
283
  ? `HTTP ${response.statusCode}`
224
284
  : `HTTP ${response.statusCode}: ${summarizeBody(response.body)}`;
@@ -226,7 +286,14 @@ export class ModelHealthChecker {
226
286
  catch (err) {
227
287
  state.lastStatusCode = null;
228
288
  state.lastDetail = err instanceof Error ? err.message : String(err);
289
+ errorText = state.lastDetail;
290
+ outcome = 'unhealthy';
291
+ }
292
+ // A billing error is a failure whatever its status (Anthropic answers one with a 400);
293
+ // a 404 or 422 is about the probe itself, so its text never marks the account.
294
+ if (outcome !== 'healthy' && state.lastStatusCode !== 404 && state.lastStatusCode !== 422 && isUpstreamOutOfCredit(state.lastStatusCode, errorText)) {
229
295
  outcome = 'unhealthy';
296
+ this._setAccount(provider, 'out', state.lastDetail ?? 'out of credit', null);
230
297
  }
231
298
  if (outcome === 'inconclusive') {
232
299
  // The endpoint answered but the probe result proves nothing either way
@@ -236,6 +303,9 @@ export class ModelHealthChecker {
236
303
  return;
237
304
  }
238
305
  if (outcome === 'healthy') {
306
+ // An answered completion means the account pays again (its balance is unknown here).
307
+ if (this._accounts.get(provider) === 'out')
308
+ this._setAccount(provider, 'ok', state.lastDetail ?? 'probe succeeded', null);
239
309
  state.consecutiveFailures = 0;
240
310
  if (state.removed) {
241
311
  this._restoreService(provider, state);
@@ -244,6 +314,58 @@ export class ModelHealthChecker {
244
314
  }
245
315
  this._recordFailure(provider, state);
246
316
  }
317
+ /**
318
+ * A live request's upstream answer (the seller's own traffic): an out-of-credit
319
+ * error is reported at once instead of waiting for the probes, and a billable
320
+ * success after one means the account pays again (polling or downloading a
321
+ * video already paid for is not billable and proves nothing).
322
+ */
323
+ reportUpstreamResponse(provider, statusCode, body, billable = true) {
324
+ const target = this._targets.find((entry) => entry.provider === provider || entry.probeProvider === provider);
325
+ if (!target || this._stopped)
326
+ return;
327
+ if (statusCode >= 400 && isLiveResponseOutOfCredit(statusCode, body)) {
328
+ this._setAccount(target.provider, 'out', `HTTP ${statusCode}: ${summarizeBody(new TextEncoder().encode(body))}`, null);
329
+ }
330
+ else if (statusCode < 400 && billable && this._accounts.get(target.provider) === 'out') {
331
+ this._setAccount(target.provider, 'ok', `HTTP ${statusCode} on a request`, null);
332
+ }
333
+ }
334
+ _lowLine() {
335
+ const value = typeof this._lowBalanceUsd === 'function' ? this._lowBalanceUsd() : this._lowBalanceUsd;
336
+ return typeof value === 'number' && Number.isFinite(value) && value > 0 ? value : undefined;
337
+ }
338
+ /** Records an upstream's credit and reports a change; the first reading of a funded account is not a change. */
339
+ _setAccount(provider, next, detail, balanceUsd) {
340
+ const previous = this._accounts.get(provider);
341
+ if (previous === next)
342
+ return;
343
+ this._accounts.set(provider, next);
344
+ if (next === 'ok' && previous === undefined)
345
+ return;
346
+ const target = this._targets.find((entry) => entry.provider === provider);
347
+ const services = [...new Set([...provider.services, ...[...this._states.values()].filter((state) => state.provider === provider).map((state) => state.service)])];
348
+ const event = {
349
+ provider: provider.name,
350
+ providerId: target?.id ?? provider.name,
351
+ status: next === 'out' ? 'out_of_credit' : next === 'low' ? 'low_balance' : 'funded',
352
+ detail,
353
+ balanceUsd,
354
+ services,
355
+ };
356
+ debugWarn(`[ModelHealth] ${event.providerId}: upstream ${event.status} (${detail})`);
357
+ if (!this._onUpstreamAccount)
358
+ return;
359
+ try {
360
+ const result = this._onUpstreamAccount(event);
361
+ if (result && typeof result.catch === 'function') {
362
+ result.catch((err) => debugWarn(`[ModelHealth] onUpstreamAccount failed: ${err instanceof Error ? err.message : err}`));
363
+ }
364
+ }
365
+ catch (err) {
366
+ debugWarn(`[ModelHealth] onUpstreamAccount failed: ${err instanceof Error ? err.message : err}`);
367
+ }
368
+ }
247
369
  _recordFailure(provider, state) {
248
370
  state.consecutiveFailures += 1;
249
371
  debugWarn(`[ModelHealth] ${provider.name}/${state.service}: health check failed `
@@ -271,6 +393,7 @@ export class ModelHealthChecker {
271
393
  }
272
394
  this._emitChange({
273
395
  provider: provider.name,
396
+ providerId: state.providerId,
274
397
  service: state.service,
275
398
  status: 'removed',
276
399
  consecutiveFailures: state.consecutiveFailures,
@@ -286,6 +409,7 @@ export class ModelHealthChecker {
286
409
  provider.healthCheckAvailable = true;
287
410
  this._emitChange({
288
411
  provider: provider.name,
412
+ providerId: state.providerId,
289
413
  service: state.service,
290
414
  status: 'restored',
291
415
  consecutiveFailures: 0,
@@ -395,6 +519,14 @@ export function classifyProbeStatus(statusCode) {
395
519
  return 'unhealthy';
396
520
  return 'inconclusive';
397
521
  }
522
+ function decodeBody(body, maxBytes) {
523
+ try {
524
+ return new TextDecoder().decode(body.slice(0, maxBytes));
525
+ }
526
+ catch {
527
+ return '';
528
+ }
529
+ }
398
530
  function summarizeBody(body) {
399
531
  try {
400
532
  return new TextDecoder().decode(body.slice(0, 200)).replace(/\s+/g, ' ').trim() || '(empty body)';
@@ -1 +1 @@
1
- {"version":3,"file":"model-health-checker.js","sourceRoot":"","sources":["../../src/health/model-health-checker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-health-checker.js","sourceRoot":"","sources":["../../src/health/model-health-checker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /** Seller event journal: `<dataDir>/seller-events.jsonl`, newest last. */
2
+ export declare const SELLER_EVENTS_FILE = "seller-events.jsonl";
3
+ /** The journal is rotated to `seller-events.1.jsonl` past this size. */
4
+ export declare const SELLER_EVENTS_MAX_BYTES = 1000000;
5
+ export type SellerEventKind = 'started' | 'stopped' | 'crashed' | 'model_down' | 'model_up' | 'gas_low' | 'gas_ok' | 'idle' | 'active' | 'upstream_credit' | 'upstream_credit_ok' | 'upstream_balance_low' | 'upstream_balance_ok' | 'test';
6
+ export type SellerEventSeverity = 'info' | 'warning' | 'critical';
7
+ export interface SellerEvent {
8
+ /** Unix milliseconds. */
9
+ at: number;
10
+ kind: SellerEventKind;
11
+ severity: SellerEventSeverity;
12
+ /** One line, plain text, safe to post to a chat. */
13
+ title: string;
14
+ detail?: string;
15
+ provider?: string;
16
+ /** The configured provider name, when several instances share a plugin name. */
17
+ providerId?: string;
18
+ service?: string;
19
+ }
20
+ /** Append one event, rotating the journal once it passes SELLER_EVENTS_MAX_BYTES. */
21
+ export declare function appendSellerEvent(dataDir: string, event: SellerEvent): Promise<void>;
22
+ /** The latest `limit` events, newest first (reads the rotated file when the current one is short). */
23
+ export declare function readSellerEvents(dataDir: string, limit?: number): Promise<SellerEvent[]>;
24
+ //# sourceMappingURL=seller-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seller-events.d.ts","sourceRoot":"","sources":["../../src/health/seller-events.ts"],"names":[],"mappings":"AAGA,0EAA0E;AAC1E,eAAO,MAAM,kBAAkB,wBAAwB,CAAC;AACxD,wEAAwE;AACxE,eAAO,MAAM,uBAAuB,UAAY,CAAC;AAEjD,MAAM,MAAM,eAAe,GACvB,SAAS,GACT,SAAS,GACT,SAAS,GACT,YAAY,GACZ,UAAU,GACV,SAAS,GACT,QAAQ,GACR,MAAM,GACN,QAAQ,GACR,iBAAiB,GACjB,oBAAoB,GACpB,sBAAsB,GACtB,qBAAqB,GACrB,MAAM,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;AAElE,MAAM,WAAW,WAAW;IAC1B,yBAAyB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,eAAe,CAAC;IACtB,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAQD,qFAAqF;AACrF,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBpF;AA8BD,sGAAsG;AACtG,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,SAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAM3F"}
@@ -0,0 +1,71 @@
1
+ import { appendFile, open, readFile, rename, stat } from 'node:fs/promises';
2
+ import { join } from 'node:path';
3
+ /** Seller event journal: `<dataDir>/seller-events.jsonl`, newest last. */
4
+ export const SELLER_EVENTS_FILE = 'seller-events.jsonl';
5
+ /** The journal is rotated to `seller-events.1.jsonl` past this size. */
6
+ export const SELLER_EVENTS_MAX_BYTES = 1_000_000;
7
+ const eventsPath = (dataDir) => join(dataDir, SELLER_EVENTS_FILE);
8
+ const rotatedPath = (dataDir) => join(dataDir, 'seller-events.1.jsonl');
9
+ /** Appends in flight, per journal: the size check, rotation and append run one at a time so two writers never rotate twice. */
10
+ const appendQueues = new Map();
11
+ /** Append one event, rotating the journal once it passes SELLER_EVENTS_MAX_BYTES. */
12
+ export function appendSellerEvent(dataDir, event) {
13
+ const path = eventsPath(dataDir);
14
+ const write = async () => {
15
+ const size = await stat(path).then((s) => s.size, () => 0);
16
+ if (size > SELLER_EVENTS_MAX_BYTES)
17
+ await rename(path, rotatedPath(dataDir)).catch(() => { });
18
+ // A crash mid-write leaves a line without its newline: close it off, so
19
+ // this event starts its own line instead of joining the torn one.
20
+ const torn = size > 0 && size <= SELLER_EVENTS_MAX_BYTES && !(await endsWithNewline(path));
21
+ await appendFile(path, `${torn ? '\n' : ''}${JSON.stringify(event)}\n`);
22
+ };
23
+ const run = (appendQueues.get(path) ?? Promise.resolve()).then(write);
24
+ // A failed append does not hold up the next one.
25
+ const settled = run.catch(() => { });
26
+ appendQueues.set(path, settled);
27
+ void settled.then(() => { if (appendQueues.get(path) === settled)
28
+ appendQueues.delete(path); });
29
+ return run;
30
+ }
31
+ async function endsWithNewline(path) {
32
+ const file = await open(path, 'r').catch(() => null);
33
+ if (!file)
34
+ return true;
35
+ try {
36
+ const { size } = await file.stat();
37
+ if (size === 0)
38
+ return true;
39
+ const last = Buffer.alloc(1);
40
+ await file.read(last, 0, 1, size - 1);
41
+ return last[0] === 0x0a;
42
+ }
43
+ finally {
44
+ await file.close();
45
+ }
46
+ }
47
+ function parseLines(text) {
48
+ const events = [];
49
+ for (const line of text.split('\n')) {
50
+ if (!line.trim())
51
+ continue;
52
+ try {
53
+ const event = JSON.parse(line);
54
+ if (typeof event.at === 'number' && typeof event.kind === 'string')
55
+ events.push(event);
56
+ }
57
+ catch {
58
+ // A torn final line from a crash mid-write; skip it.
59
+ }
60
+ }
61
+ return events;
62
+ }
63
+ /** The latest `limit` events, newest first (reads the rotated file when the current one is short). */
64
+ export async function readSellerEvents(dataDir, limit = 200) {
65
+ const current = parseLines(await readFile(eventsPath(dataDir), 'utf-8').catch(() => ''));
66
+ const events = current.length >= limit
67
+ ? current
68
+ : [...parseLines(await readFile(rotatedPath(dataDir), 'utf-8').catch(() => '')), ...current];
69
+ return events.slice(-limit).reverse();
70
+ }
71
+ //# sourceMappingURL=seller-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seller-events.js","sourceRoot":"","sources":["../../src/health/seller-events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export declare function isUpstreamOutOfCredit(statusCode: number | null | undefined, text: string | null | undefined): boolean;
2
+ /**
3
+ * The same for a buyer's request: a 400 is a validation error that can echo
4
+ * the buyer's own input, so only a 402 or an error status the buyer cannot
5
+ * shape by its input (401, 403, 429, 5xx) is read as the account.
6
+ */
7
+ export declare function isLiveResponseOutOfCredit(statusCode: number, text: string): boolean;
8
+ //# sourceMappingURL=upstream-credit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upstream-credit.d.ts","sourceRoot":"","sources":["../../src/health/upstream-credit.ts"],"names":[],"mappings":"AAWA,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAErH;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnF"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Whether an upstream error means its account is out of credit (a billing
3
+ * problem the operator fixes by topping up), not a model, rate or request
4
+ * fault: HTTP 402, or an error that says so in the words upstreams use
5
+ * (DeepInfra "positive balance", OpenAI `insufficient_quota`, Anthropic
6
+ * "credit balance is too low", OpenRouter "insufficient credits").
7
+ * A per-minute quota ("exceeded your current quota" with RESOURCE_EXHAUSTED)
8
+ * is a rate limit, not credit.
9
+ */
10
+ const OUT_OF_CREDIT = /\b(?:positive balance|insufficient[_ ](?:balance|credits?|funds)|insufficient_quota|billing_hard_limit_reached|credit balance is too low|out of credits?)\b/i;
11
+ export function isUpstreamOutOfCredit(statusCode, text) {
12
+ return statusCode === 402 || (typeof text === 'string' && OUT_OF_CREDIT.test(text));
13
+ }
14
+ /**
15
+ * The same for a buyer's request: a 400 is a validation error that can echo
16
+ * the buyer's own input, so only a 402 or an error status the buyer cannot
17
+ * shape by its input (401, 403, 429, 5xx) is read as the account.
18
+ */
19
+ export function isLiveResponseOutOfCredit(statusCode, text) {
20
+ return statusCode === 402 || (statusCode !== 400 && statusCode !== 404 && statusCode !== 422 && statusCode >= 401 && isUpstreamOutOfCredit(null, text));
21
+ }
22
+ //# sourceMappingURL=upstream-credit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upstream-credit.js","sourceRoot":"","sources":["../../src/health/upstream-credit.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,aAAa,GAAG,8JAA8J,CAAC;AAErL,MAAM,UAAU,qBAAqB,CAAC,UAAqC,EAAE,IAA+B;IAC1G,OAAO,UAAU,KAAK,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACtF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CAAC,UAAkB,EAAE,IAAY;IACxE,OAAO,UAAU,KAAK,GAAG,IAAI,CAAC,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,IAAI,GAAG,IAAI,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AAC1J,CAAC"}
package/dist/index.d.ts CHANGED
@@ -2,8 +2,10 @@ export { AntseedNode, type NodeConfig, type NodePaymentsConfig, type NodeRelayer
2
2
  export { DEFAULT_BUYER_IDENTITY, isValidBuyerIdentityName } from './buyer-identity-context.js';
3
3
  export type { Provider, ProviderStreamCallbacks, ServiceHealthStatus, UpstreamAccountStatus } from './interfaces/seller-provider.js';
4
4
  export { VIDEO_DOWNLOAD_STREAM_HEADER, VIDEO_DOWNLOAD_STREAM_VERSION, VIDEO_DOWNLOAD_MAX_BYTES, VIDEO_DOWNLOAD_CHUNK_BYTES, ANTSEED_STREAMING_RESPONSE_HEADER } from './types/http.js';
5
- export { ModelHealthChecker, DEFAULT_HEALTH_CHECK_INTERVAL_MS, DEFAULT_HEALTH_CHECK_FAILURE_THRESHOLD, DEFAULT_HEALTH_CHECK_PROBE_TIMEOUT_MS, type ModelHealthCheckerConfig, type ModelHealthEvent, type ModelHealthTarget, type ServiceHealthSnapshot, } from './health/model-health-checker.js';
5
+ export { ModelHealthChecker, DEFAULT_HEALTH_CHECK_INTERVAL_MS, DEFAULT_HEALTH_CHECK_FAILURE_THRESHOLD, DEFAULT_HEALTH_CHECK_PROBE_TIMEOUT_MS, type ModelHealthCheckerConfig, type ModelHealthEvent, type ModelHealthTarget, type ServiceHealthSnapshot, type UpstreamAccountEvent, } from './health/model-health-checker.js';
6
+ export { isUpstreamOutOfCredit } from './health/upstream-credit.js';
6
7
  export { GasHealthMonitor, DEFAULT_GAS_CHECK_INTERVAL_MS, DEFAULT_MIN_GAS_BALANCE_WEI, type GasHealthMonitorConfig, type GasHealthEvent, type GasHealthSnapshot, } from './health/gas-health-monitor.js';
8
+ export { appendSellerEvent, readSellerEvents, SELLER_EVENTS_FILE, SELLER_EVENTS_MAX_BYTES, type SellerEvent, type SellerEventKind, type SellerEventSeverity, } from './health/seller-events.js';
7
9
  export { formatEther, parseEther } from 'ethers';
8
10
  export type { Router } from './interfaces/buyer-router.js';
9
11
  export type { RouteRecommendation, RouteCandidate, RouteSelectionContext, RoutingModelsContext } from './interfaces/model-routing-client.js';
@@ -16,7 +18,8 @@ export * from './billing/index.js';
16
18
  export { canonicalModelKey, preferredModelDisplayName, sameCanonicalModel } from './model-identity.js';
17
19
  export { compareNetworkServiceOfferPrice, selectLowestPricedCanonicalOffers, selectLowestPricedNetworkServiceOffer, } from './discovery/service-catalog.js';
18
20
  export { AntseedRequestError, buyerFault, peerFault, faultAttributionOf, faultCodeOf, type FaultAttribution, type AntseedErrorCode, } from './errors.js';
19
- export { adaptPeerFaultErrorResponse, VIDEO_PRICE_HEADER, VIDEO_JOB_RETIRED_HEADER, VIDEO_DELIVERED_HEADER, VIDEO_DELIVERY_UNRECORDED } from '@antseed/buyer-core';
21
+ export { adaptPeerFaultErrorResponse, describeFreeTierLimit, FREE_TIER_EXHAUSTED_ERROR_ID, isFreeTierExhaustedResponse, nextFreeTierStakeTier, readFreeTierLimit, VIDEO_PRICE_HEADER, VIDEO_JOB_RETIRED_HEADER, VIDEO_DELIVERED_HEADER, VIDEO_DELIVERY_UNRECORDED } from '@antseed/buyer-core';
22
+ export type { FreeTierLimit, FreeTierLimitStakeTier } from '@antseed/buyer-core';
20
23
  export { loadOrCreateIdentity, identityFromPrivateKeyHex, type Identity, type IdentityStore, FileIdentityStore, type FileIdentityStoreOptions, hexToBytes, bytesToHex, } from './p2p/identity.js';
21
24
  export { PASSPHRASE_ENV, PASSPHRASE_FILE_ENV, MIN_PASSPHRASE_LENGTH, assertNewIdentityPassphrase, deriveScryptKey, encryptIdentityKey, decryptIdentityKey, identityEnvelopeAddress, isIdentityEnvelope, resolveIdentityPassphrase, setIdentityPassphrase, identityPassphraseEnv, type ScryptParams, } from './p2p/identity-envelope.js';
22
25
  export { DHTNode, DEFAULT_DHT_CONFIG } from './discovery/dht-node.js';
@@ -63,6 +66,7 @@ export { ANTSTokenClient, type ANTSTokenClientConfig } from './payments/evm/ants
63
66
  export { StatsClient, type StatsClientConfig, type DecodedMetadataRecorded, } from './payments/evm/stats-client.js';
64
67
  export { signData, verifySignature, signUtf8, verifyUtf8 } from './p2p/identity.js';
65
68
  export { getDebugFilters, shouldEmitDebugLine, } from './utils/debug.js';
69
+ export { withFileLock, type FileLockOptions } from './utils/file-lock.js';
66
70
  export { signSpendingAuth, signReserveAuth, signFreeUsageOpen, signFreeUsageAuth, signSetOperator, buildReceiveAuthorization, makeChannelsDomain, makeDepositsDomain, makeFreeUsageDomain, makeUsdcDomain, SPENDING_AUTH_TYPES, RESERVE_AUTH_TYPES, FREE_USAGE_OPEN_TYPES, FREE_USAGE_AUTH_TYPES, SET_OPERATOR_TYPES, RECEIVE_WITH_AUTHORIZATION_TYPES, computeMetadataHash, encodeMetadata, computeFreeUsageMetadataHash, encodeFreeUsageMetadata, getServiceMetadataId, computeChannelId, computeFreeUsageChannelId, FREE_USAGE_CHANNEL_DOMAIN, ZERO_METADATA, ZERO_METADATA_HASH, ZERO_FREE_USAGE_METADATA, ZERO_FREE_USAGE_METADATA_HASH, } from './payments/evm/signatures.js';
67
71
  export type { SpendingAuthMessage, ReserveAuthMessage, SetOperatorMessage, FreeUsageOpenMessage, FreeUsageAuthMessage, ReceiveAuthorizationMessage, SignedReceiveAuthorization, SpendingAuthMetadata, SpendingAuthServiceMetadata, FreeUsageMetadata, FreeUsageServiceMetadata, } from './payments/evm/signatures.js';
68
72
  export { NatTraversal, type NatMapping, type NatTraversalResult } from './p2p/nat-traversal.js';
@@ -74,7 +78,13 @@ export type { BuyerFreeUsageConfig } from './payments/buyer-free-usage-manager.j
74
78
  export { SellerFreeUsageManager } from './payments/seller-free-usage-manager.js';
75
79
  export type { SellerFreeUsageConfig } from './payments/seller-free-usage-manager.js';
76
80
  export { SellerFreeTierLimiter, DEFAULT_FREE_TIER_WINDOW_MS, normalizeRemoteIp } from './payments/seller-free-tier-limiter.js';
77
- export type { SellerFreeTierConfig, FreeTierDecision } from './payments/seller-free-tier-limiter.js';
81
+ export type { SellerFreeTierConfig, SellerFreeTierProgramConfig, FreeTierDecision } from './payments/seller-free-tier-limiter.js';
82
+ export { DEFAULT_FREE_TIER_STAKE_TIERS, FREE_TIER_EPOCHS_PER_YEAR, MAX_FREE_TIER_STAKE_TIERS, encodeFreeTierCapabilities, freeTierServiceScope, parseServiceFreeTierProgram, freeTierProgramForService, isPricedService, FREE_TIER_SERVED_HEADER, FREE_TIER_SERVED_COVERED, freeTierStakeTierForPower, normalizeFreeTierProgram, parseFreeTierProgram, powerToAntsEpochs, validateFreeTierStakeTiers, } from './payments/free-tier-program.js';
83
+ export type { FreeTierBaseLimits, FreeTierProgram, FreeTierStakeTier } from './payments/free-tier-program.js';
84
+ export { DEFAULT_FREE_TIER_DELEGATION_DAYS, FREE_TIER_DELEGATIONS_HEADER, FREE_TIER_DELEGATION_CODE_PREFIX, FREE_TIER_DELEGATION_TYPES, MAX_FREE_TIER_DELEGATIONS, acceptFreeTierDelegationCode, decodeFreeTierDelegationCode, decodeFreeTierDelegationsHeader, encodeFreeTierDelegationCode, encodeFreeTierDelegationsHeader, freeTierDelegationMessage, isFreeTierDelegationSigned, makeFreeTierDelegationDomain, verifyFreeTierDelegations, withFreeTierDelegation, } from './payments/free-tier-delegation.js';
85
+ export type { FreeTierDelegation, VerifiedFreeTierDelegation } from './payments/free-tier-delegation.js';
86
+ export { FreeTierStakeResolver, MAX_FREE_TIER_COUNTED_POSITIONS } from './payments/free-tier-stake-resolver.js';
87
+ export type { FreeTierStakePosition, FreeTierStakeReader, FreeTierStakeResolverOptions, FreeTierStakeStanding } from './payments/free-tier-stake-resolver.js';
78
88
  export { SellerPaymentManager } from './payments/seller-payment-manager.js';
79
89
  export type { SellerPaymentConfig } from './payments/seller-payment-manager.js';
80
90
  export { ChannelStore } from './payments/channel-store.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}