${De(St)}`,Ot=Wr(c,Ge,k,p),Et=be(Ot,Ct).toString("hex"),Rt=`${Qe} Credential=${o}/${et}, SignedHeaders=${Ye}, Signature=${Et}`;returnSe.Authorization=Rt,{url:`https://${Z}${Xe}`,headers:Se}}asyncfunctionye(t,e,r,n={}){lets=typeoft=="string"?Buffer.from(t):t,{noUpload:a}=Be();returnHe(async()=>{leti=De(s);if(!(a==="1"&&r!=="application/json")){let{url:c,headers:d}=qe({method:"PUT",objectKey:e,contentType:r||"application/octet-stream",contentHash:i}),p=awaitfetch(c,{method:"PUT",headers:d,body:s});if(!p.ok){letk=awaitp.text();thrownewError(`HTTP error ${p.status}: ${k}`)}}return`${qr}/${e}`},n)}asyncfunctionTe(t,e={}){returnHe(async()=>{let{url:r,headers:n}=qe({method:"GET",objectKey:t}),s=awaitfetch(r,{method:"GET",headers:n});if(!s.ok){if(s.status===404)thrownewF(t);leta=awaits.text();thrownewError(`HTTP error ${s.status}: ${a}`)}returnBuffer.from(awaits.arrayBuffer())},e)}varFe=class{constructor(e,r){this.lockPath=e,this.key=r,this.expiresAt=Date.now()-1}asyncrefresh(e,r=!1){letn=this.expiresAt-Date.now();if(n>0&&!r){S(`Lock at ${this.lockPath} is still valid for ${n}ms`);return}try{lets=awaitTe(this.lockPath,{retryCount:1}),a=JSON.parse(s.toString("utf-8"));if(a.key!==this.key)thrownewError(`Lock at ${this.lockPath} is now owned by another process`);a.until=Date.now()+e,awaitye(JSON.stringify(a),this.lockPath,"application/json",{retryCount:2}),S(`Refreshed lock at ${this.lockPath} until ${newDate(a.until)}`)}catch(s){throwsinstanceofF?newError(`Lock at ${this.lockPath} no longer exists`):s}}asyncrelease(){try{lete=awaitTe(this.lockPath,{retryCount:1});JSON.parse(e.toString("utf-8")).key===this.key?(awaitYr(this.lockPath),S(`Released lock at ${this.lockPath}`)):console.warn(`Cannot release lock at ${this.lockPath}, it's now owned by another process`)}catch(e){if(einstanceofF)S(`Lock at ${this.lockPath} may already be released`);elsethrowe}}},ze=class{constructor(){this.key="";this.lockPath=""}asyncrefresh(){}asyncrelease(){}},Gr={...yt,timeoutMs:36e5,lockDurationMs:3e4,pollIntervalMs:2e3};asyncfunctionKr(t,e={}){letr={...Gr,...e},n=(0,me.randomUUID)(),s=Date.now(),a=0,{noLocking:i}=Be();if(i==="1")returnS("Locking disabled, using no-op lock"),newze;for(S(`Attempting to acquire lock at ${t} with key ${n}`);Date.now()-s<r.timeoutMs;){leto=()=>Te(t,{retryCount:0}).then(c=>{try{letd=JSON.parse(c.toString("utf-8"));returnd.until<Date.now()?(S("Found expired lock, overwriting"),null):d}catch{returnS("Found invalid lock file, overwriting"),null}}).catch(c=>{if(cinstanceofF)returnnull;throwc});try{if(awaito()){S(`Lock at ${t} is held, waiting...`),awaitje(r.pollIntervalMs);continue}letp={until:Date.now()+r.lockDurationMs,key:n},k=JSON.stringify(p);if(awaitye(k,t,"application/json",{retryCount:1}),S(`Created lock file at ${t}`),awaitje(Math.random()*200+300),awaitTe(t,{retryCount:1}).then(M=>{try{returnJSON.parse(M.toString("utf-8")).key!==n?!1:(S(`Successfully acquired lock at ${t}`),!0)}catch(ie){returnconsole.error("Failed to parse lock data:",ie),!1}}).catch(M=>(console.error("Failed to validate lock:",M),!1)))returnnewFe(t,n);S("Lock validation failed, retrying")}catch(c){console.error(`Error acquiring lock (attempt ${a}):`,c)}a++,awaitje(r.pollIntervalMs)}thrownewError(`Failed to acquire lock at ${t} after ${r.timeoutMs}ms`)}asyncfunctionYr(t,e={}){returnHe(async()=>{let{url:r,headers:n}=qe({method:"DELETE",objectKey:t}),s=awaitfetch(r,{method:"DELETE",headers:n});if(!s.ok&&s.status!==404){leta=awaits.text();thrownewError(`HTTP error ${s.status}: ${a}`)}},e)}asyncfunctionWe(t,e,r){letn=`${t}.lock`,s=awaitKr(n),a=awaitTe(t).then(i=>JSON.parse(i.toString("utf-8"))).catch(i=>{if(iinstanceofF)returnr;throwi});S("existingData",a);try{leti=awaite(a),o=JSON.stringify(i);returnawaits.refresh(3e4),awaitye(o,t,"application/json"),S("newData",i),i}finally{awaits.release()}}varXr=x.union([x.literal("stable"),x.literal("nightly")]),Je=x.string().min(1),gt=x.enum(Pe),vt=x.enum(mt),Qr=x.string().regex(/^([0-9a-f]{40}|[0-9a-f]{64})$/),en=x.ob