@antseed/node 0.2.143 → 0.2.144

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.
@@ -1 +1 @@
1
- {"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../src/p2p/connection-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../src/p2p/connection-manager.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,12 @@ const LINE_SEPARATOR = "\n";
47
47
  const INITIAL_LINE_TIMEOUT_MS = 10_000;
48
48
  const MAX_INITIAL_LINE_BYTES = 8 * 1024;
49
49
  const TCP_KEEPALIVE_INITIAL_DELAY_MS = 10_000;
50
+ /**
51
+ * Most a data channel may hold queued before a send fails the connection. Large
52
+ * uploads queue far more than SCTP sends at once, so a queued send is normal; only
53
+ * a channel that stops draining reaches this.
54
+ */
55
+ const MAX_DATA_CHANNEL_BUFFERED_BYTES = 64 * 1024 * 1024;
50
56
  export const INBOUND_REFUSED_MESSAGE = "This seller does not accept connections from your location.";
51
57
  const LOCAL_CONNECTION_CAPABILITIES = [
52
58
  CONNECTION_CAPABILITY_RESPONSE_AUTH_V1,
@@ -232,8 +238,9 @@ export class PeerConnection extends EventEmitter {
232
238
  this.fail(wrapped);
233
239
  throw wrapped;
234
240
  }
235
- if (!ok) {
236
- const err = new Error(`Failed to send data to ${this.remotePeerId}`);
241
+ // false means the message was queued, not sent yet; it is still delivered.
242
+ if (!ok && this._dataChannel.bufferedAmount() > MAX_DATA_CHANNEL_BUFFERED_BYTES) {
243
+ const err = new Error(`Failed to send data to ${this.remotePeerId}: data channel is not draining`);
237
244
  this.fail(err);
238
245
  throw err;
239
246
  }
@@ -1 +1 @@
1
- {"version":3,"file":"connection-manager.js","sourceRoot":"","sources":["../../src/p2p/connection-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection-manager.js","sourceRoot":"","sources":["../../src/p2p/connection-manager.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,8 @@ export declare const TEE_VERIFIER_ID = "antseed-verifier";
2
2
  export declare const TEE_MAX_AGE_MS: number;
3
3
  export declare const TEE_BADGE_MAX_AGE_MS: number;
4
4
  export declare const TEE_REQUIRED_CLAIMS: readonly ["antseed-verifier:seller-node-tee-genuine", "antseed-verifier:seller-bound"];
5
+ /** Optional claim: the downstream inference provider also runs in a genuine TEE. */
6
+ export declare const TEE_PROVIDER_CLAIM = "antseed-verifier:seller-provider-tee-genuine";
5
7
  export interface TeeClaim {
6
8
  claim: string;
7
9
  ok: boolean;
@@ -29,7 +31,13 @@ export interface DesktopTeeStatus {
29
31
  snapshot: TeeSnapshot | null;
30
32
  error?: string;
31
33
  }
34
+ /**
35
+ * How far a verified seller's TEE reaches: `end-to-end` when the upstream provider is attested
36
+ * too, `seller-node` when only the seller node is (e.g. it forwards to a non-TEE model API).
37
+ */
38
+ export type TeeScope = 'end-to-end' | 'seller-node';
32
39
  export declare function passedSellerNodeClaims(claims: readonly TeeClaim[]): boolean;
40
+ export declare function teeScope(evidence: Pick<TeeEvidence, 'claims'>): TeeScope;
33
41
  export declare function isFreshSellerNodeEvidence(evidence: TeeEvidence | undefined, now?: number): boolean;
34
42
  export declare function teeControlFileName(port: number): string;
35
43
  //# sourceMappingURL=tee-status.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tee-status.d.ts","sourceRoot":"","sources":["../../src/verification/tee-status.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,qBAAqB,CAAA;AACjD,eAAO,MAAM,cAAc,QAAa,CAAA;AACxC,eAAO,MAAM,oBAAoB,QAAmB,CAAA;AACpD,eAAO,MAAM,mBAAmB,wFAGtB,CAAA;AAEV,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,OAAO,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AACD,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,kBAAkB,EAAE,OAAO,CAAA;IAC3B,MAAM,EAAE,QAAQ,EAAE,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AACD,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,QAAQ,EAAE,WAAW,EAAE,CAAA;CACxB;AACD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAA;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,QAAQ,EAAE,GAAG,OAAO,CAK3E;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,WAAW,GAAG,SAAS,EAAE,GAAG,SAAa,GAAG,OAAO,CAGtG;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD"}
1
+ {"version":3,"file":"tee-status.d.ts","sourceRoot":"","sources":["../../src/verification/tee-status.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,qBAAqB,CAAA;AACjD,eAAO,MAAM,cAAc,QAAa,CAAA;AACxC,eAAO,MAAM,oBAAoB,QAAmB,CAAA;AACpD,eAAO,MAAM,mBAAmB,wFAGtB,CAAA;AACV,oFAAoF;AACpF,eAAO,MAAM,kBAAkB,iDAAiD,CAAA;AAEhF,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,OAAO,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AACD,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,kBAAkB,EAAE,OAAO,CAAA;IAC3B,MAAM,EAAE,QAAQ,EAAE,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AACD,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,QAAQ,EAAE,WAAW,EAAE,CAAA;CACxB;AACD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAA;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,YAAY,GAAG,aAAa,CAAA;AAOnD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,QAAQ,EAAE,GAAG,OAAO,CAE3E;AAED,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAExE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,WAAW,GAAG,SAAS,EAAE,GAAG,SAAa,GAAG,OAAO,CAGtG;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD"}
@@ -5,11 +5,17 @@ export const TEE_REQUIRED_CLAIMS = [
5
5
  'antseed-verifier:seller-node-tee-genuine',
6
6
  'antseed-verifier:seller-bound',
7
7
  ];
8
+ /** Optional claim: the downstream inference provider also runs in a genuine TEE. */
9
+ export const TEE_PROVIDER_CLAIM = 'antseed-verifier:seller-provider-tee-genuine';
10
+ function passedClaim(claims, required) {
11
+ const matches = claims.filter((claim) => claim.claim === required);
12
+ return matches.length > 0 && matches.every((claim) => claim.ok === true);
13
+ }
8
14
  export function passedSellerNodeClaims(claims) {
9
- return TEE_REQUIRED_CLAIMS.every((required) => {
10
- const matches = claims.filter((claim) => claim.claim === required);
11
- return matches.length > 0 && matches.every((claim) => claim.ok === true);
12
- });
15
+ return TEE_REQUIRED_CLAIMS.every((required) => passedClaim(claims, required));
16
+ }
17
+ export function teeScope(evidence) {
18
+ return passedClaim(evidence.claims, TEE_PROVIDER_CLAIM) ? 'end-to-end' : 'seller-node';
13
19
  }
14
20
  export function isFreshSellerNodeEvidence(evidence, now = Date.now()) {
15
21
  return evidence?.sellerNodeVerified === true && !evidence.checking
@@ -1 +1 @@
1
- {"version":3,"file":"tee-status.js","sourceRoot":"","sources":["../../src/verification/tee-status.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,kBAAkB,CAAA;AACjD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAG,MAAM,CAAA;AACxC,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAA;AACpD,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,0CAA0C;IAC1C,+BAA+B;CACvB,CAAA;AA8BV,MAAM,UAAU,sBAAsB,CAAC,MAA2B;IAChE,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAA;QAClE,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,CAAA;IAC1E,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,QAAiC,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IAC3F,OAAO,QAAQ,EAAE,kBAAkB,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ;WAC7D,CAAC,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,SAAS,GAAG,GAAG,CAAA;AACxD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,sBAAsB,IAAI,OAAO,CAAA;AAC1C,CAAC"}
1
+ {"version":3,"file":"tee-status.js","sourceRoot":"","sources":["../../src/verification/tee-status.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,kBAAkB,CAAA;AACjD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAG,MAAM,CAAA;AACxC,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAA;AACpD,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,0CAA0C;IAC1C,+BAA+B;CACvB,CAAA;AACV,oFAAoF;AACpF,MAAM,CAAC,MAAM,kBAAkB,GAAG,8CAA8C,CAAA;AAoChF,SAAS,WAAW,CAAC,MAA2B,EAAE,QAAgB;IAChE,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAA;IAClE,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,CAAA;AAC1E,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAA2B;IAChE,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;AAC/E,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,QAAqC;IAC5D,OAAO,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAA;AACxF,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,QAAiC,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IAC3F,OAAO,QAAQ,EAAE,kBAAkB,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ;WAC7D,CAAC,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,SAAS,GAAG,GAAG,CAAA;AACxD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,sBAAsB,IAAI,OAAO,CAAA;AAC1C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antseed/node",
3
- "version": "0.2.143",
3
+ "version": "0.2.144",
4
4
  "description": "Antseed Network protocol SDK — P2P inference marketplace",
5
5
  "type": "module",
6
6
  "files": [
@@ -70,8 +70,8 @@
70
70
  "node-datachannel": "^0.7.0",
71
71
  "tokenx": "^1.3.0",
72
72
  "@antseed/api-adapter": "0.1.53",
73
- "@antseed/buyer-core": "0.1.21",
74
- "@antseed/protocol": "0.1.9"
73
+ "@antseed/protocol": "0.1.9",
74
+ "@antseed/buyer-core": "0.1.21"
75
75
  },
76
76
  "optionalDependencies": {
77
77
  "keytar": "^7.9.0"