@antseed/cli 0.1.60 → 0.1.61

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 (209) hide show
  1. package/package.json +3 -3
  2. package/dist/cli/commands/agent.d.ts +0 -3
  3. package/dist/cli/commands/agent.d.ts.map +0 -1
  4. package/dist/cli/commands/agent.js +0 -165
  5. package/dist/cli/commands/agent.js.map +0 -1
  6. package/dist/cli/commands/balance.d.ts +0 -3
  7. package/dist/cli/commands/balance.d.ts.map +0 -1
  8. package/dist/cli/commands/balance.js +0 -62
  9. package/dist/cli/commands/balance.js.map +0 -1
  10. package/dist/cli/commands/bootstrap.d.ts +0 -3
  11. package/dist/cli/commands/bootstrap.d.ts.map +0 -1
  12. package/dist/cli/commands/bootstrap.js +0 -46
  13. package/dist/cli/commands/bootstrap.js.map +0 -1
  14. package/dist/cli/commands/browse.d.ts +0 -7
  15. package/dist/cli/commands/browse.d.ts.map +0 -1
  16. package/dist/cli/commands/browse.js +0 -103
  17. package/dist/cli/commands/browse.js.map +0 -1
  18. package/dist/cli/commands/channels.d.ts +0 -3
  19. package/dist/cli/commands/channels.d.ts.map +0 -1
  20. package/dist/cli/commands/channels.js +0 -79
  21. package/dist/cli/commands/channels.js.map +0 -1
  22. package/dist/cli/commands/config.d.ts +0 -20
  23. package/dist/cli/commands/config.d.ts.map +0 -1
  24. package/dist/cli/commands/config.js +0 -239
  25. package/dist/cli/commands/config.js.map +0 -1
  26. package/dist/cli/commands/connect.d.ts +0 -13
  27. package/dist/cli/commands/connect.d.ts.map +0 -1
  28. package/dist/cli/commands/connect.js +0 -402
  29. package/dist/cli/commands/connect.js.map +0 -1
  30. package/dist/cli/commands/connect.test.d.ts +0 -2
  31. package/dist/cli/commands/connect.test.d.ts.map +0 -1
  32. package/dist/cli/commands/connect.test.js +0 -52
  33. package/dist/cli/commands/connect.test.js.map +0 -1
  34. package/dist/cli/commands/connection.d.ts +0 -3
  35. package/dist/cli/commands/connection.d.ts.map +0 -1
  36. package/dist/cli/commands/connection.js +0 -128
  37. package/dist/cli/commands/connection.js.map +0 -1
  38. package/dist/cli/commands/dashboard.d.ts +0 -6
  39. package/dist/cli/commands/dashboard.d.ts.map +0 -1
  40. package/dist/cli/commands/dashboard.js +0 -48
  41. package/dist/cli/commands/dashboard.js.map +0 -1
  42. package/dist/cli/commands/deposit.d.ts +0 -3
  43. package/dist/cli/commands/deposit.d.ts.map +0 -1
  44. package/dist/cli/commands/deposit.js +0 -38
  45. package/dist/cli/commands/deposit.js.map +0 -1
  46. package/dist/cli/commands/dev.d.ts +0 -3
  47. package/dist/cli/commands/dev.d.ts.map +0 -1
  48. package/dist/cli/commands/dev.js +0 -94
  49. package/dist/cli/commands/dev.js.map +0 -1
  50. package/dist/cli/commands/emissions.d.ts +0 -3
  51. package/dist/cli/commands/emissions.d.ts.map +0 -1
  52. package/dist/cli/commands/emissions.js +0 -80
  53. package/dist/cli/commands/emissions.js.map +0 -1
  54. package/dist/cli/commands/init.d.ts +0 -3
  55. package/dist/cli/commands/init.d.ts.map +0 -1
  56. package/dist/cli/commands/init.js +0 -90
  57. package/dist/cli/commands/init.js.map +0 -1
  58. package/dist/cli/commands/payments.d.ts +0 -3
  59. package/dist/cli/commands/payments.d.ts.map +0 -1
  60. package/dist/cli/commands/payments.js +0 -26
  61. package/dist/cli/commands/payments.js.map +0 -1
  62. package/dist/cli/commands/plugin-create.d.ts +0 -11
  63. package/dist/cli/commands/plugin-create.d.ts.map +0 -1
  64. package/dist/cli/commands/plugin-create.js +0 -201
  65. package/dist/cli/commands/plugin-create.js.map +0 -1
  66. package/dist/cli/commands/plugin-create.test.d.ts +0 -2
  67. package/dist/cli/commands/plugin-create.test.d.ts.map +0 -1
  68. package/dist/cli/commands/plugin-create.test.js +0 -53
  69. package/dist/cli/commands/plugin-create.test.js.map +0 -1
  70. package/dist/cli/commands/plugin.d.ts +0 -3
  71. package/dist/cli/commands/plugin.d.ts.map +0 -1
  72. package/dist/cli/commands/plugin.js +0 -279
  73. package/dist/cli/commands/plugin.js.map +0 -1
  74. package/dist/cli/commands/plugin.test.d.ts +0 -2
  75. package/dist/cli/commands/plugin.test.d.ts.map +0 -1
  76. package/dist/cli/commands/plugin.test.js +0 -54
  77. package/dist/cli/commands/plugin.test.js.map +0 -1
  78. package/dist/cli/commands/profile.d.ts +0 -10
  79. package/dist/cli/commands/profile.d.ts.map +0 -1
  80. package/dist/cli/commands/profile.js +0 -89
  81. package/dist/cli/commands/profile.js.map +0 -1
  82. package/dist/cli/commands/register.d.ts +0 -3
  83. package/dist/cli/commands/register.d.ts.map +0 -1
  84. package/dist/cli/commands/register.js +0 -35
  85. package/dist/cli/commands/register.js.map +0 -1
  86. package/dist/cli/commands/seed.d.ts +0 -14
  87. package/dist/cli/commands/seed.d.ts.map +0 -1
  88. package/dist/cli/commands/seed.js +0 -500
  89. package/dist/cli/commands/seed.js.map +0 -1
  90. package/dist/cli/commands/seed.test.d.ts +0 -2
  91. package/dist/cli/commands/seed.test.d.ts.map +0 -1
  92. package/dist/cli/commands/seed.test.js +0 -92
  93. package/dist/cli/commands/seed.test.js.map +0 -1
  94. package/dist/cli/commands/setup.d.ts +0 -3
  95. package/dist/cli/commands/setup.d.ts.map +0 -1
  96. package/dist/cli/commands/setup.js +0 -84
  97. package/dist/cli/commands/setup.js.map +0 -1
  98. package/dist/cli/commands/stake.d.ts +0 -3
  99. package/dist/cli/commands/stake.d.ts.map +0 -1
  100. package/dist/cli/commands/stake.js +0 -83
  101. package/dist/cli/commands/stake.js.map +0 -1
  102. package/dist/cli/commands/status.d.ts +0 -8
  103. package/dist/cli/commands/status.d.ts.map +0 -1
  104. package/dist/cli/commands/status.js +0 -55
  105. package/dist/cli/commands/status.js.map +0 -1
  106. package/dist/cli/commands/subscribe.d.ts +0 -3
  107. package/dist/cli/commands/subscribe.d.ts.map +0 -1
  108. package/dist/cli/commands/subscribe.js +0 -96
  109. package/dist/cli/commands/subscribe.js.map +0 -1
  110. package/dist/cli/commands/types.d.ts +0 -14
  111. package/dist/cli/commands/types.d.ts.map +0 -1
  112. package/dist/cli/commands/types.js +0 -41
  113. package/dist/cli/commands/types.js.map +0 -1
  114. package/dist/cli/commands/withdraw.d.ts +0 -3
  115. package/dist/cli/commands/withdraw.d.ts.map +0 -1
  116. package/dist/cli/commands/withdraw.js +0 -48
  117. package/dist/cli/commands/withdraw.js.map +0 -1
  118. package/dist/cli/formatters.d.ts +0 -29
  119. package/dist/cli/formatters.d.ts.map +0 -1
  120. package/dist/cli/formatters.js +0 -67
  121. package/dist/cli/formatters.js.map +0 -1
  122. package/dist/cli/index.d.ts +0 -3
  123. package/dist/cli/index.d.ts.map +0 -1
  124. package/dist/cli/index.js +0 -63
  125. package/dist/cli/index.js.map +0 -1
  126. package/dist/cli/payment-utils.d.ts +0 -53
  127. package/dist/cli/payment-utils.d.ts.map +0 -1
  128. package/dist/cli/payment-utils.js +0 -137
  129. package/dist/cli/payment-utils.js.map +0 -1
  130. package/dist/cli/shutdown.d.ts +0 -11
  131. package/dist/cli/shutdown.d.ts.map +0 -1
  132. package/dist/cli/shutdown.js +0 -34
  133. package/dist/cli/shutdown.js.map +0 -1
  134. package/dist/config/defaults.d.ts +0 -6
  135. package/dist/config/defaults.d.ts.map +0 -1
  136. package/dist/config/defaults.js +0 -53
  137. package/dist/config/defaults.js.map +0 -1
  138. package/dist/config/effective.d.ts +0 -25
  139. package/dist/config/effective.d.ts.map +0 -1
  140. package/dist/config/effective.js +0 -67
  141. package/dist/config/effective.js.map +0 -1
  142. package/dist/config/effective.test.d.ts +0 -2
  143. package/dist/config/effective.test.d.ts.map +0 -1
  144. package/dist/config/effective.test.js +0 -62
  145. package/dist/config/effective.test.js.map +0 -1
  146. package/dist/config/loader.d.ts +0 -12
  147. package/dist/config/loader.d.ts.map +0 -1
  148. package/dist/config/loader.js +0 -269
  149. package/dist/config/loader.js.map +0 -1
  150. package/dist/config/loader.test.d.ts +0 -2
  151. package/dist/config/loader.test.d.ts.map +0 -1
  152. package/dist/config/loader.test.js +0 -124
  153. package/dist/config/loader.test.js.map +0 -1
  154. package/dist/config/types.d.ts +0 -167
  155. package/dist/config/types.d.ts.map +0 -1
  156. package/dist/config/types.js +0 -2
  157. package/dist/config/types.js.map +0 -1
  158. package/dist/config/validation.d.ts +0 -10
  159. package/dist/config/validation.d.ts.map +0 -1
  160. package/dist/config/validation.js +0 -130
  161. package/dist/config/validation.js.map +0 -1
  162. package/dist/env/load-env.d.ts +0 -6
  163. package/dist/env/load-env.d.ts.map +0 -1
  164. package/dist/env/load-env.js +0 -18
  165. package/dist/env/load-env.js.map +0 -1
  166. package/dist/plugins/loader.d.ts +0 -12
  167. package/dist/plugins/loader.d.ts.map +0 -1
  168. package/dist/plugins/loader.js +0 -111
  169. package/dist/plugins/loader.js.map +0 -1
  170. package/dist/plugins/manager.d.ts +0 -11
  171. package/dist/plugins/manager.d.ts.map +0 -1
  172. package/dist/plugins/manager.js +0 -52
  173. package/dist/plugins/manager.js.map +0 -1
  174. package/dist/plugins/registry.d.ts +0 -8
  175. package/dist/plugins/registry.d.ts.map +0 -1
  176. package/dist/plugins/registry.js +0 -45
  177. package/dist/plugins/registry.js.map +0 -1
  178. package/dist/proxy/buyer-proxy.d.ts +0 -82
  179. package/dist/proxy/buyer-proxy.d.ts.map +0 -1
  180. package/dist/proxy/buyer-proxy.js +0 -1056
  181. package/dist/proxy/buyer-proxy.js.map +0 -1
  182. package/dist/proxy/buyer-proxy.test.d.ts +0 -2
  183. package/dist/proxy/buyer-proxy.test.d.ts.map +0 -1
  184. package/dist/proxy/buyer-proxy.test.js +0 -124
  185. package/dist/proxy/buyer-proxy.test.js.map +0 -1
  186. package/dist/proxy/request-utils.d.ts +0 -21
  187. package/dist/proxy/request-utils.d.ts.map +0 -1
  188. package/dist/proxy/request-utils.js +0 -237
  189. package/dist/proxy/request-utils.js.map +0 -1
  190. package/dist/proxy/routing.d.ts +0 -17
  191. package/dist/proxy/routing.d.ts.map +0 -1
  192. package/dist/proxy/routing.js +0 -115
  193. package/dist/proxy/routing.js.map +0 -1
  194. package/dist/proxy/service-api-adapter.d.ts +0 -3
  195. package/dist/proxy/service-api-adapter.d.ts.map +0 -1
  196. package/dist/proxy/service-api-adapter.js +0 -2
  197. package/dist/proxy/service-api-adapter.js.map +0 -1
  198. package/dist/proxy/service-api-adapter.test.d.ts +0 -2
  199. package/dist/proxy/service-api-adapter.test.d.ts.map +0 -1
  200. package/dist/proxy/service-api-adapter.test.js +0 -121
  201. package/dist/proxy/service-api-adapter.test.js.map +0 -1
  202. package/dist/proxy/telemetry.d.ts +0 -23
  203. package/dist/proxy/telemetry.d.ts.map +0 -1
  204. package/dist/proxy/telemetry.js +0 -227
  205. package/dist/proxy/telemetry.js.map +0 -1
  206. package/dist/status/node-status.d.ts +0 -22
  207. package/dist/status/node-status.d.ts.map +0 -1
  208. package/dist/status/node-status.js +0 -83
  209. package/dist/status/node-status.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"buyer-proxy.js","sourceRoot":"","sources":["../../src/proxy/buyer-proxy.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=buyer-proxy.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buyer-proxy.test.d.ts","sourceRoot":"","sources":["../../src/proxy/buyer-proxy.test.ts"],"names":[],"mappings":""}
@@ -1,124 +0,0 @@
1
- import assert from 'node:assert/strict';
2
- import test from 'node:test';
3
- import { selectCandidatePeersForRouting, rewriteServiceInBody } from './buyer-proxy.js';
4
- function makePeer(seed, providers) {
5
- const repeated = (seed.repeat(40) + 'a'.repeat(40)).slice(0, 40);
6
- return {
7
- peerId: repeated,
8
- lastSeen: Date.now(),
9
- providers,
10
- };
11
- }
12
- test('selectCandidatePeersForRouting enforces explicit provider overrides even without request protocol', () => {
13
- const peers = [
14
- makePeer('a', ['anthropic']),
15
- makePeer('b', ['openai']),
16
- ];
17
- const result = selectCandidatePeersForRouting(peers, null, null, 'openai');
18
- assert.equal(result.candidatePeers.length, 1);
19
- assert.equal(result.candidatePeers[0]?.peerId, peers[1]?.peerId);
20
- assert.equal(result.routePlanByPeerId.get(peers[1].peerId)?.provider, 'openai');
21
- assert.equal(result.routePlanByPeerId.get(peers[1].peerId)?.selection, null);
22
- });
23
- test('selectCandidatePeersForRouting returns no candidates when explicit provider is unavailable', () => {
24
- const peers = [
25
- makePeer('a', ['anthropic']),
26
- makePeer('b', ['local-llm']),
27
- ];
28
- const result = selectCandidatePeersForRouting(peers, null, null, 'openai');
29
- assert.equal(result.candidatePeers.length, 0);
30
- assert.equal(result.routePlanByPeerId.size, 0);
31
- });
32
- test('selectCandidatePeersForRouting keeps all peers when no protocol or provider override is set', () => {
33
- const peers = [
34
- makePeer('a', ['anthropic']),
35
- makePeer('b', ['openai']),
36
- ];
37
- const result = selectCandidatePeersForRouting(peers, null, null, null);
38
- assert.deepEqual(result.candidatePeers.map((peer) => peer.peerId), peers.map((peer) => peer.peerId));
39
- assert.equal(result.routePlanByPeerId.size, 0);
40
- });
41
- test('selectCandidatePeersForRouting excludes peers when requested service is not in provider metadata', () => {
42
- const openAiPeer = makePeer('a', ['openai']);
43
- openAiPeer.providerServiceApiProtocols = {
44
- openai: {
45
- services: {
46
- 'gpt-4o': ['openai-chat-completions'],
47
- },
48
- },
49
- };
50
- const claudePeer = makePeer('b', ['claude-oauth']);
51
- claudePeer.providerServiceApiProtocols = {
52
- 'claude-oauth': {
53
- services: {
54
- 'claude-opus-4-6': ['anthropic-messages'],
55
- },
56
- },
57
- };
58
- const result = selectCandidatePeersForRouting([openAiPeer, claudePeer], 'anthropic-messages', 'claude-opus-4-6', null);
59
- assert.equal(result.candidatePeers.length, 1);
60
- assert.equal(result.candidatePeers[0]?.peerId, claudePeer.peerId);
61
- assert.equal(result.routePlanByPeerId.has(openAiPeer.peerId), false);
62
- assert.equal(result.routePlanByPeerId.get(claudePeer.peerId)?.provider, 'claude-oauth');
63
- });
64
- test('selectCandidatePeersForRouting can still include peers without service protocol metadata', () => {
65
- const peerWithoutMetadata = makePeer('a', ['openai']);
66
- const result = selectCandidatePeersForRouting([peerWithoutMetadata], 'openai-chat-completions', 'gpt-4o', null);
67
- assert.equal(result.candidatePeers.length, 1);
68
- assert.equal(result.candidatePeers[0]?.peerId, peerWithoutMetadata.peerId);
69
- });
70
- // rewriteServiceInBody tests
71
- function makeJsonBody(obj) {
72
- return new TextEncoder().encode(JSON.stringify(obj));
73
- }
74
- function parseJsonBody(body) {
75
- return JSON.parse(new TextDecoder().decode(body));
76
- }
77
- const jsonHeaders = { 'content-type': 'application/json' };
78
- test('rewriteServiceInBody replaces existing model field and sets service', () => {
79
- const body = makeJsonBody({ model: 'claude-sonnet-4-5', messages: [] });
80
- const result = rewriteServiceInBody(body, jsonHeaders, 'claude-opus-4-6');
81
- const parsed = parseJsonBody(result.body);
82
- assert.equal(parsed['service'], 'claude-opus-4-6');
83
- assert.equal(parsed['model'], 'claude-opus-4-6');
84
- });
85
- test('rewriteServiceInBody adds service and model fields when absent', () => {
86
- const body = makeJsonBody({ messages: [] });
87
- const result = rewriteServiceInBody(body, jsonHeaders, 'claude-opus-4-6');
88
- const parsed = parseJsonBody(result.body);
89
- assert.equal(parsed['service'], 'claude-opus-4-6');
90
- assert.equal(parsed['model'], 'claude-opus-4-6');
91
- });
92
- test('rewriteServiceInBody preserves all other fields', () => {
93
- const body = makeJsonBody({ model: 'old', messages: [{ role: 'user', content: 'hi' }], max_tokens: 1024 });
94
- const result = rewriteServiceInBody(body, jsonHeaders, 'new-model');
95
- const parsed = parseJsonBody(result.body);
96
- assert.equal(parsed['service'], 'new-model');
97
- assert.equal(parsed['model'], 'new-model');
98
- assert.deepEqual(parsed['messages'], [{ role: 'user', content: 'hi' }]);
99
- assert.equal(parsed['max_tokens'], 1024);
100
- });
101
- test('rewriteServiceInBody updates content-length header when present', () => {
102
- const original = makeJsonBody({ model: 'a', messages: [] });
103
- const headers = { 'content-type': 'application/json', 'content-length': String(original.length) };
104
- const result = rewriteServiceInBody(original, headers, 'claude-opus-4-6-20251201');
105
- assert.equal(result.headers['content-length'], String(result.body.length));
106
- });
107
- test('rewriteServiceInBody returns original when body is not JSON content-type', () => {
108
- const body = makeJsonBody({ model: 'old' });
109
- const headers = { 'content-type': 'text/plain' };
110
- const result = rewriteServiceInBody(body, headers, 'new-model');
111
- assert.equal(result.body, body);
112
- assert.equal(result.headers, headers);
113
- });
114
- test('rewriteServiceInBody returns original when body is empty', () => {
115
- const body = new Uint8Array(0);
116
- const result = rewriteServiceInBody(body, jsonHeaders, 'new-model');
117
- assert.equal(result.body, body);
118
- });
119
- test('rewriteServiceInBody returns original when body is not a JSON object', () => {
120
- const body = new TextEncoder().encode('"just a string"');
121
- const result = rewriteServiceInBody(body, jsonHeaders, 'new-model');
122
- assert.equal(result.body, body);
123
- });
124
- //# sourceMappingURL=buyer-proxy.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buyer-proxy.test.js","sourceRoot":"","sources":["../../src/proxy/buyer-proxy.test.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- import type { ConnectionState, PeerInfo, SerializedHttpRequest, SerializedHttpResponse } from '@antseed/node';
2
- export declare function DEBUG(): boolean;
3
- export declare function log(...args: unknown[]): void;
4
- export declare function extractRequestedService(request: SerializedHttpRequest): string | null;
5
- export declare function summarizeRequestShape(request: SerializedHttpRequest): string;
6
- export declare function summarizeErrorResponse(response: SerializedHttpResponse): string;
7
- export declare function requestWantsStreaming(headers: Record<string, string>, body: Uint8Array): boolean;
8
- export declare function isConnectionChurnError(message: string): boolean;
9
- export declare function isConnectionHealthy(state: ConnectionState | null): boolean;
10
- export declare function isLoopbackPeer(peer: PeerInfo): boolean;
11
- /**
12
- * Rewrite the `service` (and `model` for upstream LLM API compat) fields in a JSON request body.
13
- * Also updates `content-length` if present in headers.
14
- * Returns the original body/headers unchanged if the body is not JSON,
15
- * is empty, or cannot be parsed.
16
- */
17
- export declare function rewriteServiceInBody(body: Uint8Array, headers: Record<string, string>, service: string): {
18
- body: Uint8Array;
19
- headers: Record<string, string>;
20
- };
21
- //# sourceMappingURL=request-utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"request-utils.d.ts","sourceRoot":"","sources":["../../src/proxy/request-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAO7G,wBAAgB,KAAK,IAAI,OAAO,CAE/B;AAED,wBAAgB,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAE5C;AAMD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,GAAG,IAAI,CAarF;AAiFD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,CA2C5E;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,MAAM,CAqC/E;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAWhG;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,GAAG,OAAO,CAM1E;AAsBD,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAMtD;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,OAAO,EAAE,MAAM,GACd;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAkBvD"}
@@ -1,237 +0,0 @@
1
- import { parseJsonObject } from '@antseed/api-adapter';
2
- const debugEnabled = ['1', 'true', 'yes', 'on'].includes((process.env['ANTSEED_DEBUG'] ?? '').trim().toLowerCase());
3
- export function DEBUG() {
4
- return debugEnabled;
5
- }
6
- export function log(...args) {
7
- if (debugEnabled)
8
- console.log('[proxy]', ...args);
9
- }
10
- function getHeader(headers, name) {
11
- return headers[name] ?? headers[name.charAt(0).toUpperCase() + name.slice(1)] ?? '';
12
- }
13
- export function extractRequestedService(request) {
14
- if (!getHeader(request.headers, 'content-type').toLowerCase().includes('application/json')) {
15
- return null;
16
- }
17
- const parsed = parseJsonObject(request.body);
18
- if (!parsed)
19
- return null;
20
- const service = parsed.service ?? parsed.model;
21
- if (typeof service === 'string' && service.trim().length > 0) {
22
- return service.trim();
23
- }
24
- return null;
25
- }
26
- function summarizeMessageShape(messagesRaw) {
27
- if (!Array.isArray(messagesRaw)) {
28
- return 'msgShape=none';
29
- }
30
- const roleCounts = new Map();
31
- const contentKindCounts = new Map();
32
- const blockTypeCounts = new Map();
33
- let invalidMessages = 0;
34
- let firstRole = 'none';
35
- let lastRole = 'none';
36
- const bump = (map, key) => {
37
- map.set(key, (map.get(key) ?? 0) + 1);
38
- };
39
- for (const entry of messagesRaw) {
40
- if (!entry || typeof entry !== 'object' || Array.isArray(entry)) {
41
- invalidMessages += 1;
42
- continue;
43
- }
44
- const message = entry;
45
- const role = typeof message.role === 'string' && message.role.trim().length > 0
46
- ? message.role.trim().toLowerCase()
47
- : 'invalid-role';
48
- bump(roleCounts, role);
49
- if (firstRole === 'none') {
50
- firstRole = role;
51
- }
52
- lastRole = role;
53
- const content = message.content;
54
- if (typeof content === 'string') {
55
- bump(contentKindCounts, 'string');
56
- continue;
57
- }
58
- if (Array.isArray(content)) {
59
- bump(contentKindCounts, 'array');
60
- for (const block of content) {
61
- if (!block || typeof block !== 'object' || Array.isArray(block)) {
62
- bump(blockTypeCounts, 'invalid');
63
- continue;
64
- }
65
- const blockType = typeof block.type === 'string'
66
- ? String(block.type).trim().toLowerCase()
67
- : 'missing-type';
68
- bump(blockTypeCounts, blockType || 'missing-type');
69
- }
70
- continue;
71
- }
72
- if (content && typeof content === 'object') {
73
- bump(contentKindCounts, 'object');
74
- continue;
75
- }
76
- bump(contentKindCounts, 'other');
77
- }
78
- const joinMap = (map) => ([...map.entries()]
79
- .sort((left, right) => left[0].localeCompare(right[0]))
80
- .map(([key, value]) => `${key}:${String(value)}`)
81
- .join(','));
82
- const roleSummary = joinMap(roleCounts) || 'none';
83
- const contentSummary = joinMap(contentKindCounts) || 'none';
84
- const blockSummary = joinMap(blockTypeCounts) || 'none';
85
- return [
86
- `msgShape=roles{${roleSummary}}`,
87
- `content{${contentSummary}}`,
88
- `blocks{${blockSummary}}`,
89
- `firstRole=${firstRole}`,
90
- `lastRole=${lastRole}`,
91
- `invalidMsgs=${String(invalidMessages)}`,
92
- ].join(' ');
93
- }
94
- export function summarizeRequestShape(request) {
95
- const contentType = getHeader(request.headers, 'content-type').toLowerCase();
96
- const accept = getHeader(request.headers, 'accept').toLowerCase();
97
- const providerHeader = request.headers['x-antseed-provider'] ?? 'none';
98
- const preferPeerHeader = request.headers['x-antseed-prefer-peer'] ?? 'none';
99
- const service = extractRequestedService(request) ?? 'none';
100
- const wantsStreaming = requestWantsStreaming(request.headers, request.body);
101
- const baseParts = [
102
- `method=${request.method}`,
103
- `path=${request.path}`,
104
- `provider=${providerHeader}`,
105
- `preferPeer=${preferPeerHeader}`,
106
- `contentType=${contentType || 'none'}`,
107
- `accept=${accept || 'none'}`,
108
- `stream=${String(wantsStreaming)}`,
109
- `service=${service}`,
110
- `bodyBytes=${String(request.body.length)}`,
111
- ];
112
- const jsonBody = parseJsonObject(request.body);
113
- if (!jsonBody) {
114
- return baseParts.join(' ');
115
- }
116
- const messagesRaw = jsonBody.messages;
117
- const toolsRaw = jsonBody.tools;
118
- const messageCount = Array.isArray(messagesRaw) ? messagesRaw.length : 0;
119
- const toolCount = Array.isArray(toolsRaw) ? toolsRaw.length : 0;
120
- const maxTokens = Number(jsonBody.max_tokens ?? jsonBody.maxTokens);
121
- const keys = Object.keys(jsonBody).sort().join(',');
122
- baseParts.push(`messages=${String(messageCount)}`);
123
- baseParts.push(`tools=${String(toolCount)}`);
124
- if (Number.isFinite(maxTokens) && maxTokens > 0) {
125
- baseParts.push(`maxTokens=${String(Math.floor(maxTokens))}`);
126
- }
127
- if (keys.length > 0) {
128
- baseParts.push(`keys=[${keys}]`);
129
- }
130
- baseParts.push(summarizeMessageShape(messagesRaw));
131
- return baseParts.join(' ');
132
- }
133
- export function summarizeErrorResponse(response) {
134
- const contentType = (response.headers['content-type'] ?? '').toLowerCase();
135
- if (!response.body || response.body.length === 0) {
136
- return 'empty response body';
137
- }
138
- const raw = new TextDecoder().decode(response.body).trim();
139
- if (raw.length === 0) {
140
- return 'empty response body';
141
- }
142
- if (contentType.includes('application/json')) {
143
- try {
144
- const parsed = JSON.parse(raw);
145
- if (parsed && typeof parsed === 'object' && !Array.isArray(parsed)) {
146
- const object = parsed;
147
- const nestedError = object.error && typeof object.error === 'object' && !Array.isArray(object.error)
148
- ? object.error
149
- : null;
150
- const message = ((typeof nestedError?.message === 'string' && nestedError.message)
151
- || (typeof object.message === 'string' && object.message)
152
- || (typeof object.detail === 'string' && object.detail));
153
- if (message) {
154
- return `message="${message}"`;
155
- }
156
- }
157
- }
158
- catch {
159
- // fall through to raw snippet
160
- }
161
- }
162
- const compact = raw.replace(/\s+/g, ' ');
163
- const maxChars = 280;
164
- const snippet = compact.length > maxChars ? `${compact.slice(0, maxChars)}...` : compact;
165
- return `body="${snippet}"`;
166
- }
167
- export function requestWantsStreaming(headers, body) {
168
- if (getHeader(headers, 'accept').toLowerCase().includes('text/event-stream')) {
169
- return true;
170
- }
171
- if (!getHeader(headers, 'content-type').toLowerCase().includes('application/json') || body.length === 0) {
172
- return false;
173
- }
174
- const parsed = parseJsonObject(body);
175
- return parsed?.stream === true;
176
- }
177
- export function isConnectionChurnError(message) {
178
- return /connection .*?\b(closed|failed)\s+during request\b/i.test(message);
179
- }
180
- export function isConnectionHealthy(state) {
181
- if (!state) {
182
- return false;
183
- }
184
- const normalized = String(state).toLowerCase();
185
- return normalized === 'open' || normalized === 'authenticated' || normalized === 'connecting';
186
- }
187
- function extractHostFromAddress(address) {
188
- const trimmed = address.trim();
189
- if (trimmed.length === 0)
190
- return '';
191
- if (trimmed.startsWith('[')) {
192
- const end = trimmed.indexOf(']');
193
- return end > 1 ? trimmed.slice(1, end).toLowerCase() : '';
194
- }
195
- const idx = trimmed.lastIndexOf(':');
196
- if (idx > 0) {
197
- return trimmed.slice(0, idx).toLowerCase();
198
- }
199
- return trimmed.toLowerCase();
200
- }
201
- function isLoopbackHost(host) {
202
- return host === '127.0.0.1' || host === 'localhost' || host === '::1';
203
- }
204
- export function isLoopbackPeer(peer) {
205
- if (!peer.publicAddress) {
206
- return false;
207
- }
208
- const host = extractHostFromAddress(peer.publicAddress);
209
- return isLoopbackHost(host);
210
- }
211
- /**
212
- * Rewrite the `service` (and `model` for upstream LLM API compat) fields in a JSON request body.
213
- * Also updates `content-length` if present in headers.
214
- * Returns the original body/headers unchanged if the body is not JSON,
215
- * is empty, or cannot be parsed.
216
- */
217
- export function rewriteServiceInBody(body, headers, service) {
218
- if (!getHeader(headers, 'content-type').toLowerCase().includes('application/json') || body.length === 0) {
219
- return { body, headers };
220
- }
221
- const obj = parseJsonObject(body);
222
- if (!obj) {
223
- return { body, headers };
224
- }
225
- obj['service'] = service;
226
- obj['model'] = service;
227
- const rewritten = new TextEncoder().encode(JSON.stringify(obj));
228
- const updatedHeaders = { ...headers };
229
- if ('content-length' in updatedHeaders) {
230
- updatedHeaders['content-length'] = String(rewritten.length);
231
- }
232
- else if ('Content-Length' in updatedHeaders) {
233
- updatedHeaders['Content-Length'] = String(rewritten.length);
234
- }
235
- return { body: rewritten, headers: updatedHeaders };
236
- }
237
- //# sourceMappingURL=request-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"request-utils.js","sourceRoot":"","sources":["../../src/proxy/request-utils.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- import type { PeerInfo, SerializedHttpRequest } from '@antseed/node';
2
- import { type ServiceApiProtocol, type TargetProtocolSelection } from './service-api-adapter.js';
3
- export type PeerProtocolRoutePlan = {
4
- provider: string;
5
- selection: TargetProtocolSelection | null;
6
- };
7
- export type CandidatePeerRouteSelection = {
8
- candidatePeers: PeerInfo[];
9
- routePlanByPeerId: Map<string, PeerProtocolRoutePlan>;
10
- };
11
- export declare function getExplicitProviderOverride(request: SerializedHttpRequest): string | null;
12
- export declare function getExplicitPeerIdOverride(request: SerializedHttpRequest, sessionPinnedPeerId: string | undefined): string | null;
13
- export declare function getPreferredPeerIdHint(request: SerializedHttpRequest): string | null;
14
- export declare function resolvePeerRoutePlan(peer: PeerInfo, requestProtocol: ServiceApiProtocol | null, requestedService: string | null, explicitProvider: string | null): PeerProtocolRoutePlan | null;
15
- export declare function selectCandidatePeersForRouting(peers: PeerInfo[], requestProtocol: ServiceApiProtocol | null, requestedService: string | null, explicitProvider: string | null): CandidatePeerRouteSelection;
16
- export declare function pickProviderForPeer(peer: PeerInfo, request: SerializedHttpRequest): string;
17
- //# sourceMappingURL=routing.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/proxy/routing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AACpE,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC7B,MAAM,0BAA0B,CAAA;AAGjC,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,uBAAuB,GAAG,IAAI,CAAA;CAC1C,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,cAAc,EAAE,QAAQ,EAAE,CAAA;IAC1B,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;CACtD,CAAA;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,GAAG,IAAI,CAGzF;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,qBAAqB,EAC9B,mBAAmB,EAAE,MAAM,GAAG,SAAS,GACtC,MAAM,GAAG,IAAI,CAKf;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,GAAG,IAAI,CAMpF;AAmDD,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,QAAQ,EACd,eAAe,EAAE,kBAAkB,GAAG,IAAI,EAC1C,gBAAgB,EAAE,MAAM,GAAG,IAAI,EAC/B,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAC9B,qBAAqB,GAAG,IAAI,CAoC9B;AAED,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,QAAQ,EAAE,EACjB,eAAe,EAAE,kBAAkB,GAAG,IAAI,EAC1C,gBAAgB,EAAE,MAAM,GAAG,IAAI,EAC/B,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAC9B,2BAA2B,CAoB7B;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,qBAAqB,GAAG,MAAM,CAgB1F"}