@netlify/agent-runner-cli 1.142.1-test.7 → 1.142.1-test.9
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/bin-local.js +67 -67
- package/dist/bin.js +18 -18
- package/dist/index.js +78 -78
- package/package.json +1 -1
package/dist/bin.js
CHANGED
|
@@ -334,7 +334,7 @@ ${o}`,ajv:c.ajv};let l=new Function("validator","serializer",o);return e.mode===
|
|
|
334
334
|
} else {
|
|
335
335
|
`),n.const!==void 0?i+=mQe(e,r):Array.isArray(s)?i+=pQe(t,e,r):i+=yle(t,e,r),o&&(i+=`
|
|
336
336
|
}
|
|
337
|
-
`),i}om.exports=g2;om.exports.default=g2;om.exports.build=g2;om.exports.validLargeArrayMechanisms=mle;om.exports.restore=function({code:t,validator:e,serializer:r}){return Function.apply(null,["validator","serializer",t]).apply(null,[e,r])}});var ble=E((CGt,YA)=>{"use strict";var SQe=Sle();function Ele(){return function(e,r){let n=Object.assign({},r,{schema:e});return EQe.bind(null,n)}}function EQe(t,{schema:e}){return t.schema&&e.$id&&t.schema[e.$id]&&(t.schema={...t.schema},delete t.schema[e.$id]),SQe(e,t)}function vle(t={readMode:!0}){if(t.readMode===!0&&typeof t.restoreFunction!="function")throw new Error("You must provide a function for the restoreFunction-option when readMode ON");if(t.readMode!==!0&&typeof t.storeFunction!="function")throw new Error("You must provide a function for the storeFunction-option when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=Ele();return function(n,i={}){i.mode="standalone";let s=e(n,i);return function(o){let a=s(o);return t.storeFunction(o,a),new Function(a)}}}YA.exports.SerializerSelector=Ele;YA.exports.StandaloneSerializer=vle;YA.exports.default=vle});var Tle=E((NGt,VE)=>{"use strict";var{SerializerSelector:_2,StandaloneSerializer:vQe}=ble();VE.exports=_2;VE.exports.default=_2;VE.exports.SerializerSelector=_2;VE.exports.StandaloneSerializer=vQe});var y2=E((kGt,wle)=>{"use strict";var{buildSchemas:bQe}=GS();function TQe(t,e){if(t)return new am(t,e);let r=Object.assign({buildValidator:null,buildSerializer:null},e?.compilersFactory);if(!r.buildValidator){let i=e2();r.buildValidator=i()}if(!r.buildSerializer){let i=Tle();r.buildSerializer=i()}let n={bucket:e&&e.bucket||bQe,compilersFactory:r,isCustomValidatorCompiler:typeof e?.compilersFactory?.buildValidator=="function",isCustomSerializerCompiler:typeof e?.compilersFactory?.buildValidator=="function"};return new am(void 0,n)}var am=class{constructor(e,r){this.opts=r||e?.opts,this.addedSchemas=!1,this.compilersFactory=this.opts.compilersFactory,e?(this.schemaBucket=this.opts.bucket(e.getSchemas()),this.validatorCompiler=e.getValidatorCompiler(),this.serializerCompiler=e.getSerializerCompiler(),this.isCustomValidatorCompiler=e.isCustomValidatorCompiler,this.isCustomSerializerCompiler=e.isCustomSerializerCompiler,this.parent=e):(this.schemaBucket=this.opts.bucket(),this.isCustomValidatorCompiler=this.opts.isCustomValidatorCompiler||!1,this.isCustomSerializerCompiler=this.opts.isCustomSerializerCompiler||!1)}add(e){return this.addedSchemas=!0,this.schemaBucket.add(e)}getSchema(e){return this.schemaBucket.getSchema(e)}getSchemas(){return this.schemaBucket.getSchemas()}setValidatorCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildValidator:()=>e}),this.validatorCompiler=e,this.isCustomValidatorCompiler=!0}setSerializerCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildSerializer:()=>e}),this.serializerCompiler=e,this.isCustomSerializerCompiler=!0}getValidatorCompiler(){return this.validatorCompiler||this.parent&&this.parent.getValidatorCompiler()}getSerializerCompiler(){return this.serializerCompiler||this.parent&&this.parent.getSerializerCompiler()}getSerializerBuilder(){return this.compilersFactory.buildSerializer||this.parent&&this.parent.getSerializerBuilder()}getValidatorBuilder(){return this.compilersFactory.buildValidator||this.parent&&this.parent.getValidatorBuilder()}setupValidator(e){this.validatorCompiler!==void 0&&!this.addedSchemas||(this.validatorCompiler=this.getValidatorBuilder()(this.schemaBucket.getSchemas(),e.ajv))}setupSerializer(e){this.serializerCompiler!==void 0&&!this.addedSchemas||(this.serializerCompiler=this.getSerializerBuilder()(this.schemaBucket.getSchemas(),e.serializerOpts))}};am.buildSchemaController=TQe;wle.exports=am});var cm=E(($Gt,Rle)=>{"use strict";var wQe="2.0.0",RQe=Number.MAX_SAFE_INTEGER||9007199254740991,AQe=16,xQe=250,IQe=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Rle.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:AQe,MAX_SAFE_BUILD_LENGTH:xQe,MAX_SAFE_INTEGER:RQe,RELEASE_TYPES:IQe,SEMVER_SPEC_VERSION:wQe,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var HE=E((LGt,Ale)=>{"use strict";var PQe=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};Ale.exports=PQe});var lm=E((zo,xle)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:S2,MAX_SAFE_BUILD_LENGTH:OQe,MAX_LENGTH:CQe}=cm(),NQe=HE();zo=xle.exports={};var kQe=zo.re=[],$Qe=zo.safeRe=[],Ie=zo.src=[],LQe=zo.safeSrc=[],Pe=zo.t={},DQe=0,E2="[a-zA-Z0-9-]",MQe=[["\\s",1],["\\d",CQe],[E2,OQe]],UQe=t=>{for(let[e,r]of MQe)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},We=(t,e,r)=>{let n=UQe(e),i=DQe++;NQe(t,i,e),Pe[t]=i,Ie[i]=e,LQe[i]=n,kQe[i]=new RegExp(e,r?"g":void 0),$Qe[i]=new RegExp(n,r?"g":void 0)};We("NUMERICIDENTIFIER","0|[1-9]\\d*");We("NUMERICIDENTIFIERLOOSE","\\d+");We("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${E2}*`);We("MAINVERSION",`(${Ie[Pe.NUMERICIDENTIFIER]})\\.(${Ie[Pe.NUMERICIDENTIFIER]})\\.(${Ie[Pe.NUMERICIDENTIFIER]})`);We("MAINVERSIONLOOSE",`(${Ie[Pe.NUMERICIDENTIFIERLOOSE]})\\.(${Ie[Pe.NUMERICIDENTIFIERLOOSE]})\\.(${Ie[Pe.NUMERICIDENTIFIERLOOSE]})`);We("PRERELEASEIDENTIFIER",`(?:${Ie[Pe.NONNUMERICIDENTIFIER]}|${Ie[Pe.NUMERICIDENTIFIER]})`);We("PRERELEASEIDENTIFIERLOOSE",`(?:${Ie[Pe.NONNUMERICIDENTIFIER]}|${Ie[Pe.NUMERICIDENTIFIERLOOSE]})`);We("PRERELEASE",`(?:-(${Ie[Pe.PRERELEASEIDENTIFIER]}(?:\\.${Ie[Pe.PRERELEASEIDENTIFIER]})*))`);We("PRERELEASELOOSE",`(?:-?(${Ie[Pe.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${Ie[Pe.PRERELEASEIDENTIFIERLOOSE]})*))`);We("BUILDIDENTIFIER",`${E2}+`);We("BUILD",`(?:\\+(${Ie[Pe.BUILDIDENTIFIER]}(?:\\.${Ie[Pe.BUILDIDENTIFIER]})*))`);We("FULLPLAIN",`v?${Ie[Pe.MAINVERSION]}${Ie[Pe.PRERELEASE]}?${Ie[Pe.BUILD]}?`);We("FULL",`^${Ie[Pe.FULLPLAIN]}$`);We("LOOSEPLAIN",`[v=\\s]*${Ie[Pe.MAINVERSIONLOOSE]}${Ie[Pe.PRERELEASELOOSE]}?${Ie[Pe.BUILD]}?`);We("LOOSE",`^${Ie[Pe.LOOSEPLAIN]}$`);We("GTLT","((?:<|>)?=?)");We("XRANGEIDENTIFIERLOOSE",`${Ie[Pe.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);We("XRANGEIDENTIFIER",`${Ie[Pe.NUMERICIDENTIFIER]}|x|X|\\*`);We("XRANGEPLAIN",`[v=\\s]*(${Ie[Pe.XRANGEIDENTIFIER]})(?:\\.(${Ie[Pe.XRANGEIDENTIFIER]})(?:\\.(${Ie[Pe.XRANGEIDENTIFIER]})(?:${Ie[Pe.PRERELEASE]})?${Ie[Pe.BUILD]}?)?)?`);We("XRANGEPLAINLOOSE",`[v=\\s]*(${Ie[Pe.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Ie[Pe.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Ie[Pe.XRANGEIDENTIFIERLOOSE]})(?:${Ie[Pe.PRERELEASELOOSE]})?${Ie[Pe.BUILD]}?)?)?`);We("XRANGE",`^${Ie[Pe.GTLT]}\\s*${Ie[Pe.XRANGEPLAIN]}$`);We("XRANGELOOSE",`^${Ie[Pe.GTLT]}\\s*${Ie[Pe.XRANGEPLAINLOOSE]}$`);We("COERCEPLAIN",`(^|[^\\d])(\\d{1,${S2}})(?:\\.(\\d{1,${S2}}))?(?:\\.(\\d{1,${S2}}))?`);We("COERCE",`${Ie[Pe.COERCEPLAIN]}(?:$|[^\\d])`);We("COERCEFULL",Ie[Pe.COERCEPLAIN]+`(?:${Ie[Pe.PRERELEASE]})?(?:${Ie[Pe.BUILD]})?(?:$|[^\\d])`);We("COERCERTL",Ie[Pe.COERCE],!0);We("COERCERTLFULL",Ie[Pe.COERCEFULL],!0);We("LONETILDE","(?:~>?)");We("TILDETRIM",`(\\s*)${Ie[Pe.LONETILDE]}\\s+`,!0);zo.tildeTrimReplace="$1~";We("TILDE",`^${Ie[Pe.LONETILDE]}${Ie[Pe.XRANGEPLAIN]}$`);We("TILDELOOSE",`^${Ie[Pe.LONETILDE]}${Ie[Pe.XRANGEPLAINLOOSE]}$`);We("LONECARET","(?:\\^)");We("CARETTRIM",`(\\s*)${Ie[Pe.LONECARET]}\\s+`,!0);zo.caretTrimReplace="$1^";We("CARET",`^${Ie[Pe.LONECARET]}${Ie[Pe.XRANGEPLAIN]}$`);We("CARETLOOSE",`^${Ie[Pe.LONECARET]}${Ie[Pe.XRANGEPLAINLOOSE]}$`);We("COMPARATORLOOSE",`^${Ie[Pe.GTLT]}\\s*(${Ie[Pe.LOOSEPLAIN]})$|^$`);We("COMPARATOR",`^${Ie[Pe.GTLT]}\\s*(${Ie[Pe.FULLPLAIN]})$|^$`);We("COMPARATORTRIM",`(\\s*)${Ie[Pe.GTLT]}\\s*(${Ie[Pe.LOOSEPLAIN]}|${Ie[Pe.XRANGEPLAIN]})`,!0);zo.comparatorTrimReplace="$1$2$3";We("HYPHENRANGE",`^\\s*(${Ie[Pe.XRANGEPLAIN]})\\s+-\\s+(${Ie[Pe.XRANGEPLAIN]})\\s*$`);We("HYPHENRANGELOOSE",`^\\s*(${Ie[Pe.XRANGEPLAINLOOSE]})\\s+-\\s+(${Ie[Pe.XRANGEPLAINLOOSE]})\\s*$`);We("STAR","(<|>)?=?\\s*\\*");We("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");We("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var KA=E((DGt,Ile)=>{"use strict";var FQe=Object.freeze({loose:!0}),jQe=Object.freeze({}),qQe=t=>t?typeof t!="object"?FQe:t:jQe;Ile.exports=qQe});var v2=E((MGt,Cle)=>{"use strict";var Ple=/^[0-9]+$/,Ole=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:t<e?-1:1;let r=Ple.test(t),n=Ple.test(e);return r&&n&&(t=+t,e=+e),t===e?0:r&&!n?-1:n&&!r?1:t<e?-1:1},BQe=(t,e)=>Ole(e,t);Cle.exports={compareIdentifiers:Ole,rcompareIdentifiers:BQe}});var sn=E((UGt,kle)=>{"use strict";var JA=HE(),{MAX_LENGTH:Nle,MAX_SAFE_INTEGER:ZA}=cm(),{safeRe:XA,t:QA}=lm(),zQe=KA(),{compareIdentifiers:b2}=v2(),T2=class t{constructor(e,r){if(r=zQe(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>Nle)throw new TypeError(`version is longer than ${Nle} characters`);JA("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?XA[QA.LOOSE]:XA[QA.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>ZA||this.major<0)throw new TypeError("Invalid major version");if(this.minor>ZA||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>ZA||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(i=>{if(/^[0-9]+$/.test(i)){let s=+i;if(s>=0&&s<ZA)return s}return i}):this.prerelease=[],this.build=n[5]?n[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(e){if(JA("SemVer.compare",this.version,this.options,e),!(e instanceof t)){if(typeof e=="string"&&e===this.version)return 0;e=new t(e,this.options)}return e.version===this.version?0:this.compareMain(e)||this.comparePre(e)}compareMain(e){return e instanceof t||(e=new t(e,this.options)),this.major<e.major?-1:this.major>e.major?1:this.minor<e.minor?-1:this.minor>e.minor?1:this.patch<e.patch?-1:this.patch>e.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],i=e.prerelease[r];if(JA("prerelease compare",r,n,i),n===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(n===void 0)return-1;if(n===i)continue;return b2(n,i)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],i=e.build[r];if(JA("build compare",r,n,i),n===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(n===void 0)return-1;if(n===i)continue;return b2(n,i)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let i=`-${r}`.match(this.options.loose?XA[QA.PRERELEASELOOSE]:XA[QA.PRERELEASE]);if(!i||i[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let i=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[i];else{let s=this.prerelease.length;for(;--s>=0;)typeof this.prerelease[s]=="number"&&(this.prerelease[s]++,s=-2);if(s===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(i)}}if(r){let s=[r,i];n===!1&&(s=[r]),b2(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=s):this.prerelease=s}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};kle.exports=T2});var Vl=E((FGt,Lle)=>{"use strict";var $le=sn(),VQe=(t,e,r=!1)=>{if(t instanceof $le)return t;try{return new $le(t,e)}catch(n){if(!r)return null;throw n}};Lle.exports=VQe});var Mle=E((jGt,Dle)=>{"use strict";var HQe=Vl(),GQe=(t,e)=>{let r=HQe(t,e);return r?r.version:null};Dle.exports=GQe});var Fle=E((qGt,Ule)=>{"use strict";var WQe=Vl(),YQe=(t,e)=>{let r=WQe(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};Ule.exports=YQe});var Ble=E((BGt,qle)=>{"use strict";var jle=sn(),KQe=(t,e,r,n,i)=>{typeof r=="string"&&(i=n,n=r,r=void 0);try{return new jle(t instanceof jle?t.version:t,r).inc(e,n,i).version}catch{return null}};qle.exports=KQe});var Hle=E((zGt,Vle)=>{"use strict";var zle=Vl(),JQe=(t,e)=>{let r=zle(t,null,!0),n=zle(e,null,!0),i=r.compare(n);if(i===0)return null;let s=i>0,o=s?r:n,a=s?n:r,c=!!o.prerelease.length;if(!!a.prerelease.length&&!c){if(!a.patch&&!a.minor)return"major";if(a.compareMain(o)===0)return a.minor&&!a.patch?"minor":"patch"}let u=c?"pre":"";return r.major!==n.major?u+"major":r.minor!==n.minor?u+"minor":r.patch!==n.patch?u+"patch":"prerelease"};Vle.exports=JQe});var Wle=E((VGt,Gle)=>{"use strict";var ZQe=sn(),XQe=(t,e)=>new ZQe(t,e).major;Gle.exports=XQe});var Kle=E((HGt,Yle)=>{"use strict";var QQe=sn(),eet=(t,e)=>new QQe(t,e).minor;Yle.exports=eet});var Zle=E((GGt,Jle)=>{"use strict";var tet=sn(),ret=(t,e)=>new tet(t,e).patch;Jle.exports=ret});var Qle=E((WGt,Xle)=>{"use strict";var net=Vl(),iet=(t,e)=>{let r=net(t,e);return r&&r.prerelease.length?r.prerelease:null};Xle.exports=iet});var ds=E((YGt,tue)=>{"use strict";var eue=sn(),set=(t,e,r)=>new eue(t,r).compare(new eue(e,r));tue.exports=set});var nue=E((KGt,rue)=>{"use strict";var oet=ds(),aet=(t,e,r)=>oet(e,t,r);rue.exports=aet});var sue=E((JGt,iue)=>{"use strict";var cet=ds(),uet=(t,e)=>cet(t,e,!0);iue.exports=uet});var ex=E((ZGt,aue)=>{"use strict";var oue=sn(),det=(t,e,r)=>{let n=new oue(t,r),i=new oue(e,r);return n.compare(i)||n.compareBuild(i)};aue.exports=det});var lue=E((XGt,cue)=>{"use strict";var fet=ex(),pet=(t,e)=>t.sort((r,n)=>fet(r,n,e));cue.exports=pet});var due=E((QGt,uue)=>{"use strict";var het=ex(),met=(t,e)=>t.sort((r,n)=>het(n,r,e));uue.exports=met});var GE=E((e6t,fue)=>{"use strict";var get=ds(),_et=(t,e,r)=>get(t,e,r)>0;fue.exports=_et});var tx=E((t6t,pue)=>{"use strict";var yet=ds(),Eet=(t,e,r)=>yet(t,e,r)<0;pue.exports=Eet});var w2=E((r6t,hue)=>{"use strict";var vet=ds(),bet=(t,e,r)=>vet(t,e,r)===0;hue.exports=bet});var R2=E((n6t,mue)=>{"use strict";var Tet=ds(),wet=(t,e,r)=>Tet(t,e,r)!==0;mue.exports=wet});var rx=E((i6t,gue)=>{"use strict";var Ret=ds(),Aet=(t,e,r)=>Ret(t,e,r)>=0;gue.exports=Aet});var nx=E((s6t,_ue)=>{"use strict";var xet=ds(),Iet=(t,e,r)=>xet(t,e,r)<=0;_ue.exports=Iet});var A2=E((o6t,yue)=>{"use strict";var Pet=w2(),Oet=R2(),Cet=GE(),Net=rx(),ket=tx(),$et=nx(),Let=(t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Pet(t,r,n);case"!=":return Oet(t,r,n);case">":return Cet(t,r,n);case">=":return Net(t,r,n);case"<":return ket(t,r,n);case"<=":return $et(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}};yue.exports=Let});var Eue=E((a6t,Sue)=>{"use strict";var Det=sn(),Met=Vl(),{safeRe:ix,t:sx}=lm(),Uet=(t,e)=>{if(t instanceof Det)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?ix[sx.COERCEFULL]:ix[sx.COERCE]);else{let c=e.includePrerelease?ix[sx.COERCERTLFULL]:ix[sx.COERCERTL],l;for(;(l=c.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||l.index+l[0].length!==r.index+r[0].length)&&(r=l),c.lastIndex=l.index+l[1].length+l[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],i=r[3]||"0",s=r[4]||"0",o=e.includePrerelease&&r[5]?`-${r[5]}`:"",a=e.includePrerelease&&r[6]?`+${r[6]}`:"";return Met(`${n}.${i}.${s}${o}${a}`,e)};Sue.exports=Uet});var bue=E((c6t,vue)=>{"use strict";var Fet=Vl(),jet=cm(),qet=sn(),Bet=(t,e,r)=>{if(!jet.RELEASE_TYPES.includes(e))return null;let n=zet(t,r);return n&&Vet(n,e)},zet=(t,e)=>{let r=t instanceof qet?t.version:t;return Fet(r,e)},Vet=(t,e)=>{if(Het(e))return t.version;switch(t.prerelease=[],e){case"major":t.minor=0,t.patch=0;break;case"minor":t.patch=0;break}return t.format()},Het=t=>t.startsWith("pre");vue.exports=Bet});var wue=E((l6t,Tue)=>{"use strict";var x2=class{constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let i=this.map.keys().next().value;this.delete(i)}this.map.set(e,r)}return this}};Tue.exports=x2});var fs=E((u6t,Iue)=>{"use strict";var Get=/\s+/g,I2=class t{constructor(e,r){if(r=Yet(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof P2)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(Get," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(i=>!Aue(i[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let i of this.set)if(i.length===1&&ntt(i[0])){this.set=[i];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e<this.set.length;e++){e>0&&(this.formatted+="||");let r=this.set[e];for(let n=0;n<r.length;n++)n>0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){e=e.replace(rtt,"");let n=((this.options.includePrerelease&&ett)|(this.options.loose&&ttt))+":"+e,i=Rue.get(n);if(i)return i;let s=this.options.loose,o=s?jn[on.HYPHENRANGELOOSE]:jn[on.HYPHENRANGE];e=e.replace(o,ptt(this.options.includePrerelease)),Yt("hyphen replace",e),e=e.replace(jn[on.COMPARATORTRIM],Zet),Yt("comparator trim",e),e=e.replace(jn[on.TILDETRIM],Xet),Yt("tilde trim",e),e=e.replace(jn[on.CARETTRIM],Qet),Yt("caret trim",e);let a=e.split(" ").map(d=>itt(d,this.options)).join(" ").split(/\s+/).map(d=>ftt(d,this.options));s&&(a=a.filter(d=>(Yt("loose invalid filter",d,this.options),!!d.match(jn[on.COMPARATORLOOSE])))),Yt("range list",a);let c=new Map,l=a.map(d=>new P2(d,this.options));for(let d of l){if(Aue(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let u=[...c.values()];return Rue.set(n,u),u}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>xue(n,r)&&e.set.some(i=>xue(i,r)&&n.every(s=>i.every(o=>s.intersects(o,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new Ket(e,this.options)}catch{return!1}for(let r=0;r<this.set.length;r++)if(htt(this.set[r],e,this.options))return!0;return!1}};Iue.exports=I2;var Wet=wue(),Rue=new Wet,Yet=KA(),P2=WE(),Yt=HE(),Ket=sn(),{safeRe:jn,src:Jet,t:on,comparatorTrimReplace:Zet,tildeTrimReplace:Xet,caretTrimReplace:Qet}=lm(),{FLAG_INCLUDE_PRERELEASE:ett,FLAG_LOOSE:ttt}=cm(),rtt=new RegExp(Jet[on.BUILD],"g"),Aue=t=>t.value==="<0.0.0-0",ntt=t=>t.value==="",xue=(t,e)=>{let r=!0,n=t.slice(),i=n.pop();for(;r&&n.length;)r=n.every(s=>i.intersects(s,e)),i=n.pop();return r},itt=(t,e)=>(t=t.replace(jn[on.BUILD],""),Yt("comp",t,e),t=att(t,e),Yt("caret",t),t=stt(t,e),Yt("tildes",t),t=ltt(t,e),Yt("xrange",t),t=dtt(t,e),Yt("stars",t),t),qn=t=>!t||t.toLowerCase()==="x"||t==="*",stt=(t,e)=>t.trim().split(/\s+/).map(r=>ott(r,e)).join(" "),ott=(t,e)=>{let r=e.loose?jn[on.TILDELOOSE]:jn[on.TILDE];return t.replace(r,(n,i,s,o,a)=>{Yt("tilde",t,n,i,s,o,a);let c;return qn(i)?c="":qn(s)?c=`>=${i}.0.0 <${+i+1}.0.0-0`:qn(o)?c=`>=${i}.${s}.0 <${i}.${+s+1}.0-0`:a?(Yt("replaceTilde pr",a),c=`>=${i}.${s}.${o}-${a} <${i}.${+s+1}.0-0`):c=`>=${i}.${s}.${o} <${i}.${+s+1}.0-0`,Yt("tilde return",c),c})},att=(t,e)=>t.trim().split(/\s+/).map(r=>ctt(r,e)).join(" "),ctt=(t,e)=>{Yt("caret",t,e);let r=e.loose?jn[on.CARETLOOSE]:jn[on.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(i,s,o,a,c)=>{Yt("caret",t,i,s,o,a,c);let l;return qn(s)?l="":qn(o)?l=`>=${s}.0.0${n} <${+s+1}.0.0-0`:qn(a)?s==="0"?l=`>=${s}.${o}.0${n} <${s}.${+o+1}.0-0`:l=`>=${s}.${o}.0${n} <${+s+1}.0.0-0`:c?(Yt("replaceCaret pr",c),s==="0"?o==="0"?l=`>=${s}.${o}.${a}-${c} <${s}.${o}.${+a+1}-0`:l=`>=${s}.${o}.${a}-${c} <${s}.${+o+1}.0-0`:l=`>=${s}.${o}.${a}-${c} <${+s+1}.0.0-0`):(Yt("no pr"),s==="0"?o==="0"?l=`>=${s}.${o}.${a}${n} <${s}.${o}.${+a+1}-0`:l=`>=${s}.${o}.${a}${n} <${s}.${+o+1}.0-0`:l=`>=${s}.${o}.${a} <${+s+1}.0.0-0`),Yt("caret return",l),l})},ltt=(t,e)=>(Yt("replaceXRanges",t,e),t.split(/\s+/).map(r=>utt(r,e)).join(" ")),utt=(t,e)=>{t=t.trim();let r=e.loose?jn[on.XRANGELOOSE]:jn[on.XRANGE];return t.replace(r,(n,i,s,o,a,c)=>{Yt("xRange",t,n,i,s,o,a,c);let l=qn(s),u=l||qn(o),d=u||qn(a),f=d;return i==="="&&f&&(i=""),c=e.includePrerelease?"-0":"",l?i===">"||i==="<"?n="<0.0.0-0":n="*":i&&f?(u&&(o=0),a=0,i===">"?(i=">=",u?(s=+s+1,o=0,a=0):(o=+o+1,a=0)):i==="<="&&(i="<",u?s=+s+1:o=+o+1),i==="<"&&(c="-0"),n=`${i+s}.${o}.${a}${c}`):u?n=`>=${s}.0.0${c} <${+s+1}.0.0-0`:d&&(n=`>=${s}.${o}.0${c} <${s}.${+o+1}.0-0`),Yt("xRange return",n),n})},dtt=(t,e)=>(Yt("replaceStars",t,e),t.trim().replace(jn[on.STAR],"")),ftt=(t,e)=>(Yt("replaceGTE0",t,e),t.trim().replace(jn[e.includePrerelease?on.GTE0PRE:on.GTE0],"")),ptt=t=>(e,r,n,i,s,o,a,c,l,u,d,f)=>(qn(n)?r="":qn(i)?r=`>=${n}.0.0${t?"-0":""}`:qn(s)?r=`>=${n}.${i}.0${t?"-0":""}`:o?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,qn(l)?c="":qn(u)?c=`<${+l+1}.0.0-0`:qn(d)?c=`<${l}.${+u+1}.0-0`:f?c=`<=${l}.${u}.${d}-${f}`:t?c=`<${l}.${u}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),htt=(t,e,r)=>{for(let n=0;n<t.length;n++)if(!t[n].test(e))return!1;if(e.prerelease.length&&!r.includePrerelease){for(let n=0;n<t.length;n++)if(Yt(t[n].semver),t[n].semver!==P2.ANY&&t[n].semver.prerelease.length>0){let i=t[n].semver;if(i.major===e.major&&i.minor===e.minor&&i.patch===e.patch)return!0}return!1}return!0}});var WE=E((d6t,$ue)=>{"use strict";var YE=Symbol("SemVer ANY"),N2=class t{static get ANY(){return YE}constructor(e,r){if(r=Pue(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),C2("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===YE?this.value="":this.value=this.operator+this.semver.version,C2("comp",this)}parse(e){let r=this.options.loose?Oue[Cue.COMPARATORLOOSE]:Oue[Cue.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Nue(n[2],this.options.loose):this.semver=YE}toString(){return this.value}test(e){if(C2("Comparator.test",e,this.options.loose),this.semver===YE||e===YE)return!0;if(typeof e=="string")try{e=new Nue(e,this.options)}catch{return!1}return O2(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new kue(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new kue(this.value,r).test(e.semver):(r=Pue(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||O2(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||O2(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};$ue.exports=N2;var Pue=KA(),{safeRe:Oue,t:Cue}=lm(),O2=A2(),C2=HE(),Nue=sn(),kue=fs()});var KE=E((f6t,Lue)=>{"use strict";var mtt=fs(),gtt=(t,e,r)=>{try{e=new mtt(e,r)}catch{return!1}return e.test(t)};Lue.exports=gtt});var Mue=E((p6t,Due)=>{"use strict";var _tt=fs(),ytt=(t,e)=>new _tt(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));Due.exports=ytt});var Fue=E((h6t,Uue)=>{"use strict";var Stt=sn(),Ett=fs(),vtt=(t,e,r)=>{let n=null,i=null,s=null;try{s=new Ett(e,r)}catch{return null}return t.forEach(o=>{s.test(o)&&(!n||i.compare(o)===-1)&&(n=o,i=new Stt(n,r))}),n};Uue.exports=vtt});var que=E((m6t,jue)=>{"use strict";var btt=sn(),Ttt=fs(),wtt=(t,e,r)=>{let n=null,i=null,s=null;try{s=new Ttt(e,r)}catch{return null}return t.forEach(o=>{s.test(o)&&(!n||i.compare(o)===1)&&(n=o,i=new btt(n,r))}),n};jue.exports=wtt});var Vue=E((g6t,zue)=>{"use strict";var k2=sn(),Rtt=fs(),Bue=GE(),Att=(t,e)=>{t=new Rtt(t,e);let r=new k2("0.0.0");if(t.test(r)||(r=new k2("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n<t.set.length;++n){let i=t.set[n],s=null;i.forEach(o=>{let a=new k2(o.semver.version);switch(o.operator){case">":a.prerelease.length===0?a.patch++:a.prerelease.push(0),a.raw=a.format();case"":case">=":(!s||Bue(a,s))&&(s=a);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${o.operator}`)}}),s&&(!r||Bue(r,s))&&(r=s)}return r&&t.test(r)?r:null};zue.exports=Att});var Gue=E((_6t,Hue)=>{"use strict";var xtt=fs(),Itt=(t,e)=>{try{return new xtt(t,e).range||"*"}catch{return null}};Hue.exports=Itt});var ox=E((y6t,Jue)=>{"use strict";var Ptt=sn(),Kue=WE(),{ANY:Ott}=Kue,Ctt=fs(),Ntt=KE(),Wue=GE(),Yue=tx(),ktt=nx(),$tt=rx(),Ltt=(t,e,r,n)=>{t=new Ptt(t,n),e=new Ctt(e,n);let i,s,o,a,c;switch(r){case">":i=Wue,s=ktt,o=Yue,a=">",c=">=";break;case"<":i=Yue,s=$tt,o=Wue,a="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Ntt(t,e,n))return!1;for(let l=0;l<e.set.length;++l){let u=e.set[l],d=null,f=null;if(u.forEach(p=>{p.semver===Ott&&(p=new Kue(">=0.0.0")),d=d||p,f=f||p,i(p.semver,d.semver,n)?d=p:o(p.semver,f.semver,n)&&(f=p)}),d.operator===a||d.operator===c||(!f.operator||f.operator===a)&&s(t,f.semver))return!1;if(f.operator===c&&o(t,f.semver))return!1}return!0};Jue.exports=Ltt});var Xue=E((S6t,Zue)=>{"use strict";var Dtt=ox(),Mtt=(t,e,r)=>Dtt(t,e,">",r);Zue.exports=Mtt});var ede=E((E6t,Que)=>{"use strict";var Utt=ox(),Ftt=(t,e,r)=>Utt(t,e,"<",r);Que.exports=Ftt});var nde=E((v6t,rde)=>{"use strict";var tde=fs(),jtt=(t,e,r)=>(t=new tde(t,r),e=new tde(e,r),t.intersects(e,r));rde.exports=jtt});var sde=E((b6t,ide)=>{"use strict";var qtt=KE(),Btt=ds();ide.exports=(t,e,r)=>{let n=[],i=null,s=null,o=t.sort((u,d)=>Btt(u,d,r));for(let u of o)qtt(u,e,r)?(s=u,i||(i=u)):(s&&n.push([i,s]),s=null,i=null);i&&n.push([i,null]);let a=[];for(let[u,d]of n)u===d?a.push(u):!d&&u===o[0]?a.push("*"):d?u===o[0]?a.push(`<=${d}`):a.push(`${u} - ${d}`):a.push(`>=${u}`);let c=a.join(" || "),l=typeof e.raw=="string"?e.raw:String(e);return c.length<l.length?c:e}});var dde=E((T6t,ude)=>{"use strict";var ode=fs(),D2=WE(),{ANY:$2}=D2,L2=KE(),M2=ds(),ztt=(t,e,r={})=>{if(t===e)return!0;t=new ode(t,r),e=new ode(e,r);let n=!1;e:for(let i of t.set){for(let s of e.set){let o=Htt(i,s,r);if(n=n||o!==null,o)continue e}if(n)return!1}return!0},Vtt=[new D2(">=0.0.0-0")],ade=[new D2(">=0.0.0")],Htt=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===$2){if(e.length===1&&e[0].semver===$2)return!0;r.includePrerelease?t=Vtt:t=ade}if(e.length===1&&e[0].semver===$2){if(r.includePrerelease)return!0;e=ade}let n=new Set,i,s;for(let p of t)p.operator===">"||p.operator===">="?i=cde(i,p,r):p.operator==="<"||p.operator==="<="?s=lde(s,p,r):n.add(p.semver);if(n.size>1)return null;let o;if(i&&s){if(o=M2(i.semver,s.semver,r),o>0)return null;if(o===0&&(i.operator!==">="||s.operator!=="<="))return null}for(let p of n){if(i&&!L2(p,String(i),r)||s&&!L2(p,String(s),r))return null;for(let h of e)if(!L2(p,String(h),r))return!1;return!0}let a,c,l,u,d=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1,f=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1;d&&d.prerelease.length===1&&s.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let p of e){if(u=u||p.operator===">"||p.operator===">=",l=l||p.operator==="<"||p.operator==="<=",i){if(f&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===f.major&&p.semver.minor===f.minor&&p.semver.patch===f.patch&&(f=!1),p.operator===">"||p.operator===">="){if(a=cde(i,p,r),a===p&&a!==i)return!1}else if(i.operator===">="&&!p.test(i.semver))return!1}if(s){if(d&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===d.major&&p.semver.minor===d.minor&&p.semver.patch===d.patch&&(d=!1),p.operator==="<"||p.operator==="<="){if(c=lde(s,p,r),c===p&&c!==s)return!1}else if(s.operator==="<="&&!p.test(s.semver))return!1}if(!p.operator&&(s||i)&&o!==0)return!1}return!(i&&l&&!s&&o!==0||s&&u&&!i&&o!==0||f||d)},cde=(t,e,r)=>{if(!t)return e;let n=M2(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},lde=(t,e,r)=>{if(!t)return e;let n=M2(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t};ude.exports=ztt});var mde=E((w6t,hde)=>{"use strict";var U2=lm(),fde=cm(),Gtt=sn(),pde=v2(),Wtt=Vl(),Ytt=Mle(),Ktt=Fle(),Jtt=Ble(),Ztt=Hle(),Xtt=Wle(),Qtt=Kle(),ert=Zle(),trt=Qle(),rrt=ds(),nrt=nue(),irt=sue(),srt=ex(),ort=lue(),art=due(),crt=GE(),lrt=tx(),urt=w2(),drt=R2(),frt=rx(),prt=nx(),hrt=A2(),mrt=Eue(),grt=bue(),_rt=WE(),yrt=fs(),Srt=KE(),Ert=Mue(),vrt=Fue(),brt=que(),Trt=Vue(),wrt=Gue(),Rrt=ox(),Art=Xue(),xrt=ede(),Irt=nde(),Prt=sde(),Ort=dde();hde.exports={parse:Wtt,valid:Ytt,clean:Ktt,inc:Jtt,diff:Ztt,major:Xtt,minor:Qtt,patch:ert,prerelease:trt,compare:rrt,rcompare:nrt,compareLoose:irt,compareBuild:srt,sort:ort,rsort:art,gt:crt,lt:lrt,eq:urt,neq:drt,gte:frt,lte:prt,cmp:hrt,coerce:mrt,truncate:grt,Comparator:_rt,Range:yrt,satisfies:Srt,toComparators:Ert,maxSatisfying:vrt,minSatisfying:brt,minVersion:Trt,validRange:wrt,outside:Rrt,gtr:Art,ltr:xrt,intersects:Irt,simplifyRange:Prt,subset:Ort,SemVer:Gtt,re:U2.re,src:U2.src,tokens:U2.t,SEMVER_SPEC_VERSION:fde.SEMVER_SPEC_VERSION,RELEASE_TYPES:fde.RELEASE_TYPES,compareIdentifiers:pde.compareIdentifiers,rcompareIdentifiers:pde.rcompareIdentifiers}});var V2=E((R6t,z2)=>{"use strict";var F2=mde(),q2=V("assert"),B2=Symbol.for("registered-plugin"),{kTestInternals:Crt}=Tr(),{exist:Nrt,existReply:krt,existRequest:$rt}=JS(),{FST_ERR_PLUGIN_VERSION_MISMATCH:Lrt,FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:Drt,FST_ERR_PLUGIN_INVALID_ASYNC_HANDLER:Mrt}=Mr(),Urt=/-(?:rc|pre|alpha).+$/u;function JE(t){return t[Symbol.for("plugin-meta")]}function gde(t){let e=_de(t);if(e)return e;let r=V.cache;if(r){let n=Object.keys(r);for(let i=0;i<n.length;i++){let s=n[i];if(r[s].exports===t)return s}}return t.name?t.name:null}function Frt(t){return t.toString().split(`
|
|
337
|
+
`),i}om.exports=g2;om.exports.default=g2;om.exports.build=g2;om.exports.validLargeArrayMechanisms=mle;om.exports.restore=function({code:t,validator:e,serializer:r}){return Function.apply(null,["validator","serializer",t]).apply(null,[e,r])}});var ble=E((CGt,YA)=>{"use strict";var SQe=Sle();function Ele(){return function(e,r){let n=Object.assign({},r,{schema:e});return EQe.bind(null,n)}}function EQe(t,{schema:e}){return t.schema&&e.$id&&t.schema[e.$id]&&(t.schema={...t.schema},delete t.schema[e.$id]),SQe(e,t)}function vle(t={readMode:!0}){if(t.readMode===!0&&typeof t.restoreFunction!="function")throw new Error("You must provide a function for the restoreFunction-option when readMode ON");if(t.readMode!==!0&&typeof t.storeFunction!="function")throw new Error("You must provide a function for the storeFunction-option when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=Ele();return function(n,i={}){i.mode="standalone";let s=e(n,i);return function(o){let a=s(o);return t.storeFunction(o,a),new Function(a)}}}YA.exports.SerializerSelector=Ele;YA.exports.StandaloneSerializer=vle;YA.exports.default=vle});var Tle=E((NGt,VE)=>{"use strict";var{SerializerSelector:_2,StandaloneSerializer:vQe}=ble();VE.exports=_2;VE.exports.default=_2;VE.exports.SerializerSelector=_2;VE.exports.StandaloneSerializer=vQe});var y2=E((kGt,wle)=>{"use strict";var{buildSchemas:bQe}=GS();function TQe(t,e){if(t)return new am(t,e);let r=Object.assign({buildValidator:null,buildSerializer:null},e?.compilersFactory);if(!r.buildValidator){let i=e2();r.buildValidator=i()}if(!r.buildSerializer){let i=Tle();r.buildSerializer=i()}let n={bucket:e&&e.bucket||bQe,compilersFactory:r,isCustomValidatorCompiler:typeof e?.compilersFactory?.buildValidator=="function",isCustomSerializerCompiler:typeof e?.compilersFactory?.buildValidator=="function"};return new am(void 0,n)}var am=class{constructor(e,r){this.opts=r||e?.opts,this.addedSchemas=!1,this.compilersFactory=this.opts.compilersFactory,e?(this.schemaBucket=this.opts.bucket(e.getSchemas()),this.validatorCompiler=e.getValidatorCompiler(),this.serializerCompiler=e.getSerializerCompiler(),this.isCustomValidatorCompiler=e.isCustomValidatorCompiler,this.isCustomSerializerCompiler=e.isCustomSerializerCompiler,this.parent=e):(this.schemaBucket=this.opts.bucket(),this.isCustomValidatorCompiler=this.opts.isCustomValidatorCompiler||!1,this.isCustomSerializerCompiler=this.opts.isCustomSerializerCompiler||!1)}add(e){return this.addedSchemas=!0,this.schemaBucket.add(e)}getSchema(e){return this.schemaBucket.getSchema(e)}getSchemas(){return this.schemaBucket.getSchemas()}setValidatorCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildValidator:()=>e}),this.validatorCompiler=e,this.isCustomValidatorCompiler=!0}setSerializerCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildSerializer:()=>e}),this.serializerCompiler=e,this.isCustomSerializerCompiler=!0}getValidatorCompiler(){return this.validatorCompiler||this.parent&&this.parent.getValidatorCompiler()}getSerializerCompiler(){return this.serializerCompiler||this.parent&&this.parent.getSerializerCompiler()}getSerializerBuilder(){return this.compilersFactory.buildSerializer||this.parent&&this.parent.getSerializerBuilder()}getValidatorBuilder(){return this.compilersFactory.buildValidator||this.parent&&this.parent.getValidatorBuilder()}setupValidator(e){this.validatorCompiler!==void 0&&!this.addedSchemas||(this.validatorCompiler=this.getValidatorBuilder()(this.schemaBucket.getSchemas(),e.ajv))}setupSerializer(e){this.serializerCompiler!==void 0&&!this.addedSchemas||(this.serializerCompiler=this.getSerializerBuilder()(this.schemaBucket.getSchemas(),e.serializerOpts))}};am.buildSchemaController=TQe;wle.exports=am});var cm=E(($Gt,Rle)=>{"use strict";var wQe="2.0.0",RQe=Number.MAX_SAFE_INTEGER||9007199254740991,AQe=16,xQe=250,IQe=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Rle.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:AQe,MAX_SAFE_BUILD_LENGTH:xQe,MAX_SAFE_INTEGER:RQe,RELEASE_TYPES:IQe,SEMVER_SPEC_VERSION:wQe,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var HE=E((LGt,Ale)=>{"use strict";var PQe=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};Ale.exports=PQe});var lm=E((zo,xle)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:S2,MAX_SAFE_BUILD_LENGTH:OQe,MAX_LENGTH:CQe}=cm(),NQe=HE();zo=xle.exports={};var kQe=zo.re=[],$Qe=zo.safeRe=[],Pe=zo.src=[],LQe=zo.safeSrc=[],Oe=zo.t={},DQe=0,E2="[a-zA-Z0-9-]",MQe=[["\\s",1],["\\d",CQe],[E2,OQe]],UQe=t=>{for(let[e,r]of MQe)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},We=(t,e,r)=>{let n=UQe(e),i=DQe++;NQe(t,i,e),Oe[t]=i,Pe[i]=e,LQe[i]=n,kQe[i]=new RegExp(e,r?"g":void 0),$Qe[i]=new RegExp(n,r?"g":void 0)};We("NUMERICIDENTIFIER","0|[1-9]\\d*");We("NUMERICIDENTIFIERLOOSE","\\d+");We("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${E2}*`);We("MAINVERSION",`(${Pe[Oe.NUMERICIDENTIFIER]})\\.(${Pe[Oe.NUMERICIDENTIFIER]})\\.(${Pe[Oe.NUMERICIDENTIFIER]})`);We("MAINVERSIONLOOSE",`(${Pe[Oe.NUMERICIDENTIFIERLOOSE]})\\.(${Pe[Oe.NUMERICIDENTIFIERLOOSE]})\\.(${Pe[Oe.NUMERICIDENTIFIERLOOSE]})`);We("PRERELEASEIDENTIFIER",`(?:${Pe[Oe.NONNUMERICIDENTIFIER]}|${Pe[Oe.NUMERICIDENTIFIER]})`);We("PRERELEASEIDENTIFIERLOOSE",`(?:${Pe[Oe.NONNUMERICIDENTIFIER]}|${Pe[Oe.NUMERICIDENTIFIERLOOSE]})`);We("PRERELEASE",`(?:-(${Pe[Oe.PRERELEASEIDENTIFIER]}(?:\\.${Pe[Oe.PRERELEASEIDENTIFIER]})*))`);We("PRERELEASELOOSE",`(?:-?(${Pe[Oe.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${Pe[Oe.PRERELEASEIDENTIFIERLOOSE]})*))`);We("BUILDIDENTIFIER",`${E2}+`);We("BUILD",`(?:\\+(${Pe[Oe.BUILDIDENTIFIER]}(?:\\.${Pe[Oe.BUILDIDENTIFIER]})*))`);We("FULLPLAIN",`v?${Pe[Oe.MAINVERSION]}${Pe[Oe.PRERELEASE]}?${Pe[Oe.BUILD]}?`);We("FULL",`^${Pe[Oe.FULLPLAIN]}$`);We("LOOSEPLAIN",`[v=\\s]*${Pe[Oe.MAINVERSIONLOOSE]}${Pe[Oe.PRERELEASELOOSE]}?${Pe[Oe.BUILD]}?`);We("LOOSE",`^${Pe[Oe.LOOSEPLAIN]}$`);We("GTLT","((?:<|>)?=?)");We("XRANGEIDENTIFIERLOOSE",`${Pe[Oe.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);We("XRANGEIDENTIFIER",`${Pe[Oe.NUMERICIDENTIFIER]}|x|X|\\*`);We("XRANGEPLAIN",`[v=\\s]*(${Pe[Oe.XRANGEIDENTIFIER]})(?:\\.(${Pe[Oe.XRANGEIDENTIFIER]})(?:\\.(${Pe[Oe.XRANGEIDENTIFIER]})(?:${Pe[Oe.PRERELEASE]})?${Pe[Oe.BUILD]}?)?)?`);We("XRANGEPLAINLOOSE",`[v=\\s]*(${Pe[Oe.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Pe[Oe.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Pe[Oe.XRANGEIDENTIFIERLOOSE]})(?:${Pe[Oe.PRERELEASELOOSE]})?${Pe[Oe.BUILD]}?)?)?`);We("XRANGE",`^${Pe[Oe.GTLT]}\\s*${Pe[Oe.XRANGEPLAIN]}$`);We("XRANGELOOSE",`^${Pe[Oe.GTLT]}\\s*${Pe[Oe.XRANGEPLAINLOOSE]}$`);We("COERCEPLAIN",`(^|[^\\d])(\\d{1,${S2}})(?:\\.(\\d{1,${S2}}))?(?:\\.(\\d{1,${S2}}))?`);We("COERCE",`${Pe[Oe.COERCEPLAIN]}(?:$|[^\\d])`);We("COERCEFULL",Pe[Oe.COERCEPLAIN]+`(?:${Pe[Oe.PRERELEASE]})?(?:${Pe[Oe.BUILD]})?(?:$|[^\\d])`);We("COERCERTL",Pe[Oe.COERCE],!0);We("COERCERTLFULL",Pe[Oe.COERCEFULL],!0);We("LONETILDE","(?:~>?)");We("TILDETRIM",`(\\s*)${Pe[Oe.LONETILDE]}\\s+`,!0);zo.tildeTrimReplace="$1~";We("TILDE",`^${Pe[Oe.LONETILDE]}${Pe[Oe.XRANGEPLAIN]}$`);We("TILDELOOSE",`^${Pe[Oe.LONETILDE]}${Pe[Oe.XRANGEPLAINLOOSE]}$`);We("LONECARET","(?:\\^)");We("CARETTRIM",`(\\s*)${Pe[Oe.LONECARET]}\\s+`,!0);zo.caretTrimReplace="$1^";We("CARET",`^${Pe[Oe.LONECARET]}${Pe[Oe.XRANGEPLAIN]}$`);We("CARETLOOSE",`^${Pe[Oe.LONECARET]}${Pe[Oe.XRANGEPLAINLOOSE]}$`);We("COMPARATORLOOSE",`^${Pe[Oe.GTLT]}\\s*(${Pe[Oe.LOOSEPLAIN]})$|^$`);We("COMPARATOR",`^${Pe[Oe.GTLT]}\\s*(${Pe[Oe.FULLPLAIN]})$|^$`);We("COMPARATORTRIM",`(\\s*)${Pe[Oe.GTLT]}\\s*(${Pe[Oe.LOOSEPLAIN]}|${Pe[Oe.XRANGEPLAIN]})`,!0);zo.comparatorTrimReplace="$1$2$3";We("HYPHENRANGE",`^\\s*(${Pe[Oe.XRANGEPLAIN]})\\s+-\\s+(${Pe[Oe.XRANGEPLAIN]})\\s*$`);We("HYPHENRANGELOOSE",`^\\s*(${Pe[Oe.XRANGEPLAINLOOSE]})\\s+-\\s+(${Pe[Oe.XRANGEPLAINLOOSE]})\\s*$`);We("STAR","(<|>)?=?\\s*\\*");We("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");We("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var KA=E((DGt,Ile)=>{"use strict";var FQe=Object.freeze({loose:!0}),jQe=Object.freeze({}),qQe=t=>t?typeof t!="object"?FQe:t:jQe;Ile.exports=qQe});var v2=E((MGt,Cle)=>{"use strict";var Ple=/^[0-9]+$/,Ole=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:t<e?-1:1;let r=Ple.test(t),n=Ple.test(e);return r&&n&&(t=+t,e=+e),t===e?0:r&&!n?-1:n&&!r?1:t<e?-1:1},BQe=(t,e)=>Ole(e,t);Cle.exports={compareIdentifiers:Ole,rcompareIdentifiers:BQe}});var sn=E((UGt,kle)=>{"use strict";var JA=HE(),{MAX_LENGTH:Nle,MAX_SAFE_INTEGER:ZA}=cm(),{safeRe:XA,t:QA}=lm(),zQe=KA(),{compareIdentifiers:b2}=v2(),T2=class t{constructor(e,r){if(r=zQe(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>Nle)throw new TypeError(`version is longer than ${Nle} characters`);JA("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?XA[QA.LOOSE]:XA[QA.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>ZA||this.major<0)throw new TypeError("Invalid major version");if(this.minor>ZA||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>ZA||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(i=>{if(/^[0-9]+$/.test(i)){let s=+i;if(s>=0&&s<ZA)return s}return i}):this.prerelease=[],this.build=n[5]?n[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(e){if(JA("SemVer.compare",this.version,this.options,e),!(e instanceof t)){if(typeof e=="string"&&e===this.version)return 0;e=new t(e,this.options)}return e.version===this.version?0:this.compareMain(e)||this.comparePre(e)}compareMain(e){return e instanceof t||(e=new t(e,this.options)),this.major<e.major?-1:this.major>e.major?1:this.minor<e.minor?-1:this.minor>e.minor?1:this.patch<e.patch?-1:this.patch>e.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],i=e.prerelease[r];if(JA("prerelease compare",r,n,i),n===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(n===void 0)return-1;if(n===i)continue;return b2(n,i)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],i=e.build[r];if(JA("build compare",r,n,i),n===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(n===void 0)return-1;if(n===i)continue;return b2(n,i)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let i=`-${r}`.match(this.options.loose?XA[QA.PRERELEASELOOSE]:XA[QA.PRERELEASE]);if(!i||i[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let i=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[i];else{let s=this.prerelease.length;for(;--s>=0;)typeof this.prerelease[s]=="number"&&(this.prerelease[s]++,s=-2);if(s===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(i)}}if(r){let s=[r,i];n===!1&&(s=[r]),b2(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=s):this.prerelease=s}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};kle.exports=T2});var Vl=E((FGt,Lle)=>{"use strict";var $le=sn(),VQe=(t,e,r=!1)=>{if(t instanceof $le)return t;try{return new $le(t,e)}catch(n){if(!r)return null;throw n}};Lle.exports=VQe});var Mle=E((jGt,Dle)=>{"use strict";var HQe=Vl(),GQe=(t,e)=>{let r=HQe(t,e);return r?r.version:null};Dle.exports=GQe});var Fle=E((qGt,Ule)=>{"use strict";var WQe=Vl(),YQe=(t,e)=>{let r=WQe(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};Ule.exports=YQe});var Ble=E((BGt,qle)=>{"use strict";var jle=sn(),KQe=(t,e,r,n,i)=>{typeof r=="string"&&(i=n,n=r,r=void 0);try{return new jle(t instanceof jle?t.version:t,r).inc(e,n,i).version}catch{return null}};qle.exports=KQe});var Hle=E((zGt,Vle)=>{"use strict";var zle=Vl(),JQe=(t,e)=>{let r=zle(t,null,!0),n=zle(e,null,!0),i=r.compare(n);if(i===0)return null;let s=i>0,o=s?r:n,a=s?n:r,c=!!o.prerelease.length;if(!!a.prerelease.length&&!c){if(!a.patch&&!a.minor)return"major";if(a.compareMain(o)===0)return a.minor&&!a.patch?"minor":"patch"}let u=c?"pre":"";return r.major!==n.major?u+"major":r.minor!==n.minor?u+"minor":r.patch!==n.patch?u+"patch":"prerelease"};Vle.exports=JQe});var Wle=E((VGt,Gle)=>{"use strict";var ZQe=sn(),XQe=(t,e)=>new ZQe(t,e).major;Gle.exports=XQe});var Kle=E((HGt,Yle)=>{"use strict";var QQe=sn(),eet=(t,e)=>new QQe(t,e).minor;Yle.exports=eet});var Zle=E((GGt,Jle)=>{"use strict";var tet=sn(),ret=(t,e)=>new tet(t,e).patch;Jle.exports=ret});var Qle=E((WGt,Xle)=>{"use strict";var net=Vl(),iet=(t,e)=>{let r=net(t,e);return r&&r.prerelease.length?r.prerelease:null};Xle.exports=iet});var ds=E((YGt,tue)=>{"use strict";var eue=sn(),set=(t,e,r)=>new eue(t,r).compare(new eue(e,r));tue.exports=set});var nue=E((KGt,rue)=>{"use strict";var oet=ds(),aet=(t,e,r)=>oet(e,t,r);rue.exports=aet});var sue=E((JGt,iue)=>{"use strict";var cet=ds(),uet=(t,e)=>cet(t,e,!0);iue.exports=uet});var ex=E((ZGt,aue)=>{"use strict";var oue=sn(),det=(t,e,r)=>{let n=new oue(t,r),i=new oue(e,r);return n.compare(i)||n.compareBuild(i)};aue.exports=det});var lue=E((XGt,cue)=>{"use strict";var fet=ex(),pet=(t,e)=>t.sort((r,n)=>fet(r,n,e));cue.exports=pet});var due=E((QGt,uue)=>{"use strict";var het=ex(),met=(t,e)=>t.sort((r,n)=>het(n,r,e));uue.exports=met});var GE=E((e6t,fue)=>{"use strict";var get=ds(),_et=(t,e,r)=>get(t,e,r)>0;fue.exports=_et});var tx=E((t6t,pue)=>{"use strict";var yet=ds(),Eet=(t,e,r)=>yet(t,e,r)<0;pue.exports=Eet});var w2=E((r6t,hue)=>{"use strict";var vet=ds(),bet=(t,e,r)=>vet(t,e,r)===0;hue.exports=bet});var R2=E((n6t,mue)=>{"use strict";var Tet=ds(),wet=(t,e,r)=>Tet(t,e,r)!==0;mue.exports=wet});var rx=E((i6t,gue)=>{"use strict";var Ret=ds(),Aet=(t,e,r)=>Ret(t,e,r)>=0;gue.exports=Aet});var nx=E((s6t,_ue)=>{"use strict";var xet=ds(),Iet=(t,e,r)=>xet(t,e,r)<=0;_ue.exports=Iet});var A2=E((o6t,yue)=>{"use strict";var Pet=w2(),Oet=R2(),Cet=GE(),Net=rx(),ket=tx(),$et=nx(),Let=(t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Pet(t,r,n);case"!=":return Oet(t,r,n);case">":return Cet(t,r,n);case">=":return Net(t,r,n);case"<":return ket(t,r,n);case"<=":return $et(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}};yue.exports=Let});var Eue=E((a6t,Sue)=>{"use strict";var Det=sn(),Met=Vl(),{safeRe:ix,t:sx}=lm(),Uet=(t,e)=>{if(t instanceof Det)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?ix[sx.COERCEFULL]:ix[sx.COERCE]);else{let c=e.includePrerelease?ix[sx.COERCERTLFULL]:ix[sx.COERCERTL],l;for(;(l=c.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||l.index+l[0].length!==r.index+r[0].length)&&(r=l),c.lastIndex=l.index+l[1].length+l[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],i=r[3]||"0",s=r[4]||"0",o=e.includePrerelease&&r[5]?`-${r[5]}`:"",a=e.includePrerelease&&r[6]?`+${r[6]}`:"";return Met(`${n}.${i}.${s}${o}${a}`,e)};Sue.exports=Uet});var bue=E((c6t,vue)=>{"use strict";var Fet=Vl(),jet=cm(),qet=sn(),Bet=(t,e,r)=>{if(!jet.RELEASE_TYPES.includes(e))return null;let n=zet(t,r);return n&&Vet(n,e)},zet=(t,e)=>{let r=t instanceof qet?t.version:t;return Fet(r,e)},Vet=(t,e)=>{if(Het(e))return t.version;switch(t.prerelease=[],e){case"major":t.minor=0,t.patch=0;break;case"minor":t.patch=0;break}return t.format()},Het=t=>t.startsWith("pre");vue.exports=Bet});var wue=E((l6t,Tue)=>{"use strict";var x2=class{constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let i=this.map.keys().next().value;this.delete(i)}this.map.set(e,r)}return this}};Tue.exports=x2});var fs=E((u6t,Iue)=>{"use strict";var Get=/\s+/g,I2=class t{constructor(e,r){if(r=Yet(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof P2)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(Get," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(i=>!Aue(i[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let i of this.set)if(i.length===1&&ntt(i[0])){this.set=[i];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e<this.set.length;e++){e>0&&(this.formatted+="||");let r=this.set[e];for(let n=0;n<r.length;n++)n>0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){e=e.replace(rtt,"");let n=((this.options.includePrerelease&&ett)|(this.options.loose&&ttt))+":"+e,i=Rue.get(n);if(i)return i;let s=this.options.loose,o=s?jn[on.HYPHENRANGELOOSE]:jn[on.HYPHENRANGE];e=e.replace(o,ptt(this.options.includePrerelease)),Yt("hyphen replace",e),e=e.replace(jn[on.COMPARATORTRIM],Zet),Yt("comparator trim",e),e=e.replace(jn[on.TILDETRIM],Xet),Yt("tilde trim",e),e=e.replace(jn[on.CARETTRIM],Qet),Yt("caret trim",e);let a=e.split(" ").map(d=>itt(d,this.options)).join(" ").split(/\s+/).map(d=>ftt(d,this.options));s&&(a=a.filter(d=>(Yt("loose invalid filter",d,this.options),!!d.match(jn[on.COMPARATORLOOSE])))),Yt("range list",a);let c=new Map,l=a.map(d=>new P2(d,this.options));for(let d of l){if(Aue(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let u=[...c.values()];return Rue.set(n,u),u}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>xue(n,r)&&e.set.some(i=>xue(i,r)&&n.every(s=>i.every(o=>s.intersects(o,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new Ket(e,this.options)}catch{return!1}for(let r=0;r<this.set.length;r++)if(htt(this.set[r],e,this.options))return!0;return!1}};Iue.exports=I2;var Wet=wue(),Rue=new Wet,Yet=KA(),P2=WE(),Yt=HE(),Ket=sn(),{safeRe:jn,src:Jet,t:on,comparatorTrimReplace:Zet,tildeTrimReplace:Xet,caretTrimReplace:Qet}=lm(),{FLAG_INCLUDE_PRERELEASE:ett,FLAG_LOOSE:ttt}=cm(),rtt=new RegExp(Jet[on.BUILD],"g"),Aue=t=>t.value==="<0.0.0-0",ntt=t=>t.value==="",xue=(t,e)=>{let r=!0,n=t.slice(),i=n.pop();for(;r&&n.length;)r=n.every(s=>i.intersects(s,e)),i=n.pop();return r},itt=(t,e)=>(t=t.replace(jn[on.BUILD],""),Yt("comp",t,e),t=att(t,e),Yt("caret",t),t=stt(t,e),Yt("tildes",t),t=ltt(t,e),Yt("xrange",t),t=dtt(t,e),Yt("stars",t),t),qn=t=>!t||t.toLowerCase()==="x"||t==="*",stt=(t,e)=>t.trim().split(/\s+/).map(r=>ott(r,e)).join(" "),ott=(t,e)=>{let r=e.loose?jn[on.TILDELOOSE]:jn[on.TILDE];return t.replace(r,(n,i,s,o,a)=>{Yt("tilde",t,n,i,s,o,a);let c;return qn(i)?c="":qn(s)?c=`>=${i}.0.0 <${+i+1}.0.0-0`:qn(o)?c=`>=${i}.${s}.0 <${i}.${+s+1}.0-0`:a?(Yt("replaceTilde pr",a),c=`>=${i}.${s}.${o}-${a} <${i}.${+s+1}.0-0`):c=`>=${i}.${s}.${o} <${i}.${+s+1}.0-0`,Yt("tilde return",c),c})},att=(t,e)=>t.trim().split(/\s+/).map(r=>ctt(r,e)).join(" "),ctt=(t,e)=>{Yt("caret",t,e);let r=e.loose?jn[on.CARETLOOSE]:jn[on.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(i,s,o,a,c)=>{Yt("caret",t,i,s,o,a,c);let l;return qn(s)?l="":qn(o)?l=`>=${s}.0.0${n} <${+s+1}.0.0-0`:qn(a)?s==="0"?l=`>=${s}.${o}.0${n} <${s}.${+o+1}.0-0`:l=`>=${s}.${o}.0${n} <${+s+1}.0.0-0`:c?(Yt("replaceCaret pr",c),s==="0"?o==="0"?l=`>=${s}.${o}.${a}-${c} <${s}.${o}.${+a+1}-0`:l=`>=${s}.${o}.${a}-${c} <${s}.${+o+1}.0-0`:l=`>=${s}.${o}.${a}-${c} <${+s+1}.0.0-0`):(Yt("no pr"),s==="0"?o==="0"?l=`>=${s}.${o}.${a}${n} <${s}.${o}.${+a+1}-0`:l=`>=${s}.${o}.${a}${n} <${s}.${+o+1}.0-0`:l=`>=${s}.${o}.${a} <${+s+1}.0.0-0`),Yt("caret return",l),l})},ltt=(t,e)=>(Yt("replaceXRanges",t,e),t.split(/\s+/).map(r=>utt(r,e)).join(" ")),utt=(t,e)=>{t=t.trim();let r=e.loose?jn[on.XRANGELOOSE]:jn[on.XRANGE];return t.replace(r,(n,i,s,o,a,c)=>{Yt("xRange",t,n,i,s,o,a,c);let l=qn(s),u=l||qn(o),d=u||qn(a),f=d;return i==="="&&f&&(i=""),c=e.includePrerelease?"-0":"",l?i===">"||i==="<"?n="<0.0.0-0":n="*":i&&f?(u&&(o=0),a=0,i===">"?(i=">=",u?(s=+s+1,o=0,a=0):(o=+o+1,a=0)):i==="<="&&(i="<",u?s=+s+1:o=+o+1),i==="<"&&(c="-0"),n=`${i+s}.${o}.${a}${c}`):u?n=`>=${s}.0.0${c} <${+s+1}.0.0-0`:d&&(n=`>=${s}.${o}.0${c} <${s}.${+o+1}.0-0`),Yt("xRange return",n),n})},dtt=(t,e)=>(Yt("replaceStars",t,e),t.trim().replace(jn[on.STAR],"")),ftt=(t,e)=>(Yt("replaceGTE0",t,e),t.trim().replace(jn[e.includePrerelease?on.GTE0PRE:on.GTE0],"")),ptt=t=>(e,r,n,i,s,o,a,c,l,u,d,f)=>(qn(n)?r="":qn(i)?r=`>=${n}.0.0${t?"-0":""}`:qn(s)?r=`>=${n}.${i}.0${t?"-0":""}`:o?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,qn(l)?c="":qn(u)?c=`<${+l+1}.0.0-0`:qn(d)?c=`<${l}.${+u+1}.0-0`:f?c=`<=${l}.${u}.${d}-${f}`:t?c=`<${l}.${u}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),htt=(t,e,r)=>{for(let n=0;n<t.length;n++)if(!t[n].test(e))return!1;if(e.prerelease.length&&!r.includePrerelease){for(let n=0;n<t.length;n++)if(Yt(t[n].semver),t[n].semver!==P2.ANY&&t[n].semver.prerelease.length>0){let i=t[n].semver;if(i.major===e.major&&i.minor===e.minor&&i.patch===e.patch)return!0}return!1}return!0}});var WE=E((d6t,$ue)=>{"use strict";var YE=Symbol("SemVer ANY"),N2=class t{static get ANY(){return YE}constructor(e,r){if(r=Pue(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),C2("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===YE?this.value="":this.value=this.operator+this.semver.version,C2("comp",this)}parse(e){let r=this.options.loose?Oue[Cue.COMPARATORLOOSE]:Oue[Cue.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Nue(n[2],this.options.loose):this.semver=YE}toString(){return this.value}test(e){if(C2("Comparator.test",e,this.options.loose),this.semver===YE||e===YE)return!0;if(typeof e=="string")try{e=new Nue(e,this.options)}catch{return!1}return O2(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new kue(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new kue(this.value,r).test(e.semver):(r=Pue(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||O2(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||O2(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};$ue.exports=N2;var Pue=KA(),{safeRe:Oue,t:Cue}=lm(),O2=A2(),C2=HE(),Nue=sn(),kue=fs()});var KE=E((f6t,Lue)=>{"use strict";var mtt=fs(),gtt=(t,e,r)=>{try{e=new mtt(e,r)}catch{return!1}return e.test(t)};Lue.exports=gtt});var Mue=E((p6t,Due)=>{"use strict";var _tt=fs(),ytt=(t,e)=>new _tt(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));Due.exports=ytt});var Fue=E((h6t,Uue)=>{"use strict";var Stt=sn(),Ett=fs(),vtt=(t,e,r)=>{let n=null,i=null,s=null;try{s=new Ett(e,r)}catch{return null}return t.forEach(o=>{s.test(o)&&(!n||i.compare(o)===-1)&&(n=o,i=new Stt(n,r))}),n};Uue.exports=vtt});var que=E((m6t,jue)=>{"use strict";var btt=sn(),Ttt=fs(),wtt=(t,e,r)=>{let n=null,i=null,s=null;try{s=new Ttt(e,r)}catch{return null}return t.forEach(o=>{s.test(o)&&(!n||i.compare(o)===1)&&(n=o,i=new btt(n,r))}),n};jue.exports=wtt});var Vue=E((g6t,zue)=>{"use strict";var k2=sn(),Rtt=fs(),Bue=GE(),Att=(t,e)=>{t=new Rtt(t,e);let r=new k2("0.0.0");if(t.test(r)||(r=new k2("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n<t.set.length;++n){let i=t.set[n],s=null;i.forEach(o=>{let a=new k2(o.semver.version);switch(o.operator){case">":a.prerelease.length===0?a.patch++:a.prerelease.push(0),a.raw=a.format();case"":case">=":(!s||Bue(a,s))&&(s=a);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${o.operator}`)}}),s&&(!r||Bue(r,s))&&(r=s)}return r&&t.test(r)?r:null};zue.exports=Att});var Gue=E((_6t,Hue)=>{"use strict";var xtt=fs(),Itt=(t,e)=>{try{return new xtt(t,e).range||"*"}catch{return null}};Hue.exports=Itt});var ox=E((y6t,Jue)=>{"use strict";var Ptt=sn(),Kue=WE(),{ANY:Ott}=Kue,Ctt=fs(),Ntt=KE(),Wue=GE(),Yue=tx(),ktt=nx(),$tt=rx(),Ltt=(t,e,r,n)=>{t=new Ptt(t,n),e=new Ctt(e,n);let i,s,o,a,c;switch(r){case">":i=Wue,s=ktt,o=Yue,a=">",c=">=";break;case"<":i=Yue,s=$tt,o=Wue,a="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Ntt(t,e,n))return!1;for(let l=0;l<e.set.length;++l){let u=e.set[l],d=null,f=null;if(u.forEach(p=>{p.semver===Ott&&(p=new Kue(">=0.0.0")),d=d||p,f=f||p,i(p.semver,d.semver,n)?d=p:o(p.semver,f.semver,n)&&(f=p)}),d.operator===a||d.operator===c||(!f.operator||f.operator===a)&&s(t,f.semver))return!1;if(f.operator===c&&o(t,f.semver))return!1}return!0};Jue.exports=Ltt});var Xue=E((S6t,Zue)=>{"use strict";var Dtt=ox(),Mtt=(t,e,r)=>Dtt(t,e,">",r);Zue.exports=Mtt});var ede=E((E6t,Que)=>{"use strict";var Utt=ox(),Ftt=(t,e,r)=>Utt(t,e,"<",r);Que.exports=Ftt});var nde=E((v6t,rde)=>{"use strict";var tde=fs(),jtt=(t,e,r)=>(t=new tde(t,r),e=new tde(e,r),t.intersects(e,r));rde.exports=jtt});var sde=E((b6t,ide)=>{"use strict";var qtt=KE(),Btt=ds();ide.exports=(t,e,r)=>{let n=[],i=null,s=null,o=t.sort((u,d)=>Btt(u,d,r));for(let u of o)qtt(u,e,r)?(s=u,i||(i=u)):(s&&n.push([i,s]),s=null,i=null);i&&n.push([i,null]);let a=[];for(let[u,d]of n)u===d?a.push(u):!d&&u===o[0]?a.push("*"):d?u===o[0]?a.push(`<=${d}`):a.push(`${u} - ${d}`):a.push(`>=${u}`);let c=a.join(" || "),l=typeof e.raw=="string"?e.raw:String(e);return c.length<l.length?c:e}});var dde=E((T6t,ude)=>{"use strict";var ode=fs(),D2=WE(),{ANY:$2}=D2,L2=KE(),M2=ds(),ztt=(t,e,r={})=>{if(t===e)return!0;t=new ode(t,r),e=new ode(e,r);let n=!1;e:for(let i of t.set){for(let s of e.set){let o=Htt(i,s,r);if(n=n||o!==null,o)continue e}if(n)return!1}return!0},Vtt=[new D2(">=0.0.0-0")],ade=[new D2(">=0.0.0")],Htt=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===$2){if(e.length===1&&e[0].semver===$2)return!0;r.includePrerelease?t=Vtt:t=ade}if(e.length===1&&e[0].semver===$2){if(r.includePrerelease)return!0;e=ade}let n=new Set,i,s;for(let p of t)p.operator===">"||p.operator===">="?i=cde(i,p,r):p.operator==="<"||p.operator==="<="?s=lde(s,p,r):n.add(p.semver);if(n.size>1)return null;let o;if(i&&s){if(o=M2(i.semver,s.semver,r),o>0)return null;if(o===0&&(i.operator!==">="||s.operator!=="<="))return null}for(let p of n){if(i&&!L2(p,String(i),r)||s&&!L2(p,String(s),r))return null;for(let h of e)if(!L2(p,String(h),r))return!1;return!0}let a,c,l,u,d=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1,f=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1;d&&d.prerelease.length===1&&s.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let p of e){if(u=u||p.operator===">"||p.operator===">=",l=l||p.operator==="<"||p.operator==="<=",i){if(f&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===f.major&&p.semver.minor===f.minor&&p.semver.patch===f.patch&&(f=!1),p.operator===">"||p.operator===">="){if(a=cde(i,p,r),a===p&&a!==i)return!1}else if(i.operator===">="&&!p.test(i.semver))return!1}if(s){if(d&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===d.major&&p.semver.minor===d.minor&&p.semver.patch===d.patch&&(d=!1),p.operator==="<"||p.operator==="<="){if(c=lde(s,p,r),c===p&&c!==s)return!1}else if(s.operator==="<="&&!p.test(s.semver))return!1}if(!p.operator&&(s||i)&&o!==0)return!1}return!(i&&l&&!s&&o!==0||s&&u&&!i&&o!==0||f||d)},cde=(t,e,r)=>{if(!t)return e;let n=M2(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},lde=(t,e,r)=>{if(!t)return e;let n=M2(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t};ude.exports=ztt});var mde=E((w6t,hde)=>{"use strict";var U2=lm(),fde=cm(),Gtt=sn(),pde=v2(),Wtt=Vl(),Ytt=Mle(),Ktt=Fle(),Jtt=Ble(),Ztt=Hle(),Xtt=Wle(),Qtt=Kle(),ert=Zle(),trt=Qle(),rrt=ds(),nrt=nue(),irt=sue(),srt=ex(),ort=lue(),art=due(),crt=GE(),lrt=tx(),urt=w2(),drt=R2(),frt=rx(),prt=nx(),hrt=A2(),mrt=Eue(),grt=bue(),_rt=WE(),yrt=fs(),Srt=KE(),Ert=Mue(),vrt=Fue(),brt=que(),Trt=Vue(),wrt=Gue(),Rrt=ox(),Art=Xue(),xrt=ede(),Irt=nde(),Prt=sde(),Ort=dde();hde.exports={parse:Wtt,valid:Ytt,clean:Ktt,inc:Jtt,diff:Ztt,major:Xtt,minor:Qtt,patch:ert,prerelease:trt,compare:rrt,rcompare:nrt,compareLoose:irt,compareBuild:srt,sort:ort,rsort:art,gt:crt,lt:lrt,eq:urt,neq:drt,gte:frt,lte:prt,cmp:hrt,coerce:mrt,truncate:grt,Comparator:_rt,Range:yrt,satisfies:Srt,toComparators:Ert,maxSatisfying:vrt,minSatisfying:brt,minVersion:Trt,validRange:wrt,outside:Rrt,gtr:Art,ltr:xrt,intersects:Irt,simplifyRange:Prt,subset:Ort,SemVer:Gtt,re:U2.re,src:U2.src,tokens:U2.t,SEMVER_SPEC_VERSION:fde.SEMVER_SPEC_VERSION,RELEASE_TYPES:fde.RELEASE_TYPES,compareIdentifiers:pde.compareIdentifiers,rcompareIdentifiers:pde.rcompareIdentifiers}});var V2=E((R6t,z2)=>{"use strict";var F2=mde(),q2=V("assert"),B2=Symbol.for("registered-plugin"),{kTestInternals:Crt}=Tr(),{exist:Nrt,existReply:krt,existRequest:$rt}=JS(),{FST_ERR_PLUGIN_VERSION_MISMATCH:Lrt,FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:Drt,FST_ERR_PLUGIN_INVALID_ASYNC_HANDLER:Mrt}=Mr(),Urt=/-(?:rc|pre|alpha).+$/u;function JE(t){return t[Symbol.for("plugin-meta")]}function gde(t){let e=_de(t);if(e)return e;let r=V.cache;if(r){let n=Object.keys(r);for(let i=0;i<n.length;i++){let s=n[i];if(r[s].exports===t)return s}}return t.name?t.name:null}function Frt(t){return t.toString().split(`
|
|
338
338
|
`,2).map(e=>e.trim()).join(" -- ")}function _de(t){return t[Symbol.for("fastify.display-name")]}function yde(t){return!!t[Symbol.for("skip-override")]}function Sde(t){let e=JE(t);if(!e)return;let r=e.dependencies;r&&(q2(Array.isArray(r),"The dependencies should be an array of strings"),r.forEach(n=>{q2(this[B2].indexOf(n)>-1,`The dependency '${n}' of plugin '${e.name}' is not registered`)}))}function Ede(t){let e=JE(t);if(!e)return;let{decorators:r,name:n}=e;r&&(r.fastify&&j2(this,"Fastify",r.fastify,n),r.reply&&j2(this,"Reply",r.reply,n),r.request&&j2(this,"Request",r.request,n))}var jrt={Fastify:Nrt,Request:$rt,Reply:krt};function j2(t,e,r,n){q2(Array.isArray(r),"The decorators should be an array of strings"),r.forEach(i=>{let s=typeof n=="string"?` required by '${n}'`:"";if(!jrt[e].call(t,i))throw new Drt(i,s,e)})}function qrt(t){let e=JE(t);if(e?.fastify==null)return;let r=e.fastify,n=Urt.test(this.version);if(!(n===!0&&F2.gt(this.version,F2.coerce(r))===!0)&&r&&F2.satisfies(this.version,r,{includePrerelease:n})===!1)throw new Lrt(e.name,r,this.version)}function Brt(t){let e=JE(t);if(!e)return;let r=e.name;if(r)return this[B2].push(r),r}function zrt(t,e){if(t.constructor.name==="AsyncFunction"&&t.length===3)throw new Mrt(e)}function Vrt(t){let e=Brt.call(this,t)||gde(t);return zrt.call(this,t,e),qrt.call(this,t),Ede.call(this,t),Sde.call(this,t),yde(t)}z2.exports={getPluginName:gde,getFuncPreview:Frt,kRegisteredPlugins:B2,getDisplayName:_de,registerPlugin:Vrt};z2.exports[Crt]={shouldSkipOverride:yde,getMeta:JE,checkDecorators:Ede,checkDependencies:Sde}});var ax=E((x6t,vde)=>{"use strict";function Hrt(t,e){let r=e||Wrt();return t?Yrt(t,r):r}function Grt(t,e){return t.genReqId(e)}function Wrt(){let e=0;return function(){return e=e+1&2147483647,`req-${e.toString(36)}`}}function Yrt(t,e){return function(r){return r.headers[t]||e(r)}}vde.exports={getGenReqId:Grt,reqIdGenFactory:Hrt}});var Rde=E((I6t,wde)=>{"use strict";var bde=12,Krt=0,H2=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,10,9,9,9,11,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,24,36,48,60,72,84,96,0,12,12,12,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,24,24,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,0,0,48,48,48,0,0,0,0,0,0,0,0,0,0,48,48,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,127,63,63,63,0,31,15,15,15,7,7,7];function Jrt(t){var e=t.indexOf("%");if(e===-1)return t;for(var r=t.length,n="",i=0,s=0,o=e,a=bde;e>-1&&e<r;){var c=Tde(t[e+1],4),l=Tde(t[e+2],0),u=c|l,d=H2[u];if(a=H2[256+a+d],s=s<<6|u&H2[364+d],a===bde)n+=t.slice(i,o),n+=s<=65535?String.fromCharCode(s):String.fromCharCode(55232+(s>>10),56320+(s&1023)),s=0,i=e+3,e=o=t.indexOf("%",i);else{if(a===Krt)return null;if(e+=3,e<r&&t.charCodeAt(e)===37)continue;return null}}return n+t.slice(i)}var Zrt={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};function Tde(t,e){var r=Zrt[t];return r===void 0?255:r<<e}wde.exports=Jrt});var Ode=E((P6t,Pde)=>{"use strict";var Ade=Rde(),xde=/\+/g,Ide=function(){};Ide.prototype=Object.create(null);function Xrt(t){let e=new Ide;if(typeof t!="string")return e;let r=t.length,n="",i="",s=-1,o=-1,a=!1,c=!1,l=!1,u=!1,d=!1,f=0;for(let p=0;p<r+1;p++)if(f=p!==r?t.charCodeAt(p):38,f===38){if(d=o>s,d||(o=p),n=t.slice(s+1,o),d||n.length>0){l&&(n=n.replace(xde," ")),a&&(n=Ade(n)||n),d&&(i=t.slice(o+1,p),u&&(i=i.replace(xde," ")),c&&(i=Ade(i)||i));let h=e[n];h===void 0?e[n]=i:h.pop?h.push(i):e[n]=[h,i]}i="",s=p,o=p,a=!1,c=!1,l=!1,u=!1}else f===61?o<=s?o=p:c=!0:f===43?o>s?u=!0:l=!0:f===37&&(o>s?c=!0:a=!0);return e}Pde.exports=Xrt});var Nde=E((O6t,Cde)=>{"use strict";var Vo=Array.from({length:256},(t,e)=>"%"+((e<16?"0":"")+e.toString(16)).toUpperCase()),Qrt=new Int8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0]);function ent(t){let e=t.length;if(e===0)return"";let r="",n=0,i=0;e:for(;i<e;i++){let s=t.charCodeAt(i);for(;s<128;){if(Qrt[s]!==1&&(n<i&&(r+=t.slice(n,i)),n=i+1,r+=Vo[s]),++i===e)break e;s=t.charCodeAt(i)}if(n<i&&(r+=t.slice(n,i)),s<2048){n=i+1,r+=Vo[192|s>>6]+Vo[128|s&63];continue}if(s<55296||s>=57344){n=i+1,r+=Vo[224|s>>12]+Vo[128|s>>6&63]+Vo[128|s&63];continue}if(++i,i>=e)throw new Error("URI malformed");let o=t.charCodeAt(i)&1023;n=i+1,s=65536+((s&1023)<<10|o),r+=Vo[240|s>>18]+Vo[128|s>>12&63]+Vo[128|s>>6&63]+Vo[128|s&63]}return n===0?t:n<e?r+t.slice(n):r}Cde.exports={encodeString:ent}});var Lde=E((C6t,$de)=>{"use strict";var{encodeString:G2}=Nde();function kde(t){let e=typeof t;return e==="string"?G2(t):e==="bigint"?t.toString():e==="boolean"?t?"true":"false":e==="number"&&Number.isFinite(t)?t<1e21?""+t:G2(""+t):""}function tnt(t){let e="";if(t===null||typeof t!="object")return e;let r="&",n=Object.keys(t),i=n.length,s=0;for(let o=0;o<i;o++){let a=n[o],c=t[a],l=G2(a)+"=";if(o&&(e+=r),Array.isArray(c)){s=c.length;for(let u=0;u<s;u++)u&&(e+=r),e+=l,e+=kde(c[u])}else e+=l,e+=kde(c)}return e}$de.exports=tnt});var Fde=E((N6t,ZE)=>{"use strict";var Dde=Ode(),Mde=Lde(),Ude={parse:Dde,stringify:Mde};ZE.exports=Ude;ZE.exports.default=Ude;ZE.exports.parse=Dde;ZE.exports.stringify=Mde});var qde=E(jde=>{"use strict";Object.defineProperty(jde,"__esModule",{value:!0})});var Bde=E(XE=>{"use strict";Object.defineProperty(XE,"__esModule",{value:!0});XE.types=void 0;var rnt;(function(t){t[t.ROOT=0]="ROOT",t[t.GROUP=1]="GROUP",t[t.POSITION=2]="POSITION",t[t.SET=3]="SET",t[t.RANGE=4]="RANGE",t[t.REPETITION=5]="REPETITION",t[t.REFERENCE=6]="REFERENCE",t[t.CHAR=7]="CHAR"})(rnt=XE.types||(XE.types={}))});var Vde=E(zde=>{"use strict";Object.defineProperty(zde,"__esModule",{value:!0})});var cc=E(ac=>{"use strict";var nnt=ac&&ac.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),W2=ac&&ac.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&nnt(e,t,r)};Object.defineProperty(ac,"__esModule",{value:!0});W2(qde(),ac);W2(Bde(),ac);W2(Vde(),ac)});var cx=E(bn=>{"use strict";Object.defineProperty(bn,"__esModule",{value:!0});bn.anyChar=bn.notWhitespace=bn.whitespace=bn.notInts=bn.ints=bn.notWords=bn.words=void 0;var _t=cc(),Hde=()=>[{type:_t.types.RANGE,from:48,to:57}],Gde=()=>[{type:_t.types.CHAR,value:95},{type:_t.types.RANGE,from:97,to:122},{type:_t.types.RANGE,from:65,to:90},{type:_t.types.RANGE,from:48,to:57}],Wde=()=>[{type:_t.types.CHAR,value:9},{type:_t.types.CHAR,value:10},{type:_t.types.CHAR,value:11},{type:_t.types.CHAR,value:12},{type:_t.types.CHAR,value:13},{type:_t.types.CHAR,value:32},{type:_t.types.CHAR,value:160},{type:_t.types.CHAR,value:5760},{type:_t.types.RANGE,from:8192,to:8202},{type:_t.types.CHAR,value:8232},{type:_t.types.CHAR,value:8233},{type:_t.types.CHAR,value:8239},{type:_t.types.CHAR,value:8287},{type:_t.types.CHAR,value:12288},{type:_t.types.CHAR,value:65279}],int=()=>[{type:_t.types.CHAR,value:10},{type:_t.types.CHAR,value:13},{type:_t.types.CHAR,value:8232},{type:_t.types.CHAR,value:8233}];bn.words=()=>({type:_t.types.SET,set:Gde(),not:!1});bn.notWords=()=>({type:_t.types.SET,set:Gde(),not:!0});bn.ints=()=>({type:_t.types.SET,set:Hde(),not:!1});bn.notInts=()=>({type:_t.types.SET,set:Hde(),not:!0});bn.whitespace=()=>({type:_t.types.SET,set:Wde(),not:!1});bn.notWhitespace=()=>({type:_t.types.SET,set:Wde(),not:!0});bn.anyChar=()=>({type:_t.types.SET,set:int(),not:!0})});var Kde=E(ps=>{"use strict";var snt=ps&&ps.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),ont=ps&&ps.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),ant=ps&&ps.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&snt(e,t,r);return ont(e,t),e};Object.defineProperty(ps,"__esModule",{value:!0});ps.tokenizeClass=ps.strToChars=void 0;var Yde=cc(),um=ant(cx()),cnt="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";ps.strToChars=t=>{let e=/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g;return t.replace(e,(r,n,i,s,o,a,c)=>{if(i)return r;let l=n?8:s?parseInt(s,16):o?parseInt(o,16):a?cnt.indexOf(a):{0:0,t:9,n:10,v:11,f:12,r:13}[c],u=String.fromCharCode(l);return/[[\]{}^$.|?*+()]/.test(u)?`\\${u}`:u})};ps.tokenizeClass=(t,e)=>{var r,n,i,s,o,a,c;let l=[],u,d,f=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(u=f.exec(t))!==null;){let p=(c=(a=(o=(s=(i=(n=(r=u[1]&&um.words())!==null&&r!==void 0?r:u[2]&&um.ints())!==null&&n!==void 0?n:u[3]&&um.whitespace())!==null&&i!==void 0?i:u[4]&&um.notWords())!==null&&s!==void 0?s:u[5]&&um.notInts())!==null&&o!==void 0?o:u[6]&&um.notWhitespace())!==null&&a!==void 0?a:u[7]&&{type:Yde.types.RANGE,from:(u[8]||u[9]).charCodeAt(0),to:(d=u[10]).charCodeAt(d.length-1)})!==null&&c!==void 0?c:(d=u[16])&&{type:Yde.types.CHAR,value:d.charCodeAt(0)};if(p)l.push(p);else return[l,f.lastIndex]}throw new SyntaxError(`Invalid regular expression: /${e}/: Unterminated character class`)}});var Y2=E(Ho=>{"use strict";var lnt=Ho&&Ho.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),unt=Ho&&Ho.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Xde=Ho&&Ho.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&lnt(e,t,r);return unt(e,t),e};Object.defineProperty(Ho,"__esModule",{value:!0});Ho.tokenizer=void 0;var Jde=Xde(Kde()),an=cc(),cf=Xde(cx()),dnt=/^[a-zA-Z_$]$/i,fnt=/^[a-zA-Z0-9_$]$/i,Zde=/\d/;Ho.tokenizer=t=>{let e=0,r,n={type:an.types.ROOT,stack:[]},i=n,s=n.stack,o=[],a=[],c=0,l=d=>{throw new SyntaxError(`Invalid regular expression: /${t}/: Nothing to repeat at column ${d-1}`)},u=Jde.strToChars(t);for(;e<u.length;)switch(r=u[e++]){case"\\":if(e===u.length)throw new SyntaxError(`Invalid regular expression: /${t}/: \\ at end of pattern`);switch(r=u[e++]){case"b":s.push({type:an.types.POSITION,value:"b"});break;case"B":s.push({type:an.types.POSITION,value:"B"});break;case"w":s.push(cf.words());break;case"W":s.push(cf.notWords());break;case"d":s.push(cf.ints());break;case"D":s.push(cf.notInts());break;case"s":s.push(cf.whitespace());break;case"S":s.push(cf.notWhitespace());break;default:if(Zde.test(r)){let d=r;for(;e<u.length&&Zde.test(u[e]);)d+=u[e++];let f=parseInt(d,10),p={type:an.types.REFERENCE,value:f};s.push(p),a.push({reference:p,stack:s,index:s.length-1})}else s.push({type:an.types.CHAR,value:r.charCodeAt(0)})}break;case"^":s.push({type:an.types.POSITION,value:"^"});break;case"$":s.push({type:an.types.POSITION,value:"$"});break;case"[":{let d;u[e]==="^"?(d=!0,e++):d=!1;let f=Jde.tokenizeClass(u.slice(e),t);e+=f[1],s.push({type:an.types.SET,set:f[0],not:d});break}case".":s.push(cf.anyChar());break;case"(":{let d={type:an.types.GROUP,stack:[],remember:!0};if(u[e]==="?")if(r=u[e+1],e+=2,r==="=")d.followedBy=!0,d.remember=!1;else if(r==="!")d.notFollowedBy=!0,d.remember=!1;else if(r==="<"){let f="";if(dnt.test(u[e]))f+=u[e],e++;else throw new SyntaxError(`Invalid regular expression: /${t}/: Invalid capture group name, character '${u[e]}' after '<' at column ${e+1}`);for(;e<u.length&&fnt.test(u[e]);)f+=u[e],e++;if(!f)throw new SyntaxError(`Invalid regular expression: /${t}/: Invalid capture group name, character '${u[e]}' after '<' at column ${e+1}`);if(u[e]!==">")throw new SyntaxError(`Invalid regular expression: /${t}/: Unclosed capture group name, expected '>', found '${u[e]}' at column ${e+1}`);d.name=f,e++}else if(r===":")d.remember=!1;else throw new SyntaxError(`Invalid regular expression: /${t}/: Invalid group, character '${r}' after '?' at column ${e-1}`);else c+=1;s.push(d),o.push(i),i=d,s=d.stack;break}case")":if(o.length===0)throw new SyntaxError(`Invalid regular expression: /${t}/: Unmatched ) at column ${e-1}`);i=o.pop(),s=i.options?i.options[i.options.length-1]:i.stack;break;case"|":{i.options||(i.options=[i.stack],delete i.stack);let d=[];i.options.push(d),s=d;break}case"{":{let d=/^(\d+)(,(\d+)?)?\}/.exec(u.slice(e)),f,p;d!==null?(s.length===0&&l(e),f=parseInt(d[1],10),p=d[2]?d[3]?parseInt(d[3],10):1/0:f,e+=d[0].length,s.push({type:an.types.REPETITION,min:f,max:p,value:s.pop()})):s.push({type:an.types.CHAR,value:123});break}case"?":s.length===0&&l(e),s.push({type:an.types.REPETITION,min:0,max:1,value:s.pop()});break;case"+":s.length===0&&l(e),s.push({type:an.types.REPETITION,min:1,max:1/0,value:s.pop()});break;case"*":s.length===0&&l(e),s.push({type:an.types.REPETITION,min:0,max:1/0,value:s.pop()});break;default:s.push({type:an.types.CHAR,value:r.charCodeAt(0)})}if(o.length!==0)throw new SyntaxError(`Invalid regular expression: /${t}/: Unterminated group`);return pnt(a,c),n};function pnt(t,e){for(let r of t.reverse())if(e<r.reference.value){r.reference.type=an.types.CHAR;let n=r.reference.value.toString();if(r.reference.value=parseInt(n,8),!/^[0-7]+$/.test(n)){let i=0;for(;n[i]!=="8"&&n[i]!=="9";)i+=1;if(i===0?(r.reference.value=n.charCodeAt(0),i+=1):r.reference.value=parseInt(n.slice(0,i),8),n.length>i){let s=r.stack.splice(r.index+1);for(let o of n.slice(i))r.stack.push({type:an.types.CHAR,value:o.charCodeAt(0)});r.stack.push(...s)}}}}});var efe=E(Tn=>{"use strict";var hnt=Tn&&Tn.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),mnt=Tn&&Tn.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),gnt=Tn&&Tn.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&hnt(e,t,r);return mnt(e,t),e};Object.defineProperty(Tn,"__esModule",{value:!0});Tn.NOTANYCHAR=Tn.WHITESPACE=Tn.WORDS=Tn.INTS=void 0;var lx=gnt(cx()),Qde=cc();function ux(t){let e={},r=0;for(let n of t)n.type===Qde.types.CHAR&&(e[n.value]=!0),n.type===Qde.types.RANGE&&(e[`${n.from}-${n.to}`]=!0),r+=1;return{lookup:()=>Object.assign({},e),len:r}}Tn.INTS=ux(lx.ints().set);Tn.WORDS=ux(lx.words().set);Tn.WHITESPACE=ux(lx.whitespace().set);Tn.NOTANYCHAR=ux(lx.anyChar().set)});var rfe=E(hs=>{"use strict";var _nt=hs&&hs.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),ynt=hs&&hs.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Snt=hs&&hs.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&_nt(e,t,r);return ynt(e,t),e};Object.defineProperty(hs,"__esModule",{value:!0});hs.writeSetTokens=hs.setChar=void 0;var hx=cc(),dx=Snt(efe());function px(t){return t===94?"\\^":t===92?"\\\\":t===93?"\\]":t===45?"\\-":String.fromCharCode(t)}hs.setChar=px;function fx(t,{lookup:e,len:r}){if(r!==t.length)return!1;let n=e();for(let i of t){if(i.type===hx.types.SET)return!1;let s=i.type===hx.types.CHAR?i.value:`${i.from}-${i.to}`;if(n[s])n[s]=!1;else return!1}return!0}function tfe(t,e=!1){if(fx(t.set,dx.INTS))return t.not?"\\D":"\\d";if(fx(t.set,dx.WORDS))return t.not?"\\W":"\\w";if(t.not&&fx(t.set,dx.NOTANYCHAR))return".";if(fx(t.set,dx.WHITESPACE))return t.not?"\\S":"\\s";let r="";for(let i=0;i<t.set.length;i++){let s=t.set[i];r+=Ent(s)}let n=`${t.not?"^":""}${r}`;return e?n:`[${n}]`}hs.writeSetTokens=tfe;function Ent(t){return t.type===hx.types.CHAR?px(t.value):t.type===hx.types.RANGE?`${px(t.from)}-${px(t.to)}`:tfe(t,!0)}});var J2=E(dm=>{"use strict";Object.defineProperty(dm,"__esModule",{value:!0});dm.reconstruct=void 0;var Hl=cc(),K2=rfe(),nfe=t=>t.map(dm.reconstruct).join(""),ife=t=>{if("options"in t)return t.options.map(nfe).join("|");if("stack"in t)return nfe(t.stack);throw new Error("options or stack must be Root or Group token")};dm.reconstruct=t=>{switch(t.type){case Hl.types.ROOT:return ife(t);case Hl.types.CHAR:{let e=String.fromCharCode(t.value);return(/[[\\{}$^.|?*+()]/.test(e)?"\\":"")+e}case Hl.types.POSITION:return t.value==="^"||t.value==="$"?t.value:`\\${t.value}`;case Hl.types.REFERENCE:return`\\${t.value}`;case Hl.types.SET:return K2.writeSetTokens(t);case Hl.types.GROUP:return`(${t.name?`?<${t.name}>`:t.remember?"":t.followedBy?"?=":t.notFollowedBy?"?!":"?:"}${ife(t)})`;case Hl.types.REPETITION:{let{min:e,max:r}=t,n;return e===0&&r===1?n="?":e===1&&r===1/0?n="+":e===0&&r===1/0?n="*":r===1/0?n=`{${e},}`:e===r?n=`{${e}}`:n=`{${e},${r}}`,`${dm.reconstruct(t.value)}${n}`}case Hl.types.RANGE:return`${K2.setChar(t.from)}-${K2.setChar(t.to)}`;default:throw new Error(`Invalid token type ${t}`)}}});var X2=E((ms,mx)=>{"use strict";var vnt=ms&&ms.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),Z2=ms&&ms.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&vnt(e,t,r)};Object.defineProperty(ms,"__esModule",{value:!0});ms.types=void 0;var sfe=cc();Object.defineProperty(ms,"types",{enumerable:!0,get:function(){return sfe.types}});Z2(Y2(),ms);Z2(J2(),ms);var ofe=Y2(),bnt=J2();Z2(cc(),ms);ms.default=ofe.tokenizer;mx.exports=ofe.tokenizer;mx.exports.types=sfe.types;mx.exports.reconstruct=bnt.reconstruct});var afe=E((z6t,gx)=>{"use strict";var Tnt=X2(),{types:wnt}=X2();function Q2(t,e,r){let n,i,s;if(t.type===wnt.REPETITION&&(r++,e.reps++,r>1||e.reps>e.limit))return!1;let o=t.options||t.value?.options;if(o){for(n=0,s=o.length;n<s;n++)if(i=Q2({stack:o[n]},e,r),!i)return!1}let a=t.stack||t.value?.stack;if(!a)return!0;for(n=0,s=a.length;n<s;n++)if(i=Q2(a[n],e,r),!i)return!1;return!0}function eq(t,e){let r={reps:0,limit:e?.limit??25};Rnt(t)?t=t.source:typeof t!="string"&&(t=String(t));try{return Q2(Tnt(t),r,0)}catch{return!1}}function Rnt(t){return Object.prototype.toString.call(t)==="[object RegExp]"}gx.exports=eq;gx.exports.default=eq;gx.exports.safeRegex=eq});var _x=E((V6t,cfe)=>{"use strict";cfe.exports={name:"__fmw_internal_strategy_merged_tree_http_method__",storage:function(){let t=new Map;return{get:e=>t.get(e)||null,set:(e,r)=>{t.set(e,r)}}},deriveConstraint:t=>t.method,mustMatchWhenDerived:!0}});var mfe=E((H6t,hfe)=>{"use strict";var lfe=fE(),ufe=_x(),dfe=Symbol("treeData");function ffe(t,e=""){let r="",n=Object.keys(t);for(let i=0;i<n.length;i++){let s=n[i],o=t[s],a=i===n.length-1,c=a?"\u2514\u2500\u2500 ":"\u251C\u2500\u2500 ",l=a?" ":"\u2502 ",d=(o[dfe]||"").replaceAll(`
|
|
339
339
|
`,`
|
|
340
340
|
`+e+l);r+=e+c+s+d+`
|
|
@@ -536,7 +536,7 @@ new Anthropic({ apiKey, dangerouslyAllowBrowser: true });
|
|
|
536
536
|
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let o of t.seen.entries()){let a=o[1];if(e===o[0]){s(o);continue}if(t.external){let l=t.external.registry.get(o[0])?.id;if(e!==o[0]&&l){s(o);continue}}if(t.metadataRegistry.get(o[0])?.id){s(o);continue}if(a.cycle){s(o);continue}if(a.count>1&&t.reused==="ref"){s(o);continue}}}function pu(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=a=>{let c=t.seen.get(a);if(c.ref===null)return;let l=c.def??c.schema,u={...l},d=c.ref;if(c.ref=null,d){n(d);let p=t.seen.get(d),h=p.schema;if(h.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0")?(l.allOf=l.allOf??[],l.allOf.push(h)):Object.assign(l,h),Object.assign(l,u),a._zod.parent===d)for(let _ in l)_==="$ref"||_==="allOf"||_ in u||delete l[_];if(h.$ref&&p.def)for(let _ in l)_==="$ref"||_==="allOf"||_ in p.def&&JSON.stringify(l[_])===JSON.stringify(p.def[_])&&delete l[_]}let f=a._zod.parent;if(f&&f!==d){n(f);let p=t.seen.get(f);if(p?.schema.$ref&&(l.$ref=p.schema.$ref,p.def))for(let h in l)h==="$ref"||h==="allOf"||h in p.def&&JSON.stringify(l[h])===JSON.stringify(p.def[h])&&delete l[h]}t.override({zodSchema:a,jsonSchema:l,path:c.path??[]})};for(let a of[...t.seen.entries()].reverse())n(a[0]);let i={};if(t.target==="draft-2020-12"?i.$schema="https://json-schema.org/draft/2020-12/schema":t.target==="draft-07"?i.$schema="http://json-schema.org/draft-07/schema#":t.target==="draft-04"?i.$schema="http://json-schema.org/draft-04/schema#":t.target,t.external?.uri){let a=t.external.registry.get(e)?.id;if(!a)throw new Error("Schema is missing an `id` property");i.$id=t.external.uri(a)}Object.assign(i,r.def??r.schema);let s=t.metadataRegistry.get(e)?.id;s!==void 0&&i.id===s&&delete i.id;let o=t.external?.defs??{};for(let a of t.seen.entries()){let c=a[1];c.def&&c.defId&&(c.def.id===c.defId&&delete c.def.id,o[c.defId]=c.def)}t.external||Object.keys(o).length>0&&(t.target==="draft-2020-12"?i.$defs=o:i.definitions=o);try{let a=JSON.parse(JSON.stringify(i));return Object.defineProperty(a,"~standard",{value:{...e["~standard"],jsonSchema:{input:hg(e,"input",t.processors),output:hg(e,"output",t.processors)}},enumerable:!1,writable:!1}),a}catch{throw new Error("Error converting schema to JSON.")}}function Hn(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let n=t._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return Hn(n.element,r);if(n.type==="set")return Hn(n.valueType,r);if(n.type==="lazy")return Hn(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return Hn(n.innerType,r);if(n.type==="intersection")return Hn(n.left,r)||Hn(n.right,r);if(n.type==="record"||n.type==="map")return Hn(n.keyType,r)||Hn(n.valueType,r);if(n.type==="pipe")return t._zod.traits.has("$ZodCodec")?!0:Hn(n.in,r)||Hn(n.out,r);if(n.type==="object"){for(let i in n.shape)if(Hn(n.shape[i],r))return!0;return!1}if(n.type==="union"){for(let i of n.options)if(Hn(i,r))return!0;return!1}if(n.type==="tuple"){for(let i of n.items)if(Hn(i,r))return!0;return!!(n.rest&&Hn(n.rest,r))}return!1}var R4=(t,e={})=>r=>{let n=du({...r,processors:e});return Et(t,n),fu(n,t),pu(n,t)},hg=(t,e,r={})=>n=>{let{libraryOptions:i,target:s}=n??{},o=du({...i??{},target:s,io:e,processors:r});return Et(t,o),fu(o,t),pu(o,t)};var lut={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},A4=(t,e,r,n)=>{let i=r;i.type="string";let{minimum:s,maximum:o,format:a,patterns:c,contentEncoding:l}=t._zod.bag;if(typeof s=="number"&&(i.minLength=s),typeof o=="number"&&(i.maxLength=o),a&&(i.format=lut[a]??a,i.format===""&&delete i.format,a==="time"&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let u=[...c];u.length===1?i.pattern=u[0].source:u.length>1&&(i.allOf=[...u.map(d=>({...e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))])}},x4=(t,e,r,n)=>{let i=r,{minimum:s,maximum:o,format:a,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=t._zod.bag;typeof a=="string"&&a.includes("int")?i.type="integer":i.type="number";let d=typeof u=="number"&&u>=(s??Number.NEGATIVE_INFINITY),f=typeof l=="number"&&l<=(o??Number.POSITIVE_INFINITY),p=e.target==="draft-04"||e.target==="openapi-3.0";d?p?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u:typeof s=="number"&&(i.minimum=s),f?p?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l:typeof o=="number"&&(i.maximum=o),typeof c=="number"&&(i.multipleOf=c)},I4=(t,e,r,n)=>{r.type="boolean"},P4=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},O4=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},C4=(t,e,r,n)=>{e.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"},N4=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},k4=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},$4=(t,e,r,n)=>{r.not={}},L4=(t,e,r,n)=>{},D4=(t,e,r,n)=>{},M4=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},U4=(t,e,r,n)=>{let i=t._zod.def,s=Mv(i.entries);s.every(o=>typeof o=="number")&&(r.type="number"),s.every(o=>typeof o=="string")&&(r.type="string"),r.enum=s},F4=(t,e,r,n)=>{let i=t._zod.def,s=[];for(let o of i.values)if(o===void 0){if(e.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof o=="bigint"){if(e.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");s.push(Number(o))}else s.push(o);if(s.length!==0)if(s.length===1){let o=s[0];r.type=o===null?"null":typeof o,e.target==="draft-04"||e.target==="openapi-3.0"?r.enum=[o]:r.const=o}else s.every(o=>typeof o=="number")&&(r.type="number"),s.every(o=>typeof o=="string")&&(r.type="string"),s.every(o=>typeof o=="boolean")&&(r.type="boolean"),s.every(o=>o===null)&&(r.type="null"),r.enum=s},j4=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},q4=(t,e,r,n)=>{let i=r,s=t._zod.pattern;if(!s)throw new Error("Pattern not found in template literal");i.type="string",i.pattern=s.source},B4=(t,e,r,n)=>{let i=r,s={type:"string",format:"binary",contentEncoding:"binary"},{minimum:o,maximum:a,mime:c}=t._zod.bag;o!==void 0&&(s.minLength=o),a!==void 0&&(s.maxLength=a),c?c.length===1?(s.contentMediaType=c[0],Object.assign(i,s)):(Object.assign(i,s),i.anyOf=c.map(l=>({contentMediaType:l}))):Object.assign(i,s)},z4=(t,e,r,n)=>{r.type="boolean"},V4=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},H4=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},G4=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},W4=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},Y4=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},K4=(t,e,r,n)=>{let i=r,s=t._zod.def,{minimum:o,maximum:a}=t._zod.bag;typeof o=="number"&&(i.minItems=o),typeof a=="number"&&(i.maxItems=a),i.type="array",i.items=Et(s.element,e,{...n,path:[...n.path,"items"]})},J4=(t,e,r,n)=>{let i=r,s=t._zod.def;i.type="object",i.properties={};let o=s.shape;for(let l in o)i.properties[l]=Et(o[l],e,{...n,path:[...n.path,"properties",l]});let a=new Set(Object.keys(o)),c=new Set([...a].filter(l=>{let u=s.shape[l]._zod;return e.io==="input"?u.optin===void 0:u.optout===void 0}));c.size>0&&(i.required=Array.from(c)),s.catchall?._zod.def.type==="never"?i.additionalProperties=!1:s.catchall?s.catchall&&(i.additionalProperties=Et(s.catchall,e,{...n,path:[...n.path,"additionalProperties"]})):e.io==="output"&&(i.additionalProperties=!1)},SP=(t,e,r,n)=>{let i=t._zod.def,s=i.inclusive===!1,o=i.options.map((a,c)=>Et(a,e,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));s?r.oneOf=o:r.anyOf=o},Z4=(t,e,r,n)=>{let i=t._zod.def,s=Et(i.left,e,{...n,path:[...n.path,"allOf",0]}),o=Et(i.right,e,{...n,path:[...n.path,"allOf",1]}),a=l=>"allOf"in l&&Object.keys(l).length===1,c=[...a(s)?s.allOf:[s],...a(o)?o.allOf:[o]];r.allOf=c},X4=(t,e,r,n)=>{let i=r,s=t._zod.def;i.type="array";let o=e.target==="draft-2020-12"?"prefixItems":"items",a=e.target==="draft-2020-12"||e.target==="openapi-3.0"?"items":"additionalItems",c=s.items.map((f,p)=>Et(f,e,{...n,path:[...n.path,o,p]})),l=s.rest?Et(s.rest,e,{...n,path:[...n.path,a,...e.target==="openapi-3.0"?[s.items.length]:[]]}):null;e.target==="draft-2020-12"?(i.prefixItems=c,l&&(i.items=l)):e.target==="openapi-3.0"?(i.items={anyOf:c},l&&i.items.anyOf.push(l),i.minItems=c.length,l||(i.maxItems=c.length)):(i.items=c,l&&(i.additionalItems=l));let{minimum:u,maximum:d}=t._zod.bag;typeof u=="number"&&(i.minItems=u),typeof d=="number"&&(i.maxItems=d)},Q4=(t,e,r,n)=>{let i=r,s=t._zod.def;i.type="object";let o=s.keyType,c=o._zod.bag?.patterns;if(s.mode==="loose"&&c&&c.size>0){let u=Et(s.valueType,e,{...n,path:[...n.path,"patternProperties","*"]});i.patternProperties={};for(let d of c)i.patternProperties[d.source]=u}else(e.target==="draft-07"||e.target==="draft-2020-12")&&(i.propertyNames=Et(s.keyType,e,{...n,path:[...n.path,"propertyNames"]})),i.additionalProperties=Et(s.valueType,e,{...n,path:[...n.path,"additionalProperties"]});let l=o._zod.values;if(l){let u=[...l].filter(d=>typeof d=="string"||typeof d=="number");u.length>0&&(i.required=u)}},eH=(t,e,r,n)=>{let i=t._zod.def,s=Et(i.innerType,e,n),o=e.seen.get(t);e.target==="openapi-3.0"?(o.ref=i.innerType,r.nullable=!0):r.anyOf=[s,{type:"null"}]},tH=(t,e,r,n)=>{let i=t._zod.def;Et(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType},rH=(t,e,r,n)=>{let i=t._zod.def;Et(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType,r.default=JSON.parse(JSON.stringify(i.defaultValue))},nH=(t,e,r,n)=>{let i=t._zod.def;Et(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType,e.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},iH=(t,e,r,n)=>{let i=t._zod.def;Et(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=o},sH=(t,e,r,n)=>{let i=t._zod.def,s=i.in._zod.traits.has("$ZodTransform"),o=e.io==="input"?s?i.out:i.in:i.out;Et(o,e,n);let a=e.seen.get(t);a.ref=o},oH=(t,e,r,n)=>{let i=t._zod.def;Et(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType,r.readOnly=!0},aH=(t,e,r,n)=>{let i=t._zod.def;Et(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType},EP=(t,e,r,n)=>{let i=t._zod.def;Et(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType},cH=(t,e,r,n)=>{let i=t._zod.innerType;Et(i,e,n);let s=e.seen.get(t);s.ref=i},yP={string:A4,number:x4,boolean:I4,bigint:P4,symbol:O4,null:C4,undefined:N4,void:k4,never:$4,any:L4,unknown:D4,date:M4,enum:U4,literal:F4,nan:j4,template_literal:q4,file:B4,success:z4,custom:V4,function:H4,transform:G4,map:W4,set:Y4,array:K4,object:J4,union:SP,intersection:Z4,tuple:X4,record:Q4,nullable:eH,nonoptional:tH,default:rH,prefault:nH,catch:iH,pipe:sH,readonly:oH,promise:aH,optional:EP,lazy:cH};function vP(t,e){if("_idmap"in t){let n=t,i=du({...e,processors:yP}),s={};for(let c of n._idmap.entries()){let[l,u]=c;Et(u,i)}let o={},a={registry:n,uri:e?.uri,defs:s};i.external=a;for(let c of n._idmap.entries()){let[l,u]=c;fu(i,u),o[l]=pu(i,u)}if(Object.keys(s).length>0){let c=i.target==="draft-2020-12"?"$defs":"definitions";o.__shared={[c]:s}}return{schemas:o}}let r=du({...e,processors:yP});return Et(t,r),fu(r,t),pu(r,t)}var bP=class{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(e){this.ctx.counter=e}get seen(){return this.ctx.seen}constructor(e){let r=e?.target??"draft-2020-12";r==="draft-4"&&(r="draft-04"),r==="draft-7"&&(r="draft-07"),this.ctx=du({processors:yP,target:r,...e?.metadata&&{metadata:e.metadata},...e?.unrepresentable&&{unrepresentable:e.unrepresentable},...e?.override&&{override:e.override},...e?.io&&{io:e.io}})}process(e,r={path:[],schemaPath:[]}){return Et(e,this.ctx,r)}emit(e,r){r&&(r.cycles&&(this.ctx.cycles=r.cycles),r.reused&&(this.ctx.reused=r.reused),r.external&&(this.ctx.external=r.external)),fu(this.ctx,e);let n=pu(this.ctx,e),{"~standard":i,...s}=n;return s}};var Bge={};var tb={};gn(tb,{ZodAny:()=>NH,ZodArray:()=>DH,ZodBase64:()=>zP,ZodBase64URL:()=>VP,ZodBigInt:()=>bg,ZodBigIntFormat:()=>WP,ZodBoolean:()=>vg,ZodCIDRv4:()=>qP,ZodCIDRv6:()=>BP,ZodCUID:()=>$P,ZodCUID2:()=>LP,ZodCatch:()=>iG,ZodCodec:()=>pb,ZodCustom:()=>hb,ZodCustomStringFormat:()=>Sg,ZodDate:()=>cb,ZodDefault:()=>XH,ZodDiscriminatedUnion:()=>UH,ZodE164:()=>HP,ZodEmail:()=>CP,ZodEmoji:()=>NP,ZodEnum:()=>_g,ZodExactOptional:()=>KH,ZodFile:()=>WH,ZodFunction:()=>hG,ZodGUID:()=>nb,ZodIPv4:()=>FP,ZodIPv6:()=>jP,ZodIntersection:()=>FH,ZodJWT:()=>GP,ZodKSUID:()=>UP,ZodLazy:()=>dG,ZodLiteral:()=>GH,ZodMAC:()=>RH,ZodMap:()=>VH,ZodNaN:()=>oG,ZodNanoID:()=>kP,ZodNever:()=>$H,ZodNonOptional:()=>QP,ZodNull:()=>OH,ZodNullable:()=>ZH,ZodNumber:()=>Eg,ZodNumberFormat:()=>kf,ZodObject:()=>ub,ZodOptional:()=>XP,ZodPipe:()=>fb,ZodPrefault:()=>eG,ZodPreprocess:()=>aG,ZodPromise:()=>pG,ZodReadonly:()=>cG,ZodRecord:()=>gg,ZodSet:()=>HH,ZodString:()=>yg,ZodStringFormat:()=>Pt,ZodSuccess:()=>nG,ZodSymbol:()=>IH,ZodTemplateLiteral:()=>uG,ZodTransform:()=>YH,ZodTuple:()=>qH,ZodType:()=>Ye,ZodULID:()=>DP,ZodURL:()=>ab,ZodUUID:()=>Qo,ZodUndefined:()=>PH,ZodUnion:()=>db,ZodUnknown:()=>kH,ZodVoid:()=>LH,ZodXID:()=>MP,ZodXor:()=>MH,_ZodString:()=>OP,_default:()=>QH,_function:()=>Z_e,any:()=>I_e,array:()=>lb,base64:()=>d_e,base64url:()=>f_e,bigint:()=>T_e,boolean:()=>xH,catch:()=>sG,check:()=>X_e,cidrv4:()=>l_e,cidrv6:()=>u_e,codec:()=>W_e,cuid:()=>t_e,cuid2:()=>r_e,custom:()=>Q_e,date:()=>O_e,describe:()=>eye,discriminatedUnion:()=>D_e,e164:()=>p_e,email:()=>Hge,emoji:()=>Qge,enum:()=>JP,exactOptional:()=>JH,file:()=>z_e,float32:()=>S_e,float64:()=>E_e,function:()=>Z_e,guid:()=>Gge,hash:()=>y_e,hex:()=>__e,hostname:()=>g_e,httpUrl:()=>Xge,instanceof:()=>rye,int:()=>IP,int32:()=>v_e,int64:()=>w_e,intersection:()=>jH,invertCodec:()=>Y_e,ipv4:()=>o_e,ipv6:()=>c_e,json:()=>iye,jwt:()=>h_e,keyof:()=>C_e,ksuid:()=>s_e,lazy:()=>fG,literal:()=>B_e,looseObject:()=>$_e,looseRecord:()=>U_e,mac:()=>a_e,map:()=>F_e,meta:()=>tye,nan:()=>G_e,nanoid:()=>e_e,nativeEnum:()=>q_e,never:()=>YP,nonoptional:()=>rG,null:()=>CH,nullable:()=>sb,nullish:()=>V_e,number:()=>AH,object:()=>N_e,optional:()=>ib,partialRecord:()=>M_e,pipe:()=>PP,prefault:()=>tG,preprocess:()=>sye,promise:()=>J_e,readonly:()=>lG,record:()=>zH,refine:()=>mG,set:()=>j_e,strictObject:()=>k_e,string:()=>rb,stringFormat:()=>m_e,stringbool:()=>nye,success:()=>H_e,superRefine:()=>gG,symbol:()=>A_e,templateLiteral:()=>K_e,transform:()=>ZP,tuple:()=>BH,uint32:()=>b_e,uint64:()=>R_e,ulid:()=>n_e,undefined:()=>x_e,union:()=>KP,unknown:()=>Nf,url:()=>Zge,uuid:()=>Wge,uuidv4:()=>Yge,uuidv6:()=>Kge,uuidv7:()=>Jge,void:()=>P_e,xid:()=>i_e,xor:()=>L_e});var TP={};gn(TP,{endsWith:()=>og,gt:()=>Zo,gte:()=>Vn,includes:()=>ig,length:()=>Cf,lowercase:()=>rg,lt:()=>Jo,lte:()=>Ni,maxLength:()=>Of,maxSize:()=>uu,mime:()=>ag,minLength:()=>_c,minSize:()=>Xo,multipleOf:()=>lu,negative:()=>hP,nonnegative:()=>gP,nonpositive:()=>mP,normalize:()=>cg,overwrite:()=>Js,positive:()=>pP,property:()=>_P,regex:()=>tg,size:()=>Pf,slugify:()=>fg,startsWith:()=>sg,toLowerCase:()=>ug,toUpperCase:()=>dg,trim:()=>lg,uppercase:()=>ng});var mg={};gn(mg,{ZodISODate:()=>RP,ZodISODateTime:()=>wP,ZodISODuration:()=>xP,ZodISOTime:()=>AP,date:()=>uH,datetime:()=>lH,duration:()=>fH,time:()=>dH});var wP=U("ZodISODateTime",(t,e)=>{jz.init(t,e),Pt.init(t,e)});function lH(t){return VV(wP,t)}var RP=U("ZodISODate",(t,e)=>{qz.init(t,e),Pt.init(t,e)});function uH(t){return HV(RP,t)}var AP=U("ZodISOTime",(t,e)=>{Bz.init(t,e),Pt.init(t,e)});function dH(t){return GV(AP,t)}var xP=U("ZodISODuration",(t,e)=>{zz.init(t,e),Pt.init(t,e)});function fH(t){return WV(xP,t)}var zge=(t,e)=>{Bv.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Vv(t,r)},flatten:{value:r=>zv(t,r)},addIssue:{value:r=>{t.issues.push(r),t.message=JSON.stringify(t.issues,Gm,2)}},addIssues:{value:r=>{t.issues.push(...r),t.message=JSON.stringify(t.issues,Gm,2)}},isEmpty:{get(){return t.issues.length===0}}})},dut=U("ZodError",zge),fi=U("ZodError",zge,{Parent:Error});var pH=Km(fi),hH=Jm(fi),mH=Zm(fi),gH=Xm(fi),_H=vI(fi),yH=bI(fi),SH=TI(fi),EH=wI(fi),vH=RI(fi),bH=AI(fi),TH=xI(fi),wH=II(fi);var Vge=new WeakMap;function ob(t,e,r){let n=Object.getPrototypeOf(t),i=Vge.get(n);if(i||(i=new Set,Vge.set(n,i)),!i.has(e)){i.add(e);for(let s in r){let o=r[s];Object.defineProperty(n,s,{configurable:!0,enumerable:!1,get(){let a=o.bind(this);return Object.defineProperty(this,s,{configurable:!0,writable:!0,enumerable:!0,value:a}),a},set(a){Object.defineProperty(this,s,{configurable:!0,writable:!0,enumerable:!0,value:a})}})}}}var Ye=U("ZodType",(t,e)=>(ze.init(t,e),Object.assign(t["~standard"],{jsonSchema:{input:hg(t,"input"),output:hg(t,"output")}}),t.toJSONSchema=R4(t,{}),t.def=e,t.type=e.type,Object.defineProperty(t,"_def",{value:e}),t.parse=(r,n)=>pH(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>mH(t,r,n),t.parseAsync=async(r,n)=>hH(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>gH(t,r,n),t.spa=t.safeParseAsync,t.encode=(r,n)=>_H(t,r,n),t.decode=(r,n)=>yH(t,r,n),t.encodeAsync=async(r,n)=>SH(t,r,n),t.decodeAsync=async(r,n)=>EH(t,r,n),t.safeEncode=(r,n)=>vH(t,r,n),t.safeDecode=(r,n)=>bH(t,r,n),t.safeEncodeAsync=async(r,n)=>TH(t,r,n),t.safeDecodeAsync=async(r,n)=>wH(t,r,n),ob(t,"ZodType",{check(...r){let n=this.def;return this.clone(de.mergeDefs(n,{checks:[...n.checks??[],...r.map(i=>typeof i=="function"?{_zod:{check:i,def:{check:"custom"},onattach:[]}}:i)]}),{parent:!0})},with(...r){return this.check(...r)},clone(r,n){return Bn(this,r,n)},brand(){return this},register(r,n){return r.add(this,n),this},refine(r,n){return this.check(mG(r,n))},superRefine(r,n){return this.check(gG(r,n))},overwrite(r){return this.check(Js(r))},optional(){return ib(this)},exactOptional(){return JH(this)},nullable(){return sb(this)},nullish(){return ib(sb(this))},nonoptional(r){return rG(this,r)},array(){return lb(this)},or(r){return KP([this,r])},and(r){return jH(this,r)},transform(r){return PP(this,ZP(r))},default(r){return QH(this,r)},prefault(r){return tG(this,r)},catch(r){return sG(this,r)},pipe(r){return PP(this,r)},readonly(){return lG(this)},describe(r){let n=this.clone();return un.add(n,{description:r}),n},meta(...r){if(r.length===0)return un.get(this);let n=this.clone();return un.add(n,r[0]),n},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(r){return r(this)}}),Object.defineProperty(t,"description",{get(){return un.get(t)?.description},configurable:!0}),t)),OP=U("_ZodString",(t,e)=>{If.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(n,i,s)=>A4(t,n,i,s);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,ob(t,"_ZodString",{regex(...n){return this.check(tg(...n))},includes(...n){return this.check(ig(...n))},startsWith(...n){return this.check(sg(...n))},endsWith(...n){return this.check(og(...n))},min(...n){return this.check(_c(...n))},max(...n){return this.check(Of(...n))},length(...n){return this.check(Cf(...n))},nonempty(...n){return this.check(_c(1,...n))},lowercase(n){return this.check(rg(n))},uppercase(n){return this.check(ng(n))},trim(){return this.check(lg())},normalize(...n){return this.check(cg(...n))},toLowerCase(){return this.check(ug())},toUpperCase(){return this.check(dg())},slugify(){return this.check(fg())}})}),yg=U("ZodString",(t,e)=>{If.init(t,e),OP.init(t,e),t.email=r=>t.check(WI(CP,r)),t.url=r=>t.check(eb(ab,r)),t.jwt=r=>t.check(fP(GP,r)),t.emoji=r=>t.check(XI(NP,r)),t.guid=r=>t.check(Qv(nb,r)),t.uuid=r=>t.check(YI(Qo,r)),t.uuidv4=r=>t.check(KI(Qo,r)),t.uuidv6=r=>t.check(JI(Qo,r)),t.uuidv7=r=>t.check(ZI(Qo,r)),t.nanoid=r=>t.check(QI(kP,r)),t.guid=r=>t.check(Qv(nb,r)),t.cuid=r=>t.check(eP($P,r)),t.cuid2=r=>t.check(tP(LP,r)),t.ulid=r=>t.check(rP(DP,r)),t.base64=r=>t.check(lP(zP,r)),t.base64url=r=>t.check(uP(VP,r)),t.xid=r=>t.check(nP(MP,r)),t.ksuid=r=>t.check(iP(UP,r)),t.ipv4=r=>t.check(sP(FP,r)),t.ipv6=r=>t.check(oP(jP,r)),t.cidrv4=r=>t.check(aP(qP,r)),t.cidrv6=r=>t.check(cP(BP,r)),t.e164=r=>t.check(dP(HP,r)),t.datetime=r=>t.check(lH(r)),t.date=r=>t.check(uH(r)),t.time=r=>t.check(dH(r)),t.duration=r=>t.check(fH(r))});function rb(t){return jV(yg,t)}var Pt=U("ZodStringFormat",(t,e)=>{It.init(t,e),OP.init(t,e)}),CP=U("ZodEmail",(t,e)=>{Cz.init(t,e),Pt.init(t,e)});function Hge(t){return WI(CP,t)}var nb=U("ZodGUID",(t,e)=>{Pz.init(t,e),Pt.init(t,e)});function Gge(t){return Qv(nb,t)}var Qo=U("ZodUUID",(t,e)=>{Oz.init(t,e),Pt.init(t,e)});function Wge(t){return YI(Qo,t)}function Yge(t){return KI(Qo,t)}function Kge(t){return JI(Qo,t)}function Jge(t){return ZI(Qo,t)}var ab=U("ZodURL",(t,e)=>{Nz.init(t,e),Pt.init(t,e)});function Zge(t){return eb(ab,t)}function Xge(t){return eb(ab,{protocol:Ci.httpProtocol,hostname:Ci.domain,...de.normalizeParams(t)})}var NP=U("ZodEmoji",(t,e)=>{kz.init(t,e),Pt.init(t,e)});function Qge(t){return XI(NP,t)}var kP=U("ZodNanoID",(t,e)=>{$z.init(t,e),Pt.init(t,e)});function e_e(t){return QI(kP,t)}var $P=U("ZodCUID",(t,e)=>{Lz.init(t,e),Pt.init(t,e)});function t_e(t){return eP($P,t)}var LP=U("ZodCUID2",(t,e)=>{Dz.init(t,e),Pt.init(t,e)});function r_e(t){return tP(LP,t)}var DP=U("ZodULID",(t,e)=>{Mz.init(t,e),Pt.init(t,e)});function n_e(t){return rP(DP,t)}var MP=U("ZodXID",(t,e)=>{Uz.init(t,e),Pt.init(t,e)});function i_e(t){return nP(MP,t)}var UP=U("ZodKSUID",(t,e)=>{Fz.init(t,e),Pt.init(t,e)});function s_e(t){return iP(UP,t)}var FP=U("ZodIPv4",(t,e)=>{Vz.init(t,e),Pt.init(t,e)});function o_e(t){return sP(FP,t)}var RH=U("ZodMAC",(t,e)=>{Gz.init(t,e),Pt.init(t,e)});function a_e(t){return BV(RH,t)}var jP=U("ZodIPv6",(t,e)=>{Hz.init(t,e),Pt.init(t,e)});function c_e(t){return oP(jP,t)}var qP=U("ZodCIDRv4",(t,e)=>{Wz.init(t,e),Pt.init(t,e)});function l_e(t){return aP(qP,t)}var BP=U("ZodCIDRv6",(t,e)=>{Yz.init(t,e),Pt.init(t,e)});function u_e(t){return cP(BP,t)}var zP=U("ZodBase64",(t,e)=>{Jz.init(t,e),Pt.init(t,e)});function d_e(t){return lP(zP,t)}var VP=U("ZodBase64URL",(t,e)=>{Zz.init(t,e),Pt.init(t,e)});function f_e(t){return uP(VP,t)}var HP=U("ZodE164",(t,e)=>{Xz.init(t,e),Pt.init(t,e)});function p_e(t){return dP(HP,t)}var GP=U("ZodJWT",(t,e)=>{Qz.init(t,e),Pt.init(t,e)});function h_e(t){return fP(GP,t)}var Sg=U("ZodCustomStringFormat",(t,e)=>{eV.init(t,e),Pt.init(t,e)});function m_e(t,e,r={}){return pg(Sg,t,e,r)}function g_e(t){return pg(Sg,"hostname",Ci.hostname,t)}function __e(t){return pg(Sg,"hex",Ci.hex,t)}function y_e(t,e){let r=e?.enc??"hex",n=`${t}_${r}`,i=Ci[n];if(!i)throw new Error(`Unrecognized hash format: ${n}`);return pg(Sg,n,i,e)}var Eg=U("ZodNumber",(t,e)=>{MI.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(n,i,s)=>x4(t,n,i,s),ob(t,"ZodNumber",{gt(n,i){return this.check(Zo(n,i))},gte(n,i){return this.check(Vn(n,i))},min(n,i){return this.check(Vn(n,i))},lt(n,i){return this.check(Jo(n,i))},lte(n,i){return this.check(Ni(n,i))},max(n,i){return this.check(Ni(n,i))},int(n){return this.check(IP(n))},safe(n){return this.check(IP(n))},positive(n){return this.check(Zo(0,n))},nonnegative(n){return this.check(Vn(0,n))},negative(n){return this.check(Jo(0,n))},nonpositive(n){return this.check(Ni(0,n))},multipleOf(n,i){return this.check(lu(n,i))},step(n,i){return this.check(lu(n,i))},finite(){return this}});let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function AH(t){return YV(Eg,t)}var kf=U("ZodNumberFormat",(t,e)=>{tV.init(t,e),Eg.init(t,e)});function IP(t){return JV(kf,t)}function S_e(t){return ZV(kf,t)}function E_e(t){return XV(kf,t)}function v_e(t){return QV(kf,t)}function b_e(t){return e4(kf,t)}var vg=U("ZodBoolean",(t,e)=>{Yv.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>I4(t,r,n,i)});function xH(t){return t4(vg,t)}var bg=U("ZodBigInt",(t,e)=>{UI.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(n,i,s)=>P4(t,n,i,s),t.gte=(n,i)=>t.check(Vn(n,i)),t.min=(n,i)=>t.check(Vn(n,i)),t.gt=(n,i)=>t.check(Zo(n,i)),t.gte=(n,i)=>t.check(Vn(n,i)),t.min=(n,i)=>t.check(Vn(n,i)),t.lt=(n,i)=>t.check(Jo(n,i)),t.lte=(n,i)=>t.check(Ni(n,i)),t.max=(n,i)=>t.check(Ni(n,i)),t.positive=n=>t.check(Zo(BigInt(0),n)),t.negative=n=>t.check(Jo(BigInt(0),n)),t.nonpositive=n=>t.check(Ni(BigInt(0),n)),t.nonnegative=n=>t.check(Vn(BigInt(0),n)),t.multipleOf=(n,i)=>t.check(lu(n,i));let r=t._zod.bag;t.minValue=r.minimum??null,t.maxValue=r.maximum??null,t.format=r.format??null});function T_e(t){return n4(bg,t)}var WP=U("ZodBigIntFormat",(t,e)=>{rV.init(t,e),bg.init(t,e)});function w_e(t){return s4(WP,t)}function R_e(t){return o4(WP,t)}var IH=U("ZodSymbol",(t,e)=>{nV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>O4(t,r,n,i)});function A_e(t){return a4(IH,t)}var PH=U("ZodUndefined",(t,e)=>{iV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>N4(t,r,n,i)});function x_e(t){return c4(PH,t)}var OH=U("ZodNull",(t,e)=>{sV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>C4(t,r,n,i)});function CH(t){return l4(OH,t)}var NH=U("ZodAny",(t,e)=>{oV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>L4(t,r,n,i)});function I_e(){return u4(NH)}var kH=U("ZodUnknown",(t,e)=>{aV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>D4(t,r,n,i)});function Nf(){return d4(kH)}var $H=U("ZodNever",(t,e)=>{cV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>$4(t,r,n,i)});function YP(t){return f4($H,t)}var LH=U("ZodVoid",(t,e)=>{lV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>k4(t,r,n,i)});function P_e(t){return p4(LH,t)}var cb=U("ZodDate",(t,e)=>{uV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(n,i,s)=>M4(t,n,i,s),t.min=(n,i)=>t.check(Vn(n,i)),t.max=(n,i)=>t.check(Ni(n,i));let r=t._zod.bag;t.minDate=r.minimum?new Date(r.minimum):null,t.maxDate=r.maximum?new Date(r.maximum):null});function O_e(t){return h4(cb,t)}var DH=U("ZodArray",(t,e)=>{dV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>K4(t,r,n,i),t.element=e.element,ob(t,"ZodArray",{min(r,n){return this.check(_c(r,n))},nonempty(r){return this.check(_c(1,r))},max(r,n){return this.check(Of(r,n))},length(r,n){return this.check(Cf(r,n))},unwrap(){return this.element}})});function lb(t,e){return _4(DH,t,e)}function C_e(t){let e=t._zod.def.shape;return JP(Object.keys(e))}var ub=U("ZodObject",(t,e)=>{fV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>J4(t,r,n,i),de.defineLazy(t,"shape",()=>e.shape),ob(t,"ZodObject",{keyof(){return JP(Object.keys(this._zod.def.shape))},catchall(r){return this.clone({...this._zod.def,catchall:r})},passthrough(){return this.clone({...this._zod.def,catchall:Nf()})},loose(){return this.clone({...this._zod.def,catchall:Nf()})},strict(){return this.clone({...this._zod.def,catchall:YP()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(r){return de.extend(this,r)},safeExtend(r){return de.safeExtend(this,r)},merge(r){return de.merge(this,r)},pick(r){return de.pick(this,r)},omit(r){return de.omit(this,r)},partial(...r){return de.partial(XP,this,r[0])},required(...r){return de.required(QP,this,r[0])}})});function N_e(t,e){let r={type:"object",shape:t??{},...de.normalizeParams(e)};return new ub(r)}function k_e(t,e){return new ub({type:"object",shape:t,catchall:YP(),...de.normalizeParams(e)})}function $_e(t,e){return new ub({type:"object",shape:t,catchall:Nf(),...de.normalizeParams(e)})}var db=U("ZodUnion",(t,e)=>{Kv.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>SP(t,r,n,i),t.options=e.options});function KP(t,e){return new db({type:"union",options:t,...de.normalizeParams(e)})}var MH=U("ZodXor",(t,e)=>{db.init(t,e),pV.init(t,e),t._zod.processJSONSchema=(r,n,i)=>SP(t,r,n,i),t.options=e.options});function L_e(t,e){return new MH({type:"union",options:t,inclusive:!1,...de.normalizeParams(e)})}var UH=U("ZodDiscriminatedUnion",(t,e)=>{db.init(t,e),hV.init(t,e)});function D_e(t,e,r){return new UH({type:"union",options:e,discriminator:t,...de.normalizeParams(r)})}var FH=U("ZodIntersection",(t,e)=>{mV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>Z4(t,r,n,i)});function jH(t,e){return new FH({type:"intersection",left:t,right:e})}var qH=U("ZodTuple",(t,e)=>{FI.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>X4(t,r,n,i),t.rest=r=>t.clone({...t._zod.def,rest:r})});function BH(t,e,r){let n=e instanceof ze,i=n?r:e,s=n?e:null;return new qH({type:"tuple",items:t,rest:s,...de.normalizeParams(i)})}var gg=U("ZodRecord",(t,e)=>{gV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>Q4(t,r,n,i),t.keyType=e.keyType,t.valueType=e.valueType});function zH(t,e,r){return!e||!e._zod?new gg({type:"record",keyType:rb(),valueType:t,...de.normalizeParams(e)}):new gg({type:"record",keyType:t,valueType:e,...de.normalizeParams(r)})}function M_e(t,e,r){let n=Bn(t);return n._zod.values=void 0,new gg({type:"record",keyType:n,valueType:e,...de.normalizeParams(r)})}function U_e(t,e,r){return new gg({type:"record",keyType:t,valueType:e,mode:"loose",...de.normalizeParams(r)})}var VH=U("ZodMap",(t,e)=>{_V.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>W4(t,r,n,i),t.keyType=e.keyType,t.valueType=e.valueType,t.min=(...r)=>t.check(Xo(...r)),t.nonempty=r=>t.check(Xo(1,r)),t.max=(...r)=>t.check(uu(...r)),t.size=(...r)=>t.check(Pf(...r))});function F_e(t,e,r){return new VH({type:"map",keyType:t,valueType:e,...de.normalizeParams(r)})}var HH=U("ZodSet",(t,e)=>{yV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>Y4(t,r,n,i),t.min=(...r)=>t.check(Xo(...r)),t.nonempty=r=>t.check(Xo(1,r)),t.max=(...r)=>t.check(uu(...r)),t.size=(...r)=>t.check(Pf(...r))});function j_e(t,e){return new HH({type:"set",valueType:t,...de.normalizeParams(e)})}var _g=U("ZodEnum",(t,e)=>{SV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(n,i,s)=>U4(t,n,i,s),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,i)=>{let s={};for(let o of n)if(r.has(o))s[o]=e.entries[o];else throw new Error(`Key ${o} not found in enum`);return new _g({...e,checks:[],...de.normalizeParams(i),entries:s})},t.exclude=(n,i)=>{let s={...e.entries};for(let o of n)if(r.has(o))delete s[o];else throw new Error(`Key ${o} not found in enum`);return new _g({...e,checks:[],...de.normalizeParams(i),entries:s})}});function JP(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new _g({type:"enum",entries:r,...de.normalizeParams(e)})}function q_e(t,e){return new _g({type:"enum",entries:t,...de.normalizeParams(e)})}var GH=U("ZodLiteral",(t,e)=>{EV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>F4(t,r,n,i),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function B_e(t,e){return new GH({type:"literal",values:Array.isArray(t)?t:[t],...de.normalizeParams(e)})}var WH=U("ZodFile",(t,e)=>{vV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>B4(t,r,n,i),t.min=(r,n)=>t.check(Xo(r,n)),t.max=(r,n)=>t.check(uu(r,n)),t.mime=(r,n)=>t.check(ag(Array.isArray(r)?r:[r],n))});function z_e(t){return y4(WH,t)}var YH=U("ZodTransform",(t,e)=>{bV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>G4(t,r,n,i),t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new iu(t.constructor.name);r.addIssue=s=>{if(typeof s=="string")r.issues.push(de.issue(s,r.value,e));else{let o=s;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),r.issues.push(de.issue(o))}};let i=e.transform(r.value,r);return i instanceof Promise?i.then(s=>(r.value=s,r.fallback=!0,r)):(r.value=i,r.fallback=!0,r)}});function ZP(t){return new YH({type:"transform",transform:t})}var XP=U("ZodOptional",(t,e)=>{jI.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>EP(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function ib(t){return new XP({type:"optional",innerType:t})}var KH=U("ZodExactOptional",(t,e)=>{TV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>EP(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function JH(t){return new KH({type:"optional",innerType:t})}var ZH=U("ZodNullable",(t,e)=>{wV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>eH(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function sb(t){return new ZH({type:"nullable",innerType:t})}function V_e(t){return ib(sb(t))}var XH=U("ZodDefault",(t,e)=>{RV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>rH(t,r,n,i),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function QH(t,e){return new XH({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():de.shallowClone(e)}})}var eG=U("ZodPrefault",(t,e)=>{AV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>nH(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function tG(t,e){return new eG({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():de.shallowClone(e)}})}var QP=U("ZodNonOptional",(t,e)=>{xV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>tH(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function rG(t,e){return new QP({type:"nonoptional",innerType:t,...de.normalizeParams(e)})}var nG=U("ZodSuccess",(t,e)=>{IV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>z4(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function H_e(t){return new nG({type:"success",innerType:t})}var iG=U("ZodCatch",(t,e)=>{PV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>iH(t,r,n,i),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function sG(t,e){return new iG({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var oG=U("ZodNaN",(t,e)=>{OV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>j4(t,r,n,i)});function G_e(t){return g4(oG,t)}var fb=U("ZodPipe",(t,e)=>{qI.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>sH(t,r,n,i),t.in=e.in,t.out=e.out});function PP(t,e){return new fb({type:"pipe",in:t,out:e})}var pb=U("ZodCodec",(t,e)=>{fb.init(t,e),Jv.init(t,e)});function W_e(t,e,r){return new pb({type:"pipe",in:t,out:e,transform:r.decode,reverseTransform:r.encode})}function Y_e(t){let e=t._zod.def;return new pb({type:"pipe",in:e.out,out:e.in,transform:e.reverseTransform,reverseTransform:e.transform})}var aG=U("ZodPreprocess",(t,e)=>{fb.init(t,e),CV.init(t,e)}),cG=U("ZodReadonly",(t,e)=>{NV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>oH(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function lG(t){return new cG({type:"readonly",innerType:t})}var uG=U("ZodTemplateLiteral",(t,e)=>{kV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>q4(t,r,n,i)});function K_e(t,e){return new uG({type:"template_literal",parts:t,...de.normalizeParams(e)})}var dG=U("ZodLazy",(t,e)=>{DV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>cH(t,r,n,i),t.unwrap=()=>t._zod.def.getter()});function fG(t){return new dG({type:"lazy",getter:t})}var pG=U("ZodPromise",(t,e)=>{LV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>aH(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function J_e(t){return new pG({type:"promise",innerType:t})}var hG=U("ZodFunction",(t,e)=>{$V.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>H4(t,r,n,i)});function Z_e(t){return new hG({type:"function",input:Array.isArray(t?.input)?BH(t?.input):t?.input??lb(Nf()),output:t?.output??Nf()})}var hb=U("ZodCustom",(t,e)=>{MV.init(t,e),Ye.init(t,e),t._zod.processJSONSchema=(r,n,i)=>V4(t,r,n,i)});function X_e(t){let e=new $t({check:"custom"});return e._zod.check=t,e}function Q_e(t,e){return S4(hb,t??(()=>!0),e)}function mG(t,e={}){return E4(hb,t,e)}function gG(t,e){return v4(t,e)}var eye=b4,tye=T4;function rye(t,e={}){let r=new hb({type:"custom",check:"custom",fn:n=>n instanceof t,abort:!0,...de.normalizeParams(e)});return r._zod.bag.Class=t,r._zod.check=n=>{n.value instanceof t||n.issues.push({code:"invalid_type",expected:t.name,input:n.value,inst:r,path:[...r._zod.def.path??[]]})},r}var nye=(...t)=>w4({Codec:pb,Boolean:vg,String:yg},...t);function iye(t){let e=fG(()=>KP([rb(t),AH(),xH(),CH(),lb(e),zH(rb(),e)]));return e}function sye(t,e){return new aG({type:"pipe",in:ZP(t),out:e})}var put={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};function hut(t){ur({customError:t})}function mut(){return ur().customError}var _G;_G||(_G={});var Ee={...tb,...TP,iso:mg},gut=new Set(["$schema","$ref","$defs","definitions","$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor","type","enum","const","anyOf","oneOf","allOf","not","properties","required","additionalProperties","patternProperties","propertyNames","minProperties","maxProperties","items","prefixItems","additionalItems","minItems","maxItems","uniqueItems","contains","minContains","maxContains","minLength","maxLength","pattern","format","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","description","default","contentEncoding","contentMediaType","contentSchema","unevaluatedItems","unevaluatedProperties","if","then","else","dependentSchemas","dependentRequired","nullable","readOnly"]);function _ut(t,e){let r=t.$schema;return r==="https://json-schema.org/draft/2020-12/schema"?"draft-2020-12":r==="http://json-schema.org/draft-07/schema#"?"draft-7":r==="http://json-schema.org/draft-04/schema#"?"draft-4":e??"draft-2020-12"}function yut(t,e){if(!t.startsWith("#"))throw new Error("External $ref is not supported, only local refs (#/...) are allowed");let r=t.slice(1).split("/").filter(Boolean);if(r.length===0)return e.rootSchema;let n=e.version==="draft-2020-12"?"$defs":"definitions";if(r[0]===n){let i=r[1];if(!i||!e.defs[i])throw new Error(`Reference not found: ${t}`);return e.defs[i]}throw new Error(`Reference not found: ${t}`)}function oye(t,e){if(t.not!==void 0){if(typeof t.not=="object"&&Object.keys(t.not).length===0)return Ee.never();throw new Error("not is not supported in Zod (except { not: {} } for never)")}if(t.unevaluatedItems!==void 0)throw new Error("unevaluatedItems is not supported");if(t.unevaluatedProperties!==void 0)throw new Error("unevaluatedProperties is not supported");if(t.if!==void 0||t.then!==void 0||t.else!==void 0)throw new Error("Conditional schemas (if/then/else) are not supported");if(t.dependentSchemas!==void 0||t.dependentRequired!==void 0)throw new Error("dependentSchemas and dependentRequired are not supported");if(t.$ref){let i=t.$ref;if(e.refs.has(i))return e.refs.get(i);if(e.processing.has(i))return Ee.lazy(()=>{if(!e.refs.has(i))throw new Error(`Circular reference not resolved: ${i}`);return e.refs.get(i)});e.processing.add(i);let s=yut(i,e),o=wn(s,e);return e.refs.set(i,o),e.processing.delete(i),o}if(t.enum!==void 0){let i=t.enum;if(e.version==="openapi-3.0"&&t.nullable===!0&&i.length===1&&i[0]===null)return Ee.null();if(i.length===0)return Ee.never();if(i.length===1)return Ee.literal(i[0]);if(i.every(o=>typeof o=="string"))return Ee.enum(i);let s=i.map(o=>Ee.literal(o));return s.length<2?s[0]:Ee.union([s[0],s[1],...s.slice(2)])}if(t.const!==void 0)return Ee.literal(t.const);let r=t.type;if(Array.isArray(r)){let i=r.map(s=>{let o={...t,type:s};return oye(o,e)});return i.length===0?Ee.never():i.length===1?i[0]:Ee.union(i)}if(!r)return Ee.any();let n;switch(r){case"string":{let i=Ee.string();if(t.format){let s=t.format;s==="email"?i=i.check(Ee.email()):s==="uri"||s==="uri-reference"?i=i.check(Ee.url()):s==="uuid"||s==="guid"?i=i.check(Ee.uuid()):s==="date-time"?i=i.check(Ee.iso.datetime()):s==="date"?i=i.check(Ee.iso.date()):s==="time"?i=i.check(Ee.iso.time()):s==="duration"?i=i.check(Ee.iso.duration()):s==="ipv4"?i=i.check(Ee.ipv4()):s==="ipv6"?i=i.check(Ee.ipv6()):s==="mac"?i=i.check(Ee.mac()):s==="cidr"?i=i.check(Ee.cidrv4()):s==="cidr-v6"?i=i.check(Ee.cidrv6()):s==="base64"?i=i.check(Ee.base64()):s==="base64url"?i=i.check(Ee.base64url()):s==="e164"?i=i.check(Ee.e164()):s==="jwt"?i=i.check(Ee.jwt()):s==="emoji"?i=i.check(Ee.emoji()):s==="nanoid"?i=i.check(Ee.nanoid()):s==="cuid"?i=i.check(Ee.cuid()):s==="cuid2"?i=i.check(Ee.cuid2()):s==="ulid"?i=i.check(Ee.ulid()):s==="xid"?i=i.check(Ee.xid()):s==="ksuid"&&(i=i.check(Ee.ksuid()))}typeof t.minLength=="number"&&(i=i.min(t.minLength)),typeof t.maxLength=="number"&&(i=i.max(t.maxLength)),t.pattern&&(i=i.regex(new RegExp(t.pattern))),n=i;break}case"number":case"integer":{let i=r==="integer"?Ee.number().int():Ee.number();typeof t.minimum=="number"&&(i=i.min(t.minimum)),typeof t.maximum=="number"&&(i=i.max(t.maximum)),typeof t.exclusiveMinimum=="number"?i=i.gt(t.exclusiveMinimum):t.exclusiveMinimum===!0&&typeof t.minimum=="number"&&(i=i.gt(t.minimum)),typeof t.exclusiveMaximum=="number"?i=i.lt(t.exclusiveMaximum):t.exclusiveMaximum===!0&&typeof t.maximum=="number"&&(i=i.lt(t.maximum)),typeof t.multipleOf=="number"&&(i=i.multipleOf(t.multipleOf)),n=i;break}case"boolean":{n=Ee.boolean();break}case"null":{n=Ee.null();break}case"object":{let i={},s=t.properties||{},o=new Set(t.required||[]);for(let[c,l]of Object.entries(s)){let u=wn(l,e);i[c]=o.has(c)?u:u.optional()}if(t.propertyNames){let c=wn(t.propertyNames,e),l=t.additionalProperties&&typeof t.additionalProperties=="object"?wn(t.additionalProperties,e):Ee.any();if(Object.keys(i).length===0){n=Ee.record(c,l);break}let u=Ee.object(i).passthrough(),d=Ee.looseRecord(c,l);n=Ee.intersection(u,d);break}if(t.patternProperties){let c=t.patternProperties,l=Object.keys(c),u=[];for(let f of l){let p=wn(c[f],e),h=Ee.string().regex(new RegExp(f));u.push(Ee.looseRecord(h,p))}let d=[];if(Object.keys(i).length>0&&d.push(Ee.object(i).passthrough()),d.push(...u),d.length===0)n=Ee.object({}).passthrough();else if(d.length===1)n=d[0];else{let f=Ee.intersection(d[0],d[1]);for(let p=2;p<d.length;p++)f=Ee.intersection(f,d[p]);n=f}break}let a=Ee.object(i);t.additionalProperties===!1?n=a.strict():typeof t.additionalProperties=="object"?n=a.catchall(wn(t.additionalProperties,e)):n=a.passthrough();break}case"array":{let i=t.prefixItems,s=t.items;if(i&&Array.isArray(i)){let o=i.map(c=>wn(c,e)),a=s&&typeof s=="object"&&!Array.isArray(s)?wn(s,e):void 0;a?n=Ee.tuple(o).rest(a):n=Ee.tuple(o),typeof t.minItems=="number"&&(n=n.check(Ee.minLength(t.minItems))),typeof t.maxItems=="number"&&(n=n.check(Ee.maxLength(t.maxItems)))}else if(Array.isArray(s)){let o=s.map(c=>wn(c,e)),a=t.additionalItems&&typeof t.additionalItems=="object"?wn(t.additionalItems,e):void 0;a?n=Ee.tuple(o).rest(a):n=Ee.tuple(o),typeof t.minItems=="number"&&(n=n.check(Ee.minLength(t.minItems))),typeof t.maxItems=="number"&&(n=n.check(Ee.maxLength(t.maxItems)))}else if(s!==void 0){let o=wn(s,e),a=Ee.array(o);typeof t.minItems=="number"&&(a=a.min(t.minItems)),typeof t.maxItems=="number"&&(a=a.max(t.maxItems)),n=a}else n=Ee.array(Ee.any());break}default:throw new Error(`Unsupported type: ${r}`)}return n}function wn(t,e){if(typeof t=="boolean")return t?Ee.any():Ee.never();let r=oye(t,e),n=t.type||t.enum!==void 0||t.const!==void 0;if(t.anyOf&&Array.isArray(t.anyOf)){let a=t.anyOf.map(l=>wn(l,e)),c=Ee.union(a);r=n?Ee.intersection(r,c):c}if(t.oneOf&&Array.isArray(t.oneOf)){let a=t.oneOf.map(l=>wn(l,e)),c=Ee.xor(a);r=n?Ee.intersection(r,c):c}if(t.allOf&&Array.isArray(t.allOf))if(t.allOf.length===0)r=n?r:Ee.any();else{let a=n?r:wn(t.allOf[0],e),c=n?0:1;for(let l=c;l<t.allOf.length;l++)a=Ee.intersection(a,wn(t.allOf[l],e));r=a}t.nullable===!0&&e.version==="openapi-3.0"&&(r=Ee.nullable(r)),t.readOnly===!0&&(r=Ee.readonly(r)),t.default!==void 0&&(r=r.default(t.default));let i={},s=["$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor"];for(let a of s)a in t&&(i[a]=t[a]);let o=["contentEncoding","contentMediaType","contentSchema"];for(let a of o)a in t&&(i[a]=t[a]);for(let a of Object.keys(t))gut.has(a)||(i[a]=t[a]);return Object.keys(i).length>0&&e.registry.add(r,i),t.description&&(r=r.describe(t.description)),r}function aye(t,e){if(typeof t=="boolean")return t?Ee.any():Ee.never();let r;try{r=JSON.parse(JSON.stringify(t))}catch{throw new Error("fromJSONSchema input is not valid JSON (possibly cyclic); use $defs/$ref for recursive schemas")}let n=_ut(r,e?.defaultTarget),i=r.$defs||r.definitions||{},s={version:n,defs:i,refs:new Map,processing:new Set,rootSchema:r,registry:e?.registry??un};return wn(r,s)}var yG={};gn(yG,{bigint:()=>but,boolean:()=>vut,date:()=>Tut,number:()=>Eut,string:()=>Sut});function Sut(t){return qV(yg,t)}function Eut(t){return KV(Eg,t)}function vut(t){return r4(vg,t)}function but(t){return i4(bg,t)}function Tut(t){return m4(cb,t)}ur(BI());var wut={questions:ki.array(ki.object({question:ki.string(),header:ki.string().optional().describe('Very short topic label rendered as a tag above the question, max ~12 characters (e.g. "Framework")'),multiSelect:ki.boolean().optional(),options:ki.array(ki.object({label:ki.string(),description:ki.string().optional()})).optional()})).min(1).max(4)},cye=ki.object(wut);import{AsyncLocalStorage as Rut}from"async_hooks";import Aut from"dgram";import Tg from"process";var xut="buildbot.agent_runner.",Iut=8125,Put=t=>{let e=Object.keys(t);return e.length===0?"":"|#"+e.map(r=>`${r}:${t[r]}`).join(",")},mb=(t,e,r,n={})=>`${xut}${t}:${e}|${r}${Put(n)}`,Out={service:"buildbot"},uye={},SG=new Rut,EG=t=>{uye={...t}},eO=(t,e)=>{let r=SG.getStore()??{};return SG.run({...r,...t},e)},gb=t=>({...uye,...SG.getStore()??{},...t,...Out}),Cut=(t,e)=>{let r=!1,n=Aut.createSocket("udp4");return n.unref(),n.once("error",i=>{if(!r){let s=i.code??i.message;Tg.stderr.write(`[metrics] UDP error: ${s}
|
|
537
537
|
`),r=!0}}),i=>{r||n.send(i,e,t,s=>{if(s&&!r){let o=s.code??s.message;Tg.stderr.write(`[metrics] UDP send to ${t}:${e} failed: ${o}
|
|
538
538
|
`),r=!0}})}},lye=()=>{},dye=()=>({enabled:!!Tg.env.HOST_NODE_IP}),Nut=()=>{let t=Tg.env.HOST_NODE_IP;if(!t)return lye;let e=Tg.env.DD_AGENT_PORT,r=e===void 0?Iut:Number(e);return!Number.isInteger(r)||r<=0||r>65535?(Tg.stderr.write(`[metrics] DD_AGENT_PORT="${e}" is not a valid port; metrics disabled
|
|
539
|
-
`),lye):Cut(t,r)},kut=(t=Nut())=>({inc(e,r=1,n={}){t(mb(e,r,"c",gb(n)))},gauge(e,r,n={}){t(mb(e,r,"g",gb(n)))},histogram(e,r,n={}){t(mb(e,r,"h",gb(n)))},timing(e,r,n={}){t(mb(e,r,"ms",gb(n)))},distribution(e,r,n={}){t(mb(e,r,"d",gb(n)))}}),
|
|
539
|
+
`),lye):Cut(t,r)},kut=(t=Nut())=>({inc(e,r=1,n={}){t(mb(e,r,"c",gb(n)))},gauge(e,r,n={}){t(mb(e,r,"g",gb(n)))},histogram(e,r,n={}){t(mb(e,r,"h",gb(n)))},timing(e,r,n={}){t(mb(e,r,"ms",gb(n)))},distribution(e,r,n={}){t(mb(e,r,"d",gb(n)))}}),Ie=kut(),hu=(t,e={})=>{let r=t.input_tokens??0,n=t.output_tokens??0,i=t.cache_creation_input_tokens??0,s=t.cache_read_input_tokens??0;Ie.distribution("inference.tokens",r,{...e,kind:"input"}),Ie.distribution("inference.tokens",n,{...e,kind:"output"});let o=t.total_tokens??r+n+i+s;Ie.distribution("inference.tokens.total",o,e)};import vG from"path";import $ut from"fs/promises";var bG=Re("agent-output-utils");async function mu({initialResult:t,agentName:e,hasError:r}){let n="",i=vG.join(process.cwd(),Qr,$d);try{let s=await $ut.readFile(i,"utf-8");s&&(n=s,bG.log(`Pulled result from ${vG.relative(process.cwd(),i)}`))}catch{bG.log(`No results file found at ${vG.relative(process.cwd(),i)}`)}return n||(!t&&!r?`${e} has finished working on task.`:t||void 0)}var Lut=[/^API Error:\s*\d{3}/i,/^\d{3}\s*status code/i,/^API request failed:\s*\d{3}/i,/^API Error: The socket connection was closed/i,/^overloaded_error/i];function tO(t){let e=t.trim();return Lut.some(r=>r.test(e))?"Encountered a temporary issue \u2014 the agent will attempt to continue.":t}function gu({error:t,agentName:e}){let r=t&&typeof t=="object"?JSON.stringify(t):t,n=r?.replace(/\s+/g," ").trim().toLowerCase()||"",i="";return n?.includes("ai gateway is not available for your account")||n?.includes("ai gateway is not enabled for your account")?i="AI Gateway is currently not available on your account. Please confirm your account meets the criteria for using Agent Runners and AI Gateway and that your account has remaining AI Gateway inference credits available. Reach out to Netlify support if this is unexpected.":n?.includes("error when talking to gemini api")?i="Gemini's API is currently having issues. Please try again or use a different available agent while Google resolves the issue.":(n?.includes("connection closed prematurely")||n?.includes("499")&&e.toLowerCase().includes("gemini"))&&(i=`The ${e} models were currently overloaded. Please try again or use a different available agent.`),n?.includes("request timed out")&&(i=`The ${e} API request's have timed out. Please try again or use a different available agent.`),(n?.includes("network error")||n?.includes("socket connection was closed"))&&(i=`The ${e} agent is having network issues. Please try again or use a different available agent.`),n?.includes("503")&&!n?.includes("usage exceeded")&&(i=`The ${e} API is currently experiencing high load. Retrying automatically...`),(n?.includes("529")||n?.includes("overloaded_error"))&&(i=`The ${e} API is currently overloaded. Retrying automatically...`),n?.includes("at capacity")&&(i=`The ${e} model is currently at capacity. Retrying automatically...`),(n?.includes("there's an issue with the selected model")||n?.includes("is not available for")&&n?.includes("provider"))&&(i=`The ${e} model is temporarily unavailable. Please try again later or use a different available agent.`),i&&bG.log(`Providing updated error messsage: ${i}, replacing original error: ${r}`),i||r||void 0}function _u(t){if(!t)return!1;let r=(t&&typeof t=="object"?JSON.stringify(t):t)?.replace(/\s+/g," ").trim().toLowerCase()||"";return r?.includes("error when talking to gemini api")||r?.includes("499")||r?.includes("connection closed prematurely")||r?.includes("socket connection was closed")||r?.includes("request timed out")||r?.includes("network error")?!0:r?.includes("usage exceeded")?!1:!!(r?.includes("503")||r?.includes("529")||r?.includes("overloaded_error")||r?.includes("at capacity"))}function yu(t){if(!t)return!1;let e=t.replace(/\s+/g," ").trim().toLowerCase();return!!(e.includes("there's an issue with the selected model")||e.includes("is not available for")&&e.includes("provider"))}import Rc from"process";import wc from"path";import uC from"fs";import{fileURLToPath as hyt}from"url";import{createRequire as myt}from"module";function yr(t){if(typeof t!="object"||t===null)return!1;let e=Object.getPrototypeOf(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)}import{fileURLToPath as Dut}from"url";var wg=(t,e)=>{let r=wG(Mut(t));if(typeof r!="string")throw new TypeError(`${e} must be a string or a file URL: ${r}.`);return r},Mut=t=>TG(t)?t.toString():t,TG=t=>typeof t!="string"&&t&&Object.getPrototypeOf(t)===String.prototype,wG=t=>t instanceof URL?Dut(t):t;var rO=(t,e=[],r={})=>{let n=wg(t,"First argument"),[i,s]=yr(e)?[[],e]:[e,r];if(!Array.isArray(i))throw new TypeError(`Second argument must be either an array of arguments or an options object: ${i}`);if(i.some(c=>typeof c=="object"&&c!==null))throw new TypeError(`Second argument must be an array of strings: ${i}`);let o=i.map(String),a=o.find(c=>c.includes("\0"));if(a!==void 0)throw new TypeError(`Arguments cannot contain null bytes ("\\0"): ${a}`);if(!yr(s))throw new TypeError(`Last argument must be an options object: ${s}`);return[n,o,s]};import{ChildProcess as Vut}from"child_process";import{StringDecoder as Uut}from"string_decoder";var{toString:fye}=Object.prototype,pye=t=>fye.call(t)==="[object ArrayBuffer]",Pr=t=>fye.call(t)==="[object Uint8Array]",Sc=t=>new Uint8Array(t.buffer,t.byteOffset,t.byteLength),Fut=new TextEncoder,hye=t=>Fut.encode(t),jut=new TextDecoder,nO=t=>jut.decode(t),mye=(t,e)=>qut(t,e).join(""),qut=(t,e)=>{if(e==="utf8"&&t.every(s=>typeof s=="string"))return t;let r=new Uut(e),n=t.map(s=>typeof s=="string"?hye(s):s).map(s=>r.write(s)),i=r.end();return i===""?n:[...n,i]},_b=t=>t.length===1&&Pr(t[0])?t[0]:RG(But(t)),But=t=>t.map(e=>typeof e=="string"?hye(e):e),RG=t=>{let e=new Uint8Array(zut(t)),r=0;for(let n of t)e.set(n,r),r+=n.length;return e},zut=t=>{let e=0;for(let r of t)e+=r.length;return e};var Sye=t=>Array.isArray(t)&&Array.isArray(t.raw),Eye=(t,e)=>{let r=[];for(let[s,o]of t.entries())r=Hut({templates:t,expressions:e,tokens:r,index:s,template:o});if(r.length===0)throw new TypeError("Template script must not be empty");let[n,...i]=r;return[n,i,{}]},Hut=({templates:t,expressions:e,tokens:r,index:n,template:i})=>{if(i===void 0)throw new TypeError(`Invalid backslash sequence: ${t.raw[n]}`);let{nextTokens:s,leadingWhitespaces:o,trailingWhitespaces:a}=Gut(i,t.raw[n]),c=_ye(r,s,o);if(n===e.length)return c;let l=e[n],u=Array.isArray(l)?l.map(d=>yye(d)):[yye(l)];return _ye(c,u,a)},Gut=(t,e)=>{if(e.length===0)return{nextTokens:[],leadingWhitespaces:!1,trailingWhitespaces:!1};let r=[],n=0,i=gye.has(e[0]);for(let o=0,a=0;o<t.length;o+=1,a+=1){let c=e[a];if(gye.has(c))n!==o&&r.push(t.slice(n,o)),n=o+1;else if(c==="\\"){let l=e[a+1];l===`
|
|
540
540
|
`?(o-=1,a+=1):l==="u"&&e[a+2]==="{"?a=e.indexOf("}",a+3):a+=Wut[l]??1}}let s=n===t.length;return s||r.push(t.slice(n)),{nextTokens:r,leadingWhitespaces:i,trailingWhitespaces:s}},gye=new Set([" "," ","\r",`
|
|
541
541
|
`]),Wut={x:3,u:5},_ye=(t,e,r)=>r||t.length===0||e.length===0?[...t,...e]:[...t.slice(0,-1),`${t.at(-1)}${e[0]}`,...e.slice(1)],yye=t=>{let e=typeof t;if(e==="string")return t;if(e==="number")return String(t);if(yr(t)&&("stdout"in t||"isMaxBuffer"in t))return Yut(t);throw t instanceof Vut||Object.prototype.toString.call(t)==="[object Promise]"?new TypeError("Unexpected subprocess in template expression. Please use ${await subprocess} instead of ${subprocess}."):new TypeError(`Unexpected "${e}" in template expression`)},Yut=({stdout:t})=>{if(typeof t=="string")return t;if(Pr(t))return nO(t);throw t===void 0?new TypeError(`Missing result.stdout in template expression. This is probably due to the previous subprocess' "stdout" option.`):new TypeError(`Unexpected "${typeof t}" stdout in template expression`)};import{spawnSync as Xmt}from"child_process";import{debuglog as Kut}from"util";import AG from"process";var Zs=t=>iO.includes(t),iO=[AG.stdin,AG.stdout,AG.stderr],Es=["stdin","stdout","stderr"],sO=t=>Es[t]??`stdio[${t}]`;var bye=t=>{let e={...t};for(let r of PG)e[r]=xG(t,r);return e},xG=(t,e)=>{let r=Array.from({length:Jut(t)+1}),n=Zut(t[e],r,e);return rdt(n,e)},Jut=({stdio:t})=>Array.isArray(t)?Math.max(t.length,Es.length):Es.length,Zut=(t,e,r)=>yr(t)?Xut(t,e,r):e.fill(t),Xut=(t,e,r)=>{for(let n of Object.keys(t).sort(Qut))for(let i of edt(n,r,e))e[i]=t[n];return e},Qut=(t,e)=>vye(t)<vye(e)?1:-1,vye=t=>t==="stdout"||t==="stderr"?0:t==="all"?2:1,edt=(t,e,r)=>{if(t==="ipc")return[r.length-1];let n=IG(t);if(n===void 0||n===0)throw new TypeError(`"${e}.${t}" is invalid.
|
|
542
542
|
It must be "${e}.stdout", "${e}.stderr", "${e}.all", "${e}.ipc", or "${e}.fd3", "${e}.fd4" (and so on).`);if(n>=r.length)throw new TypeError(`"${e}.${t}" is invalid: that file descriptor does not exist.
|
|
@@ -578,7 +578,7 @@ For example, you can use the \`pathToFileURL()\` method of the \`url\` core modu
|
|
|
578
578
|
`,LF:`
|
|
579
579
|
`,concatBytes:m6},Smt=(t,e)=>{let r=new Uint8Array(t.length+e.length);return r.set(t,0),r.set(e,t.length),r},Emt={windowsNewline:new Uint8Array([13,10]),unixNewline:new Uint8Array([10]),LF:10,concatBytes:Smt};import{Buffer as vmt}from"buffer";var qve=(t,e)=>t?void 0:bmt.bind(void 0,e),bmt=function*(t,e){if(typeof e!="string"&&!Pr(e)&&!vmt.isBuffer(e))throw new TypeError(`The \`${t}\` option's transform must use "objectMode: true" to receive as input: ${typeof e}.`);yield e},Bve=(t,e)=>t?Tmt.bind(void 0,e):wmt.bind(void 0,e),Tmt=function*(t,e){zve(t,e),yield e},wmt=function*(t,e){if(zve(t,e),typeof e!="string"&&!Pr(e))throw new TypeError(`The \`${t}\` option's function must yield a string or an Uint8Array, not ${typeof e}.`);yield e},zve=(t,e)=>{if(e==null)throw new TypeError(`The \`${t}\` option's function must not call \`yield ${e}\`.
|
|
580
580
|
Instead, \`yield\` should either be called with a value, or not be called at all. For example:
|
|
581
|
-
if (condition) { yield value; }`)};import{Buffer as Rmt}from"buffer";import{StringDecoder as Amt}from"string_decoder";var YO=(t,e,r)=>{if(r)return;if(t)return{transform:xmt.bind(void 0,new TextEncoder)};let n=new Amt(e);return{transform:Imt.bind(void 0,n),final:Pmt.bind(void 0,n)}},xmt=function*(t,e){Rmt.isBuffer(e)?yield Sc(e):typeof e=="string"?yield t.encode(e):yield e},Imt=function*(t,e){yield Pr(e)?t.write(e):e},Pmt=function*(t){let e=t.end();e!==""&&(yield e)};import{callbackify as Vve}from"util";var _6=Vve(async(t,e,r,n)=>{e.currentIterable=t(...r);try{for await(let i of e.currentIterable)n.push(i)}finally{delete e.currentIterable}}),KO=async function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=Cmt}=e[r];for await(let i of n(t))yield*KO(i,e,r+1)},Hve=async function*(t){for(let[e,{final:r}]of Object.entries(t))yield*Omt(r,Number(e),t)},Omt=async function*(t,e,r){if(t!==void 0)for await(let n of t())yield*KO(n,r,e+1)},Gve=Vve(async({currentIterable:t},e)=>{if(t!==void 0){await(e?t.throw(e):t.return());return}if(e)throw e}),Cmt=function*(t){yield t};var y6=(t,e,r,n)=>{try{for(let i of t(...e))r.push(i);n()}catch(i){n(i)}},Wve=(t,e)=>[...e.flatMap(r=>[...Uf(r,t,0)]),...xb(t)],Uf=function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=kmt}=e[r];for(let i of n(t))yield*Uf(i,e,r+1)},xb=function*(t){for(let[e,{final:r}]of Object.entries(t))yield*Nmt(r,Number(e),t)},Nmt=function*(t,e,r){if(t!==void 0)for(let n of t())yield*Uf(n,r,e+1)},kmt=function*(t){yield t};var S6=({value:t,value:{transform:e,final:r,writableObjectMode:n,readableObjectMode:i},optionName:s},{encoding:o})=>{let a={},c=Kve(t,o,s),l=Mf(e),u=Mf(r),d=l?_6.bind(void 0,KO,a):y6.bind(void 0,Uf),f=l||u?_6.bind(void 0,Hve,a):y6.bind(void 0,xb),p=l||u?Gve.bind(void 0,a):void 0;return{stream:new $mt({writableObjectMode:n,writableHighWaterMark:Yve(n),readableObjectMode:i,readableHighWaterMark:Yve(i),transform(m,_,y){d([m,c,0],this,y)},flush(m){f([c],this,m)},destroy:p})}},JO=(t,e,r,n)=>{let i=e.filter(({type:o})=>o==="generator"),s=n?i.reverse():i;for(let{value:o,optionName:a}of s){let c=Kve(o,r,a);t=Wve(c,t)}return t},Kve=({transform:t,final:e,binary:r,writableObjectMode:n,readableObjectMode:i,preserveNewlines:s},o,a)=>{let c={};return[{transform:qve(n,a)},YO(r,o,n),WO(r,s,n,c),{transform:t,final:e},{transform:Bve(i,a)},jve({binary:r,preserveNewlines:s,readableObjectMode:i,state:c})].filter(Boolean)};var Jve=(t,e)=>{for(let r of Lmt(t))Dmt(t,r,e)},Lmt=t=>new Set(Object.entries(t).filter(([,{direction:e}])=>e==="input").map(([e])=>Number(e))),Dmt=(t,e,r)=>{let{stdioItems:n}=t[e],i=n.filter(({contents:a})=>a!==void 0);if(i.length===0)return;if(e!==0){let[{type:a,optionName:c}]=i;throw new TypeError(`Only the \`stdin\` option, not \`${c}\`, can be ${vu[a]} with synchronous methods.`)}let o=i.map(({contents:a})=>a).map(a=>Mmt(a,n));r.input=_b(o)},Mmt=(t,e)=>{let r=JO(t,e,"utf8",!0);return Umt(r),_b(r)},Umt=t=>{let e=t.find(r=>typeof r!="string"&&!Pr(r));if(e!==void 0)throw new TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${e}.`)};import{writeFileSync as Bmt,appendFileSync as zmt}from"fs";var ZO=({stdioItems:t,encoding:e,verboseInfo:r,fdNumber:n})=>n!=="all"&&Ag(r,n)&&!$i.has(e)&&Fmt(n)&&(t.some(({type:i,value:s})=>i==="native"&&jmt.has(s))||t.every(({type:i})=>vs.has(i))),Fmt=t=>t===1||t===2,jmt=new Set(["pipe","overlapped"]),Zve=async(t,e,r,n)=>{for await(let i of t)qmt(e)||Qve(i,r,n)},Xve=(t,e,r)=>{for(let n of t)Qve(n,e,r)},qmt=t=>t._readableState.pipes.length>0,Qve=(t,e,r)=>{let n=dO(t);ea({type:"output",verboseMessage:n,fdNumber:e,verboseInfo:r})};var ebe=({fileDescriptors:t,syncResult:{output:e},options:r,isMaxBuffer:n,verboseInfo:i})=>{if(e===null)return{output:Array.from({length:3})};let s={},o=new Set([]);return{output:e.map((c,l)=>Vmt({result:c,fileDescriptors:t,fdNumber:l,state:s,outputFiles:o,isMaxBuffer:n,verboseInfo:i},r)),...s}},Vmt=({result:t,fileDescriptors:e,fdNumber:r,state:n,outputFiles:i,isMaxBuffer:s,verboseInfo:o},{buffer:a,encoding:c,lines:l,stripFinalNewline:u,maxBuffer:d})=>{if(t===null)return;let f=tve(t,s,d),p=Sc(f),{stdioItems:h,objectMode:m}=e[r],_=Hmt([p],h,c,n),{serializedResult:y,finalResult:v=y}=Gmt({chunks:_,objectMode:m,encoding:c,lines:l,stripFinalNewline:u,fdNumber:r});Wmt({serializedResult:y,fdNumber:r,state:n,verboseInfo:o,encoding:c,stdioItems:h,objectMode:m});let S=a[r]?v:void 0;try{return n.error===void 0&&Ymt(y,h,i),S}catch(g){return n.error=g,S}},Hmt=(t,e,r,n)=>{try{return JO(t,e,r,!1)}catch(i){return n.error=i,t}},Gmt=({chunks:t,objectMode:e,encoding:r,lines:n,stripFinalNewline:i,fdNumber:s})=>{if(e)return{serializedResult:t};if(r==="buffer")return{serializedResult:_b(t)};let o=mye(t,r);return n[s]?{serializedResult:o,finalResult:g6(o,!i[s],e)}:{serializedResult:o}},Wmt=({serializedResult:t,fdNumber:e,state:r,verboseInfo:n,encoding:i,stdioItems:s,objectMode:o})=>{if(!ZO({stdioItems:s,encoding:i,verboseInfo:n,fdNumber:e}))return;let a=g6(t,!1,o);try{Xve(a,e,n)}catch(c){r.error??=c}},Ymt=(t,e,r)=>{for(let{path:n,append:i}of e.filter(({type:s})=>HO.has(s))){let s=typeof n=="string"?n:n.toString();i||r.has(s)?zmt(n,t):(r.add(s),Bmt(n,t))}};var tbe=([,t,e],r)=>{if(r.all)return t===void 0?e:e===void 0?t:Array.isArray(t)?Array.isArray(e)?[...t,...e]:[...t,bc(e,r,"all")]:Array.isArray(e)?[bc(t,r,"all"),...e]:Pr(t)&&Pr(e)?RG([t,e]):`${t}${e}`};import{once as E6}from"events";var rbe=async(t,e)=>{let[r,n]=await Kmt(t);return e.isForcefullyTerminated??=!1,[r,n]},Kmt=async t=>{let[e,r]=await Promise.allSettled([E6(t,"spawn"),E6(t,"exit")]);return e.status==="rejected"?[]:r.status==="rejected"?nbe(t):r.value},nbe=async t=>{try{return await E6(t,"exit")}catch{return nbe(t)}},ibe=async t=>{let[e,r]=await t;if(!Jmt(e,r)&&v6(e,r))throw new Xs;return[e,r]},Jmt=(t,e)=>t===void 0&&e===void 0,v6=(t,e)=>t!==0||e!==null;var sbe=({error:t,status:e,signal:r,output:n},{maxBuffer:i})=>{let s=Zmt(t,e,r),o=s?.code==="ETIMEDOUT",a=eve(s,n,i);return{resultError:s,exitCode:e,signal:r,timedOut:o,isMaxBuffer:a}},Zmt=(t,e,r)=>t!==void 0?t:v6(e,r)?new Xs:void 0;var obe=(t,e,r)=>{let{file:n,commandArguments:i,command:s,escapedCommand:o,startTime:a,verboseInfo:c,options:l,fileDescriptors:u}=Qmt(t,e,r),d=rgt({file:n,commandArguments:i,options:l,command:s,escapedCommand:o,verboseInfo:c,fileDescriptors:u,startTime:a});return Dg(d,c,l)},Qmt=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:s,verboseInfo:o}=pO(t,e,r),a=egt(r),{file:c,commandArguments:l,options:u}=kO(t,e,a);tgt(u);let d=Dve(u,o);return{file:c,commandArguments:l,command:n,escapedCommand:i,startTime:s,verboseInfo:o,options:u,fileDescriptors:d}},egt=t=>t.node&&!t.ipc?{...t,ipc:!1}:t,tgt=({ipc:t,ipcInput:e,detached:r,cancelSignal:n})=>{e&&XO("ipcInput"),t&&XO("ipc: true"),r&&XO("detached: true"),n&&XO("cancelSignal")},XO=t=>{throw new TypeError(`The "${t}" option cannot be used with synchronous methods.`)},rgt=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,verboseInfo:s,fileDescriptors:o,startTime:a})=>{let c=ngt({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:o,startTime:a});if(c.failed)return c;let{resultError:l,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p}=sbe(c,r),{output:h,error:m=l}=ebe({fileDescriptors:o,syncResult:c,options:r,isMaxBuffer:p,verboseInfo:s}),_=h.map((v,S)=>bc(v,r,S)),y=bc(tbe(h,r),r,"all");return sgt({error:m,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p,stdio:_,all:y,options:r,command:n,escapedCommand:i,startTime:a})},ngt=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:s,startTime:o})=>{try{Jve(s,r);let a=igt(r);return Xmt(...$O(t,e,a))}catch(a){return Lg({error:a,command:n,escapedCommand:i,fileDescriptors:s,options:r,startTime:o,isSync:!0})}},igt=({encoding:t,maxBuffer:e,...r})=>({...r,encoding:"buffer",maxBuffer:qO(e)}),sgt=({error:t,exitCode:e,signal:r,timedOut:n,isMaxBuffer:i,stdio:s,all:o,options:a,command:c,escapedCommand:l,startTime:u})=>t===void 0?BO({command:c,escapedCommand:l,stdio:s,all:o,ipcOutput:[],options:a,startTime:u}):Ab({error:t,command:c,escapedCommand:l,timedOut:n,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:i,isForcefullyTerminated:!1,exitCode:e,signal:r,stdio:s,all:o,ipcOutput:[],options:a,startTime:u,isSync:!0});import{setMaxListeners as G_t}from"events";import{spawn as W_t}from"child_process";import dbe from"process";import{once as b6,on as ogt}from"events";var abe=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0,filter:s}={})=>(Pg({methodName:"getOneMessage",isSubprocess:r,ipc:n,isConnected:xO(t)}),agt({anyProcess:t,channel:e,isSubprocess:r,filter:s,reference:i})),agt=async({anyProcess:t,channel:e,isSubprocess:r,filter:n,reference:i})=>{TO(e,i);let s=Eu(t,e,r),o=new AbortController;try{return await Promise.race([cgt(s,n,o),lgt(s,r,o),ugt(s,r,o)])}catch(a){throw Og(t),a}finally{o.abort(),wO(e,i)}},cgt=async(t,e,{signal:r})=>{if(e===void 0){let[n]=await b6(t,"message",{signal:r});return n}for await(let[n]of ogt(t,"message",{signal:r}))if(e(n))return n},lgt=async(t,e,{signal:r})=>{await b6(t,"disconnect",{signal:r}),WSe(e)},ugt=async(t,e,{signal:r})=>{let[n]=await b6(t,"strict:error",{signal:r});throw EO(n,e)};import{once as lbe,on as dgt}from"events";var ube=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0}={})=>T6({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:!r,reference:i}),T6=({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:i,reference:s})=>{Pg({methodName:"getEachMessage",isSubprocess:r,ipc:n,isConnected:xO(t)}),TO(e,s);let o=Eu(t,e,r),a=new AbortController,c={};return fgt(t,o,a),pgt({ipcEmitter:o,isSubprocess:r,controller:a,state:c}),hgt({anyProcess:t,channel:e,ipcEmitter:o,isSubprocess:r,shouldAwait:i,controller:a,state:c,reference:s})},fgt=async(t,e,r)=>{try{await lbe(e,"disconnect",{signal:r.signal}),r.abort()}catch{}},pgt=async({ipcEmitter:t,isSubprocess:e,controller:r,state:n})=>{try{let[i]=await lbe(t,"strict:error",{signal:r.signal});n.error=EO(i,e),r.abort()}catch{}},hgt=async function*({anyProcess:t,channel:e,ipcEmitter:r,isSubprocess:n,shouldAwait:i,controller:s,state:o,reference:a}){try{for await(let[c]of dgt(r,"message",{signal:s.signal}))cbe(o),yield c}catch{cbe(o)}finally{s.abort(),wO(e,a),n||Og(t),i&&await t}},cbe=({error:t})=>{if(t)throw t};var fbe=(t,{ipc:e})=>{Object.assign(t,hbe(t,!1,e))},pbe=()=>{let t=dbe,e=!0,r=dbe.channel!==void 0;return{...hbe(t,e,r),getCancelSignal:EEe.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})}},hbe=(t,e,r)=>({sendMessage:CO.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getOneMessage:abe.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getEachMessage:ube.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})});import{ChildProcess as mgt}from"child_process";import{PassThrough as ggt,Readable as _gt,Writable as ygt,Duplex as Sgt}from"stream";var mbe=({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:s,verboseInfo:o})=>{p6(n);let a=new mgt;Egt(a,n),Object.assign(a,{readable:vgt,writable:bgt,duplex:Tgt});let c=Lg({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:s,isSync:!1}),l=wgt(c,o,i);return{subprocess:a,promise:l}},Egt=(t,e)=>{let r=Ib(),n=Ib(),i=Ib(),s=Array.from({length:e.length-3},Ib),o=Ib(),a=[r,n,i,...s];Object.assign(t,{stdin:r,stdout:n,stderr:i,all:o,stdio:a})},Ib=()=>{let t=new ggt;return t.end(),t},vgt=()=>new _gt({read(){}}),bgt=()=>new ygt({write(){}}),Tgt=()=>new Sgt({read(){},write(){}}),wgt=async(t,e,r)=>Dg(t,e,r);import{createReadStream as gbe,createWriteStream as _be}from"fs";import{Buffer as Rgt}from"buffer";import{Readable as Pb,Writable as Agt,Duplex as xgt}from"stream";var Sbe=(t,e)=>GO(Igt,t,e,!1),Ob=({type:t,optionName:e})=>{throw new TypeError(`The \`${e}\` option cannot be ${vu[t]}.`)},ybe={fileNumber:Ob,generator:S6,asyncGenerator:S6,nodeStream:({value:t})=>({stream:t}),webTransform({value:{transform:t,writableObjectMode:e,readableObjectMode:r}}){let n=e||r;return{stream:xgt.fromWeb(t,{objectMode:n})}},duplex:({value:{transform:t}})=>({stream:t}),native(){}},Igt={input:{...ybe,fileUrl:({value:t})=>({stream:gbe(t)}),filePath:({value:{file:t}})=>({stream:gbe(t)}),webStream:({value:t})=>({stream:Pb.fromWeb(t)}),iterable:({value:t})=>({stream:Pb.from(t)}),asyncIterable:({value:t})=>({stream:Pb.from(t)}),string:({value:t})=>({stream:Pb.from(t)}),uint8Array:({value:t})=>({stream:Pb.from(Rgt.from(t))})},output:{...ybe,fileUrl:({value:t})=>({stream:_be(t)}),filePath:({value:{file:t,append:e}})=>({stream:_be(t,e?{flags:"a"}:{})}),webStream:({value:t})=>({stream:Agt.fromWeb(t)}),iterable:Ob,asyncIterable:Ob,string:Ob,uint8Array:Ob}};import{on as Pgt,once as Ebe}from"events";import{PassThrough as Ogt,getDefaultHighWaterMark as Cgt}from"stream";import{finished as Tbe}from"stream/promises";function Ff(t){if(!Array.isArray(t))throw new TypeError(`Expected an array, got \`${typeof t}\`.`);for(let i of t)R6(i);let e=t.some(({readableObjectMode:i})=>i),r=Ngt(t,e),n=new w6({objectMode:e,writableHighWaterMark:r,readableHighWaterMark:r});for(let i of t)n.add(i);return n}var Ngt=(t,e)=>{if(t.length===0)return Cgt(e);let r=t.filter(({readableObjectMode:n})=>n===e).map(({readableHighWaterMark:n})=>n);return Math.max(...r)},w6=class extends Ogt{#e=new Set([]);#r=new Set([]);#t=new Set([]);#n;#s=Symbol("unpipe");#i=new WeakMap;add(e){if(R6(e),this.#e.has(e))return;this.#e.add(e),this.#n??=kgt(this,this.#e,this.#s);let r=Dgt({passThroughStream:this,stream:e,streams:this.#e,ended:this.#r,aborted:this.#t,onFinished:this.#n,unpipeEvent:this.#s});this.#i.set(e,r),e.pipe(this,{end:!1})}async remove(e){if(R6(e),!this.#e.has(e))return!1;let r=this.#i.get(e);return r===void 0?!1:(this.#i.delete(e),e.unpipe(this),await r,!0)}},kgt=async(t,e,r)=>{QO(t,vbe);let n=new AbortController;try{await Promise.race([$gt(t,n),Lgt(t,e,r,n)])}finally{n.abort(),QO(t,-vbe)}},$gt=async(t,{signal:e})=>{try{await Tbe(t,{signal:e,cleanup:!0})}catch(r){throw wbe(t,r),r}},Lgt=async(t,e,r,{signal:n})=>{for await(let[i]of Pgt(t,"unpipe",{signal:n}))e.has(i)&&i.emit(r)},R6=t=>{if(typeof t?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof t}\`.`)},Dgt=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,onFinished:s,unpipeEvent:o})=>{QO(t,bbe);let a=new AbortController;try{await Promise.race([Mgt(s,e,a),Ugt({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:a}),Fgt({stream:e,streams:r,ended:n,aborted:i,unpipeEvent:o,controller:a})])}finally{a.abort(),QO(t,-bbe)}r.size>0&&r.size===n.size+i.size&&(n.size===0&&i.size>0?A6(t):jgt(t))},Mgt=async(t,e,{signal:r})=>{try{await t,r.aborted||A6(e)}catch(n){r.aborted||wbe(e,n)}},Ugt=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:{signal:s}})=>{try{await Tbe(e,{signal:s,cleanup:!0,readable:!0,writable:!1}),r.has(e)&&n.add(e)}catch(o){if(s.aborted||!r.has(e))return;Rbe(o)?i.add(e):Abe(t,o)}},Fgt=async({stream:t,streams:e,ended:r,aborted:n,unpipeEvent:i,controller:{signal:s}})=>{if(await Ebe(t,i,{signal:s}),!t.readable)return Ebe(s,"abort",{signal:s});e.delete(t),r.delete(t),n.delete(t)},jgt=t=>{t.writable&&t.end()},wbe=(t,e)=>{Rbe(e)?A6(t):Abe(t,e)},Rbe=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",A6=t=>{(t.readable||t.writable)&&t.destroy()},Abe=(t,e)=>{t.destroyed||(t.once("error",qgt),t.destroy(e))},qgt=()=>{},QO=(t,e)=>{let r=t.getMaxListeners();r!==0&&r!==Number.POSITIVE_INFINITY&&t.setMaxListeners(r+e)},vbe=2,bbe=1;import{finished as xbe}from"stream/promises";var Ug=(t,e)=>{t.pipe(e),Bgt(t,e),zgt(t,e)},Bgt=async(t,e)=>{if(!(Zs(t)||Zs(e))){try{await xbe(t,{cleanup:!0,readable:!0,writable:!1})}catch{}x6(e)}},x6=t=>{t.writable&&t.end()},zgt=async(t,e)=>{if(!(Zs(t)||Zs(e))){try{await xbe(e,{cleanup:!0,readable:!1,writable:!0})}catch{}I6(t)}},I6=t=>{t.readable&&t.destroy()};var Ibe=(t,e,r)=>{let n=new Map;for(let[i,{stdioItems:s,direction:o}]of Object.entries(e)){for(let{stream:a}of s.filter(({type:c})=>vs.has(c)))Vgt(t,a,o,i);for(let{stream:a}of s.filter(({type:c})=>!vs.has(c)))Ggt({subprocess:t,stream:a,direction:o,fdNumber:i,pipeGroups:n,controller:r})}for(let[i,s]of n.entries()){let o=s.length===1?s[0]:Ff(s);Ug(o,i)}},Vgt=(t,e,r,n)=>{r==="output"?Ug(t.stdio[n],e):Ug(e,t.stdio[n]);let i=Hgt[n];i!==void 0&&(t[i]=e),t.stdio[n]=e},Hgt=["stdin","stdout","stderr"],Ggt=({subprocess:t,stream:e,direction:r,fdNumber:n,pipeGroups:i,controller:s})=>{if(e===void 0)return;Wgt(e,s);let[o,a]=r==="output"?[e,t.stdio[n]]:[t.stdio[n],e],c=i.get(o)??[];i.set(o,[...c,a])},Wgt=(t,{signal:e})=>{Zs(t)&&Lf(t,Ygt,e)},Ygt=2;import{addAbortListener as Zgt}from"events";var jf=[];jf.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&jf.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&jf.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var eC=t=>!!t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function",P6=Symbol.for("signal-exit emitter"),O6=globalThis,Kgt=Object.defineProperty.bind(Object),C6=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(O6[P6])return O6[P6];Kgt(O6,P6,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,r){this.listeners[e].push(r)}removeListener(e,r){let n=this.listeners[e],i=n.indexOf(r);i!==-1&&(i===0&&n.length===1?n.length=0:n.splice(i,1))}emit(e,r,n){if(this.emitted[e])return!1;this.emitted[e]=!0;let i=!1;for(let s of this.listeners[e])i=s(r,n)===!0||i;return e==="exit"&&(i=this.emit("afterExit",r,n)||i),i}},tC=class{},Jgt=t=>({onExit(e,r){return t.onExit(e,r)},load(){return t.load()},unload(){return t.unload()}}),N6=class extends tC{onExit(){return()=>{}}load(){}unload(){}},k6=class extends tC{#e=$6.platform==="win32"?"SIGINT":"SIGHUP";#r=new C6;#t;#n;#s;#i={};#o=!1;constructor(e){super(),this.#t=e,this.#i={};for(let r of jf)this.#i[r]=()=>{let n=this.#t.listeners(r),{count:i}=this.#r,s=e;if(typeof s.__signal_exit_emitter__=="object"&&typeof s.__signal_exit_emitter__.count=="number"&&(i+=s.__signal_exit_emitter__.count),n.length===i){this.unload();let o=this.#r.emit("exit",null,r),a=r==="SIGHUP"?this.#e:r;o||e.kill(e.pid,a)}};this.#s=e.reallyExit,this.#n=e.emit}onExit(e,r){if(!eC(this.#t))return()=>{};this.#o===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#r.on(n,e),()=>{this.#r.removeListener(n,e),this.#r.listeners.exit.length===0&&this.#r.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#o){this.#o=!0,this.#r.count+=1;for(let e of jf)try{let r=this.#i[e];r&&this.#t.on(e,r)}catch{}this.#t.emit=(e,...r)=>this.#c(e,...r),this.#t.reallyExit=e=>this.#a(e)}}unload(){this.#o&&(this.#o=!1,jf.forEach(e=>{let r=this.#i[e];if(!r)throw new Error("Listener not defined for signal: "+e);try{this.#t.removeListener(e,r)}catch{}}),this.#t.emit=this.#n,this.#t.reallyExit=this.#s,this.#r.count-=1)}#a(e){return eC(this.#t)?(this.#t.exitCode=e||0,this.#r.emit("exit",this.#t.exitCode,null),this.#s.call(this.#t,this.#t.exitCode)):0}#c(e,...r){let n=this.#n;if(e==="exit"&&eC(this.#t)){typeof r[0]=="number"&&(this.#t.exitCode=r[0]);let i=n.call(this.#t,e,...r);return this.#r.emit("exit",this.#t.exitCode,null),i}else return n.call(this.#t,e,...r)}},$6=globalThis.process,{onExit:Pbe,load:fir,unload:pir}=Jgt(eC($6)?new k6($6):new N6);var Obe=(t,{cleanup:e,detached:r},{signal:n})=>{if(!e||r)return;let i=Pbe(()=>{t.kill()});Zgt(n,()=>{i()})};var Nbe=({source:t,sourcePromise:e,boundOptions:r,createNested:n},...i)=>{let s=fO(),{destination:o,destinationStream:a,destinationError:c,from:l,unpipeSignal:u}=Xgt(r,n,i),{sourceStream:d,sourceError:f}=e_t(t,l),{options:p,fileDescriptors:h}=ra.get(t);return{sourcePromise:e,sourceStream:d,sourceOptions:p,sourceError:f,destination:o,destinationStream:a,destinationError:c,unpipeSignal:u,fileDescriptors:h,startTime:s}},Xgt=(t,e,r)=>{try{let{destination:n,pipeOptions:{from:i,to:s,unpipeSignal:o}={}}=Qgt(t,e,...r),a=bO(n,s);return{destination:n,destinationStream:a,from:i,unpipeSignal:o}}catch(n){return{destinationError:n}}},Qgt=(t,e,r,...n)=>{if(Array.isArray(r))return{destination:e(Cbe,t)(r,...n),pipeOptions:t};if(typeof r=="string"||r instanceof URL||TG(r)){if(Object.keys(t).length>0)throw new TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[i,s,o]=rO(r,...n);return{destination:e(Cbe)(i,s,o),pipeOptions:o}}if(ra.has(r)){if(Object.keys(t).length>0)throw new TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:r,pipeOptions:n[0]}}throw new TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${r}`)},Cbe=({options:t})=>({options:{...t,stdin:"pipe",piped:!0}}),e_t=(t,e)=>{try{return{sourceStream:Cg(t,e)}}catch(r){return{sourceError:r}}};var $be=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n,fileDescriptors:i,sourceOptions:s,startTime:o})=>{let a=t_t({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n});if(a!==void 0)throw L6({error:a,fileDescriptors:i,sourceOptions:s,startTime:o})},t_t=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n})=>{if(e!==void 0&&n!==void 0)return n;if(n!==void 0)return I6(t),n;if(e!==void 0)return x6(r),e},L6=({error:t,fileDescriptors:e,sourceOptions:r,startTime:n})=>Lg({error:t,command:kbe,escapedCommand:kbe,fileDescriptors:e,options:r,startTime:n,isSync:!1}),kbe="source.pipe(destination)";var Lbe=async t=>{let[{status:e,reason:r,value:n=r},{status:i,reason:s,value:o=s}]=await t;if(o.pipedFrom.includes(n)||o.pipedFrom.push(n),i==="rejected")throw o;if(e==="rejected")throw n;return o};import{finished as r_t}from"stream/promises";var Dbe=(t,e,r)=>{let n=rC.has(e)?i_t(t,e):n_t(t,e);return Lf(t,o_t,r.signal),Lf(e,a_t,r.signal),s_t(e),n},n_t=(t,e)=>{let r=Ff([t]);return Ug(r,e),rC.set(e,r),r},i_t=(t,e)=>{let r=rC.get(e);return r.add(t),r},s_t=async t=>{try{await r_t(t,{cleanup:!0,readable:!1,writable:!0})}catch{}rC.delete(t)},rC=new WeakMap,o_t=2,a_t=1;import{aborted as c_t}from"util";var Mbe=(t,e)=>t===void 0?[]:[l_t(t,e)],l_t=async(t,{sourceStream:e,mergedStream:r,fileDescriptors:n,sourceOptions:i,startTime:s})=>{await c_t(t,e),await r.remove(e);let o=new Error("Pipe canceled by `unpipeSignal` option.");throw L6({error:o,fileDescriptors:n,sourceOptions:i,startTime:s})};var nC=(t,...e)=>{if(yr(e[0]))return nC.bind(void 0,{...t,boundOptions:{...t.boundOptions,...e[0]}});let{destination:r,...n}=Nbe(t,...e),i=u_t({...n,destination:r});return i.pipe=nC.bind(void 0,{...t,source:r,sourcePromise:i,boundOptions:{}}),i},u_t=async({sourcePromise:t,sourceStream:e,sourceOptions:r,sourceError:n,destination:i,destinationStream:s,destinationError:o,unpipeSignal:a,fileDescriptors:c,startTime:l})=>{let u=d_t(t,i);$be({sourceStream:e,sourceError:n,destinationStream:s,destinationError:o,fileDescriptors:c,sourceOptions:r,startTime:l});let d=new AbortController;try{let f=Dbe(e,s,d);return await Promise.race([Lbe(u),...Mbe(a,{sourceStream:e,mergedStream:f,sourceOptions:r,fileDescriptors:c,startTime:l})])}finally{d.abort()}},d_t=(t,e)=>Promise.allSettled([t,e]);import{setImmediate as y_t}from"timers/promises";import{on as f_t}from"events";import{getDefaultHighWaterMark as p_t}from"stream";var iC=({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:n,encoding:i,preserveNewlines:s})=>{let o=new AbortController;return h_t(e,o),Fbe({stream:t,controller:o,binary:r,shouldEncode:!t.readableObjectMode&&n,encoding:i,shouldSplit:!t.readableObjectMode,preserveNewlines:s})},h_t=async(t,e)=>{try{await t}catch{}finally{e.abort()}},D6=({stream:t,onStreamEnd:e,lines:r,encoding:n,stripFinalNewline:i,allMixed:s})=>{let o=new AbortController;m_t(e,o,t);let a=t.readableObjectMode&&!s;return Fbe({stream:t,controller:o,binary:n==="buffer",shouldEncode:!a,encoding:n,shouldSplit:!a&&r,preserveNewlines:!i})},m_t=async(t,e,r)=>{try{await t}catch{r.destroy()}finally{e.abort()}},Fbe=({stream:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o})=>{let a=f_t(t,"data",{signal:e.signal,highWaterMark:Ube,highWatermark:Ube});return g_t({onStdoutChunk:a,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o})},M6=p_t(!0),Ube=M6,g_t=async function*({onStdoutChunk:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o}){let a=__t({binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o});try{for await(let[c]of t)yield*Uf(c,a,0)}catch(c){if(!e.signal.aborted)throw c}finally{yield*xb(a)}},__t=({binary:t,shouldEncode:e,encoding:r,shouldSplit:n,preserveNewlines:i})=>[YO(t,r,!e),WO(t,i,!n,{})].filter(Boolean);var jbe=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,buffer:i,maxBuffer:s,lines:o,allMixed:a,stripFinalNewline:c,verboseInfo:l,streamInfo:u})=>{let d=S_t({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:a,verboseInfo:l,streamInfo:u});if(!i){await Promise.all([E_t(t),d]);return}let f=h6(c,r),p=D6({stream:t,onStreamEnd:e,lines:o,encoding:n,stripFinalNewline:f,allMixed:a}),[h]=await Promise.all([v_t({stream:t,iterable:p,fdNumber:r,encoding:n,maxBuffer:s,lines:o}),d]);return h},S_t=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:i,verboseInfo:s,streamInfo:{fileDescriptors:o}})=>{if(!ZO({stdioItems:o[r]?.stdioItems,encoding:n,verboseInfo:s,fdNumber:r}))return;let a=D6({stream:t,onStreamEnd:e,lines:!0,encoding:n,stripFinalNewline:!0,allMixed:i});await Zve(a,t,r,s)},E_t=async t=>{await y_t(),t.readableFlowing===null&&t.resume()},v_t=async({stream:t,stream:{readableObjectMode:e},iterable:r,fdNumber:n,encoding:i,maxBuffer:s,lines:o})=>{try{return e||o?await UO(r,{maxBuffer:s}):i==="buffer"?new Uint8Array(await FO(r,{maxBuffer:s})):await $g(r,{maxBuffer:s})}catch(a){return qbe(ZEe({error:a,stream:t,readableObjectMode:e,lines:o,encoding:i,fdNumber:n}))}},U6=async t=>{try{return await t}catch(e){return qbe(e)}},qbe=({bufferedData:t})=>pye(t)?new Uint8Array(t):t;import{finished as b_t}from"stream/promises";var Cb=async(t,e,r,{isSameDirection:n,stopOnExit:i=!1}={})=>{let s=T_t(t,r),o=new AbortController;try{await Promise.race([...i?[r.exitPromise]:[],b_t(t,{cleanup:!0,signal:o.signal})])}catch(a){s.stdinCleanedUp||A_t(a,e,r,n)}finally{o.abort()}},T_t=(t,{originalStreams:[e],subprocess:r})=>{let n={stdinCleanedUp:!1};return t===e&&w_t(t,r,n),n},w_t=(t,e,r)=>{let{_destroy:n}=t;t._destroy=(...i)=>{R_t(e,r),n.call(t,...i)}},R_t=({exitCode:t,signalCode:e},r)=>{(t!==null||e!==null)&&(r.stdinCleanedUp=!0)},A_t=(t,e,r,n)=>{if(!x_t(t,e,r,n))throw t},x_t=(t,e,r,n=!0)=>r.propagating?Bbe(t)||sC(t):(r.propagating=!0,F6(r,e)===n?Bbe(t):sC(t)),F6=({fileDescriptors:t},e)=>e!=="all"&&t[e].direction==="input",sC=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",Bbe=t=>t?.code==="EPIPE";var zbe=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:s,verboseInfo:o,streamInfo:a})=>t.stdio.map((c,l)=>j6({stream:c,fdNumber:l,encoding:e,buffer:r[l],maxBuffer:n[l],lines:i[l],allMixed:!1,stripFinalNewline:s,verboseInfo:o,streamInfo:a})),j6=async({stream:t,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:s,allMixed:o,stripFinalNewline:a,verboseInfo:c,streamInfo:l})=>{if(!t)return;let u=Cb(t,e,l);if(F6(l,e)){await u;return}let[d]=await Promise.all([jbe({stream:t,onStreamEnd:u,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:s,allMixed:o,stripFinalNewline:a,verboseInfo:c,streamInfo:l}),u]);return d};var Vbe=({stdout:t,stderr:e},{all:r})=>r&&(t||e)?Ff([t,e].filter(Boolean)):void 0,Hbe=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:s,verboseInfo:o,streamInfo:a})=>j6({...I_t(t,r),fdNumber:"all",encoding:e,maxBuffer:n[1]+n[2],lines:i[1]||i[2],allMixed:P_t(t),stripFinalNewline:s,verboseInfo:o,streamInfo:a}),I_t=({stdout:t,stderr:e,all:r},[,n,i])=>{let s=n||i;return s?n?i?{stream:r,buffer:s}:{stream:t,buffer:s}:{stream:e,buffer:s}:{stream:r,buffer:s}},P_t=({all:t,stdout:e,stderr:r})=>t&&e&&r&&e.readableObjectMode!==r.readableObjectMode;import{once as O_t}from"events";var Gbe=t=>Ag(t,"ipc"),Wbe=(t,e)=>{let r=dO(t);ea({type:"ipc",verboseMessage:r,fdNumber:"ipc",verboseInfo:e})};var Ybe=async({subprocess:t,buffer:e,maxBuffer:r,ipc:n,ipcOutput:i,verboseInfo:s})=>{if(!n)return i;let o=Gbe(s),a=Ec(e,"ipc"),c=Ec(r,"ipc");for await(let l of T6({anyProcess:t,channel:t.channel,isSubprocess:!1,ipc:n,shouldAwait:!1,reference:!0}))a&&(XEe(t,i,c),i.push(l)),o&&Wbe(l,s);return i},Kbe=async(t,e)=>(await Promise.allSettled([t]),e);var Jbe=async({subprocess:t,options:{encoding:e,buffer:r,maxBuffer:n,lines:i,timeoutDuration:s,cancelSignal:o,gracefulCancel:a,forceKillAfterDelay:c,stripFinalNewline:l,ipc:u,ipcInput:d},context:f,verboseInfo:p,fileDescriptors:h,originalStreams:m,onInternalError:_,controller:y})=>{let v=rbe(t,f),S={originalStreams:m,fileDescriptors:h,subprocess:t,exitPromise:v,propagating:!1},g=zbe({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:S}),w=Hbe({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:S}),P=[],x=Ybe({subprocess:t,buffer:r,maxBuffer:n,ipc:u,ipcOutput:P,verboseInfo:p}),R=C_t(m,t,S),O=N_t(h,S);try{return await Promise.race([Promise.all([{},ibe(v),Promise.all(g),w,x,OEe(t,d),...R,...O]),_,k_t(t,y),...REe(t,s,f,y),...GSe({subprocess:t,cancelSignal:o,gracefulCancel:a,context:f,controller:y}),...TEe({subprocess:t,cancelSignal:o,gracefulCancel:a,forceKillAfterDelay:c,context:f,controller:y})])}catch(A){return f.terminationReason??="other",Promise.all([{error:A},v,Promise.all(g.map(b=>U6(b))),U6(w),Kbe(x,P),Promise.allSettled(R),Promise.allSettled(O)])}},C_t=(t,e,r)=>t.map((n,i)=>n===e.stdio[i]?void 0:Cb(n,i,r)),N_t=(t,e)=>t.flatMap(({stdioItems:r},n)=>r.filter(({value:i,stream:s=i})=>eo(s,{checkOpen:!1})&&!Zs(s)).map(({type:i,value:s,stream:o=s})=>Cb(o,n,e,{isSameDirection:vs.has(i),stopOnExit:i==="native"}))),k_t=async(t,{signal:e})=>{let[r]=await O_t(t,"error",{signal:e});throw r};var Zbe=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),Nb=(t,e,r)=>{let n=t[r];n.has(e)||n.set(e,[]);let i=n.get(e),s=ta();return i.push(s),{resolve:s.resolve.bind(s),promises:i}},Fg=async({resolve:t,promises:e},r)=>{t();let[n]=await Promise.race([Promise.allSettled([!0,r]),Promise.all([!1,...e])]);return!n};import{Readable as $_t}from"stream";import{callbackify as L_t}from"util";import{finished as Xbe}from"stream/promises";var q6=async t=>{if(t!==void 0)try{await B6(t)}catch{}},Qbe=async t=>{if(t!==void 0)try{await z6(t)}catch{}},B6=async t=>{await Xbe(t,{cleanup:!0,readable:!1,writable:!0})},z6=async t=>{await Xbe(t,{cleanup:!0,readable:!0,writable:!1})},oC=async(t,e)=>{if(await t,e)throw e},aC=(t,e,r)=>{r&&!sC(r)?t.destroy(r):e&&t.destroy()};var eTe=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,binary:i=!0,preserveNewlines:s=!0}={})=>{let o=i||$i.has(r),{subprocessStdout:a,waitReadableDestroy:c}=V6(t,n,e),{readableEncoding:l,readableObjectMode:u,readableHighWaterMark:d}=H6(a,o),{read:f,onStdoutDataDone:p}=G6({subprocessStdout:a,subprocess:t,binary:o,encoding:r,preserveNewlines:s}),h=new $_t({read:f,destroy:L_t(Y6.bind(void 0,{subprocessStdout:a,subprocess:t,waitReadableDestroy:c})),highWaterMark:d,objectMode:u,encoding:l});return W6({subprocessStdout:a,onStdoutDataDone:p,readable:h,subprocess:t}),h},V6=(t,e,r)=>{let n=Cg(t,e),i=Nb(r,n,"readableDestroy");return{subprocessStdout:n,waitReadableDestroy:i}},H6=({readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r},n)=>n?{readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r}:{readableEncoding:t,readableObjectMode:!0,readableHighWaterMark:M6},G6=({subprocessStdout:t,subprocess:e,binary:r,encoding:n,preserveNewlines:i})=>{let s=ta(),o=iC({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:!r,encoding:n,preserveNewlines:i});return{read(){D_t(this,o,s)},onStdoutDataDone:s}},D_t=async(t,e,r)=>{try{let{value:n,done:i}=await e.next();i?r.resolve():t.push(n)}catch{}},W6=async({subprocessStdout:t,onStdoutDataDone:e,readable:r,subprocess:n,subprocessStdin:i})=>{try{await z6(t),await n,await q6(i),await e,r.readable&&r.push(null)}catch(s){await q6(i),tTe(r,s)}},Y6=async({subprocessStdout:t,subprocess:e,waitReadableDestroy:r},n)=>{await Fg(r,e)&&(tTe(t,n),await oC(e,n))},tTe=(t,e)=>{aC(t,t.readable,e)};import{Writable as M_t}from"stream";import{callbackify as rTe}from"util";var nTe=({subprocess:t,concurrentStreams:e},{to:r}={})=>{let{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:s}=K6(t,r,e),o=new M_t({...J6(n,t,i),destroy:rTe(X6.bind(void 0,{subprocessStdin:n,subprocess:t,waitWritableFinal:i,waitWritableDestroy:s})),highWaterMark:n.writableHighWaterMark,objectMode:n.writableObjectMode});return Z6(n,o),o},K6=(t,e,r)=>{let n=bO(t,e),i=Nb(r,n,"writableFinal"),s=Nb(r,n,"writableDestroy");return{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:s}},J6=(t,e,r)=>({write:U_t.bind(void 0,t),final:rTe(F_t.bind(void 0,t,e,r))}),U_t=(t,e,r,n)=>{t.write(e,r)?n():t.once("drain",n)},F_t=async(t,e,r)=>{await Fg(r,e)&&(t.writable&&t.end(),await e)},Z6=async(t,e,r)=>{try{await B6(t),e.writable&&e.end()}catch(n){await Qbe(r),iTe(e,n)}},X6=async({subprocessStdin:t,subprocess:e,waitWritableFinal:r,waitWritableDestroy:n},i)=>{await Fg(r,e),await Fg(n,e)&&(iTe(t,i),await oC(e,i))},iTe=(t,e)=>{aC(t,t.writable,e)};import{Duplex as j_t}from"stream";import{callbackify as q_t}from"util";var sTe=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,to:i,binary:s=!0,preserveNewlines:o=!0}={})=>{let a=s||$i.has(r),{subprocessStdout:c,waitReadableDestroy:l}=V6(t,n,e),{subprocessStdin:u,waitWritableFinal:d,waitWritableDestroy:f}=K6(t,i,e),{readableEncoding:p,readableObjectMode:h,readableHighWaterMark:m}=H6(c,a),{read:_,onStdoutDataDone:y}=G6({subprocessStdout:c,subprocess:t,binary:a,encoding:r,preserveNewlines:o}),v=new j_t({read:_,...J6(u,t,d),destroy:q_t(B_t.bind(void 0,{subprocessStdout:c,subprocessStdin:u,subprocess:t,waitReadableDestroy:l,waitWritableFinal:d,waitWritableDestroy:f})),readableHighWaterMark:m,writableHighWaterMark:u.writableHighWaterMark,readableObjectMode:h,writableObjectMode:u.writableObjectMode,encoding:p});return W6({subprocessStdout:c,onStdoutDataDone:y,readable:v,subprocess:t,subprocessStdin:u}),Z6(u,v,c),v},B_t=async({subprocessStdout:t,subprocessStdin:e,subprocess:r,waitReadableDestroy:n,waitWritableFinal:i,waitWritableDestroy:s},o)=>{await Promise.all([Y6({subprocessStdout:t,subprocess:r,waitReadableDestroy:n},o),X6({subprocessStdin:e,subprocess:r,waitWritableFinal:i,waitWritableDestroy:s},o)])};var Q6=(t,e,{from:r,binary:n=!1,preserveNewlines:i=!1}={})=>{let s=n||$i.has(e),o=Cg(t,r),a=iC({subprocessStdout:o,subprocess:t,binary:s,shouldEncode:!0,encoding:e,preserveNewlines:i});return z_t(a,o,t)},z_t=async function*(t,e,r){try{yield*t}finally{e.readable&&e.destroy(),await r}};var oTe=(t,{encoding:e})=>{let r=Zbe();t.readable=eTe.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.writable=nTe.bind(void 0,{subprocess:t,concurrentStreams:r}),t.duplex=sTe.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.iterable=Q6.bind(void 0,t,e),t[Symbol.asyncIterator]=Q6.bind(void 0,t,e,{})};var aTe=(t,e)=>{for(let[r,n]of H_t){let i=n.value.bind(e);Reflect.defineProperty(t,r,{...n,value:i})}},V_t=(async()=>{})().constructor.prototype,H_t=["then","catch","finally"].map(t=>[t,Reflect.getOwnPropertyDescriptor(V_t,t)]);var cTe=(t,e,r,n)=>{let{file:i,commandArguments:s,command:o,escapedCommand:a,startTime:c,verboseInfo:l,options:u,fileDescriptors:d}=Y_t(t,e,r),{subprocess:f,promise:p}=J_t({file:i,commandArguments:s,options:u,startTime:c,verboseInfo:l,command:o,escapedCommand:a,fileDescriptors:d});return f.pipe=nC.bind(void 0,{source:f,sourcePromise:p,boundOptions:{},createNested:n}),aTe(f,p),ra.set(f,{options:u,fileDescriptors:d}),f},Y_t=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:s,verboseInfo:o}=pO(t,e,r),{file:a,commandArguments:c,options:l}=kO(t,e,r),u=K_t(l),d=Sbe(u,o);return{file:a,commandArguments:c,command:n,escapedCommand:i,startTime:s,verboseInfo:o,options:u,fileDescriptors:d}},K_t=({timeout:t,signal:e,...r})=>{if(e!==void 0)throw new TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...r,timeoutDuration:t}},J_t=({file:t,commandArguments:e,options:r,startTime:n,verboseInfo:i,command:s,escapedCommand:o,fileDescriptors:a})=>{let c;try{c=W_t(...$O(t,e,r))}catch(h){return mbe({error:h,command:s,escapedCommand:o,fileDescriptors:a,options:r,startTime:n,verboseInfo:i})}let l=new AbortController;G_t(Number.POSITIVE_INFINITY,l.signal);let u=[...c.stdio];Ibe(c,a,l),Obe(c,r,l);let d={},f=ta();c.kill=VSe.bind(void 0,{kill:c.kill.bind(c),options:r,onInternalError:f,context:d,controller:l}),c.all=Vbe(c,r),oTe(c,r),fbe(c,r);let p=Z_t({subprocess:c,options:r,startTime:n,verboseInfo:i,fileDescriptors:a,originalStreams:u,command:s,escapedCommand:o,context:d,onInternalError:f,controller:l});return{subprocess:c,promise:p}},Z_t=async({subprocess:t,options:e,startTime:r,verboseInfo:n,fileDescriptors:i,originalStreams:s,command:o,escapedCommand:a,context:c,onInternalError:l,controller:u})=>{let[d,[f,p],h,m,_]=await Jbe({subprocess:t,options:e,context:c,verboseInfo:n,fileDescriptors:i,originalStreams:s,onInternalError:l,controller:u});u.abort(),l.resolve();let y=h.map((g,w)=>bc(g,e,w)),v=bc(m,e,"all"),S=X_t({errorInfo:d,exitCode:f,signal:p,stdio:y,all:v,ipcOutput:_,context:c,options:e,command:o,escapedCommand:a,startTime:r});return Dg(S,n,e)},X_t=({errorInfo:t,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:s,context:o,options:a,command:c,escapedCommand:l,startTime:u})=>"error"in t?Ab({error:t.error,command:c,escapedCommand:l,timedOut:o.terminationReason==="timeout",isCanceled:o.terminationReason==="cancel"||o.terminationReason==="gracefulCancel",isGracefullyCanceled:o.terminationReason==="gracefulCancel",isMaxBuffer:t.error instanceof na,isForcefullyTerminated:o.isForcefullyTerminated,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:s,options:a,startTime:u,isSync:!1}):BO({command:c,escapedCommand:l,stdio:n,all:i,ipcOutput:s,options:a,startTime:u});var cC=(t,e)=>{let r=Object.fromEntries(Object.entries(e).map(([n,i])=>[n,Q_t(n,t[n],i)]));return{...t,...r}},Q_t=(t,e,r)=>eyt.has(t)&&yr(e)&&yr(r)?{...e,...r}:r,eyt=new Set(["env",...PG]);var bu=(t,e,r,n)=>{let i=(o,a,c)=>bu(o,a,r,c),s=(...o)=>tyt({mapArguments:t,deepOptions:r,boundOptions:e,setBoundExeca:n,createNested:i},...o);return n!==void 0&&n(s,i,e),s},tyt=({mapArguments:t,deepOptions:e={},boundOptions:r={},setBoundExeca:n,createNested:i},s,...o)=>{if(yr(s))return i(t,cC(r,s),n);let{file:a,commandArguments:c,options:l,isSync:u}=ryt({mapArguments:t,firstArgument:s,nextArguments:o,deepOptions:e,boundOptions:r});return u?obe(a,c,l):cTe(a,c,l,i)},ryt=({mapArguments:t,firstArgument:e,nextArguments:r,deepOptions:n,boundOptions:i})=>{let s=Sye(e)?Eye(e,r):[e,...r],[o,a,c]=rO(...s),l=cC(cC(n,i),c),{file:u=o,commandArguments:d=a,options:f=l,isSync:p=!1}=t({file:o,commandArguments:a,options:l});return{file:u,commandArguments:d,options:f,isSync:p}};var lTe=({file:t,commandArguments:e})=>dTe(t,e),uTe=({file:t,commandArguments:e})=>({...dTe(t,e),isSync:!0}),dTe=(t,e)=>{if(e.length>0)throw new TypeError(`The command and its arguments must be passed as a single string: ${t} ${e}.`);let[r,...n]=nyt(t);return{file:r,commandArguments:n}},nyt=t=>{if(typeof t!="string")throw new TypeError(`The command must be a string: ${String(t)}.`);let e=t.trim();if(e==="")return[];let r=[];for(let n of e.split(iyt)){let i=r.at(-1);i&&i.endsWith("\\")?r[r.length-1]=`${i.slice(0,-1)} ${n}`:r.push(n)}return r},iyt=/ +/g;var fTe=(t,e,r)=>{t.sync=e(syt,r),t.s=t.sync},pTe=({options:t})=>hTe(t),syt=({options:t})=>({...hTe(t),isSync:!0}),hTe=t=>({options:{...oyt(t),...t}}),oyt=({input:t,inputFile:e,stdio:r})=>t===void 0&&e===void 0&&r===void 0?{stdin:"inherit"}:{},mTe={preferLocal:!0};var gTe=bu(()=>({})),nar=bu(()=>({isSync:!0})),_Te=bu(lTe),iar=bu(uTe),sar=bu(xEe),oar=bu(pTe,{},mTe,fTe),{sendMessage:aar,getOneMessage:car,getEachMessage:lar,getCancelSignal:uar}=pbe();import{Transform as ayt}from"stream";var cyt=["NETLIFY_AI_GATEWAY_KEY"];function lyt(){let t=(process.env.NETLIFY_SENSITIVE_ENV_KEYS||"").split(",").map(e=>e.trim()).filter(Boolean);return[...new Set([...t,...cyt])]}function uyt(t){let e=t.toLowerCase();return e==="true"||e==="false"?!0:t.trim().length<4}function dyt(){let e=lyt().map(r=>process.env[r]).filter(r=>!(!r||uyt(r)));return[...new Set(e)].sort((r,n)=>n.length-r.length)}function bs(t){if(typeof t!="string")return t;let e=dyt();if(e.length===0)return t;let r=t;return e.forEach(n=>{let i=new RegExp(fyt(n),"g");r=r.replace(i,"******")}),r}function fyt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var kb=class extends ayt{constructor(e={}){super({...e,objectMode:!1})}_transform(e,r,n){let i=e.toString(),s=bs(i);n(null,s)}},lC=Symbol("maskedWrite");function yTe(){if(process.env.NETLIFY_MASK_LOGS!=="false"){if(!process.stdout.write[lC]){let e=process.stdout.write.bind(process.stdout),r=function(n,i,s){let o=typeof n=="string"?bs(n):n;return typeof i=="function"?e(o,i):e(o,i,s)};r[lC]=!0,process.stdout.write=r}if(!process.stderr.write[lC]){let e=process.stderr.write.bind(process.stderr),r=function(n,i,s){let o=typeof n=="string"?bs(n):n;return typeof i=="function"?e(o,i):e(o,i,s)};r[lC]=!0,process.stderr.write=r}}}var STe=!1,ETe=()=>{STe=!0},hi=()=>STe;var $b=null,vTe=t=>($b&&$b.destroy(),$b=new Tc({totalAllowedTime:t}),$b),bTe=()=>$b;var Tc=class{constructor({totalAllowedTime:e}){this.withStageTimer=async(e,r,n,{interruptible:i=!0}={})=>{if(this.isTimeExpired())throw new Error(`${e} stage did not complete in the allowed time. Time has already expired.`);if(i&&hi())throw new Error(`Aborting ${e} stage \u2014 shutting down`);let s=this.onTimesUp(()=>{throw new Error(`${e} stage did not complete in the allowed time.`)}),o=null,a=null;n!==void 0&&(a=new Promise((u,d)=>{o=setTimeout(()=>{d(new Error(`${e} stage exceeded its maximum duration of ${n}ms`))},n)}));let c=Date.now(),l="success";try{return await eO({stage:e},async()=>a?await Promise.race([r(),a]):await r())}catch(u){throw l="failure",u}finally{Oe.timing("stage.duration",Date.now()-c,{stage:e,outcome:l}),s(),o&&clearTimeout(o)}};this.startTime=Date.now(),this.totalAllowedTime=e,this.globalTimeoutId=null,this.subscribers=[],this.hasTimedOut=!1,this.setupGlobalTimeout()}getElapsedTime(){return Date.now()-this.startTime}getRemainingTime(){let e=this.getElapsedTime(),r=this.totalAllowedTime-e;return Math.max(0,r)}isTimeExpired(){return this.getRemainingTime()===0||this.hasTimedOut}setupGlobalTimeout(){this.globalTimeoutId&&clearTimeout(this.globalTimeoutId),this.globalTimeoutId=setTimeout(()=>{this.notifyTimeUp()},this.totalAllowedTime)}notifyTimeUp(){this.hasTimedOut=!0;for(let e=this.subscribers.length-1;e>=0;e--)try{this.subscribers[e]()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}}onTimesUp(e){if(this.subscribers.push(e),this.hasTimedOut)try{e()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}return()=>{let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}}off(e){let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}clearSubscribers(){this.subscribers.length=0}getSubscriberCount(){return this.subscribers.length}destroy(){this.globalTimeoutId&&(clearTimeout(this.globalTimeoutId),this.globalTimeoutId=null),this.clearSubscribers()}static{this.timeUnits={seconds:e=>e*1e3,minutes:e=>e*60*1e3,hours:e=>e*60*60*1e3}}};var TTe={name:"@netlify/agent-runner-cli",type:"module",version:"1.142.1-test.7",description:"CLI tool for running Netlify agents",main:"./dist/index.js",types:"./dist/index.d.ts",exports:"./dist/index.js",bin:{"agent-runner-cli":"./dist/bin.js","agent-runner-cli-local":"./dist/bin-local.js"},files:["dist/**/*.js","dist/**/*.d.ts","dist/skills/**","patches","scripts"],scripts:{build:"tsup",dev:"tsup --watch",prepare:"husky install node_modules/@netlify/eslint-config-node/.husky/",prepublishOnly:"npm ci && npm test",prepack:"npm run build",test:"run-s build format test:dev",format:"run-s build format:check-fix:*","format:ci":"run-s build format:check:*","format:check-fix:lint":"run-e format:check:lint format:fix:lint","format:check:lint":'eslint --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:fix:lint":'eslint --fix --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:check-fix:prettier":"run-e format:check:prettier format:fix:prettier","format:check:prettier":'prettier --check --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"format:fix:prettier":'prettier --write --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"test:dev":"run-s build test:dev:*","test:ci":"run-s build test:ci:*","test:dev:vitest":"LOG=0 vitest --exclude '**/integration/**'","test:ci:vitest":"LOG=0 vitest run --coverage --exclude '**/integration/**'","test:smoke":"node scripts/smoke-dist.js","test:integration":"vitest run test/integration/","test:integration:codex":"vitest run test/integration/codex.test.ts","test:integration:claude":"vitest run test/integration/claude.test.ts","test:integration:gemini":"vitest run test/integration/gemini.test.ts","test:integration:skill-invocation":"vitest run test/integration/skill-invocation.test.ts","check:types":"tsc --noEmit",postinstall:"node scripts/postinstall.js"},keywords:[],license:"MIT",repository:"netlify/agent-runner-cli",bugs:{url:"https://github.com/netlify/agent-runner-cli/issues"},author:"Netlify Inc.",directories:{test:"test"},devDependencies:{"@commitlint/cli":"^20.0.0","@commitlint/config-conventional":"^20.0.0","@eslint/compat":"^2.0.0","@eslint/js":"^10.0.1","@netlify/axis":"^1.17.0","@netlify/eslint-config-node":"^7.0.1","@types/node":"^24.5.0","@typescript-eslint/eslint-plugin":"^8.0.0","@typescript-eslint/parser":"^8.0.0","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.6",eslint:"^10.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-n":"^17.0.0",husky:"^9.0.0",jiti:"^2.7.0","patch-package":"^8.0.0",tsup:"^8.5.0",typescript:"^5.0.0","typescript-eslint":"^8.44.0",vitest:"^4.0.16"},dependencies:{"@anthropic-ai/claude-code":"2.1.197","@anthropic-ai/sdk":"0.91.1","@google/gemini-cli":"0.42.0","@modelcontextprotocol/sdk":"^1.29.0","@netlify/cache-utils":"^6.0.5","@netlify/database-proxy":"^0.1.5","@netlify/otel":"^6.0.3","@netlify/ts-cli":"^1.2.0","@openai/codex":"0.128.0","@opentelemetry/api":"^1.9.0","@opentelemetry/exporter-trace-otlp-grpc":"0.218.0",execa:"^9.6.1",fastify:"5.8.5",minimist:"^1.2.8",openai:"6.34.0","opencode-ai":"1.17.19",zod:"^4.4.3"}};var gyt=hyt(import.meta.url),_yt=wc.dirname(gyt),yyt=myt(import.meta.url),jg=Re("shell"),e3=new Set,wTe={preferLocal:!0},Li=(t,e,r)=>{let[n,i]=Syt(e,r),s={...wTe,...i},o=gTe(t,n,s);ATe(o,s),PTe(o);let a=r?.idleTimeout;return a&&a>0&&ITe(o,a),o},RTe=(t,e)=>{let r={...wTe,...e},n=_Te(t,r);return ATe(n,r),PTe(n),e?.idleTimeout&&e.idleTimeout>0&&ITe(n,e.idleTimeout),n},Syt=function(t,e){return Array.isArray(t)?[t,e]:typeof t=="object"&&t!==null?[[],t]:[[],void 0]},ATe=(t,e)=>{if(e.stdio!==void 0||e.stdout!==void 0||e.stderr!==void 0)return;if(Rc.env.NETLIFY_MASK_LOGS!=="false"){t.stdout?.pipe(new kb).pipe(Rc.stdout),t.stderr?.pipe(new kb).pipe(Rc.stderr);return}t.stdout?.pipe(Rc.stdout),t.stderr?.pipe(Rc.stderr)},t3=(t,e="SIGTERM")=>{try{return t.pid&&!t.killed?(Rc.kill(-t.pid,e),jg.log(`Killed process ${t.pid} with signal ${e}`),!0):!1}catch(r){return jg.error("Error killing process:",r),!1}},xTe=t=>t3(t,"SIGKILL"),ITe=(t,e)=>{let r=null,n=()=>{jg.log(`Process ${t.pid} killed due to idle timeout (no output for ${e}ms)`),t3(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(jg.log(`Force killing idle process ${t.pid}`),xTe(t))},5e3)},i=()=>{r&&clearTimeout(r),r=setTimeout(n,e)};i(),t.stdout?.on("data",i),t.stderr?.on("data",i);let s=()=>{r&&(clearTimeout(r),r=null)};t.on("exit",s),t.on("error",s)},PTe=t=>{e3.add(t);let e=bTe();if(e){let r=e.onTimesUp(()=>{jg.log(`Global timer expired, killing process ${t.pid}`),t3(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(jg.log(`Force killing process ${t.pid} after timeout`),xTe(t))},5e3)});t.on("exit",()=>{e3.delete(t),r()}),t.on("error",()=>{e3.delete(t),r()})}};function sa(t,e){if(!Rc.env.NETLIFY_LOCAL_MODE)try{let i=yyt.resolve(TTe.name),s=wc.dirname(i);for(;s!==wc.dirname(s);){let o=wc.dirname(s);if(wc.basename(o)==="node_modules"){let a=wc.join(o,".bin",e);if(uC.existsSync(a))return a;break}s=o}}catch(i){console.error("Could not resolve package.json",i)}if(Rc.env.NODE_PATH){let i=wc.join(Rc.env.NODE_PATH,".bin",e);if(uC.existsSync(i))return i}let r=wc.join(t,"node_modules",".bin",e);if(uC.existsSync(r))return r;let n=wc.join(_yt,"..","node_modules",".bin",e);if(uC.existsSync(n))return n}import hL from"process";import{fileURLToPath as cCt}from"url";import{createRequire as lCt}from"module";import mL from"path";var Eyt="__netlify__getTracer",vyt="__netlify__shutdownTracers",ft=(t,e)=>globalThis[Eyt]?.(t,e),OTe=async()=>globalThis[vyt]?.();function qf(t,e,r,n,i){let s=typeof n=="function"?n:typeof r=="function"?r:i;if(!s)throw new Error("function to execute with active span is missing");return t?t.withActiveSpan(e,r,n,s):s()}import{setTimeout as rCt}from"timers/promises";import _Et from"process";var CTe=typeof globalThis=="object"?globalThis:global;var Ac="1.9.0";var NTe=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function byt(t){var e=new Set([t]),r=new Set,n=t.match(NTe);if(!n)return function(){return!1};var i={major:+n[1],minor:+n[2],patch:+n[3],prerelease:n[4]};if(i.prerelease!=null)return function(c){return c===t};function s(a){return r.add(a),!1}function o(a){return e.add(a),!0}return function(c){if(e.has(c))return!0;if(r.has(c))return!1;var l=c.match(NTe);if(!l)return s(c);var u={major:+l[1],minor:+l[2],patch:+l[3],prerelease:l[4]};return u.prerelease!=null||i.major!==u.major?s(c):i.major===0?i.minor===u.minor&&i.patch<=u.patch?o(c):s(c):i.minor<=u.minor?o(c):s(c)}}var kTe=byt(Ac);var Tyt=Ac.split(".")[0],Lb=Symbol.for("opentelemetry.js.api."+Tyt),Db=CTe;function Tu(t,e,r,n){var i;n===void 0&&(n=!1);var s=Db[Lb]=(i=Db[Lb])!==null&&i!==void 0?i:{version:Ac};if(!n&&s[t]){var o=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+t);return r.error(o.stack||o.message),!1}if(s.version!==Ac){var o=new Error("@opentelemetry/api: Registration of version v"+s.version+" for "+t+" does not match previously registered API v"+Ac);return r.error(o.stack||o.message),!1}return s[t]=e,r.debug("@opentelemetry/api: Registered a global for "+t+" v"+Ac+"."),!0}function to(t){var e,r,n=(e=Db[Lb])===null||e===void 0?void 0:e.version;if(!(!n||!kTe(n)))return(r=Db[Lb])===null||r===void 0?void 0:r[t]}function wu(t,e){e.debug("@opentelemetry/api: Unregistering a global for "+t+" v"+Ac+".");var r=Db[Lb];r&&delete r[t]}var wyt=function(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return s},Ryt=function(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,s;n<i;n++)(s||!(n in e))&&(s||(s=Array.prototype.slice.call(e,0,n)),s[n]=e[n]);return t.concat(s||Array.prototype.slice.call(e))},$Te=(function(){function t(e){this._namespace=e.namespace||"DiagComponentLogger"}return t.prototype.debug=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return Mb("debug",this._namespace,e)},t.prototype.error=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return Mb("error",this._namespace,e)},t.prototype.info=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return Mb("info",this._namespace,e)},t.prototype.warn=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return Mb("warn",this._namespace,e)},t.prototype.verbose=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return Mb("verbose",this._namespace,e)},t})();function Mb(t,e,r){var n=to("diag");if(n)return r.unshift(e),n[t].apply(n,Ryt([],wyt(r),!1))}var Gn;(function(t){t[t.NONE=0]="NONE",t[t.ERROR=30]="ERROR",t[t.WARN=50]="WARN",t[t.INFO=60]="INFO",t[t.DEBUG=70]="DEBUG",t[t.VERBOSE=80]="VERBOSE",t[t.ALL=9999]="ALL"})(Gn||(Gn={}));function LTe(t,e){t<Gn.NONE?t=Gn.NONE:t>Gn.ALL&&(t=Gn.ALL),e=e||{};function r(n,i){var s=e[n];return typeof s=="function"&&t>=i?s.bind(e):function(){}}return{error:r("error",Gn.ERROR),warn:r("warn",Gn.WARN),info:r("info",Gn.INFO),debug:r("debug",Gn.DEBUG),verbose:r("verbose",Gn.VERBOSE)}}var Ayt=function(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return s},xyt=function(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,s;n<i;n++)(s||!(n in e))&&(s||(s=Array.prototype.slice.call(e,0,n)),s[n]=e[n]);return t.concat(s||Array.prototype.slice.call(e))},Iyt="diag",Di=(function(){function t(){function e(i){return function(){for(var s=[],o=0;o<arguments.length;o++)s[o]=arguments[o];var a=to("diag");if(a)return a[i].apply(a,xyt([],Ayt(s),!1))}}var r=this,n=function(i,s){var o,a,c;if(s===void 0&&(s={logLevel:Gn.INFO}),i===r){var l=new Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return r.error((o=l.stack)!==null&&o!==void 0?o:l.message),!1}typeof s=="number"&&(s={logLevel:s});var u=to("diag"),d=LTe((a=s.logLevel)!==null&&a!==void 0?a:Gn.INFO,i);if(u&&!s.suppressOverrideMessage){var f=(c=new Error().stack)!==null&&c!==void 0?c:"<failed to generate stacktrace>";u.warn("Current logger will be overwritten from "+f),d.warn("Current logger will overwrite one already registered from "+f)}return Tu("diag",d,r,!0)};r.setLogger=n,r.disable=function(){wu(Iyt,r)},r.createComponentLogger=function(i){return new $Te(i)},r.verbose=e("verbose"),r.debug=e("debug"),r.info=e("info"),r.warn=e("warn"),r.error=e("error")}return t.instance=function(){return this._instance||(this._instance=new t),this._instance},t})();var Pyt=function(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return s},Oyt=function(t){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},DTe=(function(){function t(e){this._entries=e?new Map(e):new Map}return t.prototype.getEntry=function(e){var r=this._entries.get(e);if(r)return Object.assign({},r)},t.prototype.getAllEntries=function(){return Array.from(this._entries.entries()).map(function(e){var r=Pyt(e,2),n=r[0],i=r[1];return[n,i]})},t.prototype.setEntry=function(e,r){var n=new t(this._entries);return n._entries.set(e,r),n},t.prototype.removeEntry=function(e){var r=new t(this._entries);return r._entries.delete(e),r},t.prototype.removeEntries=function(){for(var e,r,n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];var s=new t(this._entries);try{for(var o=Oyt(n),a=o.next();!a.done;a=o.next()){var c=a.value;s._entries.delete(c)}}catch(l){e={error:l}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}return s},t.prototype.clear=function(){return new t},t})();var ecr=Di.instance();function MTe(t){return t===void 0&&(t={}),new DTe(new Map(Object.entries(t)))}function dC(t){return Symbol.for(t)}var Cyt=(function(){function t(e){var r=this;r._currentContext=e?new Map(e):new Map,r.getValue=function(n){return r._currentContext.get(n)},r.setValue=function(n,i){var s=new t(r._currentContext);return s._currentContext.set(n,i),s},r.deleteValue=function(n){var i=new t(r._currentContext);return i._currentContext.delete(n),i}}return t})(),UTe=new Cyt;var FTe={get:function(t,e){if(t!=null)return t[e]},keys:function(t){return t==null?[]:Object.keys(t)}},jTe={set:function(t,e,r){t!=null&&(t[e]=r)}};var Nyt=function(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return s},kyt=function(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,s;n<i;n++)(s||!(n in e))&&(s||(s=Array.prototype.slice.call(e,0,n)),s[n]=e[n]);return t.concat(s||Array.prototype.slice.call(e))},qTe=(function(){function t(){}return t.prototype.active=function(){return UTe},t.prototype.with=function(e,r,n){for(var i=[],s=3;s<arguments.length;s++)i[s-3]=arguments[s];return r.call.apply(r,kyt([n],Nyt(i),!1))},t.prototype.bind=function(e,r){return r},t.prototype.enable=function(){return this},t.prototype.disable=function(){return this},t})();var $yt=function(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return s},Lyt=function(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,s;n<i;n++)(s||!(n in e))&&(s||(s=Array.prototype.slice.call(e,0,n)),s[n]=e[n]);return t.concat(s||Array.prototype.slice.call(e))},r3="context",Dyt=new qTe,Ru=(function(){function t(){}return t.getInstance=function(){return this._instance||(this._instance=new t),this._instance},t.prototype.setGlobalContextManager=function(e){return Tu(r3,e,Di.instance())},t.prototype.active=function(){return this._getContextManager().active()},t.prototype.with=function(e,r,n){for(var i,s=[],o=3;o<arguments.length;o++)s[o-3]=arguments[o];return(i=this._getContextManager()).with.apply(i,Lyt([e,r,n],$yt(s),!1))},t.prototype.bind=function(e,r){return this._getContextManager().bind(e,r)},t.prototype._getContextManager=function(){return to(r3)||Dyt},t.prototype.disable=function(){this._getContextManager().disable(),wu(r3,Di.instance())},t})();var fC;(function(t){t[t.NONE=0]="NONE",t[t.SAMPLED=1]="SAMPLED"})(fC||(fC={}));var n3="0000000000000000",i3="00000000000000000000000000000000",BTe={traceId:i3,spanId:n3,traceFlags:fC.NONE};var Au=(function(){function t(e){e===void 0&&(e=BTe),this._spanContext=e}return t.prototype.spanContext=function(){return this._spanContext},t.prototype.setAttribute=function(e,r){return this},t.prototype.setAttributes=function(e){return this},t.prototype.addEvent=function(e,r){return this},t.prototype.addLink=function(e){return this},t.prototype.addLinks=function(e){return this},t.prototype.setStatus=function(e){return this},t.prototype.updateName=function(e){return this},t.prototype.end=function(e){},t.prototype.isRecording=function(){return!1},t.prototype.recordException=function(e,r){},t})();var s3=dC("OpenTelemetry Context Key SPAN");function pC(t){return t.getValue(s3)||void 0}function zTe(){return pC(Ru.getInstance().active())}function Ub(t,e){return t.setValue(s3,e)}function VTe(t){return t.deleteValue(s3)}function HTe(t,e){return Ub(t,new Au(e))}function hC(t){var e;return(e=pC(t))===null||e===void 0?void 0:e.spanContext()}var Myt=/^([0-9a-f]{32})$/i,Uyt=/^[0-9a-f]{16}$/i;function Fyt(t){return Myt.test(t)&&t!==i3}function jyt(t){return Uyt.test(t)&&t!==n3}function mC(t){return Fyt(t.traceId)&&jyt(t.spanId)}function GTe(t){return new Au(t)}var o3=Ru.getInstance(),gC=(function(){function t(){}return t.prototype.startSpan=function(e,r,n){n===void 0&&(n=o3.active());var i=!!r?.root;if(i)return new Au;var s=n&&hC(n);return qyt(s)&&mC(s)?new Au(s):new Au},t.prototype.startActiveSpan=function(e,r,n,i){var s,o,a;if(!(arguments.length<2)){arguments.length===2?a=r:arguments.length===3?(s=r,a=n):(s=r,o=n,a=i);var c=o??o3.active(),l=this.startSpan(e,s,c),u=Ub(c,l);return o3.with(u,a,void 0,l)}},t})();function qyt(t){return typeof t=="object"&&typeof t.spanId=="string"&&typeof t.traceId=="string"&&typeof t.traceFlags=="number"}var Byt=new gC,WTe=(function(){function t(e,r,n,i){this._provider=e,this.name=r,this.version=n,this.options=i}return t.prototype.startSpan=function(e,r,n){return this._getTracer().startSpan(e,r,n)},t.prototype.startActiveSpan=function(e,r,n,i){var s=this._getTracer();return Reflect.apply(s.startActiveSpan,s,arguments)},t.prototype._getTracer=function(){if(this._delegate)return this._delegate;var e=this._provider.getDelegateTracer(this.name,this.version,this.options);return e?(this._delegate=e,this._delegate):Byt},t})();var YTe=(function(){function t(){}return t.prototype.getTracer=function(e,r,n){return new gC},t})();var zyt=new YTe,a3=(function(){function t(){}return t.prototype.getTracer=function(e,r,n){var i;return(i=this.getDelegateTracer(e,r,n))!==null&&i!==void 0?i:new WTe(this,e,r,n)},t.prototype.getDelegate=function(){var e;return(e=this._delegate)!==null&&e!==void 0?e:zyt},t.prototype.setDelegate=function(e){this._delegate=e},t.prototype.getDelegateTracer=function(e,r,n){var i;return(i=this._delegate)===null||i===void 0?void 0:i.getTracer(e,r,n)},t})();var xu;(function(t){t[t.INTERNAL=0]="INTERNAL",t[t.SERVER=1]="SERVER",t[t.CLIENT=2]="CLIENT",t[t.PRODUCER=3]="PRODUCER",t[t.CONSUMER=4]="CONSUMER"})(xu||(xu={}));var oa;(function(t){t[t.UNSET=0]="UNSET",t[t.OK=1]="OK",t[t.ERROR=2]="ERROR"})(oa||(oa={}));var xc=Ru.getInstance();var c3=Di.instance();var KTe=(function(){function t(){}return t.prototype.inject=function(e,r){},t.prototype.extract=function(e,r){return e},t.prototype.fields=function(){return[]},t})();var l3=dC("OpenTelemetry Baggage Key");function u3(t){return t.getValue(l3)||void 0}function JTe(){return u3(Ru.getInstance().active())}function ZTe(t,e){return t.setValue(l3,e)}function XTe(t){return t.deleteValue(l3)}var d3="propagation",Vyt=new KTe,QTe=(function(){function t(){this.createBaggage=MTe,this.getBaggage=u3,this.getActiveBaggage=JTe,this.setBaggage=ZTe,this.deleteBaggage=XTe}return t.getInstance=function(){return this._instance||(this._instance=new t),this._instance},t.prototype.setGlobalPropagator=function(e){return Tu(d3,e,Di.instance())},t.prototype.inject=function(e,r,n){return n===void 0&&(n=jTe),this._getGlobalPropagator().inject(e,r,n)},t.prototype.extract=function(e,r,n){return n===void 0&&(n=FTe),this._getGlobalPropagator().extract(e,r,n)},t.prototype.fields=function(){return this._getGlobalPropagator().fields()},t.prototype.disable=function(){wu(d3,Di.instance())},t.prototype._getGlobalPropagator=function(){return to(d3)||Vyt},t})();var Fb=QTe.getInstance();var f3="trace",ewe=(function(){function t(){this._proxyTracerProvider=new a3,this.wrapSpanContext=GTe,this.isSpanContextValid=mC,this.deleteSpan=VTe,this.getSpan=pC,this.getActiveSpan=zTe,this.getSpanContext=hC,this.setSpan=Ub,this.setSpanContext=HTe}return t.getInstance=function(){return this._instance||(this._instance=new t),this._instance},t.prototype.setGlobalTracerProvider=function(e){var r=Tu(f3,this._proxyTracerProvider,Di.instance());return r&&this._proxyTracerProvider.setDelegate(e),r},t.prototype.getTracerProvider=function(){return to(f3)||this._proxyTracerProvider},t.prototype.getTracer=function(e,r){return this.getTracerProvider().getTracer(e,r)},t.prototype.disable=function(){wu(f3,Di.instance()),this._proxyTracerProvider=new a3},t})();var jb=ewe.getInstance();var Gyt=function(t,e){e.recordException(t),e.setStatus({code:oa.ERROR})};var Bf=(function(){function t(e){this._tracer=e,this.startSpan=e.startSpan.bind(this._tracer),this.startActiveSpan=e.startActiveSpan.bind(this._tracer)}return t.prototype.withActiveSpan=function(e,r,n,i){var s=twe(r,n,i),o=s.opts,a=s.ctx,c=s.fn;return this._tracer.startActiveSpan(e,o,a,function(l){return rwe(l,o,c)})},t.prototype.withSpan=function(e,r,n,i){var s=twe(r,n,i),o=s.opts,a=s.ctx,c=s.fn,l=this._tracer.startSpan(e,o,a);return rwe(l,o,c)},t})();function twe(t,e,r){var n,i,s;return!e&&!r?s=t:r?(n=t,i=e,s=r):(n=t,s=e),n=n??{},i=i??xc.active(),{opts:n,ctx:i,fn:s}}function rwe(t,e,r){var n,i=(n=e.onException)!==null&&n!==void 0?n:Gyt,s=function(a){throw i(a,t),t.end(),a};try{var o=r(t);return typeof o?.then=="function"?o.then(function(a){return t.end(),a},s):(t.end(),o)}catch(a){throw s(a)}}lW();Qe();var dT=class{emit(e){}enabled(){return!1}},mRe=new dT;var fT=Symbol.for("io.opentelemetry.js.api.logs"),Jg=globalThis;function gRe(t,e,r){return n=>n===t?e:r}var uW=1;var dW=class{getLogger(e,r,n){return new dT}},aN=new dW;var cN=class{constructor(e,r,n,i){this._provider=e,this.name=r,this.version=n,this.options=i}emit(e){this._getLogger().emit(e)}enabled(e){return this._getLogger().enabled(e)}_getLogger(){if(this._delegate)return this._delegate;let e=this._provider._getDelegateLogger(this.name,this.version,this.options);return e?(this._delegate=e,this._delegate):mRe}};var pT=class{getLogger(e,r,n){var i;return(i=this._getDelegateLogger(e,r,n))!==null&&i!==void 0?i:new cN(this,e,r,n)}_getDelegate(){var e;return(e=this._delegate)!==null&&e!==void 0?e:aN}_setDelegate(e){this._delegate=e}_getDelegateLogger(e,r,n){var i;return(i=this._delegate)===null||i===void 0?void 0:i.getLogger(e,r,n)}};var lN=class t{constructor(){this._proxyLoggerProvider=new pT}static getInstance(){return this._instance||(this._instance=new t),this._instance}setGlobalLoggerProvider(e){return Jg[fT]?this.getLoggerProvider():(Jg[fT]=gRe(uW,e,aN),this._proxyLoggerProvider._setDelegate(e),e)}getLoggerProvider(){var e,r;return(r=(e=Jg[fT])===null||e===void 0?void 0:e.call(Jg,uW))!==null&&r!==void 0?r:this._proxyLoggerProvider}getLogger(e,r,n){return this.getLoggerProvider().getLogger(e,r,n)}disable(){delete Jg[fT],this._proxyLoggerProvider=new pT}};var _Re=lN.getInstance();function yRe(t,e,r,n){for(let i=0,s=t.length;i<s;i++){let o=t[i];e&&o.setTracerProvider(e),r&&o.setMeterProvider(r),n&&o.setLoggerProvider&&o.setLoggerProvider(n),o.getConfig().enabled||o.enable()}}function SRe(t){t.forEach(e=>e.disable())}function fW(t){let e=t.tracerProvider||Or.getTracerProvider(),r=t.meterProvider||Zb.getMeterProvider(),n=t.loggerProvider||_Re.getLoggerProvider(),i=t.instrumentations?.flat()??[];return yRe(i,e,r,n),()=>{SRe(i)}}dr();var CN=Ln(IW(),1);dr();var XRe=t=>{throw TypeError(t)},NW=(t,e,r)=>e.has(t)||XRe("Cannot "+r),ON=(t,e,r)=>(NW(t,e,"read from private field"),r?r.call(t):e.get(t)),PW=(t,e,r)=>e.has(t)?XRe("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),KRe=(t,e,r,n)=>(NW(t,e,"write to private field"),n?n.call(t,r):e.set(t,r),r),gEt=(t,e,r)=>(NW(t,e,"access private method"),r),JRe="__netlify__getTracer",yEt="__netlify__shutdownTracers",SEt="__nfOTLPTrace",mT,gT,CW,QRe,EEt=class{constructor(){PW(this,CW),PW(this,mT),PW(this,gT),KRe(this,mT,new pa(gEt(this,CW,QRe),this)),KRe(this,gT,c3.createComponentLogger({namespace:"netlify-span-exporter"}))}export(t,e){if(ON(this,gT).debug(`export ${t.length.toString()} spans`),ON(this,mT).isCalled){e({code:Xt.FAILED,error:new Error("Exporter has been shutdown")});return}console.log(SEt,JSON.stringify(vEt(t))),e({code:Xt.SUCCESS})}shutdown(){return ON(this,mT).call()}};mT=new WeakMap;gT=new WeakMap;CW=new WeakSet;QRe=function(){return ON(this,gT).debug("Shutting down"),Promise.resolve()};function vEt(t){return{resourceSpans:t.map(e=>{let r=e.spanContext();return{resource:{attributes:PN(e.resource.attributes),droppedAttributesCount:e.droppedAttributesCount},scopeSpans:[{scope:{name:e.instrumentationScope.name,version:e.instrumentationScope.version},spans:[{traceId:r.traceId,spanId:r.spanId,parentSpanId:e.parentSpanContext?.spanId,name:e.name,kind:e.kind||xu.SERVER,startTimeUnixNano:OW(e.startTime),endTimeUnixNano:OW(e.endTime),attributes:PN(e.attributes),droppedAttributesCount:e.droppedAttributesCount,events:e.events.map(n=>({name:n.name,timeUnixNano:OW(n.time),attributes:PN(n.attributes??{}),droppedAttributesCount:n.droppedAttributesCount??0})),droppedEventsCount:e.droppedEventsCount,status:{code:e.status.code,message:e.status.message},links:e.links.map(n=>({spanId:n.context.spanId,traceId:n.context.traceId,attributes:PN(n.attributes??{}),droppedAttributesCount:n.droppedAttributesCount??0})),droppedLinksCount:e.droppedLinksCount}]}]}})}}function PN(t){return Object.keys(t).map(e=>eAe(e,t[e]))}function eAe(t,e){return{key:t,value:tAe(e)}}function tAe(t){let e=typeof t;return e==="string"?{stringValue:t}:e==="number"?Number.isInteger(t)?{intValue:t}:{doubleValue:t}:e==="boolean"?{boolValue:t}:t instanceof Uint8Array?{bytesValue:t}:Array.isArray(t)?{arrayValue:{values:t.map(tAe)}}:e==="object"&&t!=null?{kvlistValue:{values:Object.entries(t).map(([r,n])=>eAe(r,n))}}:{}}function OW(t){let e=BigInt(1e9);return(BigInt(Math.trunc(t[0]))*e+BigInt(Math.trunc(t[1]))).toString()}var ZRe={name:"@netlify/otel",version:"6.0.3",type:"module",engines:{node:"^18.14.0 || >=20.6.1"},main:"./dist/main.cjs",module:"./dist/main.js",types:"./dist/main.d.ts",exports:{".":{require:{types:"./dist/main.d.cts",default:"./dist/main.cjs"},import:{types:"./dist/main.d.ts",default:"./dist/main.js"},default:{types:"./dist/main.d.ts",default:"./dist/main.js"}},"./package.json":"./package.json","./bootstrap":{require:{types:"./dist/bootstrap/main.d.cts",default:"./dist/bootstrap/main.cjs"},import:{types:"./dist/bootstrap/main.d.ts",default:"./dist/bootstrap/main.js"},default:{types:"./dist/bootstrap/main.d.ts",default:"./dist/bootstrap/main.js"}},"./exporter-netlify":{require:{types:"./dist/exporters/netlify.d.cts",default:"./dist/exporters/netlify.cjs"},import:{types:"./dist/exporters/netlify.d.ts",default:"./dist/exporters/netlify.js"},default:{types:"./dist/exporters/netlify.d.ts",default:"./dist/exporters/netlify.js"}},"./instrumentation-fetch":{require:{types:"./dist/instrumentations/fetch.d.cts",default:"./dist/instrumentations/fetch.cjs"},import:{types:"./dist/instrumentations/fetch.d.ts",default:"./dist/instrumentations/fetch.js"},default:{types:"./dist/instrumentations/fetch.d.ts",default:"./dist/instrumentations/fetch.js"}},"./instrumentation-http":{require:{types:"./dist/instrumentations/http.d.cts",default:"./dist/instrumentations/http.cjs"},import:{types:"./dist/instrumentations/http.d.ts",default:"./dist/instrumentations/http.js"},default:{types:"./dist/instrumentations/http.d.ts",default:"./dist/instrumentations/http.js"}},"./opentelemetry":{require:{types:"./dist/opentelemetry.d.cts",default:"./dist/opentelemetry.cjs"},import:{types:"./dist/opentelemetry.d.ts",default:"./dist/opentelemetry.js"},default:{types:"./dist/opentelemetry.d.ts",default:"./dist/opentelemetry.js"}}},files:["dist/**/*"],scripts:{build:"tsup-node",dev:"tsup-node --watch",prepack:"npm run build",test:"run-s build test:ci","test:dev":"run-s build test:dev:*","test:ci":"run-s build test:ci:*","test:dev:vitest":"vitest","test:dev:vitest:watch":"vitest watch","test:ci:vitest":"vitest run",publint:"npx -y publint --strict"},keywords:["netlify","cdn"],license:"MIT",repository:{type:"git",url:"https://github.com/netlify/primitives.git",directory:"packages/otel"},bugs:{url:"https://github.com/netlify/primitives/issues"},author:"Netlify Inc.",devDependencies:{"@netlify/dev-utils":"^4.4.6",msw:"^2.10.5","npm-run-all2":"^7.0.2",tsup:"^8.0.0",vitest:"^3.0.0"},dependencies:{"@opentelemetry/api":"1.9.0","@opentelemetry/core":"2.7.1","@opentelemetry/instrumentation":"^0.217.0","@opentelemetry/resources":"2.7.1","@opentelemetry/sdk-trace-node":"2.7.1"}},rAe=t=>{if(Object.prototype.hasOwnProperty.call(globalThis,JRe))return;let e=_Et.version.slice(1),r=oN({"service.name":t.serviceName,"service.version":t.serviceVersion,"process.runtime.name":"nodejs","process.runtime.version":e,"deployment.environment":t.deploymentEnvironment,"http.url":t.siteUrl,"netlify.site.id":t.siteId,"netlify.site.name":t.siteName}),n=t.spanProcessors??[bEt()],i=new CN.NodeTracerProvider({resource:r,spanProcessors:n});i.register({propagator:new Nc});let s=t.instrumentations??[];fW({instrumentations:s,tracerProvider:i}),Object.defineProperty(globalThis,JRe,{enumerable:!1,configurable:!0,writable:!1,value:function(a,c){return a?new Bf(jb.getTracer(a,c)):new Bf(jb.getTracer(ZRe.name,ZRe.version))}}),Object.defineProperty(globalThis,yEt,{enumerable:!1,configurable:!0,writable:!1,value:async()=>await i.shutdown()})},bEt=()=>new CN.SimpleSpanProcessor(new EEt);dr();var _T=Ln(IW(),1);import*as NN from"diagnostics_channel";var nAe=class{constructor(t={}){this.instrumentationName="@netlify/otel/instrumentation-fetch",this.instrumentationVersion="1.0.0",this._recordFromReq=new WeakMap,this.config=t,this._channelSubs=[]}getConfig(){return this.config}setConfig(){}setMeterProvider(){}setTracerProvider(t){this.provider=t}getTracerProvider(){return this.provider}annotateFromRequest(t,e){let r=this.config.getRequestAttributes?.(e)??{},n=new URL(e.path,e.origin);t.setAttributes({...r,"http.request.method":e.method,"url.full":n.href,"url.host":n.host,"url.scheme":n.protocol.slice(0,-1),"server.address":n.hostname,"server.port":n.port,...this.prepareHeaders("request",e.headers)})}annotateFromResponse(t,e){let r=this.config.getResponseAttributes?.(e)??{};t.setAttributes({...r,"http.response.status_code":e.statusCode,...this.prepareHeaders("response",e.headers)}),t.setStatus({code:e.statusCode>=400?oa.ERROR:oa.UNSET})}prepareHeaders(t,e){if(!Array.isArray(e))return{};if(this.config.skipHeaders===!0)return{};let r=["*","/.*/"],n=this.config.skipHeaders??[],i=this.config.redactHeaders??[],s=n.some(a=>r.includes(a.toString())),o={};if(s)return o;for(let a=0;a+1<e.length;a=a+2){let c=e[a],l=e[a+1];if(typeof c!="string"&&!Buffer.isBuffer(c)||typeof l!="string"&&!Buffer.isBuffer(l))continue;let u=c.toString().toLowerCase();if(n.some(f=>typeof f=="string"?f==u:f.test(u)))continue;let d=`http.${t}.header.${u}`;i===!0||i.some(f=>typeof f=="string"?f==u:f.test(u))?o[d]="REDACTED":o[d]=l.toString()}return o}getRequestMethod(t){return["HEAD","GET","POST","PUT","PATCH","DELETE"].includes(t.toUpperCase())?t.toUpperCase():"_OTHER"}getTracer(){if(!this.provider)return;let t=this.provider.getTracer(this.instrumentationName,this.instrumentationVersion);return t instanceof Bf?t:new Bf(t)}enable(){this._channelSubs.length>0||(this.subscribe("undici:request:create",this.onRequestCreate.bind(this)),this.subscribe("undici:request:headers",this.onRequestHeaders.bind(this)),this.subscribe("undici:request:trailers",this.onRequestEnd.bind(this)),this.subscribe("undici:request:error",this.onRequestError.bind(this)))}subscribe(t,e){NN.subscribe(t,e);let r=()=>NN.unsubscribe(t,e);this._channelSubs.push({name:t,unsubscribe:r})}disable(){this._channelSubs.forEach(t=>{t.unsubscribe()}),this._channelSubs.length=0}onRequestCreate({request:t}){try{let e=this.getTracer(),r=new URL(t.path,t.origin);if(!e||t.method==="CONNECT"||this.config.skipURLs?.some(i=>typeof i=="string"?r.href.startsWith(i):i.test(r.href)))return;let n=e.startSpan(this.getRequestMethod(t.method),{kind:xu.CLIENT},xc.active());this.annotateFromRequest(n,t),this._recordFromReq.set(t,n)}catch{}}onRequestHeaders({request:t,response:e}){try{let r=this._recordFromReq.get(t);if(!r)return;this.annotateFromResponse(r,e)}catch{}}onRequestError({request:t,error:e}){try{let r=this._recordFromReq.get(t);if(!r)return;r.recordException(e),r.setStatus({code:oa.ERROR,message:e.message}),r.end(),this._recordFromReq.delete(t)}catch{}}onRequestEnd({request:t}){try{let e=this._recordFromReq.get(t);if(!e)return;e.end(),this._recordFromReq.delete(t)}catch{}}};var mke=Ln(pke(),1);var fL=Re("tracing"),hke=8e3,nCt=5e3,Ow=async(t=nCt)=>{try{await Promise.race([OTe(),rCt(t)])}catch(e){fL.warn("Failed to flush tracers on shutdown",e)}},gke=async(t,e,r)=>{if(!ft()){let n=[new _T.SimpleSpanProcessor(new g9),new _T.SimpleSpanProcessor(new mke.OTLPTraceExporter({url:r.exporterUrl}))];await rAe({serviceName:"@netlify/agent-runner-cli",serviceVersion:t,deploymentEnvironment:"production",siteUrl:"",siteId:process.env.SITE_ID??"",siteName:e,spanProcessors:n,instrumentations:[new nAe({skipHeaders:!0})]})}return r.traceparent?(Fb.setGlobalPropagator(new Nc),Fb.extract(xc.active(),{traceparent:r.traceparent,isRemote:!0})):xc.active()};function zt(t,e,r){return fL.log(`\u23F3 TRACE: ${e} starting...`),qf(t,e,r)}var g9=class{export(e,r){for(let n of e)this.logSpan(n);r({code:1})}async shutdown(){}forceFlush(){return Promise.resolve()}logSpan(e){let r=(e.endTime[0]-e.startTime[0])*1e3+(e.endTime[1]-e.startTime[1])/1e6,n=e.attributes,i=[];for(let[a,c]of Object.entries(n))a.includes("duration")&&typeof c=="number"?i.push(`${a}=${c.toFixed(2)}ms`):i.push(`${a}=${c}`);let s=e.status?.code===2?"\u274C":"\u2705",o=i.length>0?` [${i.join(", ")}]`:"";fL.log(`${s} TRACE: ${e.name} completed in ${r.toFixed(2)}ms${o}`),e.status?.code===2&&e.status.message&&fL.log(` \u274C Error: ${e.status.message}`)}};function _9(){return ut().captureLlmContentEnabled}function _ke(t){return t.includes("claude")?"anthropic":t.includes("codex")?"openai":t.includes("gemini")?"google":t.includes("opencode")?"opencode":t}function pL(t,e,r){let n={role:t,parts:[{type:"text",content:bs(e)}]};return r&&(n.finish_reason=r),JSON.stringify([n])}function yke(t,e,r,n){if(!t.length)return;let i=ft();if(!i)return;let s=_9(),o=Math.max(1,(n-r)/t.length);t.forEach((a,c)=>{let l=Math.min(n,r+c*o),u=Math.min(n,l+o),d=a.title||a.type||`step-${a.id??c}`,f=a.type==="tool_use"||a.type==="tool_result",p=a.message?a.message.length>hke?`${a.message.slice(0,hke)}\u2026`:a.message:void 0;i.startSpan(d,{startTime:l,attributes:{"gen_ai.capability.name":e,"gen_ai.step.name":d,"gen_ai.operation.name":f?"execute_tool":"chat",...f?{"gen_ai.tool.name":d}:{},"spark.step.id":a.id??-1,...a.type?{"spark.step.type":a.type}:{},...a.category?{"spark.step.category":a.category}:{},...a.groupId?{"spark.step.group_id":a.groupId}:{},...a.parentGroupId?{"spark.step.parent_group_id":a.parentGroupId}:{},...s&&p?f?{"gen_ai.tool.call.result":bs(p)}:{"gen_ai.output.messages":pL("assistant",p)}:{}}}).end(u)})}import{readdir as iCt,rm as sCt}from"fs/promises";import{join as oCt}from"path";async function Ske(t,e=[]){let n=(await iCt(t)).filter(i=>!e.includes(i));await Promise.all(n.map(i=>sCt(oCt(t,i),{recursive:!0,force:!0})))}var aCt=700,Eke=t=>t.mode==="create"&&(t.accountType===Tl||t.enforcedAICreditsRemaining!=null&&t.enforcedAICreditsRemaining<=aCt);var uCt=mL.dirname(cCt(import.meta.url)),vke=lCt(import.meta.url),dCt=mL.resolve(uCt,"scripts/scaffold.js"),fCt="scripts/scaffold.js",pCt=/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\S+/g,y9=t=>{if(t.length>=2){let e=t[0],r=t[t.length-1];if(e==='"'&&r==='"'||e==="'"&&r==="'")return t.slice(1,-1)}return t},hCt=t=>/^[A-Za-z_][A-Za-z0-9_]*=.*/.test(t),mCt=t=>{let e=y9(t);return e==="node"||e.endsWith("/node")},Qc=t=>{if(typeof t!="string")return!1;let e=t.match(pCt)||[];if(e.length<2)return!1;let r=0;for(;r<e.length&&hCt(y9(e[r]));)r+=1;if(r>=e.length||!mCt(e[r]))return!1;let n=e[r+1];return n?y9(n).includes(fCt):!1},W_=Re("create_stage"),bke="Do not run local validation or dev-server commands to check your work \u2014 specifically `tsc`, `npx tsc`, `vite build`, `vite dev`, or any equivalent build/start/test command. The build pipeline installs and validates the project automatically after your edits. Verify your changes by reading the files you edited.",gCt=`${bke}
|
|
581
|
+
if (condition) { yield value; }`)};import{Buffer as Rmt}from"buffer";import{StringDecoder as Amt}from"string_decoder";var YO=(t,e,r)=>{if(r)return;if(t)return{transform:xmt.bind(void 0,new TextEncoder)};let n=new Amt(e);return{transform:Imt.bind(void 0,n),final:Pmt.bind(void 0,n)}},xmt=function*(t,e){Rmt.isBuffer(e)?yield Sc(e):typeof e=="string"?yield t.encode(e):yield e},Imt=function*(t,e){yield Pr(e)?t.write(e):e},Pmt=function*(t){let e=t.end();e!==""&&(yield e)};import{callbackify as Vve}from"util";var _6=Vve(async(t,e,r,n)=>{e.currentIterable=t(...r);try{for await(let i of e.currentIterable)n.push(i)}finally{delete e.currentIterable}}),KO=async function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=Cmt}=e[r];for await(let i of n(t))yield*KO(i,e,r+1)},Hve=async function*(t){for(let[e,{final:r}]of Object.entries(t))yield*Omt(r,Number(e),t)},Omt=async function*(t,e,r){if(t!==void 0)for await(let n of t())yield*KO(n,r,e+1)},Gve=Vve(async({currentIterable:t},e)=>{if(t!==void 0){await(e?t.throw(e):t.return());return}if(e)throw e}),Cmt=function*(t){yield t};var y6=(t,e,r,n)=>{try{for(let i of t(...e))r.push(i);n()}catch(i){n(i)}},Wve=(t,e)=>[...e.flatMap(r=>[...Uf(r,t,0)]),...xb(t)],Uf=function*(t,e,r){if(r===e.length){yield t;return}let{transform:n=kmt}=e[r];for(let i of n(t))yield*Uf(i,e,r+1)},xb=function*(t){for(let[e,{final:r}]of Object.entries(t))yield*Nmt(r,Number(e),t)},Nmt=function*(t,e,r){if(t!==void 0)for(let n of t())yield*Uf(n,r,e+1)},kmt=function*(t){yield t};var S6=({value:t,value:{transform:e,final:r,writableObjectMode:n,readableObjectMode:i},optionName:s},{encoding:o})=>{let a={},c=Kve(t,o,s),l=Mf(e),u=Mf(r),d=l?_6.bind(void 0,KO,a):y6.bind(void 0,Uf),f=l||u?_6.bind(void 0,Hve,a):y6.bind(void 0,xb),p=l||u?Gve.bind(void 0,a):void 0;return{stream:new $mt({writableObjectMode:n,writableHighWaterMark:Yve(n),readableObjectMode:i,readableHighWaterMark:Yve(i),transform(m,_,y){d([m,c,0],this,y)},flush(m){f([c],this,m)},destroy:p})}},JO=(t,e,r,n)=>{let i=e.filter(({type:o})=>o==="generator"),s=n?i.reverse():i;for(let{value:o,optionName:a}of s){let c=Kve(o,r,a);t=Wve(c,t)}return t},Kve=({transform:t,final:e,binary:r,writableObjectMode:n,readableObjectMode:i,preserveNewlines:s},o,a)=>{let c={};return[{transform:qve(n,a)},YO(r,o,n),WO(r,s,n,c),{transform:t,final:e},{transform:Bve(i,a)},jve({binary:r,preserveNewlines:s,readableObjectMode:i,state:c})].filter(Boolean)};var Jve=(t,e)=>{for(let r of Lmt(t))Dmt(t,r,e)},Lmt=t=>new Set(Object.entries(t).filter(([,{direction:e}])=>e==="input").map(([e])=>Number(e))),Dmt=(t,e,r)=>{let{stdioItems:n}=t[e],i=n.filter(({contents:a})=>a!==void 0);if(i.length===0)return;if(e!==0){let[{type:a,optionName:c}]=i;throw new TypeError(`Only the \`stdin\` option, not \`${c}\`, can be ${vu[a]} with synchronous methods.`)}let o=i.map(({contents:a})=>a).map(a=>Mmt(a,n));r.input=_b(o)},Mmt=(t,e)=>{let r=JO(t,e,"utf8",!0);return Umt(r),_b(r)},Umt=t=>{let e=t.find(r=>typeof r!="string"&&!Pr(r));if(e!==void 0)throw new TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${e}.`)};import{writeFileSync as Bmt,appendFileSync as zmt}from"fs";var ZO=({stdioItems:t,encoding:e,verboseInfo:r,fdNumber:n})=>n!=="all"&&Ag(r,n)&&!$i.has(e)&&Fmt(n)&&(t.some(({type:i,value:s})=>i==="native"&&jmt.has(s))||t.every(({type:i})=>vs.has(i))),Fmt=t=>t===1||t===2,jmt=new Set(["pipe","overlapped"]),Zve=async(t,e,r,n)=>{for await(let i of t)qmt(e)||Qve(i,r,n)},Xve=(t,e,r)=>{for(let n of t)Qve(n,e,r)},qmt=t=>t._readableState.pipes.length>0,Qve=(t,e,r)=>{let n=dO(t);ea({type:"output",verboseMessage:n,fdNumber:e,verboseInfo:r})};var ebe=({fileDescriptors:t,syncResult:{output:e},options:r,isMaxBuffer:n,verboseInfo:i})=>{if(e===null)return{output:Array.from({length:3})};let s={},o=new Set([]);return{output:e.map((c,l)=>Vmt({result:c,fileDescriptors:t,fdNumber:l,state:s,outputFiles:o,isMaxBuffer:n,verboseInfo:i},r)),...s}},Vmt=({result:t,fileDescriptors:e,fdNumber:r,state:n,outputFiles:i,isMaxBuffer:s,verboseInfo:o},{buffer:a,encoding:c,lines:l,stripFinalNewline:u,maxBuffer:d})=>{if(t===null)return;let f=tve(t,s,d),p=Sc(f),{stdioItems:h,objectMode:m}=e[r],_=Hmt([p],h,c,n),{serializedResult:y,finalResult:v=y}=Gmt({chunks:_,objectMode:m,encoding:c,lines:l,stripFinalNewline:u,fdNumber:r});Wmt({serializedResult:y,fdNumber:r,state:n,verboseInfo:o,encoding:c,stdioItems:h,objectMode:m});let S=a[r]?v:void 0;try{return n.error===void 0&&Ymt(y,h,i),S}catch(g){return n.error=g,S}},Hmt=(t,e,r,n)=>{try{return JO(t,e,r,!1)}catch(i){return n.error=i,t}},Gmt=({chunks:t,objectMode:e,encoding:r,lines:n,stripFinalNewline:i,fdNumber:s})=>{if(e)return{serializedResult:t};if(r==="buffer")return{serializedResult:_b(t)};let o=mye(t,r);return n[s]?{serializedResult:o,finalResult:g6(o,!i[s],e)}:{serializedResult:o}},Wmt=({serializedResult:t,fdNumber:e,state:r,verboseInfo:n,encoding:i,stdioItems:s,objectMode:o})=>{if(!ZO({stdioItems:s,encoding:i,verboseInfo:n,fdNumber:e}))return;let a=g6(t,!1,o);try{Xve(a,e,n)}catch(c){r.error??=c}},Ymt=(t,e,r)=>{for(let{path:n,append:i}of e.filter(({type:s})=>HO.has(s))){let s=typeof n=="string"?n:n.toString();i||r.has(s)?zmt(n,t):(r.add(s),Bmt(n,t))}};var tbe=([,t,e],r)=>{if(r.all)return t===void 0?e:e===void 0?t:Array.isArray(t)?Array.isArray(e)?[...t,...e]:[...t,bc(e,r,"all")]:Array.isArray(e)?[bc(t,r,"all"),...e]:Pr(t)&&Pr(e)?RG([t,e]):`${t}${e}`};import{once as E6}from"events";var rbe=async(t,e)=>{let[r,n]=await Kmt(t);return e.isForcefullyTerminated??=!1,[r,n]},Kmt=async t=>{let[e,r]=await Promise.allSettled([E6(t,"spawn"),E6(t,"exit")]);return e.status==="rejected"?[]:r.status==="rejected"?nbe(t):r.value},nbe=async t=>{try{return await E6(t,"exit")}catch{return nbe(t)}},ibe=async t=>{let[e,r]=await t;if(!Jmt(e,r)&&v6(e,r))throw new Xs;return[e,r]},Jmt=(t,e)=>t===void 0&&e===void 0,v6=(t,e)=>t!==0||e!==null;var sbe=({error:t,status:e,signal:r,output:n},{maxBuffer:i})=>{let s=Zmt(t,e,r),o=s?.code==="ETIMEDOUT",a=eve(s,n,i);return{resultError:s,exitCode:e,signal:r,timedOut:o,isMaxBuffer:a}},Zmt=(t,e,r)=>t!==void 0?t:v6(e,r)?new Xs:void 0;var obe=(t,e,r)=>{let{file:n,commandArguments:i,command:s,escapedCommand:o,startTime:a,verboseInfo:c,options:l,fileDescriptors:u}=Qmt(t,e,r),d=rgt({file:n,commandArguments:i,options:l,command:s,escapedCommand:o,verboseInfo:c,fileDescriptors:u,startTime:a});return Dg(d,c,l)},Qmt=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:s,verboseInfo:o}=pO(t,e,r),a=egt(r),{file:c,commandArguments:l,options:u}=kO(t,e,a);tgt(u);let d=Dve(u,o);return{file:c,commandArguments:l,command:n,escapedCommand:i,startTime:s,verboseInfo:o,options:u,fileDescriptors:d}},egt=t=>t.node&&!t.ipc?{...t,ipc:!1}:t,tgt=({ipc:t,ipcInput:e,detached:r,cancelSignal:n})=>{e&&XO("ipcInput"),t&&XO("ipc: true"),r&&XO("detached: true"),n&&XO("cancelSignal")},XO=t=>{throw new TypeError(`The "${t}" option cannot be used with synchronous methods.`)},rgt=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,verboseInfo:s,fileDescriptors:o,startTime:a})=>{let c=ngt({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:o,startTime:a});if(c.failed)return c;let{resultError:l,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p}=sbe(c,r),{output:h,error:m=l}=ebe({fileDescriptors:o,syncResult:c,options:r,isMaxBuffer:p,verboseInfo:s}),_=h.map((v,S)=>bc(v,r,S)),y=bc(tbe(h,r),r,"all");return sgt({error:m,exitCode:u,signal:d,timedOut:f,isMaxBuffer:p,stdio:_,all:y,options:r,command:n,escapedCommand:i,startTime:a})},ngt=({file:t,commandArguments:e,options:r,command:n,escapedCommand:i,fileDescriptors:s,startTime:o})=>{try{Jve(s,r);let a=igt(r);return Xmt(...$O(t,e,a))}catch(a){return Lg({error:a,command:n,escapedCommand:i,fileDescriptors:s,options:r,startTime:o,isSync:!0})}},igt=({encoding:t,maxBuffer:e,...r})=>({...r,encoding:"buffer",maxBuffer:qO(e)}),sgt=({error:t,exitCode:e,signal:r,timedOut:n,isMaxBuffer:i,stdio:s,all:o,options:a,command:c,escapedCommand:l,startTime:u})=>t===void 0?BO({command:c,escapedCommand:l,stdio:s,all:o,ipcOutput:[],options:a,startTime:u}):Ab({error:t,command:c,escapedCommand:l,timedOut:n,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:i,isForcefullyTerminated:!1,exitCode:e,signal:r,stdio:s,all:o,ipcOutput:[],options:a,startTime:u,isSync:!0});import{setMaxListeners as G_t}from"events";import{spawn as W_t}from"child_process";import dbe from"process";import{once as b6,on as ogt}from"events";var abe=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0,filter:s}={})=>(Pg({methodName:"getOneMessage",isSubprocess:r,ipc:n,isConnected:xO(t)}),agt({anyProcess:t,channel:e,isSubprocess:r,filter:s,reference:i})),agt=async({anyProcess:t,channel:e,isSubprocess:r,filter:n,reference:i})=>{TO(e,i);let s=Eu(t,e,r),o=new AbortController;try{return await Promise.race([cgt(s,n,o),lgt(s,r,o),ugt(s,r,o)])}catch(a){throw Og(t),a}finally{o.abort(),wO(e,i)}},cgt=async(t,e,{signal:r})=>{if(e===void 0){let[n]=await b6(t,"message",{signal:r});return n}for await(let[n]of ogt(t,"message",{signal:r}))if(e(n))return n},lgt=async(t,e,{signal:r})=>{await b6(t,"disconnect",{signal:r}),WSe(e)},ugt=async(t,e,{signal:r})=>{let[n]=await b6(t,"strict:error",{signal:r});throw EO(n,e)};import{once as lbe,on as dgt}from"events";var ube=({anyProcess:t,channel:e,isSubprocess:r,ipc:n},{reference:i=!0}={})=>T6({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:!r,reference:i}),T6=({anyProcess:t,channel:e,isSubprocess:r,ipc:n,shouldAwait:i,reference:s})=>{Pg({methodName:"getEachMessage",isSubprocess:r,ipc:n,isConnected:xO(t)}),TO(e,s);let o=Eu(t,e,r),a=new AbortController,c={};return fgt(t,o,a),pgt({ipcEmitter:o,isSubprocess:r,controller:a,state:c}),hgt({anyProcess:t,channel:e,ipcEmitter:o,isSubprocess:r,shouldAwait:i,controller:a,state:c,reference:s})},fgt=async(t,e,r)=>{try{await lbe(e,"disconnect",{signal:r.signal}),r.abort()}catch{}},pgt=async({ipcEmitter:t,isSubprocess:e,controller:r,state:n})=>{try{let[i]=await lbe(t,"strict:error",{signal:r.signal});n.error=EO(i,e),r.abort()}catch{}},hgt=async function*({anyProcess:t,channel:e,ipcEmitter:r,isSubprocess:n,shouldAwait:i,controller:s,state:o,reference:a}){try{for await(let[c]of dgt(r,"message",{signal:s.signal}))cbe(o),yield c}catch{cbe(o)}finally{s.abort(),wO(e,a),n||Og(t),i&&await t}},cbe=({error:t})=>{if(t)throw t};var fbe=(t,{ipc:e})=>{Object.assign(t,hbe(t,!1,e))},pbe=()=>{let t=dbe,e=!0,r=dbe.channel!==void 0;return{...hbe(t,e,r),getCancelSignal:EEe.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})}},hbe=(t,e,r)=>({sendMessage:CO.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getOneMessage:abe.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r}),getEachMessage:ube.bind(void 0,{anyProcess:t,channel:t.channel,isSubprocess:e,ipc:r})});import{ChildProcess as mgt}from"child_process";import{PassThrough as ggt,Readable as _gt,Writable as ygt,Duplex as Sgt}from"stream";var mbe=({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:s,verboseInfo:o})=>{p6(n);let a=new mgt;Egt(a,n),Object.assign(a,{readable:vgt,writable:bgt,duplex:Tgt});let c=Lg({error:t,command:e,escapedCommand:r,fileDescriptors:n,options:i,startTime:s,isSync:!1}),l=wgt(c,o,i);return{subprocess:a,promise:l}},Egt=(t,e)=>{let r=Ib(),n=Ib(),i=Ib(),s=Array.from({length:e.length-3},Ib),o=Ib(),a=[r,n,i,...s];Object.assign(t,{stdin:r,stdout:n,stderr:i,all:o,stdio:a})},Ib=()=>{let t=new ggt;return t.end(),t},vgt=()=>new _gt({read(){}}),bgt=()=>new ygt({write(){}}),Tgt=()=>new Sgt({read(){},write(){}}),wgt=async(t,e,r)=>Dg(t,e,r);import{createReadStream as gbe,createWriteStream as _be}from"fs";import{Buffer as Rgt}from"buffer";import{Readable as Pb,Writable as Agt,Duplex as xgt}from"stream";var Sbe=(t,e)=>GO(Igt,t,e,!1),Ob=({type:t,optionName:e})=>{throw new TypeError(`The \`${e}\` option cannot be ${vu[t]}.`)},ybe={fileNumber:Ob,generator:S6,asyncGenerator:S6,nodeStream:({value:t})=>({stream:t}),webTransform({value:{transform:t,writableObjectMode:e,readableObjectMode:r}}){let n=e||r;return{stream:xgt.fromWeb(t,{objectMode:n})}},duplex:({value:{transform:t}})=>({stream:t}),native(){}},Igt={input:{...ybe,fileUrl:({value:t})=>({stream:gbe(t)}),filePath:({value:{file:t}})=>({stream:gbe(t)}),webStream:({value:t})=>({stream:Pb.fromWeb(t)}),iterable:({value:t})=>({stream:Pb.from(t)}),asyncIterable:({value:t})=>({stream:Pb.from(t)}),string:({value:t})=>({stream:Pb.from(t)}),uint8Array:({value:t})=>({stream:Pb.from(Rgt.from(t))})},output:{...ybe,fileUrl:({value:t})=>({stream:_be(t)}),filePath:({value:{file:t,append:e}})=>({stream:_be(t,e?{flags:"a"}:{})}),webStream:({value:t})=>({stream:Agt.fromWeb(t)}),iterable:Ob,asyncIterable:Ob,string:Ob,uint8Array:Ob}};import{on as Pgt,once as Ebe}from"events";import{PassThrough as Ogt,getDefaultHighWaterMark as Cgt}from"stream";import{finished as Tbe}from"stream/promises";function Ff(t){if(!Array.isArray(t))throw new TypeError(`Expected an array, got \`${typeof t}\`.`);for(let i of t)R6(i);let e=t.some(({readableObjectMode:i})=>i),r=Ngt(t,e),n=new w6({objectMode:e,writableHighWaterMark:r,readableHighWaterMark:r});for(let i of t)n.add(i);return n}var Ngt=(t,e)=>{if(t.length===0)return Cgt(e);let r=t.filter(({readableObjectMode:n})=>n===e).map(({readableHighWaterMark:n})=>n);return Math.max(...r)},w6=class extends Ogt{#e=new Set([]);#r=new Set([]);#t=new Set([]);#n;#s=Symbol("unpipe");#i=new WeakMap;add(e){if(R6(e),this.#e.has(e))return;this.#e.add(e),this.#n??=kgt(this,this.#e,this.#s);let r=Dgt({passThroughStream:this,stream:e,streams:this.#e,ended:this.#r,aborted:this.#t,onFinished:this.#n,unpipeEvent:this.#s});this.#i.set(e,r),e.pipe(this,{end:!1})}async remove(e){if(R6(e),!this.#e.has(e))return!1;let r=this.#i.get(e);return r===void 0?!1:(this.#i.delete(e),e.unpipe(this),await r,!0)}},kgt=async(t,e,r)=>{QO(t,vbe);let n=new AbortController;try{await Promise.race([$gt(t,n),Lgt(t,e,r,n)])}finally{n.abort(),QO(t,-vbe)}},$gt=async(t,{signal:e})=>{try{await Tbe(t,{signal:e,cleanup:!0})}catch(r){throw wbe(t,r),r}},Lgt=async(t,e,r,{signal:n})=>{for await(let[i]of Pgt(t,"unpipe",{signal:n}))e.has(i)&&i.emit(r)},R6=t=>{if(typeof t?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof t}\`.`)},Dgt=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,onFinished:s,unpipeEvent:o})=>{QO(t,bbe);let a=new AbortController;try{await Promise.race([Mgt(s,e,a),Ugt({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:a}),Fgt({stream:e,streams:r,ended:n,aborted:i,unpipeEvent:o,controller:a})])}finally{a.abort(),QO(t,-bbe)}r.size>0&&r.size===n.size+i.size&&(n.size===0&&i.size>0?A6(t):jgt(t))},Mgt=async(t,e,{signal:r})=>{try{await t,r.aborted||A6(e)}catch(n){r.aborted||wbe(e,n)}},Ugt=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:{signal:s}})=>{try{await Tbe(e,{signal:s,cleanup:!0,readable:!0,writable:!1}),r.has(e)&&n.add(e)}catch(o){if(s.aborted||!r.has(e))return;Rbe(o)?i.add(e):Abe(t,o)}},Fgt=async({stream:t,streams:e,ended:r,aborted:n,unpipeEvent:i,controller:{signal:s}})=>{if(await Ebe(t,i,{signal:s}),!t.readable)return Ebe(s,"abort",{signal:s});e.delete(t),r.delete(t),n.delete(t)},jgt=t=>{t.writable&&t.end()},wbe=(t,e)=>{Rbe(e)?A6(t):Abe(t,e)},Rbe=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",A6=t=>{(t.readable||t.writable)&&t.destroy()},Abe=(t,e)=>{t.destroyed||(t.once("error",qgt),t.destroy(e))},qgt=()=>{},QO=(t,e)=>{let r=t.getMaxListeners();r!==0&&r!==Number.POSITIVE_INFINITY&&t.setMaxListeners(r+e)},vbe=2,bbe=1;import{finished as xbe}from"stream/promises";var Ug=(t,e)=>{t.pipe(e),Bgt(t,e),zgt(t,e)},Bgt=async(t,e)=>{if(!(Zs(t)||Zs(e))){try{await xbe(t,{cleanup:!0,readable:!0,writable:!1})}catch{}x6(e)}},x6=t=>{t.writable&&t.end()},zgt=async(t,e)=>{if(!(Zs(t)||Zs(e))){try{await xbe(e,{cleanup:!0,readable:!1,writable:!0})}catch{}I6(t)}},I6=t=>{t.readable&&t.destroy()};var Ibe=(t,e,r)=>{let n=new Map;for(let[i,{stdioItems:s,direction:o}]of Object.entries(e)){for(let{stream:a}of s.filter(({type:c})=>vs.has(c)))Vgt(t,a,o,i);for(let{stream:a}of s.filter(({type:c})=>!vs.has(c)))Ggt({subprocess:t,stream:a,direction:o,fdNumber:i,pipeGroups:n,controller:r})}for(let[i,s]of n.entries()){let o=s.length===1?s[0]:Ff(s);Ug(o,i)}},Vgt=(t,e,r,n)=>{r==="output"?Ug(t.stdio[n],e):Ug(e,t.stdio[n]);let i=Hgt[n];i!==void 0&&(t[i]=e),t.stdio[n]=e},Hgt=["stdin","stdout","stderr"],Ggt=({subprocess:t,stream:e,direction:r,fdNumber:n,pipeGroups:i,controller:s})=>{if(e===void 0)return;Wgt(e,s);let[o,a]=r==="output"?[e,t.stdio[n]]:[t.stdio[n],e],c=i.get(o)??[];i.set(o,[...c,a])},Wgt=(t,{signal:e})=>{Zs(t)&&Lf(t,Ygt,e)},Ygt=2;import{addAbortListener as Zgt}from"events";var jf=[];jf.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&jf.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&jf.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var eC=t=>!!t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function",P6=Symbol.for("signal-exit emitter"),O6=globalThis,Kgt=Object.defineProperty.bind(Object),C6=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(O6[P6])return O6[P6];Kgt(O6,P6,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,r){this.listeners[e].push(r)}removeListener(e,r){let n=this.listeners[e],i=n.indexOf(r);i!==-1&&(i===0&&n.length===1?n.length=0:n.splice(i,1))}emit(e,r,n){if(this.emitted[e])return!1;this.emitted[e]=!0;let i=!1;for(let s of this.listeners[e])i=s(r,n)===!0||i;return e==="exit"&&(i=this.emit("afterExit",r,n)||i),i}},tC=class{},Jgt=t=>({onExit(e,r){return t.onExit(e,r)},load(){return t.load()},unload(){return t.unload()}}),N6=class extends tC{onExit(){return()=>{}}load(){}unload(){}},k6=class extends tC{#e=$6.platform==="win32"?"SIGINT":"SIGHUP";#r=new C6;#t;#n;#s;#i={};#o=!1;constructor(e){super(),this.#t=e,this.#i={};for(let r of jf)this.#i[r]=()=>{let n=this.#t.listeners(r),{count:i}=this.#r,s=e;if(typeof s.__signal_exit_emitter__=="object"&&typeof s.__signal_exit_emitter__.count=="number"&&(i+=s.__signal_exit_emitter__.count),n.length===i){this.unload();let o=this.#r.emit("exit",null,r),a=r==="SIGHUP"?this.#e:r;o||e.kill(e.pid,a)}};this.#s=e.reallyExit,this.#n=e.emit}onExit(e,r){if(!eC(this.#t))return()=>{};this.#o===!1&&this.load();let n=r?.alwaysLast?"afterExit":"exit";return this.#r.on(n,e),()=>{this.#r.removeListener(n,e),this.#r.listeners.exit.length===0&&this.#r.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#o){this.#o=!0,this.#r.count+=1;for(let e of jf)try{let r=this.#i[e];r&&this.#t.on(e,r)}catch{}this.#t.emit=(e,...r)=>this.#c(e,...r),this.#t.reallyExit=e=>this.#a(e)}}unload(){this.#o&&(this.#o=!1,jf.forEach(e=>{let r=this.#i[e];if(!r)throw new Error("Listener not defined for signal: "+e);try{this.#t.removeListener(e,r)}catch{}}),this.#t.emit=this.#n,this.#t.reallyExit=this.#s,this.#r.count-=1)}#a(e){return eC(this.#t)?(this.#t.exitCode=e||0,this.#r.emit("exit",this.#t.exitCode,null),this.#s.call(this.#t,this.#t.exitCode)):0}#c(e,...r){let n=this.#n;if(e==="exit"&&eC(this.#t)){typeof r[0]=="number"&&(this.#t.exitCode=r[0]);let i=n.call(this.#t,e,...r);return this.#r.emit("exit",this.#t.exitCode,null),i}else return n.call(this.#t,e,...r)}},$6=globalThis.process,{onExit:Pbe,load:fir,unload:pir}=Jgt(eC($6)?new k6($6):new N6);var Obe=(t,{cleanup:e,detached:r},{signal:n})=>{if(!e||r)return;let i=Pbe(()=>{t.kill()});Zgt(n,()=>{i()})};var Nbe=({source:t,sourcePromise:e,boundOptions:r,createNested:n},...i)=>{let s=fO(),{destination:o,destinationStream:a,destinationError:c,from:l,unpipeSignal:u}=Xgt(r,n,i),{sourceStream:d,sourceError:f}=e_t(t,l),{options:p,fileDescriptors:h}=ra.get(t);return{sourcePromise:e,sourceStream:d,sourceOptions:p,sourceError:f,destination:o,destinationStream:a,destinationError:c,unpipeSignal:u,fileDescriptors:h,startTime:s}},Xgt=(t,e,r)=>{try{let{destination:n,pipeOptions:{from:i,to:s,unpipeSignal:o}={}}=Qgt(t,e,...r),a=bO(n,s);return{destination:n,destinationStream:a,from:i,unpipeSignal:o}}catch(n){return{destinationError:n}}},Qgt=(t,e,r,...n)=>{if(Array.isArray(r))return{destination:e(Cbe,t)(r,...n),pipeOptions:t};if(typeof r=="string"||r instanceof URL||TG(r)){if(Object.keys(t).length>0)throw new TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[i,s,o]=rO(r,...n);return{destination:e(Cbe)(i,s,o),pipeOptions:o}}if(ra.has(r)){if(Object.keys(t).length>0)throw new TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:r,pipeOptions:n[0]}}throw new TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${r}`)},Cbe=({options:t})=>({options:{...t,stdin:"pipe",piped:!0}}),e_t=(t,e)=>{try{return{sourceStream:Cg(t,e)}}catch(r){return{sourceError:r}}};var $be=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n,fileDescriptors:i,sourceOptions:s,startTime:o})=>{let a=t_t({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n});if(a!==void 0)throw L6({error:a,fileDescriptors:i,sourceOptions:s,startTime:o})},t_t=({sourceStream:t,sourceError:e,destinationStream:r,destinationError:n})=>{if(e!==void 0&&n!==void 0)return n;if(n!==void 0)return I6(t),n;if(e!==void 0)return x6(r),e},L6=({error:t,fileDescriptors:e,sourceOptions:r,startTime:n})=>Lg({error:t,command:kbe,escapedCommand:kbe,fileDescriptors:e,options:r,startTime:n,isSync:!1}),kbe="source.pipe(destination)";var Lbe=async t=>{let[{status:e,reason:r,value:n=r},{status:i,reason:s,value:o=s}]=await t;if(o.pipedFrom.includes(n)||o.pipedFrom.push(n),i==="rejected")throw o;if(e==="rejected")throw n;return o};import{finished as r_t}from"stream/promises";var Dbe=(t,e,r)=>{let n=rC.has(e)?i_t(t,e):n_t(t,e);return Lf(t,o_t,r.signal),Lf(e,a_t,r.signal),s_t(e),n},n_t=(t,e)=>{let r=Ff([t]);return Ug(r,e),rC.set(e,r),r},i_t=(t,e)=>{let r=rC.get(e);return r.add(t),r},s_t=async t=>{try{await r_t(t,{cleanup:!0,readable:!1,writable:!0})}catch{}rC.delete(t)},rC=new WeakMap,o_t=2,a_t=1;import{aborted as c_t}from"util";var Mbe=(t,e)=>t===void 0?[]:[l_t(t,e)],l_t=async(t,{sourceStream:e,mergedStream:r,fileDescriptors:n,sourceOptions:i,startTime:s})=>{await c_t(t,e),await r.remove(e);let o=new Error("Pipe canceled by `unpipeSignal` option.");throw L6({error:o,fileDescriptors:n,sourceOptions:i,startTime:s})};var nC=(t,...e)=>{if(yr(e[0]))return nC.bind(void 0,{...t,boundOptions:{...t.boundOptions,...e[0]}});let{destination:r,...n}=Nbe(t,...e),i=u_t({...n,destination:r});return i.pipe=nC.bind(void 0,{...t,source:r,sourcePromise:i,boundOptions:{}}),i},u_t=async({sourcePromise:t,sourceStream:e,sourceOptions:r,sourceError:n,destination:i,destinationStream:s,destinationError:o,unpipeSignal:a,fileDescriptors:c,startTime:l})=>{let u=d_t(t,i);$be({sourceStream:e,sourceError:n,destinationStream:s,destinationError:o,fileDescriptors:c,sourceOptions:r,startTime:l});let d=new AbortController;try{let f=Dbe(e,s,d);return await Promise.race([Lbe(u),...Mbe(a,{sourceStream:e,mergedStream:f,sourceOptions:r,fileDescriptors:c,startTime:l})])}finally{d.abort()}},d_t=(t,e)=>Promise.allSettled([t,e]);import{setImmediate as y_t}from"timers/promises";import{on as f_t}from"events";import{getDefaultHighWaterMark as p_t}from"stream";var iC=({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:n,encoding:i,preserveNewlines:s})=>{let o=new AbortController;return h_t(e,o),Fbe({stream:t,controller:o,binary:r,shouldEncode:!t.readableObjectMode&&n,encoding:i,shouldSplit:!t.readableObjectMode,preserveNewlines:s})},h_t=async(t,e)=>{try{await t}catch{}finally{e.abort()}},D6=({stream:t,onStreamEnd:e,lines:r,encoding:n,stripFinalNewline:i,allMixed:s})=>{let o=new AbortController;m_t(e,o,t);let a=t.readableObjectMode&&!s;return Fbe({stream:t,controller:o,binary:n==="buffer",shouldEncode:!a,encoding:n,shouldSplit:!a&&r,preserveNewlines:!i})},m_t=async(t,e,r)=>{try{await t}catch{r.destroy()}finally{e.abort()}},Fbe=({stream:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o})=>{let a=f_t(t,"data",{signal:e.signal,highWaterMark:Ube,highWatermark:Ube});return g_t({onStdoutChunk:a,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o})},M6=p_t(!0),Ube=M6,g_t=async function*({onStdoutChunk:t,controller:e,binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o}){let a=__t({binary:r,shouldEncode:n,encoding:i,shouldSplit:s,preserveNewlines:o});try{for await(let[c]of t)yield*Uf(c,a,0)}catch(c){if(!e.signal.aborted)throw c}finally{yield*xb(a)}},__t=({binary:t,shouldEncode:e,encoding:r,shouldSplit:n,preserveNewlines:i})=>[YO(t,r,!e),WO(t,i,!n,{})].filter(Boolean);var jbe=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,buffer:i,maxBuffer:s,lines:o,allMixed:a,stripFinalNewline:c,verboseInfo:l,streamInfo:u})=>{let d=S_t({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:a,verboseInfo:l,streamInfo:u});if(!i){await Promise.all([E_t(t),d]);return}let f=h6(c,r),p=D6({stream:t,onStreamEnd:e,lines:o,encoding:n,stripFinalNewline:f,allMixed:a}),[h]=await Promise.all([v_t({stream:t,iterable:p,fdNumber:r,encoding:n,maxBuffer:s,lines:o}),d]);return h},S_t=async({stream:t,onStreamEnd:e,fdNumber:r,encoding:n,allMixed:i,verboseInfo:s,streamInfo:{fileDescriptors:o}})=>{if(!ZO({stdioItems:o[r]?.stdioItems,encoding:n,verboseInfo:s,fdNumber:r}))return;let a=D6({stream:t,onStreamEnd:e,lines:!0,encoding:n,stripFinalNewline:!0,allMixed:i});await Zve(a,t,r,s)},E_t=async t=>{await y_t(),t.readableFlowing===null&&t.resume()},v_t=async({stream:t,stream:{readableObjectMode:e},iterable:r,fdNumber:n,encoding:i,maxBuffer:s,lines:o})=>{try{return e||o?await UO(r,{maxBuffer:s}):i==="buffer"?new Uint8Array(await FO(r,{maxBuffer:s})):await $g(r,{maxBuffer:s})}catch(a){return qbe(ZEe({error:a,stream:t,readableObjectMode:e,lines:o,encoding:i,fdNumber:n}))}},U6=async t=>{try{return await t}catch(e){return qbe(e)}},qbe=({bufferedData:t})=>pye(t)?new Uint8Array(t):t;import{finished as b_t}from"stream/promises";var Cb=async(t,e,r,{isSameDirection:n,stopOnExit:i=!1}={})=>{let s=T_t(t,r),o=new AbortController;try{await Promise.race([...i?[r.exitPromise]:[],b_t(t,{cleanup:!0,signal:o.signal})])}catch(a){s.stdinCleanedUp||A_t(a,e,r,n)}finally{o.abort()}},T_t=(t,{originalStreams:[e],subprocess:r})=>{let n={stdinCleanedUp:!1};return t===e&&w_t(t,r,n),n},w_t=(t,e,r)=>{let{_destroy:n}=t;t._destroy=(...i)=>{R_t(e,r),n.call(t,...i)}},R_t=({exitCode:t,signalCode:e},r)=>{(t!==null||e!==null)&&(r.stdinCleanedUp=!0)},A_t=(t,e,r,n)=>{if(!x_t(t,e,r,n))throw t},x_t=(t,e,r,n=!0)=>r.propagating?Bbe(t)||sC(t):(r.propagating=!0,F6(r,e)===n?Bbe(t):sC(t)),F6=({fileDescriptors:t},e)=>e!=="all"&&t[e].direction==="input",sC=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",Bbe=t=>t?.code==="EPIPE";var zbe=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:s,verboseInfo:o,streamInfo:a})=>t.stdio.map((c,l)=>j6({stream:c,fdNumber:l,encoding:e,buffer:r[l],maxBuffer:n[l],lines:i[l],allMixed:!1,stripFinalNewline:s,verboseInfo:o,streamInfo:a})),j6=async({stream:t,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:s,allMixed:o,stripFinalNewline:a,verboseInfo:c,streamInfo:l})=>{if(!t)return;let u=Cb(t,e,l);if(F6(l,e)){await u;return}let[d]=await Promise.all([jbe({stream:t,onStreamEnd:u,fdNumber:e,encoding:r,buffer:n,maxBuffer:i,lines:s,allMixed:o,stripFinalNewline:a,verboseInfo:c,streamInfo:l}),u]);return d};var Vbe=({stdout:t,stderr:e},{all:r})=>r&&(t||e)?Ff([t,e].filter(Boolean)):void 0,Hbe=({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:s,verboseInfo:o,streamInfo:a})=>j6({...I_t(t,r),fdNumber:"all",encoding:e,maxBuffer:n[1]+n[2],lines:i[1]||i[2],allMixed:P_t(t),stripFinalNewline:s,verboseInfo:o,streamInfo:a}),I_t=({stdout:t,stderr:e,all:r},[,n,i])=>{let s=n||i;return s?n?i?{stream:r,buffer:s}:{stream:t,buffer:s}:{stream:e,buffer:s}:{stream:r,buffer:s}},P_t=({all:t,stdout:e,stderr:r})=>t&&e&&r&&e.readableObjectMode!==r.readableObjectMode;import{once as O_t}from"events";var Gbe=t=>Ag(t,"ipc"),Wbe=(t,e)=>{let r=dO(t);ea({type:"ipc",verboseMessage:r,fdNumber:"ipc",verboseInfo:e})};var Ybe=async({subprocess:t,buffer:e,maxBuffer:r,ipc:n,ipcOutput:i,verboseInfo:s})=>{if(!n)return i;let o=Gbe(s),a=Ec(e,"ipc"),c=Ec(r,"ipc");for await(let l of T6({anyProcess:t,channel:t.channel,isSubprocess:!1,ipc:n,shouldAwait:!1,reference:!0}))a&&(XEe(t,i,c),i.push(l)),o&&Wbe(l,s);return i},Kbe=async(t,e)=>(await Promise.allSettled([t]),e);var Jbe=async({subprocess:t,options:{encoding:e,buffer:r,maxBuffer:n,lines:i,timeoutDuration:s,cancelSignal:o,gracefulCancel:a,forceKillAfterDelay:c,stripFinalNewline:l,ipc:u,ipcInput:d},context:f,verboseInfo:p,fileDescriptors:h,originalStreams:m,onInternalError:_,controller:y})=>{let v=rbe(t,f),S={originalStreams:m,fileDescriptors:h,subprocess:t,exitPromise:v,propagating:!1},g=zbe({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:S}),w=Hbe({subprocess:t,encoding:e,buffer:r,maxBuffer:n,lines:i,stripFinalNewline:l,verboseInfo:p,streamInfo:S}),P=[],x=Ybe({subprocess:t,buffer:r,maxBuffer:n,ipc:u,ipcOutput:P,verboseInfo:p}),R=C_t(m,t,S),O=N_t(h,S);try{return await Promise.race([Promise.all([{},ibe(v),Promise.all(g),w,x,OEe(t,d),...R,...O]),_,k_t(t,y),...REe(t,s,f,y),...GSe({subprocess:t,cancelSignal:o,gracefulCancel:a,context:f,controller:y}),...TEe({subprocess:t,cancelSignal:o,gracefulCancel:a,forceKillAfterDelay:c,context:f,controller:y})])}catch(A){return f.terminationReason??="other",Promise.all([{error:A},v,Promise.all(g.map(b=>U6(b))),U6(w),Kbe(x,P),Promise.allSettled(R),Promise.allSettled(O)])}},C_t=(t,e,r)=>t.map((n,i)=>n===e.stdio[i]?void 0:Cb(n,i,r)),N_t=(t,e)=>t.flatMap(({stdioItems:r},n)=>r.filter(({value:i,stream:s=i})=>eo(s,{checkOpen:!1})&&!Zs(s)).map(({type:i,value:s,stream:o=s})=>Cb(o,n,e,{isSameDirection:vs.has(i),stopOnExit:i==="native"}))),k_t=async(t,{signal:e})=>{let[r]=await O_t(t,"error",{signal:e});throw r};var Zbe=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),Nb=(t,e,r)=>{let n=t[r];n.has(e)||n.set(e,[]);let i=n.get(e),s=ta();return i.push(s),{resolve:s.resolve.bind(s),promises:i}},Fg=async({resolve:t,promises:e},r)=>{t();let[n]=await Promise.race([Promise.allSettled([!0,r]),Promise.all([!1,...e])]);return!n};import{Readable as $_t}from"stream";import{callbackify as L_t}from"util";import{finished as Xbe}from"stream/promises";var q6=async t=>{if(t!==void 0)try{await B6(t)}catch{}},Qbe=async t=>{if(t!==void 0)try{await z6(t)}catch{}},B6=async t=>{await Xbe(t,{cleanup:!0,readable:!1,writable:!0})},z6=async t=>{await Xbe(t,{cleanup:!0,readable:!0,writable:!1})},oC=async(t,e)=>{if(await t,e)throw e},aC=(t,e,r)=>{r&&!sC(r)?t.destroy(r):e&&t.destroy()};var eTe=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,binary:i=!0,preserveNewlines:s=!0}={})=>{let o=i||$i.has(r),{subprocessStdout:a,waitReadableDestroy:c}=V6(t,n,e),{readableEncoding:l,readableObjectMode:u,readableHighWaterMark:d}=H6(a,o),{read:f,onStdoutDataDone:p}=G6({subprocessStdout:a,subprocess:t,binary:o,encoding:r,preserveNewlines:s}),h=new $_t({read:f,destroy:L_t(Y6.bind(void 0,{subprocessStdout:a,subprocess:t,waitReadableDestroy:c})),highWaterMark:d,objectMode:u,encoding:l});return W6({subprocessStdout:a,onStdoutDataDone:p,readable:h,subprocess:t}),h},V6=(t,e,r)=>{let n=Cg(t,e),i=Nb(r,n,"readableDestroy");return{subprocessStdout:n,waitReadableDestroy:i}},H6=({readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r},n)=>n?{readableEncoding:t,readableObjectMode:e,readableHighWaterMark:r}:{readableEncoding:t,readableObjectMode:!0,readableHighWaterMark:M6},G6=({subprocessStdout:t,subprocess:e,binary:r,encoding:n,preserveNewlines:i})=>{let s=ta(),o=iC({subprocessStdout:t,subprocess:e,binary:r,shouldEncode:!r,encoding:n,preserveNewlines:i});return{read(){D_t(this,o,s)},onStdoutDataDone:s}},D_t=async(t,e,r)=>{try{let{value:n,done:i}=await e.next();i?r.resolve():t.push(n)}catch{}},W6=async({subprocessStdout:t,onStdoutDataDone:e,readable:r,subprocess:n,subprocessStdin:i})=>{try{await z6(t),await n,await q6(i),await e,r.readable&&r.push(null)}catch(s){await q6(i),tTe(r,s)}},Y6=async({subprocessStdout:t,subprocess:e,waitReadableDestroy:r},n)=>{await Fg(r,e)&&(tTe(t,n),await oC(e,n))},tTe=(t,e)=>{aC(t,t.readable,e)};import{Writable as M_t}from"stream";import{callbackify as rTe}from"util";var nTe=({subprocess:t,concurrentStreams:e},{to:r}={})=>{let{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:s}=K6(t,r,e),o=new M_t({...J6(n,t,i),destroy:rTe(X6.bind(void 0,{subprocessStdin:n,subprocess:t,waitWritableFinal:i,waitWritableDestroy:s})),highWaterMark:n.writableHighWaterMark,objectMode:n.writableObjectMode});return Z6(n,o),o},K6=(t,e,r)=>{let n=bO(t,e),i=Nb(r,n,"writableFinal"),s=Nb(r,n,"writableDestroy");return{subprocessStdin:n,waitWritableFinal:i,waitWritableDestroy:s}},J6=(t,e,r)=>({write:U_t.bind(void 0,t),final:rTe(F_t.bind(void 0,t,e,r))}),U_t=(t,e,r,n)=>{t.write(e,r)?n():t.once("drain",n)},F_t=async(t,e,r)=>{await Fg(r,e)&&(t.writable&&t.end(),await e)},Z6=async(t,e,r)=>{try{await B6(t),e.writable&&e.end()}catch(n){await Qbe(r),iTe(e,n)}},X6=async({subprocessStdin:t,subprocess:e,waitWritableFinal:r,waitWritableDestroy:n},i)=>{await Fg(r,e),await Fg(n,e)&&(iTe(t,i),await oC(e,i))},iTe=(t,e)=>{aC(t,t.writable,e)};import{Duplex as j_t}from"stream";import{callbackify as q_t}from"util";var sTe=({subprocess:t,concurrentStreams:e,encoding:r},{from:n,to:i,binary:s=!0,preserveNewlines:o=!0}={})=>{let a=s||$i.has(r),{subprocessStdout:c,waitReadableDestroy:l}=V6(t,n,e),{subprocessStdin:u,waitWritableFinal:d,waitWritableDestroy:f}=K6(t,i,e),{readableEncoding:p,readableObjectMode:h,readableHighWaterMark:m}=H6(c,a),{read:_,onStdoutDataDone:y}=G6({subprocessStdout:c,subprocess:t,binary:a,encoding:r,preserveNewlines:o}),v=new j_t({read:_,...J6(u,t,d),destroy:q_t(B_t.bind(void 0,{subprocessStdout:c,subprocessStdin:u,subprocess:t,waitReadableDestroy:l,waitWritableFinal:d,waitWritableDestroy:f})),readableHighWaterMark:m,writableHighWaterMark:u.writableHighWaterMark,readableObjectMode:h,writableObjectMode:u.writableObjectMode,encoding:p});return W6({subprocessStdout:c,onStdoutDataDone:y,readable:v,subprocess:t,subprocessStdin:u}),Z6(u,v,c),v},B_t=async({subprocessStdout:t,subprocessStdin:e,subprocess:r,waitReadableDestroy:n,waitWritableFinal:i,waitWritableDestroy:s},o)=>{await Promise.all([Y6({subprocessStdout:t,subprocess:r,waitReadableDestroy:n},o),X6({subprocessStdin:e,subprocess:r,waitWritableFinal:i,waitWritableDestroy:s},o)])};var Q6=(t,e,{from:r,binary:n=!1,preserveNewlines:i=!1}={})=>{let s=n||$i.has(e),o=Cg(t,r),a=iC({subprocessStdout:o,subprocess:t,binary:s,shouldEncode:!0,encoding:e,preserveNewlines:i});return z_t(a,o,t)},z_t=async function*(t,e,r){try{yield*t}finally{e.readable&&e.destroy(),await r}};var oTe=(t,{encoding:e})=>{let r=Zbe();t.readable=eTe.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.writable=nTe.bind(void 0,{subprocess:t,concurrentStreams:r}),t.duplex=sTe.bind(void 0,{subprocess:t,concurrentStreams:r,encoding:e}),t.iterable=Q6.bind(void 0,t,e),t[Symbol.asyncIterator]=Q6.bind(void 0,t,e,{})};var aTe=(t,e)=>{for(let[r,n]of H_t){let i=n.value.bind(e);Reflect.defineProperty(t,r,{...n,value:i})}},V_t=(async()=>{})().constructor.prototype,H_t=["then","catch","finally"].map(t=>[t,Reflect.getOwnPropertyDescriptor(V_t,t)]);var cTe=(t,e,r,n)=>{let{file:i,commandArguments:s,command:o,escapedCommand:a,startTime:c,verboseInfo:l,options:u,fileDescriptors:d}=Y_t(t,e,r),{subprocess:f,promise:p}=J_t({file:i,commandArguments:s,options:u,startTime:c,verboseInfo:l,command:o,escapedCommand:a,fileDescriptors:d});return f.pipe=nC.bind(void 0,{source:f,sourcePromise:p,boundOptions:{},createNested:n}),aTe(f,p),ra.set(f,{options:u,fileDescriptors:d}),f},Y_t=(t,e,r)=>{let{command:n,escapedCommand:i,startTime:s,verboseInfo:o}=pO(t,e,r),{file:a,commandArguments:c,options:l}=kO(t,e,r),u=K_t(l),d=Sbe(u,o);return{file:a,commandArguments:c,command:n,escapedCommand:i,startTime:s,verboseInfo:o,options:u,fileDescriptors:d}},K_t=({timeout:t,signal:e,...r})=>{if(e!==void 0)throw new TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...r,timeoutDuration:t}},J_t=({file:t,commandArguments:e,options:r,startTime:n,verboseInfo:i,command:s,escapedCommand:o,fileDescriptors:a})=>{let c;try{c=W_t(...$O(t,e,r))}catch(h){return mbe({error:h,command:s,escapedCommand:o,fileDescriptors:a,options:r,startTime:n,verboseInfo:i})}let l=new AbortController;G_t(Number.POSITIVE_INFINITY,l.signal);let u=[...c.stdio];Ibe(c,a,l),Obe(c,r,l);let d={},f=ta();c.kill=VSe.bind(void 0,{kill:c.kill.bind(c),options:r,onInternalError:f,context:d,controller:l}),c.all=Vbe(c,r),oTe(c,r),fbe(c,r);let p=Z_t({subprocess:c,options:r,startTime:n,verboseInfo:i,fileDescriptors:a,originalStreams:u,command:s,escapedCommand:o,context:d,onInternalError:f,controller:l});return{subprocess:c,promise:p}},Z_t=async({subprocess:t,options:e,startTime:r,verboseInfo:n,fileDescriptors:i,originalStreams:s,command:o,escapedCommand:a,context:c,onInternalError:l,controller:u})=>{let[d,[f,p],h,m,_]=await Jbe({subprocess:t,options:e,context:c,verboseInfo:n,fileDescriptors:i,originalStreams:s,onInternalError:l,controller:u});u.abort(),l.resolve();let y=h.map((g,w)=>bc(g,e,w)),v=bc(m,e,"all"),S=X_t({errorInfo:d,exitCode:f,signal:p,stdio:y,all:v,ipcOutput:_,context:c,options:e,command:o,escapedCommand:a,startTime:r});return Dg(S,n,e)},X_t=({errorInfo:t,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:s,context:o,options:a,command:c,escapedCommand:l,startTime:u})=>"error"in t?Ab({error:t.error,command:c,escapedCommand:l,timedOut:o.terminationReason==="timeout",isCanceled:o.terminationReason==="cancel"||o.terminationReason==="gracefulCancel",isGracefullyCanceled:o.terminationReason==="gracefulCancel",isMaxBuffer:t.error instanceof na,isForcefullyTerminated:o.isForcefullyTerminated,exitCode:e,signal:r,stdio:n,all:i,ipcOutput:s,options:a,startTime:u,isSync:!1}):BO({command:c,escapedCommand:l,stdio:n,all:i,ipcOutput:s,options:a,startTime:u});var cC=(t,e)=>{let r=Object.fromEntries(Object.entries(e).map(([n,i])=>[n,Q_t(n,t[n],i)]));return{...t,...r}},Q_t=(t,e,r)=>eyt.has(t)&&yr(e)&&yr(r)?{...e,...r}:r,eyt=new Set(["env",...PG]);var bu=(t,e,r,n)=>{let i=(o,a,c)=>bu(o,a,r,c),s=(...o)=>tyt({mapArguments:t,deepOptions:r,boundOptions:e,setBoundExeca:n,createNested:i},...o);return n!==void 0&&n(s,i,e),s},tyt=({mapArguments:t,deepOptions:e={},boundOptions:r={},setBoundExeca:n,createNested:i},s,...o)=>{if(yr(s))return i(t,cC(r,s),n);let{file:a,commandArguments:c,options:l,isSync:u}=ryt({mapArguments:t,firstArgument:s,nextArguments:o,deepOptions:e,boundOptions:r});return u?obe(a,c,l):cTe(a,c,l,i)},ryt=({mapArguments:t,firstArgument:e,nextArguments:r,deepOptions:n,boundOptions:i})=>{let s=Sye(e)?Eye(e,r):[e,...r],[o,a,c]=rO(...s),l=cC(cC(n,i),c),{file:u=o,commandArguments:d=a,options:f=l,isSync:p=!1}=t({file:o,commandArguments:a,options:l});return{file:u,commandArguments:d,options:f,isSync:p}};var lTe=({file:t,commandArguments:e})=>dTe(t,e),uTe=({file:t,commandArguments:e})=>({...dTe(t,e),isSync:!0}),dTe=(t,e)=>{if(e.length>0)throw new TypeError(`The command and its arguments must be passed as a single string: ${t} ${e}.`);let[r,...n]=nyt(t);return{file:r,commandArguments:n}},nyt=t=>{if(typeof t!="string")throw new TypeError(`The command must be a string: ${String(t)}.`);let e=t.trim();if(e==="")return[];let r=[];for(let n of e.split(iyt)){let i=r.at(-1);i&&i.endsWith("\\")?r[r.length-1]=`${i.slice(0,-1)} ${n}`:r.push(n)}return r},iyt=/ +/g;var fTe=(t,e,r)=>{t.sync=e(syt,r),t.s=t.sync},pTe=({options:t})=>hTe(t),syt=({options:t})=>({...hTe(t),isSync:!0}),hTe=t=>({options:{...oyt(t),...t}}),oyt=({input:t,inputFile:e,stdio:r})=>t===void 0&&e===void 0&&r===void 0?{stdin:"inherit"}:{},mTe={preferLocal:!0};var gTe=bu(()=>({})),nar=bu(()=>({isSync:!0})),_Te=bu(lTe),iar=bu(uTe),sar=bu(xEe),oar=bu(pTe,{},mTe,fTe),{sendMessage:aar,getOneMessage:car,getEachMessage:lar,getCancelSignal:uar}=pbe();import{Transform as ayt}from"stream";var cyt=["NETLIFY_AI_GATEWAY_KEY"];function lyt(){let t=(process.env.NETLIFY_SENSITIVE_ENV_KEYS||"").split(",").map(e=>e.trim()).filter(Boolean);return[...new Set([...t,...cyt])]}function uyt(t){let e=t.toLowerCase();return e==="true"||e==="false"?!0:t.trim().length<4}function dyt(){let e=lyt().map(r=>process.env[r]).filter(r=>!(!r||uyt(r)));return[...new Set(e)].sort((r,n)=>n.length-r.length)}function bs(t){if(typeof t!="string")return t;let e=dyt();if(e.length===0)return t;let r=t;return e.forEach(n=>{let i=new RegExp(fyt(n),"g");r=r.replace(i,"******")}),r}function fyt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var kb=class extends ayt{constructor(e={}){super({...e,objectMode:!1})}_transform(e,r,n){let i=e.toString(),s=bs(i);n(null,s)}},lC=Symbol("maskedWrite");function yTe(){if(process.env.NETLIFY_MASK_LOGS!=="false"){if(!process.stdout.write[lC]){let e=process.stdout.write.bind(process.stdout),r=function(n,i,s){let o=typeof n=="string"?bs(n):n;return typeof i=="function"?e(o,i):e(o,i,s)};r[lC]=!0,process.stdout.write=r}if(!process.stderr.write[lC]){let e=process.stderr.write.bind(process.stderr),r=function(n,i,s){let o=typeof n=="string"?bs(n):n;return typeof i=="function"?e(o,i):e(o,i,s)};r[lC]=!0,process.stderr.write=r}}}var STe=!1,ETe=()=>{STe=!0},hi=()=>STe;var $b=null,vTe=t=>($b&&$b.destroy(),$b=new Tc({totalAllowedTime:t}),$b),bTe=()=>$b;var Tc=class{constructor({totalAllowedTime:e}){this.withStageTimer=async(e,r,n,{interruptible:i=!0}={})=>{if(this.isTimeExpired())throw new Error(`${e} stage did not complete in the allowed time. Time has already expired.`);if(i&&hi())throw new Error(`Aborting ${e} stage \u2014 shutting down`);let s=this.onTimesUp(()=>{throw new Error(`${e} stage did not complete in the allowed time.`)}),o=null,a=null;n!==void 0&&(a=new Promise((u,d)=>{o=setTimeout(()=>{d(new Error(`${e} stage exceeded its maximum duration of ${n}ms`))},n)}));let c=Date.now(),l="success";try{return await eO({stage:e},async()=>a?await Promise.race([r(),a]):await r())}catch(u){throw l="failure",u}finally{Ie.timing("stage.duration",Date.now()-c,{stage:e,outcome:l}),s(),o&&clearTimeout(o)}};this.startTime=Date.now(),this.totalAllowedTime=e,this.globalTimeoutId=null,this.subscribers=[],this.hasTimedOut=!1,this.setupGlobalTimeout()}getElapsedTime(){return Date.now()-this.startTime}getRemainingTime(){let e=this.getElapsedTime(),r=this.totalAllowedTime-e;return Math.max(0,r)}isTimeExpired(){return this.getRemainingTime()===0||this.hasTimedOut}setupGlobalTimeout(){this.globalTimeoutId&&clearTimeout(this.globalTimeoutId),this.globalTimeoutId=setTimeout(()=>{this.notifyTimeUp()},this.totalAllowedTime)}notifyTimeUp(){this.hasTimedOut=!0;for(let e=this.subscribers.length-1;e>=0;e--)try{this.subscribers[e]()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}}onTimesUp(e){if(this.subscribers.push(e),this.hasTimedOut)try{e()}catch(r){console.error("TimeKeeper: Error in time up callback:",r)}return()=>{let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}}off(e){let r=this.subscribers.indexOf(e);r>-1&&this.subscribers.splice(r,1)}clearSubscribers(){this.subscribers.length=0}getSubscriberCount(){return this.subscribers.length}destroy(){this.globalTimeoutId&&(clearTimeout(this.globalTimeoutId),this.globalTimeoutId=null),this.clearSubscribers()}static{this.timeUnits={seconds:e=>e*1e3,minutes:e=>e*60*1e3,hours:e=>e*60*60*1e3}}};var TTe={name:"@netlify/agent-runner-cli",type:"module",version:"1.142.1-test.9",description:"CLI tool for running Netlify agents",main:"./dist/index.js",types:"./dist/index.d.ts",exports:"./dist/index.js",bin:{"agent-runner-cli":"./dist/bin.js","agent-runner-cli-local":"./dist/bin-local.js"},files:["dist/**/*.js","dist/**/*.d.ts","dist/skills/**","patches","scripts"],scripts:{build:"tsup",dev:"tsup --watch",prepare:"husky install node_modules/@netlify/eslint-config-node/.husky/",prepublishOnly:"npm ci && npm test",prepack:"npm run build",test:"run-s build format test:dev",format:"run-s build format:check-fix:*","format:ci":"run-s build format:check:*","format:check-fix:lint":"run-e format:check:lint format:fix:lint","format:check:lint":'eslint --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:fix:lint":'eslint --fix --cache --format=codeframe --max-warnings=0 "{src,scripts,test,.github}/**/*.{js,ts,md,html}"',"format:check-fix:prettier":"run-e format:check:prettier format:fix:prettier","format:check:prettier":'prettier --check --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"format:fix:prettier":'prettier --write --ignore-path .gitignore --loglevel=warn "{src,scripts,test,.github}/**/*.{js,ts,md,yml,json,html}" "*.{js,ts,yml,json,html}" ".*.{js,ts,yml,json,html}" "!**/package-lock.json" "!package-lock.json" "!src/skills/**/*.md"',"test:dev":"run-s build test:dev:*","test:ci":"run-s build test:ci:*","test:dev:vitest":"LOG=0 vitest --exclude '**/integration/**'","test:ci:vitest":"LOG=0 vitest run --coverage --exclude '**/integration/**'","test:smoke":"node scripts/smoke-dist.js","test:integration":"vitest run test/integration/","test:integration:codex":"vitest run test/integration/codex.test.ts","test:integration:claude":"vitest run test/integration/claude.test.ts","test:integration:gemini":"vitest run test/integration/gemini.test.ts","test:integration:skill-invocation":"vitest run test/integration/skill-invocation.test.ts","check:types":"tsc --noEmit",postinstall:"node scripts/postinstall.js"},keywords:[],license:"MIT",repository:"netlify/agent-runner-cli",bugs:{url:"https://github.com/netlify/agent-runner-cli/issues"},author:"Netlify Inc.",directories:{test:"test"},devDependencies:{"@commitlint/cli":"^20.0.0","@commitlint/config-conventional":"^20.0.0","@eslint/compat":"^2.0.0","@eslint/js":"^10.0.1","@netlify/axis":"^1.17.0","@netlify/eslint-config-node":"^7.0.1","@types/node":"^24.5.0","@typescript-eslint/eslint-plugin":"^8.0.0","@typescript-eslint/parser":"^8.0.0","@vitest/coverage-v8":"^4.1.5","@vitest/eslint-plugin":"^1.6.6",eslint:"^10.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-n":"^17.0.0",husky:"^9.0.0",jiti:"^2.7.0","patch-package":"^8.0.0",tsup:"^8.5.0",typescript:"^5.0.0","typescript-eslint":"^8.44.0",vitest:"^4.0.16"},dependencies:{"@anthropic-ai/claude-code":"2.1.197","@anthropic-ai/sdk":"0.91.1","@google/gemini-cli":"0.42.0","@modelcontextprotocol/sdk":"^1.29.0","@netlify/cache-utils":"^6.0.5","@netlify/database-proxy":"^0.1.5","@netlify/otel":"^6.0.3","@netlify/ts-cli":"^1.2.0","@openai/codex":"0.128.0","@opentelemetry/api":"^1.9.0","@opentelemetry/exporter-trace-otlp-grpc":"0.218.0",execa:"^9.6.1",fastify:"5.8.5",minimist:"^1.2.8",openai:"6.34.0","opencode-ai":"1.17.19",zod:"^4.4.3"}};var gyt=hyt(import.meta.url),_yt=wc.dirname(gyt),yyt=myt(import.meta.url),jg=Re("shell"),e3=new Set,wTe={preferLocal:!0},Li=(t,e,r)=>{let[n,i]=Syt(e,r),s={...wTe,...i},o=gTe(t,n,s);ATe(o,s),PTe(o);let a=r?.idleTimeout;return a&&a>0&&ITe(o,a),o},RTe=(t,e)=>{let r={...wTe,...e},n=_Te(t,r);return ATe(n,r),PTe(n),e?.idleTimeout&&e.idleTimeout>0&&ITe(n,e.idleTimeout),n},Syt=function(t,e){return Array.isArray(t)?[t,e]:typeof t=="object"&&t!==null?[[],t]:[[],void 0]},ATe=(t,e)=>{if(e.stdio!==void 0||e.stdout!==void 0||e.stderr!==void 0)return;if(Rc.env.NETLIFY_MASK_LOGS!=="false"){t.stdout?.pipe(new kb).pipe(Rc.stdout),t.stderr?.pipe(new kb).pipe(Rc.stderr);return}t.stdout?.pipe(Rc.stdout),t.stderr?.pipe(Rc.stderr)},t3=(t,e="SIGTERM")=>{try{return t.pid&&!t.killed?(Rc.kill(-t.pid,e),jg.log(`Killed process ${t.pid} with signal ${e}`),!0):!1}catch(r){return jg.error("Error killing process:",r),!1}},xTe=t=>t3(t,"SIGKILL"),ITe=(t,e)=>{let r=null,n=()=>{jg.log(`Process ${t.pid} killed due to idle timeout (no output for ${e}ms)`),t3(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(jg.log(`Force killing idle process ${t.pid}`),xTe(t))},5e3)},i=()=>{r&&clearTimeout(r),r=setTimeout(n,e)};i(),t.stdout?.on("data",i),t.stderr?.on("data",i);let s=()=>{r&&(clearTimeout(r),r=null)};t.on("exit",s),t.on("error",s)},PTe=t=>{e3.add(t);let e=bTe();if(e){let r=e.onTimesUp(()=>{jg.log(`Global timer expired, killing process ${t.pid}`),t3(t,"SIGTERM"),setTimeout(()=>{t.pid&&!t.killed&&(jg.log(`Force killing process ${t.pid} after timeout`),xTe(t))},5e3)});t.on("exit",()=>{e3.delete(t),r()}),t.on("error",()=>{e3.delete(t),r()})}};function sa(t,e){if(!Rc.env.NETLIFY_LOCAL_MODE)try{let i=yyt.resolve(TTe.name),s=wc.dirname(i);for(;s!==wc.dirname(s);){let o=wc.dirname(s);if(wc.basename(o)==="node_modules"){let a=wc.join(o,".bin",e);if(uC.existsSync(a))return a;break}s=o}}catch(i){console.error("Could not resolve package.json",i)}if(Rc.env.NODE_PATH){let i=wc.join(Rc.env.NODE_PATH,".bin",e);if(uC.existsSync(i))return i}let r=wc.join(t,"node_modules",".bin",e);if(uC.existsSync(r))return r;let n=wc.join(_yt,"..","node_modules",".bin",e);if(uC.existsSync(n))return n}import hL from"process";import{fileURLToPath as cCt}from"url";import{createRequire as lCt}from"module";import mL from"path";var Eyt="__netlify__getTracer",vyt="__netlify__shutdownTracers",ft=(t,e)=>globalThis[Eyt]?.(t,e),OTe=async()=>globalThis[vyt]?.();function qf(t,e,r,n,i){let s=typeof n=="function"?n:typeof r=="function"?r:i;if(!s)throw new Error("function to execute with active span is missing");return t?t.withActiveSpan(e,r,n,s):s()}import{setTimeout as rCt}from"timers/promises";import _Et from"process";var CTe=typeof globalThis=="object"?globalThis:global;var Ac="1.9.0";var NTe=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function byt(t){var e=new Set([t]),r=new Set,n=t.match(NTe);if(!n)return function(){return!1};var i={major:+n[1],minor:+n[2],patch:+n[3],prerelease:n[4]};if(i.prerelease!=null)return function(c){return c===t};function s(a){return r.add(a),!1}function o(a){return e.add(a),!0}return function(c){if(e.has(c))return!0;if(r.has(c))return!1;var l=c.match(NTe);if(!l)return s(c);var u={major:+l[1],minor:+l[2],patch:+l[3],prerelease:l[4]};return u.prerelease!=null||i.major!==u.major?s(c):i.major===0?i.minor===u.minor&&i.patch<=u.patch?o(c):s(c):i.minor<=u.minor?o(c):s(c)}}var kTe=byt(Ac);var Tyt=Ac.split(".")[0],Lb=Symbol.for("opentelemetry.js.api."+Tyt),Db=CTe;function Tu(t,e,r,n){var i;n===void 0&&(n=!1);var s=Db[Lb]=(i=Db[Lb])!==null&&i!==void 0?i:{version:Ac};if(!n&&s[t]){var o=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+t);return r.error(o.stack||o.message),!1}if(s.version!==Ac){var o=new Error("@opentelemetry/api: Registration of version v"+s.version+" for "+t+" does not match previously registered API v"+Ac);return r.error(o.stack||o.message),!1}return s[t]=e,r.debug("@opentelemetry/api: Registered a global for "+t+" v"+Ac+"."),!0}function to(t){var e,r,n=(e=Db[Lb])===null||e===void 0?void 0:e.version;if(!(!n||!kTe(n)))return(r=Db[Lb])===null||r===void 0?void 0:r[t]}function wu(t,e){e.debug("@opentelemetry/api: Unregistering a global for "+t+" v"+Ac+".");var r=Db[Lb];r&&delete r[t]}var wyt=function(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return s},Ryt=function(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,s;n<i;n++)(s||!(n in e))&&(s||(s=Array.prototype.slice.call(e,0,n)),s[n]=e[n]);return t.concat(s||Array.prototype.slice.call(e))},$Te=(function(){function t(e){this._namespace=e.namespace||"DiagComponentLogger"}return t.prototype.debug=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return Mb("debug",this._namespace,e)},t.prototype.error=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return Mb("error",this._namespace,e)},t.prototype.info=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return Mb("info",this._namespace,e)},t.prototype.warn=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return Mb("warn",this._namespace,e)},t.prototype.verbose=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return Mb("verbose",this._namespace,e)},t})();function Mb(t,e,r){var n=to("diag");if(n)return r.unshift(e),n[t].apply(n,Ryt([],wyt(r),!1))}var Gn;(function(t){t[t.NONE=0]="NONE",t[t.ERROR=30]="ERROR",t[t.WARN=50]="WARN",t[t.INFO=60]="INFO",t[t.DEBUG=70]="DEBUG",t[t.VERBOSE=80]="VERBOSE",t[t.ALL=9999]="ALL"})(Gn||(Gn={}));function LTe(t,e){t<Gn.NONE?t=Gn.NONE:t>Gn.ALL&&(t=Gn.ALL),e=e||{};function r(n,i){var s=e[n];return typeof s=="function"&&t>=i?s.bind(e):function(){}}return{error:r("error",Gn.ERROR),warn:r("warn",Gn.WARN),info:r("info",Gn.INFO),debug:r("debug",Gn.DEBUG),verbose:r("verbose",Gn.VERBOSE)}}var Ayt=function(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return s},xyt=function(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,s;n<i;n++)(s||!(n in e))&&(s||(s=Array.prototype.slice.call(e,0,n)),s[n]=e[n]);return t.concat(s||Array.prototype.slice.call(e))},Iyt="diag",Di=(function(){function t(){function e(i){return function(){for(var s=[],o=0;o<arguments.length;o++)s[o]=arguments[o];var a=to("diag");if(a)return a[i].apply(a,xyt([],Ayt(s),!1))}}var r=this,n=function(i,s){var o,a,c;if(s===void 0&&(s={logLevel:Gn.INFO}),i===r){var l=new Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return r.error((o=l.stack)!==null&&o!==void 0?o:l.message),!1}typeof s=="number"&&(s={logLevel:s});var u=to("diag"),d=LTe((a=s.logLevel)!==null&&a!==void 0?a:Gn.INFO,i);if(u&&!s.suppressOverrideMessage){var f=(c=new Error().stack)!==null&&c!==void 0?c:"<failed to generate stacktrace>";u.warn("Current logger will be overwritten from "+f),d.warn("Current logger will overwrite one already registered from "+f)}return Tu("diag",d,r,!0)};r.setLogger=n,r.disable=function(){wu(Iyt,r)},r.createComponentLogger=function(i){return new $Te(i)},r.verbose=e("verbose"),r.debug=e("debug"),r.info=e("info"),r.warn=e("warn"),r.error=e("error")}return t.instance=function(){return this._instance||(this._instance=new t),this._instance},t})();var Pyt=function(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return s},Oyt=function(t){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},DTe=(function(){function t(e){this._entries=e?new Map(e):new Map}return t.prototype.getEntry=function(e){var r=this._entries.get(e);if(r)return Object.assign({},r)},t.prototype.getAllEntries=function(){return Array.from(this._entries.entries()).map(function(e){var r=Pyt(e,2),n=r[0],i=r[1];return[n,i]})},t.prototype.setEntry=function(e,r){var n=new t(this._entries);return n._entries.set(e,r),n},t.prototype.removeEntry=function(e){var r=new t(this._entries);return r._entries.delete(e),r},t.prototype.removeEntries=function(){for(var e,r,n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];var s=new t(this._entries);try{for(var o=Oyt(n),a=o.next();!a.done;a=o.next()){var c=a.value;s._entries.delete(c)}}catch(l){e={error:l}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(e)throw e.error}}return s},t.prototype.clear=function(){return new t},t})();var ecr=Di.instance();function MTe(t){return t===void 0&&(t={}),new DTe(new Map(Object.entries(t)))}function dC(t){return Symbol.for(t)}var Cyt=(function(){function t(e){var r=this;r._currentContext=e?new Map(e):new Map,r.getValue=function(n){return r._currentContext.get(n)},r.setValue=function(n,i){var s=new t(r._currentContext);return s._currentContext.set(n,i),s},r.deleteValue=function(n){var i=new t(r._currentContext);return i._currentContext.delete(n),i}}return t})(),UTe=new Cyt;var FTe={get:function(t,e){if(t!=null)return t[e]},keys:function(t){return t==null?[]:Object.keys(t)}},jTe={set:function(t,e,r){t!=null&&(t[e]=r)}};var Nyt=function(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return s},kyt=function(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,s;n<i;n++)(s||!(n in e))&&(s||(s=Array.prototype.slice.call(e,0,n)),s[n]=e[n]);return t.concat(s||Array.prototype.slice.call(e))},qTe=(function(){function t(){}return t.prototype.active=function(){return UTe},t.prototype.with=function(e,r,n){for(var i=[],s=3;s<arguments.length;s++)i[s-3]=arguments[s];return r.call.apply(r,kyt([n],Nyt(i),!1))},t.prototype.bind=function(e,r){return r},t.prototype.enable=function(){return this},t.prototype.disable=function(){return this},t})();var $yt=function(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(a){o={error:a}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return s},Lyt=function(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,s;n<i;n++)(s||!(n in e))&&(s||(s=Array.prototype.slice.call(e,0,n)),s[n]=e[n]);return t.concat(s||Array.prototype.slice.call(e))},r3="context",Dyt=new qTe,Ru=(function(){function t(){}return t.getInstance=function(){return this._instance||(this._instance=new t),this._instance},t.prototype.setGlobalContextManager=function(e){return Tu(r3,e,Di.instance())},t.prototype.active=function(){return this._getContextManager().active()},t.prototype.with=function(e,r,n){for(var i,s=[],o=3;o<arguments.length;o++)s[o-3]=arguments[o];return(i=this._getContextManager()).with.apply(i,Lyt([e,r,n],$yt(s),!1))},t.prototype.bind=function(e,r){return this._getContextManager().bind(e,r)},t.prototype._getContextManager=function(){return to(r3)||Dyt},t.prototype.disable=function(){this._getContextManager().disable(),wu(r3,Di.instance())},t})();var fC;(function(t){t[t.NONE=0]="NONE",t[t.SAMPLED=1]="SAMPLED"})(fC||(fC={}));var n3="0000000000000000",i3="00000000000000000000000000000000",BTe={traceId:i3,spanId:n3,traceFlags:fC.NONE};var Au=(function(){function t(e){e===void 0&&(e=BTe),this._spanContext=e}return t.prototype.spanContext=function(){return this._spanContext},t.prototype.setAttribute=function(e,r){return this},t.prototype.setAttributes=function(e){return this},t.prototype.addEvent=function(e,r){return this},t.prototype.addLink=function(e){return this},t.prototype.addLinks=function(e){return this},t.prototype.setStatus=function(e){return this},t.prototype.updateName=function(e){return this},t.prototype.end=function(e){},t.prototype.isRecording=function(){return!1},t.prototype.recordException=function(e,r){},t})();var s3=dC("OpenTelemetry Context Key SPAN");function pC(t){return t.getValue(s3)||void 0}function zTe(){return pC(Ru.getInstance().active())}function Ub(t,e){return t.setValue(s3,e)}function VTe(t){return t.deleteValue(s3)}function HTe(t,e){return Ub(t,new Au(e))}function hC(t){var e;return(e=pC(t))===null||e===void 0?void 0:e.spanContext()}var Myt=/^([0-9a-f]{32})$/i,Uyt=/^[0-9a-f]{16}$/i;function Fyt(t){return Myt.test(t)&&t!==i3}function jyt(t){return Uyt.test(t)&&t!==n3}function mC(t){return Fyt(t.traceId)&&jyt(t.spanId)}function GTe(t){return new Au(t)}var o3=Ru.getInstance(),gC=(function(){function t(){}return t.prototype.startSpan=function(e,r,n){n===void 0&&(n=o3.active());var i=!!r?.root;if(i)return new Au;var s=n&&hC(n);return qyt(s)&&mC(s)?new Au(s):new Au},t.prototype.startActiveSpan=function(e,r,n,i){var s,o,a;if(!(arguments.length<2)){arguments.length===2?a=r:arguments.length===3?(s=r,a=n):(s=r,o=n,a=i);var c=o??o3.active(),l=this.startSpan(e,s,c),u=Ub(c,l);return o3.with(u,a,void 0,l)}},t})();function qyt(t){return typeof t=="object"&&typeof t.spanId=="string"&&typeof t.traceId=="string"&&typeof t.traceFlags=="number"}var Byt=new gC,WTe=(function(){function t(e,r,n,i){this._provider=e,this.name=r,this.version=n,this.options=i}return t.prototype.startSpan=function(e,r,n){return this._getTracer().startSpan(e,r,n)},t.prototype.startActiveSpan=function(e,r,n,i){var s=this._getTracer();return Reflect.apply(s.startActiveSpan,s,arguments)},t.prototype._getTracer=function(){if(this._delegate)return this._delegate;var e=this._provider.getDelegateTracer(this.name,this.version,this.options);return e?(this._delegate=e,this._delegate):Byt},t})();var YTe=(function(){function t(){}return t.prototype.getTracer=function(e,r,n){return new gC},t})();var zyt=new YTe,a3=(function(){function t(){}return t.prototype.getTracer=function(e,r,n){var i;return(i=this.getDelegateTracer(e,r,n))!==null&&i!==void 0?i:new WTe(this,e,r,n)},t.prototype.getDelegate=function(){var e;return(e=this._delegate)!==null&&e!==void 0?e:zyt},t.prototype.setDelegate=function(e){this._delegate=e},t.prototype.getDelegateTracer=function(e,r,n){var i;return(i=this._delegate)===null||i===void 0?void 0:i.getTracer(e,r,n)},t})();var xu;(function(t){t[t.INTERNAL=0]="INTERNAL",t[t.SERVER=1]="SERVER",t[t.CLIENT=2]="CLIENT",t[t.PRODUCER=3]="PRODUCER",t[t.CONSUMER=4]="CONSUMER"})(xu||(xu={}));var oa;(function(t){t[t.UNSET=0]="UNSET",t[t.OK=1]="OK",t[t.ERROR=2]="ERROR"})(oa||(oa={}));var xc=Ru.getInstance();var c3=Di.instance();var KTe=(function(){function t(){}return t.prototype.inject=function(e,r){},t.prototype.extract=function(e,r){return e},t.prototype.fields=function(){return[]},t})();var l3=dC("OpenTelemetry Baggage Key");function u3(t){return t.getValue(l3)||void 0}function JTe(){return u3(Ru.getInstance().active())}function ZTe(t,e){return t.setValue(l3,e)}function XTe(t){return t.deleteValue(l3)}var d3="propagation",Vyt=new KTe,QTe=(function(){function t(){this.createBaggage=MTe,this.getBaggage=u3,this.getActiveBaggage=JTe,this.setBaggage=ZTe,this.deleteBaggage=XTe}return t.getInstance=function(){return this._instance||(this._instance=new t),this._instance},t.prototype.setGlobalPropagator=function(e){return Tu(d3,e,Di.instance())},t.prototype.inject=function(e,r,n){return n===void 0&&(n=jTe),this._getGlobalPropagator().inject(e,r,n)},t.prototype.extract=function(e,r,n){return n===void 0&&(n=FTe),this._getGlobalPropagator().extract(e,r,n)},t.prototype.fields=function(){return this._getGlobalPropagator().fields()},t.prototype.disable=function(){wu(d3,Di.instance())},t.prototype._getGlobalPropagator=function(){return to(d3)||Vyt},t})();var Fb=QTe.getInstance();var f3="trace",ewe=(function(){function t(){this._proxyTracerProvider=new a3,this.wrapSpanContext=GTe,this.isSpanContextValid=mC,this.deleteSpan=VTe,this.getSpan=pC,this.getActiveSpan=zTe,this.getSpanContext=hC,this.setSpan=Ub,this.setSpanContext=HTe}return t.getInstance=function(){return this._instance||(this._instance=new t),this._instance},t.prototype.setGlobalTracerProvider=function(e){var r=Tu(f3,this._proxyTracerProvider,Di.instance());return r&&this._proxyTracerProvider.setDelegate(e),r},t.prototype.getTracerProvider=function(){return to(f3)||this._proxyTracerProvider},t.prototype.getTracer=function(e,r){return this.getTracerProvider().getTracer(e,r)},t.prototype.disable=function(){wu(f3,Di.instance()),this._proxyTracerProvider=new a3},t})();var jb=ewe.getInstance();var Gyt=function(t,e){e.recordException(t),e.setStatus({code:oa.ERROR})};var Bf=(function(){function t(e){this._tracer=e,this.startSpan=e.startSpan.bind(this._tracer),this.startActiveSpan=e.startActiveSpan.bind(this._tracer)}return t.prototype.withActiveSpan=function(e,r,n,i){var s=twe(r,n,i),o=s.opts,a=s.ctx,c=s.fn;return this._tracer.startActiveSpan(e,o,a,function(l){return rwe(l,o,c)})},t.prototype.withSpan=function(e,r,n,i){var s=twe(r,n,i),o=s.opts,a=s.ctx,c=s.fn,l=this._tracer.startSpan(e,o,a);return rwe(l,o,c)},t})();function twe(t,e,r){var n,i,s;return!e&&!r?s=t:r?(n=t,i=e,s=r):(n=t,s=e),n=n??{},i=i??xc.active(),{opts:n,ctx:i,fn:s}}function rwe(t,e,r){var n,i=(n=e.onException)!==null&&n!==void 0?n:Gyt,s=function(a){throw i(a,t),t.end(),a};try{var o=r(t);return typeof o?.then=="function"?o.then(function(a){return t.end(),a},s):(t.end(),o)}catch(a){throw s(a)}}lW();Qe();var dT=class{emit(e){}enabled(){return!1}},mRe=new dT;var fT=Symbol.for("io.opentelemetry.js.api.logs"),Jg=globalThis;function gRe(t,e,r){return n=>n===t?e:r}var uW=1;var dW=class{getLogger(e,r,n){return new dT}},aN=new dW;var cN=class{constructor(e,r,n,i){this._provider=e,this.name=r,this.version=n,this.options=i}emit(e){this._getLogger().emit(e)}enabled(e){return this._getLogger().enabled(e)}_getLogger(){if(this._delegate)return this._delegate;let e=this._provider._getDelegateLogger(this.name,this.version,this.options);return e?(this._delegate=e,this._delegate):mRe}};var pT=class{getLogger(e,r,n){var i;return(i=this._getDelegateLogger(e,r,n))!==null&&i!==void 0?i:new cN(this,e,r,n)}_getDelegate(){var e;return(e=this._delegate)!==null&&e!==void 0?e:aN}_setDelegate(e){this._delegate=e}_getDelegateLogger(e,r,n){var i;return(i=this._delegate)===null||i===void 0?void 0:i.getLogger(e,r,n)}};var lN=class t{constructor(){this._proxyLoggerProvider=new pT}static getInstance(){return this._instance||(this._instance=new t),this._instance}setGlobalLoggerProvider(e){return Jg[fT]?this.getLoggerProvider():(Jg[fT]=gRe(uW,e,aN),this._proxyLoggerProvider._setDelegate(e),e)}getLoggerProvider(){var e,r;return(r=(e=Jg[fT])===null||e===void 0?void 0:e.call(Jg,uW))!==null&&r!==void 0?r:this._proxyLoggerProvider}getLogger(e,r,n){return this.getLoggerProvider().getLogger(e,r,n)}disable(){delete Jg[fT],this._proxyLoggerProvider=new pT}};var _Re=lN.getInstance();function yRe(t,e,r,n){for(let i=0,s=t.length;i<s;i++){let o=t[i];e&&o.setTracerProvider(e),r&&o.setMeterProvider(r),n&&o.setLoggerProvider&&o.setLoggerProvider(n),o.getConfig().enabled||o.enable()}}function SRe(t){t.forEach(e=>e.disable())}function fW(t){let e=t.tracerProvider||Or.getTracerProvider(),r=t.meterProvider||Zb.getMeterProvider(),n=t.loggerProvider||_Re.getLoggerProvider(),i=t.instrumentations?.flat()??[];return yRe(i,e,r,n),()=>{SRe(i)}}dr();var CN=Ln(IW(),1);dr();var XRe=t=>{throw TypeError(t)},NW=(t,e,r)=>e.has(t)||XRe("Cannot "+r),ON=(t,e,r)=>(NW(t,e,"read from private field"),r?r.call(t):e.get(t)),PW=(t,e,r)=>e.has(t)?XRe("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),KRe=(t,e,r,n)=>(NW(t,e,"write to private field"),n?n.call(t,r):e.set(t,r),r),gEt=(t,e,r)=>(NW(t,e,"access private method"),r),JRe="__netlify__getTracer",yEt="__netlify__shutdownTracers",SEt="__nfOTLPTrace",mT,gT,CW,QRe,EEt=class{constructor(){PW(this,CW),PW(this,mT),PW(this,gT),KRe(this,mT,new pa(gEt(this,CW,QRe),this)),KRe(this,gT,c3.createComponentLogger({namespace:"netlify-span-exporter"}))}export(t,e){if(ON(this,gT).debug(`export ${t.length.toString()} spans`),ON(this,mT).isCalled){e({code:Xt.FAILED,error:new Error("Exporter has been shutdown")});return}console.log(SEt,JSON.stringify(vEt(t))),e({code:Xt.SUCCESS})}shutdown(){return ON(this,mT).call()}};mT=new WeakMap;gT=new WeakMap;CW=new WeakSet;QRe=function(){return ON(this,gT).debug("Shutting down"),Promise.resolve()};function vEt(t){return{resourceSpans:t.map(e=>{let r=e.spanContext();return{resource:{attributes:PN(e.resource.attributes),droppedAttributesCount:e.droppedAttributesCount},scopeSpans:[{scope:{name:e.instrumentationScope.name,version:e.instrumentationScope.version},spans:[{traceId:r.traceId,spanId:r.spanId,parentSpanId:e.parentSpanContext?.spanId,name:e.name,kind:e.kind||xu.SERVER,startTimeUnixNano:OW(e.startTime),endTimeUnixNano:OW(e.endTime),attributes:PN(e.attributes),droppedAttributesCount:e.droppedAttributesCount,events:e.events.map(n=>({name:n.name,timeUnixNano:OW(n.time),attributes:PN(n.attributes??{}),droppedAttributesCount:n.droppedAttributesCount??0})),droppedEventsCount:e.droppedEventsCount,status:{code:e.status.code,message:e.status.message},links:e.links.map(n=>({spanId:n.context.spanId,traceId:n.context.traceId,attributes:PN(n.attributes??{}),droppedAttributesCount:n.droppedAttributesCount??0})),droppedLinksCount:e.droppedLinksCount}]}]}})}}function PN(t){return Object.keys(t).map(e=>eAe(e,t[e]))}function eAe(t,e){return{key:t,value:tAe(e)}}function tAe(t){let e=typeof t;return e==="string"?{stringValue:t}:e==="number"?Number.isInteger(t)?{intValue:t}:{doubleValue:t}:e==="boolean"?{boolValue:t}:t instanceof Uint8Array?{bytesValue:t}:Array.isArray(t)?{arrayValue:{values:t.map(tAe)}}:e==="object"&&t!=null?{kvlistValue:{values:Object.entries(t).map(([r,n])=>eAe(r,n))}}:{}}function OW(t){let e=BigInt(1e9);return(BigInt(Math.trunc(t[0]))*e+BigInt(Math.trunc(t[1]))).toString()}var ZRe={name:"@netlify/otel",version:"6.0.3",type:"module",engines:{node:"^18.14.0 || >=20.6.1"},main:"./dist/main.cjs",module:"./dist/main.js",types:"./dist/main.d.ts",exports:{".":{require:{types:"./dist/main.d.cts",default:"./dist/main.cjs"},import:{types:"./dist/main.d.ts",default:"./dist/main.js"},default:{types:"./dist/main.d.ts",default:"./dist/main.js"}},"./package.json":"./package.json","./bootstrap":{require:{types:"./dist/bootstrap/main.d.cts",default:"./dist/bootstrap/main.cjs"},import:{types:"./dist/bootstrap/main.d.ts",default:"./dist/bootstrap/main.js"},default:{types:"./dist/bootstrap/main.d.ts",default:"./dist/bootstrap/main.js"}},"./exporter-netlify":{require:{types:"./dist/exporters/netlify.d.cts",default:"./dist/exporters/netlify.cjs"},import:{types:"./dist/exporters/netlify.d.ts",default:"./dist/exporters/netlify.js"},default:{types:"./dist/exporters/netlify.d.ts",default:"./dist/exporters/netlify.js"}},"./instrumentation-fetch":{require:{types:"./dist/instrumentations/fetch.d.cts",default:"./dist/instrumentations/fetch.cjs"},import:{types:"./dist/instrumentations/fetch.d.ts",default:"./dist/instrumentations/fetch.js"},default:{types:"./dist/instrumentations/fetch.d.ts",default:"./dist/instrumentations/fetch.js"}},"./instrumentation-http":{require:{types:"./dist/instrumentations/http.d.cts",default:"./dist/instrumentations/http.cjs"},import:{types:"./dist/instrumentations/http.d.ts",default:"./dist/instrumentations/http.js"},default:{types:"./dist/instrumentations/http.d.ts",default:"./dist/instrumentations/http.js"}},"./opentelemetry":{require:{types:"./dist/opentelemetry.d.cts",default:"./dist/opentelemetry.cjs"},import:{types:"./dist/opentelemetry.d.ts",default:"./dist/opentelemetry.js"},default:{types:"./dist/opentelemetry.d.ts",default:"./dist/opentelemetry.js"}}},files:["dist/**/*"],scripts:{build:"tsup-node",dev:"tsup-node --watch",prepack:"npm run build",test:"run-s build test:ci","test:dev":"run-s build test:dev:*","test:ci":"run-s build test:ci:*","test:dev:vitest":"vitest","test:dev:vitest:watch":"vitest watch","test:ci:vitest":"vitest run",publint:"npx -y publint --strict"},keywords:["netlify","cdn"],license:"MIT",repository:{type:"git",url:"https://github.com/netlify/primitives.git",directory:"packages/otel"},bugs:{url:"https://github.com/netlify/primitives/issues"},author:"Netlify Inc.",devDependencies:{"@netlify/dev-utils":"^4.4.6",msw:"^2.10.5","npm-run-all2":"^7.0.2",tsup:"^8.0.0",vitest:"^3.0.0"},dependencies:{"@opentelemetry/api":"1.9.0","@opentelemetry/core":"2.7.1","@opentelemetry/instrumentation":"^0.217.0","@opentelemetry/resources":"2.7.1","@opentelemetry/sdk-trace-node":"2.7.1"}},rAe=t=>{if(Object.prototype.hasOwnProperty.call(globalThis,JRe))return;let e=_Et.version.slice(1),r=oN({"service.name":t.serviceName,"service.version":t.serviceVersion,"process.runtime.name":"nodejs","process.runtime.version":e,"deployment.environment":t.deploymentEnvironment,"http.url":t.siteUrl,"netlify.site.id":t.siteId,"netlify.site.name":t.siteName}),n=t.spanProcessors??[bEt()],i=new CN.NodeTracerProvider({resource:r,spanProcessors:n});i.register({propagator:new Nc});let s=t.instrumentations??[];fW({instrumentations:s,tracerProvider:i}),Object.defineProperty(globalThis,JRe,{enumerable:!1,configurable:!0,writable:!1,value:function(a,c){return a?new Bf(jb.getTracer(a,c)):new Bf(jb.getTracer(ZRe.name,ZRe.version))}}),Object.defineProperty(globalThis,yEt,{enumerable:!1,configurable:!0,writable:!1,value:async()=>await i.shutdown()})},bEt=()=>new CN.SimpleSpanProcessor(new EEt);dr();var _T=Ln(IW(),1);import*as NN from"diagnostics_channel";var nAe=class{constructor(t={}){this.instrumentationName="@netlify/otel/instrumentation-fetch",this.instrumentationVersion="1.0.0",this._recordFromReq=new WeakMap,this.config=t,this._channelSubs=[]}getConfig(){return this.config}setConfig(){}setMeterProvider(){}setTracerProvider(t){this.provider=t}getTracerProvider(){return this.provider}annotateFromRequest(t,e){let r=this.config.getRequestAttributes?.(e)??{},n=new URL(e.path,e.origin);t.setAttributes({...r,"http.request.method":e.method,"url.full":n.href,"url.host":n.host,"url.scheme":n.protocol.slice(0,-1),"server.address":n.hostname,"server.port":n.port,...this.prepareHeaders("request",e.headers)})}annotateFromResponse(t,e){let r=this.config.getResponseAttributes?.(e)??{};t.setAttributes({...r,"http.response.status_code":e.statusCode,...this.prepareHeaders("response",e.headers)}),t.setStatus({code:e.statusCode>=400?oa.ERROR:oa.UNSET})}prepareHeaders(t,e){if(!Array.isArray(e))return{};if(this.config.skipHeaders===!0)return{};let r=["*","/.*/"],n=this.config.skipHeaders??[],i=this.config.redactHeaders??[],s=n.some(a=>r.includes(a.toString())),o={};if(s)return o;for(let a=0;a+1<e.length;a=a+2){let c=e[a],l=e[a+1];if(typeof c!="string"&&!Buffer.isBuffer(c)||typeof l!="string"&&!Buffer.isBuffer(l))continue;let u=c.toString().toLowerCase();if(n.some(f=>typeof f=="string"?f==u:f.test(u)))continue;let d=`http.${t}.header.${u}`;i===!0||i.some(f=>typeof f=="string"?f==u:f.test(u))?o[d]="REDACTED":o[d]=l.toString()}return o}getRequestMethod(t){return["HEAD","GET","POST","PUT","PATCH","DELETE"].includes(t.toUpperCase())?t.toUpperCase():"_OTHER"}getTracer(){if(!this.provider)return;let t=this.provider.getTracer(this.instrumentationName,this.instrumentationVersion);return t instanceof Bf?t:new Bf(t)}enable(){this._channelSubs.length>0||(this.subscribe("undici:request:create",this.onRequestCreate.bind(this)),this.subscribe("undici:request:headers",this.onRequestHeaders.bind(this)),this.subscribe("undici:request:trailers",this.onRequestEnd.bind(this)),this.subscribe("undici:request:error",this.onRequestError.bind(this)))}subscribe(t,e){NN.subscribe(t,e);let r=()=>NN.unsubscribe(t,e);this._channelSubs.push({name:t,unsubscribe:r})}disable(){this._channelSubs.forEach(t=>{t.unsubscribe()}),this._channelSubs.length=0}onRequestCreate({request:t}){try{let e=this.getTracer(),r=new URL(t.path,t.origin);if(!e||t.method==="CONNECT"||this.config.skipURLs?.some(i=>typeof i=="string"?r.href.startsWith(i):i.test(r.href)))return;let n=e.startSpan(this.getRequestMethod(t.method),{kind:xu.CLIENT},xc.active());this.annotateFromRequest(n,t),this._recordFromReq.set(t,n)}catch{}}onRequestHeaders({request:t,response:e}){try{let r=this._recordFromReq.get(t);if(!r)return;this.annotateFromResponse(r,e)}catch{}}onRequestError({request:t,error:e}){try{let r=this._recordFromReq.get(t);if(!r)return;r.recordException(e),r.setStatus({code:oa.ERROR,message:e.message}),r.end(),this._recordFromReq.delete(t)}catch{}}onRequestEnd({request:t}){try{let e=this._recordFromReq.get(t);if(!e)return;e.end(),this._recordFromReq.delete(t)}catch{}}};var mke=Ln(pke(),1);var fL=Re("tracing"),hke=8e3,nCt=5e3,Ow=async(t=nCt)=>{try{await Promise.race([OTe(),rCt(t)])}catch(e){fL.warn("Failed to flush tracers on shutdown",e)}},gke=async(t,e,r)=>{if(!ft()){let n=[new _T.SimpleSpanProcessor(new g9),new _T.SimpleSpanProcessor(new mke.OTLPTraceExporter({url:r.exporterUrl}))];await rAe({serviceName:"@netlify/agent-runner-cli",serviceVersion:t,deploymentEnvironment:"production",siteUrl:"",siteId:process.env.SITE_ID??"",siteName:e,spanProcessors:n,instrumentations:[new nAe({skipHeaders:!0})]})}return r.traceparent?(Fb.setGlobalPropagator(new Nc),Fb.extract(xc.active(),{traceparent:r.traceparent,isRemote:!0})):xc.active()};function zt(t,e,r){return fL.log(`\u23F3 TRACE: ${e} starting...`),qf(t,e,r)}var g9=class{export(e,r){for(let n of e)this.logSpan(n);r({code:1})}async shutdown(){}forceFlush(){return Promise.resolve()}logSpan(e){let r=(e.endTime[0]-e.startTime[0])*1e3+(e.endTime[1]-e.startTime[1])/1e6,n=e.attributes,i=[];for(let[a,c]of Object.entries(n))a.includes("duration")&&typeof c=="number"?i.push(`${a}=${c.toFixed(2)}ms`):i.push(`${a}=${c}`);let s=e.status?.code===2?"\u274C":"\u2705",o=i.length>0?` [${i.join(", ")}]`:"";fL.log(`${s} TRACE: ${e.name} completed in ${r.toFixed(2)}ms${o}`),e.status?.code===2&&e.status.message&&fL.log(` \u274C Error: ${e.status.message}`)}};function _9(){return ut().captureLlmContentEnabled}function _ke(t){return t.includes("claude")?"anthropic":t.includes("codex")?"openai":t.includes("gemini")?"google":t.includes("opencode")?"opencode":t}function pL(t,e,r){let n={role:t,parts:[{type:"text",content:bs(e)}]};return r&&(n.finish_reason=r),JSON.stringify([n])}function yke(t,e,r,n){if(!t.length)return;let i=ft();if(!i)return;let s=_9(),o=Math.max(1,(n-r)/t.length);t.forEach((a,c)=>{let l=Math.min(n,r+c*o),u=Math.min(n,l+o),d=a.title||a.type||`step-${a.id??c}`,f=a.type==="tool_use"||a.type==="tool_result",p=a.message?a.message.length>hke?`${a.message.slice(0,hke)}\u2026`:a.message:void 0;i.startSpan(d,{startTime:l,attributes:{"gen_ai.capability.name":e,"gen_ai.step.name":d,"gen_ai.operation.name":f?"execute_tool":"chat",...f?{"gen_ai.tool.name":d}:{},"spark.step.id":a.id??-1,...a.type?{"spark.step.type":a.type}:{},...a.category?{"spark.step.category":a.category}:{},...a.groupId?{"spark.step.group_id":a.groupId}:{},...a.parentGroupId?{"spark.step.parent_group_id":a.parentGroupId}:{},...s&&p?f?{"gen_ai.tool.call.result":bs(p)}:{"gen_ai.output.messages":pL("assistant",p)}:{}}}).end(u)})}import{readdir as iCt,rm as sCt}from"fs/promises";import{join as oCt}from"path";async function Ske(t,e=[]){let n=(await iCt(t)).filter(i=>!e.includes(i));await Promise.all(n.map(i=>sCt(oCt(t,i),{recursive:!0,force:!0})))}var aCt=700,Eke=t=>t.mode==="create"&&(t.accountType===Tl||t.enforcedAICreditsRemaining!=null&&t.enforcedAICreditsRemaining<=aCt);var uCt=mL.dirname(cCt(import.meta.url)),vke=lCt(import.meta.url),dCt=mL.resolve(uCt,"scripts/scaffold.js"),fCt="scripts/scaffold.js",pCt=/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\S+/g,y9=t=>{if(t.length>=2){let e=t[0],r=t[t.length-1];if(e==='"'&&r==='"'||e==="'"&&r==="'")return t.slice(1,-1)}return t},hCt=t=>/^[A-Za-z_][A-Za-z0-9_]*=.*/.test(t),mCt=t=>{let e=y9(t);return e==="node"||e.endsWith("/node")},Qc=t=>{if(typeof t!="string")return!1;let e=t.match(pCt)||[];if(e.length<2)return!1;let r=0;for(;r<e.length&&hCt(y9(e[r]));)r+=1;if(r>=e.length||!mCt(e[r]))return!1;let n=e[r+1];return n?y9(n).includes(fCt):!1},W_=Re("create_stage"),bke="Do not run local validation or dev-server commands to check your work \u2014 specifically `tsc`, `npx tsc`, `vite build`, `vite dev`, or any equivalent build/start/test command. The build pipeline installs and validates the project automatically after your edits. Verify your changes by reading the files you edited.",gCt=`${bke}
|
|
582
582
|
|
|
583
583
|
Commands that generate or modify project files are fine to run when the task requires them \u2014 for example \`drizzle-kit generate\` to write a database migration after a schema change, or other code-generation utilities documented in the skills.`,_Ct=`${bke}
|
|
584
584
|
|
|
@@ -619,7 +619,7 @@ If you are unsure which path applies, take Path B \u2014 but if milestone 1 is c
|
|
|
619
619
|
- Add an AGENTS.md to the project root describing the project architecture, key directories, coding conventions, and any non-obvious decisions. If PLAN.md exists, point future sessions at it so they continue from the roadmap. This file is read by AI agents in future sessions to understand the project.
|
|
620
620
|
- Write .netlify/results.md addressed to the product owner: name the screens that are now live and clickable, and \u2014 if work remains \u2014 summarize the roadmap ahead and what the next session will build. Lead with what exists, not a report of limitations.
|
|
621
621
|
|
|
622
|
-
${_Ct}`,ECt="./.netlify-cache",vCt=({cwd:t=hL.cwd()}={})=>{let e=hL.env.NVM_BIN?`${hL.env.NVM_BIN}/node`:"node",r;try{let n=vke.resolve("@netlify/ts-cli/package.json"),i=mL.dirname(n),s=vke("@netlify/ts-cli/package.json");r=mL.join(i,s.bin)}catch{r=sa(t,"ts-cli")}return{nodeCmd:e,tsCliPath:r}},bCt=t=>{let e;try{if(!t)throw new Error("empty response");e=JSON.parse(t)}catch(r){return W_.error("Failed to parse template list from ts-cli",{raw:t,error:r.message}),
|
|
622
|
+
${_Ct}`,ECt="./.netlify-cache",vCt=({cwd:t=hL.cwd()}={})=>{let e=hL.env.NVM_BIN?`${hL.env.NVM_BIN}/node`:"node",r;try{let n=vke.resolve("@netlify/ts-cli/package.json"),i=mL.dirname(n),s=vke("@netlify/ts-cli/package.json");r=mL.join(i,s.bin)}catch{r=sa(t,"ts-cli")}return{nodeCmd:e,tsCliPath:r}},bCt=t=>{let e;try{if(!t)throw new Error("empty response");e=JSON.parse(t)}catch(r){return W_.error("Failed to parse template list from ts-cli",{raw:t,error:r.message}),Ie.inc("context.degraded",1,{component:"templates"}),[]}return e.filter(r=>r.type==="example").map(r=>{let{type:n,...i}=r;return i})},TCt=({templates:t,nodeCmd:e,scaffoldScriptPath:r,budgetConstrained:n=!1})=>{let i=JSON.stringify(t.map(({id:c,name:l,description:u})=>({id:c,name:l,description:u})),null,2),s=t.length>0?`## Available Templates
|
|
623
623
|
|
|
624
624
|
Start with one of the following templates by using the Bash command below, unless there's a strong reason to start from scratch based on the users prompt.
|
|
625
625
|
|
|
@@ -635,14 +635,14 @@ NETLIFY_BUILD_BASE="\${NETLIFY_BUILD_BASE:-${ECt}}" ${e} ${r} <template-id> [--p
|
|
|
635
635
|
|
|
636
636
|
Replace \`<template-id>\` with the matching template \`id\`. Include \`--package-manager\` only if the user specified one. The templates can include relevant agent skills. The \`NETLIFY_BUILD_BASE=\u2026\` prefix lets the scaffold use a local template mirror if the platform set one \u2014 leave it as-is. Follow the instructions printed by the scaffold command.`:"",o="You are creating a new Netlify project to fulfill the user's request. The project directory is currently empty.";return(n?[o,SCt,s]:[o,s,yCt]).filter(Boolean).join(`
|
|
637
637
|
|
|
638
|
-
`)},Tke=async({config:t,cwd:e=hL.cwd()})=>await zt(ft(),"create-stage",async r=>{let n=performance.now();r?.setAttributes({"create.runner":t.runner,"create.id":t.id,"create.sessionId":t.sessionId}),await Ske(e,[".netlify",".git","node_modules"]),W_.info("Cleaned cwd folder");let{nodeCmd:i,tsCliPath:s}=vCt({cwd:e}),o=[];if(s){let u=[s,"--list-addons-json"];W_.log(`Running ${i} ${u.join(" ")}`);let{stdout:d}=await Li(i,u);o=bCt(d),W_.info("Retrieved add-ons")}else W_.warn("ts-cli binary not resolved; create-mode prompt will omit template section"),
|
|
638
|
+
`)},Tke=async({config:t,cwd:e=hL.cwd()})=>await zt(ft(),"create-stage",async r=>{let n=performance.now();r?.setAttributes({"create.runner":t.runner,"create.id":t.id,"create.sessionId":t.sessionId}),await Ske(e,[".netlify",".git","node_modules"]),W_.info("Cleaned cwd folder");let{nodeCmd:i,tsCliPath:s}=vCt({cwd:e}),o=[];if(s){let u=[s,"--list-addons-json"];W_.log(`Running ${i} ${u.join(" ")}`);let{stdout:d}=await Li(i,u);o=bCt(d),W_.info("Retrieved add-ons")}else W_.warn("ts-cli binary not resolved; create-mode prompt will omit template section"),Ie.inc("context.degraded",1,{component:"templates"});let a=ut().creditWrapUpEnabled&&Eke(t);a&&W_.log("Budget-constrained create run \u2014 using plan + first-milestone instructions",{accountType:t.accountType,enforcedAICreditsRemaining:t.enforcedAICreditsRemaining}),Ie.inc("create.budget_constrained",1,{constrained:a});let c=TCt({templates:o,nodeCmd:i,scaffoldScriptPath:dCt,budgetConstrained:a}),l=performance.now()-n;return r?.setAttributes({"create.duration.ms":l,"create.status":"success","create.budget_constrained":a}),{additionalContext:c}});var el={Task:{name:"Task",category:ie.Task},Agent:{name:"Task",category:ie.Task},SendMessage:{name:"Message agent",category:ie.Task},TaskOutput:{name:"Get task output",category:ie.Task},TaskStop:{name:"Stop task",category:ie.Task},TaskCreate:{name:"Update task list",category:ie.Todo},TaskUpdate:{name:"Update task list",category:ie.Todo},TaskList:{name:"Read task list",category:ie.Todo},TaskGet:{name:"Read task list",category:ie.Todo},ToolSearch:{name:"Load tools",category:ie.Explore},Skill:{name:"Use skill",category:ie.Skill},EnterPlanMode:{name:"Start planning",category:ie.Plan},ListMcpResources:{name:"List resources",category:ie.Explore},ReadMcpResource:{name:"Read resource",category:ie.Explore},Bash:{name:"Run command",category:ie.RunCommand},Glob:{name:"Find files",category:ie.Explore},Grep:{name:"Search files",category:ie.Explore},LS:{name:"List directory",category:ie.Explore},ExitPlanMode:{name:"Exit planning",category:ie.Plan},Read:{name:"Read file",category:ie.FileRead},Edit:{name:"Edit file",category:ie.FileWrite},MultiEdit:{name:"Edit multiple files",category:ie.FileWrite},Write:{name:"Edit file",category:ie.FileWrite},NotebookEdit:{name:"Edit notebook",category:ie.Notebook},WebFetch:{name:"Fetch web",category:ie.Web},TodoWrite:{name:"Update task list",category:ie.Todo},WebSearch:{name:"Search web",category:ie.Web},BashOutput:{name:"Get command output",category:ie.RunCommand},KillBash:{name:"Stop command",category:ie.RunCommand}},Cw=t=>{if(el[t])return el[t].name;let e=t.match(/^mcp__(.+?)__(.+)$/);return e?`${e[2].replace(/_/g," ")} (${e[1]})`:t},S9=t=>t==="Task"||t==="Agent",wke=t=>{let[e=""]=t.split(`
|
|
639
639
|
`,1);return/^(Async agent launched successfully|Agent launched in background)/.test(e)||/\(internal ID:?\s*[\w./-]+\)/i.test(e)},Rke=new Set(["SendMessage","ToolSearch","TaskList","TaskGet","EnterPlanMode","TaskStop"]);var xn=Re("runner_claude"),gL="Claude Code",xke="claude-opus-4-8",RCt={[Tl]:"claude-sonnet-5"},ACt=({catchError:t,runCmd:e,error:r,result:n,runnerName:i})=>(xn.log(`${i} command completed with catch handler triggered`,{hadExistingError:!!r,hadExistingResult:!!n,resultLength:n?n.length:0,catchError:t?.message||"No error object",processExitCode:e.exitCode,processKilled:e.killed}),n?(xn.log("Preserving existing result despite catch handler being triggered"),r?{error:r,result:n}:{error:"Process completed with errors but result was captured",result:n}):(xn.log("Setting result to undefined because no valid result was captured"),{error:r||`${i} failed`,result:void 0}));async function Ike({aiGateway:t,config:e,model:r}){let n=r;if(t)if(e.modelVersionOverrides?.claude){let i=e.modelVersionOverrides?.claude?.[e.accountType];if(i){if(!await t.isModelAvailableForProvider("anthropic",i))throw new Error(`Model override '${i}' is not available for anthropic provider`);n=i}}else if(r){if(!await t.isModelAvailableForProvider("anthropic",r))throw new Error(`Model '${r}' is not available for anthropic provider`)}else{let i=RCt[e.accountType],s=i||xke;!!s&&await t.isModelAvailableForProvider("anthropic",s)?(xn.log(`Using ${i?"account override":"default"} model: ${s}`),n=s):s&&xn.log(`Model ${s} is not available, proceeding without model specification`)}return n}function Pke({aiGateway:t}){if(t){let{token:e,url:r}=t;if(!e||!r)throw new Error("No token or url provided from AI Gateway");return{...K_.env,ANTHROPIC_API_KEY:e,ANTHROPIC_BASE_URL:r}}if(!K_.env.ANTHROPIC_API_KEY)throw new Error("ANTHROPIC_API_KEY is not provided");return{...K_.env}}async function xCt(){let t=Nw.join(K_.cwd(),"AGENTS.md");try{await Y_.access(t)}catch{return}let e=Nw.join(K_.cwd(),"CLAUDE.local.md"),r="@AGENTS.md";try{if((await Y_.readFile(e,"utf-8")).includes(r))return;await Y_.appendFile(e,`
|
|
640
640
|
${r}
|
|
641
641
|
`)}catch{await Y_.writeFile(e,`${r}
|
|
642
642
|
`)}xn.log("Added @AGENTS.md import to CLAUDE.local.md")}async function E9({config:t,netlify:e,persistSteps:r,aiGateway:n,continueSession:i,priorAgentSessionId:s,cwd:o=K_.cwd(),abortSignal:a,onSessionId:c,effortOverride:l}){let u=t,{prompt:d}=u,{model:f}=t,p="";await xCt();let h=Pke({aiGateway:n}),m=await Ike({config:t,aiGateway:n,model:f}),_=[],y=[],v={},S=new Set,g=[],w=D=>D?.match(/task\s+#([\w-]+)\s+created/i)?.[1],P=D=>{if(typeof D=="string")return D;if(Array.isArray(D))return D.filter(L=>L?.type==="text"&&typeof L.text=="string").map(L=>L.text).join(`
|
|
643
643
|
`)||void 0},x=(D,B)=>{let L=D.input||{};if(D.name==="TaskCreate"){g.push({id:w(B),subject:typeof L.subject=="string"?L.subject:"",activeForm:typeof L.activeForm=="string"?L.activeForm:void 0,status:"pending"});return}let Z=typeof L.taskId=="string"?L.taskId:void 0,ae=Z===void 0?void 0:g.find(Se=>Se.id===Z);if(!ae&&typeof L.subject=="string"){let Se=g.filter(Ge=>Ge.subject===L.subject);Se.length===1&&(ae=Se[0])}if(L.status==="deleted"){ae&&g.splice(g.indexOf(ae),1);return}if(!ae){if(Z===void 0||typeof L.subject!="string"&&typeof L.activeForm!="string")return;ae={id:Z,subject:"",status:"pending"},g.push(ae)}typeof L.status=="string"&&(ae.status=L.status),typeof L.subject=="string"&&(ae.subject=L.subject),typeof L.activeForm=="string"&&(ae.activeForm=L.activeForm)},R=()=>g.map(D=>({name:D.status==="in_progress"&&D.activeForm||D.subject,value:D.status})),O=0,A=0,b,$,C,T,I="",N="mode"in t&&t.mode==="create"&&t.accountType===Tl,j="mode"in t&&t.mode==="ask",J=ut().questionsEnabled,se=N&&!ut().creditWrapUpEnabled,Te=["ExitPlanMode","EnterPlanMode","AskUserQuestion"];se&&Te.push("TodoWrite","TaskCreate","TaskUpdate","TaskList","TaskGet"),j&&Te.push("Edit","Write","NotebookEdit","EnterWorktree","Bash(git push:*)","Bash(netlify deploy:*)");let Ne=l??(se?"low":"high"),we=sa(o,"claude");if(!we)throw new Error("Claude CLI binary not found");let re=J?await lme():void 0,ee=["--permission-mode","bypassPermissions","--dangerously-skip-permissions","--output-format","stream-json","--verbose","--disallowed-tools",Te.join(","),...re?.args??[],"--effort",Ne,...m?["--model",m]:[],...i?s?["--resume",s]:["--continue"]:[],"-p"];xn.log(`Running ${we} ${ee.join(" ")}`);let X=e.utils.run(we,ee,{all:!0,env:h,cwd:o,idleTimeout:Va,cancelSignal:a});X.stdin?.end(d);let k=wl(()=>{r?.({steps:_,duration:A})},250),G=(D,B)=>{let{wrapMessage:L,...Z}=D,ae=W0({...Z,id:O});ae.message&&(ae.message=ae.message.replace(/\n?<system-reminder>.+?<\/system-reminder>\n?/gs,"").trim(),L&&ae.message&&(ae.message=`\`\`\`
|
|
644
644
|
${ae.message}
|
|
645
|
-
\`\`\``)),O+=1,y.push(ae),_.push(ae),B||k.flush(),k(),B&&k.flush()},ue=m||xke,q=se?`Using ${gL} in low credit usage mode due to low remaining credits. Setting model to ${ue} and extra effort to low`:`Using ${gL} with ${ue}`;G({title:q,category:ie.Environment},!0);let xe=wCt.createInterface({input:X.all});xe.on("error",D=>{xn.error("Readline interface error",{error:D.message,stack:D.stack})}),xe.on("line",D=>{let B=null;try{B=JSON.parse(D)}catch{xn.log("Could not parse line",D)}B?.session_id&&B.session_id!==p&&(p=B.session_id,c?.(p)),Array.isArray(B?.message?.content)?B.message.content.forEach(L=>{switch(L.type){case"text":{if(L.text){if(L.text.startsWith("Base directory for this skill:"))break;B.message?.role!=="user"&&(I=L.text),G({message:L.text,category:B.message?.role==="user"?ie.UserMessage:ie.AgentMessage,parentGroupId:B.parent_tool_use_id||void 0})}break}case"image":{typeof L.source=="object"&&L.source&&L.source.type==="base64"&&L.source.media_type?G({message:``,category:ie.AgentMessage,parentGroupId:B.parent_tool_use_id||void 0}):xn.log(`Unsupported image type ${L.source?.type}`,L.source);break}case"tool_use":{if(L.name&&!el[L.name]&&!S.has(L.name)&&(S.add(L.name),xn.log(`Unmapped tool in stream: ${L.name}`)),S9(L.name)){let Z=L.input?.description&&`\`${L.input.description}\``;G({title:[Cw(L.name),Z].filter(Boolean).join(" "),category:el[L.name]?.category,groupId:L.id,parentGroupId:B.parent_tool_use_id||void 0})}else L.name==="Bash"&&Qc(L.input?.command)&&G({title:"Generating the site",category:ie.SiteGeneration,groupId:L.id,parentGroupId:B.parent_tool_use_id||void 0});if(L.name===gB&&L.id&&!T){let Z=cye.safeParse(L.input);Z.success?(T={questions:Z.data.questions,toolUseId:L.id},X.kill()):(xn.warn("Ignoring malformed ask tool input",{toolUseId:L.id}),
|
|
645
|
+
\`\`\``)),O+=1,y.push(ae),_.push(ae),B||k.flush(),k(),B&&k.flush()},ue=m||xke,q=se?`Using ${gL} in low credit usage mode due to low remaining credits. Setting model to ${ue} and extra effort to low`:`Using ${gL} with ${ue}`;G({title:q,category:ie.Environment},!0);let xe=wCt.createInterface({input:X.all});xe.on("error",D=>{xn.error("Readline interface error",{error:D.message,stack:D.stack})}),xe.on("line",D=>{let B=null;try{B=JSON.parse(D)}catch{xn.log("Could not parse line",D)}B?.session_id&&B.session_id!==p&&(p=B.session_id,c?.(p)),Array.isArray(B?.message?.content)?B.message.content.forEach(L=>{switch(L.type){case"text":{if(L.text){if(L.text.startsWith("Base directory for this skill:"))break;B.message?.role!=="user"&&(I=L.text),G({message:L.text,category:B.message?.role==="user"?ie.UserMessage:ie.AgentMessage,parentGroupId:B.parent_tool_use_id||void 0})}break}case"image":{typeof L.source=="object"&&L.source&&L.source.type==="base64"&&L.source.media_type?G({message:``,category:ie.AgentMessage,parentGroupId:B.parent_tool_use_id||void 0}):xn.log(`Unsupported image type ${L.source?.type}`,L.source);break}case"tool_use":{if(L.name&&!el[L.name]&&!S.has(L.name)&&(S.add(L.name),xn.log(`Unmapped tool in stream: ${L.name}`)),S9(L.name)){let Z=L.input?.description&&`\`${L.input.description}\``;G({title:[Cw(L.name),Z].filter(Boolean).join(" "),category:el[L.name]?.category,groupId:L.id,parentGroupId:B.parent_tool_use_id||void 0})}else L.name==="Bash"&&Qc(L.input?.command)&&G({title:"Generating the site",category:ie.SiteGeneration,groupId:L.id,parentGroupId:B.parent_tool_use_id||void 0});if(L.name===gB&&L.id&&!T){let Z=cye.safeParse(L.input);Z.success?(T={questions:Z.data.questions,toolUseId:L.id},X.kill()):(xn.warn("Ignoring malformed ask tool input",{toolUseId:L.id}),Ie.inc("inference.malformed_ask",1))}L.id&&(v[L.id]=L),k.flush();break}case"tool_result":{let Z=L.tool_use_id?v[L.tool_use_id]:void 0;if(Z?.name===gB)break;let ae=S9(Z?.name),Se=Z?.name==="Bash"&&Qc(Z?.input?.command);if(Z?.name==="Skill"&&Z?.input?.skill){let Ut=ko(Z.input.skill?.toString());Ga(xn,Ut),G({title:`Use ${Ut}`,category:ie.Skill,type:Z.input.skill?.toString(),parentGroupId:B.parent_tool_use_id||void 0},!0);break}if(Z?.name==="TodoWrite"){let{name:Ut,category:ar}=el.TodoWrite;G({title:Ut,category:ar,parentGroupId:B.parent_tool_use_id||void 0,tasks:B.tool_use_result?.newTodos?.map(Zt=>({name:Zt.status==="in_progress"?Zt.activeForm:Zt.content,value:Zt.status}))},!0);break}if(Z?.name==="TaskCreate"||Z?.name==="TaskUpdate"){L.is_error||x(Z,P(L.content)),G({title:Cw(Z.name),category:ie.Todo,parentGroupId:B.parent_tool_use_id||void 0,tasks:R()},!0);break}if(Z?.name&&Rke.has(Z.name)){let Ut=el[Z.name]?.category||ie.Tool,ar=Ut===ie.Todo&&g.length>0;G({title:Cw(Z.name),category:Ut===ie.Todo&&!ar?ie.Tool:Ut,parentGroupId:B.parent_tool_use_id||void 0,...ar?{tasks:R()}:{}},!0);break}let Ge=!!(Z?.name&&el[Z.name]),vt;if(!ae&&!Se&&Z){let Ut=Z.input?.file_path&&Nw.relative(o,Z.input.file_path);Ut||(Ut=Z.input?.pattern||Z.input?.command);let ar=Ut&&`\`${Ut}\``;vt=[Cw(Z.name||""),ar].filter(Boolean).join(" ")}else!ae&&!Se&&!Z&&(vt="Tool result");let oe=["Bash","Glob","Grep","LS","Read","Edit","Write","TaskOutput"].includes(Z?.name||"")||!ae&&!Se&&!Ge,Me=B.parent_tool_use_id||void 0;!Me&&(ae||Se)&&(Me=L.tool_use_id);let Tt,yt=ae&&B.tool_use_result?.content||L.content;if(typeof yt=="string")Tt=yt;else if(Array.isArray(yt)){let Ut=[];yt.forEach(ar=>{ar?.type==="text"&&typeof ar.text=="string"?Ut.push(ar.text):ar?.type==="image"&&typeof ar.source=="object"&&ar.source?ar.source.type==="base64"&&ar.source.media_type?Ut.push(``):xn.log(`Unsupported image type ${ar.source.type}`,ar.source):xn.log(`Unsupported block type ${ar?.type}`)}),Tt=Ut.join(`
|
|
646
646
|
|
|
647
647
|
`)}if(ae&&Tt&&wke(Tt)){G({title:"Running in background",category:ie.Task,parentGroupId:Me},!0);break}G({title:vt,message:Tt,wrapMessage:oe,category:ae?ie.AgentMessage:Se?ie.SiteGeneration:el[Z?.name??""]?.category||ie.Tool,parentGroupId:Me},!0);break}case"thinking":{L.thinking&&G({title:"Reasoning",message:L.thinking,category:ie.Reasoning,parentGroupId:B.parent_tool_use_id||void 0},!0);break}default:xn.log(`Message content type is not supported ${L.type}`,L)}}):B?.type==="result"&&(A=B.duration_ms||0,B.is_error?T||($=B.result):b=B.result,B.usage&&(hu(B.usage),C=B.usage),[y,_].forEach(L=>{L[L.length-1]?.message===b&&L.pop()}))});let W=!1;if(await X.catch(D=>{W=Hm(D,a),{error:$,result:b}=ACt({catchError:D,runCmd:X,error:$,result:b,runnerName:"Claude"})}),re&&await Y_.rm(re.mcpConfigPath,{force:!0}).catch(()=>{}),xe.close(),k.flush(),T)return{steps:y,duration:A,agentSessionId:p,resolvedModel:m,effort:Ne,usage:C,pendingInteraction:T};let M=W;return M&&(!b&&I.trim()&&(b=I.trim()),$=void 0),{steps:y,duration:A,result:await mu({initialResult:b,agentName:gL,hasError:!!$}),error:gu({error:$,agentName:gL}),isRetryableError:_u($),isProviderUnavailableError:yu($),agentSessionId:p,resolvedModel:m,effort:Ne,usage:C,...M?{aborted:!0}:{}}}var Oke=async()=>{let t=Nw.join(Ake.homedir(),".claude");await Y_.rm(t,{recursive:!0,force:!0})},Cke={baseDir:Nw.join(Ake.homedir(),".claude"),include:["projects"]},Nke=async({aiGateway:t,config:e,model:r,prompt:n,systemPrompt:i,outputFormat:s,maxTokens:o})=>{let a=Pke({aiGateway:t}),c=await Ike({config:e,aiGateway:t,model:r});if(!c)throw new Error("Model is required");let u=await new Ko({apiKey:a.ANTHROPIC_API_KEY,...a.ANTHROPIC_BASE_URL?{baseURL:a.ANTHROPIC_BASE_URL}:{}}).messages.create({max_tokens:o||4096,model:c,system:i,messages:[{role:"user",content:n}],...s&&{output_config:{format:s}}}),d=u.content.map(f=>"text"in f&&f.text).filter(Boolean).join("");return{response:u,text:d}};import t0 from"fs/promises";import GL from"os";import zy from"path";import _d from"process";import XNt from"readline";function De(t,e,r,n,i){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?i.call(t,r):i?i.value=r:e.set(t,r),r}function H(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)}var v9=function(){let{crypto:t}=globalThis;if(t?.randomUUID)return v9=t.randomUUID.bind(t),t.randomUUID();let e=new Uint8Array(1),r=t?()=>t.getRandomValues(e)[0]:()=>Math.random()*255&255;return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,n=>(+n^r()&15>>+n/4).toString(16))};function kw(t){return typeof t=="object"&&t!==null&&("name"in t&&t.name==="AbortError"||"message"in t&&String(t.message).includes("FetchRequestCanceledException"))}var $w=t=>{if(t instanceof Error)return t;if(typeof t=="object"&&t!==null){try{if(Object.prototype.toString.call(t)==="[object Error]"){let e=new Error(t.message,t.cause?{cause:t.cause}:{});return t.stack&&(e.stack=t.stack),t.cause&&!e.cause&&(e.cause=t.cause),t.name&&(e.name=t.name),e}}catch{}try{return new Error(JSON.stringify(t))}catch{}}return new Error(t)};var be=class extends Error{},fr=class t extends be{constructor(e,r,n,i){super(`${t.makeMessage(e,r,n)}`),this.status=e,this.headers=i,this.requestID=i?.get("x-request-id"),this.error=r;let s=r;this.code=s?.code,this.param=s?.param,this.type=s?.type}static makeMessage(e,r,n){let i=r?.message?typeof r.message=="string"?r.message:JSON.stringify(r.message):r?JSON.stringify(r):n;return e&&i?`${e} ${i}`:e?`${e} status code (no body)`:i||"(no status code or body)"}static generate(e,r,n,i){if(!e||!i)return new ed({message:n,cause:$w(r)});let s=r?.error;return e===400?new J_(e,s,n,i):e===401?new Z_(e,s,n,i):e===403?new X_(e,s,n,i):e===404?new Q_(e,s,n,i):e===409?new ey(e,s,n,i):e===422?new ty(e,s,n,i):e===429?new ry(e,s,n,i):e>=500?new ny(e,s,n,i):new t(e,s,n,i)}},Ar=class extends fr{constructor({message:e}={}){super(void 0,void 0,e||"Request was aborted.",void 0)}},ed=class extends fr{constructor({message:e,cause:r}){super(void 0,void 0,e||"Connection error.",void 0),r&&(this.cause=r)}},td=class extends ed{constructor({message:e}={}){super({message:e??"Request timed out."})}},J_=class extends fr{},Z_=class extends fr{},X_=class extends fr{},Q_=class extends fr{},ey=class extends fr{},ty=class extends fr{},ry=class extends fr{},ny=class extends fr{},iy=class extends be{constructor(){super("Could not parse response content as the length limit was reached")}},sy=class extends be{constructor(){super("Could not parse response content as the request was rejected by the content filter")}},Ca=class extends Error{constructor(e){super(e)}},Rp=class extends fr{constructor(e,r,n){let i="OAuth2 authentication error",s;if(r&&typeof r=="object"){let o=r;s=o.error;let a=o.error_description;a&&typeof a=="string"?i=a:s&&(i=s)}super(e,r,i,n),this.error_code=s}},Lw=class extends be{constructor(e,r,n){super(e),this.provider=r,this.cause=n}};var PCt=/^[a-z][a-z0-9+.-]*:/i,kke=t=>PCt.test(t),In=t=>(In=Array.isArray,In(t)),b9=In;function T9(t){return typeof t!="object"?{}:t??{}}function w9(t){if(!t)return!0;for(let e in t)return!1;return!0}function $ke(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function Dw(t){return t!=null&&typeof t=="object"&&!Array.isArray(t)}var Lke=(t,e)=>{if(typeof e!="number"||!Number.isInteger(e))throw new be(`${t} must be an integer`);if(e<0)throw new be(`${t} must be a positive integer`);return e};var Dke=t=>{try{return JSON.parse(t)}catch{return}};var Na=t=>new Promise(e=>setTimeout(e,t));var rd="6.34.0";var jke=()=>typeof window<"u"&&typeof window.document<"u"&&typeof navigator<"u";function OCt(){return typeof Deno<"u"&&Deno.build!=null?"deno":typeof EdgeRuntime<"u"?"edge":Object.prototype.toString.call(typeof globalThis.process<"u"?globalThis.process:0)==="[object process]"?"node":"unknown"}var CCt=()=>{let t=OCt();if(t==="deno")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":rd,"X-Stainless-OS":Uke(Deno.build.os),"X-Stainless-Arch":Mke(Deno.build.arch),"X-Stainless-Runtime":"deno","X-Stainless-Runtime-Version":typeof Deno.version=="string"?Deno.version:Deno.version?.deno??"unknown"};if(typeof EdgeRuntime<"u")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":rd,"X-Stainless-OS":"Unknown","X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":"edge","X-Stainless-Runtime-Version":globalThis.process.version};if(t==="node")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":rd,"X-Stainless-OS":Uke(globalThis.process.platform??"unknown"),"X-Stainless-Arch":Mke(globalThis.process.arch??"unknown"),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":globalThis.process.version??"unknown"};let e=NCt();return e?{"X-Stainless-Lang":"js","X-Stainless-Package-Version":rd,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${e.browser}`,"X-Stainless-Runtime-Version":e.version}:{"X-Stainless-Lang":"js","X-Stainless-Package-Version":rd,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}};function NCt(){if(typeof navigator>"u"||!navigator)return null;let t=[{key:"edge",pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"chrome",pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"firefox",pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"safari",pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}];for(let{key:e,pattern:r}of t){let n=r.exec(navigator.userAgent);if(n){let i=n[1]||0,s=n[2]||0,o=n[3]||0;return{browser:e,version:`${i}.${s}.${o}`}}}return null}var Mke=t=>t==="x32"?"x32":t==="x86_64"||t==="x64"?"x64":t==="arm"?"arm":t==="aarch64"||t==="arm64"?"arm64":t?`other:${t}`:"unknown",Uke=t=>(t=t.toLowerCase(),t.includes("ios")?"iOS":t==="android"?"Android":t==="darwin"?"MacOS":t==="win32"?"Windows":t==="freebsd"?"FreeBSD":t==="openbsd"?"OpenBSD":t==="linux"?"Linux":t?`Other:${t}`:"Unknown"),Fke,qke=()=>Fke??(Fke=CCt());function _L(){if(typeof fetch<"u")return fetch;throw new Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new OpenAI({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}function R9(...t){let e=globalThis.ReadableStream;if(typeof e>"u")throw new Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new e(...t)}function yL(t){let e=Symbol.asyncIterator in t?t[Symbol.asyncIterator]():t[Symbol.iterator]();return R9({start(){},async pull(r){let{done:n,value:i}=await e.next();n?r.close():r.enqueue(i)},async cancel(){await e.return?.()}})}function A9(t){if(t[Symbol.asyncIterator])return t;let e=t.getReader();return{async next(){try{let r=await e.read();return r?.done&&e.releaseLock(),r}catch(r){throw e.releaseLock(),r}},async return(){let r=e.cancel();return e.releaseLock(),await r,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}async function x9(t){if(t===null||typeof t!="object")return;if(t[Symbol.asyncIterator]){await t[Symbol.asyncIterator]().return?.();return}let e=t.getReader(),r=e.cancel();e.releaseLock(),await r}var zke=({headers:t,body:e})=>({bodyHeaders:{"content-type":"application/json"},body:JSON.stringify(e)});var I9="RFC3986",P9=t=>String(t),O9={RFC1738:t=>String(t).replace(/%20/g,"+"),RFC3986:P9},Vke="RFC1738";var SL=(t,e)=>(SL=Object.hasOwn??Function.prototype.call.bind(Object.prototype.hasOwnProperty),SL(t,e)),ka=(()=>{let t=[];for(let e=0;e<256;++e)t.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return t})();var C9=1024,Hke=(t,e,r,n,i)=>{if(t.length===0)return t;let s=t;if(typeof t=="symbol"?s=Symbol.prototype.toString.call(t):typeof t!="string"&&(s=String(t)),r==="iso-8859-1")return escape(s).replace(/%u[0-9a-f]{4}/gi,function(a){return"%26%23"+parseInt(a.slice(2),16)+"%3B"});let o="";for(let a=0;a<s.length;a+=C9){let c=s.length>=C9?s.slice(a,a+C9):s,l=[];for(let u=0;u<c.length;++u){let d=c.charCodeAt(u);if(d===45||d===46||d===95||d===126||d>=48&&d<=57||d>=65&&d<=90||d>=97&&d<=122||i===Vke&&(d===40||d===41)){l[l.length]=c.charAt(u);continue}if(d<128){l[l.length]=ka[d];continue}if(d<2048){l[l.length]=ka[192|d>>6]+ka[128|d&63];continue}if(d<55296||d>=57344){l[l.length]=ka[224|d>>12]+ka[128|d>>6&63]+ka[128|d&63];continue}u+=1,d=65536+((d&1023)<<10|c.charCodeAt(u)&1023),l[l.length]=ka[240|d>>18]+ka[128|d>>12&63]+ka[128|d>>6&63]+ka[128|d&63]}o+=l.join("")}return o};function Gke(t){return!t||typeof t!="object"?!1:!!(t.constructor&&t.constructor.isBuffer&&t.constructor.isBuffer(t))}function N9(t,e){if(In(t)){let r=[];for(let n=0;n<t.length;n+=1)r.push(e(t[n]));return r}return e(t)}var Yke={brackets(t){return String(t)+"[]"},comma:"comma",indices(t,e){return String(t)+"["+e+"]"},repeat(t){return String(t)}},Kke=function(t,e){Array.prototype.push.apply(t,In(e)?e:[e])},Wke,kr={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:Hke,encodeValuesOnly:!1,format:I9,formatter:P9,indices:!1,serializeDate(t){return(Wke??(Wke=Function.prototype.call.bind(Date.prototype.toISOString)))(t)},skipNulls:!1,strictNullHandling:!1};function $Ct(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"||typeof t=="symbol"||typeof t=="bigint"}var k9={};function Jke(t,e,r,n,i,s,o,a,c,l,u,d,f,p,h,m,_,y){let v=t,S=y,g=0,w=!1;for(;(S=S.get(k9))!==void 0&&!w;){let A=S.get(t);if(g+=1,typeof A<"u"){if(A===g)throw new RangeError("Cyclic object value");w=!0}typeof S.get(k9)>"u"&&(g=0)}if(typeof l=="function"?v=l(e,v):v instanceof Date?v=f?.(v):r==="comma"&&In(v)&&(v=N9(v,function(A){return A instanceof Date?f?.(A):A})),v===null){if(s)return c&&!m?c(e,kr.encoder,_,"key",p):e;v=""}if($Ct(v)||Gke(v)){if(c){let A=m?e:c(e,kr.encoder,_,"key",p);return[h?.(A)+"="+h?.(c(v,kr.encoder,_,"value",p))]}return[h?.(e)+"="+h?.(String(v))]}let P=[];if(typeof v>"u")return P;let x;if(r==="comma"&&In(v))m&&c&&(v=N9(v,c)),x=[{value:v.length>0?v.join(",")||null:void 0}];else if(In(l))x=l;else{let A=Object.keys(v);x=u?A.sort(u):A}let R=a?String(e).replace(/\./g,"%2E"):String(e),O=n&&In(v)&&v.length===1?R+"[]":R;if(i&&In(v)&&v.length===0)return O+"[]";for(let A=0;A<x.length;++A){let b=x[A],$=typeof b=="object"&&typeof b.value<"u"?b.value:v[b];if(o&&$===null)continue;let C=d&&a?b.replace(/\./g,"%2E"):b,T=In(v)?typeof r=="function"?r(O,C):O:O+(d?"."+C:"["+C+"]");y.set(t,g);let I=new WeakMap;I.set(k9,y),Kke(P,Jke($,T,r,n,i,s,o,a,r==="comma"&&m&&In(v)?null:c,l,u,d,f,p,h,m,_,I))}return P}function LCt(t=kr){if(typeof t.allowEmptyArrays<"u"&&typeof t.allowEmptyArrays!="boolean")throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(typeof t.encodeDotInKeys<"u"&&typeof t.encodeDotInKeys!="boolean")throw new TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");if(t.encoder!==null&&typeof t.encoder<"u"&&typeof t.encoder!="function")throw new TypeError("Encoder has to be a function.");let e=t.charset||kr.charset;if(typeof t.charset<"u"&&t.charset!=="utf-8"&&t.charset!=="iso-8859-1")throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");let r=I9;if(typeof t.format<"u"){if(!SL(O9,t.format))throw new TypeError("Unknown format option provided.");r=t.format}let n=O9[r],i=kr.filter;(typeof t.filter=="function"||In(t.filter))&&(i=t.filter);let s;if(t.arrayFormat&&t.arrayFormat in Yke?s=t.arrayFormat:"indices"in t?s=t.indices?"indices":"repeat":s=kr.arrayFormat,"commaRoundTrip"in t&&typeof t.commaRoundTrip!="boolean")throw new TypeError("`commaRoundTrip` must be a boolean, or absent");let o=typeof t.allowDots>"u"?t.encodeDotInKeys?!0:kr.allowDots:!!t.allowDots;return{addQueryPrefix:typeof t.addQueryPrefix=="boolean"?t.addQueryPrefix:kr.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof t.allowEmptyArrays=="boolean"?!!t.allowEmptyArrays:kr.allowEmptyArrays,arrayFormat:s,charset:e,charsetSentinel:typeof t.charsetSentinel=="boolean"?t.charsetSentinel:kr.charsetSentinel,commaRoundTrip:!!t.commaRoundTrip,delimiter:typeof t.delimiter>"u"?kr.delimiter:t.delimiter,encode:typeof t.encode=="boolean"?t.encode:kr.encode,encodeDotInKeys:typeof t.encodeDotInKeys=="boolean"?t.encodeDotInKeys:kr.encodeDotInKeys,encoder:typeof t.encoder=="function"?t.encoder:kr.encoder,encodeValuesOnly:typeof t.encodeValuesOnly=="boolean"?t.encodeValuesOnly:kr.encodeValuesOnly,filter:i,format:r,formatter:n,serializeDate:typeof t.serializeDate=="function"?t.serializeDate:kr.serializeDate,skipNulls:typeof t.skipNulls=="boolean"?t.skipNulls:kr.skipNulls,sort:typeof t.sort=="function"?t.sort:null,strictNullHandling:typeof t.strictNullHandling=="boolean"?t.strictNullHandling:kr.strictNullHandling}}function Zke(t,e={}){let r=t,n=LCt(e),i,s;typeof n.filter=="function"?(s=n.filter,r=s("",r)):In(n.filter)&&(s=n.filter,i=s);let o=[];if(typeof r!="object"||r===null)return"";let a=Yke[n.arrayFormat],c=a==="comma"&&n.commaRoundTrip;i||(i=Object.keys(r)),n.sort&&i.sort(n.sort);let l=new WeakMap;for(let f=0;f<i.length;++f){let p=i[f];n.skipNulls&&r[p]===null||Kke(o,Jke(r[p],p,a,c,n.allowEmptyArrays,n.strictNullHandling,n.skipNulls,n.encodeDotInKeys,n.encode?n.encoder:null,n.filter,n.sort,n.allowDots,n.serializeDate,n.format,n.formatter,n.encodeValuesOnly,n.charset,l))}let u=o.join(n.delimiter),d=n.addQueryPrefix===!0?"?":"";return n.charsetSentinel&&(n.charset==="iso-8859-1"?d+="utf8=%26%2310003%3B&":d+="utf8=%E2%9C%93&"),u.length>0?d+u:""}function Xke(t){return Zke(t,{arrayFormat:"brackets"})}function t$e(t){let e=0;for(let i of t)e+=i.length;let r=new Uint8Array(e),n=0;for(let i of t)r.set(i,n),n+=i.length;return r}var Qke;function oy(t){let e;return(Qke??(e=new globalThis.TextEncoder,Qke=e.encode.bind(e)))(t)}var e$e;function $9(t){let e;return(e$e??(e=new globalThis.TextDecoder,e$e=e.decode.bind(e)))(t)}var Wi,Yi,Ap=class{constructor(){Wi.set(this,void 0),Yi.set(this,void 0),De(this,Wi,new Uint8Array,"f"),De(this,Yi,null,"f")}decode(e){if(e==null)return[];let r=e instanceof ArrayBuffer?new Uint8Array(e):typeof e=="string"?oy(e):e;De(this,Wi,t$e([H(this,Wi,"f"),r]),"f");let n=[],i;for(;(i=MCt(H(this,Wi,"f"),H(this,Yi,"f")))!=null;){if(i.carriage&&H(this,Yi,"f")==null){De(this,Yi,i.index,"f");continue}if(H(this,Yi,"f")!=null&&(i.index!==H(this,Yi,"f")+1||i.carriage)){n.push($9(H(this,Wi,"f").subarray(0,H(this,Yi,"f")-1))),De(this,Wi,H(this,Wi,"f").subarray(H(this,Yi,"f")),"f"),De(this,Yi,null,"f");continue}let s=H(this,Yi,"f")!==null?i.preceding-1:i.preceding,o=$9(H(this,Wi,"f").subarray(0,s));n.push(o),De(this,Wi,H(this,Wi,"f").subarray(i.index),"f"),De(this,Yi,null,"f")}return n}flush(){return H(this,Wi,"f").length?this.decode(`
|
|
648
648
|
`):[]}};Wi=new WeakMap,Yi=new WeakMap;Ap.NEWLINE_CHARS=new Set([`
|
|
@@ -691,7 +691,7 @@ ${o.trim()}
|
|
|
691
691
|
\`\`\``),{title:n,message:o,category:i}},q$e=async({aiGateway:t,config:e,model:r,prompt:n,systemPrompt:i="",outputFormat:s,maxTokens:o=4096})=>{M$e({aiGateway:t});let a=await D$e({config:e,aiGateway:t,model:r});if(!a)throw new Error("Model is required");let l=await new qe().responses.parse({model:a,max_output_tokens:o,input:[...i?[{role:"system",content:i}]:[],{role:"user",content:n}],...s&&{text:{format:{...s,name:"output"}}}});return{response:l,text:l.output_text}};import Jp from"fs/promises";import i0 from"os";import yd from"path";import Vy from"process";import ckt from"readline";import r0 from"fs/promises";import ikt from"os";import WL from"path";var B$e=Re("gemini_session"),skt=t=>t instanceof Error?t.message:String(t),okt=t=>{let e=!1;if(Array.isArray(t?.toolCalls))for(let n of t.toolCalls)n&&typeof n=="object"&&"id"in n&&(delete n.id,e=!0);let r=typeof t?.content=="object"?t.content?.parts:void 0;if(Array.isArray(r))for(let n of r)n?.functionCall&&typeof n.functionCall=="object"&&"id"in n.functionCall&&(delete n.functionCall.id,e=!0);return e},akt=async t=>{let r=(await r0.readFile(t,"utf8")).split(`
|
|
692
692
|
`),n=!1,i=r.map(s=>{if(!s.trim())return s;let o;try{o=JSON.parse(s)}catch{return s}return okt(o)?(n=!0,JSON.stringify(o)):s});return n&&await r0.writeFile(t,i.join(`
|
|
693
693
|
`),"utf8"),n},uJ=async(t,e=WL.join(ikt.homedir(),".gemini"))=>{let r=WL.join(e,"tmp"),n=t.slice(0,8),i;try{i=await r0.readdir(r)}catch{return}for(let s of i){let o=WL.join(r,s,"chats"),a;try{a=await r0.readdir(o)}catch{continue}for(let c of a){if(!c.endsWith(".jsonl")||!c.includes(n))continue;let l=WL.join(o,c);try{let u=(await r0.readFile(l,"utf8")).split(`
|
|
694
|
-
`,1)[0];if(JSON.parse(u).sessionId===t)return l}catch{continue}}}},n0=async t=>{try{let e=await uJ(t);return e?(await akt(e),!0):(B$e.log(`No gemini session file for ${t}; not resumable, using fresh session`),!1)}catch(e){return B$e.warn(`Could not sanitize gemini session ${t} for resume; using fresh session`,{error:skt(e)}),!1}};var Ji=Re("runner_gemini"),dJ="Gemini CLI",Hy="gemini-3.5-flash",lkt=({catchError:t,runCmd:e,error:r,result:n,runnerName:i})=>(Ji.log(`${i} command completed with catch handler triggered`,{hadExistingError:!!r,hadExistingResult:!!n,resultLength:n?n.length:0,catchError:t?.message||"No error object",processExitCode:e.exitCode,processKilled:e.killed}),n?(Ji.log("Preserving existing result despite catch handler being triggered"),r?{error:r,result:n}:{error:"Process completed with errors but result was captured",result:n}):(Ji.log("Setting result to undefined because no valid result was captured"),{error:r||`${i} failed`,result:void 0})),z$e={list_directory:{name:"List directory",category:ie.Explore},read_file:{name:"Read file",category:ie.FileRead},write_file:{name:"Edit file",category:ie.FileWrite},glob:{name:"Find files",category:ie.Explore},search_file_content:{name:"Search files",category:ie.Explore},replace:{name:"Edit file",category:ie.FileWrite},run_shell_command:{name:"Run command",category:ie.RunCommand},web_fetch:{name:"Fetch web",category:ie.Web},web_search:{name:"Search web",category:ie.Web},google_web_search:{name:"Search web",category:ie.Web},update_topic:{name:"Update topic",category:ie.Plan},read_many_files:{name:"Read files",category:ie.FileRead},save_memory:{name:"Memorize",category:ie.Memorize},activate_skill:{name:"Use Skill",category:ie.Skill},grep_search:{name:"Search files",category:ie.Explore}},ukt=async()=>{let t=yd.join(i0.homedir(),".gemini"),e=yd.join(t,"settings.json");try{await Jp.mkdir(t,{recursive:!0});let r={};try{let n=await Jp.readFile(e,"utf-8");r=JSON.parse(n)}catch{Ji.log("Creating new Gemini CLI settings file")}r.general||(r.general={}),r.general.previewFeatures||(r.general.previewFeatures=!0),r.model||(r.model={}),r.model.compressionThreshold!==.3&&(r.model.compressionThreshold=.3),r.skills||(r.skills={}),r.skills.enabled=!0,r.context||(r.context={}),r.context.fileName=["GEMINI.md","AGENTS.md"],await Jp.writeFile(e,JSON.stringify(r,null,2),"utf-8"),Ji.log("Configured Gemini CLI settings (preview features and compression threshold)")}catch(r){Ji.error("Failed to ensure Gemini CLI settings",{error:r.message}),
|
|
694
|
+
`,1)[0];if(JSON.parse(u).sessionId===t)return l}catch{continue}}}},n0=async t=>{try{let e=await uJ(t);return e?(await akt(e),!0):(B$e.log(`No gemini session file for ${t}; not resumable, using fresh session`),!1)}catch(e){return B$e.warn(`Could not sanitize gemini session ${t} for resume; using fresh session`,{error:skt(e)}),!1}};var Ji=Re("runner_gemini"),dJ="Gemini CLI",Hy="gemini-3.5-flash",lkt=({catchError:t,runCmd:e,error:r,result:n,runnerName:i})=>(Ji.log(`${i} command completed with catch handler triggered`,{hadExistingError:!!r,hadExistingResult:!!n,resultLength:n?n.length:0,catchError:t?.message||"No error object",processExitCode:e.exitCode,processKilled:e.killed}),n?(Ji.log("Preserving existing result despite catch handler being triggered"),r?{error:r,result:n}:{error:"Process completed with errors but result was captured",result:n}):(Ji.log("Setting result to undefined because no valid result was captured"),{error:r||`${i} failed`,result:void 0})),z$e={list_directory:{name:"List directory",category:ie.Explore},read_file:{name:"Read file",category:ie.FileRead},write_file:{name:"Edit file",category:ie.FileWrite},glob:{name:"Find files",category:ie.Explore},search_file_content:{name:"Search files",category:ie.Explore},replace:{name:"Edit file",category:ie.FileWrite},run_shell_command:{name:"Run command",category:ie.RunCommand},web_fetch:{name:"Fetch web",category:ie.Web},web_search:{name:"Search web",category:ie.Web},google_web_search:{name:"Search web",category:ie.Web},update_topic:{name:"Update topic",category:ie.Plan},read_many_files:{name:"Read files",category:ie.FileRead},save_memory:{name:"Memorize",category:ie.Memorize},activate_skill:{name:"Use Skill",category:ie.Skill},grep_search:{name:"Search files",category:ie.Explore}},ukt=async()=>{let t=yd.join(i0.homedir(),".gemini"),e=yd.join(t,"settings.json");try{await Jp.mkdir(t,{recursive:!0});let r={};try{let n=await Jp.readFile(e,"utf-8");r=JSON.parse(n)}catch{Ji.log("Creating new Gemini CLI settings file")}r.general||(r.general={}),r.general.previewFeatures||(r.general.previewFeatures=!0),r.model||(r.model={}),r.model.compressionThreshold!==.3&&(r.model.compressionThreshold=.3),r.skills||(r.skills={}),r.skills.enabled=!0,r.context||(r.context={}),r.context.fileName=["GEMINI.md","AGENTS.md"],await Jp.writeFile(e,JSON.stringify(r,null,2),"utf-8"),Ji.log("Configured Gemini CLI settings (preview features and compression threshold)")}catch(r){Ji.error("Failed to ensure Gemini CLI settings",{error:r.message}),Ie.inc("context.degraded",1,{component:"agent_config"})}},dkt=t=>{t?.category===ie.Skill&&t.type&&Ga(Ji,ko(t.type))};async function fJ({config:t,netlify:e,persistSteps:r=void 0,sendSteps:n=void 0,aiGateway:i,continueSession:s=!1,priorAgentSessionId:o=void 0,cwd:a=Vy.cwd(),abortSignal:c=void 0,onSessionId:l=void 0}){let{accountType:u,prompt:d,modelVersionOverrides:f}=t,{model:p}=t;if(await ukt(),i){let{token:re,url:ee}=i;if(!re||!ee)throw new Error("No token or url provided from AI Gateway");if(f?.gemini){let X=f?.gemini?.[u];if(X){if(!await i.isModelAvailableForProvider("gemini",X))throw new Error(`Model override '${X}' is not available for gemini provider`);p=X}}if(!p)!!Hy&&await i.isModelAvailableForProvider("gemini",Hy)?(p=Hy,Ji.log(`Using default model: ${Hy}`)):Hy&&Ji.log(`Default model ${Hy} is not available, proceeding without model specification`);else if(p&&!f?.gemini?.[u]&&!await i.isModelAvailableForProvider("gemini",p))throw new Error(`Model '${p}' is not available for gemini provider`);Vy.env.GEMINI_API_KEY=re,Vy.env.GOOGLE_GEMINI_BASE_URL=ee}else if(!Vy.env.GEMINI_API_KEY)throw new Error("GEMINI_API_KEY is not provided");let h=[],m=[],_=[],y={},v=0,S=0,g,w,P,x,R=!!(s&&o),O=!1;R&&(O=await n0(o)),R&&!O&&(Ji.log(`Gemini resume requested for session ${o} but it was not resumable; starting a fresh session`),Ie.inc("inference.native_resume",1,{outcome:"sanitize_failed"}));let A=t.mode==="ask",b;A&&(b=yd.join(i0.homedir(),".gemini","ask-policy.toml"),await Jp.mkdir(yd.dirname(b),{recursive:!0}),await Jp.writeFile(b,`[[rule]]
|
|
695
695
|
toolName = "web_fetch"
|
|
696
696
|
decision = "allow"
|
|
697
697
|
priority = 10
|
|
@@ -712,7 +712,7 @@ ${I}`:I);break}default:T.type&&!A.has(T.type)&&(A.add(T.type),ul.log(`Unhandled
|
|
|
712
712
|
${o}
|
|
713
713
|
</extracted_error_chunk>`).join(`
|
|
714
714
|
|
|
715
|
-
`);return s.length>t.length*.8?t:s}import{promises as X$e}from"fs";import Zp from"path";var Ekt=/@anthropic-ai\/sdk|['"`]openai['"`]|@google\/genai|new\s+Anthropic\b|new\s+OpenAI\b|GoogleGenAI|ANTHROPIC_API_KEY|OPENAI_API_KEY|GEMINI_API_KEY/,vkt=/satisfies\s+NetlifyFunction\b|export\s+default\s*\{/,bkt=/export\s+default\b/,Tkt=/\bexports\.handler\b|\bmodule\.exports\.handler\b|\bmodule\.exports\s*=|export\s+(async\s+)?(const\s+handler\b|function\s+handler\b)/,wkt=new Set([".js",".ts",".mjs",".mts",".cjs",".cts"]);function Rkt(t){return vkt.test(t)?"v3":bkt.test(t)?"v2":Tkt.test(t)?"v1":"unknown"}async function _J(t,e=process.env.FUNCTIONS_DIST||"netlify/functions"){let r={aiTotal:0,v1:0,v2:0,v3:0,unknown:0,v1Files:[]},n=Zp.isAbsolute(e)?e:Zp.join(t,e),i;try{i=await X$e.readdir(n,{withFileTypes:!0})}catch{return r}for(let s of i){if(!s.isFile()||!wkt.has(Zp.extname(s.name))||s.name.endsWith(".d.ts"))continue;let o;try{o=await X$e.readFile(Zp.join(n,s.name),"utf8")}catch{continue}if(!Ekt.test(o))continue;r.aiTotal++;let a=Rkt(o);r[a]++,a==="v1"&&r.v1Files.push(Zp.relative(t,Zp.join(n,s.name)).split(Zp.sep).join("/"))}return r}import Jkt from"fs/promises";import Zkt from"path";import u0 from"process";import s0 from"process";var JL=s0.env.NETLIFY_API_URL,ZL=s0.env.NETLIFY_API_TOKEN,Lr=Re("api"),fl=()=>s0.env.NETLIFY_LOCAL_MODE==="true",Xn=async(t,e={})=>{if(!JL||!ZL)throw new Error("No API URL or token");let r=new URL(t,JL),n={...e,headers:{...e.headers,Authorization:`Bearer ${ZL}`}};s0.env.AGENT_RUNNERS_DEBUG==="true"&&(n.headers["x-nf-debug-logging"]="true"),e.json&&(n.headers||={},n.headers["Content-Type"]="application/json",n.body=JSON.stringify(e.json));let i=await fetch(r,n),s=i.ok&&i.status<=299,o=e.expectStatuses?.includes(i.status)??!1;if(s0.env.AGENT_RUNNERS_DEBUG==="true")Lr.log(`Response headers for ${r}:`),i.headers.forEach((c,l)=>{Lr.log(` ${l}: ${c}`)});else{let c=i.headers.get("x-request-id")||i.headers.get("x-nf-request-id");Lr.log(`Request ID for ${r}: ${c||"N/A"}`)}if(!s&&!o&&(Lr.error(`Got status ${i.status} for request ${r}`),Oe.inc("api.request_failed",1,{status:i.status})),e.raw){if(!s)throw new Error(`API request failed: ${i.status} ${i.statusText}`);return i}let a=await(i.headers.get("content-type")?.includes("application/json")?i.json():i.text());if(!s){let c=typeof a=="string"?a:JSON.stringify(a);throw i.status===404?new Us(`API request failed: 404 - ${c}`,404,"The site associated with this agent run no longer exists."):i.status===503&&e.gracefulOn503&&c.toLowerCase().includes("usage exceeded")?new Us(`API request failed: 503 - ${c}`,503,"Credit limit reached. Please add more credits to continue using Agent Runners.",!0):new Error(`API request failed: ${i.status} - ${c}`)}return a},Q$e=t=>{Lr.log("Setting details for api",{apiUrl:t?.constants?.NETLIFY_API_HOST,token:!!t?.constants?.NETLIFY_API_TOKEN}),t?.constants?.NETLIFY_API_HOST&&(JL=`https://${t.constants.NETLIFY_API_HOST}`),t?.constants?.NETLIFY_API_TOKEN&&(ZL=t.constants.NETLIFY_API_TOKEN)},eLe=()=>({apiUrl:JL,token:ZL}),XL=async(t,e)=>fl()?(Lr.log("Mock API: updateRunner called",{runnerId:t,data:e}),{id:t,...e}):Xn(`/api/v1/agent_runners/${t}`,{method:"PUT",json:e}),vi=async(t,e,r)=>fl()?(Lr.log("Mock API: updateRunnerSession called",JSON.stringify({runnerId:t,sessionId:e,data:r},null,2)),{id:t,sessionId:e,...r}):Xn(`/api/v1/agent_runners/${t}/sessions/${e}`,{method:"PUT",json:r});var tLe=async t=>fl()?(Lr.log("Mock API: getSite called",{siteId:t}),{id:t,published_deploy:{id:"id"}}):Xn(`/api/v1/sites/${t}`),rLe=async(t,e)=>fl()?(Lr.log("Mock API: getRunnerSession called",{runnerId:t,sessionId:e}),{id:e,runnerId:t,state:"running"}):Xn(`/api/v1/agent_runners/${t}/sessions/${e}`),nLe=(t,e,r)=>Xn(`/api/v1/accounts/${t}/ai-gateway/token`,{headers:{"X-Nf-Agent-Runner-Id":e,"X-Nf-Agent-Runner-Session-Id":r},gracefulOn503:!0}),iLe=(t,e,r)=>Xn(`/api/v1/sites/${t}/ai-gateway/token`,{headers:{"X-Nf-Agent-Runner-Id":e,"X-Nf-Agent-Runner-Session-Id":r},gracefulOn503:!0}),sLe=async(t,e)=>fl()?(Lr.log("Mock API: getDiffUploadUrls called",{runnerId:t,sessionId:e}),{result:{upload_url:"https://s3.mock.com/mock-upload-url-result",s3_key:"mock-s3-key-result"},cumulative:{upload_url:"https://s3.mock.com/mock-upload-url-cumulative",s3_key:"mock-s3-key-cumulative"}}):Xn(`/api/v1/agent_runners/${t}/sessions/${e}/diff/upload_urls`,{method:"POST"}),oLe=async(t,e)=>fl()?(Lr.log("Mock API: getNativeSessionUploadUrl called",{runnerId:t,sessionId:e}),{upload_url:"https://s3.mock.com/mock-upload-url-native-session",s3_key:"mock-s3-key-native-session"}):Xn(`/api/v1/agent_runners/${t}/sessions/${e}/native_session/upload`,{method:"POST"}),aLe=async(t,e)=>{if(fl())return Lr.log("Mock API: getNativeSessionDownloadUrl called",{runnerId:t,sessionId:e}),{download_url:"https://s3.mock.com/mock-download-url-native-session"};try{return await Xn(`/api/v1/agent_runners/${t}/sessions/${e}/native_session`)}catch(r){if(r instanceof Us&&r.statusCode===404)return Lr.log("No native session available to download (404), falling back"),null;throw r}},cLe=async(t,e)=>fl()?(Lr.log("Mock API: updateSessionUsage called",{runnerId:t,sessionId:e}),{id:e,runnerId:t,usage:0}):Xn(`/api/v1/agent_runners/${t}/sessions/${e}/update_usage`,{method:"POST"}),yJ="netlifydb_readonly",lLe=async t=>(await Xn(`/api/v1/sites/${t}/database?role=${yJ}`,{raw:!0})).json(),uLe=async t=>{if(fl())return Lr.log("Mock API: siteHasDatabase called",{siteId:t}),!1;try{return await Xn(`/api/v1/sites/${t}/database?role=${yJ}`,{raw:!0,expectStatuses:[404]}),!0}catch(e){if(e?.message?.includes("404"))return!1;Lr.warn("siteHasDatabase check inconclusive",{siteId:t,error:e?.message});return}},dLe=async(t,e)=>(await Xn(`/api/v1/sites/${t}/database/branch/${encodeURIComponent(e)}?role=${yJ}`,{raw:!0})).json(),fLe=async t=>Xn(`/api/v1/sites/${t}/database`,{method:"POST",json:{}}),pLe=async(t,e)=>Xn(`/api/v1/sites/${t}/database/branch`,{method:"POST",json:{branch_id:e}}),Akt=1e4,hLe=async t=>{Lr.log(`Downloading from S3: ${new URL(t).host}`);let e=await fetch(t,{method:"GET",signal:AbortSignal.timeout(Akt)});if(!e.ok)throw new Error(`S3 download failed with status ${e.status}`);return Buffer.from(await e.arrayBuffer())},o0=async(t,e,{maxRetries:r=3,baseDelayMs:n=500,contentType:i="text/plain"}={})=>{Lr.log(`Uploading to S3: ${new URL(t).host}`);for(let s=1;s<=r;s++)try{let o=await fetch(t,{method:"PUT",body:e,headers:{"Content-Type":i}});if(!o.ok)throw new Error(`S3 upload failed with status ${o.status}`);return o}catch(o){if(s===r)throw o;let a=n*2**(s-1);Lr.warn(`S3 upload attempt ${s}/${r} failed: ${o.message}. Retrying in ${a}ms...`),await new Promise(c=>setTimeout(c,a))}};var Xp=Re("ai_gateway"),SJ=null;var a0=async()=>{if(SJ)return SJ;Xp.log("Fetching available AI gateway providers");let t=await fetch(`${eLe().apiUrl}/api/v1/ai-gateway/providers`);if(!t.ok)throw new Error(`Failed to fetch AI gateway providers: ${t.statusText}`);let e=await t.json();return SJ=e,Xp.log("Cached AI gateway providers",{providerCount:Object.keys(e.providers).length}),e},xkt=async(t,e)=>{let n=(await a0()).providers[t];if(!n)return Xp.log(`Provider '${t}' not found`),!1;let i=n.models.includes(e);return Xp.log(`Model validation for ${t}/${e}`,{isAvailable:i}),i},Ikt=async t=>{let e=await a0(),r=Object.values(e.providers).some(n=>n.models.includes(t));return Xp.log(`Model validation across all providers for ${t}`,{isAvailable:r}),r},mLe=async({config:t})=>{let e,r,n,i,s=!t.site?.published_deploy;if(!(s?t.accountId:t.siteId))throw new Error(`No entity id for ${s?"account":"site"}`);let a=async()=>{clearTimeout(n),Xp.log("Requesting AI gateway information");let l=await(s?nLe(t.accountId,t.id,t.sessionId):iLe(t.siteId,t.id,t.sessionId));if({token:e,url:i}=l,r=l.expires_at?l.expires_at*1e3:void 0,process.env.NETLIFY_AI_GATEWAY_KEY=e,process.env.NETLIFY_AI_GATEWAY_BASE_URL=i,Xp.log("Got AI gateway information",{token:!!e,expiresAt:r,url:i}),r){let u=r-Date.now()-6e4;u>0&&(n=setTimeout(()=>{a()},u))}};return await Promise.all([a(),a0()]),{get url(){return i},get token(){return e},isModelAvailableForProvider:xkt,isModelAvailable:Ikt}};import Pkt from"crypto";import eD from"fs/promises";import c0 from"path";import Okt from"process";var vJ=Re("asset_fetch"),QL=100*1024*1024,Ckt=6e4,gLe=6,Nkt=t=>Pkt.createHash("sha1").update(t).digest("hex").slice(0,8),kkt=t=>typeof t=="string"&&t.length>0&&t!=="."&&t!==".."&&t===c0.basename(t),$kt=async t=>{try{return await eD.stat(t),!0}catch{return!1}},Lkt=t=>decodeURIComponent(new URL(t).pathname),EJ=t=>c0.basename(t)||"attachment",Dkt=(t,e)=>{let r=c0.extname(t);return`${t.slice(0,t.length-r.length)}-${Nkt(e)}${r}`},Mkt=t=>{let e=new Map;for(let r of t)e.set(EJ(r),(e.get(EJ(r))??0)+1);return t.map(r=>{let n=EJ(r);return(e.get(n)??0)>1?Dkt(n,r):n})},Ukt=async(t,e)=>{let r=await fetch(t,{signal:AbortSignal.timeout(Ckt)});if(!r.ok)throw new Error(`Asset download failed: ${r.status} ${r.statusText}`);let n=r.headers.get("content-length");if(n&&Number(n)>QL)throw new Error(`Asset too large: ${n} bytes (max ${QL})`);let i=Buffer.from(await r.arrayBuffer());if(i.byteLength>QL)throw new Error(`Asset too large: ${i.byteLength} bytes (max ${QL})`);let s=`${e}.part`;await eD.writeFile(s,i),await eD.rename(s,e)},Fkt=async(t,e,r)=>{if(!kkt(t))return vJ.warn(`Skipping attachments for unsafe session id: ${t}`),[];if(!Array.isArray(e)||e.length===0)return[];let n=c0.join(r,Qr,Co,t);await eD.mkdir(n,{recursive:!0});let i=e.filter(o=>typeof o=="string"&&o.length>0),s=Mkt(i.map(Lkt));return i.map((o,a)=>({sessionId:t,url:o,dest:c0.join(n,s[a])}))},_Le=async({assetMap:t,cwd:e=Okt.cwd()})=>{let r=Object.entries(t??{});if(r.length===0)return;let n=(await Promise.all(r.map(([a,c])=>Fkt(a,c,e)))).flat();if(n.length===0)return;let i={};for(let a of n)i[a.sessionId]=(i[a.sessionId]??0)+1;vJ.info(`Reconciling ${n.length} attachment(s) across ${Object.keys(i).length} session(s)`);let s={},o=async a=>{await $kt(a.dest)||(await Ukt(a.url,a.dest),s[a.sessionId]=(s[a.sessionId]??0)+1)};for(let a=0;a<n.length;a+=gLe){let c=n.slice(a,a+gLe);await Promise.all(c.map(o))}for(let[a,c]of Object.entries(i)){let l=s[a]??0;vJ.info(`Session ${a}: fetched ${l} attachment(s), ${c-l} already present`)}};import{Buffer as yLe}from"buffer";import jkt from"path";var SLe=Re("repo"),bi=(t,e={})=>Li("git",t,{...e,env:{...e.env,NETLIFY_INTERNAL_GIT:"1"}}),tD=async({config:t,isRetry:e,cwd:r=process.cwd()})=>{SLe.info("Getting runner diffs");let n=await Bkt(r),{hasChanges:i}=n,{status:s}=n;if(!i)return{hasChanges:!1};if(!e){let m=Vkt(s);await Hkt(m,r)}SLe.info("Changes after processing"),await TJ(r);let o=await RJ(s,r);if(await bJ(o,r),i=await zkt(r),!i)return{hasChanges:!1,ignored:o};await bi(["commit","-m","Agent runner"],{cwd:r});let a={stdio:["ignore","pipe","pipe"],cwd:r},c=await bi(["diff",t.runSha,"HEAD"],a),l=String(c.stdout??"");if(i=!!l,!i)return await ELe(r),{hasChanges:!1,ignored:o};let u=await bi(["diff",t.runSha,"HEAD","--binary"],a),d=String(u.stdout??""),f,p;if(t.sha){let m=await bi(["diff",t.sha,"HEAD"],a);f=String(m.stdout??"");let _=await bi(["diff",t.sha,"HEAD","--binary"],a),y=String(_.stdout??"");f!==y&&(p=yLe.from(y).toString("base64"))}await ELe(r);let h={hasChanges:!0,diff:l,resultDiff:f,ignored:o};return l!==d&&(h.diffBinary=yLe.from(d).toString("base64")),p&&(h.resultDiffBinary=p),h},ELe=async(t=process.cwd())=>{process.env.NETLIFY_LOCAL_MODE&&await bi(["reset","--soft","HEAD~1"],{cwd:t})},bJ=async(t=[],e=process.cwd())=>{await bi(["add",".",...t],{cwd:e})},TJ=async(t=process.cwd())=>{let e=await bi(["status","-s"],{cwd:t});return String(e.stdout??"")},vLe=/.. (.+)?\.log$/,qkt=[vLe],Bkt=async(t=process.cwd())=>{let e=await TJ(t);return{hasChanges:(e.trim().length===0?[]:e.split(`
|
|
715
|
+
`);return s.length>t.length*.8?t:s}import{promises as X$e}from"fs";import Zp from"path";var Ekt=/@anthropic-ai\/sdk|['"`]openai['"`]|@google\/genai|new\s+Anthropic\b|new\s+OpenAI\b|GoogleGenAI|ANTHROPIC_API_KEY|OPENAI_API_KEY|GEMINI_API_KEY/,vkt=/satisfies\s+NetlifyFunction\b|export\s+default\s*\{/,bkt=/export\s+default\b/,Tkt=/\bexports\.handler\b|\bmodule\.exports\.handler\b|\bmodule\.exports\s*=|export\s+(async\s+)?(const\s+handler\b|function\s+handler\b)/,wkt=new Set([".js",".ts",".mjs",".mts",".cjs",".cts"]);function Rkt(t){return vkt.test(t)?"v3":bkt.test(t)?"v2":Tkt.test(t)?"v1":"unknown"}async function _J(t,e=process.env.FUNCTIONS_DIST||"netlify/functions"){let r={aiTotal:0,v1:0,v2:0,v3:0,unknown:0,v1Files:[]},n=Zp.isAbsolute(e)?e:Zp.join(t,e),i;try{i=await X$e.readdir(n,{withFileTypes:!0})}catch{return r}for(let s of i){if(!s.isFile()||!wkt.has(Zp.extname(s.name))||s.name.endsWith(".d.ts"))continue;let o;try{o=await X$e.readFile(Zp.join(n,s.name),"utf8")}catch{continue}if(!Ekt.test(o))continue;r.aiTotal++;let a=Rkt(o);r[a]++,a==="v1"&&r.v1Files.push(Zp.relative(t,Zp.join(n,s.name)).split(Zp.sep).join("/"))}return r}import Jkt from"fs/promises";import Zkt from"path";import u0 from"process";import s0 from"process";var JL=s0.env.NETLIFY_API_URL,ZL=s0.env.NETLIFY_API_TOKEN,Lr=Re("api"),fl=()=>s0.env.NETLIFY_LOCAL_MODE==="true",Xn=async(t,e={})=>{if(!JL||!ZL)throw new Error("No API URL or token");let r=new URL(t,JL),n={...e,headers:{...e.headers,Authorization:`Bearer ${ZL}`}};s0.env.AGENT_RUNNERS_DEBUG==="true"&&(n.headers["x-nf-debug-logging"]="true"),e.json&&(n.headers||={},n.headers["Content-Type"]="application/json",n.body=JSON.stringify(e.json));let i=await fetch(r,n),s=i.ok&&i.status<=299,o=e.expectStatuses?.includes(i.status)??!1;if(s0.env.AGENT_RUNNERS_DEBUG==="true")Lr.log(`Response headers for ${r}:`),i.headers.forEach((c,l)=>{Lr.log(` ${l}: ${c}`)});else{let c=i.headers.get("x-request-id")||i.headers.get("x-nf-request-id");Lr.log(`Request ID for ${r}: ${c||"N/A"}`)}if(!s&&!o&&(Lr.error(`Got status ${i.status} for request ${r}`),Ie.inc("api.request_failed",1,{status:i.status})),e.raw){if(!s)throw new Error(`API request failed: ${i.status} ${i.statusText}`);return i}let a=await(i.headers.get("content-type")?.includes("application/json")?i.json():i.text());if(!s){let c=typeof a=="string"?a:JSON.stringify(a);throw i.status===404?new Us(`API request failed: 404 - ${c}`,404,"The site associated with this agent run no longer exists."):i.status===503&&e.gracefulOn503&&c.toLowerCase().includes("usage exceeded")?new Us(`API request failed: 503 - ${c}`,503,"Credit limit reached. Please add more credits to continue using Agent Runners.",!0):new Error(`API request failed: ${i.status} - ${c}`)}return a},Q$e=t=>{Lr.log("Setting details for api",{apiUrl:t?.constants?.NETLIFY_API_HOST,token:!!t?.constants?.NETLIFY_API_TOKEN}),t?.constants?.NETLIFY_API_HOST&&(JL=`https://${t.constants.NETLIFY_API_HOST}`),t?.constants?.NETLIFY_API_TOKEN&&(ZL=t.constants.NETLIFY_API_TOKEN)},eLe=()=>({apiUrl:JL,token:ZL}),XL=async(t,e)=>fl()?(Lr.log("Mock API: updateRunner called",{runnerId:t,data:e}),{id:t,...e}):Xn(`/api/v1/agent_runners/${t}`,{method:"PUT",json:e}),vi=async(t,e,r)=>fl()?(Lr.log("Mock API: updateRunnerSession called",JSON.stringify({runnerId:t,sessionId:e,data:r},null,2)),{id:t,sessionId:e,...r}):Xn(`/api/v1/agent_runners/${t}/sessions/${e}`,{method:"PUT",json:r});var tLe=async t=>fl()?(Lr.log("Mock API: getSite called",{siteId:t}),{id:t,published_deploy:{id:"id"}}):Xn(`/api/v1/sites/${t}`),rLe=async(t,e)=>fl()?(Lr.log("Mock API: getRunnerSession called",{runnerId:t,sessionId:e}),{id:e,runnerId:t,state:"running"}):Xn(`/api/v1/agent_runners/${t}/sessions/${e}`),nLe=(t,e,r)=>Xn(`/api/v1/accounts/${t}/ai-gateway/token`,{headers:{"X-Nf-Agent-Runner-Id":e,"X-Nf-Agent-Runner-Session-Id":r},gracefulOn503:!0}),iLe=(t,e,r)=>Xn(`/api/v1/sites/${t}/ai-gateway/token`,{headers:{"X-Nf-Agent-Runner-Id":e,"X-Nf-Agent-Runner-Session-Id":r},gracefulOn503:!0}),sLe=async(t,e)=>fl()?(Lr.log("Mock API: getDiffUploadUrls called",{runnerId:t,sessionId:e}),{result:{upload_url:"https://s3.mock.com/mock-upload-url-result",s3_key:"mock-s3-key-result"},cumulative:{upload_url:"https://s3.mock.com/mock-upload-url-cumulative",s3_key:"mock-s3-key-cumulative"}}):Xn(`/api/v1/agent_runners/${t}/sessions/${e}/diff/upload_urls`,{method:"POST"}),oLe=async(t,e)=>fl()?(Lr.log("Mock API: getNativeSessionUploadUrl called",{runnerId:t,sessionId:e}),{upload_url:"https://s3.mock.com/mock-upload-url-native-session",s3_key:"mock-s3-key-native-session"}):Xn(`/api/v1/agent_runners/${t}/sessions/${e}/native_session/upload`,{method:"POST"}),aLe=async(t,e)=>{if(fl())return Lr.log("Mock API: getNativeSessionDownloadUrl called",{runnerId:t,sessionId:e}),{download_url:"https://s3.mock.com/mock-download-url-native-session"};try{return await Xn(`/api/v1/agent_runners/${t}/sessions/${e}/native_session`)}catch(r){if(r instanceof Us&&r.statusCode===404)return Lr.log("No native session available to download (404), falling back"),null;throw r}},cLe=async(t,e)=>fl()?(Lr.log("Mock API: updateSessionUsage called",{runnerId:t,sessionId:e}),{id:e,runnerId:t,usage:0}):Xn(`/api/v1/agent_runners/${t}/sessions/${e}/update_usage`,{method:"POST"}),yJ="netlifydb_readonly",lLe=async t=>(await Xn(`/api/v1/sites/${t}/database?role=${yJ}`,{raw:!0})).json(),uLe=async t=>{if(fl())return Lr.log("Mock API: siteHasDatabase called",{siteId:t}),!1;try{return await Xn(`/api/v1/sites/${t}/database?role=${yJ}`,{raw:!0,expectStatuses:[404]}),!0}catch(e){if(e?.message?.includes("404"))return!1;Lr.warn("siteHasDatabase check inconclusive",{siteId:t,error:e?.message});return}},dLe=async(t,e)=>(await Xn(`/api/v1/sites/${t}/database/branch/${encodeURIComponent(e)}?role=${yJ}`,{raw:!0})).json(),fLe=async t=>Xn(`/api/v1/sites/${t}/database`,{method:"POST",json:{}}),pLe=async(t,e)=>Xn(`/api/v1/sites/${t}/database/branch`,{method:"POST",json:{branch_id:e}}),Akt=1e4,hLe=async t=>{Lr.log(`Downloading from S3: ${new URL(t).host}`);let e=await fetch(t,{method:"GET",signal:AbortSignal.timeout(Akt)});if(!e.ok)throw new Error(`S3 download failed with status ${e.status}`);return Buffer.from(await e.arrayBuffer())},o0=async(t,e,{maxRetries:r=3,baseDelayMs:n=500,contentType:i="text/plain"}={})=>{Lr.log(`Uploading to S3: ${new URL(t).host}`);for(let s=1;s<=r;s++)try{let o=await fetch(t,{method:"PUT",body:e,headers:{"Content-Type":i}});if(!o.ok)throw new Error(`S3 upload failed with status ${o.status}`);return o}catch(o){if(s===r)throw o;let a=n*2**(s-1);Lr.warn(`S3 upload attempt ${s}/${r} failed: ${o.message}. Retrying in ${a}ms...`),await new Promise(c=>setTimeout(c,a))}};var Xp=Re("ai_gateway"),SJ=null;var a0=async()=>{if(SJ)return SJ;Xp.log("Fetching available AI gateway providers");let t=await fetch(`${eLe().apiUrl}/api/v1/ai-gateway/providers`);if(!t.ok)throw new Error(`Failed to fetch AI gateway providers: ${t.statusText}`);let e=await t.json();return SJ=e,Xp.log("Cached AI gateway providers",{providerCount:Object.keys(e.providers).length}),e},xkt=async(t,e)=>{let n=(await a0()).providers[t];if(!n)return Xp.log(`Provider '${t}' not found`),!1;let i=n.models.includes(e);return Xp.log(`Model validation for ${t}/${e}`,{isAvailable:i}),i},Ikt=async t=>{let e=await a0(),r=Object.values(e.providers).some(n=>n.models.includes(t));return Xp.log(`Model validation across all providers for ${t}`,{isAvailable:r}),r},mLe=async({config:t})=>{let e,r,n,i,s=!t.site?.published_deploy;if(!(s?t.accountId:t.siteId))throw new Error(`No entity id for ${s?"account":"site"}`);let a=async()=>{clearTimeout(n),Xp.log("Requesting AI gateway information");let l=await(s?nLe(t.accountId,t.id,t.sessionId):iLe(t.siteId,t.id,t.sessionId));if({token:e,url:i}=l,r=l.expires_at?l.expires_at*1e3:void 0,process.env.NETLIFY_AI_GATEWAY_KEY=e,process.env.NETLIFY_AI_GATEWAY_BASE_URL=i,Xp.log("Got AI gateway information",{token:!!e,expiresAt:r,url:i}),r){let u=r-Date.now()-6e4;u>0&&(n=setTimeout(()=>{a()},u))}};return await Promise.all([a(),a0()]),{get url(){return i},get token(){return e},isModelAvailableForProvider:xkt,isModelAvailable:Ikt}};import Pkt from"crypto";import eD from"fs/promises";import c0 from"path";import Okt from"process";var vJ=Re("asset_fetch"),QL=100*1024*1024,Ckt=6e4,gLe=6,Nkt=t=>Pkt.createHash("sha1").update(t).digest("hex").slice(0,8),kkt=t=>typeof t=="string"&&t.length>0&&t!=="."&&t!==".."&&t===c0.basename(t),$kt=async t=>{try{return await eD.stat(t),!0}catch{return!1}},Lkt=t=>decodeURIComponent(new URL(t).pathname),EJ=t=>c0.basename(t)||"attachment",Dkt=(t,e)=>{let r=c0.extname(t);return`${t.slice(0,t.length-r.length)}-${Nkt(e)}${r}`},Mkt=t=>{let e=new Map;for(let r of t)e.set(EJ(r),(e.get(EJ(r))??0)+1);return t.map(r=>{let n=EJ(r);return(e.get(n)??0)>1?Dkt(n,r):n})},Ukt=async(t,e)=>{let r=await fetch(t,{signal:AbortSignal.timeout(Ckt)});if(!r.ok)throw new Error(`Asset download failed: ${r.status} ${r.statusText}`);let n=r.headers.get("content-length");if(n&&Number(n)>QL)throw new Error(`Asset too large: ${n} bytes (max ${QL})`);let i=Buffer.from(await r.arrayBuffer());if(i.byteLength>QL)throw new Error(`Asset too large: ${i.byteLength} bytes (max ${QL})`);let s=`${e}.part`;await eD.writeFile(s,i),await eD.rename(s,e)},Fkt=async(t,e,r)=>{if(!kkt(t))return vJ.warn(`Skipping attachments for unsafe session id: ${t}`),[];if(!Array.isArray(e)||e.length===0)return[];let n=c0.join(r,Qr,Co,t);await eD.mkdir(n,{recursive:!0});let i=e.filter(o=>typeof o=="string"&&o.length>0),s=Mkt(i.map(Lkt));return i.map((o,a)=>({sessionId:t,url:o,dest:c0.join(n,s[a])}))},_Le=async({assetMap:t,cwd:e=Okt.cwd()})=>{let r=Object.entries(t??{});if(r.length===0)return;let n=(await Promise.all(r.map(([a,c])=>Fkt(a,c,e)))).flat();if(n.length===0)return;let i={};for(let a of n)i[a.sessionId]=(i[a.sessionId]??0)+1;vJ.info(`Reconciling ${n.length} attachment(s) across ${Object.keys(i).length} session(s)`);let s={},o=async a=>{await $kt(a.dest)||(await Ukt(a.url,a.dest),s[a.sessionId]=(s[a.sessionId]??0)+1)};for(let a=0;a<n.length;a+=gLe){let c=n.slice(a,a+gLe);await Promise.all(c.map(o))}for(let[a,c]of Object.entries(i)){let l=s[a]??0;vJ.info(`Session ${a}: fetched ${l} attachment(s), ${c-l} already present`)}};import{Buffer as yLe}from"buffer";import jkt from"path";var SLe=Re("repo"),bi=(t,e={})=>Li("git",t,{...e,env:{...e.env,NETLIFY_INTERNAL_GIT:"1"}}),tD=async({config:t,isRetry:e,cwd:r=process.cwd()})=>{SLe.info("Getting runner diffs");let n=await Bkt(r),{hasChanges:i}=n,{status:s}=n;if(!i)return{hasChanges:!1};if(!e){let m=Vkt(s);await Hkt(m,r)}SLe.info("Changes after processing"),await TJ(r);let o=await RJ(s,r);if(await bJ(o,r),i=await zkt(r),!i)return{hasChanges:!1,ignored:o};await bi(["commit","-m","Agent runner"],{cwd:r});let a={stdio:["ignore","pipe","pipe"],cwd:r},c=await bi(["diff",t.runSha,"HEAD"],a),l=String(c.stdout??"");if(i=!!l,!i)return await ELe(r),{hasChanges:!1,ignored:o};let u=await bi(["diff",t.runSha,"HEAD","--binary"],a),d=String(u.stdout??""),f,p;if(t.sha){let m=await bi(["diff",t.sha,"HEAD"],a);f=String(m.stdout??"");let _=await bi(["diff",t.sha,"HEAD","--binary"],a),y=String(_.stdout??"");f!==y&&(p=yLe.from(y).toString("base64"))}await ELe(r);let h={hasChanges:!0,diff:l,resultDiff:f,ignored:o};return l!==d&&(h.diffBinary=yLe.from(d).toString("base64")),p&&(h.resultDiffBinary=p),h},ELe=async(t=process.cwd())=>{process.env.NETLIFY_LOCAL_MODE&&await bi(["reset","--soft","HEAD~1"],{cwd:t})},bJ=async(t=[],e=process.cwd())=>{await bi(["add",".",...t],{cwd:e})},TJ=async(t=process.cwd())=>{let e=await bi(["status","-s"],{cwd:t});return String(e.stdout??"")},vLe=/.. (.+)?\.log$/,qkt=[vLe],Bkt=async(t=process.cwd())=>{let e=await TJ(t);return{hasChanges:(e.trim().length===0?[]:e.split(`
|
|
716
716
|
`).filter(i=>qkt.some(o=>o instanceof RegExp?o.test(i):i===o)?!1:i[1]?.trim()!=="")).length!==0,status:e}},zkt=async(t=process.cwd())=>{try{return await bi(["diff","--staged","--quiet"],{cwd:t}),!1}catch{return!0}},wJ=async(t=process.cwd())=>{let{stdout:e}=await bi(["rev-parse","HEAD"],{cwd:t});return String(e??"").trim()},bLe=async(t=process.cwd())=>{let{stdout:e}=await bi(["rev-list","--max-parents=0","HEAD"],{cwd:t});return String(e??"").trim()},RJ=async(t,e=process.cwd())=>{t||=await TJ(e);let r=[".netlify","node_modules","dist",".next","out",".nuxt",".output",".cache",".turbo",".parcel-cache","coverage",".nyc_output","storybook-static","public/build","CLAUDE.local.md"],n=[];return t.split(`
|
|
717
717
|
`).forEach(i=>{r.forEach(o=>{let a=i===`?? ${o}`,c=i.startsWith(`?? ${o}/`)||i.startsWith(`?? ${o}${jkt.sep}`);(a||c)&&n.push(`:!${o}`)});let s=i.match(vLe)?.[1];s&&n.push(`:!${s}.log`)}),n},AJ=async(t=process.cwd())=>{await bi(["reset","--hard","HEAD"],{cwd:t})},TLe=async(t=process.cwd())=>{let e=await bi(["clean","-fd","-e",".netlify"],{stdio:["ignore","pipe","pipe"],cwd:t});return String(e.stdout??"").split(`
|
|
718
718
|
`).filter(r=>r.startsWith("Removing ")).map(r=>r.slice(9))},Vkt=t=>{let e=t.split(`
|
|
@@ -738,7 +738,7 @@ case "$1" in
|
|
|
738
738
|
exit 1
|
|
739
739
|
;;
|
|
740
740
|
esac
|
|
741
|
-
`,ALe=async()=>{let t="/tmp/netlify-git-wrapper",e=Wkt.join(t,"git"),r="/usr/bin/git";try{let n=(Wy.env.PATH||"").split(":").filter(i=>i!==t).join(":");r=Gkt("which git",{env:{...Wy.env,PATH:n}}).toString().trim()||r}catch{}try{await wLe.mkdir(t,{recursive:!0}),await wLe.writeFile(e,Kkt(r),{mode:493}),Wy.env.PATH?.split(":").includes(t)||(Wy.env.PATH=`${t}:${Wy.env.PATH}`),Wy.env.NETLIFY_INTERNAL_GIT="0",RLe.info("Installed git wrapper to restrict the agent to read-only git commands")}catch(n){RLe.warn("Failed to install git wrapper",{error:n?.message||n}),
|
|
741
|
+
`,ALe=async()=>{let t="/tmp/netlify-git-wrapper",e=Wkt.join(t,"git"),r="/usr/bin/git";try{let n=(Wy.env.PATH||"").split(":").filter(i=>i!==t).join(":");r=Gkt("which git",{env:{...Wy.env,PATH:n}}).toString().trim()||r}catch{}try{await wLe.mkdir(t,{recursive:!0}),await wLe.writeFile(e,Kkt(r),{mode:493}),Wy.env.PATH?.split(":").includes(t)||(Wy.env.PATH=`${t}:${Wy.env.PATH}`),Wy.env.NETLIFY_INTERNAL_GIT="0",RLe.info("Installed git wrapper to restrict the agent to read-only git commands")}catch(n){RLe.warn("Failed to install git wrapper",{error:n?.message||n}),Ie.inc("context.degraded",1,{component:"git_wrapper"})}};var l0=Re("init_stage"),Xkt=async(t,e)=>{let r=Zkt.join(e,Qr,Co,t);try{return(await Jkt.readdir(r,{withFileTypes:!0})).filter(i=>i.isFile()&&!i.name.endsWith(".part")).length}catch{return 0}},Qkt=async(t,e)=>{if(!(!ut().fetchAssetsEnabled||!t.assetMap))try{await _Le({assetMap:t.assetMap,cwd:e})}catch(r){throw l0.error("Failed to fetch session assets",{error:r?.message||r}),Ie.inc("assets.fetch_failed",1),new Error("Failed to download the attachments uploaded for this session. Please try again.")}},xLe=async({config:t,apiThrottle:e,apiToken:r,cwd:n,runnerVersion:i})=>await zt(ft(),"init-stage",async s=>{let o=performance.now();s?.setAttributes({"init.runner":t.runner,"init.id":t.id,"init.sessionId":t.sessionId,"init.hasRepo":t.hasRepo,"init.useGateway":t.useGateway,"init.runnerVersion":i||"unknown"});let a=Gy[t.runner];if(!a)throw s?.setAttributes({"init.error":"unsupported_runner"}),new Error(`${t.runner} is not supported`);if(t.runner==="opencode"&&!ut().opencodeEnabled)throw s?.setAttributes({"init.error":"opencode_disabled"}),new Error("opencode runner is not enabled on this environment");let c=e$t({apiToken:r,config:t});if(Q$e(c),t.siteId)try{t.site=await tLe(t.siteId)}catch(y){l0.error("Failed to get the site information",{error:y})}let l=t.useGateway?await mLe({config:t}):void 0;s?.setAttributes({"init.aiGateway.created":!!l}),await vi(t.id,t.sessionId,{steps:[{title:"Environment ready",category:ie.Environment,type:"ready"}]});let u=5*1024,d=1e4,f=G0(async({steps:y=[],duration:v})=>{let S=y.map(g=>{let w=g.title?DM(bs(g.title),u):void 0,P=g.category===ie.AgentMessage||g.category===ie.UserMessage,x=g.message?bs(g.message):void 0,R=x&&!P?DM(x,d):x,O=g.category===ie.UserMessage,A=R&&!O?tO(R):R;return A!==R&&l0.info("Sanitized internal error from step message",{original:R}),{...g,title:w,message:A}});y.length=0;try{return await vi(t.id,t.sessionId,{steps:S,duration:v})}catch(g){l0.error("persistSteps failed",{error:g?.message||g})}},e);l0.info("Adding build files to stage");let p=await RJ();await bJ(p),u0.env.NETLIFY_LOCAL_MODE||await ALe();let h;t.hasRepo?t.sha?(h=t.sha,s?.setAttributes({"init.sha.source":"provided"})):(h=await wJ(),t.mode!=="redeploy"&&await XL(t.id,{sha:h}),s?.setAttributes({"init.sha.source":"current_commit"})):(h=await bLe(),s?.setAttributes({"init.sha.source":"first_commit","init.source":"zip"})),t.runSha=await wJ(),await Qkt(t,n);let m=await Xkt(t.sessionId,n??u0.cwd());Ie.inc("assets.session",1,{has_assets:m>0}),m>0&&Ie.distribution("assets.session.count",m);let _=performance.now()-o;return s?.setAttributes({"init.sha":h||"unknown","init.duration.ms":_,"init.status":"success","init.assetCount":m}),{aiGateway:l,context:c,persistSteps:f,runner:a,sha:h}}),e$t=({apiToken:t,config:e})=>({constants:{NETLIFY_API_HOST:u0.env.NETLIFY_API_HOST||"api.netlify.com",NETLIFY_API_TOKEN:t||u0.env.NETLIFY_API_TOKEN,SITE_ID:e.siteId,FUNCTIONS_DIST:u0.env.FUNCTIONS_DIST||"netlify/functions"},utils:{run:Li}});Qe();import t$t from"crypto";import On from"fs/promises";import xJ from"os";import Mt from"path";import Ua from"process";import{fileURLToPath as r$t}from"url";var Zi=Re("context"),n$t=r$t(import.meta.url),i$t=Mt.dirname(n$t),ILe={claude:Mt.join(xJ.homedir(),".claude","skills"),gemini:Mt.join(xJ.homedir(),".agents","skills"),codex:Mt.join(xJ.homedir(),".agents","skills")},s$t=Mt.join(i$t,"skills"),o$t="asking-questions",PJ=t=>t.replace(/<\/user_request/gi,"</user_request"),rD=t=>typeof t=="string"&&/^[A-Za-z0-9_-]+$/.test(t)?t:null,a$t=({userRequest:t,buildErrorContextText:e="",projectContext:r="",sessionHistoryContextText:n="",additionalContext:i="",netlifyInfo:s={},cliPath:o="netlify",skillsDir:a="",netlifyFolder:c=Qr,resultsFilename:l=$d,assetsFolder:u=Co,sessionId:d,currentSessionHasAssets:f=!1,nodeVersion:p=Ua.version||"unknown",mode:h=void 0})=>{let m=rD(d),_=i?`<additional_rules>
|
|
742
742
|
${i}
|
|
743
743
|
</additional_rules>`:"",y=h==="ask"?`<responses>
|
|
744
744
|
- Write progress updates in concise, present-tense language describing what is happening now (e.g. "Reading the routing setup", "Checking the deploy configuration"). Avoid third-person self-reference (e.g. "the agent"), and avoid future-tense phrasing like "will".
|
|
@@ -811,12 +811,12 @@ You're an AI agent designed to assist with tasks related to a Netlify project. P
|
|
|
811
811
|
</extra_context>
|
|
812
812
|
|
|
813
813
|
${n}
|
|
814
|
-
`},IJ=null;var iD="SKILL.md",c$t=()=>{let t=ut().skillVariations;return Zi.log(`Active skill variations: ${t.length?t.join(", "):"none"}`),t},PLe=t=>{let e=t.match(/^(.+)@([^.]+)(.*)$/);return e?{baseName:`${e[1]}${e[3]}`,variation:e[2]}:{baseName:t,variation:null}},l$t=async(t,e=[])=>{try{let r=await On.readdir(t);for(let n of r){let{baseName:i,variation:s}=PLe(n);if(s&&i===iD&&e.includes(s))return{filename:n,variation:s}}}catch{}return{filename:iD,variation:null}},u$t=async(t,{targetDir:e,sourceDir:r}={})=>{let n=e||ILe[t],i=r||s$t;if(!n)return Zi.warn(`Unknown runner: ${t}, skipping skills setup`),[];if(IJ)return IJ;let s=[],o=c$t(),a=ut().questionsEnabled;try{await On.mkdir(n,{recursive:!0});let c=await On.readdir(i);for(let l of c){let u=Mt.join(i,l);if(!(await On.stat(u)).isDirectory())continue;let{baseName:f,variation:p}=PLe(l);if(p&&!o.includes(p)||f===o$t&&!a)continue;let h=Mt.join(n,f);try{await On.cp(u,h,{recursive:!0});let m=await l$t(u,o);m.variation&&(await On.copyFile(Mt.join(u,m.filename),Mt.join(h,iD)),await On.unlink(Mt.join(h,m.filename)),Zi.log(`Using skill variation for ${f}: ${m.filename}`)),s.push(f),p&&Zi.log(`Installed skill variation: ${f} (variation: ${p})`)}catch(m){Zi.warn(`Failed to copy skill ${f}:`,m.message),
|
|
814
|
+
`},IJ=null;var iD="SKILL.md",c$t=()=>{let t=ut().skillVariations;return Zi.log(`Active skill variations: ${t.length?t.join(", "):"none"}`),t},PLe=t=>{let e=t.match(/^(.+)@([^.]+)(.*)$/);return e?{baseName:`${e[1]}${e[3]}`,variation:e[2]}:{baseName:t,variation:null}},l$t=async(t,e=[])=>{try{let r=await On.readdir(t);for(let n of r){let{baseName:i,variation:s}=PLe(n);if(s&&i===iD&&e.includes(s))return{filename:n,variation:s}}}catch{}return{filename:iD,variation:null}},u$t=async(t,{targetDir:e,sourceDir:r}={})=>{let n=e||ILe[t],i=r||s$t;if(!n)return Zi.warn(`Unknown runner: ${t}, skipping skills setup`),[];if(IJ)return IJ;let s=[],o=c$t(),a=ut().questionsEnabled;try{await On.mkdir(n,{recursive:!0});let c=await On.readdir(i);for(let l of c){let u=Mt.join(i,l);if(!(await On.stat(u)).isDirectory())continue;let{baseName:f,variation:p}=PLe(l);if(p&&!o.includes(p)||f===o$t&&!a)continue;let h=Mt.join(n,f);try{await On.cp(u,h,{recursive:!0});let m=await l$t(u,o);m.variation&&(await On.copyFile(Mt.join(u,m.filename),Mt.join(h,iD)),await On.unlink(Mt.join(h,m.filename)),Zi.log(`Using skill variation for ${f}: ${m.filename}`)),s.push(f),p&&Zi.log(`Installed skill variation: ${f} (variation: ${p})`)}catch(m){Zi.warn(`Failed to copy skill ${f}:`,m.message),Ie.inc("context.degraded",1,{component:"skills"})}}}catch(c){Zi.warn("Failed to setup agent skills:",c.message),Ie.inc("context.degraded",1,{component:"skills"})}if(s.includes("netlify-ai-gateway"))try{let c=await a0(),l=Mt.join(n,"netlify-ai-gateway",iD),u=await On.readFile(l,"utf-8");if(u.includes("<!-- AVAILABLE_MODELS -->")){let d=Object.entries(c.providers).map(([f,p])=>`### ${f}
|
|
815
815
|
|
|
816
816
|
${p.models.map(h=>`- \`${h}\``).join(`
|
|
817
817
|
`)}`).join(`
|
|
818
818
|
|
|
819
|
-
`);u=u.replace("<!-- AVAILABLE_MODELS -->",d),await On.writeFile(l,u,"utf-8"),Zi.log("Injected dynamic model list into AI Gateway skill",{modelList:d})}}catch(c){Zi.warn("Failed to inject dynamic model list into AI Gateway skill:",c.message),
|
|
819
|
+
`);u=u.replace("<!-- AVAILABLE_MODELS -->",d),await On.writeFile(l,u,"utf-8"),Zi.log("Injected dynamic model list into AI Gateway skill",{modelList:d})}}catch(c){Zi.warn("Failed to inject dynamic model list into AI Gateway skill:",c.message),Ie.inc("context.degraded",1,{component:"model_list"})}return s.length>0&&(Zi.log(`Installed ${s.length} skills for ${t}: ${s.join(", ")}`,{runner:t,skills:s,targetDir:n}),Or.getActiveSpan()?.setAttributes({"agent.skills_loaded":s,"agent.skills_loaded_count":s.length})),IJ=s,s},d$t=t=>{let e=t?.constants||{};return{siteId:e.SITE_ID,accountId:Ua.env.NETLIFY_TEAM_ID,userId:Ua.env.NETLIFY_AGENT_RUNNER_USER_ID,siteSlug:Ua.env.SITE_NAME,apiHost:e.NETLIFY_API_HOST,functionsDir:e.FUNCTIONS_DIST}},f$t=10,p$t=async t=>{let{name:e,ext:r}=Mt.parse(t),n=t,i=Mt.join(Ua.cwd(),Qr,n),s=0;for(;await nD(i);){if(s>=f$t)throw new Error("Failed to generate context file");n=`${e}-${t$t.randomUUID().slice(0,5)}${r}`,i=Mt.join(Ua.cwd(),Qr,n),s+=1}return n},nD=async t=>{try{return await On.access(t),!0}catch{return!1}},OLe=async({cliPath:t,netlify:e,config:r,buildErrorContext:n,additionalContext:i,resumePrompt:s})=>{let o=d$t(e),a=await p$t(LQ),c=Mt.join(Ua.cwd(),Qr);await On.mkdir(c,{recursive:!0});let l=Mt.join(Qr,a),u=Mt.join(Ua.cwd(),l),d=Mt.join(Ua.cwd(),Qr,$d);try{await On.unlink(d),Zi.log(`Deleted old results file: ${d}`)}catch{}let f=n?`You've already made changes to complete the above request. However, the build is currently failing after your changes.
|
|
820
820
|
Your task is to analyze and fix the build errors.
|
|
821
821
|
Don't apply techniques of reverting changes. Apply fixes related to errors.
|
|
822
822
|
Don't try to run build by yourself. Just fix the errors.
|
|
@@ -877,10 +877,10 @@ You're an AI agent designed to assist with tasks related to a Netlify project. P
|
|
|
877
877
|
|
|
878
878
|
Use the following file for the complete context of the ask, the environment, and what's available. ${u} You MUST READ ALL OF IT. Make sure to read it first. Never cite or paraphrase private context.
|
|
879
879
|
`),S};var h$t=Re("prompt"),CLe=async({cliPath:t,config:e,netlify:r,buildErrorContext:n,additionalContext:i,resumePrompt:s})=>{let o=await OLe({cliPath:t,config:e,netlify:r,buildErrorContext:n,additionalContext:i,resumePrompt:s});return process.env.AGENT_RUNNER_DEBUG&&h$t.log("Contextful Prompt:",o),{prompt:o}};var NLe=t=>{let e=t.previousSession;return e?e.agent!==t.runner?{viable:!1,outcome:"agent_switch"}:e.nativeSessionId?{viable:!0,outcome:"resumed"}:{viable:!1,outcome:"missing_native_session_id"}:{viable:!1,outcome:"not_eligible"}};import gl from"fs/promises";import CFe from"os";import _l from"path";import{rm as cX}from"fs/promises";import{resolve as m$t}from"path";var g$t=".netlify/cache/",Qp=function({cacheDir:t=g$t,cwd:e="."}={}){return m$t(e,t)};import{promises as vFt}from"fs";import{basename as sFe,dirname as oFe,join as bFt}from"path";import MUt from"process";import UUt from"events";import bt from"path";import FUt from"os";async function d0(t,e,{concurrency:r=Number.POSITIVE_INFINITY,stopOnError:n=!0,signal:i}={}){return new Promise((s,o)=>{if(t[Symbol.iterator]===void 0&&t[Symbol.asyncIterator]===void 0)throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof t})`);if(typeof e!="function")throw new TypeError("Mapper function is required");if(!(Number.isSafeInteger(r)&&r>=1||r===Number.POSITIVE_INFINITY))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${r}\` (${typeof r})`);let a=[],c=[],l=new Map,u=!1,d=!1,f=!1,p=0,h=0,m=t[Symbol.iterator]===void 0?t[Symbol.asyncIterator]():t[Symbol.iterator](),_=()=>{S(i.reason)},y=()=>{i?.removeEventListener("abort",_)},v=w=>{s(w),y()},S=w=>{u=!0,d=!0,o(w),y()};i&&(i.aborted&&S(i.reason),i.addEventListener("abort",_,{once:!0}));let g=async()=>{if(d)return;let w=await m.next(),P=h;if(h++,w.done){if(f=!0,p===0&&!d){if(!n&&c.length>0){S(new AggregateError(c));return}if(d=!0,l.size===0){v(a);return}let x=[];for(let[R,O]of a.entries())l.get(R)!==kLe&&x.push(O);v(x)}return}p++,(async()=>{try{let x=await w.value;if(d)return;let R=await e(x,P);R===kLe&&l.set(P,R),a[P]=R,p--,await g()}catch(x){if(n)S(x);else{c.push(x),p--;try{await g()}catch(R){S(R)}}}})()};(async()=>{for(let w=0;w<r;w++){try{await g()}catch(P){S(P);break}if(f||u)break}})()})}var kLe=Symbol("skip");import th from"path";import lNr,{constants as UJ}from"fs";import FJ from"fs/promises";var OJ=class extends Error{constructor(e){super(e),this.name="TimeoutError"}},CJ=class extends Error{constructor(e){super(),this.name="AbortError",this.message=e}},$Le=t=>globalThis.DOMException===void 0?new CJ(t):new DOMException(t),LLe=t=>{let e=t.reason===void 0?$Le("This operation was aborted."):t.reason;return e instanceof Error?e:$Le(e)};function NJ(t,e){let{milliseconds:r,fallback:n,message:i,customTimers:s={setTimeout,clearTimeout}}=e,o,a,l=new Promise((u,d)=>{if(typeof r!="number"||Math.sign(r)!==1)throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${r}\``);if(e.signal){let{signal:p}=e;p.aborted&&d(LLe(p)),a=()=>{d(LLe(p))},p.addEventListener("abort",a,{once:!0})}if(r===Number.POSITIVE_INFINITY){t.then(u,d);return}let f=new OJ;o=s.setTimeout.call(void 0,()=>{if(n){try{u(n())}catch(p){d(p)}return}typeof t.cancel=="function"&&t.cancel(),i===!1?u():i instanceof Error?d(i):(f.message=i??`Promise timed out after ${r} milliseconds`,d(f))},r),(async()=>{try{u(await t)}catch(p){d(p)}})()}).finally(()=>{l.clear(),a&&e.signal&&e.signal.removeEventListener("abort",a)});return l.clear=()=>{s.clearTimeout.call(void 0,o),o=void 0},l}var _$t=t=>{let e=t.addEventListener||t.on||t.addListener,r=t.removeEventListener||t.off||t.removeListener;if(!e||!r)throw new TypeError("Emitter is not compatible");return{addListener:e.bind(t),removeListener:r.bind(t)}};function y$t(t,e,r){let n,i=new Promise((s,o)=>{if(r={rejectionEvents:["error"],multiArgs:!1,resolveImmediately:!1,...r},!(r.count>=0&&(r.count===Number.POSITIVE_INFINITY||Number.isInteger(r.count))))throw new TypeError("The `count` option should be at least 0 or more");r.signal?.throwIfAborted();let a=[e].flat(),c=[],{addListener:l,removeListener:u}=_$t(t),d=(...p)=>{let h=r.multiArgs?p:p[0];r.filter&&!r.filter(h)||(c.push(h),r.count===c.length&&(n(),s(c)))},f=p=>{n(),o(p)};n=()=>{for(let p of a)u(p,d);for(let p of r.rejectionEvents)u(p,f)};for(let p of a)l(p,d);for(let p of r.rejectionEvents)l(p,f);r.signal&&r.signal.addEventListener("abort",()=>{f(r.signal.reason)},{once:!0}),r.resolveImmediately&&s(c)});if(i.cancel=n,typeof r.timeout=="number"){let s=NJ(i,{milliseconds:r.timeout});return s.cancel=n,s}return i}function sD(t,e,r){typeof r=="function"&&(r={filter:r}),r={...r,count:1,resolveImmediately:!1};let n=y$t(t,e,r),i=n.then(s=>s[0]);return i.cancel=n.cancel,i}var Qn=class extends Error{constructor(e,{cause:r}={}){super(e,{cause:r}),Object.assign(this,r),this.name="CopyFileError"}};var Ao=Ln(GLe(),1);import{promisify as f0}from"util";var rNr=f0(Ao.default.stat),P$t=f0(Ao.default.lstat),O$t=f0(Ao.default.utimes),C$t=f0(Ao.default.chmod),N$t=f0(Ao.default.mkdir),nNr=Ao.default.closeSync.bind(Ao.default),WLe=Ao.default.createWriteStream.bind(Ao.default);async function YLe(t,e){let r=Ao.default.createReadStream(t,e);try{await sD(r,["readable","end"])}catch(n){throw new Qn(`Cannot read from \`${t}\`: ${n.message}`,{cause:n})}return r}var MJ=t=>P$t(t).catch(e=>{throw new Qn(`lstat \`${t}\` failed: ${e.message}`,{cause:e})}),KLe=(t,e,r)=>O$t(t,e,r).catch(n=>{throw new Qn(`utimes \`${t}\` failed: ${n.message}`,{cause:n})}),JLe=(t,e)=>C$t(t,e).catch(r=>{throw new Qn(`chmod \`${t}\` failed: ${r.message}`,{cause:r})});var ZLe=(t,e)=>N$t(t,{...e,recursive:!0}).catch(r=>{throw new Qn(`Cannot create directory \`${t}\`: ${r.message}`,{cause:r})});var $$t=(t,e,r)=>({sourcePath:th.resolve(t,e),destinationPath:th.resolve(t,r)}),L$t=(t,e)=>{if(!t.isFile())throw Object.assign(new Qn(`EISDIR: illegal operation on a directory '${e}'`),{errno:-21,code:"EISDIR",source:e})};async function XLe(t,e,r={}){if(!t||!e)throw new Qn("`source` and `destination` required");r.cwd&&({sourcePath:t,destinationPath:e}=$$t(r.cwd,t,e)),r={overwrite:!0,...r};let n=await MJ(t),{size:i}=n;L$t(n,t);let s=th.dirname(e);if(th.parse(s).root===s||await ZLe(th.dirname(e),{mode:r.directoryMode}),typeof r.onProgress=="function"){let a=await YLe(t),c=WLe(e,{flags:r.overwrite?"w":"wx"}),l=p=>{r.onProgress({sourcePath:th.resolve(t),destinationPath:th.resolve(e),size:i,writtenBytes:p,percent:p===i?1:p/i})},u=-1;a.on("data",()=>{let p=c.bytesWritten,h=p===i?1:p/i;(h===1||h-u>=.01)&&(u=h,l(p))});let d;a.once("error",p=>{d=new Qn(`Cannot read from \`${t}\`: ${p.message}`,{cause:p})});let f=!1;try{let p=sD(c,"close");a.pipe(c),await p,l(i),f=!0}catch(p){throw new Qn(`Cannot write to \`${e}\`: ${p.message}`,{cause:p})}if(d)throw d;if(f){let p=await MJ(t);return Promise.all([KLe(e,p.atime,p.mtime).catch(h=>{if(h.code!=="EPERM")throw h}),JLe(e,p.mode)])}}else{let a=r.overwrite?UJ.COPYFILE_FICLONE:UJ.COPYFILE_FICLONE|UJ.COPYFILE_EXCL;try{await FJ.copyFile(t,e,a),await Promise.all([FJ.utimes(e,n.atime,n.mtime).catch(c=>{if(c.code!=="EPERM")throw c}),FJ.chmod(e,n.mode)])}catch(c){throw new Qn(c.message,{cause:c})}}}async function jJ(t,e,r){return(await d0(t,(i,s)=>Promise.all([e(i,s),i]),r)).filter(i=>!!i[0]).map(i=>i[1])}import dUe from"process";import OUt from"fs";import oS from"path";import{on as D$t,once as M$t}from"events";import{PassThrough as U$t}from"stream";import{finished as tDe}from"stream/promises";function VJ(t){if(!Array.isArray(t))throw new TypeError(`Expected an array, got \`${typeof t}\`.`);for(let i of t)BJ(i);let e=t.some(({readableObjectMode:i})=>i),r=F$t(t,e),n=new qJ({objectMode:e,writableHighWaterMark:r,readableHighWaterMark:r});for(let i of t)n.add(i);return t.length===0&&iDe(n),n}var F$t=(t,e)=>{if(t.length===0)return 16384;let r=t.filter(({readableObjectMode:n})=>n===e).map(({readableHighWaterMark:n})=>n);return Math.max(...r)},qJ=class extends U$t{#e=new Set([]);#r=new Set([]);#t=new Set([]);#n;add(e){BJ(e),!this.#e.has(e)&&(this.#e.add(e),this.#n??=j$t(this,this.#e),z$t({passThroughStream:this,stream:e,streams:this.#e,ended:this.#r,aborted:this.#t,onFinished:this.#n}),e.pipe(this,{end:!1}))}remove(e){return BJ(e),this.#e.has(e)?(e.unpipe(this),!0):!1}},j$t=async(t,e)=>{uD(t,QLe);let r=new AbortController;try{await Promise.race([q$t(t,r),B$t(t,e,r)])}finally{r.abort(),uD(t,-QLe)}},q$t=async(t,{signal:e})=>{await tDe(t,{signal:e,cleanup:!0})},B$t=async(t,e,{signal:r})=>{for await(let[n]of D$t(t,"unpipe",{signal:r}))e.has(n)&&n.emit(nDe)},BJ=t=>{if(typeof t?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof t}\`.`)},z$t=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,onFinished:s})=>{uD(t,eDe);let o=new AbortController;try{await Promise.race([V$t(s,e),H$t({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:o}),G$t({stream:e,streams:r,ended:n,aborted:i,controller:o})])}finally{o.abort(),uD(t,-eDe)}r.size===n.size+i.size&&(n.size===0&&i.size>0?zJ(t):iDe(t))},rDe=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",V$t=async(t,e)=>{try{await t,zJ(e)}catch(r){rDe(r)?zJ(e):sDe(e,r)}},H$t=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:{signal:s}})=>{try{await tDe(e,{signal:s,cleanup:!0,readable:!0,writable:!1}),r.has(e)&&n.add(e)}catch(o){if(s.aborted||!r.has(e))return;rDe(o)?i.add(e):sDe(t,o)}},G$t=async({stream:t,streams:e,ended:r,aborted:n,controller:{signal:i}})=>{await M$t(t,nDe,{signal:i}),e.delete(t),r.delete(t),n.delete(t)},nDe=Symbol("unpipe"),iDe=t=>{t.writable&&t.end()},zJ=t=>{(t.readable||t.writable)&&t.destroy()},sDe=(t,e)=>{t.destroyed||(t.once("error",W$t),t.destroy(e))},W$t=()=>{},uD=(t,e)=>{let r=t.getMaxListeners();r!==0&&r!==Number.POSITIVE_INFINITY&&t.setMaxListeners(r+e)},QLe=2,eDe=1;var aS=Ln(S0(),1);import tUt from"fs";import rUt from"fs/promises";async function P7(t,e,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await rUt[t](r))[e]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}function O7(t,e,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return tUt[t](r)[e]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}var jkr=P7.bind(void 0,"stat","isFile"),G1e=P7.bind(void 0,"stat","isDirectory"),qkr=P7.bind(void 0,"lstat","isSymbolicLink"),Bkr=O7.bind(void 0,"statSync","isFile"),W1e=O7.bind(void 0,"statSync","isDirectory"),zkr=O7.bind(void 0,"lstatSync","isSymbolicLink");var U7=Ln(S0(),1),rUe=Ln(M7(),1);import TUt from"process";import wUt from"fs";import RUt from"fs/promises";import sS from"path";function iS(t){return t.startsWith("\\\\?\\")?t:t.replace(/\\/g,"/")}var v0=t=>t[0]==="!";var AUt=["**/node_modules","**/flow-typed","**/coverage","**/.git"],nUe={absolute:!0,dot:!0},iUe="**/.gitignore",xUt=(t,e)=>v0(t)?"!"+sS.posix.join(e,t.slice(1)):sS.posix.join(e,t),IUt=(t,e)=>{let r=iS(sS.relative(e,sS.dirname(t.filePath)));return t.content.split(/\r?\n/).filter(n=>n&&!n.startsWith("#")).map(n=>xUt(n,r))},PUt=(t,e)=>{if(e=iS(e),sS.isAbsolute(t)){if(iS(t).startsWith(e))return sS.relative(e,t);throw new Error(`Path ${t} is not in cwd ${e}`)}return t},sUe=(t,e)=>{let r=t.flatMap(i=>IUt(i,e)),n=(0,rUe.default)().add(r);return i=>(i=pi(i),i=PUt(i,e),i?n.ignores(iS(i)):!1)},oUe=(t={})=>({cwd:pi(t.cwd)??TUt.cwd(),suppressErrors:!!t.suppressErrors,deep:typeof t.deep=="number"?t.deep:Number.POSITIVE_INFINITY,ignore:[...t.ignore??[],...AUt]}),aUe=async(t,e)=>{let{cwd:r,suppressErrors:n,deep:i,ignore:s}=oUe(e),o=await(0,U7.default)(t,{cwd:r,suppressErrors:n,deep:i,ignore:s,...nUe}),a=await Promise.all(o.map(async c=>({filePath:c,content:await RUt.readFile(c,"utf8")})));return sUe(a,r)},cUe=(t,e)=>{let{cwd:r,suppressErrors:n,deep:i,ignore:s}=oUe(e),a=U7.default.sync(t,{cwd:r,suppressErrors:n,deep:i,ignore:s,...nUe}).map(c=>({filePath:c,content:wUt.readFileSync(c,"utf8")}));return sUe(a,r)};var CUt=t=>{if(t.some(e=>typeof e!="string"))throw new TypeError("Patterns must be a string or an array of strings")},fUe=(t,e)=>{let r=v0(t)?t.slice(1):t;return oS.isAbsolute(r)?r:oS.join(e,r)},pUe=({directoryPath:t,files:e,extensions:r})=>{let n=r?.length>0?`.${r.length>1?`{${r.join(",")}}`:r[0]}`:"";return e?e.map(i=>oS.posix.join(t,`**/${oS.extname(i)?i:`${i}${n}`}`)):[oS.posix.join(t,`**${n?`/*${n}`:""}`)]},lUe=async(t,{cwd:e=dUe.cwd(),files:r,extensions:n}={})=>(await Promise.all(t.map(async s=>await G1e(fUe(s,e))?pUe({directoryPath:s,files:r,extensions:n}):s))).flat(),uUe=(t,{cwd:e=dUe.cwd(),files:r,extensions:n}={})=>t.flatMap(i=>W1e(fUe(i,e))?pUe({directoryPath:i,files:r,extensions:n}):i),F7=t=>(t=[...new Set([t].flat())],CUt(t),t),NUt=t=>{if(!t)return;let e;try{e=OUt.statSync(t)}catch{return}if(!e.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},hUe=(t={})=>(t={...t,ignore:t.ignore??[],expandDirectories:t.expandDirectories??!0,cwd:pi(t.cwd)},NUt(t.cwd),t),mUe=t=>async(e,r)=>t(F7(e),hUe(r)),BD=t=>(e,r)=>t(F7(e),hUe(r)),gUe=t=>{let{ignoreFiles:e,gitignore:r}=t,n=e?F7(e):[];return r&&n.push(iUe),n},kUt=async t=>{let e=gUe(t);return yUe(e.length>0&&await aUe(e,t))},_Ue=t=>{let e=gUe(t);return yUe(e.length>0&&cUe(e,t))},yUe=t=>{let e=new Set;return r=>{let n=oS.normalize(r.path??r);return e.has(n)||t&&t(n)?!1:(e.add(n),!0)}},SUe=(t,e)=>t.flat().filter(r=>e(r)),EUe=(t,e)=>{let r=[];for(;t.length>0;){let n=t.findIndex(s=>v0(s));if(n===-1){r.push({patterns:t,options:e});break}let i=t[n].slice(1);for(let s of r)s.options.ignore.push(i);n!==0&&r.push({patterns:t.slice(0,n),options:{...e,ignore:[...e.ignore,i]}}),t=t.slice(n+1)}return r},vUe=(t,e)=>({...e?{cwd:e}:{},...Array.isArray(t)?{files:t}:t}),bUe=async(t,e)=>{let r=EUe(t,e),{cwd:n,expandDirectories:i}=e;if(!i)return r;let s=vUe(i,n);return Promise.all(r.map(async o=>{let{patterns:a,options:c}=o;return[a,c.ignore]=await Promise.all([lUe(a,s),lUe(c.ignore,{cwd:n})]),{patterns:a,options:c}}))},j7=(t,e)=>{let r=EUe(t,e),{cwd:n,expandDirectories:i}=e;if(!i)return r;let s=vUe(i,n);return r.map(o=>{let{patterns:a,options:c}=o;return a=uUe(a,s),c.ignore=uUe(c.ignore,{cwd:n}),{patterns:a,options:c}})},u$r=mUe(async(t,e)=>{let[r,n]=await Promise.all([bUe(t,e),kUt(e)]),i=await Promise.all(r.map(s=>(0,aS.default)(s.patterns,s.options)));return SUe(i,n)}),TUe=BD((t,e)=>{let r=j7(t,e),n=_Ue(e),i=r.map(s=>aS.default.sync(s.patterns,s.options));return SUe(i,n)}),d$r=BD((t,e)=>{let r=j7(t,e),n=_Ue(e),i=r.map(o=>aS.default.stream(o.patterns,o.options));return VJ(i).filter(o=>n(o))}),sh=BD((t,e)=>t.some(r=>aS.default.isDynamicPattern(r,e))),f$r=mUe(bUe),p$r=BD(j7),{convertPathToPattern:h$r}=aS.default;var RUe=Ln(fZ(),1);var xd=class extends Error{constructor(e,{cause:r}={}){super(e,{cause:r}),Object.assign(this,r),this.name="CpyError"}};import VD from"path";import wUe from"fs";var $Ut=["^npm-debug\\.log$","^\\..*\\.swp$","^\\.DS_Store$","^\\.AppleDouble$","^\\.LSOverride$","^Icon\\r$","^\\._.*","^\\.Spotlight-V100(?:$|\\/)","\\.Trashes","^__MACOSX$","~$","^Thumbs\\.db$","^ehthumbs\\.db$","^[Dd]esktop\\.ini$","@eaDir$"],LUt=new RegExp($Ut.join("|"));function DUt(t){return LUt.test(t)}function zD(t){return!DUt(t)}var b0=class{constructor(e,r,n){this.path=e,this.originalPath=e,this.destination=r,this.options=n,this.isDirectory=!1,!sh(e)&&wUe.existsSync(e)&&wUe.lstatSync(e).isDirectory()&&(this.path=[e,"**"].join("/"),this.isDirectory=!0)}get name(){return VD.basename(this.originalPath)}get normalizedPath(){let e=this.originalPath.split("/"),r=e.findIndex(i=>i?sh(i):!1),n=e.slice(0,r).join("/");return n?VD.isAbsolute(n)?n:VD.join(this.options.cwd,n):this.destination}hasMagic(){return sh(this.options.flat?this.path:this.originalPath)}getMatches(){let e=TUe(this.path,{...this.options,dot:!0,absolute:!0,onlyFiles:!0});return this.options.ignoreJunk&&(e=e.filter(r=>zD(VD.basename(r)))),e}};var jUt={ignoreJunk:!0,flat:!1,cwd:MUt.cwd()},q7=class{constructor(e,r,n){this.path=e.split("/").join(bt.sep),this.relativePath=r.split("/").join(bt.sep),this.pattern=n,Object.freeze(this)}get name(){return bt.basename(this.path)}get nameWithoutExtension(){return bt.basename(this.path,bt.extname(this.path))}get extension(){return bt.extname(this.path).slice(1)}},qUt=t=>t.flatMap(e=>RUe.default.braces(e,{expand:!0,nodupes:!0})),BUt=({entry:t,destination:e,options:r})=>t.pattern.hasMagic()?r.flat?bt.isAbsolute(e)?bt.join(e,t.name):bt.join(r.cwd,e,t.name):bt.join(e,bt.relative(t.pattern.normalizedPath,t.path)):bt.isAbsolute(e)?bt.join(e,t.name):t.pattern.isDirectory&&bt.relative(r.cwd,t.path).startsWith("..")?bt.join(r.cwd,e,bt.basename(t.pattern.originalPath),bt.relative(t.pattern.originalPath,t.path)):!t.pattern.isDirectory&&t.path===t.relativePath?bt.join(r.cwd,e,bt.basename(t.pattern.originalPath),bt.relative(t.pattern.originalPath,t.path)):!t.pattern.isDirectory&&r.flat?bt.join(r.cwd,e,bt.basename(t.pattern.originalPath)):bt.join(r.cwd,e,bt.relative(r.cwd,t.path)),zUt=(t,e)=>{let r=bt.dirname(t);if(typeof e=="string")return bt.join(r,e);if(typeof e=="function"){let n=bt.basename(t);return bt.join(r,e(n))}return t};function B7(t,e,{concurrency:r=FUt.availableParallelism(),...n}={}){let i=new Map,s=new UUt;n={...jUt,...n};let o=(async()=>{let a=[],c=0,l=0,u=qUt([t??[]].flat()).map(h=>h.replaceAll("\\","/")),d=u.filter(h=>!h.startsWith("!")),f=u.filter(h=>h.startsWith("!"));if(d.length===0||!e)throw new xd("`source` and `destination` required");u=u.map(h=>new b0(h,e,{...n,ignore:f}));for(let h of u){let m=[];try{m=h.getMatches()}catch(_){throw new xd(`Cannot glob \`${h.originalPath}\`: ${_.message}`,{cause:_})}if(m.length===0&&!sh(h.originalPath)&&!sh(f))throw new xd(`Cannot copy \`${h.originalPath}\`: the file doesn't exist`);a=[...a,...m.map(_=>new q7(_,bt.relative(n.cwd,_),h))]}n.filter!==void 0&&(a=await jJ(a,n.filter,{concurrency:1024})),a.length===0&&s.emit("progress",{totalFiles:0,percent:1,completedFiles:0,completedSize:0});let p=h=>{let m=i.get(h.sourcePath)||{writtenBytes:0,percent:0};(m.writtenBytes!==h.writtenBytes||m.percent!==h.percent)&&(l-=m.writtenBytes,l+=h.writtenBytes,h.percent===1&&m.percent!==1&&c++,i.set(h.sourcePath,{writtenBytes:h.writtenBytes,percent:h.percent}),s.emit("progress",{totalFiles:a.length,percent:c/a.length,completedFiles:c,completedSize:l,sourcePath:h.sourcePath,destinationPath:h.destinationPath}))};return d0(a,async h=>{let m=zUt(BUt({entry:h,destination:e,options:n}),n.rename);try{await XLe(h.path,m,{...n,onProgress:p})}catch(_){throw new xd(`Cannot copy from \`${h.relativePath}\` to \`${m}\`: ${_.message}`,{cause:_})}return m},{concurrency:r})})();return o.on=(...a)=>(s.on(...a),o),o}import VUe from"process";import dFt from"fs";import uS from"path";import{on as VUt,once as HUt}from"events";import{PassThrough as GUt}from"stream";import{finished as IUe}from"stream/promises";function G7(t){if(!Array.isArray(t))throw new TypeError(`Expected an array, got \`${typeof t}\`.`);for(let i of t)V7(i);let e=t.some(({readableObjectMode:i})=>i),r=WUt(t,e),n=new z7({objectMode:e,writableHighWaterMark:r,readableHighWaterMark:r});for(let i of t)n.add(i);return t.length===0&&CUe(n),n}var WUt=(t,e)=>{if(t.length===0)return 16384;let r=t.filter(({readableObjectMode:n})=>n===e).map(({readableHighWaterMark:n})=>n);return Math.max(...r)},z7=class extends GUt{#e=new Set([]);#r=new Set([]);#t=new Set([]);#n;add(e){V7(e),!this.#e.has(e)&&(this.#e.add(e),this.#n??=YUt(this,this.#e),ZUt({passThroughStream:this,stream:e,streams:this.#e,ended:this.#r,aborted:this.#t,onFinished:this.#n}),e.pipe(this,{end:!1}))}remove(e){return V7(e),this.#e.has(e)?(e.unpipe(this),!0):!1}},YUt=async(t,e)=>{HD(t,AUe);let r=new AbortController;try{await Promise.race([KUt(t,r),JUt(t,e,r)])}finally{r.abort(),HD(t,-AUe)}},KUt=async(t,{signal:e})=>{await IUe(t,{signal:e,cleanup:!0})},JUt=async(t,e,{signal:r})=>{for await(let[n]of VUt(t,"unpipe",{signal:r}))e.has(n)&&n.emit(OUe)},V7=t=>{if(typeof t?.pipe!="function")throw new TypeError(`Expected a readable stream, got: \`${typeof t}\`.`)},ZUt=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,onFinished:s})=>{HD(t,xUe);let o=new AbortController;try{await Promise.race([XUt(s,e),QUt({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:o}),eFt({stream:e,streams:r,ended:n,aborted:i,controller:o})])}finally{o.abort(),HD(t,-xUe)}r.size===n.size+i.size&&(n.size===0&&i.size>0?H7(t):CUe(t))},PUe=t=>t?.code==="ERR_STREAM_PREMATURE_CLOSE",XUt=async(t,e)=>{try{await t,H7(e)}catch(r){PUe(r)?H7(e):NUe(e,r)}},QUt=async({passThroughStream:t,stream:e,streams:r,ended:n,aborted:i,controller:{signal:s}})=>{try{await IUe(e,{signal:s,cleanup:!0,readable:!0,writable:!1}),r.has(e)&&n.add(e)}catch(o){if(s.aborted||!r.has(e))return;PUe(o)?i.add(e):NUe(t,o)}},eFt=async({stream:t,streams:e,ended:r,aborted:n,controller:{signal:i}})=>{await HUt(t,OUe,{signal:i}),e.delete(t),r.delete(t),n.delete(t)},OUe=Symbol("unpipe"),CUe=t=>{t.writable&&t.end()},H7=t=>{(t.readable||t.writable)&&t.destroy()},NUe=(t,e)=>{t.destroyed||(t.once("error",tFt),t.destroy(e))},tFt=()=>{},HD=(t,e)=>{let r=t.getMaxListeners();r!==0&&r!==Number.POSITIVE_INFINITY&&t.setMaxListeners(r+e)},AUe=2,xUe=1;var dS=Ln(S0(),1);import rFt from"fs";import nFt from"fs/promises";async function W7(t,e,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return(await nFt[t](r))[e]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}function Y7(t,e,r){if(typeof r!="string")throw new TypeError(`Expected a string, got ${typeof r}`);try{return rFt[t](r)[e]()}catch(n){if(n.code==="ENOENT")return!1;throw n}}var j$r=W7.bind(void 0,"stat","isFile"),kUe=W7.bind(void 0,"stat","isDirectory"),q$r=W7.bind(void 0,"lstat","isSymbolicLink"),B$r=Y7.bind(void 0,"statSync","isFile"),$Ue=Y7.bind(void 0,"statSync","isDirectory"),z$r=Y7.bind(void 0,"lstatSync","isSymbolicLink");var K7=Ln(S0(),1),LUe=Ln(M7(),1);import iFt from"process";import sFt from"fs";import oFt from"fs/promises";import lS from"path";function cS(t){return t.startsWith("\\\\?\\")?t:t.replace(/\\/g,"/")}var T0=t=>t[0]==="!";var aFt=["**/node_modules","**/flow-typed","**/coverage","**/.git"],DUe={absolute:!0,dot:!0},MUe="**/.gitignore",cFt=(t,e)=>T0(t)?"!"+lS.posix.join(e,t.slice(1)):lS.posix.join(e,t),lFt=(t,e)=>{let r=cS(lS.relative(e,lS.dirname(t.filePath)));return t.content.split(/\r?\n/).filter(n=>n&&!n.startsWith("#")).map(n=>cFt(n,r))},uFt=(t,e)=>{if(e=cS(e),lS.isAbsolute(t)){if(cS(t).startsWith(e))return lS.relative(e,t);throw new Error(`Path ${t} is not in cwd ${e}`)}return t},UUe=(t,e)=>{let r=t.flatMap(i=>lFt(i,e)),n=(0,LUe.default)().add(r);return i=>(i=pi(i),i=uFt(i,e),i?n.ignores(cS(i)):!1)},FUe=(t={})=>({cwd:pi(t.cwd)??iFt.cwd(),suppressErrors:!!t.suppressErrors,deep:typeof t.deep=="number"?t.deep:Number.POSITIVE_INFINITY,ignore:[...t.ignore??[],...aFt]}),jUe=async(t,e)=>{let{cwd:r,suppressErrors:n,deep:i,ignore:s}=FUe(e),o=await(0,K7.default)(t,{cwd:r,suppressErrors:n,deep:i,ignore:s,...DUe}),a=await Promise.all(o.map(async c=>({filePath:c,content:await oFt.readFile(c,"utf8")})));return UUe(a,r)},qUe=(t,e)=>{let{cwd:r,suppressErrors:n,deep:i,ignore:s}=FUe(e),a=K7.default.sync(t,{cwd:r,suppressErrors:n,deep:i,ignore:s,...DUe}).map(c=>({filePath:c,content:sFt.readFileSync(c,"utf8")}));return UUe(a,r)};var fFt=t=>{if(t.some(e=>typeof e!="string"))throw new TypeError("Patterns must be a string or an array of strings")},HUe=(t,e)=>{let r=T0(t)?t.slice(1):t;return uS.isAbsolute(r)?r:uS.join(e,r)},GUe=({directoryPath:t,files:e,extensions:r})=>{let n=r?.length>0?`.${r.length>1?`{${r.join(",")}}`:r[0]}`:"";return e?e.map(i=>uS.posix.join(t,`**/${uS.extname(i)?i:`${i}${n}`}`)):[uS.posix.join(t,`**${n?`/*${n}`:""}`)]},BUe=async(t,{cwd:e=VUe.cwd(),files:r,extensions:n}={})=>(await Promise.all(t.map(async s=>await kUe(HUe(s,e))?GUe({directoryPath:s,files:r,extensions:n}):s))).flat(),zUe=(t,{cwd:e=VUe.cwd(),files:r,extensions:n}={})=>t.flatMap(i=>$Ue(HUe(i,e))?GUe({directoryPath:i,files:r,extensions:n}):i),J7=t=>(t=[...new Set([t].flat())],fFt(t),t),pFt=t=>{if(!t)return;let e;try{e=dFt.statSync(t)}catch{return}if(!e.isDirectory())throw new Error("The `cwd` option must be a path to a directory")},WUe=(t={})=>(t={...t,ignore:t.ignore??[],expandDirectories:t.expandDirectories??!0,cwd:pi(t.cwd)},pFt(t.cwd),t),YUe=t=>async(e,r)=>t(J7(e),WUe(r)),GD=t=>(e,r)=>t(J7(e),WUe(r)),KUe=t=>{let{ignoreFiles:e,gitignore:r}=t,n=e?J7(e):[];return r&&n.push(MUe),n},hFt=async t=>{let e=KUe(t);return ZUe(e.length>0&&await jUe(e,t))},JUe=t=>{let e=KUe(t);return ZUe(e.length>0&&qUe(e,t))},ZUe=t=>{let e=new Set;return r=>{let n=uS.normalize(r.path??r);return e.has(n)||t&&t(n)?!1:(e.add(n),!0)}},XUe=(t,e)=>t.flat().filter(r=>e(r)),QUe=(t,e)=>{let r=[];for(;t.length>0;){let n=t.findIndex(s=>T0(s));if(n===-1){r.push({patterns:t,options:e});break}let i=t[n].slice(1);for(let s of r)s.options.ignore.push(i);n!==0&&r.push({patterns:t.slice(0,n),options:{...e,ignore:[...e.ignore,i]}}),t=t.slice(n+1)}return r},eFe=(t,e)=>({...e?{cwd:e}:{},...Array.isArray(t)?{files:t}:t}),tFe=async(t,e)=>{let r=QUe(t,e),{cwd:n,expandDirectories:i}=e;if(!i)return r;let s=eFe(i,n);return Promise.all(r.map(async o=>{let{patterns:a,options:c}=o;return[a,c.ignore]=await Promise.all([BUe(a,s),BUe(c.ignore,{cwd:n})]),{patterns:a,options:c}}))},Z7=(t,e)=>{let r=QUe(t,e),{cwd:n,expandDirectories:i}=e;if(!i)return r;let s=eFe(i,n);return r.map(o=>{let{patterns:a,options:c}=o;return a=zUe(a,s),c.ignore=zUe(c.ignore,{cwd:n}),{patterns:a,options:c}})},rFe=YUe(async(t,e)=>{let[r,n]=await Promise.all([tFe(t,e),hFt(e)]),i=await Promise.all(r.map(s=>(0,dS.default)(s.patterns,s.options)));return XUe(i,n)}),lLr=GD((t,e)=>{let r=Z7(t,e),n=JUe(e),i=r.map(s=>dS.default.sync(s.patterns,s.options));return XUe(i,n)}),uLr=GD((t,e)=>{let r=Z7(t,e),n=JUe(e),i=r.map(o=>dS.default.stream(o.patterns,o.options));return G7(i).filter(o=>n(o))}),dLr=GD((t,e)=>t.some(r=>dS.default.isDynamicPattern(r,e))),fLr=YUe(tFe),pLr=GD(Z7),{convertPathToPattern:hLr}=dS.default;import gFt from"process";import w0 from"path";import bLr,{promises as WD}from"fs";import _Lr,{promises as mFt}from"fs";async function nFe(t){try{return await mFt.access(t),!0}catch{return!1}}var _Ft=(t,e,r)=>(e=w0.resolve(t,e),r=w0.resolve(t,r),{sourcePath:e,destinationPath:r}),yFt=(t,e,r="Path")=>{if(!t||!e)throw new TypeError(`\`source${r}\` and \`destination${r}\` required`)},SFt=(t,e)=>{if(w0.dirname(t)!==w0.dirname(e))throw new Error("`source` and `destination` must be in the same directory")},EFt=async(t,e,{overwrite:r=!0,cwd:n=gFt.cwd(),directoryMode:i,validateDirectory:s=!1}={})=>{if(n&&({sourcePath:t,destinationPath:e}=_Ft(n,t,e)),s&&SFt(t,e),!r&&await nFe(e))throw new Error(`The destination file exists: ${e}`);await WD.mkdir(w0.dirname(e),{recursive:!0,mode:i});try{await WD.rename(t,e)}catch(o){if(o.code==="EXDEV")await WD.copyFile(t,e),await WD.unlink(t);else throw o}};async function iFe(t,e,r){return yFt(t,e),EFt(t,e,r)}var X7=async function(t,e,r=!1){if(r)return iFe(t,e,{overwrite:!1});let{srcGlob:n,dest:i,...s}=await aFe(t,oFe(e));if(n&&i)return B7(n,i,{...s,overwrite:!1})},R0=async function(t){let{srcGlob:e,isDir:r,dest:n,...i}=await aFe(t,"");return e!==void 0&&!await TFt(e,r,i)},TFt=async function(t,e,r){return e?(await rFe(t,r)).filter(s=>zD(sFe(s))).length===0:!1},aFe=async function(t,e){let r=await wFt(t);if(r===void 0)return{srcGlob:void 0,isDir:!1,cwd:""};let n=r.isDirectory(),i=sFe(t),s=oFe(t),o={srcGlob:i,dest:e,isDir:n,cwd:s,dot:!0};return n?{...o,srcGlob:`${i}/**`,dest:bFt(e,i)}:o},wFt=async t=>{try{return await vFt.stat(t)}catch{return}};import{join as Sjt}from"path";import{stat as RFt,lstat as cFe,readdir as AFt,realpath as xFt}from"fs/promises";import{Readable as IFt}from"stream";import{resolve as lFe,relative as PFt,join as OFt,sep as CFt}from"path";var Qi={FILE_TYPE:"files",DIR_TYPE:"directories",FILE_DIR_TYPE:"files_directories",EVERYTHING_TYPE:"all"},Q7={root:".",fileFilter:t=>!0,directoryFilter:t=>!0,type:Qi.FILE_TYPE,lstat:!1,depth:2147483648,alwaysStat:!1,highWaterMark:4096};Object.freeze(Q7);var pFe="READDIRP_RECURSIVE_ERROR",NFt=new Set(["ENOENT","EPERM","EACCES","ELOOP",pFe]),uFe=[Qi.DIR_TYPE,Qi.EVERYTHING_TYPE,Qi.FILE_DIR_TYPE,Qi.FILE_TYPE],kFt=new Set([Qi.DIR_TYPE,Qi.EVERYTHING_TYPE,Qi.FILE_DIR_TYPE]),$Ft=new Set([Qi.EVERYTHING_TYPE,Qi.FILE_DIR_TYPE,Qi.FILE_TYPE]),LFt=t=>NFt.has(t.code),DFt=process.platform==="win32",dFe=t=>!0,fFe=t=>{if(t===void 0)return dFe;if(typeof t=="function")return t;if(typeof t=="string"){let e=t.trim();return r=>r.basename===e}if(Array.isArray(t)){let e=t.map(r=>r.trim());return r=>e.some(n=>r.basename===n)}return dFe},eX=class extends IFt{constructor(e={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:e.highWaterMark});let r={...Q7,...e},{root:n,type:i}=r;this._fileFilter=fFe(r.fileFilter),this._directoryFilter=fFe(r.directoryFilter);let s=r.lstat?cFe:RFt;DFt?this._stat=o=>s(o,{bigint:!0}):this._stat=s,this._maxDepth=r.depth??Q7.depth,this._wantsDir=i?kFt.has(i):!1,this._wantsFile=i?$Ft.has(i):!1,this._wantsEverything=i===Qi.EVERYTHING_TYPE,this._root=lFe(n),this._isDirent=!r.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(n,1)],this.reading=!1,this.parent=void 0}async _read(e){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&e>0;){let r=this.parent,n=r&&r.files;if(n&&n.length>0){let{path:i,depth:s}=r,o=n.splice(0,e).map(c=>this._formatEntry(c,i)),a=await Promise.all(o);for(let c of a){if(!c)continue;if(this.destroyed)return;let l=await this._getEntryType(c);l==="directory"&&this._directoryFilter(c)?(s<=this._maxDepth&&this.parents.push(this._exploreDir(c.fullPath,s+1)),this._wantsDir&&(this.push(c),e--)):(l==="file"||this._includeAsFile(c))&&this._fileFilter(c)&&this._wantsFile&&(this.push(c),e--)}}else{let i=this.parents.pop();if(!i){this.push(null);break}if(this.parent=await i,this.destroyed)return}}}catch(r){this.destroy(r)}finally{this.reading=!1}}}async _exploreDir(e,r){let n;try{n=await AFt(e,this._rdOptions)}catch(i){this._onError(i)}return{files:n,depth:r,path:e}}async _formatEntry(e,r){let n,i=this._isDirent?e.name:e;try{let s=lFe(OFt(r,i));n={path:PFt(this._root,s),fullPath:s,basename:i},n[this._statsProp]=this._isDirent?e:await this._stat(s)}catch(s){this._onError(s);return}return n}_onError(e){LFt(e)&&!this.destroyed?this.emit("warn",e):this.destroy(e)}async _getEntryType(e){if(!e&&this._statsProp in e)return"";let r=e[this._statsProp];if(r.isFile())return"file";if(r.isDirectory())return"directory";if(r&&r.isSymbolicLink()){let n=e.fullPath;try{let i=await xFt(n),s=await cFe(i);if(s.isFile())return"file";if(s.isDirectory()){let o=i.length;if(n.startsWith(i)&&n.substr(o,1)===CFt){let a=new Error(`Circular symlink detected: "${n}" points to "${i}"`);return a.code=pFe,this._onError(a)}return"directory"}}catch(i){return this._onError(i),""}}}_includeAsFile(e){let r=e&&e[this._statsProp];return r&&this._wantsEverything&&!r.isDirectory()}};function MFt(t,e={}){let r=e.entryType||e.type;if(r==="both"&&(r=Qi.FILE_DIR_TYPE),r&&(e.type=r),t){if(typeof t!="string")throw new TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");if(r&&!uFe.includes(r))throw new Error(`readdirp: Invalid type passed. Use one of ${uFe.join(", ")}`)}else throw new Error("readdirp: root argument is required. Usage: readdirp(root, options)");return e.root=t,new eX(e)}function hFe(t,e={}){return new Promise((r,n)=>{let i=[];MFt(t,e).on("data",s=>i.push(s)).on("end",()=>r(i)).on("error",s=>n(s))})}import{mkdir as JFt,readFile as vFe,rm as ZFt,writeFile as XFt}from"fs/promises";import{existsSync as bFe}from"fs";import{dirname as QFt}from"path";var mFe=t=>{if(!(!Number.isInteger(t)||t<1))return Date.now()+t*1e3},gFe=t=>t!==void 0&&Date.now()>t;import{createHash as GFt}from"crypto";import{createReadStream as WFt}from"fs";import jFt from"process";import qFt from"path";import HLr,{promises as _Fe}from"fs";import{fileURLToPath as BFt}from"url";var tX=class{value;next;constructor(e){this.value=e}},A0=class{#e;#r;#t;constructor(){this.clear()}enqueue(e){let r=new tX(e);this.#e?(this.#r.next=r,this.#r=r):(this.#e=r,this.#r=r),this.#t++}dequeue(){let e=this.#e;if(e)return this.#e=this.#e.next,this.#t--,this.#e||(this.#r=void 0),e.value}peek(){if(this.#e)return this.#e.value}clear(){this.#e=void 0,this.#r=void 0,this.#t=0}get size(){return this.#t}*[Symbol.iterator](){let e=this.#e;for(;e;)yield e.value,e=e.next}*drain(){for(;this.#e;)yield this.dequeue()}};function YD(t){if(!((Number.isInteger(t)||t===Number.POSITIVE_INFINITY)&&t>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up");let e=new A0,r=0,n=()=>{r--,e.size>0&&e.dequeue()()},i=async(a,c,l)=>{r++;let u=(async()=>a(...l))();c(u);try{await u}catch{}n()},s=(a,c,l)=>{e.enqueue(i.bind(void 0,a,c,l)),(async()=>(await Promise.resolve(),r<t&&e.size>0&&e.dequeue()()))()},o=(a,...c)=>new Promise(l=>{s(a,l,c)});return Object.defineProperties(o,{activeCount:{get:()=>r},pendingCount:{get:()=>e.size},clearQueue:{value:()=>{e.clear()}}}),o}var KD=class extends Error{constructor(e){super(),this.value=e}},UFt=async(t,e)=>e(await t),FFt=async t=>{let e=await Promise.all(t);if(e[1]===!0)throw new KD(e[0]);return!1};async function rX(t,e,{concurrency:r=Number.POSITIVE_INFINITY,preserveOrder:n=!0}={}){let i=YD(r),s=[...t].map(a=>[a,i(UFt,a,e)]),o=YD(n?1:Number.POSITIVE_INFINITY);try{await Promise.all(s.map(a=>o(FFt,a)))}catch(a){if(a instanceof KD)return a.value;throw a}}var yFe={directory:"isDirectory",file:"isFile"};function zFt(t){if(!Object.hasOwnProperty.call(yFe,t))throw new Error(`Invalid type specified: ${t}`)}var VFt=(t,e)=>e[yFe[t]](),HFt=t=>t instanceof URL?BFt(t):t;async function SFe(t,{cwd:e=jFt.cwd(),type:r="file",allowSymlinks:n=!0,concurrency:i,preserveOrder:s}={}){zFt(r),e=HFt(e);let o=n?_Fe.stat:_Fe.lstat;return rX(t,async a=>{try{let c=await o(qFt.resolve(e,a));return VFt(r,c)}catch{return!1}},{concurrency:i,preserveOrder:s})}var YFt="sha1",EFe=async function(t,e){if(e||t.length===0)return;let r=await SFe(t);return r===void 0?void 0:await KFt(r)},KFt=async function(t){let e=WFt(t,"utf8"),r=GFt(YFt,{encoding:"hex"});return e.pipe(r),await $g(r)};var TFe=async function({cachePath:t,move:e,ttl:r,digests:n}){let i=JD(t),s=mFe(r),o=await EFe(n,e),c=`${JSON.stringify({expires:s,hash:o},null,2)}
|
|
880
|
-
`,l=await ejt({hash:o,manifestPath:i,manifestString:c});return{manifestInfo:{manifestPath:i,manifestString:c},identical:l}},ejt=async function({hash:t,manifestPath:e,manifestString:r}){return t===void 0||!bFe(e)?!1:await vFe(e,"utf8")===r},wFe=async function({manifestPath:t,manifestString:e}){await JFt(QFt(t),{recursive:!0}),await XFt(t,e)},RFe=async function(t){let e=JD(t);await ZFt(e,{force:!0,recursive:!0,maxRetries:3})},JD=function(t){return`${t}${xFe}`},AFe=function(t){return t.endsWith(xFe)},xFe=".netlify.cache.json",nX=async function(t){let e=JD(t);if(!bFe(e))return!1;let{expires:r}=await tjt(t);return gFe(r)},tjt=async function(t){let e=JD(t),r=await vFe(e,"utf-8");return JSON.parse(r)};import{homedir as ojt}from"os";import{resolve as IFe,isAbsolute as ajt,join as cjt,sep as sX}from"path";import{normalize as rjt}from"path";import{existsSync as njt}from"fs";import ijt from"process";var iX=function(t){try{let e=sjt(t);return njt(e)?Promise.resolve(e):Promise.resolve("")}catch{return Promise.resolve("")}},sjt=function(t=ijt.cwd()){return rjt(t)};var x0=async function({path:t,cacheDir:e,cwdOpt:r}){let n=await ljt(t,r),i=await pjt({srcPath:n,cacheDir:e,cwdOpt:r});return{srcPath:n,cachePath:i}},ljt=async function(t,e){let r=await iX(e),n=ujt(t,r);return djt(n,r),n},ujt=function(t,e){if(ajt(t))return IFe(t);if(e!=="")return IFe(e,t);throw new Error(`Current directory does not exist: ${e}`)},djt=function(t,e){if(e!==""&&fjt(t,e))throw new Error(`Cannot cache ${t} because it is the current directory (${e}) or a parent directory`)},fjt=function(t,e){return`${e}${sX}`.startsWith(`${t}${sX}`)},pjt=async function({srcPath:t,cacheDir:e,cwdOpt:r}){let n=Qp({cacheDir:e,cwd:r}),{name:i,relPath:s}=await hjt(t,r);return cjt(n,i,s)},hjt=async function(t,e){let r=await oX(e),n=mjt(t);return r.map(({name:i,base:s})=>_jt(i,s,n)).find(Boolean)},mjt=function(t){return t.replace(gjt,"\\")},gjt=/^[a-zA-Z]:\\/,_jt=function(t,e,r){if(r===e||!r.startsWith(e))return;let n=r.replace(e,"");return{name:t,relPath:n}},oX=async function(t){return[...await yjt(t),{name:"home",base:ojt()},{name:"root",base:sX}]},yjt=async function(t){let e=await iX(t);return e===""?[]:[{name:"cwd",base:e}]};var Ejt=1,aX=async function({cacheDir:t,cwd:e,depth:r=Ejt}={}){let n=await oX(e),i=Qp({cacheDir:t,cwd:e});return(await Promise.all(n.map(({name:a,base:c})=>vjt({name:a,base:c,cacheDir:i,depth:r})))).flat()},vjt=async function({name:t,base:e,cacheDir:r,depth:n}){return(await hFe(`${r}/${t}`,{fileFilter:bjt,depth:n,type:"files_directories"})).map(({path:o})=>Sjt(e,o))},bjt=function({basename:t}){return!AFe(t)};var Tjt=async function(t,{move:e=PFe,ttl:r=xjt,digests:n=[],cacheDir:i,cwd:s}={}){let{srcPath:o,cachePath:a}=await x0({path:t,cacheDir:i,cwdOpt:s});if(!await R0(o))return!1;let{manifestInfo:c,identical:l}=await TFe({cachePath:a,move:e,ttl:r,digests:n});return l||(await cX(a,{force:!0,recursive:!0,maxRetries:3}),await X7(o,a,e),await wFe(c)),!0},wjt=async function(t,{move:e=PFe,cacheDir:r,cwd:n}={}){let{srcPath:i,cachePath:s}=await x0({path:t,cacheDir:r,cwdOpt:n});return!await R0(s)||await nX(s)?!1:(await cX(i,{force:!0,recursive:!0,maxRetries:3}),await X7(s,i,e),!0)},Rjt=async function(t,{cacheDir:e,cwd:r}={}){let{cachePath:n}=await x0({path:t,cacheDir:e,cwdOpt:r});return await R0(n)?(await cX(n,{force:!0,recursive:!0,maxRetries:3}),await RFe(n),!0):!1},Ajt=async function(t,{cacheDir:e,cwd:r}={}){let{cachePath:n}=await x0({path:t,cacheDir:e,cwdOpt:r});return await R0(n)&&!await nX(n)},PFe=!1,xjt=void 0,ZD=async function(t,e,...r){return Array.isArray(e)?(await Promise.all(e.map(i=>t(i,...r)))).some(Boolean):t(e,...r)},Ijt=ZD.bind(null,Tjt),Pjt=ZD.bind(null,wjt),Ojt=ZD.bind(null,Rjt),Cjt=ZD.bind(null,Ajt),OFe=function(t){return{save:(e,r)=>Ijt(e,{...t,...r}),restore:(e,r)=>Pjt(e,{...t,...r}),remove:(e,r)=>Ojt(e,{...t,...r}),has:(e,r)=>Cjt(e,{...t,...r}),list:e=>aX({...t,...e}),getCacheDir:e=>Qp({...t,...e})}};var Jr=Re("native_session"),lX=async(t,e)=>(await Promise.all(e.map(async n=>{try{return await gl.stat(_l.join(t,n)),n}catch{return null}}))).filter(n=>n!==null),oh=async({runnerId:t,sessionId:e,archive:r,nativeSessionId:n})=>{if(!r)return Jr.log("No native session archive descriptor for this runner, skipping"),null;let{baseDir:i,include:s}=r,o=!1;try{o=(await gl.stat(i)).isDirectory()}catch{}if(!o)return Jr.log(`Native session base dir ${i} not found, skipping`),null;let a=await lX(i,s);if(a.length===0)return Jr.log(`No native session history found under ${i}, skipping`),null;let c=_l.join(CFe.tmpdir(),`native-session-${e}.zip`);try{await Li("zip",["-r","-q","-X",c,...a],{cwd:i});let l=await gl.readFile(c);Jr.log(`Zipped native session (${l.length} bytes) from ${a.join(", ")}`,{nativeSessionId:n});let{upload_url:u,s3_key:d}=await oLe(t,e);return await o0(u,l,{contentType:"application/zip"}),Jr.log("Successfully uploaded native session to S3"),d}catch(l){return Jr.error("Failed to archive/upload native session, continuing without it:",l),null}finally{await gl.rm(c,{force:!0}).catch(()=>{})}},NFe=async t=>{if(!t)return!1;let{baseDir:e,include:r}=t,n=await lX(e,r);for(let i of n)if((await gl.readdir(_l.join(e,i)).catch(()=>[])).length>0)return!0;return!1},Njt=t=>t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),kFe=async(t,e)=>{let r=await gl.readdir(t,{withFileTypes:!0}).catch(()=>[]);for(let n of r)if(n.isDirectory()){if(await kFe(_l.join(t,n.name),e))return!0}else if(e.test(n.name))return!0;return!1},$Fe=async(t,e)=>{if(!t||!e)return!1;let r=new RegExp(`(^|[^a-zA-Z0-9])${Njt(e)}([^a-zA-Z0-9]|$)`),{baseDir:n,include:i}=t,s=await lX(n,i);for(let o of s)if(await kFe(_l.join(n,o),r))return!0;return!1},LFe=async({runnerId:t,sessionId:e,archive:r})=>{if(!r)return Jr.log("No native session archive descriptor for this runner, skipping restore"),!1;let{baseDir:n}=r,i=_l.join(CFe.tmpdir(),`native-session-restore-${e}.zip`);try{let s=await aLe(t,e);if(!s?.download_url)return Jr.log("No native session available to restore, skipping"),!1;let o=await hLe(s.download_url);return await gl.writeFile(i,o),Jr.log(`Downloaded native session (${o.length} bytes) to ${i}`),await gl.mkdir(n,{recursive:!0}),await Li("unzip",["-o","-q",i,"-d",n]),Jr.log(`Restored native session into ${n}`),!0}catch(s){return Jr.error("Failed to fetch/restore native session, continuing without it:",s),!1}finally{await gl.rm(i,{force:!0}).catch(()=>{})}},kjt="native-sessions",DFe=(t,e)=>OFe({cacheDir:_l.join(e.dir,kjt),cwd:t}),MFe=async({archive:t,cache:e})=>{if(!e?.dir||!t)return!1;let{baseDir:r,include:n}=t;try{return await DFe(r,e).restore(n.map(s=>_l.join(r,s)),{})?(Jr.log(`Restored native session from buildbot cache into ${r}`),!0):(Jr.log("No native session in buildbot cache, skipping restore"),!1)}catch(i){return Jr.error("Failed to restore native session from buildbot cache, continuing without it:",i),!1}},fS=async({archive:t,cache:e,nativeSessionId:r})=>{if(!e?.dir||!t)return Jr.log("No buildbot cache configured for the native session, skipping cache seed",{nativeSessionId:r}),!1;let{baseDir:n,include:i}=t;try{return await DFe(n,e).save(i.map(o=>_l.join(n,o)),{})?(Jr.log(`Saved native session to buildbot cache under ${e.dir}`,{nativeSessionId:r}),!0):(Jr.log("No native session history to save to buildbot cache, skipping"),!1)}catch(s){return Jr.error("Failed to save native session to buildbot cache, continuing:",s),!1}};var I0=Re("inference_stage"),UFe=5,za=async t=>{let{additionalContext:e,cliPath:r,config:n,context:i,buildErrors:s,runner:o,persistSteps:a,aiGateway:c,attempt:l,contextPrefix:u,priorAgentSessionId:d,cwd:f,abortSignal:p,onSessionId:h,resumeSession:m,effortOverride:_}=t;if(hi())throw new Error("Shutdown in progress, aborting inference stage");I0.log(`Running inference stage, attempt ${l} of ${UFe}`);let y=!1,v=await zt(ft(),"inference-stage",async S=>{S?.setAttributes({"inference.attempt":l||1}),yTe();let g=!!(l&&l>1),w=await $jt(n,g),P=!!m&&!!d;P&&n.runner==="gemini"&&!await n0(d)&&(P=!1);let x=w.viable||P;y=x,w.outcome!=="not_eligible"&&
|
|
880
|
+
`,l=await ejt({hash:o,manifestPath:i,manifestString:c});return{manifestInfo:{manifestPath:i,manifestString:c},identical:l}},ejt=async function({hash:t,manifestPath:e,manifestString:r}){return t===void 0||!bFe(e)?!1:await vFe(e,"utf8")===r},wFe=async function({manifestPath:t,manifestString:e}){await JFt(QFt(t),{recursive:!0}),await XFt(t,e)},RFe=async function(t){let e=JD(t);await ZFt(e,{force:!0,recursive:!0,maxRetries:3})},JD=function(t){return`${t}${xFe}`},AFe=function(t){return t.endsWith(xFe)},xFe=".netlify.cache.json",nX=async function(t){let e=JD(t);if(!bFe(e))return!1;let{expires:r}=await tjt(t);return gFe(r)},tjt=async function(t){let e=JD(t),r=await vFe(e,"utf-8");return JSON.parse(r)};import{homedir as ojt}from"os";import{resolve as IFe,isAbsolute as ajt,join as cjt,sep as sX}from"path";import{normalize as rjt}from"path";import{existsSync as njt}from"fs";import ijt from"process";var iX=function(t){try{let e=sjt(t);return njt(e)?Promise.resolve(e):Promise.resolve("")}catch{return Promise.resolve("")}},sjt=function(t=ijt.cwd()){return rjt(t)};var x0=async function({path:t,cacheDir:e,cwdOpt:r}){let n=await ljt(t,r),i=await pjt({srcPath:n,cacheDir:e,cwdOpt:r});return{srcPath:n,cachePath:i}},ljt=async function(t,e){let r=await iX(e),n=ujt(t,r);return djt(n,r),n},ujt=function(t,e){if(ajt(t))return IFe(t);if(e!=="")return IFe(e,t);throw new Error(`Current directory does not exist: ${e}`)},djt=function(t,e){if(e!==""&&fjt(t,e))throw new Error(`Cannot cache ${t} because it is the current directory (${e}) or a parent directory`)},fjt=function(t,e){return`${e}${sX}`.startsWith(`${t}${sX}`)},pjt=async function({srcPath:t,cacheDir:e,cwdOpt:r}){let n=Qp({cacheDir:e,cwd:r}),{name:i,relPath:s}=await hjt(t,r);return cjt(n,i,s)},hjt=async function(t,e){let r=await oX(e),n=mjt(t);return r.map(({name:i,base:s})=>_jt(i,s,n)).find(Boolean)},mjt=function(t){return t.replace(gjt,"\\")},gjt=/^[a-zA-Z]:\\/,_jt=function(t,e,r){if(r===e||!r.startsWith(e))return;let n=r.replace(e,"");return{name:t,relPath:n}},oX=async function(t){return[...await yjt(t),{name:"home",base:ojt()},{name:"root",base:sX}]},yjt=async function(t){let e=await iX(t);return e===""?[]:[{name:"cwd",base:e}]};var Ejt=1,aX=async function({cacheDir:t,cwd:e,depth:r=Ejt}={}){let n=await oX(e),i=Qp({cacheDir:t,cwd:e});return(await Promise.all(n.map(({name:a,base:c})=>vjt({name:a,base:c,cacheDir:i,depth:r})))).flat()},vjt=async function({name:t,base:e,cacheDir:r,depth:n}){return(await hFe(`${r}/${t}`,{fileFilter:bjt,depth:n,type:"files_directories"})).map(({path:o})=>Sjt(e,o))},bjt=function({basename:t}){return!AFe(t)};var Tjt=async function(t,{move:e=PFe,ttl:r=xjt,digests:n=[],cacheDir:i,cwd:s}={}){let{srcPath:o,cachePath:a}=await x0({path:t,cacheDir:i,cwdOpt:s});if(!await R0(o))return!1;let{manifestInfo:c,identical:l}=await TFe({cachePath:a,move:e,ttl:r,digests:n});return l||(await cX(a,{force:!0,recursive:!0,maxRetries:3}),await X7(o,a,e),await wFe(c)),!0},wjt=async function(t,{move:e=PFe,cacheDir:r,cwd:n}={}){let{srcPath:i,cachePath:s}=await x0({path:t,cacheDir:r,cwdOpt:n});return!await R0(s)||await nX(s)?!1:(await cX(i,{force:!0,recursive:!0,maxRetries:3}),await X7(s,i,e),!0)},Rjt=async function(t,{cacheDir:e,cwd:r}={}){let{cachePath:n}=await x0({path:t,cacheDir:e,cwdOpt:r});return await R0(n)?(await cX(n,{force:!0,recursive:!0,maxRetries:3}),await RFe(n),!0):!1},Ajt=async function(t,{cacheDir:e,cwd:r}={}){let{cachePath:n}=await x0({path:t,cacheDir:e,cwdOpt:r});return await R0(n)&&!await nX(n)},PFe=!1,xjt=void 0,ZD=async function(t,e,...r){return Array.isArray(e)?(await Promise.all(e.map(i=>t(i,...r)))).some(Boolean):t(e,...r)},Ijt=ZD.bind(null,Tjt),Pjt=ZD.bind(null,wjt),Ojt=ZD.bind(null,Rjt),Cjt=ZD.bind(null,Ajt),OFe=function(t){return{save:(e,r)=>Ijt(e,{...t,...r}),restore:(e,r)=>Pjt(e,{...t,...r}),remove:(e,r)=>Ojt(e,{...t,...r}),has:(e,r)=>Cjt(e,{...t,...r}),list:e=>aX({...t,...e}),getCacheDir:e=>Qp({...t,...e})}};var Jr=Re("native_session"),lX=async(t,e)=>(await Promise.all(e.map(async n=>{try{return await gl.stat(_l.join(t,n)),n}catch{return null}}))).filter(n=>n!==null),oh=async({runnerId:t,sessionId:e,archive:r,nativeSessionId:n})=>{if(!r)return Jr.log("No native session archive descriptor for this runner, skipping"),null;let{baseDir:i,include:s}=r,o=!1;try{o=(await gl.stat(i)).isDirectory()}catch{}if(!o)return Jr.log(`Native session base dir ${i} not found, skipping`),null;let a=await lX(i,s);if(a.length===0)return Jr.log(`No native session history found under ${i}, skipping`),null;let c=_l.join(CFe.tmpdir(),`native-session-${e}.zip`);try{await Li("zip",["-r","-q","-X",c,...a],{cwd:i});let l=await gl.readFile(c);Jr.log(`Zipped native session (${l.length} bytes) from ${a.join(", ")}`,{nativeSessionId:n});let{upload_url:u,s3_key:d}=await oLe(t,e);return await o0(u,l,{contentType:"application/zip"}),Jr.log("Successfully uploaded native session to S3"),d}catch(l){return Jr.error("Failed to archive/upload native session, continuing without it:",l),null}finally{await gl.rm(c,{force:!0}).catch(()=>{})}},NFe=async t=>{if(!t)return!1;let{baseDir:e,include:r}=t,n=await lX(e,r);for(let i of n)if((await gl.readdir(_l.join(e,i)).catch(()=>[])).length>0)return!0;return!1},Njt=t=>t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),kFe=async(t,e)=>{let r=await gl.readdir(t,{withFileTypes:!0}).catch(()=>[]);for(let n of r)if(n.isDirectory()){if(await kFe(_l.join(t,n.name),e))return!0}else if(e.test(n.name))return!0;return!1},$Fe=async(t,e)=>{if(!t||!e)return!1;let r=new RegExp(`(^|[^a-zA-Z0-9])${Njt(e)}([^a-zA-Z0-9]|$)`),{baseDir:n,include:i}=t,s=await lX(n,i);for(let o of s)if(await kFe(_l.join(n,o),r))return!0;return!1},LFe=async({runnerId:t,sessionId:e,archive:r})=>{if(!r)return Jr.log("No native session archive descriptor for this runner, skipping restore"),!1;let{baseDir:n}=r,i=_l.join(CFe.tmpdir(),`native-session-restore-${e}.zip`);try{let s=await aLe(t,e);if(!s?.download_url)return Jr.log("No native session available to restore, skipping"),!1;let o=await hLe(s.download_url);return await gl.writeFile(i,o),Jr.log(`Downloaded native session (${o.length} bytes) to ${i}`),await gl.mkdir(n,{recursive:!0}),await Li("unzip",["-o","-q",i,"-d",n]),Jr.log(`Restored native session into ${n}`),!0}catch(s){return Jr.error("Failed to fetch/restore native session, continuing without it:",s),!1}finally{await gl.rm(i,{force:!0}).catch(()=>{})}},kjt="native-sessions",DFe=(t,e)=>OFe({cacheDir:_l.join(e.dir,kjt),cwd:t}),MFe=async({archive:t,cache:e})=>{if(!e?.dir||!t)return!1;let{baseDir:r,include:n}=t;try{return await DFe(r,e).restore(n.map(s=>_l.join(r,s)),{})?(Jr.log(`Restored native session from buildbot cache into ${r}`),!0):(Jr.log("No native session in buildbot cache, skipping restore"),!1)}catch(i){return Jr.error("Failed to restore native session from buildbot cache, continuing without it:",i),!1}},fS=async({archive:t,cache:e,nativeSessionId:r})=>{if(!e?.dir||!t)return Jr.log("No buildbot cache configured for the native session, skipping cache seed",{nativeSessionId:r}),!1;let{baseDir:n,include:i}=t;try{return await DFe(n,e).save(i.map(o=>_l.join(n,o)),{})?(Jr.log(`Saved native session to buildbot cache under ${e.dir}`,{nativeSessionId:r}),!0):(Jr.log("No native session history to save to buildbot cache, skipping"),!1)}catch(s){return Jr.error("Failed to save native session to buildbot cache, continuing:",s),!1}};var I0=Re("inference_stage"),UFe=5,za=async t=>{let{additionalContext:e,cliPath:r,config:n,context:i,buildErrors:s,runner:o,persistSteps:a,aiGateway:c,attempt:l,contextPrefix:u,priorAgentSessionId:d,cwd:f,abortSignal:p,onSessionId:h,resumeSession:m,effortOverride:_}=t;if(hi())throw new Error("Shutdown in progress, aborting inference stage");I0.log(`Running inference stage, attempt ${l} of ${UFe}`);let y=!1,v=await zt(ft(),"inference-stage",async S=>{S?.setAttributes({"inference.attempt":l||1}),yTe();let g=!!(l&&l>1),w=await $jt(n,g),P=!!m&&!!d;P&&n.runner==="gemini"&&!await n0(d)&&(P=!1);let x=w.viable||P;y=x,w.outcome!=="not_eligible"&&Ie.inc("inference.native_resume",1,{outcome:w.outcome,...w.source?{source:w.source}:{}});let{prompt:R}=await zt(ft(),"compose-prompt",async()=>await CLe({cliPath:r,config:n,buildErrorContext:Ljt(s),netlify:i,additionalContext:e,resumePrompt:x})),O=`
|
|
881
881
|
${u||""}
|
|
882
882
|
${R}
|
|
883
|
-
`.trim(),A={...n,prompt:O},b=d??(x?w.sessionId:void 0),$=await zt(ft(),`run-${n.runner}`,async C=>{let T=_9();C?.setAttributes({"gen_ai.operation.name":"chat","gen_ai.capability.name":n.mode,"gen_ai.provider.name":_ke(n.runner),"gen_ai.system":n.runner,...T?{"gen_ai.input.messages":pL("user",O)}:{}});let I=Date.now(),N=await o({aiGateway:c,config:A,netlify:i,persistSteps:a,continueSession:g||x,priorAgentSessionId:b,cwd:f,abortSignal:p,onSessionId:h,..._?{effortOverride:_}:{}}),j=Date.now(),J=N.resolvedModel||n.model||"unknown",se=N.error?"error":"stop";return C?.setAttributes({...T?{"gen_ai.output.messages":pL("assistant",N.result??N.error??"",se)}:{},"gen_ai.response.finish_reasons":[se],"gen_ai.request.model":J,"gen_ai.response.model":J,...N.effort?{"gen_ai.request.effort":N.effort}:{},...N.usage?.input_tokens!=null?{"gen_ai.usage.input_tokens":N.usage.input_tokens}:{},...N.usage?.output_tokens!=null?{"gen_ai.usage.output_tokens":N.usage.output_tokens}:{},...N.usage?.cache_creation_input_tokens!=null?{"gen_ai.usage.cache_creation.input_tokens":N.usage.cache_creation_input_tokens}:{},...N.usage?.cache_read_input_tokens!=null?{"gen_ai.usage.cache_read.input_tokens":N.usage.cache_read_input_tokens}:{}}),yke(N.steps??[],n.mode,I,j),N});return $.result&&($.result=bs($.result)),$.error&&($.error=bs($.error)),await a.flush(),$});if(v.aborted)return I0.log("Inference turn was interrupted (credit wrap-up); skipping retry/error handling",{agentSessionId:v.agentSessionId}),{runnerResult:v,nativeResume:y};if(v.error){if(hi()){let S=new Error("Shutdown in progress, aborting inference stage");throw Object.assign(S,{agentSessionId:v.agentSessionId}),S}if(I0.error("Runner failed",{stepsCount:v.steps.length,duration:v.duration,error:v.error,isRetryableError:v.isRetryableError,attempt:l||1,agentSessionId:v.agentSessionId}),
|
|
883
|
+
`.trim(),A={...n,prompt:O},b=d??(x?w.sessionId:void 0),$=await zt(ft(),`run-${n.runner}`,async C=>{let T=_9();C?.setAttributes({"gen_ai.operation.name":"chat","gen_ai.capability.name":n.mode,"gen_ai.provider.name":_ke(n.runner),"gen_ai.system":n.runner,...T?{"gen_ai.input.messages":pL("user",O)}:{}});let I=Date.now(),N=await o({aiGateway:c,config:A,netlify:i,persistSteps:a,continueSession:g||x,priorAgentSessionId:b,cwd:f,abortSignal:p,onSessionId:h,..._?{effortOverride:_}:{}}),j=Date.now(),J=N.resolvedModel||n.model||"unknown",se=N.error?"error":"stop";return C?.setAttributes({...T?{"gen_ai.output.messages":pL("assistant",N.result??N.error??"",se)}:{},"gen_ai.response.finish_reasons":[se],"gen_ai.request.model":J,"gen_ai.response.model":J,...N.effort?{"gen_ai.request.effort":N.effort}:{},...N.usage?.input_tokens!=null?{"gen_ai.usage.input_tokens":N.usage.input_tokens}:{},...N.usage?.output_tokens!=null?{"gen_ai.usage.output_tokens":N.usage.output_tokens}:{},...N.usage?.cache_creation_input_tokens!=null?{"gen_ai.usage.cache_creation.input_tokens":N.usage.cache_creation_input_tokens}:{},...N.usage?.cache_read_input_tokens!=null?{"gen_ai.usage.cache_read.input_tokens":N.usage.cache_read_input_tokens}:{}}),yke(N.steps??[],n.mode,I,j),N});return $.result&&($.result=bs($.result)),$.error&&($.error=bs($.error)),await a.flush(),$});if(v.aborted)return I0.log("Inference turn was interrupted (credit wrap-up); skipping retry/error handling",{agentSessionId:v.agentSessionId}),{runnerResult:v,nativeResume:y};if(v.error){if(hi()){let S=new Error("Shutdown in progress, aborting inference stage");throw Object.assign(S,{agentSessionId:v.agentSessionId}),S}if(I0.error("Runner failed",{stepsCount:v.steps.length,duration:v.duration,error:v.error,isRetryableError:v.isRetryableError,attempt:l||1,agentSessionId:v.agentSessionId}),Ie.inc("inference.failed",1,{attempt:l||1,is_retryable:!!v.isRetryableError,is_provider_unavailable:!!v.isProviderUnavailableError}),v.isRetryableError&&(!l||l<UFe))return I0.log("Retrying inference stage"),await new Promise(g=>setTimeout(g,5e3)),{runnerResult:(await za({...t,attempt:(l||1)+1,priorAgentSessionId:v.agentSessionId,contextPrefix:v.agentSessionId?"":"<important> The agent has already started on this work but ran into networking errors trying to complete it. Please continue from where it left off (you can use git commands to see what's currently changed thus far) and do not start over. Here is the full prompt for context: </important>"})).runnerResult,nativeResume:y};{if(I0.log("Do not retry inference stage"),v.error.toLowerCase().includes("usage exceeded")){let g=new Us(v.error,503,"Credit limit reached. Please add more credits to continue using Agent Runners.",!0);throw Object.assign(g,{agentSessionId:v.agentSessionId}),g}let S=v.isRetryableError||v.isProviderUnavailableError?new Ld(v.error):new Error(v.error);throw Object.assign(S,{agentSessionId:v.agentSessionId}),S}}return{runnerResult:v,nativeResume:y}},$jt=async(t,e)=>{if(e)return{viable:!1,outcome:"not_eligible"};let r=t.previousSession,{viable:n,outcome:i}=NLe(t);if(!n)return{viable:n,outcome:i};let s=r?.nativeSessionId,o=dl(t.runner),a=async()=>s?t.runner==="gemini"?!!await uJ(s):$Fe(o,s):!1,c;if(FFe(t)&&await NFe(o))c="local";else if(t.fastInit&&ut().warmNativeResumeEnabled&&await MFe({archive:o,cache:t.cache})&&await a())c="cache_restore";else{if(c="fetch",!ut().coldResumeFromS3Enabled)return{viable:!1,outcome:"cold_resume_disabled",source:c};if(!await LFe({runnerId:t.id,sessionId:t.sessionId,archive:o}))return{viable:!1,outcome:"fetch_failed",source:c}}return t.runner==="gemini"&&s&&!await n0(s)?{viable:!1,outcome:"sanitize_failed",source:c}:{viable:!0,sessionId:s,outcome:"resumed",source:c}},Ljt=t=>!t||t.length===0?"":`
|
|
884
884
|
Deploy failed failed. Here are the errors to review on the latest build:
|
|
885
885
|
|
|
886
886
|
Below are all of the logs with potential issues that we extracted. Some of them may be false positives, discern them carefully and ensure fixes are relevant.
|
|
@@ -910,21 +910,21 @@ SQL:
|
|
|
910
910
|
${t}
|
|
911
911
|
\`\`\`
|
|
912
912
|
|
|
913
|
-
Output a single slug. No sentences, no markdown, no quotes, no newlines. Your entire response must match ^[a-z0-9_]{1,${hS}}$.`,Vjt=t=>{let e=t.toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"");if(!e)return;if(e.length<=hS)return e;let r=e.slice(0,hS),n=r.lastIndexOf("_");return n>=Math.floor(hS*2/3)?r.slice(0,n):r},KFe=async(t,e)=>{let r=YFe(t,e);if(r)try{let n=await yl.promises.readdir(r);return new Set(n)}catch(n){if(n.code==="ENOENT")return new Set;wi.warn(`Failed to snapshot migrations directory ${r} \u2014 rename disabled for this run`,{code:n.code,error:n.message});return}},Hjt="claude-haiku-4-5",Gjt="gpt-5.4-nano",GFe=async(t,e)=>{let r={...e,maxTokens:80},{response:n,text:i}=t==="claude"?await Nke({...r,model:Hjt}):await q$e({...r,model:Gjt});return n?.usage&&hu(n.usage,{agent:t}),i},Wjt=async({sql:t,aiGateway:e,config:r})=>{let n=r.runner==="codex"?"codex":"claude",i=n==="claude"?"codex":"claude",s={aiGateway:e,config:r,prompt:zjt(t)},o;try{o=await GFe(n,s)}catch(l){wi.warn(`${n} request failed for migration slug; trying ${i}`,{error:l.message});try{o=await GFe(i,s)}catch(u){wi.warn(`${i} request also failed for migration slug`,{error:u.message});return}}let a=o.trim();if(HFe.test(a))return a;let c=Vjt(a);if(c&&HFe.test(c))return wi.warn(`Provider returned a non-conforming migration slug "${a}" \u2014 using normalized fallback "${c}"`),c;wi.warn(`Provider returned invalid migration slug: ${a}`)},Yjt=async({cwd:t,migrationsPath:e,snapshot:r,applied:n,config:i,aiGateway:s})=>{let o=YFe(t,e);if(!o)return;let a;try{a=await yl.promises.readdir(o)}catch{return}let c=a.filter(d=>!r.has(d)),l=[];for(let d of c){if(n?.has(d))continue;let f=Sl.join(o,d),p;try{p=await yl.promises.stat(f)}catch{continue}if(!p.isDirectory())continue;let h=Sl.join(f,"migration.sql");if(!yl.existsSync(h))continue;let m=d.match(/^(\d{14})_(.+)$/);if(!m)continue;let[,_,y]=m;l.push({name:d,prefix:_,currentSuffix:y,entryPath:f,sqlPath:h})}l.length>0&&wi.log(`Considering ${l.length} migration(s) for rename`,{migrations:l.map(d=>d.name)});for(let{name:d,prefix:f,currentSuffix:p,entryPath:h,sqlPath:m}of l){let _;try{_=await yl.promises.readFile(m,"utf8")}catch(g){wi.warn(`Failed to read ${m} \u2014 skipping rename for ${d}`,{code:g.code,error:g.message}),
|
|
913
|
+
Output a single slug. No sentences, no markdown, no quotes, no newlines. Your entire response must match ^[a-z0-9_]{1,${hS}}$.`,Vjt=t=>{let e=t.toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"");if(!e)return;if(e.length<=hS)return e;let r=e.slice(0,hS),n=r.lastIndexOf("_");return n>=Math.floor(hS*2/3)?r.slice(0,n):r},KFe=async(t,e)=>{let r=YFe(t,e);if(r)try{let n=await yl.promises.readdir(r);return new Set(n)}catch(n){if(n.code==="ENOENT")return new Set;wi.warn(`Failed to snapshot migrations directory ${r} \u2014 rename disabled for this run`,{code:n.code,error:n.message});return}},Hjt="claude-haiku-4-5",Gjt="gpt-5.4-nano",GFe=async(t,e)=>{let r={...e,maxTokens:80},{response:n,text:i}=t==="claude"?await Nke({...r,model:Hjt}):await q$e({...r,model:Gjt});return n?.usage&&hu(n.usage,{agent:t}),i},Wjt=async({sql:t,aiGateway:e,config:r})=>{let n=r.runner==="codex"?"codex":"claude",i=n==="claude"?"codex":"claude",s={aiGateway:e,config:r,prompt:zjt(t)},o;try{o=await GFe(n,s)}catch(l){wi.warn(`${n} request failed for migration slug; trying ${i}`,{error:l.message});try{o=await GFe(i,s)}catch(u){wi.warn(`${i} request also failed for migration slug`,{error:u.message});return}}let a=o.trim();if(HFe.test(a))return a;let c=Vjt(a);if(c&&HFe.test(c))return wi.warn(`Provider returned a non-conforming migration slug "${a}" \u2014 using normalized fallback "${c}"`),c;wi.warn(`Provider returned invalid migration slug: ${a}`)},Yjt=async({cwd:t,migrationsPath:e,snapshot:r,applied:n,config:i,aiGateway:s})=>{let o=YFe(t,e);if(!o)return;let a;try{a=await yl.promises.readdir(o)}catch{return}let c=a.filter(d=>!r.has(d)),l=[];for(let d of c){if(n?.has(d))continue;let f=Sl.join(o,d),p;try{p=await yl.promises.stat(f)}catch{continue}if(!p.isDirectory())continue;let h=Sl.join(f,"migration.sql");if(!yl.existsSync(h))continue;let m=d.match(/^(\d{14})_(.+)$/);if(!m)continue;let[,_,y]=m;l.push({name:d,prefix:_,currentSuffix:y,entryPath:f,sqlPath:h})}l.length>0&&wi.log(`Considering ${l.length} migration(s) for rename`,{migrations:l.map(d=>d.name)});for(let{name:d,prefix:f,currentSuffix:p,entryPath:h,sqlPath:m}of l){let _;try{_=await yl.promises.readFile(m,"utf8")}catch(g){wi.warn(`Failed to read ${m} \u2014 skipping rename for ${d}`,{code:g.code,error:g.message}),Ie.inc("db_migrations.rename",1,{outcome:"sql_read_failed"});continue}let y=await Wjt({sql:_,config:i,aiGateway:s});if(!y){Ie.inc("db_migrations.rename",1,{outcome:"no_slug"});continue}if(y===p){Ie.inc("db_migrations.rename",1,{outcome:"slug_unchanged"});continue}let v=`${f}_${y}`,S=Sl.join(o,v);if(yl.existsSync(S)){wi.warn(`Cannot rename migration ${d} \u2192 ${v}: target already exists`),Ie.inc("db_migrations.rename",1,{outcome:"target_exists"});continue}try{await yl.promises.rename(h,S),wi.log(`Renamed migration ${d} \u2192 ${v}`),Ie.inc("db_migrations.rename",1,{outcome:"renamed"})}catch(g){wi.warn(`Failed to rename migration ${d} \u2192 ${v}`,{error:g.message}),Ie.inc("db_migrations.rename",1,{outcome:"rename_failed"})}}let u=await yl.promises.readdir(o).catch(()=>[]);r.clear();for(let d of u)r.add(d)},QD=async t=>await eO({stage:"db-migrations"},()=>zt(ft(),"db-migrations",async e=>{let r=t.cwd||jjt.cwd();if(!(await WFe("@netlify/database",r)||await WFe("@netlify/db",r)))return e?.setAttributes({skipped:!0,reason:"@netlify/database is not installed"}),Ie.inc("db_migrations.run",1,{outcome:"skipped",reason:"no_module"}),{skipped:!0};let i=[...qjt].find(s=>yl.existsSync(Sl.join(r,s)));if(!i)return e?.setAttributes({skipped:!0,reason:"no drizzle config found"}),Ie.inc("db_migrations.run",1,{outcome:"skipped",reason:"no_config"}),{skipped:!0};e?.setAttributes({configFile:i}),wi.log(`Found ${i}, running drizzle-kit generate to ensure migrations are up to date`);try{let s=await Li("npx",["drizzle-kit","generate"],{cwd:r,stdio:["ignore","pipe","pipe"]});return s.stdout&&wi.log(String(s.stdout)),e?.setAttributes({success:!0}),Ie.inc("db_migrations.run",1,{outcome:"success"}),t.snapshot&&await Yjt({cwd:r,migrationsPath:t.migrationsPath,snapshot:t.snapshot,applied:t.applied,config:t.config,aiGateway:t.aiGateway}),{skipped:!1}}catch(s){let o=Kjt(s);return wi.warn("drizzle-kit generate failed:",o),e?.setAttributes({success:!1,error:o}),Ie.inc("db_migrations.run",1,{outcome:"failure"}),{skipped:!1,error:o}}})),WFe=async(t,e)=>{try{return await RTe(`node -e "require.resolve('${t}')"`,{cwd:e,stdio:"ignore"}),!0}catch{return!1}},Kjt=t=>{if(t&&typeof t=="object"){let e=[];if("stderr"in t&&t.stderr&&e.push(String(t.stderr)),"stdout"in t&&t.stdout&&e.push(String(t.stdout)),e.length>0)return e.join(`
|
|
914
914
|
`)}return t instanceof Error?t.message:String(t)};var pX=Re("migration_state"),eM=async({cliPath:t,cwd:e})=>{let r;try{let n=await Li(t,["db","status","--json"],{cwd:e,stdio:["ignore","pipe","pipe"]});r=n.stdout?String(n.stdout):""}catch(n){let i=n;throw pX.warn("`netlify db status --json` failed",{exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr}),n}pX.log("`netlify db status --json` output",{stdout:r});try{return JSON.parse(r)}catch(n){throw pX.warn("Failed to parse `netlify db status --json` output",{stdout:r,error:String(n)}),n}},JFe=()=>["## Netlify Database","","A Netlify Database (managed Postgres) is available for this site.","It will be provisioned automatically on first connection.","No migrations have been applied yet \u2014 this is a fresh database.","","Use `@netlify/database` with Drizzle ORM for persistent data storage.","Define your schema in `db/schema.ts` and migrations will be generated automatically at deploy time.","Read the `netlify-database` skill for setup instructions."].join(`
|
|
915
915
|
`),ZFe=t=>{if(t.applied.length===0&&t.pending.length===0)return null;let e=["## CRITICAL: Current Netlify Database state",""];if(t.applied.length>0){e.push("The following migrations are **already applied** to your preview database branch. They are immutable:","");for(let r of t.applied)e.push(`- ${r.name}`);e.push("","**Never delete, rename, or edit an applied migration file.** Doing so will break the deploy \u2014 the","platform requires every migration applied to the branch to exist on disk with its original content. If","you think an applied migration is wrong, roll forward with a NEW migration that corrects whatever it","did. That's always safe; deletion isn't.")}else e.push("No migrations are applied to your preview database branch yet.");if(t.pending.length>0){e.push(""),e.push("The following migration files exist on disk but have NOT yet been applied:","");for(let r of t.pending)e.push(`- ${r.name}`);e.push("","Pending files can be modified or deleted freely \u2014 use `netlify db migrations reset` to remove them","cleanly, then regenerate via `npx drizzle-kit generate` if you want a replacement.")}return e.join(`
|
|
916
916
|
`)},XFe=t=>{let e=[];return t.missingOnDisk.length>0&&e.push("You deleted the following migration file(s) that are already applied to the preview database branch:",...t.missingOnDisk.map(r=>`- ${r.name}`),"","Applied migrations cannot be removed \u2014 the deploy will fail because the platform requires every applied","migration to exist on disk with its original content. Please revise your work:","","1. Restore the deleted file(s) by running `netlify db migrations pull --force`, which overwrites the"," local migrations directory with the authoritative state of the branch. Note this also wipes any"," unapplied migration files you generated this session \u2014 regenerate them via `npx drizzle-kit generate`"," afterwards if you still need them (your `db/schema.ts` edits aren't affected by the pull).","2. If the underlying problem is that an applied migration is wrong, add a NEW migration on top that"," corrects whatever it did (drop a column, rename a table, etc.). Do not touch the original."),t.outOfOrder.length>0&&(e.length>0&&e.push(""),e.push("The following pending migration file(s) have a version prefix that sorts BEFORE migrations already","applied to the branch, so the platform will reject them on deploy:",...t.outOfOrder.map(r=>`- ${r.name} (version ${r.version} \u2264 applied max ${r.maxApplied})`),"","Delete these out-of-order files (use `netlify db migrations reset` \u2014 it only removes unapplied files),","then run `npx drizzle-kit generate` to produce a replacement whose version sorts after the applied","migrations.")),e.length===0?null:e.join(`
|
|
917
|
-
`)},QFe=t=>t.missingOnDisk.length>0||t.outOfOrder.length>0;var eje=Re("db_migrations_verify"),tje=async t=>await zt(ft(),"db-migrations-verify-stage",async e=>{let r;try{r=await eM({cliPath:t.cliPath,cwd:t.cwd})}catch(i){return eje.warn("Skipping migration verification \u2014 failed to read status",{error:i}),e?.setAttributes({"verify.skipped":!0,"verify.skip_reason":"status_error"}),{}}if(!QFe(r))return e?.setAttributes({"verify.drift":!1}),{};let n=XFe(r);return e?.setAttributes({"verify.drift":!0,"verify.missing_on_disk_count":r.missingOnDisk.length,"verify.out_of_order_count":r.outOfOrder.length}),eje.log("Detected post-inference migration drift",{missingOnDisk:r.missingOnDisk.map(i=>i.name),outOfOrder:r.outOfOrder.map(i=>i.name)}),{error:n??void 0}});import _Q from"process";import yzt from"net";var rs=Ln(hQ(),1),k1r=rs.default.Client,$1r=rs.default.Pool,L1r=rs.default.Connection,D1r=rs.default.types,M1r=rs.default.Query,U1r=rs.default.DatabaseError,F1r=rs.default.escapeIdentifier,j1r=rs.default.escapeLiteral,q1r=rs.default.Result,B1r=rs.default.TypeOverrides,z1r=rs.default.defaults,H2e=rs.default;var Szt=80877103,Ezt=196608,vzt=Buffer.from([78]);function bzt(){let t=Buffer.alloc(9);t.writeUInt8(82,0),t.writeInt32BE(8,1),t.writeInt32BE(0,5);let e=Buffer.alloc(6);return e.writeUInt8(90,0),e.writeInt32BE(5,1),e.writeUInt8(73,5),Buffer.concat([t,e])}function yM(t){let e=Buffer.from("SERROR\0","utf8"),r=Buffer.concat([Buffer.from("M","utf8"),Buffer.from(t+"\0","utf8")]),n=Buffer.from("CXX000\0","utf8"),i=Buffer.from([0]),s=e.length+r.length+n.length+i.length,o=Buffer.alloc(5);return o.writeUInt8(69,0),o.writeInt32BE(s+4,1),Buffer.concat([o,e,n,r,i])}async function Tzt(t){let{clientSocket:e,provision:r,logger:n,cleanup:i}=t,s;try{s=await r()}catch(f){let p=f instanceof Error?f.message:"Provisioning failed";throw n("Provisioning error:",p),e.end(yM(p)),i(),f}let o=Rzt(s),a=new H2e.Client({host:o.host,port:o.port,user:o.user,password:o.password,database:o.database,ssl:o.ssl,options:o.options});a.on("error",()=>{});try{await a.connect()}catch(f){let p=f instanceof Error?f.message:"Remote connection failed";throw n("Remote connection error:",p),e.end(yM(p)),i(),f}let c=a.connection,l=c.stream;c.removeAllListeners(),l.removeAllListeners();let u=l,d=f=>p=>{p.code!=="ECONNRESET"&&n(`${f} socket error:`,p.message),i()};return u.on("error",d("Remote")),u.on("close",i),e.on("error",d("Client")),e.on("close",i),e.write(bzt()),e.on("data",f=>{u.destroyed||u.write(f)}),u.on("data",f=>{e.destroyed||e.write(f)}),e.resume(),u}function wzt(t,e){let{provision:r,logger:n,onCleanup:i}=e,s,o="ssl",a=!1;function c(){a||(a=!0,t.destroy(),s?.destroy(),i())}t.on("error",l=>{l.code!=="ECONNRESET"&&n("Client socket error:",l.message),c()}),t.on("data",l=>{if(o==="ssl"){if(l.length>=8&&l.readInt32BE(4)===Szt){t.write(vzt),o="startup";return}o="startup"}if(o==="startup"){if(l.length<8){t.end(yM("Invalid startup message")),c();return}if(l.readInt32BE(4)!==Ezt){t.end(yM("Unsupported protocol version")),c();return}t.pause(),t.removeAllListeners("data"),Tzt({clientSocket:t,provision:r,logger:n,cleanup:c}).then(d=>{s=d},d=>{n("Startup error:",d),c()})}})}function Rzt(t){let e=new URL(t);return{host:e.hostname,port:Number(e.port)||5432,user:decodeURIComponent(e.username),password:decodeURIComponent(e.password),database:e.pathname.slice(1)||"postgres",ssl:e.searchParams.get("sslmode")==="require"?!0:void 0,options:e.searchParams.get("options")??void 0}}var G2e=class{server;sockets=new Set;host;port;logger;provision;constructor(t){this.host=t.host??"127.0.0.1",this.port=t.port??0,this.logger=t.logger??(()=>{}),this.provision=t.provision}async start(){return new Promise((t,e)=>{let r=yzt.createServer(n=>{this.sockets.add(n),n.on("close",()=>{this.sockets.delete(n)}),wzt(n,{provision:this.provision,logger:this.logger,onCleanup:()=>{this.sockets.delete(n)}})});r.on("error",n=>{e(n)}),r.listen(this.port,this.host,()=>{this.server=r;let n=r.address(),i=`postgres://${this.host}:${String(n.port)}`;this.logger("Proxy listening on",i),t(i)})})}async stop(){for(let t of this.sockets)t.destroy();return this.sockets.clear(),new Promise(t=>{if(!this.server){t();return}this.server.close(()=>{this.server=void 0,t()})})}};var SM=Re("db_setup"),W2e=async({siteId:t,isProd:e,alias:r,connectionString:n})=>await zt(ft(),"db-setup-stage",async i=>{i?.setAttributes({"db_setup.site_id":t,"db_setup.is_prod":e,...r&&{"db_setup.alias":r}});let s;if(e?s="production":r&&(s=r),_Q.env.NETLIFY_DB_BRANCH=s,n)return i?.setAttributes({"db_setup.source":"config","db_setup.has_proxy":!1}),SM.log("Using database connection string provided by the API"),_Q.env.NETLIFY_DB_URL=n,{connectionString:n,wasProvisioned:()=>!1};let o=!1,a=new G2e({logger:(...l)=>SM.log("db-proxy:",...l),provision:async()=>(o=!0,SM.log("Provisioning database for site via API"),await fLe(t),await Azt(t,e,r))}),c=await a.start();return i?.setAttributes({"db_setup.source":"proxy","db_setup.has_proxy":!0}),SM.log("Local DB proxy started",{connectionString:c}),_Q.env.NETLIFY_DB_URL=c,{connectionString:c,proxy:a,wasProvisioned:()=>o}}),Azt=async(t,e,r)=>e||!r?(await lLe(t)).connection_string:(await pLe(t,r),(await dLe(t,r)).connection_string);import{randomUUID as xzt}from"crypto";var Y2e=async(t,e,r)=>{let n=xzt();return await vi(t.id,t.sessionId,{state:"await_input",interactions:{[n]:{type:"question",status:"pending",payload:e.questions,nativeToolId:e.toolUseId}},steps:[{id:n,refId:n,category:ie.Question}],...r?.nativeSessionId?{native_session_id:r.nativeSessionId}:{},...r?.nativeSessionS3Key?{native_session_s3_key:r.nativeSessionS3Key}:{}}),n};var Izt=({isHotFollowUp:t,enqueuedAt:e})=>t?e===void 0?[]:[["request",e]]:[["spawn",Number(process.env.NETLIFY_AGENT_RUNNER_SPAWN_AT_MS)],["enqueue",Number(process.env.NETLIFY_AGENT_RUNNER_ENQUEUED_AT_MS)]],K2e=(t,e,r,n)=>{for(let[i,s]of Izt(r))Number.isFinite(s)&&s>0&&s<=n&&t.timing(e,n-s,{from:i})},J2e=(t,e=Date.now(),r=
|
|
917
|
+
`)},QFe=t=>t.missingOnDisk.length>0||t.outOfOrder.length>0;var eje=Re("db_migrations_verify"),tje=async t=>await zt(ft(),"db-migrations-verify-stage",async e=>{let r;try{r=await eM({cliPath:t.cliPath,cwd:t.cwd})}catch(i){return eje.warn("Skipping migration verification \u2014 failed to read status",{error:i}),e?.setAttributes({"verify.skipped":!0,"verify.skip_reason":"status_error"}),{}}if(!QFe(r))return e?.setAttributes({"verify.drift":!1}),{};let n=XFe(r);return e?.setAttributes({"verify.drift":!0,"verify.missing_on_disk_count":r.missingOnDisk.length,"verify.out_of_order_count":r.outOfOrder.length}),eje.log("Detected post-inference migration drift",{missingOnDisk:r.missingOnDisk.map(i=>i.name),outOfOrder:r.outOfOrder.map(i=>i.name)}),{error:n??void 0}});import _Q from"process";import yzt from"net";var rs=Ln(hQ(),1),k1r=rs.default.Client,$1r=rs.default.Pool,L1r=rs.default.Connection,D1r=rs.default.types,M1r=rs.default.Query,U1r=rs.default.DatabaseError,F1r=rs.default.escapeIdentifier,j1r=rs.default.escapeLiteral,q1r=rs.default.Result,B1r=rs.default.TypeOverrides,z1r=rs.default.defaults,H2e=rs.default;var Szt=80877103,Ezt=196608,vzt=Buffer.from([78]);function bzt(){let t=Buffer.alloc(9);t.writeUInt8(82,0),t.writeInt32BE(8,1),t.writeInt32BE(0,5);let e=Buffer.alloc(6);return e.writeUInt8(90,0),e.writeInt32BE(5,1),e.writeUInt8(73,5),Buffer.concat([t,e])}function yM(t){let e=Buffer.from("SERROR\0","utf8"),r=Buffer.concat([Buffer.from("M","utf8"),Buffer.from(t+"\0","utf8")]),n=Buffer.from("CXX000\0","utf8"),i=Buffer.from([0]),s=e.length+r.length+n.length+i.length,o=Buffer.alloc(5);return o.writeUInt8(69,0),o.writeInt32BE(s+4,1),Buffer.concat([o,e,n,r,i])}async function Tzt(t){let{clientSocket:e,provision:r,logger:n,cleanup:i}=t,s;try{s=await r()}catch(f){let p=f instanceof Error?f.message:"Provisioning failed";throw n("Provisioning error:",p),e.end(yM(p)),i(),f}let o=Rzt(s),a=new H2e.Client({host:o.host,port:o.port,user:o.user,password:o.password,database:o.database,ssl:o.ssl,options:o.options});a.on("error",()=>{});try{await a.connect()}catch(f){let p=f instanceof Error?f.message:"Remote connection failed";throw n("Remote connection error:",p),e.end(yM(p)),i(),f}let c=a.connection,l=c.stream;c.removeAllListeners(),l.removeAllListeners();let u=l,d=f=>p=>{p.code!=="ECONNRESET"&&n(`${f} socket error:`,p.message),i()};return u.on("error",d("Remote")),u.on("close",i),e.on("error",d("Client")),e.on("close",i),e.write(bzt()),e.on("data",f=>{u.destroyed||u.write(f)}),u.on("data",f=>{e.destroyed||e.write(f)}),e.resume(),u}function wzt(t,e){let{provision:r,logger:n,onCleanup:i}=e,s,o="ssl",a=!1;function c(){a||(a=!0,t.destroy(),s?.destroy(),i())}t.on("error",l=>{l.code!=="ECONNRESET"&&n("Client socket error:",l.message),c()}),t.on("data",l=>{if(o==="ssl"){if(l.length>=8&&l.readInt32BE(4)===Szt){t.write(vzt),o="startup";return}o="startup"}if(o==="startup"){if(l.length<8){t.end(yM("Invalid startup message")),c();return}if(l.readInt32BE(4)!==Ezt){t.end(yM("Unsupported protocol version")),c();return}t.pause(),t.removeAllListeners("data"),Tzt({clientSocket:t,provision:r,logger:n,cleanup:c}).then(d=>{s=d},d=>{n("Startup error:",d),c()})}})}function Rzt(t){let e=new URL(t);return{host:e.hostname,port:Number(e.port)||5432,user:decodeURIComponent(e.username),password:decodeURIComponent(e.password),database:e.pathname.slice(1)||"postgres",ssl:e.searchParams.get("sslmode")==="require"?!0:void 0,options:e.searchParams.get("options")??void 0}}var G2e=class{server;sockets=new Set;host;port;logger;provision;constructor(t){this.host=t.host??"127.0.0.1",this.port=t.port??0,this.logger=t.logger??(()=>{}),this.provision=t.provision}async start(){return new Promise((t,e)=>{let r=yzt.createServer(n=>{this.sockets.add(n),n.on("close",()=>{this.sockets.delete(n)}),wzt(n,{provision:this.provision,logger:this.logger,onCleanup:()=>{this.sockets.delete(n)}})});r.on("error",n=>{e(n)}),r.listen(this.port,this.host,()=>{this.server=r;let n=r.address(),i=`postgres://${this.host}:${String(n.port)}`;this.logger("Proxy listening on",i),t(i)})})}async stop(){for(let t of this.sockets)t.destroy();return this.sockets.clear(),new Promise(t=>{if(!this.server){t();return}this.server.close(()=>{this.server=void 0,t()})})}};var SM=Re("db_setup"),W2e=async({siteId:t,isProd:e,alias:r,connectionString:n})=>await zt(ft(),"db-setup-stage",async i=>{i?.setAttributes({"db_setup.site_id":t,"db_setup.is_prod":e,...r&&{"db_setup.alias":r}});let s;if(e?s="production":r&&(s=r),_Q.env.NETLIFY_DB_BRANCH=s,n)return i?.setAttributes({"db_setup.source":"config","db_setup.has_proxy":!1}),SM.log("Using database connection string provided by the API"),_Q.env.NETLIFY_DB_URL=n,{connectionString:n,wasProvisioned:()=>!1};let o=!1,a=new G2e({logger:(...l)=>SM.log("db-proxy:",...l),provision:async()=>(o=!0,SM.log("Provisioning database for site via API"),await fLe(t),await Azt(t,e,r))}),c=await a.start();return i?.setAttributes({"db_setup.source":"proxy","db_setup.has_proxy":!0}),SM.log("Local DB proxy started",{connectionString:c}),_Q.env.NETLIFY_DB_URL=c,{connectionString:c,proxy:a,wasProvisioned:()=>o}}),Azt=async(t,e,r)=>e||!r?(await lLe(t)).connection_string:(await pLe(t,r),(await dLe(t,r)).connection_string);import{randomUUID as xzt}from"crypto";var Y2e=async(t,e,r)=>{let n=xzt();return await vi(t.id,t.sessionId,{state:"await_input",interactions:{[n]:{type:"question",status:"pending",payload:e.questions,nativeToolId:e.toolUseId}},steps:[{id:n,refId:n,category:ie.Question}],...r?.nativeSessionId?{native_session_id:r.nativeSessionId}:{},...r?.nativeSessionS3Key?{native_session_s3_key:r.nativeSessionS3Key}:{}}),n};var Izt=({isHotFollowUp:t,enqueuedAt:e})=>t?e===void 0?[]:[["request",e]]:[["spawn",Number(process.env.NETLIFY_AGENT_RUNNER_SPAWN_AT_MS)],["enqueue",Number(process.env.NETLIFY_AGENT_RUNNER_ENQUEUED_AT_MS)]],K2e=(t,e,r,n)=>{for(let[i,s]of Izt(r))Number.isFinite(s)&&s>0&&s<=n&&t.timing(e,n-s,{from:i})},J2e=(t,e=Date.now(),r=Ie)=>K2e(r,"startup.duration",t,e),Z2e=(t,e=Date.now(),r=Ie)=>K2e(r,"startup.time_to_first_output",t,e),EM=(t,e=Ie)=>e.inc("startup.failed",1,{reason:t});function X2e(t){return["One or more AI functions use the legacy **v1** syntax (`exports.handler` / `module.exports.handler`):","",t.map(r=>`- ${r}`).join(`
|
|
918
918
|
`),"",'Netlify AI Gateway credentials (`ANTHROPIC_API_KEY`, `OPENAI_API_KEY`, `GEMINI_API_KEY` and the matching `*_BASE_URL` variables) are injected ONLY into the modern v2/v3 function runtime. A v1 function builds and deploys successfully but throws "missing API key" at runtime \u2014 this will NOT appear as a build error.',"","Rewrite each listed function using **v2** syntax \u2014 `export default async (req: Request) => Response` \u2014 or **v3** object export (`satisfies NetlifyFunction`), preserving its existing behavior and route. Do not set your own API keys; rely on the injected gateway credentials. See the `netlify-ai-gateway` skill for examples."].join(`
|
|
919
|
-
`)}var wS=Re("usage_tracker"),Pzt=4e3,Ozt=(t,e,r)=>t===!0||r!=null&&e!=null&&e>=r,Czt=(t,e,r)=>e!=null&&e>0&&r!=null&&t!=null&&t>=r*e,vM=(t,e,r,{softLimitRatio:n,onSoftLimit:i}={})=>{let s=!1,o=!1,a=!1,c=!1,l,u=i!=null&&n!=null&&r!=null,
|
|
919
|
+
`)}var wS=Re("usage_tracker"),Pzt=4e3,Ozt=(t,e,r)=>t===!0||r!=null&&e!=null&&e>=r,Czt=(t,e,r)=>e!=null&&e>0&&r!=null&&t!=null&&t>=r*e,vM=(t,e,r,{softLimitRatio:n,onSoftLimit:i}={})=>{let s=!1,o=!1,a=!1,c=!1,l,u,d,f=i!=null&&n!=null&&r!=null,p=async()=>{try{let v=await cLe(t,e);wS.log("Usage update response",{usage:v?.usage});let S=v?.usage?.total_credits_cost;S!=null&&(l=S);let g=Ozt(v?.credit_limit_exceeded,S,r);if(g&&(wS.log("Credit limit exceeded",{totalCreditsCost:S,enforcedCreditsRemaining:r}),a||(u=Date.now(),d=S??l??0),a=!0),f&&!c&&!g&&Czt(S,r,n)){c=!0,wS.log("Soft credit limit reached",{totalCreditsCost:S,enforcedCreditsRemaining:r,softLimitRatio:n});try{i()}catch(w){wS.warn("onSoftLimit callback threw",{error:w?.message||w})}}}catch(v){wS.warn("Failed to update usage",{error:v?.message||v})}},h=G0(p,Pzt);return{onAgentOutput:()=>{if(a)throw new Us("AI credit usage exceeded enforced limit.",503,"Credit limit reached. Check credit limits to continue using Agent Runners.",!0);o||(s=!0,h())},stop:async()=>{o||(o=!0,s&&(h.cancel(),wS.log("Sending final usage update"),await p(),u!==void 0&&(Ie.timing("credit_limit.overage_duration",Date.now()-u),Ie.distribution("credit_limit.overage_credits",Math.max(0,(l??d??0)-(d??0))))))},getCreditsCost:()=>l}};var bM=Re("credit_wrapup"),Q2e=(t,e)=>e&&t.enforcedAICreditsRemaining!=null&&t.mode==="create",eqe=async({runnerResult:t,interruptedSessionId:e,originalBudget:r,costAtSoftLimit:n,cliPath:i,config:s,context:o,runner:a,aiGateway:c,cwd:l,persistSteps:u,withStageTimer:d})=>{let f=Math.max(0,r-n),p=Math.max(1,Math.min(f,r*.15)),h=n+p,m=new AbortController,_=!1,y=vM(s.id,s.sessionId,h),v=Object.assign(async S=>{try{y.onAgentOutput()}catch(g){Ha(g)&&!_&&(_=!0,bM.log("Wrap-up turn hit its hard budget limit \u2014 stopping wrap-up",{wrapUpBudget:p,wrapUpHardLimit:h}),Ie.inc("session.credit_wrapup_aborted",1),m.abort())}return u(S)},{flush:u.flush.bind(u)});bM.log("Running credit wrap-up inference turn",{wrapUpBudget:p,wrapUpHardLimit:h,costAtSoftLimit:n,remainingAtSoftLimit:f});try{await u({steps:[{category:ie.Environment,message:"\u26A0\uFE0F You are running low on credits \u2014 wrapping up your project now."}],duration:0})}catch{}try{let{runnerResult:S}=await d("inference-credit-wrapup",()=>za({cliPath:i,config:s,context:o,runner:a,persistSteps:v,aiGateway:c,cwd:l,contextPrefix:AM,priorAgentSessionId:e,resumeSession:!0,effortOverride:"low",abortSignal:m.signal}));return _&&bM.log("Wrap-up turn was aborted due to budget limit"),{...S,steps:[...t.steps||[],...S.steps||[]],duration:(t.duration||0)+(S.duration||0)}}catch(S){return bM.warn("Credit wrap-up turn failed \u2014 proceeding with pre-wrap-up result",{error:S?.message||S}),Ie.inc("session.credit_wrapup_failed",1),t}finally{await y.stop()}};import F0 from"process";var TM=Re("shutdown"),tqe=!1,rqe,yQ=async t=>{if(tqe)return;if(tqe=!0,TM.info("Shutting down...",{signal:t}),ETe(),Ie.distribution("session.hot_followups",oqe()),!sqe()){let r=Date.now(),n=aqe(),i=cqe();n!==void 0&&Ie.timing("session.last_linger",r-n),i!==void 0&&Ie.timing("session.total_linger",r-i)}let e=rqe?.close().catch(r=>{TM.error("Error closing server during graceful shutdown",r)});await lqe(),await e,await Ow(),TM.info("Shutdown complete"),F0.exit(0)},nqe=t=>{rqe=t,F0.on("SIGINT",()=>{yQ("SIGINT")}),F0.on("SIGTERM",()=>{yQ("SIGTERM")}),F0.on("unhandledRejection",e=>{TM.error("Unhandled promise rejection \u2014 exiting",e),F0.exit(1)})},iqe=t=>{yQ(t)};var dqe=4e3,Nzt=3e4,uqe=Re("credit_limit_preservation"),fqe=async(t,e)=>{let r=null,n={},i=[];if(e){RS(e);let s=dl(t.runner);i.push(Promise.all([oh({runnerId:t.id,sessionId:t.sessionId,archive:s,nativeSessionId:e}).then(o=>{r=o}),fS({archive:s,cache:t.cache,nativeSessionId:e})]).catch(o=>{uqe.warn("Failed to preserve native session on credit-limit shutdown",{error:o?.message||o})}))}if(t.mode!=="ask"&&i.push(tD({config:t}).then(s=>s.hasChanges?fX({config:t,diff:s.diff,diffBinary:s.diffBinary,resultDiff:s.resultDiff,resultDiffBinary:s.resultDiffBinary}):{}).then(s=>{n=s}).catch(s=>{uqe.warn("Failed to preserve working-tree diff on credit-limit shutdown",{error:s?.message||s})})),i.length>0){let s=!1;await Promise.race([Promise.all(i).then(()=>{s=!0}),new Promise(o=>{setTimeout(o,Nzt).unref()})]),s||Ie.inc("credit_preservation.timed_out",1)}return{nativeSessionS3Key:r,diffFields:n}};var Dzt=Lzt(import.meta.url),j0=Dzt("../package.json"),pr=Re("pipeline_index"),AS=3,Mzt=["codex","gemini"],pqe=async({config:t,apiToken:e,cliPath:r="netlify",cwd:n,filter:i,isHotFollowUp:s=!1,enqueuedAt:o,tracing:a={}})=>{let c,l,u,d=Date.now(),f="success",p=!1,{withStageTimer:h}=vTe(Tc.timeUnits.hours(4)),m=await gke(j0.version,t.id,a);pr.log(`Agent runner orchestrator v${j0.version}`,{featureFlags:ut().raw,metrics:dye()}),EG({agent:t.runner,mode:t.mode,is_follow_up:t.sessionHistoryContext.length>0,version:j0.version,fast_init:t.fastInit}),J2e({isHotFollowUp:s,enqueuedAt:o});try{await qf(ft(),"run-pipeline",{},m,async _=>{await EQ(SQ(),t.runner),_?.setAttributes({"gen_ai.capability.name":t.mode,"session.id":t.sessionId,...process.env.NETLIFY_DEV_SERVER_ID?{"dev_server.id":process.env.NETLIFY_DEV_SERVER_ID}:{}});let{aiGateway:y,context:v,persistSteps:S,runner:g,sha:w}=await h("init",()=>xLe({config:t,apiToken:e,cliPath:r,cwd:n,filter:i,runnerVersion:j0.version}),Tc.timeUnits.minutes(10)),P=g.runner;ut().idleTimeoutEnabled||(c=g.clean);let x=Q2e(t,ut().creditWrapUpEnabled),R=new AbortController,O=!1,A=0,b;l=vM(t.id,t.sessionId,t.enforcedAICreditsRemaining,x?{softLimitRatio:.7,onSoftLimit:()=>{if(!O){if(!b){pr.warn("Soft credit limit reached but no session id yet \u2014 skipping wrap-up interrupt"),Ie.inc("session.credit_wrapup_skipped_no_session",1);return}O=!0,A=l?.getCreditsCost()??0,pr.log("Soft credit limit reached \u2014 interrupting agent to wrap up",{costAtSoftLimit:A}),Ie.inc("session.credit_wrapup_triggered",1),R.abort()}}}:void 0);let $=gI(t.mode),C;t.deployAlias&&t.deployAlias.length>0?C=t.deployAlias:(t.deployAlias!==void 0&&!$&&pr.warn("Received empty deploy alias for a non-prod deploy, falling back to local computation"),C=zQ(t.id,process.env.SITE_NAME,$));let T,I=!1,N=Object.assign(async oe=>{try{l?.onAgentOutput()}catch(Me){Ha(Me)?T??=Me:pr.warn("Unexpected error in onAgentOutput",{error:Me?.message||Me});return}return!I&&oe.steps?.some(Me=>Me.category!==ie.Environment&&Me.category!==ie.UserMessage)&&(I=!0,Z2e({isHotFollowUp:s,enqueuedAt:o})),S(oe)},{flush:S.flush.bind(S)});if(t.sha=w,t.mode==="redeploy"){let oe=await h("deploy",()=>XD({cliPath:r,config:t,context:v,result:"Redeploy completed",filter:i,isRetry:!1,deploySubdomain:C}));oe.deployError&&(pr.warn(`Redeploy deploy failed: ${oe.deployError}`),Ie.inc("deploy.failed",1,{attempt:1}));let{diff:Me,resultDiff:Tt,previewInfo:yt,diffBinary:Ut,resultDiffBinary:ar,hasNetlifyForm:Zt,hasNetlifyIdentity:uh}=oe;await l?.stop(),await h("cleanup",()=>dX({config:t,diff:Me,result:"Redeploy completed",duration:0,resultDiff:Tt,diffBinary:Ut,resultDiffBinary:ar,previewInfo:yt,isProdDeploy:$,hasNetlifyForm:Zt,hasNetlifyIdentity:uh,nativeSessionArchive:dl(t.runner)}),Tc.timeUnits.minutes(10),{interruptible:!1}),process.env.NETLIFY_LOCAL_MODE||(await c?.(),await u?.stop(),await AJ());return}let j;t.mode==="create"&&(j=(await h("create",()=>Tke({config:t,cwd:n}))).additionalContext),process.env.EXPERIMENTAL_NETLIFY_DB_ENABLED="1";let J,se;if(!process.env.NETLIFY_LOCAL_MODE&&t.siteId){let oe=await h("db-setup",()=>W2e({siteId:t.siteId,isProd:$,alias:C,connectionString:t.dbConnectionString}),Tc.timeUnits.minutes(10));if(u=oe.proxy,n)if(oe.proxy)j=[JFe(),j].filter(Boolean).join(`
|
|
920
920
|
|
|
921
921
|
`);else try{let Me=await eM({cliPath:r,cwd:n});J=new Set(Me.applied.map(yt=>yt.name)),se=Me.migrationsPath;let Tt=ZFe(Me);Tt&&(j=[Tt,j].filter(Boolean).join(`
|
|
922
922
|
|
|
923
|
-
`))}catch(Me){pr.warn("Skipping migration context injection \u2014 failed to build state block",{error:Me})}}let Te=await KFe(n??process.cwd(),se),Ne=await h("inference",async()=>{try{return await za({cliPath:r,config:t,context:v,runner:P,persistSteps:N,aiGateway:y,additionalContext:j,cwd:n,abortSignal:x?R.signal:void 0,onSessionId:x?oe=>{b=oe}:void 0})}catch(oe){if(!(oe instanceof Ld)||t.mode!=="rebase"&&t.mode!=="conflict_resolution")throw oe;for(let Me of Mzt){if(T&&Ha(T))throw T;if(Me===t.runner)continue;let Tt=Gy[Me];if(Tt){pr.log(`Primary runner ${t.runner} failed in ${t.mode} mode, falling back to ${Me}`),EG({agent:Me,mode:t.mode,version:j0.version}),await EQ(SQ(),Me);try{let yt=await za({cliPath:r,config:{...t,runner:Me},context:v,runner:Tt.runner,persistSteps:N,aiGateway:y,additionalContext:j,cwd:n,abortSignal:x?R.signal:void 0});return t.runner=Me,P=Tt.runner,ut().idleTimeoutEnabled||(c=Tt.clean),yt}catch(yt){if(Ha(yt))throw yt;pr.error(`Fallback runner ${Me} also failed`,{error:String(yt)})}}}throw oe}}),we=Ne.runnerResult;p=Ne.nativeResume??!1;let re=we.agentSessionId;if(x&&O&&we.aborted&&re&&!T&&(we=await eqe({runnerResult:we,interruptedSessionId:re,originalBudget:t.enforcedAICreditsRemaining,costAtSoftLimit:A,cliPath:r,config:t,context:v,runner:P,aiGateway:y,cwd:n,persistSteps:S,withStageTimer:h})),t.mode==="create")try{let oe=JSON.parse(kzt($zt.join(n??process.cwd(),".netlify","scaffold-result.json"),"utf8"));await qf(ft(),"create-scaffold-telemetry",Me=>{Me?.setAttributes({"create.template":oe.template,"create.packageManager":oe.packageManager})})}catch{await qf(ft(),"create-scaffold-telemetry",oe=>{oe?.setAttributes({"create.template":"none","create.packageManager":"none"})})}if(T)throw Object.assign(T,{agentSessionId:we.agentSessionId}),T;if(we.pendingInteraction){let oe=we.agentSessionId;oe&&RS(oe);let Me=await oh({runnerId:t.id,sessionId:t.sessionId,archive:dl(t.runner)}),Tt;try{Tt=await Y2e(t,we.pendingInteraction,{nativeSessionId:oe,nativeSessionS3Key:Me??void 0})}catch(yt){throw
|
|
923
|
+
`))}catch(Me){pr.warn("Skipping migration context injection \u2014 failed to build state block",{error:Me})}}let Te=await KFe(n??process.cwd(),se),Ne=await h("inference",async()=>{try{return await za({cliPath:r,config:t,context:v,runner:P,persistSteps:N,aiGateway:y,additionalContext:j,cwd:n,abortSignal:x?R.signal:void 0,onSessionId:x?oe=>{b=oe}:void 0})}catch(oe){if(!(oe instanceof Ld)||t.mode!=="rebase"&&t.mode!=="conflict_resolution")throw oe;for(let Me of Mzt){if(T&&Ha(T))throw T;if(Me===t.runner)continue;let Tt=Gy[Me];if(Tt){pr.log(`Primary runner ${t.runner} failed in ${t.mode} mode, falling back to ${Me}`),EG({agent:Me,mode:t.mode,version:j0.version}),await EQ(SQ(),Me);try{let yt=await za({cliPath:r,config:{...t,runner:Me},context:v,runner:Tt.runner,persistSteps:N,aiGateway:y,additionalContext:j,cwd:n,abortSignal:x?R.signal:void 0});return t.runner=Me,P=Tt.runner,ut().idleTimeoutEnabled||(c=Tt.clean),yt}catch(yt){if(Ha(yt))throw yt;pr.error(`Fallback runner ${Me} also failed`,{error:String(yt)})}}}throw oe}}),we=Ne.runnerResult;p=Ne.nativeResume??!1;let re=we.agentSessionId;if(x&&O&&we.aborted&&re&&!T&&(we=await eqe({runnerResult:we,interruptedSessionId:re,originalBudget:t.enforcedAICreditsRemaining,costAtSoftLimit:A,cliPath:r,config:t,context:v,runner:P,aiGateway:y,cwd:n,persistSteps:S,withStageTimer:h})),t.mode==="create")try{let oe=JSON.parse(kzt($zt.join(n??process.cwd(),".netlify","scaffold-result.json"),"utf8"));await qf(ft(),"create-scaffold-telemetry",Me=>{Me?.setAttributes({"create.template":oe.template,"create.packageManager":oe.packageManager})})}catch{await qf(ft(),"create-scaffold-telemetry",oe=>{oe?.setAttributes({"create.template":"none","create.packageManager":"none"})})}if(T)throw Object.assign(T,{agentSessionId:we.agentSessionId}),T;if(we.pendingInteraction){let oe=we.agentSessionId;oe&&RS(oe);let Me=await oh({runnerId:t.id,sessionId:t.sessionId,archive:dl(t.runner)}),Tt;try{Tt=await Y2e(t,we.pendingInteraction,{nativeSessionId:oe,nativeSessionS3Key:Me??void 0})}catch(yt){throw Ie.inc("inference.pause_persist_failed",1),yt}pr.log("Agent paused on a question; session set to await_input",{sessionId:t.sessionId,refId:Tt,questionCount:we.pendingInteraction.questions.length}),Ie.inc("inference.pending_question",1),Ie.distribution("inference.questions_per_ask",we.pendingInteraction.questions.length),await l?.stop(),process.env.NETLIFY_LOCAL_MODE||await u?.stop();return}let ee=await QD({cwd:n,migrationsPath:se,snapshot:Te,applied:J,config:t,aiGateway:y});if(ee.error){pr.log("Migration generation failed, running inference to fix the issue");let{runnerResult:oe}=await h("inference-migration-fix",()=>za({cliPath:r,config:t,context:v,runner:P,persistSteps:N,aiGateway:y,buildErrors:[`Running \`drizzle-kit generate\` to generate database migrations failed with the following error:
|
|
924
924
|
|
|
925
925
|
${ee.error}
|
|
926
926
|
|
|
927
|
-
Please fix the issue and do NOT run \`drizzle-kit generate\` yourself \u2014 it will be run automatically after you're done.`],priorAgentSessionId:we.agentSessionId}));we={...oe,steps:[...we.steps||[],...oe.steps||[]],duration:(we.duration||0)+(oe.duration||0)},await QD({cwd:n,migrationsPath:se,snapshot:Te,applied:J,config:t,aiGateway:y})}if(n&&!ee.skipped){let oe=await h("db-migrations-verify",()=>tje({cliPath:r,cwd:n}));if(oe.error){pr.log("Migration drift detected, running inference to fix");let{runnerResult:Me}=await h("inference-migration-drift-fix",()=>za({cliPath:r,config:t,context:v,runner:P,persistSteps:N,aiGateway:y,buildErrors:[oe.error],priorAgentSessionId:we.agentSessionId}));we={...Me,steps:[...we.steps||[],...Me.steps||[]],duration:(we.duration||0)+(Me.duration||0)}}}if(ut().aiFnV1GuardrailEnabled&&n&&t.mode!=="ask")try{let oe=await _J(n);if(oe.v1>0){pr.log(`Detected ${oe.v1} v1 AI function(s), running inference to fix`);let{runnerResult:Me}=await h("inference-ai-fn-v1-fix",()=>za({cliPath:r,config:t,context:v,runner:P,persistSteps:N,aiGateway:y,buildErrors:[X2e(oe.v1Files)],priorAgentSessionId:we.agentSessionId}));we={...Me,steps:[...we.steps||[],...Me.steps||[]],duration:(we.duration||0)+(Me.duration||0)}}}catch(oe){if(Ha(oe))throw oe;pr.warn("ai_fn_v1_guardrail failed",{err:oe})}let X=await h("deploy",()=>XD({cliPath:r,config:t,context:v,result:we.result,filter:i,isRetry:!1,deploySubdomain:C})),k=X.hasChanges?X:void 0,G=we;X.deployError&&
|
|
927
|
+
Please fix the issue and do NOT run \`drizzle-kit generate\` yourself \u2014 it will be run automatically after you're done.`],priorAgentSessionId:we.agentSessionId}));we={...oe,steps:[...we.steps||[],...oe.steps||[]],duration:(we.duration||0)+(oe.duration||0)},await QD({cwd:n,migrationsPath:se,snapshot:Te,applied:J,config:t,aiGateway:y})}if(n&&!ee.skipped){let oe=await h("db-migrations-verify",()=>tje({cliPath:r,cwd:n}));if(oe.error){pr.log("Migration drift detected, running inference to fix");let{runnerResult:Me}=await h("inference-migration-drift-fix",()=>za({cliPath:r,config:t,context:v,runner:P,persistSteps:N,aiGateway:y,buildErrors:[oe.error],priorAgentSessionId:we.agentSessionId}));we={...Me,steps:[...we.steps||[],...Me.steps||[]],duration:(we.duration||0)+(Me.duration||0)}}}if(ut().aiFnV1GuardrailEnabled&&n&&t.mode!=="ask")try{let oe=await _J(n);if(oe.v1>0){pr.log(`Detected ${oe.v1} v1 AI function(s), running inference to fix`);let{runnerResult:Me}=await h("inference-ai-fn-v1-fix",()=>za({cliPath:r,config:t,context:v,runner:P,persistSteps:N,aiGateway:y,buildErrors:[X2e(oe.v1Files)],priorAgentSessionId:we.agentSessionId}));we={...Me,steps:[...we.steps||[],...Me.steps||[]],duration:(we.duration||0)+(Me.duration||0)}}}catch(oe){if(Ha(oe))throw oe;pr.warn("ai_fn_v1_guardrail failed",{err:oe})}let X=await h("deploy",()=>XD({cliPath:r,config:t,context:v,result:we.result,filter:i,isRetry:!1,deploySubdomain:C})),k=X.hasChanges?X:void 0,G=we;X.deployError&&Ie.inc("deploy.failed",1,{attempt:1});let ue=[],q;if(X.hasChanges&&X.deployError){ue.push(Z$e(X.deployError));let oe=1,Me=!1;for(;oe<=AS&&!X.previewInfo&&!Me;)pr.log(`Deploy attempt had errors. Retrying. ${oe}/${AS}`),await qf(ft(),"deploy-stage",async Tt=>{Tt?.setAttributes({"stage.attempt":oe});let yt;try{yt=(await h(`inference-retry-${oe}`,()=>za({cliPath:r,config:t,context:v,runner:P,persistSteps:N,aiGateway:y,buildErrors:ue,priorAgentSessionId:we.agentSessionId}))).runnerResult}catch(Ut){if(Ha(Ut))throw Ut;pr.warn(`Inference retry ${oe} failed, stopping deploy retries:`,Ut),Me=!0;return}if(T)throw Object.assign(T,{agentSessionId:yt.agentSessionId??we.agentSessionId}),T;G={...yt,steps:[...G.steps||[],...yt.steps||[]],duration:(G.duration||0)+(yt.duration||0)},await QD({cwd:n,migrationsPath:se,snapshot:Te,applied:J,config:t,aiGateway:y}),X=await h(`deploy-retry-${oe}`,()=>XD({cliPath:r,config:t,context:v,result:yt.result,filter:i,isRetry:!0,deploySubdomain:C})),X.hasChanges&&(k=X),X.deployError&&(Ie.inc("deploy.failed",1,{attempt:oe+1}),ue.push(X.deployError)),oe++});oe>AS&&!X.previewInfo&&(Ie.inc("deploy.retries_exhausted",1),t.mode==="create"?(console.warn(`Deploy still failing after ${AS} retries, failing the create run`),q=new Error(`Deploy failed after ${AS} retries`)):console.warn(`Deploy still failing after ${AS} retries, completing run without a preview`))}let xe=X.previewInfo||X.hasChanges?X:k??X,{diff:W,resultDiff:M,previewInfo:D,diffBinary:B,resultDiffBinary:L,hasNetlifyForm:Z,hasNetlifyIdentity:ae}=xe;await l?.stop();let Se=G.agentSessionId??we.agentSessionId;if(Se&&RS(Se),await h("cleanup",()=>dX({config:t,diff:W,result:G.result,duration:G.duration,resultDiff:M,diffBinary:B,resultDiffBinary:L,previewInfo:D,isProdDeploy:$,hasNetlifyForm:Z,hasNetlifyIdentity:ae,nativeSessionArchive:dl(t.runner),nativeSessionId:Se}),Tc.timeUnits.minutes(10),{interruptible:!1}),q)throw q;try{let oe=await _J(n??process.cwd());oe.aiTotal>0&&_?.setAttributes({"agent.fn_ai_total":oe.aiTotal,"agent.fn_ai_v1":oe.v1,"agent.fn_ai_v2":oe.v2,"agent.fn_ai_v3":oe.v3,"agent.fn_ai_unknown":oe.unknown})}catch{}if(!process.env.NETLIFY_LOCAL_MODE&&(await c?.(),await u?.stop(),await AJ(),t.mode==="ask")){let oe=await TLe();oe.length>0&&(pr.warn(`Removed ${oe.length} leftover untracked change(s) after ask run`,{removed:oe}),Ie.inc("ask_mode.leaked_untracked_files",oe.length))}let Ge=t.siteId?await uLe(t.siteId):!1;typeof Ge=="boolean"&&_?.setAttributes({"actual.has_db":Ge}),pr.info("agent_storage_outcome",{sessionId:t.sessionId,runnerId:t.id,siteId:t.siteId,accountId:t.accountId,runner:t.runner,has_db:Ge??"unknown"});let vt=_?.spanContext();vt&&await vi(t.id,t.sessionId,{metadata:{storage_outcome:{...typeof Ge=="boolean"?{has_db:Ge}:{},trace_id:vt.traceId,span_id:vt.spanId}}}).catch(oe=>pr.warn("Failed to persist storage_outcome",{error:oe?.message}))})}catch(_){if(Ha(_)){f="gracefulError",pr.info("Agent run terminated gracefully",{statusCode:_.statusCode,reason:_.message}),await l?.stop();let P=_?.agentSessionId,x=_.isCreditLimitExceeded&&!!P,{nativeSessionS3Key:R,diffFields:O}=_.isCreditLimitExceeded?await fqe(t,P):{nativeSessionS3Key:null,diffFields:{}};await c?.(),await u?.stop();try{await vi(t.id,t.sessionId,{result:_.userMessage,state:_.isCreditLimitExceeded?"cancelled":"error",..._.isCreditLimitExceeded&&{credit_limit_exceeded:!0},...x?{native_session_id:P}:{},...R?{native_session_s3_key:R}:{},...O})}catch{pr.info("Could not update session (site may have been deleted)")}_.isCreditLimitExceeded&&iqe("credit_limit_cancelled");return}f=hi()?"interrupted":"error",pr.error("Got error while running pipeline",_),await l?.stop();let y=_?.agentSessionId,v=hi()&&!!y,S=null;if(v){RS(y);let P=dl(t.runner);await Promise.race([Promise.all([oh({runnerId:t.id,sessionId:t.sessionId,archive:P,nativeSessionId:y}).then(x=>{S=x}),fS({archive:P,cache:t.cache,nativeSessionId:y})]),new Promise(x=>{setTimeout(x,dqe).unref()})])}await c?.(),await u?.stop();let g=_ instanceof Error&&_.message,w=g?tO(g):"Encountered error when running agent";throw await vi(t.id,t.sessionId,{result:w,state:"error",...v?{native_session_id:y}:{},...S?{native_session_s3_key:S}:{}}),_}finally{Ie.timing("session.duration",Date.now()-d,{hot_follow_up:s,outcome:f,native_resume:p});let _=l?.getCreditsCost();_!=null&&Ie.distribution("session.credits_cost",_,{outcome:f,native_resume:p})}};var vQ=Re("session_manager"),lh=null,bQ={},hqe,wQ,mqe=0,gqe,TQ,q0=class extends Error{constructor(){super("A session is already running"),this.name="SessionAlreadyRunningError"}},_qe=t=>{bQ=t},wM=t=>{if(lh)throw new q0;let e={...bQ,...t,tracing:{...bQ.tracing,...t.tracing}};return $M(e.config.sessionId),vQ.log(`start agent=${e.config.runner} mode=${e.config.mode}`),e.isHotFollowUp&&mqe++,lh=pqe(e).finally(()=>{$M(void 0),lh=null,hqe=e.config.runner,TQ=Date.now(),gqe??=TQ}),lh},SQ=()=>hqe,sqe=()=>lh!==null,oqe=()=>mqe,aqe=()=>TQ,cqe=()=>gqe,EQ=async(t,e)=>{if(!ut().idleTimeoutEnabled||!t||t===e)return;let r=Gy[t];if(r)try{await r.clean(),vQ.info(`Wiped previous agent state (${t}) on switch to ${e}`)}catch(n){vQ.warn(`Failed to clean previous agent ${t} on switch`,{error:n?.message||n})}finally{wQ=void 0}},RS=t=>{wQ=t};var FFe=t=>{let e=t.previousSession?.nativeSessionId;return!!e&&e===wQ},lqe=async()=>{if(lh)try{await lh}catch{}};var RQ=Re("server"),yqe=8888,Uzt={type:"object",required:["prompt","sessionId","sha","mode","context"],properties:{prompt:{type:"string"},sessionId:{type:"string"},sha:{type:"string"},mode:{type:"string",enum:V0},context:{type:"array",items:{type:"object"}},enforcedAICreditsRemaining:{type:"integer"},agent:{type:"string",enum:gJ},model:{type:"string"},enqueuedAt:{type:"integer"},assetMap:{type:"object",additionalProperties:{type:"array",items:{type:"string"}}},previousSession:{type:"object",required:["nativeSessionId","agent"],properties:{nativeSessionId:{type:"string"},agent:{type:"string",enum:gJ}}},pendingUndeployedChanges:{type:"boolean"}}},Fzt=async(t,e)=>{hi()&&e.code(503).send({error:"shutdown",message:"Server is shutting down"})},jzt=async()=>({ok:!0}),qzt=async(t,e)=>{try{let r=YQ(t.body),n=typeof t.headers.traceparent=="string"?{traceparent:t.headers.traceparent}:void 0;return wM({config:r,tracing:n,isHotFollowUp:!0,enqueuedAt:t.body.enqueuedAt}).catch(i=>{RQ.error("Background session failed",i)}),{ok:!0,sessionId:t.body.sessionId}}catch(r){return r instanceof q0?e.code(409).send({error:"session_already_running",message:r.message}):(EM(H0(r)?r.reason:"unknown"),RQ.error("Error handling POST /sessions",r),e.code(500).send({error:"internal_server_error",message:"Internal server error"}))}},Bzt=()=>{let t=(0,Sqe.default)({logger:!1});return t.addHook("onRequest",Fzt),t.get("/health",jzt),t.post("/sessions",{schema:{body:Uzt}},qzt),t},Eqe=async()=>{let t=Bzt();return await t.listen({port:yqe,host:"0.0.0.0"}),RQ.info(`HTTP server listening on port ${yqe}`),t};var zzt=2,RM=Re("bin_cmd"),xS=(0,vqe.default)(AQ.argv.slice(2),{string:["auth","cwd","cli-path","filter","trace-exporter-url","traceparent"]}),B0=null;try{let t=await GQ(),e={apiToken:xS.auth,cwd:xS.cwd,cliPath:xS["cli-path"],filter:xS.filter,tracing:{exporterUrl:xS["trace-exporter-url"]}};_qe(e);let r=wM({config:t,...e,tracing:{...e.tracing,traceparent:xS.traceparent}});ut().idleTimeoutEnabled&&(B0=await Eqe()),nqe(B0),await r,RM.info("Finished agent"),B0||(await Ow(),AQ.exit(0))}catch(t){if(hi())RM.info("Pipeline interrupted by shutdown signal");else{if(EM(H0(t)?t.reason:NM(t)?"provider":"unknown"),RM.error("Error running agent pipeline:",t),B0)try{await B0.close()}catch(e){RM.error("Error closing server during failure exit",e)}await Ow(),AQ.exit(NM(t)?zzt:1)}}
|
|
928
928
|
/*! Bundled license information:
|
|
929
929
|
|
|
930
930
|
@fastify/proxy-addr/index.js:
|