@magicnewton/newton-protocol-sdk 0.2.11--canary.91.20273429901.0 → 0.2.11--canary.94.20375236815.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/const.js CHANGED
@@ -1 +1 @@
1
- "use strict";const A="https://gateway-avs.sepolia.newt.foundation/rpc",T="https://gateway-avs.newt.foundation/rpc",E={createTask:"newt_createTask"},_="0xb9758d9d03e6dfb8001cadf63b87ba519a618e13",a="0xc8da20766a6baaa7daeea1be8006f10c0fa4b7a0",N="0x2010dbaa5438801bdc3f08174a799fe344f544ee",I="0x263c275c15867a4611a44c600e77144a23012a06";exports.GATEWAY_METHODS=E,exports.MAINNET_ATTESTATION_VALIDATOR=I,exports.MAINNET_GATEWAY_API=T,exports.MAINNET_NEWTON_PROVER_TASK_MANAGER=N,exports.SEPOLIA_ATTESTATION_VALIDATOR=a,exports.SEPOLIA_NEWTON_PROVER_TASK_MANAGER=_,exports.TESTNET_GATEWAY_API=A;
1
+ "use strict";const A="https://prover-avs.sepolia.newt.foundation/",T="https://prover-avs.newt.foundation/",_={createTaskAndWait:"newton_createTaskAndWait"},E="0x8cabf24f2ad134e0c25d7dd96cf901e7c430aa57",N="0xe54f46353b7210d7c3cf092034c1dc76fcba0a83",a="0x2010dbaa5438801bdc3f08174a799fe344f544ee",I="0x263c275c15867a4611a44c600e77144a23012a06";exports.AVS_METHODS=_,exports.MAINNET_ATTESTATION_VALIDATOR=I,exports.MAINNET_AVS_API=T,exports.MAINNET_NEWTON_PROVER_TASK_MANAGER=a,exports.SEPOLIA_ATTESTATION_VALIDATOR=N,exports.SEPOLIA_NEWTON_PROVER_TASK_MANAGER=E,exports.TESTNET_AVS_API=A;
package/dist/cjs/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";var p=require("viem/chains"),u=require("./modules/avs/index.js"),n=require("./modules/policy/index.js"),s=require("./const.js");const A=(y,a)=>i=>{const{developerPk:d,apiKey:e,policyContractAddress:r}=y,l=()=>{if(r)return r;throw new Error('Newton SDK: policyContractAddress is required. Ensure you instantiate viem client actions extension with policyContractAddress parameter. Example: newtonWalletClientActions({ policyContractAddress: "0x123..." })')};if(i?.chain?.id!==p.mainnet.id&&i?.chain?.id!==p.sepolia.id)throw new Error("Newton SDK: Invalid network specified for newtonWalletClientActions. Only mainnet and sepolia are supported");const t=a?.taskManagerAddress??(i?.chain?.testnet?s.SEPOLIA_NEWTON_PROVER_TASK_MANAGER:s.MAINNET_NEWTON_PROVER_TASK_MANAGER),o=a?.gatewayApiUrl??void 0;return{submitEvaluationRequest:c=>u.submitEvaluationRequest(i,c,t,d,e,o),initialize:c=>{const C=l();return n.policyWriteFunctions.initialize({walletClient:i,policyContractAddress:C,...c})},renounceOwnership:()=>{const c=l();return n.policyWriteFunctions.renounceOwnership({walletClient:i,policyContractAddress:c})},transferOwnership:c=>{const C=l();return n.policyWriteFunctions.transferOwnership({walletClient:i,policyContractAddress:C,...c})}}},R=(y,a)=>i=>{if(i?.chain?.id!==p.mainnet.id&&i?.chain?.id!==p.sepolia.id)throw new Error("Newton SDK: Invalid network specified for newtonPublicActions. Only mainnet and sepolia are supported");const d=y?.policyContractAddress,e=()=>{if(!d)throw new Error('Newton SDK: policyContractAddress is required. Ensure you instantiate viem client actions extension with policyContractAddress parameter. Example: newtonPublicClientActions({ policyContractAddress: "0x123..." })');return d},r=a?.taskManagerAddress??(i?.chain?.testnet?s.SEPOLIA_NEWTON_PROVER_TASK_MANAGER:s.MAINNET_NEWTON_PROVER_TASK_MANAGER),l=a?.attestationValidatorAddress??(i?.chain?.testnet?s.SEPOLIA_ATTESTATION_VALIDATOR:s.MAINNET_ATTESTATION_VALIDATOR);return{waitForTaskResponded:t=>u.waitForTaskResponded(i,t,r),getTaskResponseHash:t=>u.getTaskResponseHash(i,t,r),getTaskStatus:t=>u.getTaskStatus(i,t,r,l),clientToPolicyId:t=>{const o=e();return n.policyReadFunctions.clientToPolicyId({publicClient:i,policyContractAddress:o,...t})},entrypoint:()=>{const t=e();return n.policyReadFunctions.entrypoint({publicClient:i,policyContractAddress:t})},factory:()=>{const t=e();return n.policyReadFunctions.factory({publicClient:i,policyContractAddress:t})},getEntrypoint:()=>{const t=e();return n.policyReadFunctions.getEntrypoint({publicClient:i,policyContractAddress:t})},getMetadataCid:()=>{const t=e();return n.policyReadFunctions.getMetadataCid({publicClient:i,policyContractAddress:t})},getPolicyCid:()=>{const t=e();return n.policyReadFunctions.getPolicyCid({publicClient:i,policyContractAddress:t})},getPolicyConfig:t=>{const o=e();return n.policyReadFunctions.getPolicyConfig({publicClient:i,policyContractAddress:o,...t})},getPolicyData:()=>{const t=e();return n.policyReadFunctions.getPolicyData({publicClient:i,policyContractAddress:t})},getPolicyId:t=>{const o=e();return n.policyReadFunctions.getPolicyId({publicClient:i,policyContractAddress:o,...t})},getSchemaCid:()=>{const t=e();return n.policyReadFunctions.getSchemaCid({publicClient:i,policyContractAddress:t})},isPolicyVerified:()=>{const t=e();return n.policyReadFunctions.isPolicyVerified({publicClient:i,policyContractAddress:t})},metadataCid:()=>{const t=e();return n.policyReadFunctions.metadataCid({publicClient:i,policyContractAddress:t})},owner:()=>{const t=e();return n.policyReadFunctions.owner({publicClient:i,policyContractAddress:t})},policyCid:()=>{const t=e();return n.policyReadFunctions.policyCid({publicClient:i,policyContractAddress:t})},policyData:t=>{const o=e();return n.policyReadFunctions.policyData({publicClient:i,policyContractAddress:o,...t})},schemaCid:()=>{const t=e();return n.policyReadFunctions.schemaCid({publicClient:i,policyContractAddress:t})},supportsInterface:t=>{const o=e();return n.policyReadFunctions.supportsInterface({publicClient:i,policyContractAddress:o,...t})},precomputePolicyId:t=>{const o=e();return n.policyReadFunctions.precomputePolicyId({publicClient:i,policyContractAddress:o,...t})}}};exports.newtonPublicClientActions=R,exports.newtonWalletClientActions=A;
1
+ "use strict";var a=require("viem/chains"),d=require("./modules/avs/index.js"),i=require("./modules/policy/index.js"),s=require("./const.js");const C=(p,r)=>e=>{const{developerPk:l,policyContractAddress:n}=p,c=()=>{if(n)return n;throw new Error('Newton SDK: policyContractAddress is required. Ensure you instantiate viem client actions extension with policyContractAddress parameter. Example: newtonWalletClientActions({ policyContractAddress: "0x123..." })')};if(e?.chain?.id!==a.mainnet.id&&e?.chain?.id!==a.sepolia.id)throw new Error("Newton SDK: Invalid network specified for newtonWalletClientActions. Only mainnet and sepolia are supported");const u=r?.taskManagerAddress??(e?.chain?.testnet?s.SEPOLIA_NEWTON_PROVER_TASK_MANAGER:s.MAINNET_NEWTON_PROVER_TASK_MANAGER),t=r?.proverApiUrl??void 0;return{submitEvaluationRequest:o=>d.submitEvaluationRequest(e,o,u,l,t),initialize:o=>{const y=c();return i.policyWriteFunctions.initialize({walletClient:e,policyContractAddress:y,...o})},renounceOwnership:()=>{const o=c();return i.policyWriteFunctions.renounceOwnership({walletClient:e,policyContractAddress:o})},transferOwnership:o=>{const y=c();return i.policyWriteFunctions.transferOwnership({walletClient:e,policyContractAddress:y,...o})}}},A=(p,r)=>e=>{if(e?.chain?.id!==a.mainnet.id&&e?.chain?.id!==a.sepolia.id)throw new Error("Newton SDK: Invalid network specified for newtonPublicActions. Only mainnet and sepolia are supported");const l=p?.policyContractAddress,n=()=>{if(!l)throw new Error('Newton SDK: policyContractAddress is required. Ensure you instantiate viem client actions extension with policyContractAddress parameter. Example: newtonPublicClientActions({ policyContractAddress: "0x123..." })');return l},c=r?.taskManagerAddress??(e?.chain?.testnet?s.SEPOLIA_NEWTON_PROVER_TASK_MANAGER:s.MAINNET_NEWTON_PROVER_TASK_MANAGER),u=r?.attestationValidatorAddress??(e?.chain?.testnet?s.SEPOLIA_ATTESTATION_VALIDATOR:s.MAINNET_ATTESTATION_VALIDATOR);return{waitForTaskResponded:t=>d.waitForTaskResponded(e,t,c),getTaskResponseHash:t=>d.getTaskResponseHash(e,t,c),getTaskStatus:t=>d.getTaskStatus(e,t,c,u),clientToPolicyId:t=>{const o=n();return i.policyReadFunctions.clientToPolicyId({publicClient:e,policyContractAddress:o,...t})},entrypoint:()=>{const t=n();return i.policyReadFunctions.entrypoint({publicClient:e,policyContractAddress:t})},factory:()=>{const t=n();return i.policyReadFunctions.factory({publicClient:e,policyContractAddress:t})},getEntrypoint:()=>{const t=n();return i.policyReadFunctions.getEntrypoint({publicClient:e,policyContractAddress:t})},getMetadataCid:()=>{const t=n();return i.policyReadFunctions.getMetadataCid({publicClient:e,policyContractAddress:t})},getPolicyCid:()=>{const t=n();return i.policyReadFunctions.getPolicyCid({publicClient:e,policyContractAddress:t})},getPolicyConfig:t=>{const o=n();return i.policyReadFunctions.getPolicyConfig({publicClient:e,policyContractAddress:o,...t})},getPolicyData:()=>{const t=n();return i.policyReadFunctions.getPolicyData({publicClient:e,policyContractAddress:t})},getPolicyId:t=>{const o=n();return i.policyReadFunctions.getPolicyId({publicClient:e,policyContractAddress:o,...t})},getSchemaCid:()=>{const t=n();return i.policyReadFunctions.getSchemaCid({publicClient:e,policyContractAddress:t})},isPolicyVerified:()=>{const t=n();return i.policyReadFunctions.isPolicyVerified({publicClient:e,policyContractAddress:t})},metadataCid:()=>{const t=n();return i.policyReadFunctions.metadataCid({publicClient:e,policyContractAddress:t})},owner:()=>{const t=n();return i.policyReadFunctions.owner({publicClient:e,policyContractAddress:t})},policyCid:()=>{const t=n();return i.policyReadFunctions.policyCid({publicClient:e,policyContractAddress:t})},policyData:t=>{const o=n();return i.policyReadFunctions.policyData({publicClient:e,policyContractAddress:o,...t})},schemaCid:()=>{const t=n();return i.policyReadFunctions.schemaCid({publicClient:e,policyContractAddress:t})},supportsInterface:t=>{const o=n();return i.policyReadFunctions.supportsInterface({publicClient:e,policyContractAddress:o,...t})},precomputePolicyId:t=>{const o=n();return i.policyReadFunctions.precomputePolicyId({publicClient:e,policyContractAddress:o,...t})}}};exports.newtonPublicClientActions=A,exports.newtonWalletClientActions=C;
@@ -1 +1 @@
1
- "use strict";var c=require("../../abis/newtonAbi.js"),P=require("../../const.js"),p=require("../../types/task.js"),M=require("../../utils/https.js"),v=require("../../utils/intent.js"),h=require("../../utils/task.js"),i=require("viem"),_=require("viem/accounts"),f=require("viem/chains");const q={[f.sepolia.id]:BigInt(9223883),[f.mainnet.id]:BigInt(23385048)},A=async(t,e,a,g)=>{if(!e.taskId)throw new Error("Newton SDK: waitForTaskResponded requires taskId");const l=i.padHex(e.taskId,{size:32}),T=q[t.chain?.id??1],s=g??T,r=(await t.getContractEvents({address:a,abi:c.NewtonProverTaskManagerAbi,eventName:"TaskResponded",fromBlock:s,toBlock:"latest"})).find(n=>i.padHex(n.args.taskResponse.taskId,{size:32})===l);return r?h.convertLogToTaskResponse(r):new Promise((n,w)=>{let m,u;const d=o=>{m?.(),u&&clearTimeout(u),o&&w(o)};if(e.timeoutMs&&e.timeoutMs>0&&(u=setTimeout(()=>d(new Error("waitForTaskResponded: timeout")),e.timeoutMs)),e.abortSignal){if(e.abortSignal.aborted){d(new Error("waitForTaskResponded: aborted"));return}e.abortSignal.addEventListener("abort",()=>d(new Error("waitForTaskResponded: aborted")),{once:!0})}m=t.watchContractEvent({address:a,abi:c.NewtonProverTaskManagerAbi,eventName:"TaskResponded",onLogs:o=>{for(const b of o)if(i.padHex(b.args.taskResponse.taskId,{size:32})===l){const I=h.convertLogToTaskResponse(b);d(),n(I);return}},onError:o=>{d(o)}})})},y=(t,e,a)=>t.readContract({address:a,abi:c.NewtonProverTaskManagerAbi,functionName:"allTaskHashes",args:[e.taskId]}),F=async(t,e,a,g)=>{const l=await t.readContract({address:a,abi:c.NewtonProverTaskManagerAbi,functionName:"allTaskHashes",args:[e.taskId]});if(!i.hexToBigInt(l))throw new Error(`Failed to retrieve task status for taskId ${e.taskId}`);const T=await t.readContract({address:a,abi:c.NewtonProverTaskManagerAbi,functionName:"allTaskResponses",args:[e.taskId]}),s=!!i.hexToBigInt(T);if(!s)return p.TaskStatus.Created;const r=(await t.getContractEvents({address:a,abi:c.NewtonProverTaskManagerAbi,eventName:"TaskResponded",fromBlock:q[t.chain?.id??1],toBlock:"latest"})).find(u=>i.padHex(u.args.taskResponse.taskId,{size:32})===e.taskId);if(!r)throw new Error(`Failed to retrieve task status for taskId ${e.taskId}`);const n=h.convertLogToTaskResponse(r),w=await t.getBlockNumber();if(n?.responseCertificate?.responseExpireBlock&&w>n.responseCertificate.responseExpireBlock)return p.TaskStatus.AttestationExpired;const m=await t.readContract({address:g,abi:c.AttestationValidatorAbi,functionName:"attestations",args:[e.taskId]});return i.hexToBigInt(m)?s?p.TaskStatus.Responded:p.TaskStatus.Created:p.TaskStatus.AttestationSpent};async function z(t,e,a,g,l,T){const s=t.extend(i.publicActions),r={taskRequestedAtBlock:await s.getBlockNumber()},n=new M.AvsHttpService(!!s?.chain?.testnet,T),{policyClient:w,intentSignature:m,quorumNumber:u,quorumThresholdPercentage:d,wasmArgs:o,timeout:b}=e,I=v.normalizeIntent(e.intent),R=h.getEvaluationRequestHash({policyClient:w,intent:I,intentSignature:m,quorumNumber:u,quorumThresholdPercentage:d,wasmArgs:o,timeout:b}),N=await _.privateKeyToAccount(g).sign({hash:R}),x=v.sanitizeIntentForRequest(e.intent),E={policy_client:e.policyClient,intent:x,intent_signature:e.intentSignature?v.removeHexPrefix(e.intentSignature):null,quorum_number:e.quorumNumber?v.removeHexPrefix(e.quorumNumber):null,quorum_threshold_percentage:e.quorumThresholdPercentage??null,wasm_args:e.wasmArgs?v.removeHexPrefix(e.wasmArgs):null,timeout:e.timeout,signature:N},k=await n.Post(P.GATEWAY_METHODS.createTask,E,l);if(k.error)throw k.error;if(k.result.error)throw new Error(k.result.error);const S=k.result;r.taskId=S.task_id;const B={get taskId(){return r.taskId},waitForTaskResponded:async({timeoutMs:H})=>{const C=r.taskId;return A(s,{taskId:C,timeoutMs:H},a,r.taskRequestedAtBlock)}};return{result:{taskId:k.result.task_id,txHash:k.result.tx_hash},...B}}exports.getTaskResponseHash=y,exports.getTaskStatus=F,exports.submitEvaluationRequest=z,exports.waitForTaskResponded=A;
1
+ "use strict";var l=require("../../abis/newtonAbi.js"),C=require("../../const.js"),p=require("../../types/task.js"),P=require("../../utils/https.js"),v=require("../../utils/intent.js"),b=require("../../utils/task.js"),o=require("viem"),M=require("viem/accounts"),q=require("viem/chains");const R={[q.sepolia.id]:BigInt(9223883),[q.mainnet.id]:BigInt(23385048)},A=async(t,e,a,w)=>{if(!e.taskId)throw new Error("Newton SDK: waitForTaskResponded requires taskId");const m=o.padHex(e.taskId,{size:32}),i=R[t.chain?.id??1],r=w??i,u=(await t.getContractEvents({address:a,abi:l.NewtonProverTaskManagerAbi,eventName:"TaskResponded",fromBlock:r,toBlock:"latest"})).find(s=>o.padHex(s.args.taskResponse.taskId,{size:32})===m);return u?b.convertLogToTaskResponse(u):new Promise((s,T)=>{let g,d;const c=n=>{g?.(),d&&clearTimeout(d),n&&T(n)};if(e.timeoutMs&&e.timeoutMs>0&&(d=setTimeout(()=>c(new Error("waitForTaskResponded: timeout")),e.timeoutMs)),e.abortSignal){if(e.abortSignal.aborted){c(new Error("waitForTaskResponded: aborted"));return}e.abortSignal.addEventListener("abort",()=>c(new Error("waitForTaskResponded: aborted")),{once:!0})}g=t.watchContractEvent({address:a,abi:l.NewtonProverTaskManagerAbi,eventName:"TaskResponded",onLogs:n=>{for(const h of n)if(o.padHex(h.args.taskResponse.taskId,{size:32})===m){const f=b.convertLogToTaskResponse(h);c(),s(f);return}},onError:n=>{c(n)}})})},_=(t,e,a)=>t.readContract({address:a,abi:l.NewtonProverTaskManagerAbi,functionName:"allTaskHashes",args:[e.taskId]}),F=async(t,e,a,w)=>{const m=await t.readContract({address:a,abi:l.NewtonProverTaskManagerAbi,functionName:"allTaskHashes",args:[e.taskId]});if(!o.hexToBigInt(m))throw new Error(`Failed to retrieve task status for taskId ${e.taskId}`);const i=await t.readContract({address:a,abi:l.NewtonProverTaskManagerAbi,functionName:"allTaskResponses",args:[e.taskId]}),r=!!o.hexToBigInt(i);if(!r)return p.TaskStatus.Created;const u=(await t.getContractEvents({address:a,abi:l.NewtonProverTaskManagerAbi,eventName:"TaskResponded",fromBlock:R[t.chain?.id??1],toBlock:"latest"})).find(d=>o.padHex(d.args.taskResponse.taskId,{size:32})===e.taskId);if(!u)throw new Error(`Failed to retrieve task status for taskId ${e.taskId}`);const s=b.convertLogToTaskResponse(u),T=await t.getBlockNumber();if(s?.responseCertificate?.responseExpireBlock&&T>s.responseCertificate.responseExpireBlock)return p.TaskStatus.AttestationExpired;const g=await t.readContract({address:w,abi:l.AttestationValidatorAbi,functionName:"attestations",args:[e.taskId]});return o.hexToBigInt(g)?r?p.TaskStatus.Responded:p.TaskStatus.Created:p.TaskStatus.AttestationSpent};async function y(t,e,a,w,m){const i=t.extend(o.publicActions),r={taskRequestedAtBlock:await i.getBlockNumber()},u=new P.AvsHttpService(!!i?.chain?.testnet,m),{policyClient:s,intentSignature:T,quorumNumber:g,quorumThresholdPercentage:d,wasmArgs:c,timeout:n}=e,h=v.normalizeIntent(e.intent),f=b.getEvaluationRequestHash({policyClient:s,intent:h,intentSignature:T,quorumNumber:g,quorumThresholdPercentage:d,wasmArgs:c,timeout:n}),I=await M.privateKeyToAccount(w).sign({hash:f}),N=v.sanitizeIntentForRequest(e.intent),x={policy_client:e.policyClient,intent:N,intent_signature:e.intentSignature?v.removeHexPrefix(e.intentSignature):null,quorum_number:e.quorumNumber?v.removeHexPrefix(e.quorumNumber):null,quorum_threshold_percentage:e.quorumThresholdPercentage??null,wasm_args:e.wasmArgs?v.removeHexPrefix(e.wasmArgs):null,timeout:e.timeout,request_signature:I},k=await u.Post(C.AVS_METHODS.createTaskAndWait,[x],I);if(k.error)throw k.error;if(k.result.error)throw new Error(k.result.error);const E=k.result;r.taskId=E.task_id;const S={get taskId(){return r.taskId},waitForTaskResponded:async({timeoutMs:B})=>{const H=r.taskId;return A(i,{taskId:H,timeoutMs:B},a,r.taskRequestedAtBlock)}};return{result:{taskId:k.result.task_id,txHash:k.result.tx_hash},...S}}exports.getTaskResponseHash=_,exports.getTaskStatus=F,exports.submitEvaluationRequest=y,exports.waitForTaskResponded=A;
@@ -1 +1 @@
1
- "use strict";var a=require("../const.js"),c=require("./json-rpc.js"),i=Object.defineProperty,o=(t,e,r)=>e in t?i(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,u=(t,e,r)=>o(t,e+"",r);class l{constructor(e,r){u(this,"baseUrl"),this.baseUrl=r||(e?a.TESTNET_GATEWAY_API:a.MAINNET_GATEWAY_API)}async Post(e,r,s){const n=c.createJsonRpcRequestPayload(e,r);return(await fetch(this.baseUrl,{method:"POST",headers:{"Content-Type":"application/json","X-API-Key":s},body:JSON.stringify(n)})).json()}}exports.AvsHttpService=l;
1
+ "use strict";var s=require("../const.js"),n=require("./json-rpc.js"),c=Object.defineProperty,o=(t,e,r)=>e in t?c(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,u=(t,e,r)=>o(t,e+"",r);class l{constructor(e,r){u(this,"baseUrl"),this.baseUrl=r||(e?s.TESTNET_AVS_API:s.MAINNET_AVS_API)}async Post(e,r,a){const i=n.createJsonRpcRequestPayload(e,r);return(await fetch(this.baseUrl,{method:"POST",headers:{"Content-Type":"application/json",...a?{Authorization:`Bearer ${a}`}:{}},body:JSON.stringify(i)})).json()}}exports.AvsHttpService=l;
@@ -1 +1 @@
1
- "use strict";var a=require("viem");const e=t=>t.startsWith("0x")?t.slice(2):t;function o(t){let i;typeof t.value=="bigint"?i=t.value:i=a.hexToBigInt(t.value);let n;return typeof t.chainId=="bigint"?n=t.chainId:typeof t.chainId=="number"?n=BigInt(t.chainId):n=a.hexToBigInt(t.chainId),{...t,value:i,chainId:n}}function r(t){let i;typeof t.value=="bigint"?i=a.toHex(t.value):i=t.value;let n;return typeof t.chainId=="bigint"||typeof t.chainId=="number"?n=a.toHex(t.chainId):n=t.chainId,{from:t.from,to:t.to,value:i,data:t.data,chain_id:n,function_signature:t.functionSignature}}exports.normalizeIntent=o,exports.removeHexPrefix=e,exports.sanitizeIntentForRequest=r;
1
+ "use strict";var a=require("viem");const e=t=>t.startsWith("0x")?t.slice(2):t;function o(t){let i;typeof t.value=="bigint"?i=t.value:i=a.hexToBigInt(t.value);let n;return typeof t.chainId=="bigint"?n=t.chainId:typeof t.chainId=="number"?n=BigInt(t.chainId):n=a.hexToBigInt(t.chainId),{...t,value:i,chainId:n}}function r(t){let i;typeof t.value=="bigint"?i=a.toHex(t.value):i=t.value;let n;return typeof t.chainId=="bigint"||typeof t.chainId=="number"?n=a.toHex(t.chainId):n=t.chainId,{from:t.from,to:t.to,value:i,data:e(t.data),chain_id:n,function_signature:e(t.functionSignature)}}exports.normalizeIntent=o,exports.removeHexPrefix=e,exports.sanitizeIntentForRequest=r;
@@ -1 +1 @@
1
- "use strict";function n(){const e=new Uint8Array(16);crypto.getRandomValues(e),e[6]=e[6]&15|64,e[8]=e[8]&63|128;const t=Array.from(e).map(r=>r.toString(16).padStart(2,"0")).join("");return[t.slice(0,8),t.slice(8,12),t.slice(12,16),t.slice(16,20),t.slice(20,32)].join("-")}function c(e,t){return{jsonrpc:"2.0",id:n(),method:e,params:t}}exports.createJsonRpcRequestPayload=c;
1
+ "use strict";let n=0;function r(){return++n}function a(e,t){return{jsonrpc:"2.0",id:r(),method:e,params:t}}exports.createJsonRpcRequestPayload=a;
package/dist/es/const.js CHANGED
@@ -1 +1 @@
1
- const a="https://gateway-avs.sepolia.newt.foundation/rpc",A="https://gateway-avs.newt.foundation/rpc",T={createTask:"newt_createTask"},e="0xb9758d9d03e6dfb8001cadf63b87ba519a618e13",E="0xc8da20766a6baaa7daeea1be8006f10c0fa4b7a0",_="0x2010dbaa5438801bdc3f08174a799fe344f544ee",t="0x263c275c15867a4611a44c600e77144a23012a06";export{T as GATEWAY_METHODS,t as MAINNET_ATTESTATION_VALIDATOR,A as MAINNET_GATEWAY_API,_ as MAINNET_NEWTON_PROVER_TASK_MANAGER,E as SEPOLIA_ATTESTATION_VALIDATOR,e as SEPOLIA_NEWTON_PROVER_TASK_MANAGER,a as TESTNET_GATEWAY_API};
1
+ const A="https://prover-avs.sepolia.newt.foundation/",a="https://prover-avs.newt.foundation/",T={createTaskAndWait:"newton_createTaskAndWait"},e="0x8cabf24f2ad134e0c25d7dd96cf901e7c430aa57",_="0xe54f46353b7210d7c3cf092034c1dc76fcba0a83",c="0x2010dbaa5438801bdc3f08174a799fe344f544ee",E="0x263c275c15867a4611a44c600e77144a23012a06";export{T as AVS_METHODS,E as MAINNET_ATTESTATION_VALIDATOR,a as MAINNET_AVS_API,c as MAINNET_NEWTON_PROVER_TASK_MANAGER,_ as SEPOLIA_ATTESTATION_VALIDATOR,e as SEPOLIA_NEWTON_PROVER_TASK_MANAGER,A as TESTNET_AVS_API};
package/dist/es/index.js CHANGED
@@ -1 +1 @@
1
- import{mainnet as C,sepolia as y}from"viem/chains";import{getTaskStatus as m,getTaskResponseHash as h,waitForTaskResponded as E,submitEvaluationRequest as T}from"./modules/avs/index.js";import{policyReadFunctions as e,policyWriteFunctions as u}from"./modules/policy/index.js";import{SEPOLIA_NEWTON_PROVER_TASK_MANAGER as A,MAINNET_NEWTON_PROVER_TASK_MANAGER as w,SEPOLIA_ATTESTATION_VALIDATOR as b,MAINNET_ATTESTATION_VALIDATOR as g}from"./const.js";const f=(d,s)=>i=>{const{developerPk:l,apiKey:n,policyContractAddress:c}=d,a=()=>{if(c)return c;throw new Error('Newton SDK: policyContractAddress is required. Ensure you instantiate viem client actions extension with policyContractAddress parameter. Example: newtonWalletClientActions({ policyContractAddress: "0x123..." })')};if(i?.chain?.id!==C.id&&i?.chain?.id!==y.id)throw new Error("Newton SDK: Invalid network specified for newtonWalletClientActions. Only mainnet and sepolia are supported");const t=s?.taskManagerAddress??(i?.chain?.testnet?A:w),r=s?.gatewayApiUrl??void 0;return{submitEvaluationRequest:o=>T(i,o,t,l,n,r),initialize:o=>{const p=a();return u.initialize({walletClient:i,policyContractAddress:p,...o})},renounceOwnership:()=>{const o=a();return u.renounceOwnership({walletClient:i,policyContractAddress:o})},transferOwnership:o=>{const p=a();return u.transferOwnership({walletClient:i,policyContractAddress:p,...o})}}},P=(d,s)=>i=>{if(i?.chain?.id!==C.id&&i?.chain?.id!==y.id)throw new Error("Newton SDK: Invalid network specified for newtonPublicActions. Only mainnet and sepolia are supported");const l=d?.policyContractAddress,n=()=>{if(!l)throw new Error('Newton SDK: policyContractAddress is required. Ensure you instantiate viem client actions extension with policyContractAddress parameter. Example: newtonPublicClientActions({ policyContractAddress: "0x123..." })');return l},c=s?.taskManagerAddress??(i?.chain?.testnet?A:w),a=s?.attestationValidatorAddress??(i?.chain?.testnet?b:g);return{waitForTaskResponded:t=>E(i,t,c),getTaskResponseHash:t=>h(i,t,c),getTaskStatus:t=>m(i,t,c,a),clientToPolicyId:t=>{const r=n();return e.clientToPolicyId({publicClient:i,policyContractAddress:r,...t})},entrypoint:()=>{const t=n();return e.entrypoint({publicClient:i,policyContractAddress:t})},factory:()=>{const t=n();return e.factory({publicClient:i,policyContractAddress:t})},getEntrypoint:()=>{const t=n();return e.getEntrypoint({publicClient:i,policyContractAddress:t})},getMetadataCid:()=>{const t=n();return e.getMetadataCid({publicClient:i,policyContractAddress:t})},getPolicyCid:()=>{const t=n();return e.getPolicyCid({publicClient:i,policyContractAddress:t})},getPolicyConfig:t=>{const r=n();return e.getPolicyConfig({publicClient:i,policyContractAddress:r,...t})},getPolicyData:()=>{const t=n();return e.getPolicyData({publicClient:i,policyContractAddress:t})},getPolicyId:t=>{const r=n();return e.getPolicyId({publicClient:i,policyContractAddress:r,...t})},getSchemaCid:()=>{const t=n();return e.getSchemaCid({publicClient:i,policyContractAddress:t})},isPolicyVerified:()=>{const t=n();return e.isPolicyVerified({publicClient:i,policyContractAddress:t})},metadataCid:()=>{const t=n();return e.metadataCid({publicClient:i,policyContractAddress:t})},owner:()=>{const t=n();return e.owner({publicClient:i,policyContractAddress:t})},policyCid:()=>{const t=n();return e.policyCid({publicClient:i,policyContractAddress:t})},policyData:t=>{const r=n();return e.policyData({publicClient:i,policyContractAddress:r,...t})},schemaCid:()=>{const t=n();return e.schemaCid({publicClient:i,policyContractAddress:t})},supportsInterface:t=>{const r=n();return e.supportsInterface({publicClient:i,policyContractAddress:r,...t})},precomputePolicyId:t=>{const r=n();return e.precomputePolicyId({publicClient:i,policyContractAddress:r,...t})}}};export{P as newtonPublicClientActions,f as newtonWalletClientActions};
1
+ import{mainnet as u,sepolia as C}from"viem/chains";import{getTaskStatus as w,getTaskResponseHash as m,waitForTaskResponded as h,submitEvaluationRequest as E}from"./modules/avs/index.js";import{policyReadFunctions as o,policyWriteFunctions as p}from"./modules/policy/index.js";import{SEPOLIA_NEWTON_PROVER_TASK_MANAGER as y,MAINNET_NEWTON_PROVER_TASK_MANAGER as A,SEPOLIA_ATTESTATION_VALIDATOR as T,MAINNET_ATTESTATION_VALIDATOR as b}from"./const.js";const f=(a,c)=>e=>{const{developerPk:r,policyContractAddress:n}=a,s=()=>{if(n)return n;throw new Error('Newton SDK: policyContractAddress is required. Ensure you instantiate viem client actions extension with policyContractAddress parameter. Example: newtonWalletClientActions({ policyContractAddress: "0x123..." })')};if(e?.chain?.id!==u.id&&e?.chain?.id!==C.id)throw new Error("Newton SDK: Invalid network specified for newtonWalletClientActions. Only mainnet and sepolia are supported");const l=c?.taskManagerAddress??(e?.chain?.testnet?y:A),t=c?.proverApiUrl??void 0;return{submitEvaluationRequest:i=>E(e,i,l,r,t),initialize:i=>{const d=s();return p.initialize({walletClient:e,policyContractAddress:d,...i})},renounceOwnership:()=>{const i=s();return p.renounceOwnership({walletClient:e,policyContractAddress:i})},transferOwnership:i=>{const d=s();return p.transferOwnership({walletClient:e,policyContractAddress:d,...i})}}},g=(a,c)=>e=>{if(e?.chain?.id!==u.id&&e?.chain?.id!==C.id)throw new Error("Newton SDK: Invalid network specified for newtonPublicActions. Only mainnet and sepolia are supported");const r=a?.policyContractAddress,n=()=>{if(!r)throw new Error('Newton SDK: policyContractAddress is required. Ensure you instantiate viem client actions extension with policyContractAddress parameter. Example: newtonPublicClientActions({ policyContractAddress: "0x123..." })');return r},s=c?.taskManagerAddress??(e?.chain?.testnet?y:A),l=c?.attestationValidatorAddress??(e?.chain?.testnet?T:b);return{waitForTaskResponded:t=>h(e,t,s),getTaskResponseHash:t=>m(e,t,s),getTaskStatus:t=>w(e,t,s,l),clientToPolicyId:t=>{const i=n();return o.clientToPolicyId({publicClient:e,policyContractAddress:i,...t})},entrypoint:()=>{const t=n();return o.entrypoint({publicClient:e,policyContractAddress:t})},factory:()=>{const t=n();return o.factory({publicClient:e,policyContractAddress:t})},getEntrypoint:()=>{const t=n();return o.getEntrypoint({publicClient:e,policyContractAddress:t})},getMetadataCid:()=>{const t=n();return o.getMetadataCid({publicClient:e,policyContractAddress:t})},getPolicyCid:()=>{const t=n();return o.getPolicyCid({publicClient:e,policyContractAddress:t})},getPolicyConfig:t=>{const i=n();return o.getPolicyConfig({publicClient:e,policyContractAddress:i,...t})},getPolicyData:()=>{const t=n();return o.getPolicyData({publicClient:e,policyContractAddress:t})},getPolicyId:t=>{const i=n();return o.getPolicyId({publicClient:e,policyContractAddress:i,...t})},getSchemaCid:()=>{const t=n();return o.getSchemaCid({publicClient:e,policyContractAddress:t})},isPolicyVerified:()=>{const t=n();return o.isPolicyVerified({publicClient:e,policyContractAddress:t})},metadataCid:()=>{const t=n();return o.metadataCid({publicClient:e,policyContractAddress:t})},owner:()=>{const t=n();return o.owner({publicClient:e,policyContractAddress:t})},policyCid:()=>{const t=n();return o.policyCid({publicClient:e,policyContractAddress:t})},policyData:t=>{const i=n();return o.policyData({publicClient:e,policyContractAddress:i,...t})},schemaCid:()=>{const t=n();return o.schemaCid({publicClient:e,policyContractAddress:t})},supportsInterface:t=>{const i=n();return o.supportsInterface({publicClient:e,policyContractAddress:i,...t})},precomputePolicyId:t=>{const i=n();return o.precomputePolicyId({publicClient:e,policyContractAddress:i,...t})}}};export{g as newtonPublicClientActions,f as newtonWalletClientActions};
@@ -1 +1 @@
1
- import{NewtonProverTaskManagerAbi as k,AttestationValidatorAbi as H}from"../../abis/newtonAbi.js";import{GATEWAY_METHODS as y}from"../../const.js";import{TaskStatus as w}from"../../types/task.js";import{AvsHttpService as F}from"../../utils/https.js";import{normalizeIntent as M,sanitizeIntentForRequest as P,removeHexPrefix as I}from"../../utils/intent.js";import{convertLogToTaskResponse as b,getEvaluationRequestHash as z}from"../../utils/task.js";import{hexToBigInt as R,padHex as T,publicActions as L}from"viem";import{privateKeyToAccount as D}from"viem/accounts";import{mainnet as G,sepolia as K}from"viem/chains";const E={[K.id]:BigInt(9223883),[G.id]:BigInt(23385048)},v=async(e,t,r,l)=>{if(!t.taskId)throw new Error("Newton SDK: waitForTaskResponded requires taskId");const m=T(t.taskId,{size:32}),p=E[e.chain?.id??1],s=l??p,a=(await e.getContractEvents({address:r,abi:k,eventName:"TaskResponded",fromBlock:s,toBlock:"latest"})).find(o=>T(o.args.taskResponse.taskId,{size:32})===m);return a?b(a):new Promise((o,g)=>{let c,i;const d=n=>{c?.(),i&&clearTimeout(i),n&&g(n)};if(t.timeoutMs&&t.timeoutMs>0&&(i=setTimeout(()=>d(new Error("waitForTaskResponded: timeout")),t.timeoutMs)),t.abortSignal){if(t.abortSignal.aborted){d(new Error("waitForTaskResponded: aborted"));return}t.abortSignal.addEventListener("abort",()=>d(new Error("waitForTaskResponded: aborted")),{once:!0})}c=e.watchContractEvent({address:r,abi:k,eventName:"TaskResponded",onLogs:n=>{for(const f of n)if(T(f.args.taskResponse.taskId,{size:32})===m){const h=b(f);d(),o(h);return}},onError:n=>{d(n)}})})},O=(e,t,r)=>e.readContract({address:r,abi:k,functionName:"allTaskHashes",args:[t.taskId]}),V=async(e,t,r,l)=>{const m=await e.readContract({address:r,abi:k,functionName:"allTaskHashes",args:[t.taskId]});if(!R(m))throw new Error(`Failed to retrieve task status for taskId ${t.taskId}`);const p=await e.readContract({address:r,abi:k,functionName:"allTaskResponses",args:[t.taskId]}),s=!!R(p);if(!s)return w.Created;const a=(await e.getContractEvents({address:r,abi:k,eventName:"TaskResponded",fromBlock:E[e.chain?.id??1],toBlock:"latest"})).find(i=>T(i.args.taskResponse.taskId,{size:32})===t.taskId);if(!a)throw new Error(`Failed to retrieve task status for taskId ${t.taskId}`);const o=b(a),g=await e.getBlockNumber();if(o?.responseCertificate?.responseExpireBlock&&g>o.responseCertificate.responseExpireBlock)return w.AttestationExpired;const c=await e.readContract({address:l,abi:H,functionName:"attestations",args:[t.taskId]});return R(c)?s?w.Responded:w.Created:w.AttestationSpent};async function $(e,t,r,l,m,p){const s=e.extend(L),a={taskRequestedAtBlock:await s.getBlockNumber()},o=new F(!!s?.chain?.testnet,p),{policyClient:g,intentSignature:c,quorumNumber:i,quorumThresholdPercentage:d,wasmArgs:n,timeout:f}=t,h=M(t.intent),A=z({policyClient:g,intent:h,intentSignature:c,quorumNumber:i,quorumThresholdPercentage:d,wasmArgs:n,timeout:f}),q=await D(l).sign({hash:A}),N=P(t.intent),B={policy_client:t.policyClient,intent:N,intent_signature:t.intentSignature?I(t.intentSignature):null,quorum_number:t.quorumNumber?I(t.quorumNumber):null,quorum_threshold_percentage:t.quorumThresholdPercentage??null,wasm_args:t.wasmArgs?I(t.wasmArgs):null,timeout:t.timeout,signature:q},u=await o.Post(y.createTask,B,m);if(u.error)throw u.error;if(u.result.error)throw new Error(u.result.error);const C=u.result;a.taskId=C.task_id;const S={get taskId(){return a.taskId},waitForTaskResponded:async({timeoutMs:x})=>{const _=a.taskId;return v(s,{taskId:_,timeoutMs:x},r,a.taskRequestedAtBlock)}};return{result:{taskId:u.result.task_id,txHash:u.result.tx_hash},...S}}export{O as getTaskResponseHash,V as getTaskStatus,$ as submitEvaluationRequest,v as waitForTaskResponded};
1
+ import{NewtonProverTaskManagerAbi as l,AttestationValidatorAbi as _}from"../../abis/newtonAbi.js";import{AVS_METHODS as F}from"../../const.js";import{TaskStatus as w}from"../../types/task.js";import{AvsHttpService as H}from"../../utils/https.js";import{normalizeIntent as y,sanitizeIntentForRequest as M,removeHexPrefix as I}from"../../utils/intent.js";import{convertLogToTaskResponse as b,getEvaluationRequestHash as P}from"../../utils/task.js";import{hexToBigInt as R,padHex as h,publicActions as z}from"viem";import{privateKeyToAccount as L}from"viem/accounts";import{mainnet as $,sepolia as D}from"viem/chains";const q={[D.id]:BigInt(9223883),[$.id]:BigInt(23385048)},v=async(e,t,r,p)=>{if(!t.taskId)throw new Error("Newton SDK: waitForTaskResponded requires taskId");const c=h(t.taskId,{size:32}),n=q[e.chain?.id??1],a=p??n,i=(await e.getContractEvents({address:r,abi:l,eventName:"TaskResponded",fromBlock:a,toBlock:"latest"})).find(s=>h(s.args.taskResponse.taskId,{size:32})===c);return i?b(i):new Promise((s,g)=>{let k,d;const u=o=>{k?.(),d&&clearTimeout(d),o&&g(o)};if(t.timeoutMs&&t.timeoutMs>0&&(d=setTimeout(()=>u(new Error("waitForTaskResponded: timeout")),t.timeoutMs)),t.abortSignal){if(t.abortSignal.aborted){u(new Error("waitForTaskResponded: aborted"));return}t.abortSignal.addEventListener("abort",()=>u(new Error("waitForTaskResponded: aborted")),{once:!0})}k=e.watchContractEvent({address:r,abi:l,eventName:"TaskResponded",onLogs:o=>{for(const f of o)if(h(f.args.taskResponse.taskId,{size:32})===c){const T=b(f);u(),s(T);return}},onError:o=>{u(o)}})})},K=(e,t,r)=>e.readContract({address:r,abi:l,functionName:"allTaskHashes",args:[t.taskId]}),O=async(e,t,r,p)=>{const c=await e.readContract({address:r,abi:l,functionName:"allTaskHashes",args:[t.taskId]});if(!R(c))throw new Error(`Failed to retrieve task status for taskId ${t.taskId}`);const n=await e.readContract({address:r,abi:l,functionName:"allTaskResponses",args:[t.taskId]}),a=!!R(n);if(!a)return w.Created;const i=(await e.getContractEvents({address:r,abi:l,eventName:"TaskResponded",fromBlock:q[e.chain?.id??1],toBlock:"latest"})).find(d=>h(d.args.taskResponse.taskId,{size:32})===t.taskId);if(!i)throw new Error(`Failed to retrieve task status for taskId ${t.taskId}`);const s=b(i),g=await e.getBlockNumber();if(s?.responseCertificate?.responseExpireBlock&&g>s.responseCertificate.responseExpireBlock)return w.AttestationExpired;const k=await e.readContract({address:p,abi:_,functionName:"attestations",args:[t.taskId]});return R(k)?a?w.Responded:w.Created:w.AttestationSpent};async function V(e,t,r,p,c){const n=e.extend(z),a={taskRequestedAtBlock:await n.getBlockNumber()},i=new H(!!n?.chain?.testnet,c),{policyClient:s,intentSignature:g,quorumNumber:k,quorumThresholdPercentage:d,wasmArgs:u,timeout:o}=t,f=y(t.intent),T=P({policyClient:s,intent:f,intentSignature:g,quorumNumber:k,quorumThresholdPercentage:d,wasmArgs:u,timeout:o}),E=await L(p).sign({hash:T}),A=M(t.intent),N={policy_client:t.policyClient,intent:A,intent_signature:t.intentSignature?I(t.intentSignature):null,quorum_number:t.quorumNumber?I(t.quorumNumber):null,quorum_threshold_percentage:t.quorumThresholdPercentage??null,wasm_args:t.wasmArgs?I(t.wasmArgs):null,timeout:t.timeout,request_signature:E},m=await i.Post(F.createTaskAndWait,[N],E);if(m.error)throw m.error;if(m.result.error)throw new Error(m.result.error);const C=m.result;a.taskId=C.task_id;const S={get taskId(){return a.taskId},waitForTaskResponded:async({timeoutMs:B})=>{const x=a.taskId;return v(n,{taskId:x,timeoutMs:B},r,a.taskRequestedAtBlock)}};return{result:{taskId:m.result.task_id,txHash:m.result.tx_hash},...S}}export{K as getTaskResponseHash,O as getTaskStatus,V as submitEvaluationRequest,v as waitForTaskResponded};
@@ -1 +1 @@
1
- import{TESTNET_GATEWAY_API as s,MAINNET_GATEWAY_API as n}from"../const.js";import{createJsonRpcRequestPayload as i}from"./json-rpc.js";var c=Object.defineProperty,l=(t,e,r)=>e in t?c(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,p=(t,e,r)=>l(t,e+"",r);class u{constructor(e,r){p(this,"baseUrl"),this.baseUrl=r||(e?s:n)}async Post(e,r,a){const o=i(e,r);return(await fetch(this.baseUrl,{method:"POST",headers:{"Content-Type":"application/json","X-API-Key":a},body:JSON.stringify(o)})).json()}}export{u as AvsHttpService};
1
+ import{TESTNET_AVS_API as s,MAINNET_AVS_API as i}from"../const.js";import{createJsonRpcRequestPayload as n}from"./json-rpc.js";var c=Object.defineProperty,l=(t,r,e)=>r in t?c(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,u=(t,r,e)=>l(t,r+"",e);class p{constructor(r,e){u(this,"baseUrl"),this.baseUrl=e||(r?s:i)}async Post(r,e,a){const o=n(r,e);return(await fetch(this.baseUrl,{method:"POST",headers:{"Content-Type":"application/json",...a?{Authorization:`Bearer ${a}`}:{}},body:JSON.stringify(o)})).json()}}export{p as AvsHttpService};
@@ -1 +1 @@
1
- import{hexToBigInt as o,toHex as a}from"viem";const u=t=>t.startsWith("0x")?t.slice(2):t;function c(t){let i;typeof t.value=="bigint"?i=t.value:i=o(t.value);let n;return typeof t.chainId=="bigint"?n=t.chainId:typeof t.chainId=="number"?n=BigInt(t.chainId):n=o(t.chainId),{...t,value:i,chainId:n}}function r(t){let i;typeof t.value=="bigint"?i=a(t.value):i=t.value;let n;return typeof t.chainId=="bigint"?n=a(t.chainId):typeof t.chainId=="number"?n=a(t.chainId):n=t.chainId,{from:t.from,to:t.to,value:i,data:t.data,chain_id:n,function_signature:t.functionSignature}}export{c as normalizeIntent,u as removeHexPrefix,r as sanitizeIntentForRequest};
1
+ import{hexToBigInt as u,toHex as a}from"viem";const o=t=>t.startsWith("0x")?t.slice(2):t;function c(t){let i;typeof t.value=="bigint"?i=t.value:i=u(t.value);let n;return typeof t.chainId=="bigint"?n=t.chainId:typeof t.chainId=="number"?n=BigInt(t.chainId):n=u(t.chainId),{...t,value:i,chainId:n}}function r(t){let i;typeof t.value=="bigint"?i=a(t.value):i=t.value;let n;return typeof t.chainId=="bigint"?n=a(t.chainId):typeof t.chainId=="number"?n=a(t.chainId):n=t.chainId,{from:t.from,to:t.to,value:i,data:o(t.data),chain_id:n,function_signature:o(t.functionSignature)}}export{c as normalizeIntent,o as removeHexPrefix,r as sanitizeIntentForRequest};
@@ -1 +1 @@
1
- function n(){const t=new Uint8Array(16);crypto.getRandomValues(t),t[6]=t[6]&15|64,t[8]=t[8]&63|128;const e=Array.from(t).map(r=>r.toString(16).padStart(2,"0")).join("");return[e.slice(0,8),e.slice(8,12),e.slice(12,16),e.slice(16,20),e.slice(20,32)].join("-")}function o(t,e){return{jsonrpc:"2.0",id:n(),method:t,params:e}}export{o as createJsonRpcRequestPayload};
1
+ let r=0;function t(){return++r}function o(e,n){return{jsonrpc:"2.0",id:t(),method:e,params:n}}export{o as createJsonRpcRequestPayload};
@@ -1,9 +1,11 @@
1
- export declare const TESTNET_GATEWAY_API = "https://gateway-avs.sepolia.newt.foundation/rpc";
2
- export declare const MAINNET_GATEWAY_API = "https://gateway-avs.newt.foundation/rpc";
3
- export declare const GATEWAY_METHODS: {
1
+ export declare const TESTNET_AVS_API = "https://prover-avs.sepolia.newt.foundation/";
2
+ export declare const MAINNET_AVS_API = "https://prover-avs.newt.foundation/";
3
+ export declare const AVS_METHODS: {
4
4
  createTask: string;
5
+ waitForTaskId: string;
6
+ createTaskAndWait: string;
5
7
  };
6
- export declare const SEPOLIA_NEWTON_PROVER_TASK_MANAGER = "0xb9758d9d03e6dfb8001cadf63b87ba519a618e13";
7
- export declare const SEPOLIA_ATTESTATION_VALIDATOR = "0xc8da20766a6baaa7daeea1be8006f10c0fa4b7a0";
8
+ export declare const SEPOLIA_NEWTON_PROVER_TASK_MANAGER = "0x8cabf24f2ad134e0c25d7dd96cf901e7c430aa57";
9
+ export declare const SEPOLIA_ATTESTATION_VALIDATOR = "0xe54f46353b7210d7c3cf092034c1dc76fcba0a83";
8
10
  export declare const MAINNET_NEWTON_PROVER_TASK_MANAGER = "0x2010dbaa5438801bdc3f08174a799fe344f544ee";
9
11
  export declare const MAINNET_ATTESTATION_VALIDATOR = "0x263c275c15867a4611a44c600e77144a23012a06";
@@ -2,13 +2,12 @@ import { Address, Hex } from 'viem';
2
2
  import { SubmitEvaluationRequestParams, TaskId, TaskResponseResult, TaskStatus } from './types/task';
3
3
  import { PendingTaskBuilder } from './modules/avs';
4
4
  interface SdkOverrides {
5
- gatewayApiUrl?: string;
5
+ proverApiUrl?: string;
6
6
  taskManagerAddress?: Address;
7
7
  attestationValidatorAddress?: Address;
8
8
  }
9
9
  declare const newtonWalletClientActions: (config: {
10
10
  developerPk: Hex;
11
- apiKey: string;
12
11
  policyContractAddress?: Address;
13
12
  }, overrides?: SdkOverrides) => (walletClient: any) => {
14
13
  submitEvaluationRequest: (args: SubmitEvaluationRequestParams) => Promise<{
@@ -1,12 +1,14 @@
1
1
  import { SubmitEvaluationRequestParams, TaskId, TaskResponseResult, TaskStatus } from '../../types/task';
2
2
  import { PublicClient as Client, WalletClient, Hex, Address } from 'viem';
3
- export interface CreateTaskResult {
3
+ export interface WaitForTaskIdResult {
4
4
  task_id: Hex;
5
5
  task_request: any;
6
6
  status: 'Completed' | 'Failed';
7
- aggregation_response: any;
8
- timestamp: number;
7
+ result: {
8
+ tx_hash: Hex;
9
+ };
9
10
  error?: unknown;
11
+ processing_time_ms?: number;
10
12
  }
11
13
  export interface PendingTaskBuilder {
12
14
  readonly taskId?: TaskId;
@@ -25,7 +27,7 @@ declare const getTaskResponseHash: (publicClient: Client, args: {
25
27
  declare const getTaskStatus: (publicClient: Client, args: {
26
28
  taskId: TaskId;
27
29
  }, taskManagerAddress: Address, attestationValidatorAddress: Address) => Promise<TaskStatus>;
28
- declare function submitEvaluationRequest(walletClient: WalletClient, args: SubmitEvaluationRequestParams, taskManagerAddress: Address, developerPk: Hex, apiKey: string, gatewayApiUrl?: string): Promise<{
30
+ declare function submitEvaluationRequest(walletClient: WalletClient, args: SubmitEvaluationRequestParams, taskManagerAddress: Address, developerPk: Hex, proverApiUrl?: string): Promise<{
29
31
  result: {
30
32
  taskId: Hex;
31
33
  txHash: Hex;
@@ -1,5 +1,5 @@
1
1
  export declare class AvsHttpService {
2
2
  private baseUrl;
3
3
  constructor(testMode: boolean, urlOverride?: string);
4
- Post(method: string, args: unknown, apiKey: string): Promise<any>;
4
+ Post(method: string, args: unknown, authorization?: string): Promise<any>;
5
5
  }
@@ -1,6 +1,6 @@
1
1
  export declare function createJsonRpcRequestPayload(method: string, params: any): {
2
2
  jsonrpc: string;
3
- id: string;
3
+ id: number;
4
4
  method: string;
5
5
  params: any;
6
6
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@magicnewton/newton-protocol-sdk",
3
- "version": "0.2.11--canary.91.20273429901.0",
3
+ "version": "0.2.11--canary.94.20375236815.0",
4
4
  "description": "Official SDK for the Newton Protocol.",
5
5
  "author": "Newton Foundation <https://x.com/newtfoundation> (https://newton.foundation)",
6
6
  "private": false,