@reddb-io/red-skills 4.2.8 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,28 +1,32 @@
1
1
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
2
- var Ol=Object.create;var Ao=Object.defineProperty;var Dl=Object.getOwnPropertyDescriptor;var Gl=Object.getOwnPropertyNames;var $l=Object.getPrototypeOf,jl=Object.prototype.hasOwnProperty;var Po=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Il=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Gl(t))!jl.call(e,o)&&o!==r&&Ao(e,o,{get:()=>t[o],enumerable:!(n=Dl(t,o))||n.enumerable});return e};var pr=(e,t,r)=>(r=e!=null?Ol($l(e)):{},Il(t||!e||!e.__esModule?Ao(r,"default",{value:e,enumerable:!0}):r,e));var mi=Po(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.format=zu;Pt.parse=Yu;var Ku=/^[\u0009\u0020-\u007e\u0080-\u00ff]*$/,li=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,Vu=/[\\"]/g,Ju=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,di=(()=>{let e=function(){};return e.prototype=Object.create(null),e})();function zu(e){let{type:t,parameters:r}=e;if(!t||!Ju.test(t))throw new TypeError(`Invalid type: ${t}`);let n=t;if(r)for(let o of Object.keys(r)){if(!li.test(o))throw new TypeError(`Invalid parameter name: ${o}`);n+=`; ${o}=${ec(r[o])}`}return n}function Yu(e,t){let r=e.length,n=Xr(e,0,r),o=n;n=Qr(e,n,r);let s=Zr(e,o,n),i=e.slice(o,s).toLowerCase(),a=t?.parameters===!1?new di:Zu(e,n,r);return{type:i,parameters:a}}var ui=32,ci=9,pi=59,Qu=61,ai=34,Xu=92;function Zu(e,t,r){let n=new di;e:for(;t<r;){t=Xr(e,t+1,r);let o=t;for(;t<r;){let s=e.charCodeAt(t);if(s===pi)continue e;if(s===Qu){let i=Zr(e,o,t),a=e.slice(o,i).toLowerCase();if(t=Xr(e,t+1,r),t<r&&e.charCodeAt(t)===ai){t++;let u="";for(;t<r;){let c=e.charCodeAt(t++);if(c===ai){t=Qr(e,t,r),n[a]===void 0&&(n[a]=u);break}if(c===Xu&&t<r){u+=e[t++];continue}u+=String.fromCharCode(c)}continue e}let l=t;if(t=Qr(e,t,r),n[a]===void 0){let u=Zr(e,l,t);n[a]=e.slice(l,u)}continue e}t++}}return n}function Qr(e,t,r){for(;t<r&&e.charCodeAt(t)!==pi;)t++;return t}function Xr(e,t,r){for(;t<r;){let n=e.charCodeAt(t);if(n!==ui&&n!==ci)break;t++}return t}function Zr(e,t,r){for(;r>t;){let n=e.charCodeAt(r-1);if(n!==ui&&n!==ci)break;r--}return r}function ec(e){if(li.test(e))return e;if(Ku.test(e))return`"${e.replace(Vu,"\\$&")}"`;throw new TypeError(`Invalid parameter value: ${e}`)}});var ln=Po((sn,an)=>{(function(e,t){typeof sn=="object"&&typeof an<"u"?an.exports=t():typeof define=="function"&&define.amd?define(t):e.Bottleneck=t()})(sn,function(){"use strict";var e=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function t(w){return w&&w.default||w}var r=function(w,m,d={}){var f,h,y;for(f in m)y=m[f],d[f]=(h=w[f])!=null?h:y;return d},n=function(w,m,d={}){var f,h;for(f in w)h=w[f],m[f]!==void 0&&(d[f]=h);return d},o={load:r,overwrite:n},s;s=class{constructor(m,d){this.incr=m,this.decr=d,this._first=null,this._last=null,this.length=0}push(m){var d;this.length++,typeof this.incr=="function"&&this.incr(),d={value:m,prev:this._last,next:null},this._last!=null?(this._last.next=d,this._last=d):this._first=this._last=d}shift(){var m;if(this._first!=null)return this.length--,typeof this.decr=="function"&&this.decr(),m=this._first.value,(this._first=this._first.next)!=null?this._first.prev=null:this._last=null,m}first(){if(this._first!=null)return this._first.value}getArray(){var m,d,f;for(m=this._first,f=[];m!=null;)f.push((d=m,m=m.next,d.value));return f}forEachShift(m){var d;for(d=this.shift();d!=null;)m(d),d=this.shift()}debug(){var m,d,f,h,y;for(m=this._first,y=[];m!=null;)y.push((d=m,m=m.next,{value:d.value,prev:(f=d.prev)!=null?f.value:void 0,next:(h=d.next)!=null?h.value:void 0}));return y}};var i=s,a;a=class{constructor(m){if(this.instance=m,this._events={},this.instance.on!=null||this.instance.once!=null||this.instance.removeAllListeners!=null)throw new Error("An Emitter already exists for this object");this.instance.on=(d,f)=>this._addListener(d,"many",f),this.instance.once=(d,f)=>this._addListener(d,"once",f),this.instance.removeAllListeners=(d=null)=>d!=null?delete this._events[d]:this._events={}}_addListener(m,d,f){var h;return(h=this._events)[m]==null&&(h[m]=[]),this._events[m].push({cb:f,status:d}),this.instance}listenerCount(m){return this._events[m]!=null?this._events[m].length:0}async trigger(m,...d){var f,h;try{return m!=="debug"&&this.trigger("debug",`Event triggered: ${m}`,d),this._events[m]==null?void 0:(this._events[m]=this._events[m].filter(function(y){return y.status!=="none"}),h=this._events[m].map(async y=>{var k,R;if(y.status!=="none"){y.status==="once"&&(y.status="none");try{return R=typeof y.cb=="function"?y.cb(...d):void 0,typeof R?.then=="function"?await R:R}catch(T){return k=T,this.trigger("error",k),null}}}),(await Promise.all(h)).find(function(y){return y!=null}))}catch(y){return f=y,this.trigger("error",f),null}}};var l=a,u,c,p;u=i,c=l,p=class{constructor(m){var d;this.Events=new c(this),this._length=0,this._lists=function(){var f,h,y;for(y=[],d=f=1,h=m;1<=h?f<=h:f>=h;d=1<=h?++f:--f)y.push(new u(()=>this.incr(),()=>this.decr()));return y}.call(this)}incr(){if(this._length++===0)return this.Events.trigger("leftzero")}decr(){if(--this._length===0)return this.Events.trigger("zero")}push(m){return this._lists[m.options.priority].push(m)}queued(m){return m!=null?this._lists[m].length:this._length}shiftAll(m){return this._lists.forEach(function(d){return d.forEachShift(m)})}getFirst(m=this._lists){var d,f,h;for(d=0,f=m.length;d<f;d++)if(h=m[d],h.length>0)return h;return[]}shiftLastFrom(m){return this.getFirst(this._lists.slice(m).reverse()).shift()}};var g=p,b;b=class extends Error{};var _=b,S,v,x,J,pe;J=10,v=5,pe=o,S=_,x=class{constructor(m,d,f,h,y,k,R,T){this.task=m,this.args=d,this.rejectOnDrop=y,this.Events=k,this._states=R,this.Promise=T,this.options=pe.load(f,h),this.options.priority=this._sanitizePriority(this.options.priority),this.options.id===h.id&&(this.options.id=`${this.options.id}-${this._randomIndex()}`),this.promise=new this.Promise(($,j)=>{this._resolve=$,this._reject=j}),this.retryCount=0}_sanitizePriority(m){var d;return d=~~m!==m?v:m,d<0?0:d>J-1?J-1:d}_randomIndex(){return Math.random().toString(36).slice(2)}doDrop({error:m,message:d="This job has been dropped by Bottleneck"}={}){return this._states.remove(this.options.id)?(this.rejectOnDrop&&this._reject(m??new S(d)),this.Events.trigger("dropped",{args:this.args,options:this.options,task:this.task,promise:this.promise}),!0):!1}_assertStatus(m){var d;if(d=this._states.jobStatus(this.options.id),!(d===m||m==="DONE"&&d===null))throw new S(`Invalid job status ${d}, expected ${m}. Please open an issue at https://github.com/SGrondin/bottleneck/issues`)}doReceive(){return this._states.start(this.options.id),this.Events.trigger("received",{args:this.args,options:this.options})}doQueue(m,d){return this._assertStatus("RECEIVED"),this._states.next(this.options.id),this.Events.trigger("queued",{args:this.args,options:this.options,reachedHWM:m,blocked:d})}doRun(){return this.retryCount===0?(this._assertStatus("QUEUED"),this._states.next(this.options.id)):this._assertStatus("EXECUTING"),this.Events.trigger("scheduled",{args:this.args,options:this.options})}async doExecute(m,d,f,h){var y,k,R;this.retryCount===0?(this._assertStatus("RUNNING"),this._states.next(this.options.id)):this._assertStatus("EXECUTING"),k={args:this.args,options:this.options,retryCount:this.retryCount},this.Events.trigger("executing",k);try{if(R=await(m!=null?m.schedule(this.options,this.task,...this.args):this.task(...this.args)),d())return this.doDone(k),await h(this.options,k),this._assertStatus("DONE"),this._resolve(R)}catch(T){return y=T,this._onFailure(y,k,d,f,h)}}doExpire(m,d,f){var h,y;return this._states.jobStatus(this.options.id==="RUNNING")&&this._states.next(this.options.id),this._assertStatus("EXECUTING"),y={args:this.args,options:this.options,retryCount:this.retryCount},h=new S(`This job timed out after ${this.options.expiration} ms.`),this._onFailure(h,y,m,d,f)}async _onFailure(m,d,f,h,y){var k,R;if(f())return k=await this.Events.trigger("failed",m,d),k!=null?(R=~~k,this.Events.trigger("retry",`Retrying ${this.options.id} after ${R} ms`,d),this.retryCount++,h(R)):(this.doDone(d),await y(this.options,d),this._assertStatus("DONE"),this._reject(m))}doDone(m){return this._assertStatus("EXECUTING"),this._states.next(this.options.id),this.Events.trigger("done",m)}};var O=x,we,me,te;te=o,we=_,me=class{constructor(m,d,f){this.instance=m,this.storeOptions=d,this.clientId=this.instance._randomIndex(),te.load(f,f,this),this._nextRequest=this._lastReservoirRefresh=this._lastReservoirIncrease=Date.now(),this._running=0,this._done=0,this._unblockTime=0,this.ready=this.Promise.resolve(),this.clients={},this._startHeartbeat()}_startHeartbeat(){var m;return this.heartbeat==null&&(this.storeOptions.reservoirRefreshInterval!=null&&this.storeOptions.reservoirRefreshAmount!=null||this.storeOptions.reservoirIncreaseInterval!=null&&this.storeOptions.reservoirIncreaseAmount!=null)?typeof(m=this.heartbeat=setInterval(()=>{var d,f,h,y,k;if(y=Date.now(),this.storeOptions.reservoirRefreshInterval!=null&&y>=this._lastReservoirRefresh+this.storeOptions.reservoirRefreshInterval&&(this._lastReservoirRefresh=y,this.storeOptions.reservoir=this.storeOptions.reservoirRefreshAmount,this.instance._drainAll(this.computeCapacity())),this.storeOptions.reservoirIncreaseInterval!=null&&y>=this._lastReservoirIncrease+this.storeOptions.reservoirIncreaseInterval&&({reservoirIncreaseAmount:d,reservoirIncreaseMaximum:h,reservoir:k}=this.storeOptions,this._lastReservoirIncrease=y,f=h!=null?Math.min(d,h-k):d,f>0))return this.storeOptions.reservoir+=f,this.instance._drainAll(this.computeCapacity())},this.heartbeatInterval)).unref=="function"?m.unref():void 0:clearInterval(this.heartbeat)}async __publish__(m){return await this.yieldLoop(),this.instance.Events.trigger("message",m.toString())}async __disconnect__(m){return await this.yieldLoop(),clearInterval(this.heartbeat),this.Promise.resolve()}yieldLoop(m=0){return new this.Promise(function(d,f){return setTimeout(d,m)})}computePenalty(){var m;return(m=this.storeOptions.penalty)!=null?m:15*this.storeOptions.minTime||5e3}async __updateSettings__(m){return await this.yieldLoop(),te.overwrite(m,m,this.storeOptions),this._startHeartbeat(),this.instance._drainAll(this.computeCapacity()),!0}async __running__(){return await this.yieldLoop(),this._running}async __queued__(){return await this.yieldLoop(),this.instance.queued()}async __done__(){return await this.yieldLoop(),this._done}async __groupCheck__(m){return await this.yieldLoop(),this._nextRequest+this.timeout<m}computeCapacity(){var m,d;return{maxConcurrent:m,reservoir:d}=this.storeOptions,m!=null&&d!=null?Math.min(m-this._running,d):m!=null?m-this._running:d??null}conditionsCheck(m){var d;return d=this.computeCapacity(),d==null||m<=d}async __incrementReservoir__(m){var d;return await this.yieldLoop(),d=this.storeOptions.reservoir+=m,this.instance._drainAll(this.computeCapacity()),d}async __currentReservoir__(){return await this.yieldLoop(),this.storeOptions.reservoir}isBlocked(m){return this._unblockTime>=m}check(m,d){return this.conditionsCheck(m)&&this._nextRequest-d<=0}async __check__(m){var d;return await this.yieldLoop(),d=Date.now(),this.check(m,d)}async __register__(m,d,f){var h,y;return await this.yieldLoop(),h=Date.now(),this.conditionsCheck(d)?(this._running+=d,this.storeOptions.reservoir!=null&&(this.storeOptions.reservoir-=d),y=Math.max(this._nextRequest-h,0),this._nextRequest=h+y+this.storeOptions.minTime,{success:!0,wait:y,reservoir:this.storeOptions.reservoir}):{success:!1}}strategyIsBlock(){return this.storeOptions.strategy===3}async __submit__(m,d){var f,h,y;if(await this.yieldLoop(),this.storeOptions.maxConcurrent!=null&&d>this.storeOptions.maxConcurrent)throw new we(`Impossible to add a job having a weight of ${d} to a limiter having a maxConcurrent setting of ${this.storeOptions.maxConcurrent}`);return h=Date.now(),y=this.storeOptions.highWater!=null&&m===this.storeOptions.highWater&&!this.check(d,h),f=this.strategyIsBlock()&&(y||this.isBlocked(h)),f&&(this._unblockTime=h+this.computePenalty(),this._nextRequest=this._unblockTime+this.storeOptions.minTime,this.instance._dropAllQueued()),{reachedHWM:y,blocked:f,strategy:this.storeOptions.strategy}}async __free__(m,d){return await this.yieldLoop(),this._running-=d,this._done+=d,this.instance._drainAll(this.computeCapacity()),{running:this._running}}};var ze=me,ar,oo;ar=_,oo=class{constructor(m){this.status=m,this._jobs={},this.counts=this.status.map(function(){return 0})}next(m){var d,f;if(d=this._jobs[m],f=d+1,d!=null&&f<this.status.length)return this.counts[d]--,this.counts[f]++,this._jobs[m]++;if(d!=null)return this.counts[d]--,delete this._jobs[m]}start(m){var d;return d=0,this._jobs[m]=d,this.counts[d]++}remove(m){var d;return d=this._jobs[m],d!=null&&(this.counts[d]--,delete this._jobs[m]),d!=null}jobStatus(m){var d;return(d=this.status[this._jobs[m]])!=null?d:null}statusJobs(m){var d,f,h,y,k;if(m!=null){if(f=this.status.indexOf(m),f<0)throw new ar(`status must be one of ${this.status.join(", ")}`);h=this._jobs,y=[];for(d in h)k=h[d],k===f&&y.push(d);return y}else return Object.keys(this._jobs)}statusCounts(){return this.counts.reduce((m,d,f)=>(m[this.status[f]]=d,m),{})}};var _l=oo,so,io;so=i,io=class{constructor(m,d){this.schedule=this.schedule.bind(this),this.name=m,this.Promise=d,this._running=0,this._queue=new so}isEmpty(){return this._queue.length===0}async _tryToRun(){var m,d,f,h,y,k,R;if(this._running<1&&this._queue.length>0)return this._running++,{task:R,args:m,resolve:y,reject:h}=this._queue.shift(),d=await async function(){try{return k=await R(...m),function(){return y(k)}}catch(T){return f=T,function(){return h(f)}}}(),this._running--,this._tryToRun(),d()}schedule(m,...d){var f,h,y;return y=h=null,f=new this.Promise(function(k,R){return y=k,h=R}),this._queue.push({task:m,args:d,resolve:y,reject:h}),this._tryToRun(),f}};var kl=io,ao="2.19.5",Rl={version:ao},wl=Object.freeze({version:ao,default:Rl}),lo=()=>console.log("You must import the full version of Bottleneck in order to use this feature."),uo=()=>console.log("You must import the full version of Bottleneck in order to use this feature."),El=()=>console.log("You must import the full version of Bottleneck in order to use this feature."),co,po,mo,fo,go,gt;gt=o,co=l,fo=lo,mo=uo,go=El,po=function(){class w{constructor(d={}){this.deleteKey=this.deleteKey.bind(this),this.limiterOptions=d,gt.load(this.limiterOptions,this.defaults,this),this.Events=new co(this),this.instances={},this.Bottleneck=To,this._startAutoCleanup(),this.sharedConnection=this.connection!=null,this.connection==null&&(this.limiterOptions.datastore==="redis"?this.connection=new fo(Object.assign({},this.limiterOptions,{Events:this.Events})):this.limiterOptions.datastore==="ioredis"&&(this.connection=new mo(Object.assign({},this.limiterOptions,{Events:this.Events}))))}key(d=""){var f;return(f=this.instances[d])!=null?f:(()=>{var h;return h=this.instances[d]=new this.Bottleneck(Object.assign(this.limiterOptions,{id:`${this.id}-${d}`,timeout:this.timeout,connection:this.connection})),this.Events.trigger("created",h,d),h})()}async deleteKey(d=""){var f,h;return h=this.instances[d],this.connection&&(f=await this.connection.__runCommand__(["del",...go.allKeys(`${this.id}-${d}`)])),h!=null&&(delete this.instances[d],await h.disconnect()),h!=null||f>0}limiters(){var d,f,h,y;f=this.instances,h=[];for(d in f)y=f[d],h.push({key:d,limiter:y});return h}keys(){return Object.keys(this.instances)}async clusterKeys(){var d,f,h,y,k,R,T,$,j;if(this.connection==null)return this.Promise.resolve(this.keys());for(R=[],d=null,j=`b_${this.id}-`.length,f=9;d!==0;)for([$,h]=await this.connection.__runCommand__(["scan",d??0,"match",`b_${this.id}-*_settings`,"count",1e4]),d=~~$,y=0,T=h.length;y<T;y++)k=h[y],R.push(k.slice(j,-f));return R}_startAutoCleanup(){var d;return clearInterval(this.interval),typeof(d=this.interval=setInterval(async()=>{var f,h,y,k,R,T;R=Date.now(),y=this.instances,k=[];for(h in y){T=y[h];try{await T._store.__groupCheck__(R)?k.push(this.deleteKey(h)):k.push(void 0)}catch($){f=$,k.push(T.Events.trigger("error",f))}}return k},this.timeout/2)).unref=="function"?d.unref():void 0}updateSettings(d={}){if(gt.overwrite(d,this.defaults,this),gt.overwrite(d,d,this.limiterOptions),d.timeout!=null)return this._startAutoCleanup()}disconnect(d=!0){var f;if(!this.sharedConnection)return(f=this.connection)!=null?f.disconnect(d):void 0}}return w.prototype.defaults={timeout:1e3*60*5,connection:null,Promise,id:"group-key"},w}.call(e);var Sl=po,ho,yo,bo;bo=o,yo=l,ho=function(){class w{constructor(d={}){this.options=d,bo.load(this.options,this.defaults,this),this.Events=new yo(this),this._arr=[],this._resetPromise(),this._lastFlush=Date.now()}_resetPromise(){return this._promise=new this.Promise((d,f)=>this._resolve=d)}_flush(){return clearTimeout(this._timeout),this._lastFlush=Date.now(),this._resolve(),this.Events.trigger("batch",this._arr),this._arr=[],this._resetPromise()}add(d){var f;return this._arr.push(d),f=this._promise,this._arr.length===this.maxSize?this._flush():this.maxTime!=null&&this._arr.length===1&&(this._timeout=setTimeout(()=>this._flush(),this.maxTime)),f}}return w.prototype.defaults={maxTime:null,maxSize:null,Promise},w}.call(e);var vl=ho,Tl=()=>console.log("You must import the full version of Bottleneck in order to use this feature."),xl=t(wl),_o,ko,lr,dr,Ro,ur,wo,Eo,So,cr,re,vo=[].splice;ur=10,ko=5,re=o,wo=g,dr=O,Ro=ze,Eo=Tl,lr=l,So=_l,cr=kl,_o=function(){class w{constructor(d={},...f){var h,y;this._addToQueue=this._addToQueue.bind(this),this._validateOptions(d,f),re.load(d,this.instanceDefaults,this),this._queues=new wo(ur),this._scheduled={},this._states=new So(["RECEIVED","QUEUED","RUNNING","EXECUTING"].concat(this.trackDoneStatus?["DONE"]:[])),this._limiter=null,this.Events=new lr(this),this._submitLock=new cr("submit",this.Promise),this._registerLock=new cr("register",this.Promise),y=re.load(d,this.storeDefaults,{}),this._store=function(){if(this.datastore==="redis"||this.datastore==="ioredis"||this.connection!=null)return h=re.load(d,this.redisStoreDefaults,{}),new Eo(this,y,h);if(this.datastore==="local")return h=re.load(d,this.localStoreDefaults,{}),new Ro(this,y,h);throw new w.prototype.BottleneckError(`Invalid datastore type: ${this.datastore}`)}.call(this),this._queues.on("leftzero",()=>{var k;return(k=this._store.heartbeat)!=null&&typeof k.ref=="function"?k.ref():void 0}),this._queues.on("zero",()=>{var k;return(k=this._store.heartbeat)!=null&&typeof k.unref=="function"?k.unref():void 0})}_validateOptions(d,f){if(!(d!=null&&typeof d=="object"&&f.length===0))throw new w.prototype.BottleneckError("Bottleneck v2 takes a single object argument. Refer to https://github.com/SGrondin/bottleneck#upgrading-to-v2 if you're upgrading from Bottleneck v1.")}ready(){return this._store.ready}clients(){return this._store.clients}channel(){return`b_${this.id}`}channel_client(){return`b_${this.id}_${this._store.clientId}`}publish(d){return this._store.__publish__(d)}disconnect(d=!0){return this._store.__disconnect__(d)}chain(d){return this._limiter=d,this}queued(d){return this._queues.queued(d)}clusterQueued(){return this._store.__queued__()}empty(){return this.queued()===0&&this._submitLock.isEmpty()}running(){return this._store.__running__()}done(){return this._store.__done__()}jobStatus(d){return this._states.jobStatus(d)}jobs(d){return this._states.statusJobs(d)}counts(){return this._states.statusCounts()}_randomIndex(){return Math.random().toString(36).slice(2)}check(d=1){return this._store.__check__(d)}_clearGlobalState(d){return this._scheduled[d]!=null?(clearTimeout(this._scheduled[d].expiration),delete this._scheduled[d],!0):!1}async _free(d,f,h,y){var k,R;try{if({running:R}=await this._store.__free__(d,h.weight),this.Events.trigger("debug",`Freed ${h.id}`,y),R===0&&this.empty())return this.Events.trigger("idle")}catch(T){return k=T,this.Events.trigger("error",k)}}_run(d,f,h){var y,k,R;return f.doRun(),y=this._clearGlobalState.bind(this,d),R=this._run.bind(this,d,f),k=this._free.bind(this,d,f),this._scheduled[d]={timeout:setTimeout(()=>f.doExecute(this._limiter,y,R,k),h),expiration:f.options.expiration!=null?setTimeout(function(){return f.doExpire(y,R,k)},h+f.options.expiration):void 0,job:f}}_drainOne(d){return this._registerLock.schedule(()=>{var f,h,y,k,R;return this.queued()===0?this.Promise.resolve(null):(R=this._queues.getFirst(),{options:k,args:f}=y=R.first(),d!=null&&k.weight>d?this.Promise.resolve(null):(this.Events.trigger("debug",`Draining ${k.id}`,{args:f,options:k}),h=this._randomIndex(),this._store.__register__(h,k.weight,k.expiration).then(({success:T,wait:$,reservoir:j})=>{var Ye;return this.Events.trigger("debug",`Drained ${k.id}`,{success:T,args:f,options:k}),T?(R.shift(),Ye=this.empty(),Ye&&this.Events.trigger("empty"),j===0&&this.Events.trigger("depleted",Ye),this._run(h,y,$),this.Promise.resolve(k.weight)):this.Promise.resolve(null)})))})}_drainAll(d,f=0){return this._drainOne(d).then(h=>{var y;return h!=null?(y=d!=null?d-h:d,this._drainAll(y,f+h)):this.Promise.resolve(f)}).catch(h=>this.Events.trigger("error",h))}_dropAllQueued(d){return this._queues.shiftAll(function(f){return f.doDrop({message:d})})}stop(d={}){var f,h;return d=re.load(d,this.stopDefaults),h=y=>{var k;return k=()=>{var R;return R=this._states.counts,R[0]+R[1]+R[2]+R[3]===y},new this.Promise((R,T)=>k()?R():this.on("done",()=>{if(k())return this.removeAllListeners("done"),R()}))},f=d.dropWaitingJobs?(this._run=function(y,k){return k.doDrop({message:d.dropErrorMessage})},this._drainOne=()=>this.Promise.resolve(null),this._registerLock.schedule(()=>this._submitLock.schedule(()=>{var y,k,R;k=this._scheduled;for(y in k)R=k[y],this.jobStatus(R.job.options.id)==="RUNNING"&&(clearTimeout(R.timeout),clearTimeout(R.expiration),R.job.doDrop({message:d.dropErrorMessage}));return this._dropAllQueued(d.dropErrorMessage),h(0)}))):this.schedule({priority:ur-1,weight:0},()=>h(1)),this._receive=function(y){return y._reject(new w.prototype.BottleneckError(d.enqueueErrorMessage))},this.stop=()=>this.Promise.reject(new w.prototype.BottleneckError("stop() has already been called")),f}async _addToQueue(d){var f,h,y,k,R,T,$;({args:f,options:k}=d);try{({reachedHWM:R,blocked:h,strategy:$}=await this._store.__submit__(this.queued(),k.weight))}catch(j){return y=j,this.Events.trigger("debug",`Could not queue ${k.id}`,{args:f,options:k,error:y}),d.doDrop({error:y}),!1}return h?(d.doDrop(),!0):R&&(T=$===w.prototype.strategy.LEAK?this._queues.shiftLastFrom(k.priority):$===w.prototype.strategy.OVERFLOW_PRIORITY?this._queues.shiftLastFrom(k.priority+1):$===w.prototype.strategy.OVERFLOW?d:void 0,T?.doDrop(),T==null||$===w.prototype.strategy.OVERFLOW)?(T==null&&d.doDrop(),R):(d.doQueue(R,h),this._queues.push(d),await this._drainAll(),R)}_receive(d){return this._states.jobStatus(d.options.id)!=null?(d._reject(new w.prototype.BottleneckError(`A job with the same id already exists (id=${d.options.id})`)),!1):(d.doReceive(),this._submitLock.schedule(this._addToQueue,d))}submit(...d){var f,h,y,k,R,T,$;return typeof d[0]=="function"?(R=d,[h,...d]=R,[f]=vo.call(d,-1),k=re.load({},this.jobDefaults)):(T=d,[k,h,...d]=T,[f]=vo.call(d,-1),k=re.load(k,this.jobDefaults)),$=(...j)=>new this.Promise(function(Ye,Pl){return h(...j,function(...xo){return(xo[0]!=null?Pl:Ye)(xo)})}),y=new dr($,d,k,this.jobDefaults,this.rejectOnDrop,this.Events,this._states,this.Promise),y.promise.then(function(j){return typeof f=="function"?f(...j):void 0}).catch(function(j){return Array.isArray(j)?typeof f=="function"?f(...j):void 0:typeof f=="function"?f(j):void 0}),this._receive(y)}schedule(...d){var f,h,y;return typeof d[0]=="function"?([y,...d]=d,h={}):[h,y,...d]=d,f=new dr(y,d,h,this.jobDefaults,this.rejectOnDrop,this.Events,this._states,this.Promise),this._receive(f),f.promise}wrap(d){var f,h;return f=this.schedule.bind(this),h=function(...y){return f(d.bind(this),...y)},h.withOptions=function(y,...k){return f(y,d,...k)},h}async updateSettings(d={}){return await this._store.__updateSettings__(re.overwrite(d,this.storeDefaults)),re.overwrite(d,this.instanceDefaults,this),this}currentReservoir(){return this._store.__currentReservoir__()}incrementReservoir(d=0){return this._store.__incrementReservoir__(d)}}return w.default=w,w.Events=lr,w.version=w.prototype.version=xl.version,w.strategy=w.prototype.strategy={LEAK:1,OVERFLOW:2,OVERFLOW_PRIORITY:4,BLOCK:3},w.BottleneckError=w.prototype.BottleneckError=_,w.Group=w.prototype.Group=Sl,w.RedisConnection=w.prototype.RedisConnection=lo,w.IORedisConnection=w.prototype.IORedisConnection=uo,w.Batcher=w.prototype.Batcher=vl,w.prototype.jobDefaults={priority:ko,weight:1,expiration:null,id:"<no-id>"},w.prototype.storeDefaults={maxConcurrent:null,minTime:0,highWater:null,strategy:w.prototype.strategy.LEAK,penalty:null,reservoir:null,reservoirRefreshInterval:null,reservoirRefreshAmount:null,reservoirIncreaseInterval:null,reservoirIncreaseAmount:null,reservoirIncreaseMaximum:null},w.prototype.localStoreDefaults={Promise,timeout:null,heartbeatInterval:250},w.prototype.redisStoreDefaults={Promise,timeout:null,heartbeatInterval:5e3,clientTimeout:1e4,Redis:null,clientOptions:{},clusterNodes:null,clearDatastore:!1,connection:null},w.prototype.instanceDefaults={datastore:"local",connection:null,id:"<no-id>",rejectOnDrop:!0,trackDoneStatus:!1,Promise},w.prototype.stopDefaults={enqueueErrorMessage:"This limiter has been stopped and cannot accept new jobs.",dropWaitingJobs:!0,dropErrorMessage:"This limiter has been stopped."},w}.call(e);var To=_o,Al=To;return Al})});import{randomUUID as xm}from"node:crypto";import{mkdir as Am}from"node:fs/promises";import{dirname as Pm}from"node:path";import{createHash as jd}from"node:crypto";import{createConnection as Id}from"node:net";import{tmpdir as Ld}from"node:os";import{dirname as Xh,join as et}from"node:path";var Ie=class extends SyntaxError{line;source;reason;constructor(t,r={}){let n=r.line===void 0||r.line===0?"":`Line ${r.line}: `;super(n+t,r.cause===void 0?void 0:{cause:r.cause}),this.name="ToonDecodeError",this.line=r.line,this.source=r.source,this.reason=t}},Ee=class extends SyntaxError{line;source;reason;constructor(t,r,n={}){super(t===0?r:`line ${t}: ${r}`,n.cause===void 0?void 0:{cause:n.cause}),this.name="ToonError",this.line=t,this.source=n.source,this.reason=r}};function E(e,t,r={}){return new Ee(e,t,r)}var Ll=/(?:^\uFEFF?|\n) *#/,mr=class{value;constructor(t){if(Ll.test(t))throw new TypeError(`Raw string must not contain a line starting with "#": ${JSON.stringify(t)}`);this.value=t}};function Se(e){return e instanceof mr}function ne(e){return E(e,"invalid quoted string")}function z(e,t){if(e==="")return"";if(e.startsWith('"'))return Go(e,t);if(e.includes('"'))throw ne(t);if(e==="true")return!0;if(e==="false")return!1;if(e==="null")return null;if(Cl(e)){let r=Number(e);return Object.is(r,-0)?0:r}return e}function Le(e,t){let r=e.trim();if(r.startsWith('"'))return[Go(r,t),!0];if(r.includes('"')||/\s/.test(r))throw E(t,"expected non-empty field name");return[r,!1]}var Oo=/["\\\u0000-\u0008\u000a-\u001f]/g;function Go(e,t){if(e.charCodeAt(0)!==34)throw ne(t);let r="",n=1;for(;n<e.length;){Oo.lastIndex=n;let o=Oo.exec(e);if(o===null)break;if(o[0]==='"'){if(e.slice(o.index+1).trim()==="")return r+e.slice(n,o.index);throw ne(t)}if(o[0]!=="\\")throw ne(t);r+=e.slice(n,o.index);let s=e[o.index+1];switch(n=o.index+2,s){case'"':r+='"';break;case"\\":r+="\\";break;case"n":r+=`
3
- `;break;case"r":r+="\r";break;case"t":r+=" ";break;case"u":{let i=e.slice(n,n+4);if(!/^[0-9a-fA-F]{4}$/.test(i))throw ne(t);let a=Number.parseInt(i,16);if(a>=55296&&a<=57343)throw ne(t);r+=String.fromCharCode(a),n+=4;break}default:throw ne(t)}}throw ne(t)}function $o(e,t,r){for(;;){let n=e.indexOf('"',t),o=e.indexOf("\\",t);if(o!==-1&&(n===-1||o<n)){if(o===e.length-1)throw ne(r);t=o+2;continue}if(n===-1)throw ne(r);return n+1}}function Qe(e,t,r){if(e==="")return[];let n=[],o=0,s=0;for(;s<e.length;){let i=e.indexOf('"',s),a=e.indexOf(t,s);if(a!==-1&&(i===-1||a<i))n.push(e.slice(o,a).trim()),o=a+1,s=a+1;else if(i!==-1)s=$o(e,i+1,r);else break}return n.push(e.slice(o).trim()),n}function Q(e,t,r){let n=0;for(;n<e.length;){let o=e.indexOf('"',n),s=e.indexOf(t,n);if(s!==-1&&(o===-1||s<o))return s;if(o===-1)return-1;n=$o(e,o+1,r)}return-1}function Cl(e){return/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$/.test(e)}function Nl(e){return/^[+-]?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$/.test(e)}function Ml(e){if(Object.is(e,-0))return"0";if(!Number.isFinite(e))throw E(0,"number is not representable in TOON");return String(e)}function ht(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"}function N(e,t){if(Se(e))return e.value;if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="number")return Ml(e);if(typeof e=="string")return Bl(e,t);throw E(0,"not a primitive")}function Fl(e){return/^[A-Za-z_][A-Za-z0-9_.]*$/.test(e)}function L(e){return Fl(e)?e:yt(e)}function Bl(e,t){return fr(e,t)?yt(e):e}function fr(e,t){return e===""||/^[ \t]|[ \t]$/.test(e)||e==="true"||e==="false"||e==="null"||Nl(e)||/[:"\\[\]{}]/.test(e)||/[\u0000-\u001f]/.test(e)||e.includes(t)||e.startsWith("-")||e.startsWith("#")}var Do=/["\\\u0000-\u001f]/g;function yt(e){return`"${jo(e)}"`}function jo(e){let t="",r=0;Do.lastIndex=0;let n;for(;(n=Do.exec(e))!==null;){let o=e.charCodeAt(n.index),s;o===34?s='\\"':o===92?s="\\\\":o===10?s="\\n":o===13?s="\\r":o===9?s="\\t":s=`\\u${o.toString(16).padStart(4,"0")}`,t+=e.slice(r,n.index)+s,r=n.index+1}return`${t}${e.slice(r)}`}function Ce(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}var Io={comma:",",tab:" ",pipe:"|"},Ul=Io.comma;var Xe=1e3,Lo=["type","kind","event"],ve="|",Co=new Set(["order","discriminator","rows","common"]);function*Mo(e,t,r,n,o,s,i){yield*Fo(r,e,n,t,{index:0},o,i,!0,s)}function*Fo(e,t,r,n,o,s,i,a,l){let u=Ho(e,t,r,n,o.index,s,i),c=0;for(;c<e;){let g=n[o.index];if(g===void 0||g.depth<s)break;if(g.depth>s)throw E(g.number,"invalid indentation");if(g.blankBefore&&i.strict)throw E(g.number,"blank line inside array");if(!bt(g.content,r,g.number))break;let b=Qe(g.content,r,g.number),_={cellIndex:0,nextIndex:o.index+1,flatWidth:_t(t),childTableFields:u};if(a&&t.length===1&&t[0].fixedLength!==void 0?yield*Uo(t[0],b,_,g.number):(yield{type:"startObject",line:g.number},yield*Bo(t,b,g,n,_,s+1,r,i),yield{type:"endObject",line:g.number}),_.cellIndex!==b.length)throw E(g.number,"array row length mismatch");o.index=_.nextIndex,c++}if(c!==e)throw Kl(n,o.index,l);let p=n[o.index];if(p!==void 0&&p.depth>=s&&bt(p.content,r,p.number))throw E(p.number,"array length mismatch")}function*Bo(e,t,r,n,o,s,i,a){for(let l=0;l<e.length;l++){let u=e[l];yield{type:"key",key:u.name,line:r.number},yield*Hl(u,e.slice(l+1),t,r,n,o,s,i,a)}}function*Hl(e,t,r,n,o,s,i,a,l){if(e.fixedLength!==void 0){yield*Uo(e,r,s,n.number);return}if(e.listDelimiter!==void 0){let c=No(r,s,n.number),p=Qe(c,e.listDelimiter,n.number);yield{type:"startArray",length:p.length,line:n.number};for(let g of p)yield{type:"primitive",value:z(g,n.number),line:n.number};yield{type:"endArray",line:n.number};return}if(e.children!==void 0){let c=_t(e.children),p=r[s.cellIndex],g=qo(p),b=r.length-s.cellIndex-1,_=o[s.nextIndex],S=_!==void 0&&_.depth===i;if(s.childTableFields?.has(e)??(g!==void 0&&(S||r.length!==s.flatWidth&&b<c+ql(t)))){if(!l.objectArrayColumns||g===void 0)throw E(n.number,"array row length mismatch");s.cellIndex++,yield{type:"startArray",length:g,line:n.number};let J={index:s.nextIndex};yield*Fo(g,e.children,a,o,J,i,l,!1,n.number),s.nextIndex=J.index,yield{type:"endArray",line:o[s.nextIndex-1]?.number??n.number};return}yield{type:"startObject",line:n.number},yield*Bo(e.children,r,n,o,s,i,a,l),yield{type:"endObject",line:n.number};return}let u=No(r,s,n.number);yield{type:"primitive",value:z(u,n.number),line:n.number}}function*Uo(e,t,r,n){let o=e.fixedLength;if(r.cellIndex+o>t.length)throw E(n,"array row length mismatch");yield{type:"startArray",length:o,line:n};for(let s of t.slice(r.cellIndex,r.cellIndex+o))yield{type:"primitive",value:z(s,n),line:n};r.cellIndex+=o,yield{type:"endArray",line:n}}function No(e,t,r){let n=e[t.cellIndex];if(n===void 0)throw E(r,"array row length mismatch");return t.cellIndex++,n}function Ho(e,t,r,n,o,s,i){let a=t.filter(u=>u.children!==void 0);if(a.length===0)return new Set;if(a.length>12)return;let l;for(let u=0;u<1<<a.length;u++){let c=new Set;a.forEach((g,b)=>{u&1<<b&&c.add(g)});let p=Wo(e,t,c,r,n,o,s,i);p!==void 0&&(l===void 0||p.consumed>l.consumed||p.consumed===l.consumed&&c.size<l.fields.size)&&(l={fields:c,consumed:p.consumed})}return l?.fields}function Wo(e,t,r,n,o,s,i,a){let l=s,u=0;try{for(let p=0;p<e;p++){let g=o[l];if(g===void 0||g.depth!==i||g.blankBefore&&a.strict||!bt(g.content,n,g.number))return;let b=Wl(t,r,Qe(g.content,n,g.number),n,o,l+1,i+1,a);if(b===void 0||o[b.nextIndex]?.depth>i)return;l=b.nextIndex,u+=b.consumed}let c=o[l];if(c!==void 0&&c.depth>=i&&bt(c.content,n,c.number))return}catch{return}return{nextIndex:l,consumed:u}}function Wl(e,t,r,n,o,s,i,a){let l=0,u=s,c=0;for(let p of e){if(p.fixedLength!==void 0)l+=p.fixedLength;else if(p.children!==void 0)if(t.has(p)){let g=qo(r[l]);if(g===void 0)return;l++;let b=Ho(g,p.children,n,o,u,i,a);if(b===void 0)return;let _=Wo(g,p.children,b,n,o,u,i,a);if(_===void 0)return;u=_.nextIndex,c+=g+_.consumed}else l+=_t(p.children);else l++;if(l>r.length)return}return l===r.length?{nextIndex:u,consumed:c}:void 0}function qo(e){return e!==void 0&&/^(0|[1-9][0-9]*)$/.test(e)?Number(e):void 0}function _t(e){return e.reduce((t,r)=>t+Ko(r),0)}function Ko(e){return e.fixedLength!==void 0?e.fixedLength:e.children!==void 0?_t(e.children):1}function ql(e){return e.reduce((t,r)=>t+(r.children===void 0?Ko(r):1),0)}function bt(e,t,r){let n=Q(e,":",r);if(n===-1)return!0;let o=Q(e,t,r);return o!==-1&&o<n}function Kl(e,t,r){return E(e[t]?.number??e[e.length-1]?.number??r,"array length mismatch")}function Vl(e){let t=0;for(;t<e.length&&e[t]===" ";)t++;return e[t]==="#"}var Rt=class{ctx;sourceByLine=new Map;number=0;blankPending=!1;firstLine=!0;constructor(t){this.ctx=t}push(t){let r=t;if(this.number++,this.sourceByLine.set(this.number,t),this.firstLine&&(r.startsWith("\uFEFF")&&(r=r.slice(1)),this.firstLine=!1),r.endsWith("\r")&&(r=r.slice(0,-1)),r=r.replace(/ +$/,""),r.trim()===""){this.blankPending=!0;return}if(Vl(r))return;let n=0,o=0,s=0;for(;n<r.length&&(r[n]===" "||r[n]===" ");){if(r[n]===" "){if(this.ctx.strict)throw E(this.number,"tab used as indentation");o++}else s++;n++}let i;if(s%this.ctx.indentSize===0)i=s/this.ctx.indentSize;else{if(this.ctx.strict)throw E(this.number,"invalid indentation");i=Math.floor(s/this.ctx.indentSize)}i+=o,ns(i,this.number,this.ctx);let a={number:this.number,depth:i,content:r.slice(n),blankBefore:this.blankPending};return this.blankPending=!1,a}};function*Jl(e,t){for(let r of e){let n=t.push(r);n!==void 0&&(yield n)}}async function*zl(e,t){for await(let r of e){let n=t.push(r);n!==void 0&&(yield n)}}var Yl=/^(0|[1-9]\d*)$/;function _r(e,t){let r=Q(e,"[",t);if(r===-1)return null;let n=Q(e,":",t);if(n!==-1&&n<r)return null;let o=e.slice(0,r);if(o!==""&&/\s$/.test(o))throw E(t,"whitespace between key and bracket segment");let s=e.indexOf("]",r);if(s===-1)return null;let i=e.slice(r+1,s),a=!1,l=",",u=i.indexOf(":");if(u!==-1){let S=i.slice(u+1);if(i=i.slice(0,u),a=!0,S===" "||S==="|")l=S;else if(S!=="")throw E(t,"malformed bracket segment")}else(i.endsWith(" ")||i.endsWith("|"))&&(l=i.slice(-1),i=i.slice(0,-1));if(!Yl.test(i))throw E(t,"malformed array header length");let c=Number(i),p=e.slice(s+1),g;if(p.startsWith("{")){let S=Jo(p,t);g=Ql(p.slice(1,S),l,t),p=p.slice(S+1)}if(a&&g===void 0)throw E(t,"keyed header requires a field list");if(!p.startsWith(":"))throw E(t,"expected colon after array header");let b=oe(p.slice(1));if((g!==void 0||a)&&b!=="")throw E(t,"unexpected content after fields-bearing header colon");return{key:o===""?void 0:Le(o,t)[0],length:c,delimiter:l,fields:g,keyed:a,inline:b===""?void 0:b}}function Jo(e,t){let r=0,n=!1;for(let o=0;o<e.length;o++){let s=e[o];if(n){s==="\\"?o++:s==='"'&&(n=!1);continue}if(s==='"')n=!0;else if(s==="{")r++;else if(s==="}"&&(r--,r===0))return o}throw E(t,"malformed tabular header fields")}function Ql(e,t,r){if(t!==","&&e.includes(",")&&(e.includes("[")||e.includes("{")))return kt(e,",",t,r);try{return kt(e,t,t,r)}catch(n){if(t===",")throw n;return kt(e,",",t,r)}}function kt(e,t,r,n){let o=[],s=0,i=0,a=0,l=!1,u=c=>{o.push(Xl(c,t,r,n))};for(let c=0;c<e.length;c++){let p=e[c];if(l){p==="\\"?c++:p==='"'&&(l=!1);continue}p==='"'?l=!0:p==="{"?i++:p==="}"?i--:p==="["?a++:p==="]"?a--:p===t&&i===0&&a===0&&(u(e.slice(s,c)),s=c+1)}return u(e.slice(s)),o}function Xl(e,t,r,n){let o=oe(e);if(o==="")throw E(n,"empty field entry in header");let s=o.startsWith('"')?Zl(o,n)+1:0,i=o.indexOf("{",s),a=o.indexOf("[",s),l=i===-1?a:a===-1?i:Math.min(i,a);if(l===-1)return{name:Le(o,n)[0]};let u=Le(o.slice(0,l),n)[0];if(l===a){let g=o.indexOf("]",a);if(g===-1||g!==o.length-1)throw E(n,"invalid array header");let b=o.slice(a+1,g),_=/^(0|[1-9]\d*)(\t|\|)?$/.exec(b);if(_!==null){if((_[2]??",")!==r)throw E(n,"invalid array header");return{name:u,fixedLength:Number(_[1])}}if(b.length!==1||b===r||/[ \t\r\n"[\]{}:]/.test(b))throw E(n,"invalid array header");return{name:u,listDelimiter:b}}let c=Jo(o.slice(i),n)+i;if(c!==o.length-1)throw E(n,"malformed tabular header fields");if(c===i+1)throw E(n,"invalid array header");let p=kt(o.slice(i+1,c),t,r,n);return{name:u,children:p}}function Zl(e,t){for(let r=1;r<e.length;r++)if(e[r]==="\\")r++;else if(e[r]==='"')return r;throw E(t,"invalid quoted string")}function kr(e){let t=0;for(let r of e)t+=r.children===void 0?1:kr(r.children);return t}function Rr(e,t,r){let n=new Set;for(let o of e){if(n.has(o.name)&&r.strict)throw E(t,"duplicate field name in header");n.add(o.name),o.children!==void 0&&Rr(o.children,t,r)}}function oe(e){let t=0,r=e.length;for(;t<r&&e[t]===" ";)t++;for(;r>t&&e[r-1]===" ";)r--;return e.slice(t,r)}function wr(e,t,r){if(oe(e)==="")return[];let n=[],o=0,s=!1;for(let i=0;i<e.length;i++){let a=e[i];if(s){a==="\\"?i++:a==='"'&&(s=!1);continue}a==='"'?s=!0:a===t&&(n.push(oe(e.slice(o,i))),o=i+1)}return n.push(oe(e.slice(o))),n}var Er=Symbol("need line"),Vo=2,hr=class{lines=[];ended=!1;previous;spanActive=0;*peek(t=0){if(t>=Vo)throw new Error(`decoder lookahead exceeds ${Vo} classified lines`);for(;!this.ended&&this.lines.length<=t;){let r=yield Er;r===void 0?this.ended=!0:this.lines.push(r)}return this.lines[t]}*take(t){let r=yield*this.peek();if(r===void 0)throw new Error("decoder attempted to read past end of input");if(this.lines.shift(),t.strict&&this.spanActive>0&&r.blankBefore)throw E(r.number,"blank line inside a header span");return this.previous=r,r}lastNumber(t){return this.previous===void 0?t:this.previous.number}stop(){this.lines.length=0,this.ended=!0}};function zo(e,t){return Q(e,":",t)!==-1}function Yo(e,t){try{return Le(e,t)[0]}catch(r){if(e.startsWith('"'))throw r;return e}}function Qo(e){let t=e?.maxDepth??Xe;return{indentSize:e?.indentSize??e?.indent??2,strict:e?.strict??!0,objectArrayColumns:e?.objectArrayColumns??!0,maxDepth:t===Number.POSITIVE_INFINITY?0:Math.max(0,Math.floor(t))}}function*Xo(e){let t=new hr,r=yield*t.peek();if(r===void 0){yield{type:"startObject",line:1},yield{type:"endObject",line:1};return}if(r.depth!==0)throw E(r.number,"invalid indentation");if(yield*t.peek(1),r.content==="[]"){yield*t.take(e),yield{type:"startArray",length:0,line:r.number},yield{type:"endArray",line:r.number},yield*gr(t,e);return}let n=null,o=!1;try{n=_r(r.content,r.number)}catch(s){if(e.strict)throw s;o=!0}if(n!=null&&wt(n.fields,r.number,e),n!=null&&!o&&n.key===void 0){yield*t.take(e),n.keyed?yield*rs(t,r,n,e):yield*Sr(t,r,n,e),yield*gr(t,e);return}if((n===null||o)&&!zo(r.content,r.number)&&(yield*t.peek(1))===void 0){yield*t.take(e),yield{type:"primitive",value:z(oe(r.content),r.number),line:r.number};return}yield*Zo(t,0,r.number,e),yield*gr(t,e)}function*gr(e,t){let r=yield*e.peek();if(r!==void 0&&t.strict)throw E(r.number,"expected end of document");e.stop()}function*Zo(e,t,r,n){yield{type:"startObject",line:r};let o=new Set;for(;;){let s=yield*e.peek();if(s===void 0||s.depth<t)break;if(s.depth>t)throw E(s.number,"over-indented line");yield*e.take(n),yield*yr(e,s,s.content,t,n,o)}yield{type:"endObject",line:e.lastNumber(r)}}function*yr(e,t,r,n,o,s){let i=null;try{i=_r(r,t.number)}catch(c){if(o.strict)throw c;i=null}if(i!=null)if(wt(i.fields,t.number,o),i.key===void 0){if(o.strict)throw E(t.number,"keyless header is only valid at the root or as a list item");i=null}else{br(s,i.key,t.number,o),yield{type:"key",key:i.key,line:t.number},i.keyed?yield*rs(e,{...t,depth:n},i,o):yield*Sr(e,{...t,depth:n},i,o);return}let a=Q(r,":",t.number);if(a===-1)throw E(t.number,"expected key-value line");let l=Yo(oe(r.slice(0,a)),t.number),u=oe(r.slice(a+1));if(br(s,l,t.number,o),yield{type:"key",key:l,line:t.number},u===""){let c=yield*e.peek();if(c!==void 0&&c.depth>n){if(c.depth!==n+1)throw E(c.number,"over-indented line");yield*Zo(e,n+1,c.number,o)}else yield{type:"startObject",line:t.number},yield{type:"endObject",line:t.number};return}if(u==="[]"){yield{type:"startArray",length:0,line:t.number},yield{type:"endArray",line:t.number};return}yield{type:"primitive",value:z(u,t.number),line:t.number}}function br(e,t,r,n){if(e.has(t)&&n.strict)throw E(r,"duplicate object key");e.add(t)}function*Sr(e,t,r,n){if(yield{type:"startArray",length:r.length,line:t.number},r.fields!==void 0){if(Rr(r.fields,t.number,n),es(r.fields,n)){if(!n.objectArrayColumns&&ts(r.fields))throw E(t.number,"invalid array header");let i=[];for(;;){let a=yield*e.peek();if(a===void 0||a.depth<=t.depth)break;i.push(yield*e.take(n))}yield*Mo(r.fields,i,r.length,r.delimiter,t.depth+1,t.number,n),yield{type:"endArray",line:e.lastNumber(t.number)};return}yield*td(e,t,r,n);return}if(r.inline!==void 0){let i=wr(r.inline,r.delimiter,t.number);Tr(i.length,r.length,t.number,"inline-form values",n);for(let a of i)yield{type:"primitive",value:z(a,t.number),line:t.number};yield{type:"endArray",line:t.number};return}let o=0;for(;;){let i=yield*e.peek();if(i===void 0||i.depth<=t.depth)break;if(i.depth!==t.depth+1)throw E(i.number,"over-indented line");if(!i.content.startsWith("- ")&&i.content!=="-")break;yield*e.take(n),o===0&&e.spanActive++,o++,yield*ed(e,i,n)}o>0&&e.spanActive--;let s=e.lastNumber(t.number);if(n.strict&&o!==r.length)throw E(s,`expected ${r.length} list items, but got ${o}`);yield{type:"endArray",line:s}}function es(e,t){return e.some(r=>r.listDelimiter!==void 0||r.fixedLength!==void 0||t.objectArrayColumns&&r.children!==void 0||r.children!==void 0&&es(r.children,t))}function ts(e){return e.some(t=>t.fixedLength!==void 0||t.children!==void 0&&ts(t.children))}function*ed(e,t,r){if(t.content==="-"){yield{type:"startObject",line:t.number},yield{type:"endObject",line:t.number};return}let n=oe(t.content.slice(2));if(n==="[]"){yield{type:"startArray",length:0,line:t.number},yield{type:"endArray",line:t.number};return}let o=null;try{o=_r(n,t.number)}catch(s){if(r.strict)throw s;o=null}if(o!=null&&o.key===void 0){if(wt(o.fields,t.number,r),o.keyed||o.fields!==void 0){if(r.strict)throw E(t.number,"keyless fields-bearing header is only valid at the root");yield{type:"primitive",value:z(n,t.number),line:t.number};return}yield*Sr(e,t,o,r);return}if(o!=null&&o.key!==void 0||zo(n,t.number)){yield{type:"startObject",line:t.number};let s=new Set;for(yield*yr(e,t,n,t.depth+1,r,s);;){let i=yield*e.peek();if(i===void 0||i.depth!==t.depth+1||i.content.startsWith("- ")||i.content==="-")break;yield*e.take(r),yield*yr(e,i,i.content,t.depth+1,r,s)}yield{type:"endObject",line:e.lastNumber(t.number)};return}yield{type:"primitive",value:z(n,t.number),line:t.number}}function*td(e,t,r,n){let o=r.fields,s=kr(o),i=t.depth+1,a=0;for(;;){let u=yield*e.peek();if(u===void 0||u.depth<=t.depth)break;if(u.depth!==i)throw E(u.number,"over-indented line");if(!rd(u.content,r.delimiter,u.number))break;yield*e.take(n),a===0&&e.spanActive++,a++;let c=wr(u.content,r.delimiter,u.number);Tr(c.length,s,u.number,"row cells",n),yield*vr(o,c,{next:0},u.number)}a>0&&e.spanActive--;let l=e.lastNumber(t.number);if(n.strict&&a!==r.length)throw E(l,`expected ${r.length} tabular rows, but got ${a}`);yield{type:"endArray",line:l}}function rd(e,t,r){let n=Q(e,":",r);if(n===-1)return!0;let o=Q(e,t,r);return o===-1?!1:o<n}function*vr(e,t,r,n){yield{type:"startObject",line:n};for(let o of e)if(yield{type:"key",key:o.name,line:n},o.children===void 0){let s=t[r.next++]??"";yield{type:"primitive",value:z(s,n),line:n}}else yield*vr(o.children,t,r,n);yield{type:"endObject",line:n}}function*rs(e,t,r,n){let o=r.fields;Rr(o,t.number,n);let s=kr(o),i=t.depth+1;yield{type:"startObject",line:t.number};let a=new Set,l=0;for(;;){let c=yield*e.peek();if(c===void 0||c.depth<=t.depth)break;if(c.depth!==i)throw E(c.number,"over-indented line");let p=Q(c.content,":",c.number);if(p===-1){if(n.strict)throw E(c.number,"expected a keyed entry row");yield*e.take(n);continue}yield*e.take(n),l===0&&e.spanActive++,l++;let g=Yo(oe(c.content.slice(0,p)),c.number);br(a,g,c.number,n),yield{type:"key",key:g,line:c.number};let b=wr(c.content.slice(p+1),r.delimiter,c.number);Tr(b.length,s,c.number,"entry row cells",n),yield*vr(o,b,{next:0},c.number)}l>0&&e.spanActive--;let u=e.lastNumber(t.number);if(n.strict&&l!==r.length)throw E(u,`expected ${r.length} entry rows, but got ${l}`);yield{type:"endObject",line:u}}function Tr(e,t,r,n,o){if(o.strict&&e!==t)throw E(r,`expected ${t} ${n}, but got ${e}`)}function ns(e,t,r){if(r.maxDepth!==0&&e>r.maxDepth)throw E(t,`maximum nesting depth exceeded (maxDepth ${r.maxDepth})`)}function wt(e,t,r,n=1){if(e!==void 0){ns(n,t,r);for(let o of e)o.children!==void 0&&wt(o.children,t,r,n+1)}}function*os(e,t){let r=Qo(t),n=new Rt(r),o=Jl(e,n),s=Xo(r),i=s.next();try{for(;!i.done;)if(i.value===Er){let a=o.next();i=s.next(a.done?void 0:a.value)}else yield i.value,i=s.next()}catch(a){throw is(a,n)}finally{s.return(),o.return(void 0)}}async function*ss(e,t){let r=Qo(t),n=new Rt(r),o=zl(e,n),s=Xo(r),i=s.next();try{for(;!i.done;)if(i.value===Er){let a=await o.next();i=s.next(a.done?void 0:a.value)}else yield i.value,i=s.next()}catch(a){throw is(a,n)}finally{s.return(),await o.return(void 0)}}function is(e,t){return!(e instanceof Ee)||e.source!==void 0?e:new Ie(e.reason,{line:e.line,source:t.sourceByLine.get(e.line),cause:e})}function xr(e,t){return Symbol.asyncIterator in e?ss(e,t):os(e,t)}var nd=/[\uD800-\uDFFF]/;function q(e){if(e===null)return null;if(Se(e))return e;if(typeof e=="object"&&e!==null&&"toJSON"in e&&typeof e.toJSON=="function"){let t=e.toJSON();if(t!==e)return q(t)}if(typeof e=="string")return as(e,"string value"),e;if(typeof e=="boolean")return e;if(typeof e=="number")return Object.is(e,-0)?0:Number.isFinite(e)?e:null;if(typeof e=="bigint")return e>=Number.MIN_SAFE_INTEGER&&e<=Number.MAX_SAFE_INTEGER?Number(e):e.toString();if(e instanceof Date)return e.toISOString();if(Array.isArray(e))return e.map(q);if(e instanceof Set)return Array.from(e,q);if(e instanceof Map){let t={};for(let[r,n]of e)Ne(t,String(r),q(n));return t}if(P(e)){let t={};for(let r of Object.keys(e))as(r,"object key"),Ne(t,r,q(e[r]));return t}return null}function as(e,t){if(nd.test(e))for(let r=0;r<e.length;r+=1){let n=e.charCodeAt(r);if(n<55296||n>57343)continue;let o=e.charCodeAt(r+1);if(n<=56319&&o>=56320&&o<=57343){r+=1;continue}throw new TypeError(`Cannot encode ${t} containing an unpaired surrogate U+${n.toString(16).toUpperCase()} at index ${r}`)}}function P(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function Y(e){return e===null||Se(e)||["string","number","boolean"].includes(typeof e)}function Ne(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function us(e){if(!P(e)||Object.keys(e).length===0)return e;let t={};for(let[r,n]of Object.entries(e)){let o=od(n,1);if(o===void 0)return e;Ce(t,r,o)}return t}function od(e,t){if(!P(e)||!sd(e))return;let{order:r,discriminator:n,rows:o}=e;if(typeof r!="string"||typeof n!="string"||!Number.isSafeInteger(o)||o<0)throw I(t);let s=id(r,o,t),i=e.common,a=i===void 0?Array.from({length:o},()=>({})):i;if(!Array.isArray(a)||a.length!==o||!a.every(P))throw cs(t);let l=new Map;for(let[p,g]of Object.entries(e))if(!Co.has(p)){if(!Array.isArray(g)||!g.every(P))throw I(t);l.set(p,g)}if(l.size===0)throw I(t);let u=new Map,c=s.map((p,g)=>{let b=l.get(p);if(b===void 0)throw Ar(t);let _=u.get(p)??0,S=b[_];if(S===void 0)throw Ar(t);return u.set(p,_+1),ad(n,p,a[g],S,t)});for(let[p,g]of l)if((u.get(p)??0)!==g.length)throw Ar(t);return c}function sd(e){return Object.prototype.hasOwnProperty.call(e,"order")||Object.prototype.hasOwnProperty.call(e,"discriminator")||Object.prototype.hasOwnProperty.call(e,"rows")}function id(e,t,r){if(!e.startsWith("cycle("))throw I(r);let n=e.slice(6),o=n.indexOf(")*");if(o===-1)throw I(r);let s=n.slice(0,o),i=n.slice(o+2);if(s===""||i.includes("+tail("))throw I(r);let a=s.split(",").map(c=>cd(c,r));if(a.some(c=>c===""))throw I(r);let l=ud(i,r),u=a.length*l;if(!Number.isSafeInteger(u))throw I(r);if(u!==t)throw cs(r);return Array.from({length:u},(c,p)=>a[p%a.length])}function ad(e,t,r,n,o){let s={};Ce(s,e,t);for(let[i,a]of Object.entries(r??{})){if(i===e||Object.prototype.hasOwnProperty.call(s,i))throw I(o);Ce(s,i,a)}for(let[i,a]of Object.entries(ld(n,o))){if(i===e||Object.prototype.hasOwnProperty.call(s,i))throw I(o);Ce(s,i,a)}return s}function ld(e,t){let r={};for(let[n,o]of Object.entries(e))dd(r,n.split("."),o,t);return Et(r,t)}function dd(e,t,r,n){if(t.some(s=>s===""))throw I(n);let o=e;for(let s=0;s<t.length;s+=1){let i=t[s];if(s===t.length-1){o[i]=r;return}if(o[i]??={},o=o[i],!P(o))throw I(n)}}function Et(e,t){return Array.isArray(e)?e.map(r=>Et(r,t)):P(e)?Number.isSafeInteger(e.length)&&e.length>=0?Array.from({length:e.length},(r,n)=>{if(!Object.prototype.hasOwnProperty.call(e,String(n)))throw I(t);return Et(e[String(n)],t)}):Object.fromEntries(Object.entries(e).map(([r,n])=>[r,Et(n,t)])):e}function ud(e,t){if(e===""||e.length>1&&e.startsWith("0")||!/^[0-9]+$/.test(e))throw I(t);let r=Number(e);if(!Number.isSafeInteger(r))throw I(t);return r}function cd(e,t){try{return decodeURIComponent(e)}catch{throw I(t)}}function ls(e){return encodeURIComponent(e)}function I(e){return E(e,"invalid cyclic array wire")}function cs(e){return E(e,"cyclic array length mismatch")}function Ar(e){return E(e,"cyclic array group length mismatch")}function ps(e){if(!P(e))return;let t=Object.entries(e);if(t.length===0)return;let r=[];for(let[o,s]of t){let i=pd(s);if(i===void 0)return;r.push([o,i])}let n=[];for(let[o,s]of r)hd(n,o,s);return n.join("")}function pd(e){if(!Array.isArray(e)||e.length===0||!e.every(P))return;let t=md(e);if(t===void 0)return;let r=e.map(a=>a[t]),n=fd(r);if(n===void 0)return;let o=gd(e,t),s=new Map;for(let a of e){let l=a[t];s.has(l)||s.set(l,[]);let u={};for(let[c,p]of Object.entries(a))if(c!==t&&!o.includes(c)&&!Pr(p,c,u))return;s.get(l).push(u)}let i=[];for(let a of n.cycle){let l=s.get(a),u=bd(l);if(u===void 0||u.length===0)return;i.push({fields:u,label:a,rows:l})}return{common:o,commonRows:e.map(a=>Object.fromEntries(o.map(l=>[l,a[l]]))),discriminator:t,groups:i,order:n,rows:e}}function md(e){return Lo.find(t=>e.every(r=>typeof r[t]=="string"))}function fd(e){if(!(e.length<12))for(let t=2;t<=Math.min(8,Math.floor(e.length/3));t+=1){if(e.length%t!==0)continue;let r=e.slice(0,t);if(new Set(r).size<2||!e.every((i,a)=>i===r[a%t]))continue;let n=e.length/t;if(n<3)continue;let o=e.map(ls).join(","),s=`cycle(${r.map(ls).join(",")})*${n}`;if(s.length<=o.length*.4)return{cycle:r,encoded:s,repeats:n}}}function gd(e,t){let r=[],n=Object.keys(e[0]),o=n.indexOf(t)+1;for(let s of n.slice(o).filter(i=>i!==t)){if(!yd(s)||!e.every(i=>Object.prototype.hasOwnProperty.call(i,s))||!e.every(i=>ht(i[s])))break;r.push(s)}return r}function hd(e,t,r){e.push(L(t),`:
4
- `),e.push(" order: ",N(r.order.encoded,ve),`
5
- `),e.push(" discriminator: ",N(r.discriminator,ve),`
2
+ var zl=Object.create;var Co=Object.defineProperty;var Yl=Object.getOwnPropertyDescriptor;var Ql=Object.getOwnPropertyNames;var Xl=Object.getPrototypeOf,Zl=Object.prototype.hasOwnProperty;var No=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var ed=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Ql(t))!Zl.call(e,o)&&o!==r&&Co(e,o,{get:()=>t[o],enumerable:!(n=Yl(t,o))||n.enumerable});return e};var br=(e,t,r)=>(r=e!=null?zl(Xl(e)):{},ed(t||!e||!e.__esModule?Co(r,"default",{value:e,enumerable:!0}):r,e));var Oi=No(Lt=>{"use strict";Object.defineProperty(Lt,"__esModule",{value:!0});Lt.format=Ic;Lt.parse=Lc;var Gc=/^[\u0009\u0020-\u007e\u0080-\u00ff]*$/,vi=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,$c=/[\\"]/g,jc=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,Ti=(()=>{let e=function(){};return e.prototype=Object.create(null),e})();function Ic(e){let{type:t,parameters:r}=e;if(!t||!jc.test(t))throw new TypeError(`Invalid type: ${t}`);let n=t;if(r)for(let o of Object.keys(r)){if(!vi.test(o))throw new TypeError(`Invalid parameter name: ${o}`);n+=`; ${o}=${Fc(r[o])}`}return n}function Lc(e,t){let r=e.length,n=an(e,0,r),o=n;n=sn(e,n,r);let s=ln(e,o,n),i=e.slice(o,s).toLowerCase(),a=t?.parameters===!1?new Ti:Mc(e,n,r);return{type:i,parameters:a}}var xi=32,Ai=9,Pi=59,Cc=61,Si=34,Nc=92;function Mc(e,t,r){let n=new Ti;e:for(;t<r;){t=an(e,t+1,r);let o=t;for(;t<r;){let s=e.charCodeAt(t);if(s===Pi)continue e;if(s===Cc){let i=ln(e,o,t),a=e.slice(o,i).toLowerCase();if(t=an(e,t+1,r),t<r&&e.charCodeAt(t)===Si){t++;let u="";for(;t<r;){let c=e.charCodeAt(t++);if(c===Si){t=sn(e,t,r),n[a]===void 0&&(n[a]=u);break}if(c===Nc&&t<r){u+=e[t++];continue}u+=String.fromCharCode(c)}continue e}let l=t;if(t=sn(e,t,r),n[a]===void 0){let u=ln(e,l,t);n[a]=e.slice(l,u)}continue e}t++}}return n}function sn(e,t,r){for(;t<r&&e.charCodeAt(t)!==Pi;)t++;return t}function an(e,t,r){for(;t<r;){let n=e.charCodeAt(t);if(n!==xi&&n!==Ai)break;t++}return t}function ln(e,t,r){for(;r>t;){let n=e.charCodeAt(r-1);if(n!==xi&&n!==Ai)break;r--}return r}function Fc(e){if(vi.test(e))return e;if(Gc.test(e))return`"${e.replace($c,"\\$&")}"`;throw new TypeError(`Invalid parameter value: ${e}`)}});var hn=No((fn,gn)=>{(function(e,t){typeof fn=="object"&&typeof gn<"u"?gn.exports=t():typeof define=="function"&&define.amd?define(t):e.Bottleneck=t()})(fn,function(){"use strict";var e=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function t(w){return w&&w.default||w}var r=function(w,f,d={}){var g,h,y;for(g in f)y=f[g],d[g]=(h=w[g])!=null?h:y;return d},n=function(w,f,d={}){var g,h;for(g in w)h=w[g],f[g]!==void 0&&(d[g]=h);return d},o={load:r,overwrite:n},s;s=class{constructor(f,d){this.incr=f,this.decr=d,this._first=null,this._last=null,this.length=0}push(f){var d;this.length++,typeof this.incr=="function"&&this.incr(),d={value:f,prev:this._last,next:null},this._last!=null?(this._last.next=d,this._last=d):this._first=this._last=d}shift(){var f;if(this._first!=null)return this.length--,typeof this.decr=="function"&&this.decr(),f=this._first.value,(this._first=this._first.next)!=null?this._first.prev=null:this._last=null,f}first(){if(this._first!=null)return this._first.value}getArray(){var f,d,g;for(f=this._first,g=[];f!=null;)g.push((d=f,f=f.next,d.value));return g}forEachShift(f){var d;for(d=this.shift();d!=null;)f(d),d=this.shift()}debug(){var f,d,g,h,y;for(f=this._first,y=[];f!=null;)y.push((d=f,f=f.next,{value:d.value,prev:(g=d.prev)!=null?g.value:void 0,next:(h=d.next)!=null?h.value:void 0}));return y}};var i=s,a;a=class{constructor(f){if(this.instance=f,this._events={},this.instance.on!=null||this.instance.once!=null||this.instance.removeAllListeners!=null)throw new Error("An Emitter already exists for this object");this.instance.on=(d,g)=>this._addListener(d,"many",g),this.instance.once=(d,g)=>this._addListener(d,"once",g),this.instance.removeAllListeners=(d=null)=>d!=null?delete this._events[d]:this._events={}}_addListener(f,d,g){var h;return(h=this._events)[f]==null&&(h[f]=[]),this._events[f].push({cb:g,status:d}),this.instance}listenerCount(f){return this._events[f]!=null?this._events[f].length:0}async trigger(f,...d){var g,h;try{return f!=="debug"&&this.trigger("debug",`Event triggered: ${f}`,d),this._events[f]==null?void 0:(this._events[f]=this._events[f].filter(function(y){return y.status!=="none"}),h=this._events[f].map(async y=>{var k,R;if(y.status!=="none"){y.status==="once"&&(y.status="none");try{return R=typeof y.cb=="function"?y.cb(...d):void 0,typeof R?.then=="function"?await R:R}catch(x){return k=x,this.trigger("error",k),null}}}),(await Promise.all(h)).find(function(y){return y!=null}))}catch(y){return g=y,this.trigger("error",g),null}}};var l=a,u,c,p;u=i,c=l,p=class{constructor(f){var d;this.Events=new c(this),this._length=0,this._lists=function(){var g,h,y;for(y=[],d=g=1,h=f;1<=h?g<=h:g>=h;d=1<=h?++g:--g)y.push(new u(()=>this.incr(),()=>this.decr()));return y}.call(this)}incr(){if(this._length++===0)return this.Events.trigger("leftzero")}decr(){if(--this._length===0)return this.Events.trigger("zero")}push(f){return this._lists[f.options.priority].push(f)}queued(f){return f!=null?this._lists[f].length:this._length}shiftAll(f){return this._lists.forEach(function(d){return d.forEachShift(f)})}getFirst(f=this._lists){var d,g,h;for(d=0,g=f.length;d<g;d++)if(h=f[d],h.length>0)return h;return[]}shiftLastFrom(f){return this.getFirst(this._lists.slice(f).reverse()).shift()}};var m=p,b;b=class extends Error{};var _=b,S,v,T,C,ge;C=10,v=5,ge=o,S=_,T=class{constructor(f,d,g,h,y,k,R,x){this.task=f,this.args=d,this.rejectOnDrop=y,this.Events=k,this._states=R,this.Promise=x,this.options=ge.load(g,h),this.options.priority=this._sanitizePriority(this.options.priority),this.options.id===h.id&&(this.options.id=`${this.options.id}-${this._randomIndex()}`),this.promise=new this.Promise((j,I)=>{this._resolve=j,this._reject=I}),this.retryCount=0}_sanitizePriority(f){var d;return d=~~f!==f?v:f,d<0?0:d>C-1?C-1:d}_randomIndex(){return Math.random().toString(36).slice(2)}doDrop({error:f,message:d="This job has been dropped by Bottleneck"}={}){return this._states.remove(this.options.id)?(this.rejectOnDrop&&this._reject(f??new S(d)),this.Events.trigger("dropped",{args:this.args,options:this.options,task:this.task,promise:this.promise}),!0):!1}_assertStatus(f){var d;if(d=this._states.jobStatus(this.options.id),!(d===f||f==="DONE"&&d===null))throw new S(`Invalid job status ${d}, expected ${f}. Please open an issue at https://github.com/SGrondin/bottleneck/issues`)}doReceive(){return this._states.start(this.options.id),this.Events.trigger("received",{args:this.args,options:this.options})}doQueue(f,d){return this._assertStatus("RECEIVED"),this._states.next(this.options.id),this.Events.trigger("queued",{args:this.args,options:this.options,reachedHWM:f,blocked:d})}doRun(){return this.retryCount===0?(this._assertStatus("QUEUED"),this._states.next(this.options.id)):this._assertStatus("EXECUTING"),this.Events.trigger("scheduled",{args:this.args,options:this.options})}async doExecute(f,d,g,h){var y,k,R;this.retryCount===0?(this._assertStatus("RUNNING"),this._states.next(this.options.id)):this._assertStatus("EXECUTING"),k={args:this.args,options:this.options,retryCount:this.retryCount},this.Events.trigger("executing",k);try{if(R=await(f!=null?f.schedule(this.options,this.task,...this.args):this.task(...this.args)),d())return this.doDone(k),await h(this.options,k),this._assertStatus("DONE"),this._resolve(R)}catch(x){return y=x,this._onFailure(y,k,d,g,h)}}doExpire(f,d,g){var h,y;return this._states.jobStatus(this.options.id==="RUNNING")&&this._states.next(this.options.id),this._assertStatus("EXECUTING"),y={args:this.args,options:this.options,retryCount:this.retryCount},h=new S(`This job timed out after ${this.options.expiration} ms.`),this._onFailure(h,y,f,d,g)}async _onFailure(f,d,g,h,y){var k,R;if(g())return k=await this.Events.trigger("failed",f,d),k!=null?(R=~~k,this.Events.trigger("retry",`Retrying ${this.options.id} after ${R} ms`,d),this.retryCount++,h(R)):(this.doDone(d),await y(this.options,d),this._assertStatus("DONE"),this._reject(f))}doDone(f){return this._assertStatus("EXECUTING"),this._states.next(this.options.id),this.Events.trigger("done",f)}};var D=T,Te,he,ne;ne=o,Te=_,he=class{constructor(f,d,g){this.instance=f,this.storeOptions=d,this.clientId=this.instance._randomIndex(),ne.load(g,g,this),this._nextRequest=this._lastReservoirRefresh=this._lastReservoirIncrease=Date.now(),this._running=0,this._done=0,this._unblockTime=0,this.ready=this.Promise.resolve(),this.clients={},this._startHeartbeat()}_startHeartbeat(){var f;return this.heartbeat==null&&(this.storeOptions.reservoirRefreshInterval!=null&&this.storeOptions.reservoirRefreshAmount!=null||this.storeOptions.reservoirIncreaseInterval!=null&&this.storeOptions.reservoirIncreaseAmount!=null)?typeof(f=this.heartbeat=setInterval(()=>{var d,g,h,y,k;if(y=Date.now(),this.storeOptions.reservoirRefreshInterval!=null&&y>=this._lastReservoirRefresh+this.storeOptions.reservoirRefreshInterval&&(this._lastReservoirRefresh=y,this.storeOptions.reservoir=this.storeOptions.reservoirRefreshAmount,this.instance._drainAll(this.computeCapacity())),this.storeOptions.reservoirIncreaseInterval!=null&&y>=this._lastReservoirIncrease+this.storeOptions.reservoirIncreaseInterval&&({reservoirIncreaseAmount:d,reservoirIncreaseMaximum:h,reservoir:k}=this.storeOptions,this._lastReservoirIncrease=y,g=h!=null?Math.min(d,h-k):d,g>0))return this.storeOptions.reservoir+=g,this.instance._drainAll(this.computeCapacity())},this.heartbeatInterval)).unref=="function"?f.unref():void 0:clearInterval(this.heartbeat)}async __publish__(f){return await this.yieldLoop(),this.instance.Events.trigger("message",f.toString())}async __disconnect__(f){return await this.yieldLoop(),clearInterval(this.heartbeat),this.Promise.resolve()}yieldLoop(f=0){return new this.Promise(function(d,g){return setTimeout(d,f)})}computePenalty(){var f;return(f=this.storeOptions.penalty)!=null?f:15*this.storeOptions.minTime||5e3}async __updateSettings__(f){return await this.yieldLoop(),ne.overwrite(f,f,this.storeOptions),this._startHeartbeat(),this.instance._drainAll(this.computeCapacity()),!0}async __running__(){return await this.yieldLoop(),this._running}async __queued__(){return await this.yieldLoop(),this.instance.queued()}async __done__(){return await this.yieldLoop(),this._done}async __groupCheck__(f){return await this.yieldLoop(),this._nextRequest+this.timeout<f}computeCapacity(){var f,d;return{maxConcurrent:f,reservoir:d}=this.storeOptions,f!=null&&d!=null?Math.min(f-this._running,d):f!=null?f-this._running:d??null}conditionsCheck(f){var d;return d=this.computeCapacity(),d==null||f<=d}async __incrementReservoir__(f){var d;return await this.yieldLoop(),d=this.storeOptions.reservoir+=f,this.instance._drainAll(this.computeCapacity()),d}async __currentReservoir__(){return await this.yieldLoop(),this.storeOptions.reservoir}isBlocked(f){return this._unblockTime>=f}check(f,d){return this.conditionsCheck(f)&&this._nextRequest-d<=0}async __check__(f){var d;return await this.yieldLoop(),d=Date.now(),this.check(f,d)}async __register__(f,d,g){var h,y;return await this.yieldLoop(),h=Date.now(),this.conditionsCheck(d)?(this._running+=d,this.storeOptions.reservoir!=null&&(this.storeOptions.reservoir-=d),y=Math.max(this._nextRequest-h,0),this._nextRequest=h+y+this.storeOptions.minTime,{success:!0,wait:y,reservoir:this.storeOptions.reservoir}):{success:!1}}strategyIsBlock(){return this.storeOptions.strategy===3}async __submit__(f,d){var g,h,y;if(await this.yieldLoop(),this.storeOptions.maxConcurrent!=null&&d>this.storeOptions.maxConcurrent)throw new Te(`Impossible to add a job having a weight of ${d} to a limiter having a maxConcurrent setting of ${this.storeOptions.maxConcurrent}`);return h=Date.now(),y=this.storeOptions.highWater!=null&&f===this.storeOptions.highWater&&!this.check(d,h),g=this.strategyIsBlock()&&(y||this.isBlocked(h)),g&&(this._unblockTime=h+this.computePenalty(),this._nextRequest=this._unblockTime+this.storeOptions.minTime,this.instance._dropAllQueued()),{reachedHWM:y,blocked:g,strategy:this.storeOptions.strategy}}async __free__(f,d){return await this.yieldLoop(),this._running-=d,this._done+=d,this.instance._drainAll(this.computeCapacity()),{running:this._running}}};var Ze=he,mr,fo;mr=_,fo=class{constructor(f){this.status=f,this._jobs={},this.counts=this.status.map(function(){return 0})}next(f){var d,g;if(d=this._jobs[f],g=d+1,d!=null&&g<this.status.length)return this.counts[d]--,this.counts[g]++,this._jobs[f]++;if(d!=null)return this.counts[d]--,delete this._jobs[f]}start(f){var d;return d=0,this._jobs[f]=d,this.counts[d]++}remove(f){var d;return d=this._jobs[f],d!=null&&(this.counts[d]--,delete this._jobs[f]),d!=null}jobStatus(f){var d;return(d=this.status[this._jobs[f]])!=null?d:null}statusJobs(f){var d,g,h,y,k;if(f!=null){if(g=this.status.indexOf(f),g<0)throw new mr(`status must be one of ${this.status.join(", ")}`);h=this._jobs,y=[];for(d in h)k=h[d],k===g&&y.push(d);return y}else return Object.keys(this._jobs)}statusCounts(){return this.counts.reduce((f,d,g)=>(f[this.status[g]]=d,f),{})}};var Nl=fo,go,ho;go=i,ho=class{constructor(f,d){this.schedule=this.schedule.bind(this),this.name=f,this.Promise=d,this._running=0,this._queue=new go}isEmpty(){return this._queue.length===0}async _tryToRun(){var f,d,g,h,y,k,R;if(this._running<1&&this._queue.length>0)return this._running++,{task:R,args:f,resolve:y,reject:h}=this._queue.shift(),d=await async function(){try{return k=await R(...f),function(){return y(k)}}catch(x){return g=x,function(){return h(g)}}}(),this._running--,this._tryToRun(),d()}schedule(f,...d){var g,h,y;return y=h=null,g=new this.Promise(function(k,R){return y=k,h=R}),this._queue.push({task:f,args:d,resolve:y,reject:h}),this._tryToRun(),g}};var Ml=ho,yo="2.19.5",Fl={version:yo},Bl=Object.freeze({version:yo,default:Fl}),bo=()=>console.log("You must import the full version of Bottleneck in order to use this feature."),_o=()=>console.log("You must import the full version of Bottleneck in order to use this feature."),Ul=()=>console.log("You must import the full version of Bottleneck in order to use this feature."),ko,Ro,wo,Eo,So,Rt;Rt=o,ko=l,Eo=bo,wo=_o,So=Ul,Ro=function(){class w{constructor(d={}){this.deleteKey=this.deleteKey.bind(this),this.limiterOptions=d,Rt.load(this.limiterOptions,this.defaults,this),this.Events=new ko(this),this.instances={},this.Bottleneck=Io,this._startAutoCleanup(),this.sharedConnection=this.connection!=null,this.connection==null&&(this.limiterOptions.datastore==="redis"?this.connection=new Eo(Object.assign({},this.limiterOptions,{Events:this.Events})):this.limiterOptions.datastore==="ioredis"&&(this.connection=new wo(Object.assign({},this.limiterOptions,{Events:this.Events}))))}key(d=""){var g;return(g=this.instances[d])!=null?g:(()=>{var h;return h=this.instances[d]=new this.Bottleneck(Object.assign(this.limiterOptions,{id:`${this.id}-${d}`,timeout:this.timeout,connection:this.connection})),this.Events.trigger("created",h,d),h})()}async deleteKey(d=""){var g,h;return h=this.instances[d],this.connection&&(g=await this.connection.__runCommand__(["del",...So.allKeys(`${this.id}-${d}`)])),h!=null&&(delete this.instances[d],await h.disconnect()),h!=null||g>0}limiters(){var d,g,h,y;g=this.instances,h=[];for(d in g)y=g[d],h.push({key:d,limiter:y});return h}keys(){return Object.keys(this.instances)}async clusterKeys(){var d,g,h,y,k,R,x,j,I;if(this.connection==null)return this.Promise.resolve(this.keys());for(R=[],d=null,I=`b_${this.id}-`.length,g=9;d!==0;)for([j,h]=await this.connection.__runCommand__(["scan",d??0,"match",`b_${this.id}-*_settings`,"count",1e4]),d=~~j,y=0,x=h.length;y<x;y++)k=h[y],R.push(k.slice(I,-g));return R}_startAutoCleanup(){var d;return clearInterval(this.interval),typeof(d=this.interval=setInterval(async()=>{var g,h,y,k,R,x;R=Date.now(),y=this.instances,k=[];for(h in y){x=y[h];try{await x._store.__groupCheck__(R)?k.push(this.deleteKey(h)):k.push(void 0)}catch(j){g=j,k.push(x.Events.trigger("error",g))}}return k},this.timeout/2)).unref=="function"?d.unref():void 0}updateSettings(d={}){if(Rt.overwrite(d,this.defaults,this),Rt.overwrite(d,d,this.limiterOptions),d.timeout!=null)return this._startAutoCleanup()}disconnect(d=!0){var g;if(!this.sharedConnection)return(g=this.connection)!=null?g.disconnect(d):void 0}}return w.prototype.defaults={timeout:1e3*60*5,connection:null,Promise,id:"group-key"},w}.call(e);var Hl=Ro,vo,To,xo;xo=o,To=l,vo=function(){class w{constructor(d={}){this.options=d,xo.load(this.options,this.defaults,this),this.Events=new To(this),this._arr=[],this._resetPromise(),this._lastFlush=Date.now()}_resetPromise(){return this._promise=new this.Promise((d,g)=>this._resolve=d)}_flush(){return clearTimeout(this._timeout),this._lastFlush=Date.now(),this._resolve(),this.Events.trigger("batch",this._arr),this._arr=[],this._resetPromise()}add(d){var g;return this._arr.push(d),g=this._promise,this._arr.length===this.maxSize?this._flush():this.maxTime!=null&&this._arr.length===1&&(this._timeout=setTimeout(()=>this._flush(),this.maxTime)),g}}return w.prototype.defaults={maxTime:null,maxSize:null,Promise},w}.call(e);var Wl=vo,ql=()=>console.log("You must import the full version of Bottleneck in order to use this feature."),Kl=t(Bl),Ao,Po,fr,gr,Oo,hr,Do,Go,$o,yr,oe,jo=[].splice;hr=10,Po=5,oe=o,Do=m,gr=D,Oo=Ze,Go=ql,fr=l,$o=Nl,yr=Ml,Ao=function(){class w{constructor(d={},...g){var h,y;this._addToQueue=this._addToQueue.bind(this),this._validateOptions(d,g),oe.load(d,this.instanceDefaults,this),this._queues=new Do(hr),this._scheduled={},this._states=new $o(["RECEIVED","QUEUED","RUNNING","EXECUTING"].concat(this.trackDoneStatus?["DONE"]:[])),this._limiter=null,this.Events=new fr(this),this._submitLock=new yr("submit",this.Promise),this._registerLock=new yr("register",this.Promise),y=oe.load(d,this.storeDefaults,{}),this._store=function(){if(this.datastore==="redis"||this.datastore==="ioredis"||this.connection!=null)return h=oe.load(d,this.redisStoreDefaults,{}),new Go(this,y,h);if(this.datastore==="local")return h=oe.load(d,this.localStoreDefaults,{}),new Oo(this,y,h);throw new w.prototype.BottleneckError(`Invalid datastore type: ${this.datastore}`)}.call(this),this._queues.on("leftzero",()=>{var k;return(k=this._store.heartbeat)!=null&&typeof k.ref=="function"?k.ref():void 0}),this._queues.on("zero",()=>{var k;return(k=this._store.heartbeat)!=null&&typeof k.unref=="function"?k.unref():void 0})}_validateOptions(d,g){if(!(d!=null&&typeof d=="object"&&g.length===0))throw new w.prototype.BottleneckError("Bottleneck v2 takes a single object argument. Refer to https://github.com/SGrondin/bottleneck#upgrading-to-v2 if you're upgrading from Bottleneck v1.")}ready(){return this._store.ready}clients(){return this._store.clients}channel(){return`b_${this.id}`}channel_client(){return`b_${this.id}_${this._store.clientId}`}publish(d){return this._store.__publish__(d)}disconnect(d=!0){return this._store.__disconnect__(d)}chain(d){return this._limiter=d,this}queued(d){return this._queues.queued(d)}clusterQueued(){return this._store.__queued__()}empty(){return this.queued()===0&&this._submitLock.isEmpty()}running(){return this._store.__running__()}done(){return this._store.__done__()}jobStatus(d){return this._states.jobStatus(d)}jobs(d){return this._states.statusJobs(d)}counts(){return this._states.statusCounts()}_randomIndex(){return Math.random().toString(36).slice(2)}check(d=1){return this._store.__check__(d)}_clearGlobalState(d){return this._scheduled[d]!=null?(clearTimeout(this._scheduled[d].expiration),delete this._scheduled[d],!0):!1}async _free(d,g,h,y){var k,R;try{if({running:R}=await this._store.__free__(d,h.weight),this.Events.trigger("debug",`Freed ${h.id}`,y),R===0&&this.empty())return this.Events.trigger("idle")}catch(x){return k=x,this.Events.trigger("error",k)}}_run(d,g,h){var y,k,R;return g.doRun(),y=this._clearGlobalState.bind(this,d),R=this._run.bind(this,d,g),k=this._free.bind(this,d,g),this._scheduled[d]={timeout:setTimeout(()=>g.doExecute(this._limiter,y,R,k),h),expiration:g.options.expiration!=null?setTimeout(function(){return g.doExpire(y,R,k)},h+g.options.expiration):void 0,job:g}}_drainOne(d){return this._registerLock.schedule(()=>{var g,h,y,k,R;return this.queued()===0?this.Promise.resolve(null):(R=this._queues.getFirst(),{options:k,args:g}=y=R.first(),d!=null&&k.weight>d?this.Promise.resolve(null):(this.Events.trigger("debug",`Draining ${k.id}`,{args:g,options:k}),h=this._randomIndex(),this._store.__register__(h,k.weight,k.expiration).then(({success:x,wait:j,reservoir:I})=>{var et;return this.Events.trigger("debug",`Drained ${k.id}`,{success:x,args:g,options:k}),x?(R.shift(),et=this.empty(),et&&this.Events.trigger("empty"),I===0&&this.Events.trigger("depleted",et),this._run(h,y,j),this.Promise.resolve(k.weight)):this.Promise.resolve(null)})))})}_drainAll(d,g=0){return this._drainOne(d).then(h=>{var y;return h!=null?(y=d!=null?d-h:d,this._drainAll(y,g+h)):this.Promise.resolve(g)}).catch(h=>this.Events.trigger("error",h))}_dropAllQueued(d){return this._queues.shiftAll(function(g){return g.doDrop({message:d})})}stop(d={}){var g,h;return d=oe.load(d,this.stopDefaults),h=y=>{var k;return k=()=>{var R;return R=this._states.counts,R[0]+R[1]+R[2]+R[3]===y},new this.Promise((R,x)=>k()?R():this.on("done",()=>{if(k())return this.removeAllListeners("done"),R()}))},g=d.dropWaitingJobs?(this._run=function(y,k){return k.doDrop({message:d.dropErrorMessage})},this._drainOne=()=>this.Promise.resolve(null),this._registerLock.schedule(()=>this._submitLock.schedule(()=>{var y,k,R;k=this._scheduled;for(y in k)R=k[y],this.jobStatus(R.job.options.id)==="RUNNING"&&(clearTimeout(R.timeout),clearTimeout(R.expiration),R.job.doDrop({message:d.dropErrorMessage}));return this._dropAllQueued(d.dropErrorMessage),h(0)}))):this.schedule({priority:hr-1,weight:0},()=>h(1)),this._receive=function(y){return y._reject(new w.prototype.BottleneckError(d.enqueueErrorMessage))},this.stop=()=>this.Promise.reject(new w.prototype.BottleneckError("stop() has already been called")),g}async _addToQueue(d){var g,h,y,k,R,x,j;({args:g,options:k}=d);try{({reachedHWM:R,blocked:h,strategy:j}=await this._store.__submit__(this.queued(),k.weight))}catch(I){return y=I,this.Events.trigger("debug",`Could not queue ${k.id}`,{args:g,options:k,error:y}),d.doDrop({error:y}),!1}return h?(d.doDrop(),!0):R&&(x=j===w.prototype.strategy.LEAK?this._queues.shiftLastFrom(k.priority):j===w.prototype.strategy.OVERFLOW_PRIORITY?this._queues.shiftLastFrom(k.priority+1):j===w.prototype.strategy.OVERFLOW?d:void 0,x?.doDrop(),x==null||j===w.prototype.strategy.OVERFLOW)?(x==null&&d.doDrop(),R):(d.doQueue(R,h),this._queues.push(d),await this._drainAll(),R)}_receive(d){return this._states.jobStatus(d.options.id)!=null?(d._reject(new w.prototype.BottleneckError(`A job with the same id already exists (id=${d.options.id})`)),!1):(d.doReceive(),this._submitLock.schedule(this._addToQueue,d))}submit(...d){var g,h,y,k,R,x,j;return typeof d[0]=="function"?(R=d,[h,...d]=R,[g]=jo.call(d,-1),k=oe.load({},this.jobDefaults)):(x=d,[k,h,...d]=x,[g]=jo.call(d,-1),k=oe.load(k,this.jobDefaults)),j=(...I)=>new this.Promise(function(et,Jl){return h(...I,function(...Lo){return(Lo[0]!=null?Jl:et)(Lo)})}),y=new gr(j,d,k,this.jobDefaults,this.rejectOnDrop,this.Events,this._states,this.Promise),y.promise.then(function(I){return typeof g=="function"?g(...I):void 0}).catch(function(I){return Array.isArray(I)?typeof g=="function"?g(...I):void 0:typeof g=="function"?g(I):void 0}),this._receive(y)}schedule(...d){var g,h,y;return typeof d[0]=="function"?([y,...d]=d,h={}):[h,y,...d]=d,g=new gr(y,d,h,this.jobDefaults,this.rejectOnDrop,this.Events,this._states,this.Promise),this._receive(g),g.promise}wrap(d){var g,h;return g=this.schedule.bind(this),h=function(...y){return g(d.bind(this),...y)},h.withOptions=function(y,...k){return g(y,d,...k)},h}async updateSettings(d={}){return await this._store.__updateSettings__(oe.overwrite(d,this.storeDefaults)),oe.overwrite(d,this.instanceDefaults,this),this}currentReservoir(){return this._store.__currentReservoir__()}incrementReservoir(d=0){return this._store.__incrementReservoir__(d)}}return w.default=w,w.Events=fr,w.version=w.prototype.version=Kl.version,w.strategy=w.prototype.strategy={LEAK:1,OVERFLOW:2,OVERFLOW_PRIORITY:4,BLOCK:3},w.BottleneckError=w.prototype.BottleneckError=_,w.Group=w.prototype.Group=Hl,w.RedisConnection=w.prototype.RedisConnection=bo,w.IORedisConnection=w.prototype.IORedisConnection=_o,w.Batcher=w.prototype.Batcher=Wl,w.prototype.jobDefaults={priority:Po,weight:1,expiration:null,id:"<no-id>"},w.prototype.storeDefaults={maxConcurrent:null,minTime:0,highWater:null,strategy:w.prototype.strategy.LEAK,penalty:null,reservoir:null,reservoirRefreshInterval:null,reservoirRefreshAmount:null,reservoirIncreaseInterval:null,reservoirIncreaseAmount:null,reservoirIncreaseMaximum:null},w.prototype.localStoreDefaults={Promise,timeout:null,heartbeatInterval:250},w.prototype.redisStoreDefaults={Promise,timeout:null,heartbeatInterval:5e3,clientTimeout:1e4,Redis:null,clientOptions:{},clusterNodes:null,clearDatastore:!1,connection:null},w.prototype.instanceDefaults={datastore:"local",connection:null,id:"<no-id>",rejectOnDrop:!0,trackDoneStatus:!1,Promise},w.prototype.stopDefaults={enqueueErrorMessage:"This limiter has been stopped and cannot accept new jobs.",dropWaitingJobs:!0,dropErrorMessage:"This limiter has been stopped."},w}.call(e);var Io=Ao,Vl=Io;return Vl})});import{randomUUID as hf}from"node:crypto";import{mkdir as yf}from"node:fs/promises";import{dirname as bf}from"node:path";import{createHash as du}from"node:crypto";import{createConnection as uu}from"node:net";import{tmpdir as cu}from"node:os";import{dirname as Ny,join as ot}from"node:path";var Ue=class extends SyntaxError{line;source;reason;constructor(t,r={}){let n=r.line===void 0||r.line===0?"":`Line ${r.line}: `;super(n+t,r.cause===void 0?void 0:{cause:r.cause}),this.name="ToonDecodeError",this.line=r.line,this.source=r.source,this.reason=t}},ye=class extends SyntaxError{line;source;reason;constructor(t,r,n={}){super(t===0?r:`line ${t}: ${r}`,n.cause===void 0?void 0:{cause:n.cause}),this.name="ToonError",this.line=t,this.source=n.source,this.reason=r}},xe=class extends Error{line;reason;constructor(t,r){super(t===0?r:`line ${t}: ${r}`),this.name="ToonlError",this.line=t,this.reason=r}};function E(e,t,r={}){return new ye(e,t,r)}function O(e,t){return new xe(e,t)}function tt(e){return e instanceof xe?e:e instanceof ye?new xe(e.line,e.reason):new xe(0,String(e&&e.message?e.message:e))}var td=/(?:^\uFEFF?|\n) *#/,_r=class{value;constructor(t){if(td.test(t))throw new TypeError(`Raw string must not contain a line starting with "#": ${JSON.stringify(t)}`);this.value=t}};function Ae(e){return e instanceof _r}var kr=",";function Bo(e){let t=e.split(`
3
+ `);return t.length>0&&t[t.length-1]===""&&t.pop(),t.map(r=>r.endsWith("\r")?r.slice(0,-1):r)}function se(e){return E(e,"invalid quoted string")}function F(e,t){if(e==="")return"";if(e.startsWith('"'))return Uo(e,t);if(e.includes('"'))throw se(t);if(e==="true")return!0;if(e==="false")return!1;if(e==="null")return null;if(rd(e)){let r=Number(e);return Object.is(r,-0)?0:r}return e}function Pe(e,t){let r=e.trim();if(r.startsWith('"'))return[Uo(r,t),!0];if(r.includes('"')||/\s/.test(r))throw E(t,"expected non-empty field name");return[r,!1]}var Mo=/["\\\u0000-\u0008\u000a-\u001f]/g;function Uo(e,t){if(e.charCodeAt(0)!==34)throw se(t);let r="",n=1;for(;n<e.length;){Mo.lastIndex=n;let o=Mo.exec(e);if(o===null)break;if(o[0]==='"'){if(e.slice(o.index+1).trim()==="")return r+e.slice(n,o.index);throw se(t)}if(o[0]!=="\\")throw se(t);r+=e.slice(n,o.index);let s=e[o.index+1];switch(n=o.index+2,s){case'"':r+='"';break;case"\\":r+="\\";break;case"n":r+=`
4
+ `;break;case"r":r+="\r";break;case"t":r+=" ";break;case"u":{let i=e.slice(n,n+4);if(!/^[0-9a-fA-F]{4}$/.test(i))throw se(t);let a=Number.parseInt(i,16);if(a>=55296&&a<=57343)throw se(t);r+=String.fromCharCode(a),n+=4;break}default:throw se(t)}}throw se(t)}function Ho(e,t,r){for(;;){let n=e.indexOf('"',t),o=e.indexOf("\\",t);if(o!==-1&&(n===-1||o<n)){if(o===e.length-1)throw se(r);t=o+2;continue}if(n===-1)throw se(r);return n+1}}function Oe(e,t,r){if(e==="")return[];let n=[],o=0,s=0;for(;s<e.length;){let i=e.indexOf('"',s),a=e.indexOf(t,s);if(a!==-1&&(i===-1||a<i))n.push(e.slice(o,a).trim()),o=a+1,s=a+1;else if(i!==-1)s=Ho(e,i+1,r);else break}return n.push(e.slice(o).trim()),n}function Z(e,t,r){let n=0;for(;n<e.length;){let o=e.indexOf('"',n),s=e.indexOf(t,n);if(s!==-1&&(o===-1||s<o))return s;if(o===-1)return-1;n=Ho(e,o+1,r)}return-1}function rd(e){return/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$/.test(e)}function nd(e){return/^[+-]?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$/.test(e)}function od(e){if(Object.is(e,-0))return"0";if(!Number.isFinite(e))throw E(0,"number is not representable in TOON");return String(e)}function wt(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"}function B(e,t){if(Ae(e))return e.value;if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="number")return od(e);if(typeof e=="string")return id(e,t);throw E(0,"not a primitive")}function sd(e){return/^[A-Za-z_][A-Za-z0-9_.]*$/.test(e)}function N(e){return sd(e)?e:Et(e)}function id(e,t){return Rr(e,t)?Et(e):e}function Rr(e,t){return e===""||/^[ \t]|[ \t]$/.test(e)||e==="true"||e==="false"||e==="null"||nd(e)||/[:"\\[\]{}]/.test(e)||/[\u0000-\u001f]/.test(e)||e.includes(t)||e.startsWith("-")||e.startsWith("#")}var Fo=/["\\\u0000-\u001f]/g;function Et(e){return`"${Wo(e)}"`}function Wo(e){let t="",r=0;Fo.lastIndex=0;let n;for(;(n=Fo.exec(e))!==null;){let o=e.charCodeAt(n.index),s;o===34?s='\\"':o===92?s="\\\\":o===10?s="\\n":o===13?s="\\r":o===9?s="\\t":s=`\\u${o.toString(16).padStart(4,"0")}`,t+=e.slice(r,n.index)+s,r=n.index+1}return`${t}${e.slice(r)}`}function De(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}var qo={comma:",",tab:" ",pipe:"|"},ad=qo.comma;var rt=1e3,Ko=["type","kind","event"],Ge="|",Vo=new Set(["order","discriminator","rows","common"]);function*zo(e,t,r,n,o,s,i){yield*Yo(r,e,n,t,{index:0},o,i,!0,s)}function*Yo(e,t,r,n,o,s,i,a,l){let u=Zo(e,t,r,n,o.index,s,i),c=0;for(;c<e;){let m=n[o.index];if(m===void 0||m.depth<s)break;if(m.depth>s)throw E(m.number,"invalid indentation");if(m.blankBefore&&i.strict)throw E(m.number,"blank line inside array");if(!St(m.content,r,m.number))break;let b=Oe(m.content,r,m.number),_={cellIndex:0,nextIndex:o.index+1,flatWidth:vt(t),childTableFields:u};if(a&&t.length===1&&t[0].fixedLength!==void 0?yield*Xo(t[0],b,_,m.number):(yield{type:"startObject",line:m.number},yield*Qo(t,b,m,n,_,s+1,r,i),yield{type:"endObject",line:m.number}),_.cellIndex!==b.length)throw E(m.number,"array row length mismatch");o.index=_.nextIndex,c++}if(c!==e)throw cd(n,o.index,l);let p=n[o.index];if(p!==void 0&&p.depth>=s&&St(p.content,r,p.number))throw E(p.number,"array length mismatch")}function*Qo(e,t,r,n,o,s,i,a){for(let l=0;l<e.length;l++){let u=e[l];yield{type:"key",key:u.name,line:r.number},yield*ld(u,e.slice(l+1),t,r,n,o,s,i,a)}}function*ld(e,t,r,n,o,s,i,a,l){if(e.fixedLength!==void 0){yield*Xo(e,r,s,n.number);return}if(e.listDelimiter!==void 0){let c=Jo(r,s,n.number),p=Oe(c,e.listDelimiter,n.number);yield{type:"startArray",length:p.length,line:n.number};for(let m of p)yield{type:"primitive",value:F(m,n.number),line:n.number};yield{type:"endArray",line:n.number};return}if(e.children!==void 0){let c=vt(e.children),p=r[s.cellIndex],m=ts(p),b=r.length-s.cellIndex-1,_=o[s.nextIndex],S=_!==void 0&&_.depth===i;if(s.childTableFields?.has(e)??(m!==void 0&&(S||r.length!==s.flatWidth&&b<c+ud(t)))){if(!l.objectArrayColumns||m===void 0)throw E(n.number,"array row length mismatch");s.cellIndex++,yield{type:"startArray",length:m,line:n.number};let C={index:s.nextIndex};yield*Yo(m,e.children,a,o,C,i,l,!1,n.number),s.nextIndex=C.index,yield{type:"endArray",line:o[s.nextIndex-1]?.number??n.number};return}yield{type:"startObject",line:n.number},yield*Qo(e.children,r,n,o,s,i,a,l),yield{type:"endObject",line:n.number};return}let u=Jo(r,s,n.number);yield{type:"primitive",value:F(u,n.number),line:n.number}}function*Xo(e,t,r,n){let o=e.fixedLength;if(r.cellIndex+o>t.length)throw E(n,"array row length mismatch");yield{type:"startArray",length:o,line:n};for(let s of t.slice(r.cellIndex,r.cellIndex+o))yield{type:"primitive",value:F(s,n),line:n};r.cellIndex+=o,yield{type:"endArray",line:n}}function Jo(e,t,r){let n=e[t.cellIndex];if(n===void 0)throw E(r,"array row length mismatch");return t.cellIndex++,n}function Zo(e,t,r,n,o,s,i){let a=t.filter(u=>u.children!==void 0);if(a.length===0)return new Set;if(a.length>12)return;let l;for(let u=0;u<1<<a.length;u++){let c=new Set;a.forEach((m,b)=>{u&1<<b&&c.add(m)});let p=es(e,t,c,r,n,o,s,i);p!==void 0&&(l===void 0||p.consumed>l.consumed||p.consumed===l.consumed&&c.size<l.fields.size)&&(l={fields:c,consumed:p.consumed})}return l?.fields}function es(e,t,r,n,o,s,i,a){let l=s,u=0;try{for(let p=0;p<e;p++){let m=o[l];if(m===void 0||m.depth!==i||m.blankBefore&&a.strict||!St(m.content,n,m.number))return;let b=dd(t,r,Oe(m.content,n,m.number),n,o,l+1,i+1,a);if(b===void 0||o[b.nextIndex]?.depth>i)return;l=b.nextIndex,u+=b.consumed}let c=o[l];if(c!==void 0&&c.depth>=i&&St(c.content,n,c.number))return}catch{return}return{nextIndex:l,consumed:u}}function dd(e,t,r,n,o,s,i,a){let l=0,u=s,c=0;for(let p of e){if(p.fixedLength!==void 0)l+=p.fixedLength;else if(p.children!==void 0)if(t.has(p)){let m=ts(r[l]);if(m===void 0)return;l++;let b=Zo(m,p.children,n,o,u,i,a);if(b===void 0)return;let _=es(m,p.children,b,n,o,u,i,a);if(_===void 0)return;u=_.nextIndex,c+=m+_.consumed}else l+=vt(p.children);else l++;if(l>r.length)return}return l===r.length?{nextIndex:u,consumed:c}:void 0}function ts(e){return e!==void 0&&/^(0|[1-9][0-9]*)$/.test(e)?Number(e):void 0}function vt(e){return e.reduce((t,r)=>t+rs(r),0)}function rs(e){return e.fixedLength!==void 0?e.fixedLength:e.children!==void 0?vt(e.children):1}function ud(e){return e.reduce((t,r)=>t+(r.children===void 0?rs(r):1),0)}function St(e,t,r){let n=Z(e,":",r);if(n===-1)return!0;let o=Z(e,t,r);return o!==-1&&o<n}function cd(e,t,r){return E(e[t]?.number??e[e.length-1]?.number??r,"array length mismatch")}function pd(e){let t=0;for(;t<e.length&&e[t]===" ";)t++;return e[t]==="#"}var xt=class{ctx;sourceByLine=new Map;number=0;blankPending=!1;firstLine=!0;constructor(t){this.ctx=t}push(t){let r=t;if(this.number++,this.sourceByLine.set(this.number,t),this.firstLine&&(r.startsWith("\uFEFF")&&(r=r.slice(1)),this.firstLine=!1),r.endsWith("\r")&&(r=r.slice(0,-1)),r=r.replace(/ +$/,""),r.trim()===""){this.blankPending=!0;return}if(pd(r))return;let n=0,o=0,s=0;for(;n<r.length&&(r[n]===" "||r[n]===" ");){if(r[n]===" "){if(this.ctx.strict)throw E(this.number,"tab used as indentation");o++}else s++;n++}let i;if(s%this.ctx.indentSize===0)i=s/this.ctx.indentSize;else{if(this.ctx.strict)throw E(this.number,"invalid indentation");i=Math.floor(s/this.ctx.indentSize)}i+=o,ms(i,this.number,this.ctx);let a={number:this.number,depth:i,content:r.slice(n),blankBefore:this.blankPending};return this.blankPending=!1,a}};function*md(e,t){for(let r of e){let n=t.push(r);n!==void 0&&(yield n)}}async function*fd(e,t){for await(let r of e){let n=t.push(r);n!==void 0&&(yield n)}}var gd=/^(0|[1-9]\d*)$/;function Tr(e,t){let r=Z(e,"[",t);if(r===-1)return null;let n=Z(e,":",t);if(n!==-1&&n<r)return null;let o=e.slice(0,r);if(o!==""&&/\s$/.test(o))throw E(t,"whitespace between key and bracket segment");let s=e.indexOf("]",r);if(s===-1)return null;let i=e.slice(r+1,s),a=!1,l=",",u=i.indexOf(":");if(u!==-1){let S=i.slice(u+1);if(i=i.slice(0,u),a=!0,S===" "||S==="|")l=S;else if(S!=="")throw E(t,"malformed bracket segment")}else(i.endsWith(" ")||i.endsWith("|"))&&(l=i.slice(-1),i=i.slice(0,-1));if(!gd.test(i))throw E(t,"malformed array header length");let c=Number(i),p=e.slice(s+1),m;if(p.startsWith("{")){let S=os(p,t);m=hd(p.slice(1,S),l,t),p=p.slice(S+1)}if(a&&m===void 0)throw E(t,"keyed header requires a field list");if(!p.startsWith(":"))throw E(t,"expected colon after array header");let b=ie(p.slice(1));if((m!==void 0||a)&&b!=="")throw E(t,"unexpected content after fields-bearing header colon");return{key:o===""?void 0:Pe(o,t)[0],length:c,delimiter:l,fields:m,keyed:a,inline:b===""?void 0:b}}function os(e,t){let r=0,n=!1;for(let o=0;o<e.length;o++){let s=e[o];if(n){s==="\\"?o++:s==='"'&&(n=!1);continue}if(s==='"')n=!0;else if(s==="{")r++;else if(s==="}"&&(r--,r===0))return o}throw E(t,"malformed tabular header fields")}function hd(e,t,r){if(t!==","&&e.includes(",")&&(e.includes("[")||e.includes("{")))return Tt(e,",",t,r);try{return Tt(e,t,t,r)}catch(n){if(t===",")throw n;return Tt(e,",",t,r)}}function Tt(e,t,r,n){let o=[],s=0,i=0,a=0,l=!1,u=c=>{o.push(yd(c,t,r,n))};for(let c=0;c<e.length;c++){let p=e[c];if(l){p==="\\"?c++:p==='"'&&(l=!1);continue}p==='"'?l=!0:p==="{"?i++:p==="}"?i--:p==="["?a++:p==="]"?a--:p===t&&i===0&&a===0&&(u(e.slice(s,c)),s=c+1)}return u(e.slice(s)),o}function yd(e,t,r,n){let o=ie(e);if(o==="")throw E(n,"empty field entry in header");let s=o.startsWith('"')?bd(o,n)+1:0,i=o.indexOf("{",s),a=o.indexOf("[",s),l=i===-1?a:a===-1?i:Math.min(i,a);if(l===-1)return{name:Pe(o,n)[0]};let u=Pe(o.slice(0,l),n)[0];if(l===a){let m=o.indexOf("]",a);if(m===-1||m!==o.length-1)throw E(n,"invalid array header");let b=o.slice(a+1,m),_=/^(0|[1-9]\d*)(\t|\|)?$/.exec(b);if(_!==null){if((_[2]??",")!==r)throw E(n,"invalid array header");return{name:u,fixedLength:Number(_[1])}}if(b.length!==1||b===r||/[ \t\r\n"[\]{}:]/.test(b))throw E(n,"invalid array header");return{name:u,listDelimiter:b}}let c=os(o.slice(i),n)+i;if(c!==o.length-1)throw E(n,"malformed tabular header fields");if(c===i+1)throw E(n,"invalid array header");let p=Tt(o.slice(i+1,c),t,r,n);return{name:u,children:p}}function bd(e,t){for(let r=1;r<e.length;r++)if(e[r]==="\\")r++;else if(e[r]==='"')return r;throw E(t,"invalid quoted string")}function xr(e){let t=0;for(let r of e)t+=r.children===void 0?1:xr(r.children);return t}function Ar(e,t,r){let n=new Set;for(let o of e){if(n.has(o.name)&&r.strict)throw E(t,"duplicate field name in header");n.add(o.name),o.children!==void 0&&Ar(o.children,t,r)}}function ie(e){let t=0,r=e.length;for(;t<r&&e[t]===" ";)t++;for(;r>t&&e[r-1]===" ";)r--;return e.slice(t,r)}function Pr(e,t,r){if(ie(e)==="")return[];let n=[],o=0,s=!1;for(let i=0;i<e.length;i++){let a=e[i];if(s){a==="\\"?i++:a==='"'&&(s=!1);continue}a==='"'?s=!0:a===t&&(n.push(ie(e.slice(o,i))),o=i+1)}return n.push(ie(e.slice(o))),n}var Or=Symbol("need line"),ns=2,Er=class{lines=[];ended=!1;previous;spanActive=0;*peek(t=0){if(t>=ns)throw new Error(`decoder lookahead exceeds ${ns} classified lines`);for(;!this.ended&&this.lines.length<=t;){let r=yield Or;r===void 0?this.ended=!0:this.lines.push(r)}return this.lines[t]}*take(t){let r=yield*this.peek();if(r===void 0)throw new Error("decoder attempted to read past end of input");if(this.lines.shift(),t.strict&&this.spanActive>0&&r.blankBefore)throw E(r.number,"blank line inside a header span");return this.previous=r,r}lastNumber(t){return this.previous===void 0?t:this.previous.number}stop(){this.lines.length=0,this.ended=!0}};function ss(e,t){return Z(e,":",t)!==-1}function is(e,t){try{return Pe(e,t)[0]}catch(r){if(e.startsWith('"'))throw r;return e}}function as(e){let t=e?.maxDepth??rt;return{indentSize:e?.indentSize??e?.indent??2,strict:e?.strict??!0,objectArrayColumns:e?.objectArrayColumns??!0,maxDepth:t===Number.POSITIVE_INFINITY?0:Math.max(0,Math.floor(t))}}function*ls(e){let t=new Er,r=yield*t.peek();if(r===void 0){yield{type:"startObject",line:1},yield{type:"endObject",line:1};return}if(r.depth!==0)throw E(r.number,"invalid indentation");if(yield*t.peek(1),r.content==="[]"){yield*t.take(e),yield{type:"startArray",length:0,line:r.number},yield{type:"endArray",line:r.number},yield*wr(t,e);return}let n=null,o=!1;try{n=Tr(r.content,r.number)}catch(s){if(e.strict)throw s;o=!0}if(n!=null&&At(n.fields,r.number,e),n!=null&&!o&&n.key===void 0){yield*t.take(e),n.keyed?yield*ps(t,r,n,e):yield*Dr(t,r,n,e),yield*wr(t,e);return}if((n===null||o)&&!ss(r.content,r.number)&&(yield*t.peek(1))===void 0){yield*t.take(e),yield{type:"primitive",value:F(ie(r.content),r.number),line:r.number};return}yield*ds(t,0,r.number,e),yield*wr(t,e)}function*wr(e,t){let r=yield*e.peek();if(r!==void 0&&t.strict)throw E(r.number,"expected end of document");e.stop()}function*ds(e,t,r,n){yield{type:"startObject",line:r};let o=new Set;for(;;){let s=yield*e.peek();if(s===void 0||s.depth<t)break;if(s.depth>t)throw E(s.number,"over-indented line");yield*e.take(n),yield*Sr(e,s,s.content,t,n,o)}yield{type:"endObject",line:e.lastNumber(r)}}function*Sr(e,t,r,n,o,s){let i=null;try{i=Tr(r,t.number)}catch(c){if(o.strict)throw c;i=null}if(i!=null)if(At(i.fields,t.number,o),i.key===void 0){if(o.strict)throw E(t.number,"keyless header is only valid at the root or as a list item");i=null}else{vr(s,i.key,t.number,o),yield{type:"key",key:i.key,line:t.number},i.keyed?yield*ps(e,{...t,depth:n},i,o):yield*Dr(e,{...t,depth:n},i,o);return}let a=Z(r,":",t.number);if(a===-1)throw E(t.number,"expected key-value line");let l=is(ie(r.slice(0,a)),t.number),u=ie(r.slice(a+1));if(vr(s,l,t.number,o),yield{type:"key",key:l,line:t.number},u===""){let c=yield*e.peek();if(c!==void 0&&c.depth>n){if(c.depth!==n+1)throw E(c.number,"over-indented line");yield*ds(e,n+1,c.number,o)}else yield{type:"startObject",line:t.number},yield{type:"endObject",line:t.number};return}if(u==="[]"){yield{type:"startArray",length:0,line:t.number},yield{type:"endArray",line:t.number};return}yield{type:"primitive",value:F(u,t.number),line:t.number}}function vr(e,t,r,n){if(e.has(t)&&n.strict)throw E(r,"duplicate object key");e.add(t)}function*Dr(e,t,r,n){if(yield{type:"startArray",length:r.length,line:t.number},r.fields!==void 0){if(Ar(r.fields,t.number,n),us(r.fields,n)){if(!n.objectArrayColumns&&cs(r.fields))throw E(t.number,"invalid array header");let i=[];for(;;){let a=yield*e.peek();if(a===void 0||a.depth<=t.depth)break;i.push(yield*e.take(n))}yield*zo(r.fields,i,r.length,r.delimiter,t.depth+1,t.number,n),yield{type:"endArray",line:e.lastNumber(t.number)};return}yield*kd(e,t,r,n);return}if(r.inline!==void 0){let i=Pr(r.inline,r.delimiter,t.number);$r(i.length,r.length,t.number,"inline-form values",n);for(let a of i)yield{type:"primitive",value:F(a,t.number),line:t.number};yield{type:"endArray",line:t.number};return}let o=0;for(;;){let i=yield*e.peek();if(i===void 0||i.depth<=t.depth)break;if(i.depth!==t.depth+1)throw E(i.number,"over-indented line");if(!i.content.startsWith("- ")&&i.content!=="-")break;yield*e.take(n),o===0&&e.spanActive++,o++,yield*_d(e,i,n)}o>0&&e.spanActive--;let s=e.lastNumber(t.number);if(n.strict&&o!==r.length)throw E(s,`expected ${r.length} list items, but got ${o}`);yield{type:"endArray",line:s}}function us(e,t){return e.some(r=>r.listDelimiter!==void 0||r.fixedLength!==void 0||t.objectArrayColumns&&r.children!==void 0||r.children!==void 0&&us(r.children,t))}function cs(e){return e.some(t=>t.fixedLength!==void 0||t.children!==void 0&&cs(t.children))}function*_d(e,t,r){if(t.content==="-"){yield{type:"startObject",line:t.number},yield{type:"endObject",line:t.number};return}let n=ie(t.content.slice(2));if(n==="[]"){yield{type:"startArray",length:0,line:t.number},yield{type:"endArray",line:t.number};return}let o=null;try{o=Tr(n,t.number)}catch(s){if(r.strict)throw s;o=null}if(o!=null&&o.key===void 0){if(At(o.fields,t.number,r),o.keyed||o.fields!==void 0){if(r.strict)throw E(t.number,"keyless fields-bearing header is only valid at the root");yield{type:"primitive",value:F(n,t.number),line:t.number};return}yield*Dr(e,t,o,r);return}if(o!=null&&o.key!==void 0||ss(n,t.number)){yield{type:"startObject",line:t.number};let s=new Set;for(yield*Sr(e,t,n,t.depth+1,r,s);;){let i=yield*e.peek();if(i===void 0||i.depth!==t.depth+1||i.content.startsWith("- ")||i.content==="-")break;yield*e.take(r),yield*Sr(e,i,i.content,t.depth+1,r,s)}yield{type:"endObject",line:e.lastNumber(t.number)};return}yield{type:"primitive",value:F(n,t.number),line:t.number}}function*kd(e,t,r,n){let o=r.fields,s=xr(o),i=t.depth+1,a=0;for(;;){let u=yield*e.peek();if(u===void 0||u.depth<=t.depth)break;if(u.depth!==i)throw E(u.number,"over-indented line");if(!Rd(u.content,r.delimiter,u.number))break;yield*e.take(n),a===0&&e.spanActive++,a++;let c=Pr(u.content,r.delimiter,u.number);$r(c.length,s,u.number,"row cells",n),yield*Gr(o,c,{next:0},u.number)}a>0&&e.spanActive--;let l=e.lastNumber(t.number);if(n.strict&&a!==r.length)throw E(l,`expected ${r.length} tabular rows, but got ${a}`);yield{type:"endArray",line:l}}function Rd(e,t,r){let n=Z(e,":",r);if(n===-1)return!0;let o=Z(e,t,r);return o===-1?!1:o<n}function*Gr(e,t,r,n){yield{type:"startObject",line:n};for(let o of e)if(yield{type:"key",key:o.name,line:n},o.children===void 0){let s=t[r.next++]??"";yield{type:"primitive",value:F(s,n),line:n}}else yield*Gr(o.children,t,r,n);yield{type:"endObject",line:n}}function*ps(e,t,r,n){let o=r.fields;Ar(o,t.number,n);let s=xr(o),i=t.depth+1;yield{type:"startObject",line:t.number};let a=new Set,l=0;for(;;){let c=yield*e.peek();if(c===void 0||c.depth<=t.depth)break;if(c.depth!==i)throw E(c.number,"over-indented line");let p=Z(c.content,":",c.number);if(p===-1){if(n.strict)throw E(c.number,"expected a keyed entry row");yield*e.take(n);continue}yield*e.take(n),l===0&&e.spanActive++,l++;let m=is(ie(c.content.slice(0,p)),c.number);vr(a,m,c.number,n),yield{type:"key",key:m,line:c.number};let b=Pr(c.content.slice(p+1),r.delimiter,c.number);$r(b.length,s,c.number,"entry row cells",n),yield*Gr(o,b,{next:0},c.number)}l>0&&e.spanActive--;let u=e.lastNumber(t.number);if(n.strict&&l!==r.length)throw E(u,`expected ${r.length} entry rows, but got ${l}`);yield{type:"endObject",line:u}}function $r(e,t,r,n,o){if(o.strict&&e!==t)throw E(r,`expected ${t} ${n}, but got ${e}`)}function ms(e,t,r){if(r.maxDepth!==0&&e>r.maxDepth)throw E(t,`maximum nesting depth exceeded (maxDepth ${r.maxDepth})`)}function At(e,t,r,n=1){if(e!==void 0){ms(n,t,r);for(let o of e)o.children!==void 0&&At(o.children,t,r,n+1)}}function*fs(e,t){let r=as(t),n=new xt(r),o=md(e,n),s=ls(r),i=s.next();try{for(;!i.done;)if(i.value===Or){let a=o.next();i=s.next(a.done?void 0:a.value)}else yield i.value,i=s.next()}catch(a){throw hs(a,n)}finally{s.return(),o.return(void 0)}}async function*gs(e,t){let r=as(t),n=new xt(r),o=fd(e,n),s=ls(r),i=s.next();try{for(;!i.done;)if(i.value===Or){let a=await o.next();i=s.next(a.done?void 0:a.value)}else yield i.value,i=s.next()}catch(a){throw hs(a,n)}finally{s.return(),await o.return(void 0)}}function hs(e,t){return!(e instanceof ye)||e.source!==void 0?e:new Ue(e.reason,{line:e.line,source:t.sourceByLine.get(e.line),cause:e})}function jr(e,t){return Symbol.asyncIterator in e?gs(e,t):fs(e,t)}var wd=/[\uD800-\uDFFF]/;function J(e){if(e===null)return null;if(Ae(e))return e;if(typeof e=="object"&&e!==null&&"toJSON"in e&&typeof e.toJSON=="function"){let t=e.toJSON();if(t!==e)return J(t)}if(typeof e=="string")return ys(e,"string value"),e;if(typeof e=="boolean")return e;if(typeof e=="number")return Object.is(e,-0)?0:Number.isFinite(e)?e:null;if(typeof e=="bigint")return e>=Number.MIN_SAFE_INTEGER&&e<=Number.MAX_SAFE_INTEGER?Number(e):e.toString();if(e instanceof Date)return e.toISOString();if(Array.isArray(e))return e.map(J);if(e instanceof Set)return Array.from(e,J);if(e instanceof Map){let t={};for(let[r,n]of e)He(t,String(r),J(n));return t}if(P(e)){let t={};for(let r of Object.keys(e))ys(r,"object key"),He(t,r,J(e[r]));return t}return null}function ys(e,t){if(wd.test(e))for(let r=0;r<e.length;r+=1){let n=e.charCodeAt(r);if(n<55296||n>57343)continue;let o=e.charCodeAt(r+1);if(n<=56319&&o>=56320&&o<=57343){r+=1;continue}throw new TypeError(`Cannot encode ${t} containing an unpaired surrogate U+${n.toString(16).toUpperCase()} at index ${r}`)}}function P(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function Q(e){return e===null||Ae(e)||["string","number","boolean"].includes(typeof e)}function He(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function ks(e){if(!P(e)||Object.keys(e).length===0)return e;let t={};for(let[r,n]of Object.entries(e)){let o=Ed(n,1);if(o===void 0)return e;De(t,r,o)}return t}function Ed(e,t){if(!P(e)||!Sd(e))return;let{order:r,discriminator:n,rows:o}=e;if(typeof r!="string"||typeof n!="string"||!Number.isSafeInteger(o)||o<0)throw L(t);let s=vd(r,o,t),i=e.common,a=i===void 0?Array.from({length:o},()=>({})):i;if(!Array.isArray(a)||a.length!==o||!a.every(P))throw Rs(t);let l=new Map;for(let[p,m]of Object.entries(e))if(!Vo.has(p)){if(!Array.isArray(m)||!m.every(P))throw L(t);l.set(p,m)}if(l.size===0)throw L(t);let u=new Map,c=s.map((p,m)=>{let b=l.get(p);if(b===void 0)throw Ir(t);let _=u.get(p)??0,S=b[_];if(S===void 0)throw Ir(t);return u.set(p,_+1),Td(n,p,a[m],S,t)});for(let[p,m]of l)if((u.get(p)??0)!==m.length)throw Ir(t);return c}function Sd(e){return Object.prototype.hasOwnProperty.call(e,"order")||Object.prototype.hasOwnProperty.call(e,"discriminator")||Object.prototype.hasOwnProperty.call(e,"rows")}function vd(e,t,r){if(!e.startsWith("cycle("))throw L(r);let n=e.slice(6),o=n.indexOf(")*");if(o===-1)throw L(r);let s=n.slice(0,o),i=n.slice(o+2);if(s===""||i.includes("+tail("))throw L(r);let a=s.split(",").map(c=>Od(c,r));if(a.some(c=>c===""))throw L(r);let l=Pd(i,r),u=a.length*l;if(!Number.isSafeInteger(u))throw L(r);if(u!==t)throw Rs(r);return Array.from({length:u},(c,p)=>a[p%a.length])}function Td(e,t,r,n,o){let s={};De(s,e,t);for(let[i,a]of Object.entries(r??{})){if(i===e||Object.prototype.hasOwnProperty.call(s,i))throw L(o);De(s,i,a)}for(let[i,a]of Object.entries(xd(n,o))){if(i===e||Object.prototype.hasOwnProperty.call(s,i))throw L(o);De(s,i,a)}return s}function xd(e,t){let r={};for(let[n,o]of Object.entries(e))Ad(r,n.split("."),o,t);return Pt(r,t)}function Ad(e,t,r,n){if(t.some(s=>s===""))throw L(n);let o=e;for(let s=0;s<t.length;s+=1){let i=t[s];if(s===t.length-1){o[i]=r;return}if(o[i]??={},o=o[i],!P(o))throw L(n)}}function Pt(e,t){return Array.isArray(e)?e.map(r=>Pt(r,t)):P(e)?Number.isSafeInteger(e.length)&&e.length>=0?Array.from({length:e.length},(r,n)=>{if(!Object.prototype.hasOwnProperty.call(e,String(n)))throw L(t);return Pt(e[String(n)],t)}):Object.fromEntries(Object.entries(e).map(([r,n])=>[r,Pt(n,t)])):e}function Pd(e,t){if(e===""||e.length>1&&e.startsWith("0")||!/^[0-9]+$/.test(e))throw L(t);let r=Number(e);if(!Number.isSafeInteger(r))throw L(t);return r}function Od(e,t){try{return decodeURIComponent(e)}catch{throw L(t)}}function bs(e){return encodeURIComponent(e)}function L(e){return E(e,"invalid cyclic array wire")}function Rs(e){return E(e,"cyclic array length mismatch")}function Ir(e){return E(e,"cyclic array group length mismatch")}function ws(e){if(!P(e))return;let t=Object.entries(e);if(t.length===0)return;let r=[];for(let[o,s]of t){let i=Dd(s);if(i===void 0)return;r.push([o,i])}let n=[];for(let[o,s]of r)Id(n,o,s);return n.join("")}function Dd(e){if(!Array.isArray(e)||e.length===0||!e.every(P))return;let t=Gd(e);if(t===void 0)return;let r=e.map(a=>a[t]),n=$d(r);if(n===void 0)return;let o=jd(e,t),s=new Map;for(let a of e){let l=a[t];s.has(l)||s.set(l,[]);let u={};for(let[c,p]of Object.entries(a))if(c!==t&&!o.includes(c)&&!Lr(p,c,u))return;s.get(l).push(u)}let i=[];for(let a of n.cycle){let l=s.get(a),u=Cd(l);if(u===void 0||u.length===0)return;i.push({fields:u,label:a,rows:l})}return{common:o,commonRows:e.map(a=>Object.fromEntries(o.map(l=>[l,a[l]]))),discriminator:t,groups:i,order:n,rows:e}}function Gd(e){return Ko.find(t=>e.every(r=>typeof r[t]=="string"))}function $d(e){if(!(e.length<12))for(let t=2;t<=Math.min(8,Math.floor(e.length/3));t+=1){if(e.length%t!==0)continue;let r=e.slice(0,t);if(new Set(r).size<2||!e.every((i,a)=>i===r[a%t]))continue;let n=e.length/t;if(n<3)continue;let o=e.map(bs).join(","),s=`cycle(${r.map(bs).join(",")})*${n}`;if(s.length<=o.length*.4)return{cycle:r,encoded:s,repeats:n}}}function jd(e,t){let r=[],n=Object.keys(e[0]),o=n.indexOf(t)+1;for(let s of n.slice(o).filter(i=>i!==t)){if(!Ld(s)||!e.every(i=>Object.prototype.hasOwnProperty.call(i,s))||!e.every(i=>wt(i[s])))break;r.push(s)}return r}function Id(e,t,r){e.push(N(t),`:
5
+ `),e.push(" order: ",B(r.order.encoded,Ge),`
6
+ `),e.push(" discriminator: ",B(r.discriminator,Ge),`
6
7
  `),e.push(" rows: ",String(r.rows.length),`
7
- `),r.common.length>0&&ds(e,"common",r.common,r.commonRows);for(let n of r.groups)ds(e,n.label,n.fields,n.rows)}function ds(e,t,r,n){e.push(" ",L(t),"[",String(n.length),ve,"]{",r.map(L).join(ve),`}:
8
- `);for(let o of n)e.push(" ",r.map(s=>N(o[s],ve)).join(ve),`
9
- `)}function yd(e){return e!==""&&Or(e)}function Pr(e,t,r,n=new Set){if(!Or(t))return!1;if(ht(e))return r[t]=e,!0;if(Array.isArray(e)){if(n.has(e))return!1;n.add(e),r[`${t}.length`]=e.length;let o=e.every((s,i)=>Pr(s,`${t}.${i}`,r,n));return n.delete(e),o}if(P(e)){if(n.has(e))return!1;n.add(e);let o=Object.entries(e).every(([s,i])=>!s.includes(".")&&Pr(i,`${t}.${s}`,r,n));return n.delete(e),o}return!1}function bd(e){let t=Object.keys(e[0]??{});if(e.every(r=>_d(Object.keys(r),t)))return t.every(Or)?t:void 0}function _d(e,t){return e.length===t.length&&e.every((r,n)=>r===t[n])}function Or(e){return e.split(".").every(t=>/^[A-Za-z_][A-Za-z0-9_]*$|^(?:0|[1-9][0-9]*)$/.test(t))}function Dr(e,t){let r=Gr(e,t,[]),n=t("",r,[]);return n===void 0?r:q(n)}function Gr(e,t,r){return Array.isArray(e)?Rd(e,t,r):P(e)?kd(e,t,r):e}function kd(e,t,r){let n={};for(let[o,s]of Object.entries(e)){if(s===void 0)continue;let i=[...r,o],a=t(o,Gr(s,t,i),i);a!==void 0&&Ne(n,o,q(a))}return n}function Rd(e,t,r){let n=[];for(let o=0;o<e.length;o+=1){let s=[...r,o],i=t(String(o),Gr(e[o],t,s),s);i!==void 0&&n.push(q(i))}return n}var ms=Symbol("unset");function fs(e){let t=[],r,n=ms,o=s=>{let i=t[t.length-1];i===void 0?n=s:Array.isArray(i)?i.push(s):Object.defineProperty(i,r,{value:s,enumerable:!0,writable:!0,configurable:!0})};for(let s of e)switch(s.type){case"startObject":{let i={};o(i),t.push(i);break}case"startArray":{let i=[];o(i),t.push(i);break}case"endObject":case"endArray":t.pop();break;case"key":r=s.key;break;case"primitive":o(s.value);break}return n===ms?{}:n}function gs(e,t){let r=fs(xr(e,t));return t?.reviver?Dr(r,t.reviver):r}function $r(e,t){let{reviver:r,...n}=t??{},o=gs(wd(e),n),s=t?.cyclicDiscriminatedArrays===!0?us(o):o;return r?Dr(s,r):s}function*wd(e){let t=0;for(;;){let r=e.indexOf(`
10
- `,t);if(r===-1){yield e.slice(t);return}yield e.slice(t,r),t=r+1}}function hs(e,t){let r=t("",e,[]);return r===void 0?jr(e,t,[]):Ir(e,r,t,[])}function Ir(e,t,r,n){return Se(t)&&(Array.isArray(e)||P(e))?jr(e,r,n):jr(q(t),r,n)}function jr(e,t,r){return Array.isArray(e)?Sd(e,t,r):P(e)?Ed(e,t,r):e}function Ed(e,t,r){let n={};for(let[o,s]of Object.entries(e)){let i=[...r,o],a=t(o,s,i);a!==void 0&&Ne(n,o,Ir(s,a,t,i))}return n}function Sd(e,t,r){let n=[];for(let o=0;o<e.length;o+=1){let s=[...r,o],i=t(String(o),e[o],s);i!==void 0&&n.push(Ir(e[o],i,t,s))}return n}function Me(e,t={}){if(t.objectArrayColumns===!0){let o=ys(e);if(o!==void 0)return[{name:"values",fixedLength:o,self:!0}]}let r=Object.keys(e[0]??{});if(r.length===0)return;for(let o of e)if(!P(o)||Object.keys(o).length!==r.length||r.some(s=>!Object.prototype.hasOwnProperty.call(o,s)))return;let n=[];for(let o of r){let s=e.map(a=>a[o]);if(s.every(Y)){n.push({name:o});continue}if(t.primitiveArrayColumns===!0&&s.every(a=>Array.isArray(a)&&a.every(Y))){n.push({name:o,listDelimiter:";"});continue}if(t.objectArrayColumns===!0&&s.every(Array.isArray)){let a=ys(s);if(a!==void 0){n.push({name:o,fixedLength:a});continue}let l=s.flat(),u=Me(l,t);if(u!==void 0){n.push({name:o,children:u,childTable:!0});continue}}if(!s.every(a=>P(a)&&Object.keys(a).length>0))return;let i=Me(s,t);if(i===void 0)return;n.push({name:o,children:i})}return n}function St(e,t={}){let r=Object.values(e);if(!(r.length<2)&&r.every(n=>P(n)&&Object.keys(n).length>0))return Me(r,t)}function ys(e){let t=Array.isArray(e[0])?e[0].length:0;if(t!==0)return e.every(r=>Array.isArray(r)&&r.length===t&&r.every(Y))?t:void 0}function M(e,t={}){return Array.from(bs(e,t)).join(`
11
- `)}function bs(e,t={}){let r=t.delimiter??",";if(![",","|"," "].includes(r))throw new TypeError("invalid delimiter");let n=t.indentSize??t.indent??2,o=t.maxDepth??Xe,s=o===Number.POSITIVE_INFINITY?0:Math.max(0,Math.floor(o)),i=q(e),a=t.replacer?hs(i,t.replacer):i,l={delimiter:r,indentSize:n,maxDepth:s,primitiveArrayColumns:t.primitiveArrayColumns===!0,objectArrayColumns:t.objectArrayColumns===!0};if(t.cyclicDiscriminatedArrays===!0){let u=ps(a);if(u!==void 0)return u.trimEnd().split(`
12
- `)}return vd(a,l)}function vd(e,t){if(Y(e))return[N(e,t.delimiter)];if(Array.isArray(e))return ks(void 0,e,0,t);let r=St(e,t);return r===void 0?vt(e,0,t):_s(void 0,e,r,0,t)}function vt(e,t,r){return Be(t,r),Object.entries(e).flatMap(([n,o])=>Td(n,o,t,r))}function Td(e,t,r,n){let o=G(r,n)+L(e);if(Y(t))return[`${o}: ${N(t,n.delimiter)}`];if(Array.isArray(t))return ks(e,t,r,n);let s=St(t,n);if(s!==void 0)return _s(e,t,s,r,n);let i=[`${o}:`];return Object.keys(t).length>0&&i.push(...vt(t,r+1,n)),i}function _s(e,t,r,n,o){Be(n,o);let s=Object.entries(t);Ze(r,n+1,o);let i=[G(n,o)+X(e,s.length,r,o.delimiter,!0)];for(let[a,l]of s){let u=Fe(l,r,n+2,o);i.push(G(n+1,o)+L(a)+": "+u.cells),i.push(...u.children)}return i}function ks(e,t,r,n){Be(r,n);let o=G(r,n);if(t.length===0)return[e===void 0?`${o}[]`:`${o}${L(e)}: []`];if(t.every(Y))return[o+X(e,t.length,void 0,n.delimiter)+" "+Cr(t,n.delimiter)];let s=Me(t,n);if(s!==void 0)return xd(e,t,s,r,n);let i=[o+X(e,t.length,void 0,n.delimiter)];for(let a of t)i.push(...Lr(a,r+1,n));return i}function xd(e,t,r,n,o){Ze(r,n+1,o);let s=[G(n,o)+X(e,t.length,r,o.delimiter)];for(let i of t){let a=Fe(i,r,n+2,o);s.push(G(n+1,o)+a.cells),s.push(...a.children)}return s}function Lr(e,t,r){Be(t,r);let n=G(t,r)+"-";if(Y(e))return[`${n} ${N(e,r.delimiter)}`];if(Array.isArray(e)){if(e.length===0)return[`${n} ${X(void 0,0,void 0,r.delimiter)}`];if(e.every(Y))return[`${n} ${X(void 0,e.length,void 0,r.delimiter)} ${Cr(e,r.delimiter)}`];let o=[`${n} ${X(void 0,e.length,void 0,r.delimiter)}`];for(let s of e)o.push(...Lr(s,t+1,r));return o}return Ad(e,t,r)}function Ad(e,t,r){Be(t,r);let n=Object.entries(e);if(n.length===0)return[G(t,r)+"-"];let[[o,s],...i]=n,a=Pd(o,s,t,r),l;if(a!==void 0)l=a;else if(Y(s))l=[G(t,r)+"- "+L(o)+": "+N(s,r.delimiter)];else if(Array.isArray(s))if(s.length===0)l=[G(t,r)+"- "+L(o)+": []"];else{l=[G(t,r)+"- "+X(o,s.length,void 0,r.delimiter)];for(let u of s)l.push(...Lr(u,t+2,r))}else l=[G(t,r)+"- "+L(o)+":"],Object.keys(s).length>0&&l.push(...vt(s,t+2,r));return i.length>0&&l.push(...vt(Object.fromEntries(i),t+1,r)),l}function Pd(e,t,r,n){if(Array.isArray(t)&&t.length>0&&t.every(Y))return[G(r,n)+"- "+X(e,t.length,void 0,n.delimiter)+" "+Cr(t,n.delimiter)];if(Array.isArray(t)&&t.every(P)){let o=Me(t,n);if(o!==void 0){Ze(o,r+1,n);let s=[G(r,n)+"- "+X(e,t.length,o,n.delimiter)];for(let i of t){let a=Fe(i,o,r+3,n);s.push(G(r+2,n)+a.cells),s.push(...a.children)}return s}}if(P(t)){let o=St(t,n);if(o!==void 0){Ze(o,r+1,n);let s=Object.entries(t),i=[G(r,n)+"- "+X(e,s.length,o,n.delimiter,!0)];for(let[a,l]of s){let u=Fe(l,o,r+3,n);i.push(G(r+2,n)+L(a)+": "+u.cells),i.push(...u.children)}return i}}}function X(e,t,r,n,o=!1){let s=e===void 0?"":L(e),i=o?":":"",a=n===","?"":n,l=r===void 0?"":`{${Rs(r,n)}}`;return`${s}[${t}${i}${a}]${l}:`}function Rs(e,t){return e.map(r=>{let n=L(r.name);if(r.listDelimiter!==void 0)return`${n}[${r.listDelimiter}]`;if(r.fixedLength!==void 0){let o=t===","?"":t;return`${n}[${r.fixedLength}${o}]`}return n+(r.children===void 0?"":`{${Rs(r.children,t)}}`)}).join(t)}function Fe(e,t,r,n){let o=[],s=[];for(let i of t){let a=i.self===!0?e:e[i.name];if(i.childTable===!0){o.push(String(a.length));for(let l of a){let u=Fe(l,i.children??[],r+1,n);s.push(G(r,n)+u.cells,...u.children)}}else if(i.fixedLength!==void 0)o.push(...a.map(l=>N(l,n.delimiter)));else if(i.listDelimiter!==void 0)o.push(a.map(l=>Od(l,n.delimiter,i.listDelimiter)).join(i.listDelimiter));else if(i.children!==void 0){let l=Fe(a,i.children,r,n);o.push(l.cells),s.push(...l.children)}else o.push(N(a,n.delimiter))}return{cells:o.join(n.delimiter),children:s}}function Od(e,t,r){return typeof e!="string"?N(e,t):fr(e,t)||e.includes(r)?yt(e):e}function Cr(e,t){return e.map(r=>N(r,t)).join(t)}function G(e,t){return" ".repeat(e*t.indentSize)}function Be(e,t){if(t.maxDepth!==0&&e>t.maxDepth)throw E(0,`maximum nesting depth exceeded (maxDepth ${t.maxDepth})`)}function Ze(e,t,r){Be(t,r);for(let n of e)n.children!==void 0&&Ze(n.children,t+1,r)}var lh=new TextEncoder,dh=new TextDecoder;var K=$r;var Gd="toon";function Ss(e){return e.trimStart().startsWith("{")?"json":"toon"}function vs(e){let t=0;for(;e[t]===`
13
- `||e[t]==="\r";)t+=1;let r=e.slice(t);if(r==="")return null;let n=Ss(r);if(n==="json"){let s=r.indexOf(`
8
+ `),r.common.length>0&&_s(e,"common",r.common,r.commonRows);for(let n of r.groups)_s(e,n.label,n.fields,n.rows)}function _s(e,t,r,n){e.push(" ",N(t),"[",String(n.length),Ge,"]{",r.map(N).join(Ge),`}:
9
+ `);for(let o of n)e.push(" ",r.map(s=>B(o[s],Ge)).join(Ge),`
10
+ `)}function Ld(e){return e!==""&&Cr(e)}function Lr(e,t,r,n=new Set){if(!Cr(t))return!1;if(wt(e))return r[t]=e,!0;if(Array.isArray(e)){if(n.has(e))return!1;n.add(e),r[`${t}.length`]=e.length;let o=e.every((s,i)=>Lr(s,`${t}.${i}`,r,n));return n.delete(e),o}if(P(e)){if(n.has(e))return!1;n.add(e);let o=Object.entries(e).every(([s,i])=>!s.includes(".")&&Lr(i,`${t}.${s}`,r,n));return n.delete(e),o}return!1}function Cd(e){let t=Object.keys(e[0]??{});if(e.every(r=>Nd(Object.keys(r),t)))return t.every(Cr)?t:void 0}function Nd(e,t){return e.length===t.length&&e.every((r,n)=>r===t[n])}function Cr(e){return e.split(".").every(t=>/^[A-Za-z_][A-Za-z0-9_]*$|^(?:0|[1-9][0-9]*)$/.test(t))}function Nr(e,t){let r=Mr(e,t,[]),n=t("",r,[]);return n===void 0?r:J(n)}function Mr(e,t,r){return Array.isArray(e)?Fd(e,t,r):P(e)?Md(e,t,r):e}function Md(e,t,r){let n={};for(let[o,s]of Object.entries(e)){if(s===void 0)continue;let i=[...r,o],a=t(o,Mr(s,t,i),i);a!==void 0&&He(n,o,J(a))}return n}function Fd(e,t,r){let n=[];for(let o=0;o<e.length;o+=1){let s=[...r,o],i=t(String(o),Mr(e[o],t,s),s);i!==void 0&&n.push(J(i))}return n}var Es=Symbol("unset");function Ss(e){let t=[],r,n=Es,o=s=>{let i=t[t.length-1];i===void 0?n=s:Array.isArray(i)?i.push(s):Object.defineProperty(i,r,{value:s,enumerable:!0,writable:!0,configurable:!0})};for(let s of e)switch(s.type){case"startObject":{let i={};o(i),t.push(i);break}case"startArray":{let i=[];o(i),t.push(i);break}case"endObject":case"endArray":t.pop();break;case"key":r=s.key;break;case"primitive":o(s.value);break}return n===Es?{}:n}function vs(e,t){let r=Ss(jr(e,t));return t?.reviver?Nr(r,t.reviver):r}function Fr(e,t){let{reviver:r,...n}=t??{},o=vs(Bd(e),n),s=t?.cyclicDiscriminatedArrays===!0?ks(o):o;return r?Nr(s,r):s}function*Bd(e){let t=0;for(;;){let r=e.indexOf(`
11
+ `,t);if(r===-1){yield e.slice(t);return}yield e.slice(t,r),t=r+1}}function Ts(e,t){let r=t("",e,[]);return r===void 0?Br(e,t,[]):Ur(e,r,t,[])}function Ur(e,t,r,n){return Ae(t)&&(Array.isArray(e)||P(e))?Br(e,r,n):Br(J(t),r,n)}function Br(e,t,r){return Array.isArray(e)?Hd(e,t,r):P(e)?Ud(e,t,r):e}function Ud(e,t,r){let n={};for(let[o,s]of Object.entries(e)){let i=[...r,o],a=t(o,s,i);a!==void 0&&He(n,o,Ur(s,a,t,i))}return n}function Hd(e,t,r){let n=[];for(let o=0;o<e.length;o+=1){let s=[...r,o],i=t(String(o),e[o],s);i!==void 0&&n.push(Ur(e[o],i,t,s))}return n}function We(e,t={}){if(t.objectArrayColumns===!0){let o=xs(e);if(o!==void 0)return[{name:"values",fixedLength:o,self:!0}]}let r=Object.keys(e[0]??{});if(r.length===0)return;for(let o of e)if(!P(o)||Object.keys(o).length!==r.length||r.some(s=>!Object.prototype.hasOwnProperty.call(o,s)))return;let n=[];for(let o of r){let s=e.map(a=>a[o]);if(s.every(Q)){n.push({name:o});continue}if(t.primitiveArrayColumns===!0&&s.every(a=>Array.isArray(a)&&a.every(Q))){n.push({name:o,listDelimiter:";"});continue}if(t.objectArrayColumns===!0&&s.every(Array.isArray)){let a=xs(s);if(a!==void 0){n.push({name:o,fixedLength:a});continue}let l=s.flat(),u=We(l,t);if(u!==void 0){n.push({name:o,children:u,childTable:!0});continue}}if(!s.every(a=>P(a)&&Object.keys(a).length>0))return;let i=We(s,t);if(i===void 0)return;n.push({name:o,children:i})}return n}function Ot(e,t={}){let r=Object.values(e);if(!(r.length<2)&&r.every(n=>P(n)&&Object.keys(n).length>0))return We(r,t)}function xs(e){let t=Array.isArray(e[0])?e[0].length:0;if(t!==0)return e.every(r=>Array.isArray(r)&&r.length===t&&r.every(Q))?t:void 0}function U(e,t={}){return Array.from(As(e,t)).join(`
12
+ `)}function As(e,t={}){let r=t.delimiter??",";if(![",","|"," "].includes(r))throw new TypeError("invalid delimiter");let n=t.indentSize??t.indent??2,o=t.maxDepth??rt,s=o===Number.POSITIVE_INFINITY?0:Math.max(0,Math.floor(o)),i=J(e),a=t.replacer?Ts(i,t.replacer):i,l={delimiter:r,indentSize:n,maxDepth:s,primitiveArrayColumns:t.primitiveArrayColumns===!0,objectArrayColumns:t.objectArrayColumns===!0};if(t.cyclicDiscriminatedArrays===!0){let u=ws(a);if(u!==void 0)return u.trimEnd().split(`
13
+ `)}return Wd(a,l)}function Wd(e,t){if(Q(e))return[B(e,t.delimiter)];if(Array.isArray(e))return Os(void 0,e,0,t);let r=Ot(e,t);return r===void 0?Dt(e,0,t):Ps(void 0,e,r,0,t)}function Dt(e,t,r){return Ke(t,r),Object.entries(e).flatMap(([n,o])=>qd(n,o,t,r))}function qd(e,t,r,n){let o=$(r,n)+N(e);if(Q(t))return[`${o}: ${B(t,n.delimiter)}`];if(Array.isArray(t))return Os(e,t,r,n);let s=Ot(t,n);if(s!==void 0)return Ps(e,t,s,r,n);let i=[`${o}:`];return Object.keys(t).length>0&&i.push(...Dt(t,r+1,n)),i}function Ps(e,t,r,n,o){Ke(n,o);let s=Object.entries(t);nt(r,n+1,o);let i=[$(n,o)+ee(e,s.length,r,o.delimiter,!0)];for(let[a,l]of s){let u=qe(l,r,n+2,o);i.push($(n+1,o)+N(a)+": "+u.cells),i.push(...u.children)}return i}function Os(e,t,r,n){Ke(r,n);let o=$(r,n);if(t.length===0)return[e===void 0?`${o}[]`:`${o}${N(e)}: []`];if(t.every(Q))return[o+ee(e,t.length,void 0,n.delimiter)+" "+Wr(t,n.delimiter)];let s=We(t,n);if(s!==void 0)return Kd(e,t,s,r,n);let i=[o+ee(e,t.length,void 0,n.delimiter)];for(let a of t)i.push(...Hr(a,r+1,n));return i}function Kd(e,t,r,n,o){nt(r,n+1,o);let s=[$(n,o)+ee(e,t.length,r,o.delimiter)];for(let i of t){let a=qe(i,r,n+2,o);s.push($(n+1,o)+a.cells),s.push(...a.children)}return s}function Hr(e,t,r){Ke(t,r);let n=$(t,r)+"-";if(Q(e))return[`${n} ${B(e,r.delimiter)}`];if(Array.isArray(e)){if(e.length===0)return[`${n} ${ee(void 0,0,void 0,r.delimiter)}`];if(e.every(Q))return[`${n} ${ee(void 0,e.length,void 0,r.delimiter)} ${Wr(e,r.delimiter)}`];let o=[`${n} ${ee(void 0,e.length,void 0,r.delimiter)}`];for(let s of e)o.push(...Hr(s,t+1,r));return o}return Vd(e,t,r)}function Vd(e,t,r){Ke(t,r);let n=Object.entries(e);if(n.length===0)return[$(t,r)+"-"];let[[o,s],...i]=n,a=Jd(o,s,t,r),l;if(a!==void 0)l=a;else if(Q(s))l=[$(t,r)+"- "+N(o)+": "+B(s,r.delimiter)];else if(Array.isArray(s))if(s.length===0)l=[$(t,r)+"- "+N(o)+": []"];else{l=[$(t,r)+"- "+ee(o,s.length,void 0,r.delimiter)];for(let u of s)l.push(...Hr(u,t+2,r))}else l=[$(t,r)+"- "+N(o)+":"],Object.keys(s).length>0&&l.push(...Dt(s,t+2,r));return i.length>0&&l.push(...Dt(Object.fromEntries(i),t+1,r)),l}function Jd(e,t,r,n){if(Array.isArray(t)&&t.length>0&&t.every(Q))return[$(r,n)+"- "+ee(e,t.length,void 0,n.delimiter)+" "+Wr(t,n.delimiter)];if(Array.isArray(t)&&t.every(P)){let o=We(t,n);if(o!==void 0){nt(o,r+1,n);let s=[$(r,n)+"- "+ee(e,t.length,o,n.delimiter)];for(let i of t){let a=qe(i,o,r+3,n);s.push($(r+2,n)+a.cells),s.push(...a.children)}return s}}if(P(t)){let o=Ot(t,n);if(o!==void 0){nt(o,r+1,n);let s=Object.entries(t),i=[$(r,n)+"- "+ee(e,s.length,o,n.delimiter,!0)];for(let[a,l]of s){let u=qe(l,o,r+3,n);i.push($(r+2,n)+N(a)+": "+u.cells),i.push(...u.children)}return i}}}function ee(e,t,r,n,o=!1){let s=e===void 0?"":N(e),i=o?":":"",a=n===","?"":n,l=r===void 0?"":`{${Ds(r,n)}}`;return`${s}[${t}${i}${a}]${l}:`}function Ds(e,t){return e.map(r=>{let n=N(r.name);if(r.listDelimiter!==void 0)return`${n}[${r.listDelimiter}]`;if(r.fixedLength!==void 0){let o=t===","?"":t;return`${n}[${r.fixedLength}${o}]`}return n+(r.children===void 0?"":`{${Ds(r.children,t)}}`)}).join(t)}function qe(e,t,r,n){let o=[],s=[];for(let i of t){let a=i.self===!0?e:e[i.name];if(i.childTable===!0){o.push(String(a.length));for(let l of a){let u=qe(l,i.children??[],r+1,n);s.push($(r,n)+u.cells,...u.children)}}else if(i.fixedLength!==void 0)o.push(...a.map(l=>B(l,n.delimiter)));else if(i.listDelimiter!==void 0)o.push(a.map(l=>zd(l,n.delimiter,i.listDelimiter)).join(i.listDelimiter));else if(i.children!==void 0){let l=qe(a,i.children,r,n);o.push(l.cells),s.push(...l.children)}else o.push(B(a,n.delimiter))}return{cells:o.join(n.delimiter),children:s}}function zd(e,t,r){return typeof e!="string"?B(e,t):Rr(e,t)||e.includes(r)?Et(e):e}function Wr(e,t){return e.map(r=>B(r,t)).join(t)}function $(e,t){return" ".repeat(e*t.indentSize)}function Ke(e,t){if(t.maxDepth!==0&&e>t.maxDepth)throw E(0,`maximum nesting depth exceeded (maxDepth ${t.maxDepth})`)}function nt(e,t,r){Ke(t,r);for(let n of e)n.children!==void 0&&nt(n.children,t+1,r)}var Qd=[kr,"|"," "];var Xd=8,$s=/^[A-Za-z0-9_-]+$/,zh=new TextEncoder,Yh=new TextDecoder;function Zd(e,t){if(!(e.startsWith("[=")&&e.endsWith("]")))return null;let r=e.slice(2,-1);if(!/^[0-9]+$/.test(r))throw O(t,"invalid trailer count");return Number.parseInt(r,10)}function eu(e,t){if(!$s.test(e))throw O(t,"invalid tag")}function tu(e,t){let r=e.indexOf(":");if(r<=0)return null;let n=e.slice(0,r);if(!$s.test(n)){if(/^[A-Za-z0-9_-]/.test(n)&&/^[^,[\]|{}:\t ]+$/.test(n))throw O(t,"invalid tag");return null}return{tag:n,cellsText:e.slice(r+1)}}function ru(e,t){if(!e.startsWith("["))return null;let r=e.slice(1),n=r.indexOf("]");if(n===-1)throw O(t,"invalid header");let o=r.slice(0,n),s=o.startsWith("~"),i=s?o.slice(1):o;if(!s&&i.startsWith("="))return null;if(!Qd.includes(i)&&i!=="")throw O(t,"invalid header delimiter");let a=i===""?kr:i,l=r.slice(n+1),u=null;if(!s&&l.startsWith("<")){let m=l.indexOf(">");if(m===-1)throw O(t,"invalid tag");if(u=l.slice(1,m),eu(u,t),i!=="")throw O(t,"invalid header delimiter");l=l.slice(m+1)}if(!l.startsWith("{")||!l.endsWith("}:"))throw O(t,"invalid header");let c=l.slice(1,-2),p;try{p=Oe(c,a,t).map(m=>Pe(m,t)[0])}catch(m){throw tt(m)}if(p.length===0||p.some(m=>m===""))throw O(t,"invalid header fields");return{delimiter:a,fields:p,fieldText:c,continuation:s,tag:u}}function nu(e,t,r){if(e===null||e.delimiter===void 0)throw O(r,"continuation header before header");if(e.delimiter!==t.delimiter||e.fieldText!==t.fieldText)throw O(r,"continuation header mismatch")}function Gs(e,t,r,n){let o;try{o=Oe(e,t,n)}catch(s){throw tt(s)}if(o.length!==r)throw O(n,"row arity mismatch");for(let s of o)try{F(s,n)}catch(i){throw tt(i)}return o}function ou(e,t,r){let n={};return e.forEach((o,s)=>{try{De(n,o,F(t[s],r))}catch(i){throw tt(i)}}),n}function su(e,t,r){if(e.startsWith("- "))throw O(t,"reserved line prefix");let n=Zd(e,t);if(n!==null){if(r===null||r.delimiter===void 0)throw O(t,"trailer without header");if(r.rowCount!==n)throw O(t,"trailer count mismatch");return{kind:"trailer"}}let o=ru(e,t);if(o!==null)return o.continuation?(nu(r,o,t),{kind:"continuation"}):o.tag!==null?{kind:"tag-header",header:o}:{kind:"header",header:o};let s=tu(e,t);if(s!==null){let i=r?.taggedLanes?.get(s.tag);if(i===void 0)throw O(t,"unknown tag");return{kind:"tagged-row",tag:s.tag,cells:Gs(s.cellsText,i.delimiter,i.fields.length,t)}}if(r===null||r.delimiter===void 0)throw O(t,"row before header");return{kind:"row",cells:Gs(e,r.delimiter,r.fields.length,t)}}function iu(e,t={}){let r=[],n=new Map,o=[],s=[],i=null,a=!1,l=!1;function u(b,_){let S=s.at(-1);if(S!==void 0&&S.lane===b.lane&&S.delimiter===b.delimiter&&S.fieldText===b.fieldText){S.rows.push(_);return}s.push({lane:b.lane,delimiter:b.delimiter,fields:b.fields,fieldText:b.fieldText,rows:[_]})}function c(){i!==null&&o.push({delimiter:i.delimiter,fields:i.fields,fieldText:i.fieldText,lane:i.lane,rows:i.rows})}function p(b,_,S){let v=n.get(b);if(v===void 0){if(n.size>=Xd)throw O(S,"too many tagged lanes");v={segments:[],current:null},n.set(b,v),r.push(b)}else v.current!==null&&v.segments.push(v.current);v.current={lane:b,delimiter:_.delimiter,fields:_.fields,fieldText:_.fieldText,rows:[]},v.delimiter=_.delimiter,v.fields=_.fields,v.fieldText=_.fieldText}if(Bo(e).forEach((b,_)=>{let S=_+1;if(b==="")return;let v=i===null?{taggedLanes:n}:{delimiter:i.delimiter,fields:i.fields,fieldText:i.fieldText,rowCount:i.rows.length,taggedLanes:n},T=su(b,S,v);if(T.kind==="trailer"){c(),i=null;return}if(T.kind!=="continuation"){if(T.kind==="tag-header"){l=!0,p(T.header.tag,T.header,S);return}if(T.kind==="header"){c(),a||(r.push(null),a=!0),i={lane:null,delimiter:T.header.delimiter,fields:T.header.fields,fieldText:T.header.fieldText,rows:[]};return}if(T.kind==="tagged-row"){l=!0;let C=n.get(T.tag).current;C.rows.push(T.cells),u(C,T.cells);return}if(i===null)throw O(S,"row before header");i.rows.push(T.cells),u(i,T.cells)}}),!l)return c(),t.preserveInterleaving===!0,o;let m=[];c();for(let b of r){if(b===null){m.push(...o);continue}let _=n.get(b);m.push(..._.segments),_.current!==null&&m.push(_.current)}return t.preserveInterleaving===!0?s:m}function ae(e){return iu(e).flatMap(t=>t.rows.map(r=>ou(t.fields,r,0)))}var z=Fr;var au="toon";function Ls(e){let t=e.trimStart()[0];return t==="{"||t==="["?"json":"toon"}function Cs(e){let t=0;for(;e[t]===`
14
+ `||e[t]==="\r";)t+=1;let r=e.slice(t);if(r==="")return null;let n=Ls(r);if(n==="json"){let s=r.indexOf(`
14
15
  `);return s<0?null:{frame:r.slice(0,s),dialect:n,rest:r.slice(s+1)}}let o=r.indexOf(`
15
16
 
16
- `);return o<0?null:{frame:r.slice(0,o+1),dialect:n,rest:r.slice(o+2)}}function Ts(e){let t=Ss(e)==="json"?Nr:ws,r=t===Nr?ws:Nr;try{return t(e)}catch(n){try{return r(e)}catch{throw n}}}function Nr(e){return JSON.parse(e)}function ws(e){return K(e)}function xs(e,t){if(t==="toon"){let r=$d(e);if(r!==null)return r.endsWith(`
17
+ `);return o<0?null:{frame:r.slice(0,o+1),dialect:n,rest:r.slice(o+2)}}function Ns(e){let t=Ls(e)==="json"?qr:js,r=t===qr?js:qr;try{return t(e)}catch(n){try{return r(e)}catch{throw n}}}function qr(e){return JSON.parse(e)}function js(e){return z(e)}function Ms(e,t){if(Array.isArray(e))return`${JSON.stringify(e)}
18
+ `;if(t==="toon"){let r=lu(e);if(r!==null)return r.endsWith(`
17
19
  `)?`${r}
18
20
  `:`${r}
19
21
 
20
22
  `}return`${JSON.stringify(e)}
21
- `}function $d(e){try{let t=JSON.stringify(e);if(t===void 0)return null;let r=M(JSON.parse(t));return r.trim()===""?null:r}catch{return null}}function As(e,t){return!Es(e)||!Es(t)||t.ok!==!1?!1:typeof e.id=="string"&&typeof t.id=="string"&&t.id!==e.id}function Es(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var Ps=new Set;function Os(e){return Ps.has(e)?"json":Gd}function Ds(e){Ps.add(e)}var Cd=108;async function Tt(e,t,r="resident server"){let n=e.wire,o=n??Os(e.socketPath),s=await Gs(e,t,r,o);return n||o==="json"||!As(t,s)?s:(Ds(e.socketPath),await Gs(e,t,r,"json"))}async function Gs(e,t,r,n){let o=e.timeoutMs??1e3;return await new Promise((s,i)=>{let a=Id(e.socketPath),l=!1,u="",c=setTimeout(()=>{p(()=>i(new Error(`${r} timed out`))),a.destroy()},o);function p(g){l||(l=!0,clearTimeout(c),g())}a.on("connect",()=>{a.write(xs(t,n))}),a.on("data",g=>{u+=g.toString("utf8");let b=vs(u);b&&(u=b.rest,p(()=>{try{s(Ts(b.frame))}catch(_){i(_)}}),a.end())}),a.on("error",g=>p(()=>i(g))),a.on("close",()=>{l||p(()=>i(new Error(`${r} closed without response`)))})})}function se(e){if(!Number.isInteger(e)||e<=0)return!1;try{return process.kill(e,0),!0}catch(t){return t.code==="EPERM"}}var Nd="/tmp";function $s(e){let t=e.env??process.env,r=jd("sha256").update(e.key).digest("hex").slice(0,20),n=l=>et(l,e.socketFileName).length<Cd,o=t.XDG_RUNTIME_DIR;if(o){let l=et(o,"red-skills",r);if(n(l))return l}let s=e.uid??(typeof process.getuid=="function"?process.getuid():"nouid"),i=et(`red-skills-${s}`,r),a=et(Ld(),i);return n(a)||process.platform==="win32"?a:et(Nd,i)}import{randomUUID as Md}from"node:crypto";async function Te(e,t=250){try{return(await Tt({socketPath:e,timeoutMs:t},{id:Md(),op:"ping"},"redskilled daemon")).ok===!0}catch{return!1}}var js="@reddb-io/red-skills";var Mr="redskilled";function Fd(e){return e===Mr?["rsp","rsp-core"]:[]}var dy=new Set(["code-nav",Mr,...Fd(Mr)]);var Bd="<version>";function tt(e,t=[],r){let n=r&&r.trim().length>0?r.trim():Bd;return[`npx -y -p ${js}@${n}`,e,...t].join(" ")}function Fr(e){let t=e.socketPath,r=Ud(e);return e.answers?{version:1,kind:"answering",socket_path:t,holder:r,reason:`a redskilled daemon answered on ${JSON.stringify(t)}`,repair:"nothing to repair"}:r!=null?{version:1,kind:"held-unresponsive",socket_path:t,holder:r,reason:`redskilled pid ${r.pid} is alive and has held ${JSON.stringify(t)} since ${r.acquired_at}${r.uptime_ms==null?"":` (up ${Is(r.uptime_ms)})`}, but it did not answer a ping \u2014 this is a daemon that could not be REACHED, not one that is missing.`,repair:`Do not provision: a daemon is already running. Inspect it (\`ps -p ${r.pid}\`), or stop it with \`${tt("red-skills-redskilled",["stop"])}\` and let the next client start a fresh one.`}:{version:1,kind:"absent",socket_path:t,holder:null,reason:`nothing answered on ${JSON.stringify(t)} and no live process holds its lease`,repair:`Install and start one with \`${tt("red-skills-redskilled",["provision"])}\` (or \`/red-setup\`), then retry.`}}function Br(e){return`${e.reason} ${e.repair}`}function Ud(e){let t=e.lease;return t==null||e.holderAlive!==!0||t.socket_path!==e.socketPath?null:{pid:t.pid,socket_path:t.socket_path,acquired_at:t.acquired_at,renewed_at:t.renewed_at,uptime_ms:Hd(t.acquired_at,e.now??new Date().toISOString())}}function Hd(e,t){let r=Date.parse(e),n=Date.parse(t);return!Number.isFinite(r)||!Number.isFinite(n)?null:Math.max(0,n-r)}function Is(e){let t=Math.floor(e/1e3),r=Math.floor(t/3600),n=Math.floor(t%3600/60),o=t%60;return r>0?`${r}h${String(n).padStart(2,"0")}m`:n>0?`${n}m${String(o).padStart(2,"0")}s`:`${o}s`}import{mkdir as hy,readFile as Wd,rename as yy,rm as by,writeFile as _y}from"node:fs/promises";async function Ur(e){let t;try{t=await Wd(e,"utf8")}catch(n){if(n.code==="ENOENT")return;throw n}let r=qd(t);return Kd(r)?r:void 0}function qd(e){let t=e.trim();if(!t)return null;try{return JSON.parse(t)}catch{try{return K(t)}catch{return null}}}function Kd(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;if(t.version!==1||!Number.isInteger(t.pid)||t.pid<=0)return!1;for(let r of["start_time","session_key_hash","machine_id_hash","socket_path","acquired_at","renewed_at"])if(typeof t[r]!="string"||t[r].length===0)return!1;return!0}import{chmod as Vd,mkdir as Jd,readFile as zd,rm as Yd,writeFile as Qd}from"node:fs/promises";import{dirname as Ls,join as Fs}from"node:path";import{tmpdir as Cs}from"node:os";var Xd="redskilled.machine.claim.toon",Wr="REDSKILLED_MACHINE_DIR",Zd=8,xe=class extends Error{constructor(r,n,o){super(tu(r,n,o));this.claimPath=r;this.reason=n;this.claim=o;this.name="RedskilledMachineHeldError"}},Ns;function Bs(){return Ns??={pid:process.pid,startTime:new Date(Date.now()-Math.round(process.uptime()*1e3)).toISOString(),uid:typeof process.getuid=="function"?process.getuid():-1},Ns}function eu(e={machineIdHash:"unknown"}){let t=e.env??process.env,r=t[Wr]?.trim();if(r)return r;let o=(e.platform??process.platform)==="win32"?t.PROGRAMDATA?.trim()||Cs():Cs();return Fs(o,`redskilled-${e.machineIdHash}`)}function xt(e){return Fs(eu(e),Xd)}function qr(e,t,r={}){let n=r.clock??(()=>new Date().toISOString()),o=r.isPidAlive??se;async function s(){let l;try{l=await zd(e,"utf8")}catch(c){if(c.code==="ENOENT"||Hr(c))return;throw c}let u=nu(l);return ou(u)?u:void 0}function i(l,u){return{version:1,scope:"machine",pid:l.pid,start_time:l.startTime,uid:l.uid,machine_id_hash:t.machineIdHash,session_key_hash:t.sessionKeyHash,socket_path:t.socketPath,acquired_at:u,renewed_at:u}}async function a(){try{return await Yd(e,{force:!0}),!0}catch(l){if(Hr(l))return!1;throw l}}return{claimPath:e,read:s,async claim(l){await Jd(Ls(e),{recursive:!0,mode:1023})!=null&&await Vd(Ls(e),1023).catch(()=>{});let c=!1;for(let p=0;p<Zd;p+=1){let g=i(l,n());try{return await Qd(e,ru(g),{encoding:"utf8",mode:420,flag:"wx"}),{claimed:!0,reaped:c,claim:g}}catch(_){if(_.code!=="EEXIST"){if(Hr(_))return{claimed:!1,reason:"stale-claim-not-reapable"};throw _}}let b=await s();if(!b){if(!await a())return{claimed:!1,reason:"stale-claim-not-reapable"};c=!0;continue}if(Ms(b,l,t.socketPath))return{claimed:!0,reaped:c,claim:b};if(await o(b.pid))return{claimed:!1,reason:"held",claim:b};if(!await a())return{claimed:!1,reason:"stale-claim-not-reapable",claim:b};c=!0}return{claimed:!1,reason:"contended"}},async release(l){let u=await s();return!u||!Ms(u,l,t.socketPath)?!1:await a()}}}function tu(e,t,r){let n=r==null?"":` \u2014 held by pid ${r.pid} (uid ${r.uid}) on socket ${JSON.stringify(r.socket_path)}`;return t==="held"?`this machine already has a redskilled daemon${n}; a second one would void the host budget, so none was started. Reach that daemon, or stop it before starting another.`:t==="stale-claim-not-reapable"?`the redskilled machine claim ${JSON.stringify(e)} is stale and cannot be removed by this user${n}; remove it as its owner, then start again. No second daemon was started.`:`the redskilled machine claim ${JSON.stringify(e)} changed hands repeatedly; no daemon was started.`}function Hr(e){let t=e?.code;return t==="EACCES"||t==="EPERM"||t==="EROFS"}function Ms(e,t,r){return e.pid===t.pid&&e.start_time===t.startTime&&e.socket_path===r}function ru(e){return`${M(e)}
22
- `}function nu(e){let t=e.trim();if(!t)return null;try{return JSON.parse(t)}catch{try{return K(t)}catch{return null}}}function ou(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;if(t.version!==1||t.scope!=="machine"||!Number.isInteger(t.pid)||t.pid<=0||!Number.isInteger(t.uid))return!1;for(let r of["start_time","machine_id_hash","session_key_hash","socket_path","acquired_at","renewed_at"])if(typeof t[r]!="string"||t[r].length===0)return!1;return!0}import{execFile as su}from"node:child_process";import{promisify as iu}from"node:util";var qy=iu(su),V=.5;var Ky=256*1024*1024,ie=1024*1024,Us=14*24*60*60*1e3,F={"process-deaths":{maxBytes:4*ie,maxAgeMs:Us,targetRatio:V},"github-spend":{maxBytes:8*ie,targetRatio:V},"github-balance":{maxBytes:64*1024,targetRatio:V},"github-balance-history":{maxBytes:2*ie,targetRatio:V},"castle-singleton-events":{maxBytes:2*ie,targetRatio:V},"redskilled-events":{maxBytes:4*ie,targetRatio:V},"rsp-telemetry-spool":{maxBytes:8*ie,targetRatio:V},"rsp-telemetry-corrections":{maxBytes:ie,targetRatio:V},"death-attributions":{maxBytes:ie,maxAgeMs:Us,targetRatio:V},"worker-log":{maxLines:5e4,targetRatio:V},"worker-liveness":{maxBytes:ie,targetRatio:V},"castle-history":{maxLines:1e4,targetRatio:V},countersigns:{maxBytes:4*ie,targetRatio:V}};import{isAbsolute as Yy,join as Kr,resolve as Qy}from"node:path";var au=".red";function lu(e){if(!e)throw new Error("root is required");return e.replace(/\/$/,"")}function du(e){return Kr(lu(e),au)}function uu(e){return Kr(du(e),"state")}function Hs(e){return Kr(uu(e),"statusline")}import{basename as tb,join as pu}from"node:path";var mu=pu("sys","kernel","random","boot_id");var hb=F["process-deaths"].maxAgeMs,yb=F["process-deaths"].maxBytes,bb=F["process-deaths"].targetRatio;var jb=F["death-attributions"].maxAgeMs,Ib=F["death-attributions"].maxBytes,Lb=F["death-attributions"].targetRatio;var Cb=512*1024;var Vs="redskilled.log.toonl",y_=F["redskilled-events"].maxBytes,b_=F["redskilled-events"].targetRatio;var I_=2*1024**3;function Js(e){return e==="single-object"?"rest":"graphql"}function zs(e,t){return e==="stable-poll"?"rest":Js(t)}function B(e){return{none:e}}function D(e,t,r,n,o,s,i){let a=typeof o=="string"?{fallback:o}:{fallback:null,noFallbackBecause:o.none};return{key:e,kind:"read",cardinality:t,volatility:r,surface:i??zs(r,t),budget:n,...a,...i?{only:i}:{},why:s}}function U(e,t,r,n,o){let s=typeof o=="string"?{fallback:o}:{fallback:null,noFallbackBecause:o.none};return{key:e,kind:"write",cardinality:"single-object",surface:t,budget:r,...s,why:n}}var Ys=[D("issue view","single-object","stable-poll","rest","graphql","one issue by number, repeatedly polled while usually unchanged; REST answers in one request"),D("pr view","single-object","stable-poll","rest","graphql","one pull request by number, polled per Worker per iteration"),D("repo view","single-object","stable-poll","rest","graphql","one repository's own metadata, repeatedly read while usually unchanged"),D("run view","single-object","stable-poll","rest",B("Actions runs have no GraphQL resource"),"one Actions run repeatedly polled to terminal"),D("release view","single-object","stable-poll","rest",B("release lookup has no GraphQL client method"),"one release by tag, repeatedly checked while usually absent or unchanged"),D("pr diff","single-object","one-shot","rest",B("the complete diff is exposed as a REST media type"),"one pull request's diff, read once for review"),D("issue list","multi-node","stable-poll","rest","graphql","a repeatedly polled, usually-unchanged issue collection; REST can make an unchanged poll free"),D("pr list","multi-node","stable-poll","rest","graphql","a repeatedly polled, usually-unchanged pull-request collection; REST can make an unchanged poll free"),D("pr checks","multi-node","stable-poll","rest","graphql","check contexts are repeatedly polled while awaiting terminal state"),D("release list","multi-node","stable-poll","rest",B("Releases has no GraphQL collection client method"),"release waits poll a usually-unchanged list"),D("run list","multi-node","stable-poll","rest",B("Actions has no GraphQL collection client method"),"run waits poll a usually-unchanged list"),D("label list","multi-node","one-shot","graphql","rest","a label connection loaded once for the current operation"),D("issue list (search)","multi-node","stable-poll","search",B("search is ineligible for diverted traffic"),"queue discovery polls usually-unchanged search results through the 30/min search connection"),D("pr list (search)","multi-node","stable-poll","search",B("search is ineligible for diverted traffic"),"PR discovery polls usually-unchanged search results through the 30/min search connection"),D("search issues","multi-repository","one-shot","search",B("search is ineligible for diverted traffic"),"a one-shot cross-repository read through the REST search endpoint, metered 30/min","rest"),D("search prs","multi-repository","one-shot","search",B("search is ineligible for diverted traffic"),"a one-shot cross-repository read through the REST search endpoint, metered 30/min","rest"),D("search repos","multi-repository","one-shot","search",B("search is ineligible for diverted traffic"),"a one-shot cross-repository read through the REST search endpoint, metered 30/min","rest"),D("api graphql","multi-node","one-shot","graphql",B("the caller explicitly chose GraphQL"),"the caller supplies one explicit GraphQL query rather than a routed poll"),D("api rest","single-object","one-shot","rest",B("the caller explicitly chose REST"),"the caller supplies one explicit REST path rather than a routed poll"),U("issue create","rest","rest","the write plan POSTs to `repos/{o}/{r}/issues`; GraphQL exposes createIssue","graphql"),U("issue edit","rest","rest","the write plan PATCHes labels and body; GraphQL exposes updateIssue","graphql"),U("issue close","rest","rest","the write plan PATCHes issue state; GraphQL exposes closeIssue","graphql"),U("issue reopen","graphql","graphql","gh uses reopenIssue; REST can PATCH the issue state to open","rest"),U("issue comment","rest","rest","the write plan POSTs an issue comment; GraphQL exposes addComment","graphql"),U("issue develop","graphql","graphql","linked-branch creation is a GraphQL mutation",B("linked-branch creation has no REST mutation")),U("pr create","rest","rest","the write plan POSTs a pull request; GraphQL exposes createPullRequest","graphql"),U("pr comment","rest","rest","a pull request comment is an issue comment; GraphQL exposes addComment","graphql"),U("pr merge","rest","rest","the default plan PUTs the merge; GraphQL exposes mergePullRequest","graphql"),U("pr close","graphql","graphql","gh uses closePullRequest; REST can PATCH the pull request state","rest"),U("pr edit","graphql","graphql","gh uses GraphQL mutations; REST can PATCH pull-request fields and issue labels","rest"),U("pr ready","graphql","graphql","marking ready-for-review is a GraphQL mutation",B("GitHub exposes no REST ready-for-review mutation")),U("pr update-branch","rest","rest","the write plan PUTs update-branch; GraphQL exposes updatePullRequestBranch","graphql"),U("label create","rest","rest","the write plan POSTs a label; GraphQL exposes createLabel","graphql")],Ou=new Map(Ys.map(e=>[e.key,e]));function Qs(e){let t=[],r=0;for(;r<e.length&&e[r].startsWith("-");)r+=e[r]==="-R"||e[r]==="--repo"?2:1;for(;r<e.length&&!e[r].startsWith("-")&&t.length<2;)t.push(e[r]),r+=1;return t}function Vr(e){let t=Qs(e);if(t.length===0)return"";if(t[0]==="api")return t[1]==="graphql"?"api graphql":"api rest";let r=t.length===1?t[0]:`${t[0]} ${t[1]}`;return t[1]==="list"&&e.includes("--search")?`${r} (search)`:r}var At=class extends Error{name="UnclassifiedGithubOperationError";operation;args;constructor(t){let r=Vr(t);super(`unclassified GitHub operation ${JSON.stringify(r||"(empty argv)")}: add an entry to GITHUB_OPERATIONS in packages/github/surface.ts stating its cardinality. Defaulting to GraphQL is what sent every single-object poll to the node-point pool (ADR 0132 decision 4).`),this.operation=r,this.args=[...t]}};function Xs(e){return Ou.get(Vr(e))??null}function Zs(e){let t=Xs(e);if(!t)throw new At(e);return t}function Jr(e){return Zs(e).surface}function he(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:"<environment undetectable>"}var $u="0.0.0-development",ju=`octokit-endpoint.js/${$u} ${he()}`,Iu={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":ju},mediaType:{format:""}};function Lu(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function Cu(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function ri(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(n=>{Cu(t[n])?n in e?r[n]=ri(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function ei(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function Yr(e,t,r){if(typeof t=="string"){let[o,s]=t.split(" ");r=Object.assign(s?{method:o,url:s}:{url:o},r)}else r=Object.assign({},t);r.headers=Lu(r.headers),ei(r),ei(r.headers);let n=ri(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(n.mediaType.previews=e.mediaType.previews.filter(o=>!n.mediaType.previews.includes(o)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(o=>o.replace(/-preview/,""))),n}function Nu(e,t){let r=/\?/.test(e)?"&":"?",n=Object.keys(t);return n.length===0?e:e+r+n.map(o=>o==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${o}=${encodeURIComponent(t[o])}`).join("&")}var Mu=/\{[^{}}]+\}/g;function Fu(e){return e.replace(/(?:^\W+)|(?:(?<!\W)\W+$)/g,"").split(/,/)}function Bu(e){let t=e.match(Mu);return t?t.map(Fu).reduce((r,n)=>r.concat(n),[]):[]}function ti(e,t){let r={__proto__:null};for(let n of Object.keys(e))t.indexOf(n)===-1&&(r[n]=e[n]);return r}function ni(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function He(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function rt(e,t,r){return t=e==="+"||e==="#"?ni(t):He(t),r?He(r)+"="+t:t}function Ue(e){return e!=null}function zr(e){return e===";"||e==="&"||e==="?"}function Uu(e,t,r,n){var o=e[r],s=[];if(Ue(o)&&o!=="")if(typeof o=="string"||typeof o=="number"||typeof o=="bigint"||typeof o=="boolean")o=o.toString(),n&&n!=="*"&&(o=o.substring(0,parseInt(n,10))),s.push(rt(t,o,zr(t)?r:""));else if(n==="*")Array.isArray(o)?o.filter(Ue).forEach(function(i){s.push(rt(t,i,zr(t)?r:""))}):Object.keys(o).forEach(function(i){Ue(o[i])&&s.push(rt(t,o[i],i))});else{let i=[];Array.isArray(o)?o.filter(Ue).forEach(function(a){i.push(rt(t,a))}):Object.keys(o).forEach(function(a){Ue(o[a])&&(i.push(He(a)),i.push(rt(t,o[a].toString())))}),zr(t)?s.push(He(r)+"="+i.join(",")):i.length!==0&&s.push(i.join(","))}else t===";"?Ue(o)&&s.push(He(r)):o===""&&(t==="&"||t==="?")?s.push(He(r)+"="):o===""&&s.push("");return s}function Hu(e){return{expand:Wu.bind(null,e)}}function Wu(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,o,s){if(o){let a="",l=[];if(r.indexOf(o.charAt(0))!==-1&&(a=o.charAt(0),o=o.substr(1)),o.split(/,/g).forEach(function(u){var c=/([^:\*]*)(?::(\d+)|(\*))?/.exec(u);l.push(Uu(t,a,c[1],c[2]||c[3]))}),a&&a!=="+"){var i=",";return a==="?"?i="&":a!=="#"&&(i=a),(l.length!==0?a:"")+l.join(i)}else return l.join(",")}else return ni(s)}),e==="/"?e:e.replace(/\/$/,"")}function oi(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),o,s=ti(e,["method","baseUrl","url","headers","request","mediaType"]),i=Bu(r);r=Hu(r).expand(s),/^http/.test(r)||(r=e.baseUrl+r);let a=Object.keys(e).filter(c=>i.includes(c)).concat("baseUrl"),l=ti(s,a);if(!/application\/octet-stream/i.test(n.accept)&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(c=>c.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let c=n.accept.match(/(?<![\w-])[\w-]+(?=-preview)/g)||[];n.accept=c.concat(e.mediaType.previews).map(p=>{let g=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${p}-preview${g}`}).join(",")}return["GET","HEAD"].includes(t)?r=Nu(r,l):"data"in l?o=l.data:Object.keys(l).length&&(o=l),!n["content-type"]&&typeof o<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof o>"u"&&(o=""),Object.assign({method:t,url:r,headers:n},typeof o<"u"?{body:o}:null,e.request?{request:e.request}:null)}function qu(e,t,r){return oi(Yr(e,t,r))}function si(e,t){let r=Yr(e,t),n=qu.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:si.bind(null,r),merge:Yr.bind(null,r),parse:oi})}var ii=si(null,Iu);var Si=pr(mi(),1);var tc=/^-?\d+$/,Dt=/^-?\d+n+$/,ye=JSON.stringify,en=JSON.parse,bi=/^-?\d+n$/,fi=/([\[:])?"(-?\d+)n"($|\s*[,\}\]])/g,gi=/([\[:])?("-?\d+n+)n("$|"\s*[,\}\]])/g,tn=e=>e===void 0||typeof e=="function"||typeof e=="symbol",rn=e=>e!==null&&typeof e=="object"&&e.constructor&&e.constructor.name==="RawJSON",rc=(e,t,r)=>{let n="";typeof r=="number"?n=" ".repeat(Math.min(10,Math.max(0,Math.floor(r)))):typeof r=="string"&&(n=r.slice(0,10));let o=typeof t=="function",s=Array.isArray(t)?new Set(t.map(String)):null,i=(_,S,v)=>(v!==null&&typeof v=="object"&&typeof v.toJSON=="function"&&(v=v.toJSON(S)),typeof v=="string"&&Dt.test(v)?v+"n":typeof v=="bigint"?"rawJSON"in JSON?JSON.rawJSON(v.toString()):v.toString()+"n":(o&&(v=t.call(_,S,v)),v!==null&&typeof v=="object"&&(v instanceof Number||v instanceof String||v instanceof Boolean)&&(v=v.valueOf()),v)),a=i({"":e},"",e);if(tn(a))return;let l=a===null||typeof a!="object",u=rn(a);if(l||u)return ye(a);let c=[],p=0,g=[{parent:{"":a},key:"",val:a,isArray:Array.isArray(a),keys:Array.isArray(a)?null:Object.keys(a),index:0,first:!0}],b=new WeakSet([a]);for(;g.length>0;){let _=g[g.length-1];_.index===0&&(c.push(_.isArray?"[":"{"),p++);let S=!1;if(_.isArray)if(_.index<_.val.length){_.first||c.push(","),n&&c.push(`
23
- `+n.repeat(p));let v=_.val[_.index],x=i(_.val,String(_.index),v);if(tn(x))c.push("null"),_.first=!1,_.index++;else{let J=x!==null&&typeof x=="object",pe=rn(x);if(J&&!pe){if(b.has(x))throw new TypeError("Converting circular structure to JSON");b.add(x),g.push({parent:_.val,key:String(_.index),val:x,isArray:Array.isArray(x),keys:Array.isArray(x)?null:Object.keys(x),index:0,first:!0}),_.first=!1,_.index++}else c.push(ye(x)),_.first=!1,_.index++}}else S=!0;else{for(;_.index<_.keys.length;){let x=_.keys[_.index++];if(s&&!s.has(x))continue;let pe=_.val[x],O=i(_.val,x,pe);if(tn(O))continue;_.first||c.push(","),n?c.push(`
24
- `+n.repeat(p)+ye(x)+": "):c.push(ye(x)+":");let we=O!==null&&typeof O=="object",me=rn(O);if(we&&!me){if(b.has(O))throw new TypeError("Converting circular structure to JSON");b.add(O),g.push({parent:_.val,key:x,val:O,isArray:Array.isArray(O),keys:Array.isArray(O)?null:Object.keys(O),index:0,first:!0}),_.first=!1;break}else c.push(ye(O)),_.first=!1}_.index>=_.keys.length&&g[g.length-1]===_&&(S=!0)}S&&(p--,!_.first&&n&&c.push(`
25
- `+n.repeat(p)),c.push(_.isArray?"]":"}"),b.delete(_.val),g.pop())}return c.join("")},_i=(e,t,r)=>{try{return"rawJSON"in JSON?ye(e,(a,l)=>typeof l=="bigint"?JSON.rawJSON(l.toString()):typeof t=="function"?t(a,l):(Array.isArray(t)&&t.includes(a),l),r):e?ye(e,(a,l)=>typeof l=="string"&&Dt.test(l)||typeof l=="bigint"?l.toString()+"n":typeof t=="function"?t(a,l):(Array.isArray(t)&&t.includes(a),l),r).replace(fi,"$1$2$3").replace(gi,"$1$2$3"):ye(e,t,r)}catch(n){if(n instanceof RangeError){let o=rc(e,t,r);return o===void 0?void 0:"rawJSON"in JSON?o:o.replace(fi,"$1$2$3").replace(gi,"$1$2$3")}throw n}},Ot=new Map,nc=()=>{let e=JSON.parse.toString();if(Ot.has(e))return Ot.get(e);try{let t=JSON.parse("1",(r,n,o)=>!!o?.source&&o.source==="1");return Ot.set(e,t),t}catch{return Ot.set(e,!1),!1}},oc=(e,t,r,n)=>typeof t=="string"&&bi.test(t)?BigInt(t.slice(0,-1)):typeof t=="string"&&Dt.test(t)?t.slice(0,-1):typeof n=="function"?n(e,t,r):t,sc=(e,t)=>JSON.parse(e,(r,n,o)=>{let s=typeof n=="number",i=n>Number.MAX_SAFE_INTEGER||n<Number.MIN_SAFE_INTEGER,a=s&&i,l=o&&tc.test(o.source);return a&&l?BigInt(o.source):typeof t=="function"?t(r,n,o):n}),ki=Number.MAX_SAFE_INTEGER.toString(),hi=ki.length,ic=/"(?:\\.|[^"])*"|-?(0|[1-9][0-9]*)(\.[0-9]+)?([eE][+-]?[0-9]+)?/g,ac=/^"-?\d+n+"$/,lc=(e,t)=>{let r={"":e},n=[{parent:r,key:"",visited:!1}];for(;n.length>0;){let o=n[n.length-1];if(o.visited){let{parent:s,key:i}=o,a=s[i];typeof a=="string"&&(bi.test(a)?a=BigInt(a.slice(0,-1)):Dt.test(a)&&(a=a.slice(0,-1))),typeof t=="function"&&(a=t.call(s,i,a)),a===void 0?delete s[i]:s[i]=a,n.pop()}else{o.visited=!0;let s=o.parent[o.key];if(s!==null&&typeof s=="object"){let a=Object.keys(s);for(let l=a.length-1;l>=0;l--)n.push({parent:s,key:a[l],visited:!1})}}}return r[""]},yi=e=>e.replace(ic,(t,r,n,o)=>{let s=t[0]==='"';if(s&&ac.test(t))return t.substring(0,t.length-1)+'n"';let a=n||o,l=r&&(r.length<hi||r.length===hi&&r<=ki);return s||a||l?t:'"'+t+'n"'}),Ri=(e,t)=>{if(!e)return en(e,t);try{if(nc())return sc(e,t);let r=yi(e);return en(r,(n,o,s)=>oc(n,o,s,t))}catch(r){if(r instanceof RangeError){let n=yi(e),o=en(n);return lc(o,t)}throw r}};var le=class extends Error{name;status;request;response;constructor(t,r,n){super(t,{cause:n.cause}),this.name="HttpError",this.status=Number.parseInt(r),Number.isNaN(this.status)&&(this.status=0);"response"in n&&(this.response=n.response);let o=Object.assign({},n.request);n.request.headers.authorization&&(o.headers=Object.assign({},n.request.headers,{authorization:n.request.headers.authorization.replace(/(?<! ) .*$/," [REDACTED]")})),o.url=o.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=o}};var dc="10.0.13",uc={headers:{"user-agent":`octokit-request.js/${dc} ${he()}`}};function cc(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}var wi=()=>"";async function Ei(e){let t=e.request?.fetch||globalThis.fetch;if(!t)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let r=e.request?.log||console,n=e.request?.parseSuccessResponseBody!==!1,o=cc(e.body)||Array.isArray(e.body)?_i(e.body):e.body,s=Object.fromEntries(Object.entries(e.headers).map(([p,g])=>[p,String(g)])),i;try{i=await t(e.url,{method:e.method,body:o,redirect:e.request?.redirect,headers:s,signal:e.request?.signal,...e.body&&{duplex:"half"}})}catch(p){let g="Unknown Error";if(p instanceof Error){if(p.name==="AbortError")throw p.status=500,p;g=p.message,p.name==="TypeError"&&"cause"in p&&(p.cause instanceof Error?g=p.cause.message:typeof p.cause=="string"&&(g=p.cause))}let b=new le(g,500,{request:e});throw b.cause=p,b}let a=i.status,l=i.url,u={};for(let[p,g]of i.headers)u[p]=g;let c={url:l,status:a,headers:u,data:""};if("deprecation"in u){let p=u.link&&u.link.match(/<([^<>]+)>; rel="deprecation"/),g=p&&p.pop();r.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${u.sunset}${g?`. See ${g}`:""}`)}if(a===204||a===205)return c;if(e.method==="HEAD"){if(a<400)return c;throw new le(i.statusText,a,{response:c,request:e})}if(a===304)throw c.data=await nn(i),new le("Not modified",a,{response:c,request:e});if(a>=400)throw c.data=await nn(i),new le(mc(c.data),a,{response:c,request:e});return c.data=n?await nn(i):i.body,c}async function nn(e){let t=e.headers.get("content-type");if(!t)return e.text().catch(wi);let r=(0,Si.parse)(t);if(pc(r)){let n="";try{return n=await e.text(),Ri(n)}catch{return n}}else return r.type.startsWith("text/")||r.parameters.charset?.toLowerCase()==="utf-8"&&r.type!=="application/octet-stream"?e.text().catch(wi):e.arrayBuffer().catch(()=>new ArrayBuffer(0))}function pc(e){return e.type==="application/json"||e.type==="application/scim+json"}function mc(e){if(typeof e=="string")return e;if(e instanceof ArrayBuffer)return"Unknown error";if(typeof e=="object"&&e!==null&&"message"in e){let t=e,r="documentation_url"in t?` - ${t.documentation_url}`:"";return Array.isArray(t.errors)?`${t.message}: ${t.errors.map(n=>JSON.stringify(n)).join(", ")}${r}`:`${t.message}${r}`}return`Unknown error: ${JSON.stringify(e)}`}function on(e,t){let r=e.defaults(t);return Object.assign(function(o,s){let i=r.merge(o,s);if(!i.request||!i.request.hook)return Ei(r.parse(i));let a=(l,u)=>Ei(r.parse(r.merge(l,u)));return Object.assign(a,{endpoint:r,defaults:on.bind(null,r)}),i.request.hook(a,i)},{endpoint:r,defaults:on.bind(null,r)})}var nt=on(ii,uc);var Ti=pr(ln(),1);var fc="0.0.0-development";function gc(e){return e.request!==void 0}async function vi(e,t,r,n){if(!gc(r)||!r?.request.request)throw r;if(r.status>=400&&!e.doNotRetry.includes(r.status)){let o=n.request.retries!=null?n.request.retries:e.retries,s=Math.pow((n.request.retryCount||0)+1,2);throw t.retry.retryRequest(r,o,s)}throw r}async function hc(e,t,r,n){let o=new Ti.default;return o.on("failed",function(s,i){let a=~~s.request.request?.retries,l=~~s.request.request?.retryAfter;if(n.request.retryCount=i.retryCount+1,a>i.retryCount)return l*e.retryAfterBaseValue}),o.schedule(yc.bind(null,e,t,r),n)}async function yc(e,t,r,n){let o=await r(n);if(o.data&&o.data.errors&&o.data.errors.length>0&&/Something went wrong while executing your query/.test(o.data.errors[0].message)){let s=new le(o.data.errors[0].message,500,{request:n,response:o});return vi(e,t,s,n)}return o}function dn(e,t){let r=Object.assign({enabled:!0,retryAfterBaseValue:1e3,doNotRetry:[400,401,403,404,410,422,451],retries:3},t.retry),n={retry:{retryRequest:(o,s,i)=>(o.request.request=Object.assign({},o.request.request,{retries:s,retryAfter:i}),o)}};return r.enabled&&(e.hook.error("request",vi.bind(null,r,n)),e.hook.wrap("request",hc.bind(null,r,n))),n}dn.VERSION=fc;var Ai=pr(ln(),1),bc="0.0.0-development",un=()=>Promise.resolve();function _c(e,t,r){return e.retryLimiter.schedule(kc,e,t,r)}async function kc(e,t,r){let{pathname:n}=new URL(r.url,"http://github.test"),o=Rc(r.method,n),s=!o&&r.method!=="GET"&&r.method!=="HEAD",i=r.method==="GET"&&n.startsWith("/search/"),a=n.startsWith("/graphql"),u=~~t.retryCount>0?{priority:0,weight:0}:{};e.clustering&&(u.expiration=1e3*60),(s||a)&&await e.write.key(e.id).schedule(u,un),s&&e.triggersNotification(n)&&await e.notifications.key(e.id).schedule(u,un),i&&await e.search.key(e.id).schedule(u,un);let c=(o?e.auth:e.global).key(e.id).schedule(u,t,r);if(a){let p=await c;if(p.data.errors!=null&&p.data.errors.some(g=>g.type==="RATE_LIMITED"))throw Object.assign(new Error("GraphQL Rate Limit Exceeded"),{response:p,data:p.data})}return c}function Rc(e,t){return e==="PATCH"&&/^\/applications\/[^/]+\/token\/scoped$/.test(t)||e==="POST"&&(/^\/applications\/[^/]+\/token$/.test(t)||/^\/app\/installations\/[^/]+\/access_tokens$/.test(t)||t==="/login/oauth/access_token")}var wc=["/orgs/{org}/invitations","/orgs/{org}/invitations/{invitation_id}","/orgs/{org}/teams/{team_slug}/discussions","/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","/repos/{owner}/{repo}/collaborators/{username}","/repos/{owner}/{repo}/commits/{commit_sha}/comments","/repos/{owner}/{repo}/issues","/repos/{owner}/{repo}/issues/{issue_number}/comments","/repos/{owner}/{repo}/issues/{issue_number}/sub_issue","/repos/{owner}/{repo}/issues/{issue_number}/sub_issues/priority","/repos/{owner}/{repo}/pulls","/repos/{owner}/{repo}/pulls/{pull_number}/comments","/repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies","/repos/{owner}/{repo}/pulls/{pull_number}/merge","/repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers","/repos/{owner}/{repo}/pulls/{pull_number}/reviews","/repos/{owner}/{repo}/releases","/teams/{team_id}/discussions","/teams/{team_id}/discussions/{discussion_number}/comments"];function Ec(e){let r=`^(?:${e.map(n=>n.split("/").map(o=>o.startsWith("{")?"(?:.+?)":o).join("/")).map(n=>`(?:${n})`).join("|")})[^/]*$`;return new RegExp(r,"i")}var xi=Ec(wc),Pi=xi.test.bind(xi),Z={},Sc=function(e,t){Z.global=new e.Group({id:"octokit-global",maxConcurrent:10,...t}),Z.auth=new e.Group({id:"octokit-auth",maxConcurrent:1,...t}),Z.search=new e.Group({id:"octokit-search",maxConcurrent:1,minTime:2e3,...t}),Z.write=new e.Group({id:"octokit-write",maxConcurrent:1,minTime:1e3,...t}),Z.notifications=new e.Group({id:"octokit-notifications",maxConcurrent:1,minTime:3e3,...t})};function Gt(e,t){let{enabled:r=!0,Bottleneck:n=Ai.default,id:o="no-id",timeout:s=1e3*60*2,connection:i}=t.throttle||{};if(!r)return{};let a={timeout:s};typeof i<"u"&&(a.connection=i);let l=Object.assign({clustering:i!=null,triggersNotification:Pi,fallbackSecondaryRateRetryAfter:60,retryAfterBaseValue:1e3,id:o},t.throttle);if(typeof l.onSecondaryRateLimit!="function"||typeof l.onRateLimit!="function")throw new Error(`octokit/plugin-throttling error:
23
+ `}function lu(e){try{let t=JSON.stringify(e);if(t===void 0)return null;let r=U(JSON.parse(t));return r.trim()===""?null:r}catch{return null}}function Fs(e,t){return!Is(e)||!Is(t)||t.ok!==!1?!1:typeof e.id=="string"&&typeof t.id=="string"&&t.id!==e.id}function Is(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var Bs=new Set;function Us(e){return Bs.has(e)?"json":au}function Hs(e){Bs.add(e)}var pu=108;async function Gt(e,t,r="resident server"){let n=e.wire,o=n??Us(e.socketPath),s=await Ws(e,t,r,o);return n||o==="json"||!Fs(t,s)?s:(Hs(e.socketPath),await Ws(e,t,r,"json"))}async function Ws(e,t,r,n){let o=e.timeoutMs??1e3;return await new Promise((s,i)=>{let a=uu(e.socketPath),l=!1,u="",c=setTimeout(()=>{p(()=>i(new Error(`${r} timed out`))),a.destroy()},o);function p(m){l||(l=!0,clearTimeout(c),m())}a.on("connect",()=>{a.write(Ms(t,n))}),a.on("data",m=>{u+=m.toString("utf8");let b=Cs(u);b&&(u=b.rest,p(()=>{try{s(Ns(b.frame))}catch(_){i(_)}}),a.end())}),a.on("error",m=>p(()=>i(m))),a.on("close",()=>{l||p(()=>i(new Error(`${r} closed without response`)))})})}function le(e){if(!Number.isInteger(e)||e<=0)return!1;try{return process.kill(e,0),!0}catch(t){return t.code==="EPERM"}}var mu="/tmp";function qs(e){let t=e.env??process.env,r=du("sha256").update(e.key).digest("hex").slice(0,20),n=l=>ot(l,e.socketFileName).length<pu,o=t.XDG_RUNTIME_DIR;if(o){let l=ot(o,"red-skills",r);if(n(l))return l}let s=e.uid??(typeof process.getuid=="function"?process.getuid():"nouid"),i=ot(`red-skills-${s}`,r),a=ot(cu(),i);return n(a)||process.platform==="win32"?a:ot(mu,i)}import{randomUUID as fu}from"node:crypto";async function $e(e,t=250){try{return(await Gt({socketPath:e,timeoutMs:t},{id:fu(),op:"ping"},"redskilled daemon")).ok===!0}catch{return!1}}var Ks="@reddb-io/red-skills";var Kr="redskilled";function gu(e){return e===Kr?["rsp","rsp-core"]:[]}var zy=new Set(["code-nav",Kr,...gu(Kr)]);var hu="<version>";function st(e,t=[],r){let n=r&&r.trim().length>0?r.trim():hu;return[`npx -y -p ${Ks}@${n}`,e,...t].join(" ")}function Vr(e){let t=e.socketPath,r=yu(e);return e.answers?{version:1,kind:"answering",socket_path:t,holder:r,reason:`a redskilled daemon answered on ${JSON.stringify(t)}`,repair:"nothing to repair"}:r!=null?{version:1,kind:"held-unresponsive",socket_path:t,holder:r,reason:`redskilled pid ${r.pid} is alive and has held ${JSON.stringify(t)} since ${r.acquired_at}${r.uptime_ms==null?"":` (up ${Vs(r.uptime_ms)})`}, but it did not answer a ping \u2014 this is a daemon that could not be REACHED, not one that is missing.`,repair:`Do not provision: a daemon is already running. Inspect it (\`ps -p ${r.pid}\`), or stop it with \`${st("red-skills-redskilled",["stop"])}\` and let the next client start a fresh one.`}:{version:1,kind:"absent",socket_path:t,holder:null,reason:`nothing answered on ${JSON.stringify(t)} and no live process holds its lease`,repair:`Install and start one with \`${st("red-skills-redskilled",["provision"])}\` (or \`/red-setup\`), then retry.`}}function Jr(e){return`${e.reason} ${e.repair}`}function yu(e){let t=e.lease;return t==null||e.holderAlive!==!0||t.socket_path!==e.socketPath?null:{pid:t.pid,socket_path:t.socket_path,acquired_at:t.acquired_at,renewed_at:t.renewed_at,uptime_ms:bu(t.acquired_at,e.now??new Date().toISOString())}}function bu(e,t){let r=Date.parse(e),n=Date.parse(t);return!Number.isFinite(r)||!Number.isFinite(n)?null:Math.max(0,n-r)}function Vs(e){let t=Math.floor(e/1e3),r=Math.floor(t/3600),n=Math.floor(t%3600/60),o=t%60;return r>0?`${r}h${String(n).padStart(2,"0")}m`:n>0?`${n}m${String(o).padStart(2,"0")}s`:`${o}s`}import{mkdir as rb,readFile as _u,rename as nb,rm as ob,writeFile as sb}from"node:fs/promises";async function zr(e){let t;try{t=await _u(e,"utf8")}catch(n){if(n.code==="ENOENT")return;throw n}let r=ku(t);return Ru(r)?r:void 0}function ku(e){let t=e.trim();if(!t)return null;try{return JSON.parse(t)}catch{try{return z(t)}catch{return null}}}function Ru(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;if(t.version!==1||!Number.isInteger(t.pid)||t.pid<=0)return!1;for(let r of["start_time","session_key_hash","machine_id_hash","socket_path","acquired_at","renewed_at"])if(typeof t[r]!="string"||t[r].length===0)return!1;return!0}import{chmod as wu,mkdir as Eu,readFile as Su,rm as vu,writeFile as Tu}from"node:fs/promises";import{dirname as Js,join as Xs}from"node:path";import{tmpdir as zs}from"node:os";var xu="redskilled.machine.claim.toon",Qr="REDSKILLED_MACHINE_DIR",Au=8,je=class extends Error{constructor(r,n,o){super(Ou(r,n,o));this.claimPath=r;this.reason=n;this.claim=o;this.name="RedskilledMachineHeldError"}},Ys;function Zs(){return Ys??={pid:process.pid,startTime:new Date(Date.now()-Math.round(process.uptime()*1e3)).toISOString(),uid:typeof process.getuid=="function"?process.getuid():-1},Ys}function Pu(e={machineIdHash:"unknown"}){let t=e.env??process.env,r=t[Qr]?.trim();if(r)return r;let o=(e.platform??process.platform)==="win32"?t.PROGRAMDATA?.trim()||zs():zs();return Xs(o,`redskilled-${e.machineIdHash}`)}function $t(e){return Xs(Pu(e),xu)}function Xr(e,t,r={}){let n=r.clock??(()=>new Date().toISOString()),o=r.isPidAlive??le;async function s(){let l;try{l=await Su(e,"utf8")}catch(c){if(c.code==="ENOENT"||Yr(c))return;throw c}let u=Gu(l);return $u(u)?u:void 0}function i(l,u){return{version:1,scope:"machine",pid:l.pid,start_time:l.startTime,uid:l.uid,machine_id_hash:t.machineIdHash,session_key_hash:t.sessionKeyHash,socket_path:t.socketPath,acquired_at:u,renewed_at:u}}async function a(){try{return await vu(e,{force:!0}),!0}catch(l){if(Yr(l))return!1;throw l}}return{claimPath:e,read:s,async claim(l){await Eu(Js(e),{recursive:!0,mode:1023})!=null&&await wu(Js(e),1023).catch(()=>{});let c=!1;for(let p=0;p<Au;p+=1){let m=i(l,n());try{return await Tu(e,Du(m),{encoding:"utf8",mode:420,flag:"wx"}),{claimed:!0,reaped:c,claim:m}}catch(_){if(_.code!=="EEXIST"){if(Yr(_))return{claimed:!1,reason:"stale-claim-not-reapable"};throw _}}let b=await s();if(!b){if(!await a())return{claimed:!1,reason:"stale-claim-not-reapable"};c=!0;continue}if(Qs(b,l,t.socketPath))return{claimed:!0,reaped:c,claim:b};if(await o(b.pid))return{claimed:!1,reason:"held",claim:b};if(!await a())return{claimed:!1,reason:"stale-claim-not-reapable",claim:b};c=!0}return{claimed:!1,reason:"contended"}},async release(l){let u=await s();return!u||!Qs(u,l,t.socketPath)?!1:await a()}}}function Ou(e,t,r){let n=r==null?"":` \u2014 held by pid ${r.pid} (uid ${r.uid}) on socket ${JSON.stringify(r.socket_path)}`;return t==="held"?`this machine already has a redskilled daemon${n}; a second one would void the host budget, so none was started. Reach that daemon, or stop it before starting another.`:t==="stale-claim-not-reapable"?`the redskilled machine claim ${JSON.stringify(e)} is stale and cannot be removed by this user${n}; remove it as its owner, then start again. No second daemon was started.`:`the redskilled machine claim ${JSON.stringify(e)} changed hands repeatedly; no daemon was started.`}function Yr(e){let t=e?.code;return t==="EACCES"||t==="EPERM"||t==="EROFS"}function Qs(e,t,r){return e.pid===t.pid&&e.start_time===t.startTime&&e.socket_path===r}function Du(e){return`${U(e)}
24
+ `}function Gu(e){let t=e.trim();if(!t)return null;try{return JSON.parse(t)}catch{try{return z(t)}catch{return null}}}function $u(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;if(t.version!==1||t.scope!=="machine"||!Number.isInteger(t.pid)||t.pid<=0||!Number.isInteger(t.uid))return!1;for(let r of["start_time","machine_id_hash","session_key_hash","socket_path","acquired_at","renewed_at"])if(typeof t[r]!="string"||t[r].length===0)return!1;return!0}import{execFile as ju}from"node:child_process";import{renameSync as Iu,rmSync as Lu,statSync as Ob,writeFileSync as Cu}from"node:fs";import{promisify as Nu}from"node:util";var $b=Nu(ju),Y=.5;var jb=256*1024*1024,de=1024*1024,ei=14*24*60*60*1e3,H={"process-deaths":{maxBytes:4*de,maxAgeMs:ei,targetRatio:Y},"github-spend":{maxBytes:8*de,targetRatio:Y},"github-balance":{maxBytes:64*1024,targetRatio:Y},"github-balance-history":{maxBytes:2*de,targetRatio:Y},"castle-singleton-events":{maxBytes:2*de,targetRatio:Y},"redskilled-events":{maxBytes:4*de,targetRatio:Y},"rsp-telemetry-spool":{maxBytes:8*de,targetRatio:Y},"rsp-telemetry-corrections":{maxBytes:de,targetRatio:Y},"death-attributions":{maxBytes:de,maxAgeMs:ei,targetRatio:Y},"worker-log":{maxLines:5e4,targetRatio:Y},"worker-liveness":{maxBytes:de,targetRatio:Y},"castle-history":{maxLines:1e4,targetRatio:Y},countersigns:{maxBytes:4*de,targetRatio:Y}};function Zr(e,t){let r=`${e}.retaining-${process.pid}`;try{Cu(r,t,{encoding:"utf8",mode:384}),Iu(r,e)}finally{Lu(r,{force:!0})}}import{isAbsolute as Nb,join as it,resolve as Mb}from"node:path";var Mu=".red";function ti(e){if(!e)throw new Error("root is required");return e.replace(/\/$/,"")}function Fu(e){return it(ti(e),Mu)}function Bu(e){return it(Fu(e),"state")}function ri(e){return it(Bu(e),"statusline")}var ni="deaths",oi="deaths.toonl";function si(e){return it(ti(e),ni)}function jt(e){return it(si(e),oi)}import{appendFileSync as zu,closeSync as Yu,mkdirSync as Qu,openSync as Xu,readFileSync as Zu,readSync as ec,statSync as tc}from"node:fs";import{basename as Hb,join as Hu}from"node:path";var Wu=Hu("sys","kernel","random","boot_id");var r_=H["process-deaths"].maxAgeMs,n_=H["process-deaths"].maxBytes,o_=H["process-deaths"].targetRatio,rc=new Set(["exit","signal","uncaught-exception","unhandled-rejection"]);function nc(e){return typeof e=="string"&&rc.has(e)}var oc={mkdir(e){Qu(e,{recursive:!0,mode:448})},inspect(e){let t;try{t=tc(e).size}catch(n){if(n.code==="ENOENT")return{size:0,endsClean:!0};throw n}if(t===0)return{size:t,endsClean:!0};let r;try{r=Xu(e,"r");let n=Buffer.allocUnsafe(1);return ec(r,n,0,1,t-1),{size:t,endsClean:n[0]===10}}catch{return{size:t,endsClean:!0}}finally{r!==void 0&&Yu(r)}},append(e,t){zu(e,t,{encoding:"utf8",mode:384})},replace(e,t){Zr(e,t)},read(e){return Zu(e,"utf8")}};function di(e){let t=e.endsWith(`
25
+ `)?e:e.slice(0,e.lastIndexOf(`
26
+ `)+1);return t===""?[]:ae(t).map(sc)}function sc(e){let t=e.exit_path;if(!nc(t))throw new Error(`death record has unknown exit_path ${JSON.stringify(t)}`);let r=e.kind;if(r!=="launcher"&&r!=="worker"&&r!=="daemon")throw new Error(`death record has unknown kind ${JSON.stringify(r)}`);return{version:X(e.version),ts:String(e.ts),kind:r,id:String(e.id),pid:X(e.pid),exit_path:t,signal:e.signal==null?null:String(e.signal),exit_code:e.exit_code==null?null:X(e.exit_code),last_phase:String(e.last_phase),detail:e.detail==null?null:String(e.detail),scope:e.scope==null?null:String(e.scope),memory_ceiling:e.memory_ceiling==null?null:String(e.memory_ceiling),scope_degradation:e.scope_degradation==null?null:String(e.scope_degradation),uptime_s:X(e.uptime_s),rss_kb:X(e.rss_kb),max_rss_kb:X(e.max_rss_kb),user_cpu_us:X(e.user_cpu_us),system_cpu_us:X(e.system_cpu_us),minor_page_faults:X(e.minor_page_faults),major_page_faults:X(e.major_page_faults),voluntary_ctx_switches:X(e.voluntary_ctx_switches),involuntary_ctx_switches:X(e.involuntary_ctx_switches)}}function X(e){return typeof e=="number"?e:Number(e)}function en(e,t=oc){let r;try{r=t.read(e)}catch(n){if(n.code==="ENOENT")return[];throw n}return di(r)}var b_=H["death-attributions"].maxAgeMs,__=H["death-attributions"].maxBytes,k_=H["death-attributions"].targetRatio;var R_=512*1024;var ui="redskilled.log.toonl",tk=H["redskilled-events"].maxBytes,rk=H["redskilled-events"].targetRatio;var _k=2*1024**3;function ci(e){return e==="single-object"?"rest":"graphql"}function pi(e,t){return e==="stable-poll"?"rest":ci(t)}function W(e){return{none:e}}function G(e,t,r,n,o,s,i){let a=typeof o=="string"?{fallback:o}:{fallback:null,noFallbackBecause:o.none};return{key:e,kind:"read",cardinality:t,volatility:r,surface:i??pi(r,t),budget:n,...a,...i?{only:i}:{},why:s}}function q(e,t,r,n,o){let s=typeof o=="string"?{fallback:o}:{fallback:null,noFallbackBecause:o.none};return{key:e,kind:"write",cardinality:"single-object",surface:t,budget:r,...s,why:n}}var mi=[G("issue view","single-object","stable-poll","rest","graphql","one issue by number, repeatedly polled while usually unchanged; REST answers in one request"),G("pr view","single-object","stable-poll","rest","graphql","one pull request by number, polled per Worker per iteration"),G("repo view","single-object","stable-poll","rest","graphql","one repository's own metadata, repeatedly read while usually unchanged"),G("run view","single-object","stable-poll","rest",W("Actions runs have no GraphQL resource"),"one Actions run repeatedly polled to terminal"),G("release view","single-object","stable-poll","rest",W("release lookup has no GraphQL client method"),"one release by tag, repeatedly checked while usually absent or unchanged"),G("pr diff","single-object","one-shot","rest",W("the complete diff is exposed as a REST media type"),"one pull request's diff, read once for review"),G("issue list","multi-node","stable-poll","rest","graphql","a repeatedly polled, usually-unchanged issue collection; REST can make an unchanged poll free"),G("pr list","multi-node","stable-poll","rest","graphql","a repeatedly polled, usually-unchanged pull-request collection; REST can make an unchanged poll free"),G("pr checks","multi-node","stable-poll","rest","graphql","check contexts are repeatedly polled while awaiting terminal state"),G("release list","multi-node","stable-poll","rest",W("Releases has no GraphQL collection client method"),"release waits poll a usually-unchanged list"),G("run list","multi-node","stable-poll","rest",W("Actions has no GraphQL collection client method"),"run waits poll a usually-unchanged list"),G("label list","multi-node","one-shot","graphql","rest","a label connection loaded once for the current operation"),G("issue list (search)","multi-node","stable-poll","search",W("search is ineligible for diverted traffic"),"queue discovery polls usually-unchanged search results through the 30/min search connection"),G("pr list (search)","multi-node","stable-poll","search",W("search is ineligible for diverted traffic"),"PR discovery polls usually-unchanged search results through the 30/min search connection"),G("search issues","multi-repository","one-shot","search",W("search is ineligible for diverted traffic"),"a one-shot cross-repository read through the REST search endpoint, metered 30/min","rest"),G("search prs","multi-repository","one-shot","search",W("search is ineligible for diverted traffic"),"a one-shot cross-repository read through the REST search endpoint, metered 30/min","rest"),G("search repos","multi-repository","one-shot","search",W("search is ineligible for diverted traffic"),"a one-shot cross-repository read through the REST search endpoint, metered 30/min","rest"),G("api graphql","multi-node","one-shot","graphql",W("the caller explicitly chose GraphQL"),"the caller supplies one explicit GraphQL query rather than a routed poll"),G("api rest","single-object","one-shot","rest",W("the caller explicitly chose REST"),"the caller supplies one explicit REST path rather than a routed poll"),q("issue create","rest","rest","the write plan POSTs to `repos/{o}/{r}/issues`; GraphQL exposes createIssue","graphql"),q("issue edit","rest","rest","the write plan PATCHes labels and body; GraphQL exposes updateIssue","graphql"),q("issue close","rest","rest","the write plan PATCHes issue state; GraphQL exposes closeIssue","graphql"),q("issue reopen","graphql","graphql","gh uses reopenIssue; REST can PATCH the issue state to open","rest"),q("issue comment","rest","rest","the write plan POSTs an issue comment; GraphQL exposes addComment","graphql"),q("issue develop","graphql","graphql","linked-branch creation is a GraphQL mutation",W("linked-branch creation has no REST mutation")),q("pr create","rest","rest","the write plan POSTs a pull request; GraphQL exposes createPullRequest","graphql"),q("pr comment","rest","rest","a pull request comment is an issue comment; GraphQL exposes addComment","graphql"),q("pr merge","rest","rest","the default plan PUTs the merge; GraphQL exposes mergePullRequest","graphql"),q("pr close","graphql","graphql","gh uses closePullRequest; REST can PATCH the pull request state","rest"),q("pr edit","graphql","graphql","gh uses GraphQL mutations; REST can PATCH pull-request fields and issue labels","rest"),q("pr ready","graphql","graphql","marking ready-for-review is a GraphQL mutation",W("GitHub exposes no REST ready-for-review mutation")),q("pr update-branch","rest","rest","the write plan PUTs update-branch; GraphQL exposes updatePullRequestBranch","graphql"),q("label create","rest","rest","the write plan POSTs a label; GraphQL exposes createLabel","graphql")],hc=new Map(mi.map(e=>[e.key,e]));function fi(e){let t=[],r=0;for(;r<e.length&&e[r].startsWith("-");)r+=e[r]==="-R"||e[r]==="--repo"?2:1;for(;r<e.length&&!e[r].startsWith("-")&&t.length<2;)t.push(e[r]),r+=1;return t}function tn(e){let t=fi(e);if(t.length===0)return"";if(t[0]==="api")return t[1]==="graphql"?"api graphql":"api rest";let r=t.length===1?t[0]:`${t[0]} ${t[1]}`;return t[1]==="list"&&e.includes("--search")?`${r} (search)`:r}var It=class extends Error{name="UnclassifiedGithubOperationError";operation;args;constructor(t){let r=tn(t);super(`unclassified GitHub operation ${JSON.stringify(r||"(empty argv)")}: add an entry to GITHUB_OPERATIONS in packages/github/surface.ts stating its cardinality. Defaulting to GraphQL is what sent every single-object poll to the node-point pool (ADR 0132 decision 4).`),this.operation=r,this.args=[...t]}};function gi(e){return hc.get(tn(e))??null}function hi(e){let t=gi(e);if(!t)throw new It(e);return t}function rn(e){return hi(e).surface}function _e(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:"<environment undetectable>"}var _c="0.0.0-development",kc=`octokit-endpoint.js/${_c} ${_e()}`,Rc={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":kc},mediaType:{format:""}};function wc(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function Ec(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}function _i(e,t){let r=Object.assign({},e);return Object.keys(t).forEach(n=>{Ec(t[n])?n in e?r[n]=_i(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function yi(e){for(let t in e)e[t]===void 0&&delete e[t];return e}function on(e,t,r){if(typeof t=="string"){let[o,s]=t.split(" ");r=Object.assign(s?{method:o,url:s}:{url:o},r)}else r=Object.assign({},t);r.headers=wc(r.headers),yi(r),yi(r.headers);let n=_i(e||{},r);return r.url==="/graphql"&&(e&&e.mediaType.previews?.length&&(n.mediaType.previews=e.mediaType.previews.filter(o=>!n.mediaType.previews.includes(o)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(o=>o.replace(/-preview/,""))),n}function Sc(e,t){let r=/\?/.test(e)?"&":"?",n=Object.keys(t);return n.length===0?e:e+r+n.map(o=>o==="q"?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${o}=${encodeURIComponent(t[o])}`).join("&")}var vc=/\{[^{}}]+\}/g;function Tc(e){return e.replace(/(?:^\W+)|(?:(?<!\W)\W+$)/g,"").split(/,/)}function xc(e){let t=e.match(vc);return t?t.map(Tc).reduce((r,n)=>r.concat(n),[]):[]}function bi(e,t){let r={__proto__:null};for(let n of Object.keys(e))t.indexOf(n)===-1&&(r[n]=e[n]);return r}function ki(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(t){return/%[0-9A-Fa-f]/.test(t)||(t=encodeURI(t).replace(/%5B/g,"[").replace(/%5D/g,"]")),t}).join("")}function Je(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16).toUpperCase()})}function at(e,t,r){return t=e==="+"||e==="#"?ki(t):Je(t),r?Je(r)+"="+t:t}function Ve(e){return e!=null}function nn(e){return e===";"||e==="&"||e==="?"}function Ac(e,t,r,n){var o=e[r],s=[];if(Ve(o)&&o!=="")if(typeof o=="string"||typeof o=="number"||typeof o=="bigint"||typeof o=="boolean")o=o.toString(),n&&n!=="*"&&(o=o.substring(0,parseInt(n,10))),s.push(at(t,o,nn(t)?r:""));else if(n==="*")Array.isArray(o)?o.filter(Ve).forEach(function(i){s.push(at(t,i,nn(t)?r:""))}):Object.keys(o).forEach(function(i){Ve(o[i])&&s.push(at(t,o[i],i))});else{let i=[];Array.isArray(o)?o.filter(Ve).forEach(function(a){i.push(at(t,a))}):Object.keys(o).forEach(function(a){Ve(o[a])&&(i.push(Je(a)),i.push(at(t,o[a].toString())))}),nn(t)?s.push(Je(r)+"="+i.join(",")):i.length!==0&&s.push(i.join(","))}else t===";"?Ve(o)&&s.push(Je(r)):o===""&&(t==="&"||t==="?")?s.push(Je(r)+"="):o===""&&s.push("");return s}function Pc(e){return{expand:Oc.bind(null,e)}}function Oc(e,t){var r=["+","#",".","/",";","?","&"];return e=e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,o,s){if(o){let a="",l=[];if(r.indexOf(o.charAt(0))!==-1&&(a=o.charAt(0),o=o.substr(1)),o.split(/,/g).forEach(function(u){var c=/([^:\*]*)(?::(\d+)|(\*))?/.exec(u);l.push(Ac(t,a,c[1],c[2]||c[3]))}),a&&a!=="+"){var i=",";return a==="?"?i="&":a!=="#"&&(i=a),(l.length!==0?a:"")+l.join(i)}else return l.join(",")}else return ki(s)}),e==="/"?e:e.replace(/\/$/,"")}function Ri(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),o,s=bi(e,["method","baseUrl","url","headers","request","mediaType"]),i=xc(r);r=Pc(r).expand(s),/^http/.test(r)||(r=e.baseUrl+r);let a=Object.keys(e).filter(c=>i.includes(c)).concat("baseUrl"),l=bi(s,a);if(!/application\/octet-stream/i.test(n.accept)&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(c=>c.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&e.mediaType.previews?.length)){let c=n.accept.match(/(?<![\w-])[\w-]+(?=-preview)/g)||[];n.accept=c.concat(e.mediaType.previews).map(p=>{let m=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${p}-preview${m}`}).join(",")}return["GET","HEAD"].includes(t)?r=Sc(r,l):"data"in l?o=l.data:Object.keys(l).length&&(o=l),!n["content-type"]&&typeof o<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&typeof o>"u"&&(o=""),Object.assign({method:t,url:r,headers:n},typeof o<"u"?{body:o}:null,e.request?{request:e.request}:null)}function Dc(e,t,r){return Ri(on(e,t,r))}function wi(e,t){let r=on(e,t),n=Dc.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:wi.bind(null,r),merge:on.bind(null,r),parse:Ri})}var Ei=wi(null,Rc);var Bi=br(Oi(),1);var Bc=/^-?\d+$/,Nt=/^-?\d+n+$/,ke=JSON.stringify,dn=JSON.parse,Ii=/^-?\d+n$/,Di=/([\[:])?"(-?\d+)n"($|\s*[,\}\]])/g,Gi=/([\[:])?("-?\d+n+)n("$|"\s*[,\}\]])/g,un=e=>e===void 0||typeof e=="function"||typeof e=="symbol",cn=e=>e!==null&&typeof e=="object"&&e.constructor&&e.constructor.name==="RawJSON",Uc=(e,t,r)=>{let n="";typeof r=="number"?n=" ".repeat(Math.min(10,Math.max(0,Math.floor(r)))):typeof r=="string"&&(n=r.slice(0,10));let o=typeof t=="function",s=Array.isArray(t)?new Set(t.map(String)):null,i=(_,S,v)=>(v!==null&&typeof v=="object"&&typeof v.toJSON=="function"&&(v=v.toJSON(S)),typeof v=="string"&&Nt.test(v)?v+"n":typeof v=="bigint"?"rawJSON"in JSON?JSON.rawJSON(v.toString()):v.toString()+"n":(o&&(v=t.call(_,S,v)),v!==null&&typeof v=="object"&&(v instanceof Number||v instanceof String||v instanceof Boolean)&&(v=v.valueOf()),v)),a=i({"":e},"",e);if(un(a))return;let l=a===null||typeof a!="object",u=cn(a);if(l||u)return ke(a);let c=[],p=0,m=[{parent:{"":a},key:"",val:a,isArray:Array.isArray(a),keys:Array.isArray(a)?null:Object.keys(a),index:0,first:!0}],b=new WeakSet([a]);for(;m.length>0;){let _=m[m.length-1];_.index===0&&(c.push(_.isArray?"[":"{"),p++);let S=!1;if(_.isArray)if(_.index<_.val.length){_.first||c.push(","),n&&c.push(`
27
+ `+n.repeat(p));let v=_.val[_.index],T=i(_.val,String(_.index),v);if(un(T))c.push("null"),_.first=!1,_.index++;else{let C=T!==null&&typeof T=="object",ge=cn(T);if(C&&!ge){if(b.has(T))throw new TypeError("Converting circular structure to JSON");b.add(T),m.push({parent:_.val,key:String(_.index),val:T,isArray:Array.isArray(T),keys:Array.isArray(T)?null:Object.keys(T),index:0,first:!0}),_.first=!1,_.index++}else c.push(ke(T)),_.first=!1,_.index++}}else S=!0;else{for(;_.index<_.keys.length;){let T=_.keys[_.index++];if(s&&!s.has(T))continue;let ge=_.val[T],D=i(_.val,T,ge);if(un(D))continue;_.first||c.push(","),n?c.push(`
28
+ `+n.repeat(p)+ke(T)+": "):c.push(ke(T)+":");let Te=D!==null&&typeof D=="object",he=cn(D);if(Te&&!he){if(b.has(D))throw new TypeError("Converting circular structure to JSON");b.add(D),m.push({parent:_.val,key:T,val:D,isArray:Array.isArray(D),keys:Array.isArray(D)?null:Object.keys(D),index:0,first:!0}),_.first=!1;break}else c.push(ke(D)),_.first=!1}_.index>=_.keys.length&&m[m.length-1]===_&&(S=!0)}S&&(p--,!_.first&&n&&c.push(`
29
+ `+n.repeat(p)),c.push(_.isArray?"]":"}"),b.delete(_.val),m.pop())}return c.join("")},Li=(e,t,r)=>{try{return"rawJSON"in JSON?ke(e,(a,l)=>typeof l=="bigint"?JSON.rawJSON(l.toString()):typeof t=="function"?t(a,l):(Array.isArray(t)&&t.includes(a),l),r):e?ke(e,(a,l)=>typeof l=="string"&&Nt.test(l)||typeof l=="bigint"?l.toString()+"n":typeof t=="function"?t(a,l):(Array.isArray(t)&&t.includes(a),l),r).replace(Di,"$1$2$3").replace(Gi,"$1$2$3"):ke(e,t,r)}catch(n){if(n instanceof RangeError){let o=Uc(e,t,r);return o===void 0?void 0:"rawJSON"in JSON?o:o.replace(Di,"$1$2$3").replace(Gi,"$1$2$3")}throw n}},Ct=new Map,Hc=()=>{let e=JSON.parse.toString();if(Ct.has(e))return Ct.get(e);try{let t=JSON.parse("1",(r,n,o)=>!!o?.source&&o.source==="1");return Ct.set(e,t),t}catch{return Ct.set(e,!1),!1}},Wc=(e,t,r,n)=>typeof t=="string"&&Ii.test(t)?BigInt(t.slice(0,-1)):typeof t=="string"&&Nt.test(t)?t.slice(0,-1):typeof n=="function"?n(e,t,r):t,qc=(e,t)=>JSON.parse(e,(r,n,o)=>{let s=typeof n=="number",i=n>Number.MAX_SAFE_INTEGER||n<Number.MIN_SAFE_INTEGER,a=s&&i,l=o&&Bc.test(o.source);return a&&l?BigInt(o.source):typeof t=="function"?t(r,n,o):n}),Ci=Number.MAX_SAFE_INTEGER.toString(),$i=Ci.length,Kc=/"(?:\\.|[^"])*"|-?(0|[1-9][0-9]*)(\.[0-9]+)?([eE][+-]?[0-9]+)?/g,Vc=/^"-?\d+n+"$/,Jc=(e,t)=>{let r={"":e},n=[{parent:r,key:"",visited:!1}];for(;n.length>0;){let o=n[n.length-1];if(o.visited){let{parent:s,key:i}=o,a=s[i];typeof a=="string"&&(Ii.test(a)?a=BigInt(a.slice(0,-1)):Nt.test(a)&&(a=a.slice(0,-1))),typeof t=="function"&&(a=t.call(s,i,a)),a===void 0?delete s[i]:s[i]=a,n.pop()}else{o.visited=!0;let s=o.parent[o.key];if(s!==null&&typeof s=="object"){let a=Object.keys(s);for(let l=a.length-1;l>=0;l--)n.push({parent:s,key:a[l],visited:!1})}}}return r[""]},ji=e=>e.replace(Kc,(t,r,n,o)=>{let s=t[0]==='"';if(s&&Vc.test(t))return t.substring(0,t.length-1)+'n"';let a=n||o,l=r&&(r.length<$i||r.length===$i&&r<=Ci);return s||a||l?t:'"'+t+'n"'}),Ni=(e,t)=>{if(!e)return dn(e,t);try{if(Hc())return qc(e,t);let r=ji(e);return dn(r,(n,o,s)=>Wc(n,o,s,t))}catch(r){if(r instanceof RangeError){let n=ji(e),o=dn(n);return Jc(o,t)}throw r}};var ce=class extends Error{name;status;request;response;constructor(t,r,n){super(t,{cause:n.cause}),this.name="HttpError",this.status=Number.parseInt(r),Number.isNaN(this.status)&&(this.status=0);"response"in n&&(this.response=n.response);let o=Object.assign({},n.request);n.request.headers.authorization&&(o.headers=Object.assign({},n.request.headers,{authorization:n.request.headers.authorization.replace(/(?<! ) .*$/," [REDACTED]")})),o.url=o.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=o}};var zc="10.0.13",Yc={headers:{"user-agent":`octokit-request.js/${zc} ${_e()}`}};function Qc(e){if(typeof e!="object"||e===null||Object.prototype.toString.call(e)!=="[object Object]")return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(e)}var Mi=()=>"";async function Fi(e){let t=e.request?.fetch||globalThis.fetch;if(!t)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let r=e.request?.log||console,n=e.request?.parseSuccessResponseBody!==!1,o=Qc(e.body)||Array.isArray(e.body)?Li(e.body):e.body,s=Object.fromEntries(Object.entries(e.headers).map(([p,m])=>[p,String(m)])),i;try{i=await t(e.url,{method:e.method,body:o,redirect:e.request?.redirect,headers:s,signal:e.request?.signal,...e.body&&{duplex:"half"}})}catch(p){let m="Unknown Error";if(p instanceof Error){if(p.name==="AbortError")throw p.status=500,p;m=p.message,p.name==="TypeError"&&"cause"in p&&(p.cause instanceof Error?m=p.cause.message:typeof p.cause=="string"&&(m=p.cause))}let b=new ce(m,500,{request:e});throw b.cause=p,b}let a=i.status,l=i.url,u={};for(let[p,m]of i.headers)u[p]=m;let c={url:l,status:a,headers:u,data:""};if("deprecation"in u){let p=u.link&&u.link.match(/<([^<>]+)>; rel="deprecation"/),m=p&&p.pop();r.warn(`[@octokit/request] "${e.method} ${e.url}" is deprecated. It is scheduled to be removed on ${u.sunset}${m?`. See ${m}`:""}`)}if(a===204||a===205)return c;if(e.method==="HEAD"){if(a<400)return c;throw new ce(i.statusText,a,{response:c,request:e})}if(a===304)throw c.data=await pn(i),new ce("Not modified",a,{response:c,request:e});if(a>=400)throw c.data=await pn(i),new ce(Zc(c.data),a,{response:c,request:e});return c.data=n?await pn(i):i.body,c}async function pn(e){let t=e.headers.get("content-type");if(!t)return e.text().catch(Mi);let r=(0,Bi.parse)(t);if(Xc(r)){let n="";try{return n=await e.text(),Ni(n)}catch{return n}}else return r.type.startsWith("text/")||r.parameters.charset?.toLowerCase()==="utf-8"&&r.type!=="application/octet-stream"?e.text().catch(Mi):e.arrayBuffer().catch(()=>new ArrayBuffer(0))}function Xc(e){return e.type==="application/json"||e.type==="application/scim+json"}function Zc(e){if(typeof e=="string")return e;if(e instanceof ArrayBuffer)return"Unknown error";if(typeof e=="object"&&e!==null&&"message"in e){let t=e,r="documentation_url"in t?` - ${t.documentation_url}`:"";return Array.isArray(t.errors)?`${t.message}: ${t.errors.map(n=>JSON.stringify(n)).join(", ")}${r}`:`${t.message}${r}`}return`Unknown error: ${JSON.stringify(e)}`}function mn(e,t){let r=e.defaults(t);return Object.assign(function(o,s){let i=r.merge(o,s);if(!i.request||!i.request.hook)return Fi(r.parse(i));let a=(l,u)=>Fi(r.parse(r.merge(l,u)));return Object.assign(a,{endpoint:r,defaults:mn.bind(null,r)}),i.request.hook(a,i)},{endpoint:r,defaults:mn.bind(null,r)})}var lt=mn(Ei,Yc);var Hi=br(hn(),1);var ep="0.0.0-development";function tp(e){return e.request!==void 0}async function Ui(e,t,r,n){if(!tp(r)||!r?.request.request)throw r;if(r.status>=400&&!e.doNotRetry.includes(r.status)){let o=n.request.retries!=null?n.request.retries:e.retries,s=Math.pow((n.request.retryCount||0)+1,2);throw t.retry.retryRequest(r,o,s)}throw r}async function rp(e,t,r,n){let o=new Hi.default;return o.on("failed",function(s,i){let a=~~s.request.request?.retries,l=~~s.request.request?.retryAfter;if(n.request.retryCount=i.retryCount+1,a>i.retryCount)return l*e.retryAfterBaseValue}),o.schedule(np.bind(null,e,t,r),n)}async function np(e,t,r,n){let o=await r(n);if(o.data&&o.data.errors&&o.data.errors.length>0&&/Something went wrong while executing your query/.test(o.data.errors[0].message)){let s=new ce(o.data.errors[0].message,500,{request:n,response:o});return Ui(e,t,s,n)}return o}function yn(e,t){let r=Object.assign({enabled:!0,retryAfterBaseValue:1e3,doNotRetry:[400,401,403,404,410,422,451],retries:3},t.retry),n={retry:{retryRequest:(o,s,i)=>(o.request.request=Object.assign({},o.request.request,{retries:s,retryAfter:i}),o)}};return r.enabled&&(e.hook.error("request",Ui.bind(null,r,n)),e.hook.wrap("request",rp.bind(null,r,n))),n}yn.VERSION=ep;var qi=br(hn(),1),op="0.0.0-development",bn=()=>Promise.resolve();function sp(e,t,r){return e.retryLimiter.schedule(ip,e,t,r)}async function ip(e,t,r){let{pathname:n}=new URL(r.url,"http://github.test"),o=ap(r.method,n),s=!o&&r.method!=="GET"&&r.method!=="HEAD",i=r.method==="GET"&&n.startsWith("/search/"),a=n.startsWith("/graphql"),u=~~t.retryCount>0?{priority:0,weight:0}:{};e.clustering&&(u.expiration=1e3*60),(s||a)&&await e.write.key(e.id).schedule(u,bn),s&&e.triggersNotification(n)&&await e.notifications.key(e.id).schedule(u,bn),i&&await e.search.key(e.id).schedule(u,bn);let c=(o?e.auth:e.global).key(e.id).schedule(u,t,r);if(a){let p=await c;if(p.data.errors!=null&&p.data.errors.some(m=>m.type==="RATE_LIMITED"))throw Object.assign(new Error("GraphQL Rate Limit Exceeded"),{response:p,data:p.data})}return c}function ap(e,t){return e==="PATCH"&&/^\/applications\/[^/]+\/token\/scoped$/.test(t)||e==="POST"&&(/^\/applications\/[^/]+\/token$/.test(t)||/^\/app\/installations\/[^/]+\/access_tokens$/.test(t)||t==="/login/oauth/access_token")}var lp=["/orgs/{org}/invitations","/orgs/{org}/invitations/{invitation_id}","/orgs/{org}/teams/{team_slug}/discussions","/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments","/repos/{owner}/{repo}/collaborators/{username}","/repos/{owner}/{repo}/commits/{commit_sha}/comments","/repos/{owner}/{repo}/issues","/repos/{owner}/{repo}/issues/{issue_number}/comments","/repos/{owner}/{repo}/issues/{issue_number}/sub_issue","/repos/{owner}/{repo}/issues/{issue_number}/sub_issues/priority","/repos/{owner}/{repo}/pulls","/repos/{owner}/{repo}/pulls/{pull_number}/comments","/repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies","/repos/{owner}/{repo}/pulls/{pull_number}/merge","/repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers","/repos/{owner}/{repo}/pulls/{pull_number}/reviews","/repos/{owner}/{repo}/releases","/teams/{team_id}/discussions","/teams/{team_id}/discussions/{discussion_number}/comments"];function dp(e){let r=`^(?:${e.map(n=>n.split("/").map(o=>o.startsWith("{")?"(?:.+?)":o).join("/")).map(n=>`(?:${n})`).join("|")})[^/]*$`;return new RegExp(r,"i")}var Wi=dp(lp),Ki=Wi.test.bind(Wi),te={},up=function(e,t){te.global=new e.Group({id:"octokit-global",maxConcurrent:10,...t}),te.auth=new e.Group({id:"octokit-auth",maxConcurrent:1,...t}),te.search=new e.Group({id:"octokit-search",maxConcurrent:1,minTime:2e3,...t}),te.write=new e.Group({id:"octokit-write",maxConcurrent:1,minTime:1e3,...t}),te.notifications=new e.Group({id:"octokit-notifications",maxConcurrent:1,minTime:3e3,...t})};function Mt(e,t){let{enabled:r=!0,Bottleneck:n=qi.default,id:o="no-id",timeout:s=1e3*60*2,connection:i}=t.throttle||{};if(!r)return{};let a={timeout:s};typeof i<"u"&&(a.connection=i);let l=Object.assign({clustering:i!=null,triggersNotification:Ki,fallbackSecondaryRateRetryAfter:60,retryAfterBaseValue:1e3,id:o},t.throttle);if(typeof l.onSecondaryRateLimit!="function"||typeof l.onRateLimit!="function")throw new Error(`octokit/plugin-throttling error:
26
30
  You must pass the onSecondaryRateLimit and onRateLimit error handlers.
27
31
  See https://octokit.github.io/rest.js/#throttling
28
32
 
@@ -32,23 +36,23 @@ var Ol=Object.create;var Ao=Object.defineProperty;var Dl=Object.getOwnPropertyDe
32
36
  onRateLimit: (retryAfter, options) => {/* ... */}
33
37
  }
34
38
  })
35
- `);let u=!1,c=()=>{if(u)return;u=!0,Z.global==null&&Sc(n,a),l.global=l.global??Z.global,l.auth=l.auth??Z.auth,l.search=l.search??Z.search,l.write=l.write??Z.write,l.notifications=l.notifications??Z.notifications,l.retryLimiter=l.retryLimiter??new n;let p={},g=new n.Events(p);p.on("secondary-limit",l.onSecondaryRateLimit),p.on("rate-limit",l.onRateLimit),p.on("error",b=>e.log.warn("Error in throttling-plugin limit handler",b)),l.retryLimiter.on("failed",async function(b,_){let[S,v,x]=_.args,{pathname:J}=new URL(x.url,"http://github.test");if(!(J.startsWith("/graphql")&&b.status!==401||b.status===403||b.status===429))return;let O=~~v.retryCount;v.retryCount=O,x.request.retryCount=O;let{wantRetry:we,retryAfter:me=0}=await async function(){if(/\bsecondary rate\b/i.test(b.message)){let te=Number(b.response.headers["retry-after"])||S.fallbackSecondaryRateRetryAfter;return{wantRetry:await g.trigger("secondary-limit",te,x,e,O),retryAfter:te}}if(b.response.headers!=null&&b.response.headers["x-ratelimit-remaining"]==="0"||(b.response.data?.errors??[]).some(te=>te.type==="RATE_LIMITED")){let te=new Date(~~b.response.headers["x-ratelimit-reset"]*1e3).getTime(),ze=Math.max(Math.ceil((te-Date.now())/1e3)+1,0);return{wantRetry:await g.trigger("rate-limit",ze,x,e,O),retryAfter:ze}}return{}}();if(we)return v.retryCount++,me*S.retryAfterBaseValue})};return e.hook.wrap("request",(p,g)=>(c(),_c(l,p,g))),{}}Gt.VERSION=bc;Gt.triggersNotification=Pi;function $t(e,t,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(t)?t.reverse().reduce((o,s)=>$t.bind(null,e,s,o,n),r)():Promise.resolve().then(()=>e.registry[t]?e.registry[t].reduce((o,s)=>s.hook.bind(null,o,n),r)():r(n))}function Oi(e,t,r,n){let o=n;e.registry[r]||(e.registry[r]=[]),t==="before"&&(n=(s,i)=>Promise.resolve().then(o.bind(null,i)).then(s.bind(null,i))),t==="after"&&(n=(s,i)=>{let a;return Promise.resolve().then(s.bind(null,i)).then(l=>(a=l,o(a,i))).then(()=>a)}),t==="error"&&(n=(s,i)=>Promise.resolve().then(s.bind(null,i)).catch(a=>o(a,i))),e.registry[r].push({hook:n,orig:o})}function Di(e,t,r){if(!e.registry[t])return;let n=e.registry[t].map(o=>o.orig).indexOf(r);n!==-1&&e.registry[t].splice(n,1)}var Gi=Function.bind,$i=Gi.bind(Gi);function ji(e,t,r){let n=$i(Di,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(o=>{let s=r?[t,o,r]:[t,o];e[o]=e.api[o]=$i(Oi,null).apply(null,s)})}function vc(){let e=Symbol("Singular"),t={registry:{}},r=$t.bind(null,t,e);return ji(r,t,e),r}function Tc(){let e={registry:{}},t=$t.bind(null,e);return ji(t,e),t}var Ii={Singular:vc,Collection:Tc};var xc="0.0.0-development";function Ac(e){return`Request failed due to following response errors:
39
+ `);let u=!1,c=()=>{if(u)return;u=!0,te.global==null&&up(n,a),l.global=l.global??te.global,l.auth=l.auth??te.auth,l.search=l.search??te.search,l.write=l.write??te.write,l.notifications=l.notifications??te.notifications,l.retryLimiter=l.retryLimiter??new n;let p={},m=new n.Events(p);p.on("secondary-limit",l.onSecondaryRateLimit),p.on("rate-limit",l.onRateLimit),p.on("error",b=>e.log.warn("Error in throttling-plugin limit handler",b)),l.retryLimiter.on("failed",async function(b,_){let[S,v,T]=_.args,{pathname:C}=new URL(T.url,"http://github.test");if(!(C.startsWith("/graphql")&&b.status!==401||b.status===403||b.status===429))return;let D=~~v.retryCount;v.retryCount=D,T.request.retryCount=D;let{wantRetry:Te,retryAfter:he=0}=await async function(){if(/\bsecondary rate\b/i.test(b.message)){let ne=Number(b.response.headers["retry-after"])||S.fallbackSecondaryRateRetryAfter;return{wantRetry:await m.trigger("secondary-limit",ne,T,e,D),retryAfter:ne}}if(b.response.headers!=null&&b.response.headers["x-ratelimit-remaining"]==="0"||(b.response.data?.errors??[]).some(ne=>ne.type==="RATE_LIMITED")){let ne=new Date(~~b.response.headers["x-ratelimit-reset"]*1e3).getTime(),Ze=Math.max(Math.ceil((ne-Date.now())/1e3)+1,0);return{wantRetry:await m.trigger("rate-limit",Ze,T,e,D),retryAfter:Ze}}return{}}();if(Te)return v.retryCount++,he*S.retryAfterBaseValue})};return e.hook.wrap("request",(p,m)=>(c(),sp(l,p,m))),{}}Mt.VERSION=op;Mt.triggersNotification=Ki;function Ft(e,t,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(t)?t.reverse().reduce((o,s)=>Ft.bind(null,e,s,o,n),r)():Promise.resolve().then(()=>e.registry[t]?e.registry[t].reduce((o,s)=>s.hook.bind(null,o,n),r)():r(n))}function Vi(e,t,r,n){let o=n;e.registry[r]||(e.registry[r]=[]),t==="before"&&(n=(s,i)=>Promise.resolve().then(o.bind(null,i)).then(s.bind(null,i))),t==="after"&&(n=(s,i)=>{let a;return Promise.resolve().then(s.bind(null,i)).then(l=>(a=l,o(a,i))).then(()=>a)}),t==="error"&&(n=(s,i)=>Promise.resolve().then(s.bind(null,i)).catch(a=>o(a,i))),e.registry[r].push({hook:n,orig:o})}function Ji(e,t,r){if(!e.registry[t])return;let n=e.registry[t].map(o=>o.orig).indexOf(r);n!==-1&&e.registry[t].splice(n,1)}var zi=Function.bind,Yi=zi.bind(zi);function Qi(e,t,r){let n=Yi(Ji,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(o=>{let s=r?[t,o,r]:[t,o];e[o]=e.api[o]=Yi(Vi,null).apply(null,s)})}function cp(){let e=Symbol("Singular"),t={registry:{}},r=Ft.bind(null,t,e);return Qi(r,t,e),r}function pp(){let e={registry:{}},t=Ft.bind(null,e);return Qi(t,e),t}var Xi={Singular:cp,Collection:pp};var mp="0.0.0-development";function fp(e){return`Request failed due to following response errors:
36
40
  `+e.errors.map(t=>` - ${t.message}`).join(`
37
- `)}var Pc=class extends Error{constructor(e,t,r){super(Ac(r)),this.request=e,this.headers=t,this.response=r,this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}request;headers;response;name="GraphqlResponseError";errors;data},Oc=["method","baseUrl","url","headers","request","query","mediaType","operationName"],Dc=["query","method","url"],Li=/\/api\/v3\/?$/;function Gc(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let i in r)if(Dc.includes(i))return Promise.reject(new Error(`[@octokit/graphql] "${i}" cannot be used as variable name`))}let n=typeof t=="string"?Object.assign({query:t},r):t,o=Object.keys(n).reduce((i,a)=>Oc.includes(a)?(i[a]=n[a],i):(i.variables||(i.variables={}),i.variables[a]=n[a],i),{}),s=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return Li.test(s)&&(o.url=s.replace(Li,"/api/graphql")),e(o).then(i=>{if(i.data.errors){let a={};for(let l of Object.keys(i.headers))a[l]=i.headers[l];throw new Pc(o,a,i.data)}return i.data.data})}function cn(e,t){let r=e.defaults(t);return Object.assign((o,s)=>Gc(r,o,s),{defaults:cn.bind(null,r),endpoint:r.endpoint})}var wk=cn(nt,{headers:{"user-agent":`octokit-graphql.js/${xc} ${he()}`},method:"POST",url:"/graphql"});function Ci(e){return cn(e,{method:"POST",url:"/graphql"})}var pn="(?:[a-zA-Z0-9_-]+)",Ni="\\.",Mi=new RegExp(`^${pn}${Ni}${pn}${Ni}${pn}$`),$c=Mi.test.bind(Mi);async function jc(e){let t=$c(e),r=e.startsWith("v1.")||e.startsWith("ghs_"),n=e.startsWith("ghu_");return{type:"token",token:e,tokenType:t?"app":r?"installation":n?"user-to-server":"oauth"}}function Ic(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function Lc(e,t,r,n){let o=t.endpoint.merge(r,n);return o.headers.authorization=Ic(e),t(o)}var Fi=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(jc.bind(null,t),{hook:Lc.bind(null,t)})};var mn="7.0.7";var Bi=()=>{},Cc=console.warn.bind(console),Nc=console.error.bind(console);function Mc(e={}){return typeof e.debug!="function"&&(e.debug=Bi),typeof e.info!="function"&&(e.info=Bi),typeof e.warn!="function"&&(e.warn=Cc),typeof e.error!="function"&&(e.error=Nc),e}var Ui=`octokit-core.js/${mn} ${he()}`,jt=class{static VERSION=mn;static defaults(t){return class extends this{constructor(...n){let o=n[0]||{};if(typeof t=="function"){super(t(o));return}super(Object.assign({},t,o,o.userAgent&&t.userAgent?{userAgent:`${o.userAgent} ${t.userAgent}`}:null))}}}static plugins=[];static plugin(...t){let r=this.plugins;return class extends this{static plugins=r.concat(t.filter(o=>!r.includes(o)))}}constructor(t={}){let r=new Ii.Collection,n={baseUrl:nt.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},t.request,{hook:r.bind(null,"request")}),mediaType:{previews:[],format:""}};if(n.headers["user-agent"]=t.userAgent?`${t.userAgent} ${Ui}`:Ui,t.baseUrl&&(n.baseUrl=t.baseUrl),t.previews&&(n.mediaType.previews=t.previews),t.timeZone&&(n.headers["time-zone"]=t.timeZone),this.request=nt.defaults(n),this.graphql=Ci(this.request).defaults(n),this.log=Mc(t.log),this.hook=r,t.authStrategy){let{authStrategy:s,...i}=t,a=s(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:i},t.auth));r.wrap("request",a.hook),this.auth=a}else if(!t.auth)this.auth=async()=>({type:"unauthenticated"});else{let s=Fi(t.auth);r.wrap("request",s.hook),this.auth=s}let o=this.constructor;for(let s=0;s<o.plugins.length;++s)Object.assign(this,o.plugins[s](this,t))}request;graphql;log;hook;auth};var Hi="6.0.0";function fn(e){e.hook.wrap("request",(t,r)=>{e.log.debug("request",r);let n=Date.now(),o=e.request.endpoint.parse(r),s=o.url.replace(r.baseUrl,"");return t(r).then(i=>{let a=i.headers["x-github-request-id"];return e.log.info(`${o.method} ${s} - ${i.status} with id ${a} in ${Date.now()-n}ms`),i}).catch(i=>{let a=i.response?.headers["x-github-request-id"]||"UNKNOWN";throw e.log.error(`${o.method} ${s} - ${i.status} with id ${a} in ${Date.now()-n}ms`),i})})}fn.VERSION=Hi;var Fc="0.0.0-development";function Bc(e){if(!e.data)return{...e,data:[]};if(!(("total_count"in e.data||"total_commits"in e.data)&&!("url"in e.data)))return e;let r=e.data.incomplete_results,n=e.data.repository_selection,o=e.data.total_count,s=e.data.total_commits;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count,delete e.data.total_commits;let i=Object.keys(e.data)[0],a=e.data[i];return e.data=a,typeof r<"u"&&(e.data.incomplete_results=r),typeof n<"u"&&(e.data.repository_selection=n),e.data.total_count=o,e.data.total_commits=s,e}function gn(e,t,r){let n=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),o=typeof t=="function"?t:e.request,s=n.method,i=n.headers,a=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!a)return{done:!0};try{let l=await o({method:s,url:a,headers:i}),u=Bc(l);if(a=((u.headers.link||"").match(/<([^<>]+)>;\s*rel="next"/)||[])[1],!a&&"total_commits"in u.data){let c=new URL(u.url),p=c.searchParams,g=parseInt(p.get("page")||"1",10),b=parseInt(p.get("per_page")||"250",10);g*b<u.data.total_commits&&(p.set("page",String(g+1)),a=c.toString())}return{value:u}}catch(l){if(l.status!==409)throw l;return a="",{value:{status:200,headers:{},data:[]}}}}})}}function Wi(e,t,r,n){return typeof r=="function"&&(n=r,r=void 0),qi(e,[],gn(e,t,r)[Symbol.asyncIterator](),n)}function qi(e,t,r,n){return r.next().then(o=>{if(o.done)return t;let s=!1;function i(){s=!0}return t=t.concat(n?n(o.value,i):o.value.data),s?t:qi(e,t,r,n)})}var Mk=Object.assign(Wi,{iterator:gn});function hn(e){return{paginate:Object.assign(Wi.bind(null,e),{iterator:gn.bind(null,e)})}}hn.VERSION=Fc;var yn="17.0.0";var Uc={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addRepoAccessToSelfHostedRunnerGroupInOrg:["PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repos/{owner}/{repo}/environments/{environment_name}/variables"],createHostedRunnerForOrg:["POST /orgs/{org}/actions/hosted-runners"],createOrUpdateEnvironmentSecret:["PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteCustomImageFromOrg:["DELETE /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}"],deleteCustomImageVersionFromOrg:["DELETE /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}/versions/{version}"],deleteEnvironmentSecret:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],deleteHostedRunnerForOrg:["DELETE /orgs/{org}/actions/hosted-runners/{hosted_runner_id}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomImageForOrg:["GET /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}"],getCustomImageVersionForOrg:["GET /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}/versions/{version}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getHostedRunnerForOrg:["GET /orgs/{org}/actions/hosted-runners/{hosted_runner_id}"],getHostedRunnersGithubOwnedImagesForOrg:["GET /orgs/{org}/actions/hosted-runners/images/github-owned"],getHostedRunnersLimitsForOrg:["GET /orgs/{org}/actions/hosted-runners/limits"],getHostedRunnersMachineSpecsForOrg:["GET /orgs/{org}/actions/hosted-runners/machine-sizes"],getHostedRunnersPartnerImagesForOrg:["GET /orgs/{org}/actions/hosted-runners/images/partner"],getHostedRunnersPlatformsForOrg:["GET /orgs/{org}/actions/hosted-runners/platforms"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listCustomImageVersionsForOrg:["GET /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}/versions"],listCustomImagesForOrg:["GET /orgs/{org}/actions/hosted-runners/images/custom"],listEnvironmentSecrets:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables"],listGithubHostedRunnersInGroupForOrg:["GET /orgs/{org}/actions/runner-groups/{runner_group_id}/hosted-runners"],listHostedRunnersForOrg:["GET /orgs/{org}/actions/hosted-runners"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],updateHostedRunnerForOrg:["PATCH /orgs/{org}/actions/hosted-runners/{hosted_runner_id}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubBillingPremiumRequestUsageReportOrg:["GET /organizations/{org}/settings/billing/premium_request/usage"],getGithubBillingPremiumRequestUsageReportUser:["GET /users/{username}/settings/billing/premium_request/usage"],getGithubBillingUsageReportOrg:["GET /organizations/{org}/settings/billing/usage"],getGithubBillingUsageReportUser:["GET /users/{username}/settings/billing/usage"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},campaigns:{createCampaign:["POST /orgs/{org}/campaigns"],deleteCampaign:["DELETE /orgs/{org}/campaigns/{campaign_number}"],getCampaignSummary:["GET /orgs/{org}/campaigns/{campaign_number}"],listOrgCampaigns:["GET /orgs/{org}/campaigns"],updateCampaign:["PATCH /orgs/{org}/campaigns/{campaign_number}"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{commitAutofix:["POST /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix/commits"],createAutofix:["POST /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix"],createVariantAnalysis:["POST /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses"],deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],deleteCodeqlDatabase:["DELETE /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getAutofix:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],getVariantAnalysis:["GET /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}"],getVariantAnalysisRepoTask:["GET /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}/repos/{repo_owner}/{repo_name}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codeSecurity:{attachConfiguration:["POST /orgs/{org}/code-security/configurations/{configuration_id}/attach"],attachEnterpriseConfiguration:["POST /enterprises/{enterprise}/code-security/configurations/{configuration_id}/attach"],createConfiguration:["POST /orgs/{org}/code-security/configurations"],createConfigurationForEnterprise:["POST /enterprises/{enterprise}/code-security/configurations"],deleteConfiguration:["DELETE /orgs/{org}/code-security/configurations/{configuration_id}"],deleteConfigurationForEnterprise:["DELETE /enterprises/{enterprise}/code-security/configurations/{configuration_id}"],detachConfiguration:["DELETE /orgs/{org}/code-security/configurations/detach"],getConfiguration:["GET /orgs/{org}/code-security/configurations/{configuration_id}"],getConfigurationForRepository:["GET /repos/{owner}/{repo}/code-security-configuration"],getConfigurationsForEnterprise:["GET /enterprises/{enterprise}/code-security/configurations"],getConfigurationsForOrg:["GET /orgs/{org}/code-security/configurations"],getDefaultConfigurations:["GET /orgs/{org}/code-security/configurations/defaults"],getDefaultConfigurationsForEnterprise:["GET /enterprises/{enterprise}/code-security/configurations/defaults"],getRepositoriesForConfiguration:["GET /orgs/{org}/code-security/configurations/{configuration_id}/repositories"],getRepositoriesForEnterpriseConfiguration:["GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}/repositories"],getSingleConfigurationForEnterprise:["GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}"],setConfigurationAsDefault:["PUT /orgs/{org}/code-security/configurations/{configuration_id}/defaults"],setConfigurationAsDefaultForEnterprise:["PUT /enterprises/{enterprise}/code-security/configurations/{configuration_id}/defaults"],updateConfiguration:["PATCH /orgs/{org}/code-security/configurations/{configuration_id}"],updateEnterpriseConfiguration:["PATCH /enterprises/{enterprise}/code-security/configurations/{configuration_id}"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],copilotMetricsForOrganization:["GET /orgs/{org}/copilot/metrics"],copilotMetricsForTeam:["GET /orgs/{org}/team/{team_slug}/copilot/metrics"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"]},credentials:{revoke:["POST /credentials/revoke"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],repositoryAccessForOrg:["GET /organizations/{org}/dependabot/repository-access"],setRepositoryAccessDefaultLevel:["PUT /organizations/{org}/dependabot/repository-access/default-level"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],updateRepositoryAccessForOrg:["PATCH /organizations/{org}/dependabot/repository-access"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},enterpriseTeamMemberships:{add:["PUT /enterprises/{enterprise}/teams/{enterprise-team}/memberships/{username}"],bulkAdd:["POST /enterprises/{enterprise}/teams/{enterprise-team}/memberships/add"],bulkRemove:["POST /enterprises/{enterprise}/teams/{enterprise-team}/memberships/remove"],get:["GET /enterprises/{enterprise}/teams/{enterprise-team}/memberships/{username}"],list:["GET /enterprises/{enterprise}/teams/{enterprise-team}/memberships"],remove:["DELETE /enterprises/{enterprise}/teams/{enterprise-team}/memberships/{username}"]},enterpriseTeamOrganizations:{add:["PUT /enterprises/{enterprise}/teams/{enterprise-team}/organizations/{org}"],bulkAdd:["POST /enterprises/{enterprise}/teams/{enterprise-team}/organizations/add"],bulkRemove:["POST /enterprises/{enterprise}/teams/{enterprise-team}/organizations/remove"],delete:["DELETE /enterprises/{enterprise}/teams/{enterprise-team}/organizations/{org}"],getAssignment:["GET /enterprises/{enterprise}/teams/{enterprise-team}/organizations/{org}"],getAssignments:["GET /enterprises/{enterprise}/teams/{enterprise-team}/organizations"]},enterpriseTeams:{create:["POST /enterprises/{enterprise}/teams"],delete:["DELETE /enterprises/{enterprise}/teams/{team_slug}"],get:["GET /enterprises/{enterprise}/teams/{team_slug}"],list:["GET /enterprises/{enterprise}/teams"],update:["PATCH /enterprises/{enterprise}/teams/{team_slug}"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},hostedCompute:{createNetworkConfigurationForOrg:["POST /orgs/{org}/settings/network-configurations"],deleteNetworkConfigurationFromOrg:["DELETE /orgs/{org}/settings/network-configurations/{network_configuration_id}"],getNetworkConfigurationForOrg:["GET /orgs/{org}/settings/network-configurations/{network_configuration_id}"],getNetworkSettingsForOrg:["GET /orgs/{org}/settings/network-settings/{network_settings_id}"],listNetworkConfigurationsForOrg:["GET /orgs/{org}/settings/network-configurations"],updateNetworkConfigurationForOrg:["PATCH /orgs/{org}/settings/network-configurations/{network_configuration_id}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addBlockedByDependency:["POST /repos/{owner}/{repo}/issues/{issue_number}/dependencies/blocked_by"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],addSubIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/sub_issues"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],getParent:["GET /repos/{owner}/{repo}/issues/{issue_number}/parent"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listDependenciesBlockedBy:["GET /repos/{owner}/{repo}/issues/{issue_number}/dependencies/blocked_by"],listDependenciesBlocking:["GET /repos/{owner}/{repo}/issues/{issue_number}/dependencies/blocking"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],listSubIssues:["GET /repos/{owner}/{repo}/issues/{issue_number}/sub_issues"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeDependencyBlockedBy:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/dependencies/blocked_by/{issue_id}"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],removeSubIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/sub_issue"],reprioritizeSubIssue:["PATCH /repos/{owner}/{repo}/issues/{issue_number}/sub_issues/priority"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}",{},{deprecated:"octokit.rest.orgs.addSecurityManagerTeam() is deprecated, see https://docs.github.com/rest/orgs/security-managers#add-a-security-manager-team"}],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createArtifactStorageRecord:["POST /orgs/{org}/artifacts/metadata/storage-record"],createInvitation:["POST /orgs/{org}/invitations"],createIssueType:["POST /orgs/{org}/issue-types"],createWebhook:["POST /orgs/{org}/hooks"],customPropertiesForOrgsCreateOrUpdateOrganizationValues:["PATCH /organizations/{org}/org-properties/values"],customPropertiesForOrgsGetOrganizationValues:["GET /organizations/{org}/org-properties/values"],customPropertiesForReposCreateOrUpdateOrganizationDefinition:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],customPropertiesForReposCreateOrUpdateOrganizationDefinitions:["PATCH /orgs/{org}/properties/schema"],customPropertiesForReposCreateOrUpdateOrganizationValues:["PATCH /orgs/{org}/properties/values"],customPropertiesForReposDeleteOrganizationDefinition:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],customPropertiesForReposGetOrganizationDefinition:["GET /orgs/{org}/properties/schema/{custom_property_name}"],customPropertiesForReposGetOrganizationDefinitions:["GET /orgs/{org}/properties/schema"],customPropertiesForReposGetOrganizationValues:["GET /orgs/{org}/properties/values"],delete:["DELETE /orgs/{org}"],deleteAttestationsBulk:["POST /orgs/{org}/attestations/delete-request"],deleteAttestationsById:["DELETE /orgs/{org}/attestations/{attestation_id}"],deleteAttestationsBySubjectDigest:["DELETE /orgs/{org}/attestations/digest/{subject_digest}"],deleteIssueType:["DELETE /orgs/{org}/issue-types/{issue_type_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],disableSelectedRepositoryImmutableReleasesOrganization:["DELETE /orgs/{org}/settings/immutable-releases/repositories/{repository_id}"],enableSelectedRepositoryImmutableReleasesOrganization:["PUT /orgs/{org}/settings/immutable-releases/repositories/{repository_id}"],get:["GET /orgs/{org}"],getImmutableReleasesSettings:["GET /orgs/{org}/settings/immutable-releases"],getImmutableReleasesSettingsRepositories:["GET /orgs/{org}/settings/immutable-releases/repositories"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getOrgRulesetHistory:["GET /orgs/{org}/rulesets/{ruleset_id}/history"],getOrgRulesetVersion:["GET /orgs/{org}/rulesets/{ruleset_id}/history/{version_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listArtifactStorageRecords:["GET /orgs/{org}/artifacts/{subject_digest}/metadata/storage-records"],listAttestationRepositories:["GET /orgs/{org}/attestations/repositories"],listAttestations:["GET /orgs/{org}/attestations/{subject_digest}"],listAttestationsBulk:["POST /orgs/{org}/attestations/bulk-list{?per_page,before,after}"],listBlockedUsers:["GET /orgs/{org}/blocks"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listIssueTypes:["GET /orgs/{org}/issue-types"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers",{},{deprecated:"octokit.rest.orgs.listSecurityManagerTeams() is deprecated, see https://docs.github.com/rest/orgs/security-managers#list-security-manager-teams"}],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}",{},{deprecated:"octokit.rest.orgs.removeSecurityManagerTeam() is deprecated, see https://docs.github.com/rest/orgs/security-managers#remove-a-security-manager-team"}],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setImmutableReleasesSettings:["PUT /orgs/{org}/settings/immutable-releases"],setImmutableReleasesSettingsRepositories:["PUT /orgs/{org}/settings/immutable-releases/repositories"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateIssueType:["PUT /orgs/{org}/issue-types/{issue_type_id}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},privateRegistries:{createOrgPrivateRegistry:["POST /orgs/{org}/private-registries"],deleteOrgPrivateRegistry:["DELETE /orgs/{org}/private-registries/{secret_name}"],getOrgPrivateRegistry:["GET /orgs/{org}/private-registries/{secret_name}"],getOrgPublicKey:["GET /orgs/{org}/private-registries/public-key"],listOrgPrivateRegistries:["GET /orgs/{org}/private-registries"],updateOrgPrivateRegistry:["PATCH /orgs/{org}/private-registries/{secret_name}"]},projects:{addItemForOrg:["POST /orgs/{org}/projectsV2/{project_number}/items"],addItemForUser:["POST /users/{username}/projectsV2/{project_number}/items"],deleteItemForOrg:["DELETE /orgs/{org}/projectsV2/{project_number}/items/{item_id}"],deleteItemForUser:["DELETE /users/{username}/projectsV2/{project_number}/items/{item_id}"],getFieldForOrg:["GET /orgs/{org}/projectsV2/{project_number}/fields/{field_id}"],getFieldForUser:["GET /users/{username}/projectsV2/{project_number}/fields/{field_id}"],getForOrg:["GET /orgs/{org}/projectsV2/{project_number}"],getForUser:["GET /users/{username}/projectsV2/{project_number}"],getOrgItem:["GET /orgs/{org}/projectsV2/{project_number}/items/{item_id}"],getUserItem:["GET /users/{username}/projectsV2/{project_number}/items/{item_id}"],listFieldsForOrg:["GET /orgs/{org}/projectsV2/{project_number}/fields"],listFieldsForUser:["GET /users/{username}/projectsV2/{project_number}/fields"],listForOrg:["GET /orgs/{org}/projectsV2"],listForUser:["GET /users/{username}/projectsV2"],listItemsForOrg:["GET /orgs/{org}/projectsV2/{project_number}/items"],listItemsForUser:["GET /users/{username}/projectsV2/{project_number}/items"],updateItemForOrg:["PATCH /orgs/{org}/projectsV2/{project_number}/items/{item_id}"],updateItemForUser:["PATCH /users/{username}/projectsV2/{project_number}/items/{item_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkImmutableReleases:["GET /repos/{owner}/{repo}/immutable-releases"],checkPrivateVulnerabilityReporting:["GET /repos/{owner}/{repo}/private-vulnerability-reporting"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAttestation:["POST /repos/{owner}/{repo}/attestations"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],customPropertiesForReposCreateOrUpdateRepositoryValues:["PATCH /repos/{owner}/{repo}/properties/values"],customPropertiesForReposGetRepositoryValues:["GET /repos/{owner}/{repo}/properties/values"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disableImmutableReleases:["DELETE /repos/{owner}/{repo}/immutable-releases"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enableImmutableReleases:["PUT /repos/{owner}/{repo}/immutable-releases"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesetHistory:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}/history"],getRepoRulesetVersion:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}/history/{version_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAttestations:["GET /repos/{owner}/{repo}/attestations/{subject_digest}"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{createPushProtectionBypass:["POST /repos/{owner}/{repo}/secret-scanning/push-protection-bypasses"],getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],getScanHistory:["GET /repos/{owner}/{repo}/secret-scanning/scan-history"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],listOrgPatternConfigs:["GET /orgs/{org}/secret-scanning/pattern-configurations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],updateOrgPatternConfigs:["PATCH /orgs/{org}/secret-scanning/pattern-configurations"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteAttestationsBulk:["POST /users/{username}/attestations/delete-request"],deleteAttestationsById:["DELETE /users/{username}/attestations/{attestation_id}"],deleteAttestationsBySubjectDigest:["DELETE /users/{username}/attestations/digest/{subject_digest}"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getById:["GET /user/{account_id}"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listAttestations:["GET /users/{username}/attestations/{subject_digest}"],listAttestationsBulk:["POST /users/{username}/attestations/bulk-list{?per_page,before,after}"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},Ki=Uc;var Ae=new Map;for(let[e,t]of Object.entries(Ki))for(let[r,n]of Object.entries(t)){let[o,s,i]=n,[a,l]=o.split(/ /),u=Object.assign({method:a,url:l},s);Ae.has(e)||Ae.set(e,new Map),Ae.get(e).set(r,{scope:e,methodName:r,endpointDefaults:u,decorations:i})}var Hc={has({scope:e},t){return Ae.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...Ae.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},n){if(r[n])return r[n];let o=Ae.get(t).get(n);if(!o)return;let{endpointDefaults:s,decorations:i}=o;return i?r[n]=Wc(e,t,n,s,i):r[n]=e.request.defaults(s),r[n]}};function bn(e){let t={};for(let r of Ae.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},Hc);return t}function Wc(e,t,r,n,o){let s=e.request.defaults(n);function i(...a){let l=s.endpoint.merge(...a);if(o.mapToData)return l=Object.assign({},l,{data:l[o.mapToData],[o.mapToData]:void 0}),s(l);if(o.renamed){let[u,c]=o.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${u}.${c}()`)}if(o.deprecated&&e.log.warn(o.deprecated),o.renamedParameters){let u=s.endpoint.merge(...a);for(let[c,p]of Object.entries(o.renamedParameters))c in u&&(e.log.warn(`"${c}" parameter is deprecated for "octokit.${t}.${r}()". Use "${p}" instead`),p in u||(u[p]=u[c]),delete u[c]);return s(u)}return s(...a)}return Object.assign(i,s)}function qc(e){return{rest:bn(e)}}qc.VERSION=yn;function _n(e){let t=bn(e);return{...t,rest:t}}_n.VERSION=yn;var Vi="22.0.1";var Ji=jt.plugin(fn,_n,hn).defaults({userAgent:`octokit-rest.js/${Vi}`});var mR=Ji.plugin(dn,Gt);var gR=60*6e4;function kn(e){if(!tp(e))return!1;let t=e;return t.version===1&&t.origin==="asked"&&(t.outcome==="asked"||t.outcome==="unanswered")&&(t.asked_at===null||typeof t.asked_at=="string")&&(t.age_ms===null||typeof t.age_ms=="number")&&typeof t.threshold_ms=="number"&&typeof t.stale=="boolean"&&typeof t.posture=="string"&&typeof t.reserved_fraction=="number"&&typeof t.next_poll_ms=="number"&&Array.isArray(t.pools)&&Array.isArray(t.unreported_pools)&&typeof t.reason=="string"}function tp(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var Yi=4*60*1e3;var lp=["api","graphql"],gE=Jr(lp);var Qi=2e4,hE=7*24*60*60*1e3;var dp=2,up=dp*Qi;function Zi(e){if(!Xi(e))return!1;let t=e;return t.version===1&&(t.fetched_at===null||typeof t.fetched_at=="string")&&(t.age_ms===null||typeof t.age_ms=="number")&&typeof t.threshold_ms=="number"&&typeof t.stale=="boolean"&&Number.isInteger(t.request_count)&&Xi(t.rate_limit)&&Array.isArray(t.projects)&&typeof t.reason=="string"}function Xi(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var ea=["open_pull_requests","open_issues","merged_today","ready_queue","human_queue"];function Rn(e){if(!It(e))return!1;let t=e;return t.version===1&&typeof t.threshold_ms=="number"&&typeof t.reason=="string"&&Array.isArray(t.projects)&&t.projects.every(cp)}function cp(e){if(!It(e))return!1;let t=e;if(typeof t.project_label!="string"||typeof t.repository!="string"||typeof t.outcome!="string"||!It(t.counters))return!1;let r=t.counters;return ea.every(n=>pp(r[n]))}function pp(e){if(!It(e))return!1;let t=e;return typeof t.name=="string"&&(t.value===null||typeof t.value=="number")&&(t.fetched_at===null||typeof t.fetched_at=="string")&&(t.age_ms===null||typeof t.age_ms=="number")&&typeof t.threshold_ms=="number"&&typeof t.stale=="boolean"&&typeof t.reason=="string"}function It(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function wn(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return Number.isInteger(t.count)&&Array.isArray(t.recent)}function na(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return typeof t.generated_at=="string"&&ra(t.hour)&&ra(t.day)&&(t.history_48h===void 0||mp(t.history_48h))}function mp(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return t.hours===48&&ta(t.tokens_per_hour)&&ta(t.tickets_per_hour)}function ta(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return Array.isArray(t.buckets)&&t.buckets.length===48&&t.buckets.every(r=>{if(r===null||typeof r!="object"||Array.isArray(r))return!1;let n=r;return typeof n.hour=="string"&&(n.value===null||typeof n.value=="number")&&(n.absent_reason===null||typeof n.absent_reason=="string")})}function ra(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return typeof t.window=="string"&&typeof t.window_ms=="number"&&En(t.tokens_per_min)&&En(t.tools_per_min)&&En(t.issues_per_hour)&&Array.isArray(t.unavailable)}function En(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return(t.value===null||typeof t.value=="number")&&(t.absent_reason===null||typeof t.absent_reason=="string")&&Number.isInteger(t.samples)}function ot(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e,r=t.daemon,n=t.staleness,o=t.host;return t.version===1&&typeof t.generated_at=="string"&&r!=null&&typeof r=="object"&&Number.isInteger(r.pid)&&typeof r.daemon_version=="string"&&typeof r.protocol_version=="number"&&n!=null&&typeof n=="object"&&typeof n.stale=="boolean"&&typeof n.threshold_ms=="number"&&Array.isArray(n.unmeasured_workers)&&o!=null&&typeof o=="object"&&Number.isInteger(o.worker_count)&&Number.isInteger(o.project_count)&&typeof o.observed_rss_bytes=="number"&&Array.isArray(t.projects)&&Array.isArray(t.workers)&&(t.known_projects===void 0||Array.isArray(t.known_projects)&&t.known_projects.every(s=>typeof s=="string"))&&(t.registered_projects===void 0||Array.isArray(t.registered_projects)&&t.registered_projects.every(s=>typeof s=="string"))&&(t.lapsed_projects===void 0||Array.isArray(t.lapsed_projects)&&t.lapsed_projects.every(fp))&&(t.stopped_projects===void 0||Array.isArray(t.stopped_projects)&&t.stopped_projects.every(gp))&&(t.orphaned_projects===void 0||Array.isArray(t.orphaned_projects)&&t.orphaned_projects.every(s=>typeof s=="string"))&&(t.repository_activity===void 0||Zi(t.repository_activity))&&(t.remote_counters===void 0||Rn(t.remote_counters))&&(t.github_balance===void 0||kn(t.github_balance))&&(t.deaths===void 0||wn(t.deaths))&&(t.engine===void 0||hp(t.engine))&&(t.metrics===void 0||na(t.metrics))}function fp(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return typeof t.project_label=="string"&&typeof t.at=="string"&&(t.registered_at===void 0||typeof t.registered_at=="string")&&(t.standing===void 0||typeof t.standing=="boolean")&&(t.queue_depth===void 0||Number.isInteger(t.queue_depth))&&typeof t.reason=="string"}function gp(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return typeof t.project_label=="string"&&typeof t.at=="string"&&(t.standing===void 0||typeof t.standing=="boolean")&&(t.queue_depth===void 0||Number.isInteger(t.queue_depth))}function hp(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return typeof t.running_version=="string"&&(t.published_version===null||typeof t.published_version=="string")}var oa={runner:null,model:null,effort:null,origin:null,issue:null,phase:null,step:null,phase_index:null,phase_total:null,failed:!1,heartbeat:null,wait_kind:null,wait_subject:null,wait_pid:null,wait_started_at:null,wait_deadline:null,wait_escalation:null,started_at:null,phase_started_at:null,progress_at:null,context:null,eta:null,added:null,removed:null,tokens:null,tools:null,reasoning:null,text:null};function Sn(e){let t=/^(\d+)\.(\d+)\.(\d+)/.exec(String(e).trim());return t?{major:Number(t[1]),minor:Number(t[2]),patch:Number(t[3])}:null}function sa(e,t){let r=Sn(e),n=Sn(t);return!r||!n?0:r.major-n.major||r.minor-n.minor||r.patch-n.patch}var hS=4*60*60*1e3;var bp=28;function Lt(e,t={}){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?t.fractionalThousands!==!0?`${Math.floor(e/1e3)}k`:`${Number((e/1e3).toFixed(1))}k`:String(e)}function _p(e){return sa(e.latestCachedVersion??"",e.version??"")>0}function ia(e,t){if(!e.version)return null;let r=_p(e);return!r&&t==="update-only"?null:`v${e.version}${r?"*":""}`}function kp(e){let t=e.basename,r=ia(e,"update-only"),n=r?` ${r}`:"";if(e.branch){let o=e.branch;return o.length>bp&&(o=`${o.slice(0,27)}\u2026`),`${t} (${o})${n}`}return e.detachedSha?`${t} (detached ${e.detachedSha})${n}`:`${t}${n}`}function vn(e){return!e||!e.model?null:e.effort?`${e.model}\xB7${e.effort}`:e.model}function Tn(e){if(!e)return null;let t=e.contextTokens;if(t===void 0||t===0)return null;let r=Lt(t);return e.contextPercent===void 0?r:`${r} ${Math.round(e.contextPercent)}%`}function xn(e){if(!e)return null;let t=[];return e.usage5h!==void 0&&t.push(`5h=${Math.round(e.usage5h)}%`),e.usage7d!==void 0&&t.push(`7d=${Math.round(e.usage7d)}%`),t.length?t.join(" "):null}function An(e){if(!e)return null;let t=[];return e.localAdded&&e.localAdded>0&&t.push(`+${e.localAdded}`),e.localRemoved&&e.localRemoved>0&&t.push(`-${e.localRemoved}`),t.length?`loc=${t.join(" ")}`:null}function Pn(e){let t={...e};delete t.version;let r=kp(t),n=ia(e,"always");return n?`${r} ${n}`:r}function aa(e){let t=[Pn(e.project)],r=vn(e.claude);r!==null&&t.push(r);let n=Tn(e.claude);n!==null&&t.push(`ctx=${n}`);let o=xn(e.claude);o!==null&&t.push(o);let s=An(e.localDiff);return s!==null&&t.push(s),t.join(" ")}function la(e,t){let r=[...t];for(;r.length>0&&(r[r.length-1]??"").trim()==="";)r.pop();let[n,...o]=r;return[n&&n.trim()!==""?`${e} \xB7 ${n}`:e,...o]}var Ct={$schema:"https://tr.designtokens.org/format/2025.10/schema.json",$description:"RedDB design tokens \u2014 the canonical, machine-readable source of truth. DTCG 2025.10 (Design Tokens Format Module, first stable version). Hand-authored; tokens.css and tailwind-preset.js are build outputs of generators/build-tokens.mjs \u2014 never hand-edit them. Locked brand values: red #ff2056, ink #07080a, paper #f4f5f7 (from the marks, issues #13/#16); type Space Grotesk + JetBrains Mono (ADR 0001).",color:{$type:"color",$description:"Primitive palette (raw scale) and semantic roles (aliases). Feedback colours (success/warning/danger) are intentionally not published yet; issue #10 locked --ok #4ade80, --warn #fbbf24, and --danger #ff5470, with the rule that the accent never signals error.",red:{$description:"The brand accent. red.500 is the locked mark colour #ff2056; the other stops are derived by mixing toward white/black for hover, active, and on-light emphasis.","400":{$value:{colorSpace:"srgb",components:[1,.3882,.5373],hex:"#ff6389"}},"500":{$value:{colorSpace:"srgb",components:[1,.1255,.3373],hex:"#ff2056"},$extensions:{reddb:{contrastGuardrail:{normalText:{passesOn:["color.neutral.950","color.neutral.900"],failsOn:["color.neutral.800"]},asFill:{textPasses:["color.neutral.950"],textFails:["color.neutral.0"]}}}}},"600":{$value:{colorSpace:"srgb",components:[.8196,.102,.2745],hex:"#d11a46"}},"700":{$value:{colorSpace:"srgb",components:[.6784,.0863,.2275],hex:"#ad163a"}}},neutral:{$description:"Cool-gray ramp on the ink\u2194paper axis. neutral.50 is the locked paper #f4f5f7; neutral.950 is the locked ink #07080a; intermediate stops are hand-tuned on the same hue.","0":{$value:{colorSpace:"srgb",components:[1,1,1],hex:"#ffffff"}},"50":{$value:{colorSpace:"srgb",components:[.9569,.9608,.9686],hex:"#f4f5f7"}},"100":{$value:{colorSpace:"srgb",components:[.9059,.9137,.9333],hex:"#e7e9ee"}},"200":{$value:{colorSpace:"srgb",components:[.8275,.8392,.8706],hex:"#d3d6de"}},"300":{$value:{colorSpace:"srgb",components:[.702,.7216,.7686],hex:"#b3b8c4"},$extensions:{reddb:{contrastGuardrail:{normalText:{passesOn:["color.neutral.950","color.neutral.900","color.neutral.800"],failsOn:[]}}}}},"400":{$value:{colorSpace:"srgb",components:[.5451,.5686,.6314],hex:"#8b91a1"},$extensions:{reddb:{contrastGuardrail:{normalText:{passesOn:["color.neutral.950","color.neutral.900","color.neutral.800"],failsOn:[]}}}}},"500":{$value:{colorSpace:"srgb",components:[.4,.4275,.4941],hex:"#666d7e"},$extensions:{reddb:{contrastGuardrail:{normalText:{passesOn:[],failsOn:["color.neutral.950","color.neutral.900","color.neutral.800"]}}}}},"600":{$value:{colorSpace:"srgb",components:[.2902,.3176,.3843],hex:"#4a5162"}},"700":{$value:{colorSpace:"srgb",components:[.2,.2235,.2863],hex:"#333949"}},"800":{$value:{colorSpace:"srgb",components:[.1176,.1333,.1765],hex:"#1e222d"}},"900":{$value:{colorSpace:"srgb",components:[.0706,.0784,.1059],hex:"#12141b"}},"950":{$value:{colorSpace:"srgb",components:[.0275,.0314,.0392],hex:"#07080a"}}},brand:{$description:"Semantic brand roles. on-primary is the black R the mark sets on the red field.",primary:{$value:"{color.red.500}"},hover:{$value:"{color.red.600}"},active:{$value:"{color.red.700}"},"on-primary":{$value:"{color.neutral.950}"}},ink:{$value:"{color.neutral.950}",$description:"The near-black foreground; the brand is dark-first."},paper:{$value:"{color.neutral.50}",$description:"The off-white ground."},surface:{muted:{$value:"{color.neutral.100}"}},border:{subtle:{$value:"{color.neutral.200}"},strong:{$value:"{color.neutral.300}"}}},fontFamily:{$type:"fontFamily",$description:"Space Grotesk for display and body, JetBrains Mono for code (ADR 0001). Space Grotesk has no italic and no weight 300; <em> maps to weight 500 and italic exists only in the mono.",sans:{$value:["Space Grotesk","system-ui","-apple-system","Segoe UI","sans-serif"]},mono:{$value:["JetBrains Mono","ui-monospace","SFMono-Regular","Menlo","monospace"]}},fontWeight:{$type:"fontWeight",$description:"Weight 300 is excluded (dark-first: thin strokes lose weight to halation).",regular:{$value:400},medium:{$value:500},bold:{$value:700}},fontSize:{$type:"dimension",$description:"Modular scale, ~1.2 (minor third) from a 1rem base.",xs:{$value:{value:.75,unit:"rem"}},sm:{$value:{value:.875,unit:"rem"}},base:{$value:{value:1,unit:"rem"}},lg:{$value:{value:1.125,unit:"rem"}},xl:{$value:{value:1.25,unit:"rem"}},"2xl":{$value:{value:1.5,unit:"rem"}},"3xl":{$value:{value:1.875,unit:"rem"}},"4xl":{$value:{value:2.25,unit:"rem"}},"5xl":{$value:{value:3,unit:"rem"}},"6xl":{$value:{value:3.75,unit:"rem"}}},lineHeight:{$type:"number",$description:"Unitless multipliers.",tight:{$value:1.1},snug:{$value:1.25},normal:{$value:1.5},relaxed:{$value:1.65}},letterSpacing:{$type:"dimension",tight:{$value:{value:-.02,unit:"em"}},normal:{$value:{value:0,unit:"em"}},wide:{$value:{value:.04,unit:"em"}}},spacing:{$type:"dimension",$description:"4px base grid; 1 unit = 0.25rem.","0":{$value:{value:0,unit:"rem"}},px:{$value:{value:1,unit:"px"}},"0.5":{$value:{value:.125,unit:"rem"}},"1":{$value:{value:.25,unit:"rem"}},"2":{$value:{value:.5,unit:"rem"}},"3":{$value:{value:.75,unit:"rem"}},"4":{$value:{value:1,unit:"rem"}},"5":{$value:{value:1.25,unit:"rem"}},"6":{$value:{value:1.5,unit:"rem"}},"8":{$value:{value:2,unit:"rem"}},"10":{$value:{value:2.5,unit:"rem"}},"12":{$value:{value:3,unit:"rem"}},"16":{$value:{value:4,unit:"rem"}},"20":{$value:{value:5,unit:"rem"}},"24":{$value:{value:6,unit:"rem"}}},radius:{$type:"dimension",$description:"The symbol's clipped corner is a hard geometric cut, so brand chrome favours restrained radii.",none:{$value:{value:0,unit:"rem"}},sm:{$value:{value:.125,unit:"rem"}},md:{$value:{value:.375,unit:"rem"}},lg:{$value:{value:.5,unit:"rem"}},xl:{$value:{value:.75,unit:"rem"}},"2xl":{$value:{value:1,unit:"rem"}},full:{$value:{value:9999,unit:"px"}}},duration:{$type:"duration",instant:{$value:{value:75,unit:"ms"}},fast:{$value:{value:150,unit:"ms"}},normal:{$value:{value:250,unit:"ms"}},slow:{$value:{value:400,unit:"ms"}}},easing:{$type:"cubicBezier",$description:"Standard for most transitions; entrance decelerates, exit accelerates, emphasized for hero motion.",standard:{$value:[.4,0,.2,1]},entrance:{$value:[0,0,.2,1]},exit:{$value:[.4,0,1,1]},emphasized:{$value:[.2,0,0,1]}},shadow:{$type:"shadow",$description:"Elevation cast in ink at low alpha; tuned for a dark-first surface.",sm:{$value:{color:{colorSpace:"srgb",components:[.0275,.0314,.0392],alpha:.12,hex:"#07080a"},offsetX:{value:0,unit:"px"},offsetY:{value:1,unit:"px"},blur:{value:2,unit:"px"},spread:{value:0,unit:"px"}}},md:{$value:{color:{colorSpace:"srgb",components:[.0275,.0314,.0392],alpha:.16,hex:"#07080a"},offsetX:{value:0,unit:"px"},offsetY:{value:2,unit:"px"},blur:{value:8,unit:"px"},spread:{value:0,unit:"px"}}},lg:{$value:{color:{colorSpace:"srgb",components:[.0275,.0314,.0392],alpha:.2,hex:"#07080a"},offsetX:{value:0,unit:"px"},offsetY:{value:8,unit:"px"},blur:{value:24,unit:"px"},spread:{value:0,unit:"px"}}},xl:{$value:{color:{colorSpace:"srgb",components:[.0275,.0314,.0392],alpha:.24,hex:"#07080a"},offsetX:{value:0,unit:"px"},offsetY:{value:16,unit:"px"},blur:{value:48,unit:"px"},spread:{value:0,unit:"px"}}}}};var We=class extends Error{name="BrandTokenError";constructor(t,r,n){super(n),this.code=t,this.tokenName=r}};function st(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}if(!st(Ct)||!st(Ct.color))throw new We("TOKEN_MALFORMED","color","The vendored DTCG document has no color token group.");var wp=Ct;function Ep(e){let t=wp;for(let r of e.split(".")){if(!st(t)||!(r in t))return;t=t[r]}return t}function On(e,t){return new We("TOKEN_MALFORMED",e,`Brand color token "${e}" is malformed: ${t}`)}function da(e,t,r){if(r.has(e))throw new We("TOKEN_ALIAS_CYCLE",t,`Brand color token "${t}" contains an alias cycle at "${e}".`);let n=Ep(e);if(n===void 0)throw new We("TOKEN_NOT_FOUND",t,`Brand color token "${t}" was not found (resolved path "${e}").`);if(!st(n)||!("$value"in n))throw On(t,`"${e}" is not a token with a $value`);let o=n.$value;if(typeof o=="string"){let s=/^\{([^{}]+)\}$/.exec(o);if(s?.[1]===void 0)throw On(t,`"${e}" has an invalid alias`);return da(s[1],t,new Set([...r,e]))}if(!st(o)||typeof o.hex!="string"||!/^#[0-9a-fA-F]{6}$/.test(o.hex))throw On(t,`"${e}" has no six-digit hex color value`);return{name:e.startsWith("color.")?e.slice(6):e,hex:o.hex.toLowerCase()}}function Sp(e){let t=e.startsWith("color.")?e:`color.${e}`;return da(t,e,new Set)}function vp(e){return Sp(e).hex}function ua(e,t){let r=vp(e),n=Number.parseInt(r.slice(1,3),16),o=Number.parseInt(r.slice(3,5),16),s=Number.parseInt(r.slice(5,7),16);return`\x1B[${t};2;${n};${o};${s}m`}function ae(e){return ua(e,38)}function Dn(e){return ua(e,48)}var Gn=Dn("brand.primary"),$n=ae("brand.on-primary"),Nt=Dn("neutral.900"),Mt=ae("paper"),Pe=ae("paper"),Oe="\x1B[39m",ee=ae("neutral.400"),Tp=ae("neutral.500"),ca=ae("neutral.300"),pa=ae("neutral.0"),ma=ae("neutral.700"),fa=ae("red.500"),be="\x1B[49m",de="\x1B[0m",Ft="\x1B[1m",Bt="\x1B[22m";var xp=/\x1b\[[0-9;]*m/g,Ap=/(\x1b\[[0-9;]*m)/,Pp=/^\x1b\[[0-9;]*m$/;function ga(e){return e.replace(xp,"")}function Op(e){return e.slice(2,-1).split(";").every(r=>r===""||Number(r)===0)}function ue(e){return[...ga(e)].length}function ce(e,t){if(t<=0)return"";if(ue(e)<=t)return e;if(t===1)return"\u2026";let r=t-1,n=0,o=!1,s="";for(let i of e.split(Ap))if(i!==""){if(Pp.test(i)){s+=i,o=!Op(i);continue}for(let a of i){if(n===r)return`${s}\u2026${o?de:""}`;s+=a,n+=1}}return`${s}\u2026${o?de:""}`}function Ut(e,t){return e+" ".repeat(Math.max(0,t-ue(e)))}function jn(e){let t=e.toLowerCase();for(let r of["opus","sonnet","haiku","fable"]){let n=t.indexOf(r);if(n===-1)continue;let s=t.slice(n+r.length).match(/^-(\d+(?:[-.]\d+)*)/)?.[1]?.split(/[-.]/)??[];return/^\d{8}$/.test(s.at(-1)??"")&&s.pop(),s.length===0?r:`${r}-${s.join(".")}`}return e}function _e(e){if(!Number.isFinite(e)||e<=0)return"0B";let t=["B","K","M","G","T"],r=e,n=0;for(;r>=1024&&n<t.length-1;)r/=1024,n+=1;return`${r>=100||n===0?Math.round(r).toString():r.toFixed(1).replace(/\.0$/,"")}${t[n]}`}function Ht(e){if(!Number.isFinite(e)||e<=0)return"0";let t=(r,n)=>{let o=(Math.round(r*10)/10).toFixed(1);return`${o.endsWith(".0")?o.slice(0,-2):o}${n}`};return e>=1e9?t(e/1e9,"B"):e>=1e6?t(e/1e6,"M"):e>=1e3?t(e/1e3,"k"):String(Math.round(e))}function H(e){if(e==null||!Number.isFinite(e)||e<0)return"\u2014";let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let r=Math.floor(t/60);if(r<60)return`${r}m${t%60}s`;let n=Math.floor(r/60);return n<24?`${n}h${r%60}m`:`${Math.floor(n/24)}d${n%24}h`}function it(e){if(e==null)return null;let t=e.replace(/[\u0000-\u001f\u007f]+/g," ").replace(/\s+/g," ").trim();return t===""?null:t}var ha=[{name:"ready_queue",key:"rdy"},{name:"open_issues",key:"iss"},{name:"open_pull_requests",key:"pr"},{name:"merged_today",key:"mrg"}],ya=["ready_queue","open_pull_requests","merged_today"];function Wt(e,t,r){let n=_a(e,t),o=ka(e,t),s=[];for(let{name:i,key:a}of ha){if(r!=null&&!r.includes(i))continue;let l=Gp(a,n?.counters[i],Dp(o,i));l!=null&&s.push(l)}return s}function ba(e,t){let r=ka(e,t)?.counts,n=r?.trunk_lines_added,o=r?.trunk_lines_removed;if(n==null||o==null)return null;let s=[];return n>0&&s.push(`+${Lt(n,{fractionalThousands:!0})}`),o>0&&s.push(`-${Lt(o,{fractionalThousands:!0})}`),s.length===0?null:s.join(" ")}function _a(e,t){return t==null?null:(e.remote_counters?.projects??[]).find(r=>r.project_label===t)??null}function ka(e,t){return t==null?null:(e.repository_activity?.projects??[]).find(r=>r.project_label===t)??null}function Dp(e,t){let r=e?.counts;return r==null?null:t==="open_pull_requests"?r.open_pull_requests:t==="open_issues"?r.open_issues:t==="merged_today"?r.merged_today??null:null}function Gp(e,t,r){return t==null?r==null?null:`${e}=${r}`:t.value==null?null:`${e}=${t.value}${t.stale?`(${$p(t.age_ms)})`:""}`}function $p(e){return H(e).replace(/m0s$/,"m").replace(/h0m$/,"h").replace(/d0h$/,"d")}var qt="!unregistered";var Kt="\u21E1",De="\u2020",at="\u25D0",lt="\u25EF",In="\u21B3",Ln="redskilled unreachable \u2014 Worker state unknown";function dt(e,t){return t.mode==="global"?e.workers:t.project==null?[]:e.workers.filter(r=>r.project_label===t.project)}function Vt(e,t){return t.mode==="global"?e.projects:e.projects.filter(r=>r.project_label===t.project)}function Jt(e,t){return t==null?"unresolved":e.known_projects==null?"matched":e.known_projects.includes(t)?e.registered_projects==null||e.registered_projects.includes(t)?"matched":e.orphaned_projects?.includes(t)===!0?"orphaned":e.stopped_projects?.some(r=>r.project_label===t)===!0?"stopped":e.lapsed_projects?.some(r=>r.project_label===t)===!0?"lapsed":"name-only":"unregistered"}function Cn(e){let t=[];return e.workers.length>0&&e.workers.length<=e.maxWorkers&&t.push("workers"),e.mode==="global"&&e.projects.length>0&&e.projects.length<=e.maxProjects&&t.push("projects"),t.push("host"),t}var wa=["setup","coding","validating","merging","done"],Ip={claim:"setup",implement:"coding",gate:"validating",publish:"merging",land:"merging",setup:"setup",coding:"coding",validating:"validating",merging:"merging",done:"done","push-pr":"merging",merge:"merging",cascade:"merging"};function zt(e){if(e==null)return null;let t=e.trim();if(t==="")return null;let r=t.endsWith("!"),n=(r?t.slice(0,-1):t).toLowerCase(),o=Ip[n];if(o===void 0)return null;let s=wa.length,i=wa.indexOf(o);return{macro:o,index:i===s-1?s:i,total:s,failed:r}}function Ea(e){let t=e.phase,r=e.phase_total,n=e.phase_index,o=r!=null&&r>0&&n!=null&&n>=0?{index:Math.floor(n),total:Math.floor(r)}:zt(t);return[t!=null&&o!=null?`${t} ${Math.min(o.index+1,o.total)}/${o.total}`:t,e.step].filter(i=>!!i).join(" \xB7 ")}function Nn(e,t){if(e==null||e==="")return null;let r=Date.parse(e),n=Date.parse(t);return Number.isFinite(r)&&Number.isFinite(n)?Math.max(0,n-r):null}function Sa(e,t,r){let n=e.uptime_ms??Nn(e.started_at,r),o=Nn(t.phase_started_at,r),s=Nn(t.progress_at,r);return[n==null?null:`age=${H(n)}`,o==null?null:`phase=${H(o)}`,s==null?null:`idle=${H(s)}`].filter(i=>i!=null).join(" ")}var Yt=["wid","run","org","iss","bar","phase","base","elapsed","eta","hb","loc","tks","ctx","tls","rsn","txt"];var va="\u2588",Fp="\u25B6",Bp="\u2717",Up="\u2591",Hp=new Set(["gate","push-pr","merge","cascade"]),Wp=new Set(["requeue"]),qp="repair";function Qt(e){return e.display?.origin===qp}function Mn(e,t,r){let n=e.display??oa,o=Qt(e),s=[n.runner,n.model==null?null:jn(n.model),n.effort].filter(l=>!!l).join(" "),i=n.phase!=null&&Hp.has(n.phase),a=o||i||n.origin!=null&&Wp.has(n.origin);return{wid:t.mode==="global"?`${e.project_label}:${e.worker_id}`:e.worker_id,run:o||s===""?"":`run=${s}`,org:o?"lane=repair":i?"org=landing":n.origin==null?"":`org=${n.origin}`,iss:n.issue==null?"":o?`pr=#${n.issue.replace(/^#/,"")}`:`iss=${n.issue}`,bar:xa(n),phase:Ea(n),base:e.base_commits_ahead==null?"":`base +${e.base_commits_ahead}`,elapsed:Sa(e,n,r),eta:n.eta==null?"":`eta=${H(n.eta*1e3)}`,hb:Kp(n,r)??`hb=${n.heartbeat??"?"}`,loc:Vp(n.added,n.removed),tks:a||n.tokens==null?"":`tks=${Ht(n.tokens)}`,ctx:n.context==null?"":`ctx=${Ht(n.context)}`,tls:a||n.tools==null?"":`tls=${n.tools}`,rsn:a||n.reasoning==null?"":`rsn=${n.reasoning}`,txt:a||n.text==null?"":`txt=${n.text}`}}function Kp(e,t){if(e.wait_kind==null||e.wait_subject==null||e.wait_pid==null||e.wait_pid<=0||e.wait_started_at==null)return null;let r=Date.parse(e.wait_started_at),n=Date.parse(t);return!Number.isFinite(r)||!Number.isFinite(n)?null:`${e.wait_kind}=${e.wait_subject} ${H(Math.max(0,n-r))}`}function xa(e){let t=e.phase_total,r=e.phase_index;if(t!=null&&t>0&&r!=null&&r>=0)return Ta(Math.floor(r),Math.floor(t),e.failed);let n=zt(e.phase);return n==null?"":Ta(n.index,n.total,n.failed||e.failed)}function Ta(e,t,r){let n=Math.min(e,t);if(n>=t)return va.repeat(t);let o=r?Bp:Fp;return`${va.repeat(n)}${o}${Up.repeat(t-n-1)}`}function Vp(e,t){if(e==null&&t==null)return"";let r=[];return e!=null&&e>0&&r.push(`+${e}`),t!=null&&t>0&&r.push(`-${t}`),`loc=${r.length>0?r.join(" "):"0"}`}function Fn(e,t){if(e==="wid")return`${Ft}${t}${Bt}`;if(e==="org"&&t.trim()==="lane=repair"){let n=t.slice(t.trimEnd().length);return`${Nt}${Mt}${t.trimEnd()}${be}${ee}${n}`}if(e==="bar")return t.replace(/█+/g,n=>`${ca}${n}`).replace("\u25B6",`${pa}\u25B6`).replace("\u2717",`${fa}\u2717`).replace(/░+/g,n=>`${ma}${n}`)+ee;let r=t.indexOf("=");return r>0?`${Pe}${t.slice(0,r+1)}${Oe}${t.slice(r+1)}${ee}`:t}var Jp=[{word:"killed",why:"the host ended this Worker on its resource budget, whatever it was doing",matches:e=>e.kind==="worker-budget-kill"},{word:"parked",why:"the Worker's last stage reported `ok: false` \u2014 it stopped on a refusal, not on a finish",matches:e=>(e.phase??"").endsWith("!")},{word:"landed",why:"the Worker reported its work done from the stage that reaches the trunk",matches:e=>e.birth_outcome==="work-reported"&&zp.has((e.phase??"").toLowerCase())},{word:"done",why:"the Worker reported its work done from an earlier stage; what reached the trunk is the trunk's to say",matches:e=>e.birth_outcome==="work-reported"},{word:"no-work",why:"the Worker booted, read the queue, found nothing eligible and said so",matches:e=>e.birth_outcome==="no-eligible-work"},{word:"lost",why:"the Worker ended without reporting anything \u2014 a crash, a signal, a non-zero exit",matches:e=>e.birth_outcome==="unreported"}],zp=new Set(["land","merging","merge","cascade","done"]);function Yp(e){return Jp.find(t=>t.matches(e))?.word??null}function Aa(e,t,r){if(e==null||t!=null&&e.project_label!=null&&e.project_label!==t)return"idle";let n=Yp(e);if(n==null)return"idle";let o=Date.parse(e.ts),s=Date.parse(r),i=Number.isFinite(o)&&Number.isFinite(s)?Qp(Math.max(0,s-o)):null,a=e.issue==null||e.issue===""?null:`#${e.issue.replace(/^#/,"")}`;return[`idle\xB7${n}`,a,i].filter(l=>l!=null).join(" ")}function Qp(e){return H(e).replace(/m0s$/,"m").replace(/h0m$/,"h").replace(/d0h$/,"d")}function Un(e){return Object.freeze({none:!0,reason:e})}function Xt(){return{tool:"project_start",args:{runner:"claude",target:1},why:"register this project with the host so its queue can drain"}}function Bn(e,t){if(e===null||typeof e=="string"||typeof e=="boolean")return e;if(typeof e=="number"){if(!Number.isFinite(e))throw new TypeError("repair args must contain only finite JSON numbers");return e}if(t.has(e))throw new TypeError("repair args must not contain cycles");t.add(e);try{if(Array.isArray(e))return Object.freeze(e.map(n=>Bn(n,t)));let r={};for(let[n,o]of Object.entries(e))r[n]=Bn(o,t);return Object.freeze(r)}finally{t.delete(e)}}function Xp(e){let t=Bn(e.args,new Set);return Object.freeze({tool:e.tool,args:t,why:e.why})}function qe(e){if("none"in e.repair)return{prose:`${e.state}; repair: none because ${e.repair.reason}`,repair:"none",repair_reason:e.repair.reason};let t=Xp(e.repair);return{prose:`${e.state}; repair: call \`${t.tool}\` with \`${JSON.stringify(t.args)}\` because ${t.why}`,repair:t}}var C={mode:"local",project:null,maxWorkers:4,maxProjects:4,maxWidth:120,separator:" \xB7 ",verbose:!1};function Ke(e,t=C){let r=Jt(e,t.project),n=dt(e,t),o=Vt(e,t),s=om(e,t.project,r),i=em(e,t,n,r,s.prose),a=Cn({mode:t.mode,maxWorkers:t.maxWorkers,maxProjects:t.maxProjects,workers:n,projects:o}),l={detail:"host",line:i};for(let b of a){let _=b==="workers"?i:um(i,Zp(b,o),t.separator);if(l={detail:b,line:_},b==="workers"||ue(_)<=t.maxWidth)break}let u=ce(l.line,t.maxWidth),c=l.detail==="workers"?am(n,t,e.generated_at):{lines:[],degraded:!1},p=l.detail==="workers"?n.flatMap((b,_)=>{let S=t.verbose?lm(b,t):null;return S==null?[c.lines[_]]:[c.lines[_],S]}):[],g=n.length>0?"workers":"host";return{version:1,line:u,lines:[u,...p],verbose:t.verbose,mode:t.mode,project:t.project,project_match:r,...s.repair===void 0?{}:{repair:s.repair},...s.repair_reason===void 0?{}:{repair_reason:s.repair_reason},detail:l.detail,degraded:l.detail!==g||u!==l.line||c.degraded,stale:e.staleness.stale,generated_at:e.generated_at}}function Vn(e){let t=e.options??C,r=ce(Ln,t.maxWidth);return{version:1,line:r,lines:[r],verbose:t.verbose,mode:t.mode,project:t.project,project_match:"unanswered",detail:"host",degraded:!0,stale:!0,generated_at:e.generated_at}}function Zp(e,t){return e==="projects"?t.map(dm):[]}function em(e,t,r,n,o){let s=[],i=n!=="matched"&&n!=="unregistered"&&n!=="name-only";if(t.mode==="global"?(s.push(`host ${Hn(e.workers,e.host.worker_count)}/${e.host.project_count}p`),s.push(Oa(e,t))):n==="matched"||n==="unregistered"?(s.push(Hn(r,r.length)),r.length===0&&s.push(Aa(e.last_outcome,t.project,e.generated_at))):n==="name-only"?(s.push(Hn(r,r.length)),s.push(qt)):s.push(o),t.mode!=="global"){s.push(...Wt(e,t.project,ya));let c=ba(e,t.project);c!=null&&s.push(c)}t.mode!=="global"&&(n==="matched"||n==="unregistered"||n==="name-only")&&s.push(Oa(e,t)),s.push(Pa(e));let a=tm(e);a!=null&&s.push(a);let l=rm(e);l!=null&&s.push(l),e.staleness.stale&&s.push(Da(e));let u=s.join(" ");return!i||ue(u)<=t.maxWidth||a==null&&l==null?u:[a,l,o,Pa(e),e.staleness.stale?Da(e):null].filter(c=>c!=null).join(" ")}function Hn(e,t){let r=e.filter(Qt).length;return r===0?`${t}w`:`${Math.max(0,t-r)} coding + ${r} repairing`}function Pa(e){let t=e.engine,r=t?.running_version??e.daemon.daemon_version;return t==null||t.current!==!1?`v${r}`:`v${r}${Kt}`}function tm(e){let t=e.github_balance;return t==null?null:t.posture==="spent"?`${lt} quota spent`:t.posture==="reserved"?`${at} quota band`:null}function rm(e){let t=e.deaths;if(t==null)return null;let r=t.sender_attributed_count??t.count,n=t.sender_attributed_count===void 0?t.latest:t.latest_sender_attributed??null;if(r<=0||n==null)return null;let o=t.boot_loop;if(o!=null){let i=it(o.latest_refusal);return`${De}${r} boot-refused \xD7${o.count} in ${nm(o.span_ms)}`+(i==null?"":` \u2014 ${i}`)}let s=Object.prototype.hasOwnProperty.call(t,"current_sender_attributed")?t.current_sender_attributed??null:n;return s==null?`${De}${r}`:`${De}${r} ${s.sender_class}`}function nm(e){return H(e).replace(/m0s$/,"m").replace(/h0m$/,"h").replace(/d0h$/,"d")}function om(e,t,r){if(r==="unregistered")return{prose:""};if(r==="orphaned")return qe({state:`project unknown \u2014 ${t} is registered on a daemon this socket does not reach`,repair:Un("this socket cannot safely replace a registration owned by an unreachable daemon")});if(r==="stopped"){let n=e.stopped_projects?.find(s=>s.project_label===t),o=n?.standing===!0&&(n.queue_depth??0)>0?`queue ${n.queue_depth}, drain STOPPED \u2014 `:"";return qe({state:`${o}project unknown \u2014 ${t} was stopped${n==null?"":` at ${Wn(n.at)}`}`,repair:Xt()})}if(r==="lapsed"){let n=e.lapsed_projects?.find(o=>o.project_label===t);if(n!=null){let o=n.registered_at==null?"":` (registered ${Wn(n.registered_at)})`,s=n.standing===!0&&(n.queue_depth??0)>0?`queue ${n.queue_depth}, drain STOPPED \u2014 `:"";return qe({state:`${s}project unknown \u2014 ${t} lapsed at ${Wn(n.at)}${o}`,repair:Xt()})}return qe({state:`project unknown \u2014 ${t} lapsed`,repair:Xt()})}return r==="unresolved"?qe({state:"project unknown \u2014 this directory resolved to no project",repair:Un("the directory must resolve to a project before registration args can be safe")}):{prose:""}}function Wn(e){return/^\d{4}-\d{2}-\d{2}T(\d{2}:\d{2}:\d{2})/.exec(e)?.[1]??e}function Oa(e,t){let r=t.mode==="global"?e.host.observed_rss_bytes:e.projects.filter(o=>o.project_label===t.project).reduce((o,s)=>o+s.observed_rss_bytes,0),n=e.host.ceiling.memory_bytes;return t.mode==="global"&&n!=null&&n>0?`${_e(r)}/${_e(n)}`:_e(r)}function Da(e){let t=e.staleness.age_ms;return t==null?"!unmeasured":`!stale ${Math.round(t/1e3)}s`}var sm=["txt","rsn","ctx","tks","tls","eta","base","elapsed","run","org","loc"];function im(e,t,r,n){let o=r.map(s=>Fn(s,Ut(e[s],t[s])));return ce(`${be}${ee}${o.join(" ")}${de}`,n)}function am(e,t,r){let n=e.map(a=>Mn(a,t,r)),o=Yt.filter(a=>n.some(l=>ue(l[a])>0)),s=[...o],i=qn(n,s);for(let a of sm){if(s.length<=1||Kn(i,s)<=t.maxWidth)break;let l=s.indexOf(a);l<0||(s.splice(l,1),i=qn(n,s))}for(;s.length>1&&Kn(i,s)>t.maxWidth;)s.pop(),i=qn(n,s);return{lines:n.map(a=>im(a,i,s,t.maxWidth)),degraded:s.length<o.length||Kn(i,s)>t.maxWidth}}function qn(e,t){let r=Object.fromEntries(Yt.map(n=>[n,0]));for(let n of e)for(let o of t)r[o]=Math.max(r[o],ue(n[o]));return r}function Kn(e,t){return t.reduce((r,n)=>r+e[n],0)+Math.max(0,t.length-1)*2}function lm(e,t){let r=it(e.log.last_line);return r==null?null:ce(` ${In} ${Ga(e,t.mode)}: ${r}`,t.maxWidth)}function Ga(e,t){return t==="global"?`${e.project_label}:${e.worker_id}`:e.worker_id}function dm(e){return`${e.project_label} ${e.worker_count}w ${_e(e.observed_rss_bytes)}`}function um(e,t,r){return[e,...t].join(r)}async function Jn(e,t){return await Tt(e,t,"redskilled daemon")}var dT=16*1024;import{spawnSync as Rm}from"node:child_process";import{existsSync as wm}from"node:fs";import{basename as Ca,dirname as Em,join as Na}from"node:path";import{homedir as _m}from"node:os";import{dirname as wT,isAbsolute as ET,join as zn}from"node:path";import{join as hm}from"node:path";var ym=[".red","redskilled"];function Ve(e){return hm(e,...ym)}var ut="redskilled.service";function km(e=process.env){let t=e.XDG_CONFIG_HOME?.trim()||zn(e.HOME?.trim()||_m(),".config");return zn(t,"systemd","user")}function La(e=process.env){return zn(km(e),ut)}async function ct(e){let r=await qr(e.machineClaimPath,{machineIdHash:e.machineIdHash,sessionKeyHash:e.sessionKeyHash,socketPath:e.socketPath}).read().catch(()=>{});if(r==null||r.socket_path===e.socketPath||r.uid!==Bs().uid||!se(r.pid))return{paths:e,joined:!1};let n=Em(r.socket_path);return{joined:!0,paths:{...e,runtimeDir:n,socketPath:r.socket_path,acpSocketPath:e.platform==="win32"?`\\\\.\\pipe\\redskilled-${r.session_key_hash}-acp`:Na(n,Ca(e.acpSocketPath)),leasePath:Na(n,Ca(e.leasePath))}}}async function Ma(e){let r=await qr(e.machineClaimPath,{machineIdHash:e.machineIdHash,sessionKeyHash:e.sessionKeyHash,socketPath:e.socketPath}).read().catch(()=>{});if(!(r==null||r.socket_path===e.socketPath||!se(r.pid)))throw new xe(e.machineClaimPath,"held",r)}async function Fa(e,t,r){let n=t.env??process.env,o=t.supervisor?.installed?.(),s=n[Wr]?.trim();if(o==null&&(s!=null&&s!==""||e.machineClaimPath!==xt({env:n,machineIdHash:e.machineIdHash}))||!(o??wm(La(n))))return!1;if(t.supervisor?.start!=null)await t.supervisor.start();else{let a=Rm("systemctl",["--user","start",ut],{encoding:"utf8",env:n});if(a.error!=null||a.status!==0)throw new Error(`redskilled found the installed ${ut}, but systemd did not start it: ${a.error?.message??(a.stderr||a.stdout||`status ${a.status}`).trim()}`)}return await Sm(e,t,r),!0}async function Sm(e,t,r){let n=Date.now()+(t.readyTimeoutMs??r);for(;;){let o=await ct(e);if(await Te(o.paths.socketPath))return;if(Date.now()>=n)throw new Error(`the installed ${ut} did not expose a same-user daemon within the ready window (client socket ${JSON.stringify(e.socketPath)})`);await new Promise(s=>setTimeout(s,25))}}var Ba=`run \`/red-setup\` (Section E3 \u2014 execution daemon), or \`${tt("red-skills-redskilled",["provision"])}\` directly`;var Ha=3e4,Wa=500,vm=8e3,Ua=new Set,W=class extends Error{constructor(r,n,o){super(`redskilled daemon is unreachable on ${JSON.stringify(r)}, so no Worker was started: ${n instanceof Error?n.message:String(n)}${o?.kind==="held-unresponsive"?`. ${Br(o)}`:""}`);this.socketPath=r;this.cause=n;this.presence=o;this.name="RedskilledUnreachableError"}},pt=class extends W{constructor(t){super(t,new Error(`this host has no redskilled service installed, and a client never starts one (ADR 0150 \xA74) \u2014 ${Ba}`)),this.name="RedskilledNotProvisionedError"}},Ge=class extends W{constructor(r,n,o){super(r,o,n);this.presence=n;this.name="RedskilledDaemonHeldError"}};async function Yn(e){let t=e.config.reconnectTimeoutMs??Ha,r=Date.now()+t,n=e.config.reconnectInitialBackoffMs??Wa;for(;;)try{let o=await e.attempt(Math.max(0,r-Date.now()));return Ua.add(e.socketPath),o}catch(o){if(!e.retryable(o,Ua.has(e.socketPath)))throw o;if(Date.now()>=r)throw e.exhausted?.(o,t)??o;await Tm(r,n),n=Math.min(n*2,vm)}}function Qn(e,t){if(!(e instanceof W))return e;let r=e.presence?.kind==="held-unresponsive"?e.presence.holder:null,n=new Error(`daemon replacing/booting, retrying with exponential backoff for ${t}ms exhausted`+(r==null?"":`; holder pid ${r.pid}`),{cause:e});return r==null||e.presence==null?new W(e.socketPath,n,e.presence):new Ge(e.socketPath,e.presence,n)}async function Tm(e,t){let r=e-Date.now();r<=0||await new Promise(n=>setTimeout(n,Math.min(t,r)))}var qa=1e4,Zt=class extends Error{constructor(r){super(r);this.refusal=r;this.name="RedskilledRequestRefusedError"}};async function er(e,t={}){let r=t.answers??await Te(e.socketPath),n=await Ur(e.leasePath).catch(()=>{});return Fr({socketPath:e.socketPath,answers:r,lease:n,holderAlive:n!=null&&se(n.pid)})}async function Om(e,t={}){return await Yn({socketPath:e.socketPath,config:t,attempt:()=>Dm(e,t),retryable:(r,n)=>r instanceof Ge||r instanceof W&&n,exhausted:Qn})}async function Dm(e,t){let r=await ct(e);try{let n=await Gm(r.paths,t);return r.joined&&n==="already-running"?"joined":n}catch(n){if(n instanceof xe||n instanceof W)throw n;let o=await er(r.paths).catch(()=>{});throw new W(r.paths.socketPath,n,o)}}async function Gm(e,t){if(await Am(Pm(e.socketPath),{recursive:!0,mode:448}),await Te(e.socketPath))return"already-running";await Ma(e);let r=await $m(e,t);if(r!=null)return r;if(await Fa(e,t,qa))return"joined";throw new pt(e.socketPath)}async function $m(e,t){let r=await er(e,{answers:!1}).catch(()=>{});if(r==null||r.kind!=="held-unresponsive")return null;let n=t.readyTimeoutMs??qa,o=Date.now()+n;for(;;){if(await Te(e.socketPath))return"joined";if(Date.now()>=o)break;await new Promise(i=>setTimeout(i,25))}let s=await er(e).catch(()=>{});if(s==null||s.kind!=="held-unresponsive")return null;throw new Ge(e.socketPath,s,new Error(`it did not answer a ping within ${n}ms, and no second daemon was spawned because pid ${s.holder?.pid??"unknown"} still holds this socket`))}async function jm(e,t,r={}){let n=xm();return await Yn({socketPath:e.socketPath,config:r,attempt:async o=>{await Om(e,{...r,reconnectTimeoutMs:o});let s=(await ct(e)).paths,i;try{i=await Jn({socketPath:s.socketPath,timeoutMs:r.requestTimeoutMs??2e3},{...t,id:n})}catch(a){throw new W(s.socketPath,a,await er(s).catch(()=>{}))}if(!i.ok)throw new Zt(i.error);return i.value},retryable:(o,s)=>o instanceof W&&s,exhausted:Qn})}async function Im(e,t={},r){let n=await jm(e,{op:"statusline-payload",...t.sessionProject!=null?{session_project:t.sessionProject}:{},...r==null?{}:{extras:r}},t);if(!ot(n))throw new Error("redskilled daemon returned a malformed statusline payload");return n}async function Ka(e,t=C,r={}){let n=await Im(e,r,{vitals:!0,logs:t.verbose,display:!0});return Ke(n,t)}import{createHash as Lm}from"node:crypto";import{hostname as Cm}from"node:os";import{join as $e}from"node:path";var Va="redskilled.sock",Nm="redskilled-acp.sock",Mm="REDSKILLED_SESSION";function Fm(e={}){let t=e.env??process.env,r=t[Mm]?.trim();if(r)return r;let n=t.XDG_RUNTIME_DIR?.trim();return n||`uid:${e.uid??(typeof process.getuid=="function"?process.getuid():"nouid")}`}function Bm(e={}){return za(e.host??Cm())}function Ja(e={}){let t=e.platform??process.platform,r=Fm(e),n=e.runtimeDir??$s({key:`redskilled:${r}`,socketFileName:Va,env:e.env,uid:e.uid}),o=Bm(e),s=za(r),i=xt({env:e.env,machineIdHash:o,platform:e.platform}),a=e.homeDir??e.env?.HOME??(e.runtimeDir==null?process.env.HOME:e.runtimeDir)??n;return{platform:t,sessionKey:r,sessionKeyHash:s,machineIdHash:o,runtimeDir:n,socketPath:$e(n,Va),acpSocketPath:t==="win32"?Um(`redskilled-${s}-acp`):$e(n,Nm),leasePath:$e(n,"redskilled.lease.toon"),eventLanePath:$e(Ve(a),Vs),registrationIntentPath:$e(Ve(a),"redskilled.registrations.toon"),resourceLeasePath:$e(Ve(a),"redskilled.resources.toon"),projectWorkspaceRoot:$e(Ve(a),"projects"),machineClaimPathOfThisHost:i,machineClaimPath:e.machineClaimPath??i}}function Um(e){return`\\\\.\\pipe\\${e}`}function za(e){return Lm("sha256").update(e).digest("hex").slice(0,12)}var Ya={"=":"data",":=":{to:"data",typed:!0},":":"meta"},Hm=/^[a-z][a-z0-9+.-]*:\/\//i;function Wm(e,t){return typeof t=="string"?{separator:e,to:t,typed:!1,prefix:!1}:{separator:e,to:t.to,typed:t.typed??!1,prefix:t.prefix??!1}}function qm(e=Ya){return Object.entries(e).map(([t,r])=>Wm(t,r)).sort((t,r)=>r.separator.length-t.separator.length)}function Km(e){return/^-\d+(\.\d+)?$/.test(e)}function mt(e){return!(!e||e.startsWith("-")&&!Km(e))}function tr(e){if(e==="true")return!0;if(e==="false")return!1;if(e==="null")return null;let t=Number(e);return!Number.isNaN(t)&&Number.isFinite(t)&&e.trim()!==""?t:e}function Qa(e){if(e==="true")return!0;if(e==="false")return!1;if(e==="null")return null;if(e.startsWith("[")&&e.endsWith("]")||e.startsWith("{")&&e.endsWith("}"))try{return JSON.parse(e)}catch{}let t=Number(e);return!Number.isNaN(t)&&Number.isFinite(t)&&e.trim()!==""?t:e.includes(",")?e.split(",").map(r=>Qa(r.trim())):e}function je(e,t){switch(t){case"boolean":return Vm(e);case"number":return Jm(e);case"array":return e.split(",").map(r=>tr(r.trim()));case"string":default:return e}}function Vm(e){let t=e.toLowerCase().trim();return t==="true"||t==="yes"||t==="1"||t==="on"}function Jm(e){if(e.trim()==="")throw new TypeError(`Cannot convert "${e}" to number`);let t=Number(e);if(Number.isNaN(t))throw new TypeError(`Cannot convert "${e}" to number`);return t}function ke(e){return e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'")?e.slice(1,-1):e}function zm(e,t={}){return e.map(r=>{let n=t[r.type];return n?n(r.value):r.value}).join("")}function A(e,t){return{type:e,value:t}}function Ym(e){let t=[],r=Xm(e);if(t.push(A("section-header","Usage:"),A("text"," "),A("usage-text",r),A("newline",`
41
+ `)}var gp=class extends Error{constructor(e,t,r){super(fp(r)),this.request=e,this.headers=t,this.response=r,this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}request;headers;response;name="GraphqlResponseError";errors;data},hp=["method","baseUrl","url","headers","request","query","mediaType","operationName"],yp=["query","method","url"],Zi=/\/api\/v3\/?$/;function bp(e,t,r){if(r){if(typeof t=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let i in r)if(yp.includes(i))return Promise.reject(new Error(`[@octokit/graphql] "${i}" cannot be used as variable name`))}let n=typeof t=="string"?Object.assign({query:t},r):t,o=Object.keys(n).reduce((i,a)=>hp.includes(a)?(i[a]=n[a],i):(i.variables||(i.variables={}),i.variables[a]=n[a],i),{}),s=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return Zi.test(s)&&(o.url=s.replace(Zi,"/api/graphql")),e(o).then(i=>{if(i.data.errors){let a={};for(let l of Object.keys(i.headers))a[l]=i.headers[l];throw new gp(o,a,i.data)}return i.data.data})}function _n(e,t){let r=e.defaults(t);return Object.assign((o,s)=>bp(r,o,s),{defaults:_n.bind(null,r),endpoint:r.endpoint})}var iR=_n(lt,{headers:{"user-agent":`octokit-graphql.js/${mp} ${_e()}`},method:"POST",url:"/graphql"});function ea(e){return _n(e,{method:"POST",url:"/graphql"})}var kn="(?:[a-zA-Z0-9_-]+)",ta="\\.",ra=new RegExp(`^${kn}${ta}${kn}${ta}${kn}$`),_p=ra.test.bind(ra);async function kp(e){let t=_p(e),r=e.startsWith("v1.")||e.startsWith("ghs_"),n=e.startsWith("ghu_");return{type:"token",token:e,tokenType:t?"app":r?"installation":n?"user-to-server":"oauth"}}function Rp(e){return e.split(/\./).length===3?`bearer ${e}`:`token ${e}`}async function wp(e,t,r,n){let o=t.endpoint.merge(r,n);return o.headers.authorization=Rp(e),t(o)}var na=function(t){if(!t)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof t!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return t=t.replace(/^(token|bearer) +/i,""),Object.assign(kp.bind(null,t),{hook:wp.bind(null,t)})};var Rn="7.0.7";var oa=()=>{},Ep=console.warn.bind(console),Sp=console.error.bind(console);function vp(e={}){return typeof e.debug!="function"&&(e.debug=oa),typeof e.info!="function"&&(e.info=oa),typeof e.warn!="function"&&(e.warn=Ep),typeof e.error!="function"&&(e.error=Sp),e}var sa=`octokit-core.js/${Rn} ${_e()}`,Bt=class{static VERSION=Rn;static defaults(t){return class extends this{constructor(...n){let o=n[0]||{};if(typeof t=="function"){super(t(o));return}super(Object.assign({},t,o,o.userAgent&&t.userAgent?{userAgent:`${o.userAgent} ${t.userAgent}`}:null))}}}static plugins=[];static plugin(...t){let r=this.plugins;return class extends this{static plugins=r.concat(t.filter(o=>!r.includes(o)))}}constructor(t={}){let r=new Xi.Collection,n={baseUrl:lt.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},t.request,{hook:r.bind(null,"request")}),mediaType:{previews:[],format:""}};if(n.headers["user-agent"]=t.userAgent?`${t.userAgent} ${sa}`:sa,t.baseUrl&&(n.baseUrl=t.baseUrl),t.previews&&(n.mediaType.previews=t.previews),t.timeZone&&(n.headers["time-zone"]=t.timeZone),this.request=lt.defaults(n),this.graphql=ea(this.request).defaults(n),this.log=vp(t.log),this.hook=r,t.authStrategy){let{authStrategy:s,...i}=t,a=s(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:i},t.auth));r.wrap("request",a.hook),this.auth=a}else if(!t.auth)this.auth=async()=>({type:"unauthenticated"});else{let s=na(t.auth);r.wrap("request",s.hook),this.auth=s}let o=this.constructor;for(let s=0;s<o.plugins.length;++s)Object.assign(this,o.plugins[s](this,t))}request;graphql;log;hook;auth};var ia="6.0.0";function wn(e){e.hook.wrap("request",(t,r)=>{e.log.debug("request",r);let n=Date.now(),o=e.request.endpoint.parse(r),s=o.url.replace(r.baseUrl,"");return t(r).then(i=>{let a=i.headers["x-github-request-id"];return e.log.info(`${o.method} ${s} - ${i.status} with id ${a} in ${Date.now()-n}ms`),i}).catch(i=>{let a=i.response?.headers["x-github-request-id"]||"UNKNOWN";throw e.log.error(`${o.method} ${s} - ${i.status} with id ${a} in ${Date.now()-n}ms`),i})})}wn.VERSION=ia;var Tp="0.0.0-development";function xp(e){if(!e.data)return{...e,data:[]};if(!(("total_count"in e.data||"total_commits"in e.data)&&!("url"in e.data)))return e;let r=e.data.incomplete_results,n=e.data.repository_selection,o=e.data.total_count,s=e.data.total_commits;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count,delete e.data.total_commits;let i=Object.keys(e.data)[0],a=e.data[i];return e.data=a,typeof r<"u"&&(e.data.incomplete_results=r),typeof n<"u"&&(e.data.repository_selection=n),e.data.total_count=o,e.data.total_commits=s,e}function En(e,t,r){let n=typeof t=="function"?t.endpoint(r):e.request.endpoint(t,r),o=typeof t=="function"?t:e.request,s=n.method,i=n.headers,a=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!a)return{done:!0};try{let l=await o({method:s,url:a,headers:i}),u=xp(l);if(a=((u.headers.link||"").match(/<([^<>]+)>;\s*rel="next"/)||[])[1],!a&&"total_commits"in u.data){let c=new URL(u.url),p=c.searchParams,m=parseInt(p.get("page")||"1",10),b=parseInt(p.get("per_page")||"250",10);m*b<u.data.total_commits&&(p.set("page",String(m+1)),a=c.toString())}return{value:u}}catch(l){if(l.status!==409)throw l;return a="",{value:{status:200,headers:{},data:[]}}}}})}}function aa(e,t,r,n){return typeof r=="function"&&(n=r,r=void 0),la(e,[],En(e,t,r)[Symbol.asyncIterator](),n)}function la(e,t,r,n){return r.next().then(o=>{if(o.done)return t;let s=!1;function i(){s=!0}return t=t.concat(n?n(o.value,i):o.value.data),s?t:la(e,t,r,n)})}var ER=Object.assign(aa,{iterator:En});function Sn(e){return{paginate:Object.assign(aa.bind(null,e),{iterator:En.bind(null,e)})}}Sn.VERSION=Tp;var vn="17.0.0";var Ap={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addRepoAccessToSelfHostedRunnerGroupInOrg:["PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repos/{owner}/{repo}/environments/{environment_name}/variables"],createHostedRunnerForOrg:["POST /orgs/{org}/actions/hosted-runners"],createOrUpdateEnvironmentSecret:["PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteCustomImageFromOrg:["DELETE /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}"],deleteCustomImageVersionFromOrg:["DELETE /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}/versions/{version}"],deleteEnvironmentSecret:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],deleteHostedRunnerForOrg:["DELETE /orgs/{org}/actions/hosted-runners/{hosted_runner_id}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomImageForOrg:["GET /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}"],getCustomImageVersionForOrg:["GET /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}/versions/{version}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getHostedRunnerForOrg:["GET /orgs/{org}/actions/hosted-runners/{hosted_runner_id}"],getHostedRunnersGithubOwnedImagesForOrg:["GET /orgs/{org}/actions/hosted-runners/images/github-owned"],getHostedRunnersLimitsForOrg:["GET /orgs/{org}/actions/hosted-runners/limits"],getHostedRunnersMachineSpecsForOrg:["GET /orgs/{org}/actions/hosted-runners/machine-sizes"],getHostedRunnersPartnerImagesForOrg:["GET /orgs/{org}/actions/hosted-runners/images/partner"],getHostedRunnersPlatformsForOrg:["GET /orgs/{org}/actions/hosted-runners/platforms"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listCustomImageVersionsForOrg:["GET /orgs/{org}/actions/hosted-runners/images/custom/{image_definition_id}/versions"],listCustomImagesForOrg:["GET /orgs/{org}/actions/hosted-runners/images/custom"],listEnvironmentSecrets:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables"],listGithubHostedRunnersInGroupForOrg:["GET /orgs/{org}/actions/runner-groups/{runner_group_id}/hosted-runners"],listHostedRunnersForOrg:["GET /orgs/{org}/actions/hosted-runners"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],updateHostedRunnerForOrg:["PATCH /orgs/{org}/actions/hosted-runners/{hosted_runner_id}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubBillingPremiumRequestUsageReportOrg:["GET /organizations/{org}/settings/billing/premium_request/usage"],getGithubBillingPremiumRequestUsageReportUser:["GET /users/{username}/settings/billing/premium_request/usage"],getGithubBillingUsageReportOrg:["GET /organizations/{org}/settings/billing/usage"],getGithubBillingUsageReportUser:["GET /users/{username}/settings/billing/usage"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},campaigns:{createCampaign:["POST /orgs/{org}/campaigns"],deleteCampaign:["DELETE /orgs/{org}/campaigns/{campaign_number}"],getCampaignSummary:["GET /orgs/{org}/campaigns/{campaign_number}"],listOrgCampaigns:["GET /orgs/{org}/campaigns"],updateCampaign:["PATCH /orgs/{org}/campaigns/{campaign_number}"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{commitAutofix:["POST /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix/commits"],createAutofix:["POST /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix"],createVariantAnalysis:["POST /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses"],deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],deleteCodeqlDatabase:["DELETE /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getAutofix:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],getVariantAnalysis:["GET /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}"],getVariantAnalysisRepoTask:["GET /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}/repos/{repo_owner}/{repo_name}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codeSecurity:{attachConfiguration:["POST /orgs/{org}/code-security/configurations/{configuration_id}/attach"],attachEnterpriseConfiguration:["POST /enterprises/{enterprise}/code-security/configurations/{configuration_id}/attach"],createConfiguration:["POST /orgs/{org}/code-security/configurations"],createConfigurationForEnterprise:["POST /enterprises/{enterprise}/code-security/configurations"],deleteConfiguration:["DELETE /orgs/{org}/code-security/configurations/{configuration_id}"],deleteConfigurationForEnterprise:["DELETE /enterprises/{enterprise}/code-security/configurations/{configuration_id}"],detachConfiguration:["DELETE /orgs/{org}/code-security/configurations/detach"],getConfiguration:["GET /orgs/{org}/code-security/configurations/{configuration_id}"],getConfigurationForRepository:["GET /repos/{owner}/{repo}/code-security-configuration"],getConfigurationsForEnterprise:["GET /enterprises/{enterprise}/code-security/configurations"],getConfigurationsForOrg:["GET /orgs/{org}/code-security/configurations"],getDefaultConfigurations:["GET /orgs/{org}/code-security/configurations/defaults"],getDefaultConfigurationsForEnterprise:["GET /enterprises/{enterprise}/code-security/configurations/defaults"],getRepositoriesForConfiguration:["GET /orgs/{org}/code-security/configurations/{configuration_id}/repositories"],getRepositoriesForEnterpriseConfiguration:["GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}/repositories"],getSingleConfigurationForEnterprise:["GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}"],setConfigurationAsDefault:["PUT /orgs/{org}/code-security/configurations/{configuration_id}/defaults"],setConfigurationAsDefaultForEnterprise:["PUT /enterprises/{enterprise}/code-security/configurations/{configuration_id}/defaults"],updateConfiguration:["PATCH /orgs/{org}/code-security/configurations/{configuration_id}"],updateEnterpriseConfiguration:["PATCH /enterprises/{enterprise}/code-security/configurations/{configuration_id}"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],copilotMetricsForOrganization:["GET /orgs/{org}/copilot/metrics"],copilotMetricsForTeam:["GET /orgs/{org}/team/{team_slug}/copilot/metrics"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"]},credentials:{revoke:["POST /credentials/revoke"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],repositoryAccessForOrg:["GET /organizations/{org}/dependabot/repository-access"],setRepositoryAccessDefaultLevel:["PUT /organizations/{org}/dependabot/repository-access/default-level"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],updateRepositoryAccessForOrg:["PATCH /organizations/{org}/dependabot/repository-access"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},enterpriseTeamMemberships:{add:["PUT /enterprises/{enterprise}/teams/{enterprise-team}/memberships/{username}"],bulkAdd:["POST /enterprises/{enterprise}/teams/{enterprise-team}/memberships/add"],bulkRemove:["POST /enterprises/{enterprise}/teams/{enterprise-team}/memberships/remove"],get:["GET /enterprises/{enterprise}/teams/{enterprise-team}/memberships/{username}"],list:["GET /enterprises/{enterprise}/teams/{enterprise-team}/memberships"],remove:["DELETE /enterprises/{enterprise}/teams/{enterprise-team}/memberships/{username}"]},enterpriseTeamOrganizations:{add:["PUT /enterprises/{enterprise}/teams/{enterprise-team}/organizations/{org}"],bulkAdd:["POST /enterprises/{enterprise}/teams/{enterprise-team}/organizations/add"],bulkRemove:["POST /enterprises/{enterprise}/teams/{enterprise-team}/organizations/remove"],delete:["DELETE /enterprises/{enterprise}/teams/{enterprise-team}/organizations/{org}"],getAssignment:["GET /enterprises/{enterprise}/teams/{enterprise-team}/organizations/{org}"],getAssignments:["GET /enterprises/{enterprise}/teams/{enterprise-team}/organizations"]},enterpriseTeams:{create:["POST /enterprises/{enterprise}/teams"],delete:["DELETE /enterprises/{enterprise}/teams/{team_slug}"],get:["GET /enterprises/{enterprise}/teams/{team_slug}"],list:["GET /enterprises/{enterprise}/teams"],update:["PATCH /enterprises/{enterprise}/teams/{team_slug}"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},hostedCompute:{createNetworkConfigurationForOrg:["POST /orgs/{org}/settings/network-configurations"],deleteNetworkConfigurationFromOrg:["DELETE /orgs/{org}/settings/network-configurations/{network_configuration_id}"],getNetworkConfigurationForOrg:["GET /orgs/{org}/settings/network-configurations/{network_configuration_id}"],getNetworkSettingsForOrg:["GET /orgs/{org}/settings/network-settings/{network_settings_id}"],listNetworkConfigurationsForOrg:["GET /orgs/{org}/settings/network-configurations"],updateNetworkConfigurationForOrg:["PATCH /orgs/{org}/settings/network-configurations/{network_configuration_id}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addBlockedByDependency:["POST /repos/{owner}/{repo}/issues/{issue_number}/dependencies/blocked_by"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],addSubIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/sub_issues"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],getParent:["GET /repos/{owner}/{repo}/issues/{issue_number}/parent"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listDependenciesBlockedBy:["GET /repos/{owner}/{repo}/issues/{issue_number}/dependencies/blocked_by"],listDependenciesBlocking:["GET /repos/{owner}/{repo}/issues/{issue_number}/dependencies/blocking"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],listSubIssues:["GET /repos/{owner}/{repo}/issues/{issue_number}/sub_issues"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeDependencyBlockedBy:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/dependencies/blocked_by/{issue_id}"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],removeSubIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/sub_issue"],reprioritizeSubIssue:["PATCH /repos/{owner}/{repo}/issues/{issue_number}/sub_issues/priority"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}",{},{deprecated:"octokit.rest.orgs.addSecurityManagerTeam() is deprecated, see https://docs.github.com/rest/orgs/security-managers#add-a-security-manager-team"}],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createArtifactStorageRecord:["POST /orgs/{org}/artifacts/metadata/storage-record"],createInvitation:["POST /orgs/{org}/invitations"],createIssueType:["POST /orgs/{org}/issue-types"],createWebhook:["POST /orgs/{org}/hooks"],customPropertiesForOrgsCreateOrUpdateOrganizationValues:["PATCH /organizations/{org}/org-properties/values"],customPropertiesForOrgsGetOrganizationValues:["GET /organizations/{org}/org-properties/values"],customPropertiesForReposCreateOrUpdateOrganizationDefinition:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],customPropertiesForReposCreateOrUpdateOrganizationDefinitions:["PATCH /orgs/{org}/properties/schema"],customPropertiesForReposCreateOrUpdateOrganizationValues:["PATCH /orgs/{org}/properties/values"],customPropertiesForReposDeleteOrganizationDefinition:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],customPropertiesForReposGetOrganizationDefinition:["GET /orgs/{org}/properties/schema/{custom_property_name}"],customPropertiesForReposGetOrganizationDefinitions:["GET /orgs/{org}/properties/schema"],customPropertiesForReposGetOrganizationValues:["GET /orgs/{org}/properties/values"],delete:["DELETE /orgs/{org}"],deleteAttestationsBulk:["POST /orgs/{org}/attestations/delete-request"],deleteAttestationsById:["DELETE /orgs/{org}/attestations/{attestation_id}"],deleteAttestationsBySubjectDigest:["DELETE /orgs/{org}/attestations/digest/{subject_digest}"],deleteIssueType:["DELETE /orgs/{org}/issue-types/{issue_type_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],disableSelectedRepositoryImmutableReleasesOrganization:["DELETE /orgs/{org}/settings/immutable-releases/repositories/{repository_id}"],enableSelectedRepositoryImmutableReleasesOrganization:["PUT /orgs/{org}/settings/immutable-releases/repositories/{repository_id}"],get:["GET /orgs/{org}"],getImmutableReleasesSettings:["GET /orgs/{org}/settings/immutable-releases"],getImmutableReleasesSettingsRepositories:["GET /orgs/{org}/settings/immutable-releases/repositories"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getOrgRulesetHistory:["GET /orgs/{org}/rulesets/{ruleset_id}/history"],getOrgRulesetVersion:["GET /orgs/{org}/rulesets/{ruleset_id}/history/{version_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listArtifactStorageRecords:["GET /orgs/{org}/artifacts/{subject_digest}/metadata/storage-records"],listAttestationRepositories:["GET /orgs/{org}/attestations/repositories"],listAttestations:["GET /orgs/{org}/attestations/{subject_digest}"],listAttestationsBulk:["POST /orgs/{org}/attestations/bulk-list{?per_page,before,after}"],listBlockedUsers:["GET /orgs/{org}/blocks"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listIssueTypes:["GET /orgs/{org}/issue-types"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers",{},{deprecated:"octokit.rest.orgs.listSecurityManagerTeams() is deprecated, see https://docs.github.com/rest/orgs/security-managers#list-security-manager-teams"}],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}",{},{deprecated:"octokit.rest.orgs.removeSecurityManagerTeam() is deprecated, see https://docs.github.com/rest/orgs/security-managers#remove-a-security-manager-team"}],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setImmutableReleasesSettings:["PUT /orgs/{org}/settings/immutable-releases"],setImmutableReleasesSettingsRepositories:["PUT /orgs/{org}/settings/immutable-releases/repositories"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateIssueType:["PUT /orgs/{org}/issue-types/{issue_type_id}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},privateRegistries:{createOrgPrivateRegistry:["POST /orgs/{org}/private-registries"],deleteOrgPrivateRegistry:["DELETE /orgs/{org}/private-registries/{secret_name}"],getOrgPrivateRegistry:["GET /orgs/{org}/private-registries/{secret_name}"],getOrgPublicKey:["GET /orgs/{org}/private-registries/public-key"],listOrgPrivateRegistries:["GET /orgs/{org}/private-registries"],updateOrgPrivateRegistry:["PATCH /orgs/{org}/private-registries/{secret_name}"]},projects:{addItemForOrg:["POST /orgs/{org}/projectsV2/{project_number}/items"],addItemForUser:["POST /users/{username}/projectsV2/{project_number}/items"],deleteItemForOrg:["DELETE /orgs/{org}/projectsV2/{project_number}/items/{item_id}"],deleteItemForUser:["DELETE /users/{username}/projectsV2/{project_number}/items/{item_id}"],getFieldForOrg:["GET /orgs/{org}/projectsV2/{project_number}/fields/{field_id}"],getFieldForUser:["GET /users/{username}/projectsV2/{project_number}/fields/{field_id}"],getForOrg:["GET /orgs/{org}/projectsV2/{project_number}"],getForUser:["GET /users/{username}/projectsV2/{project_number}"],getOrgItem:["GET /orgs/{org}/projectsV2/{project_number}/items/{item_id}"],getUserItem:["GET /users/{username}/projectsV2/{project_number}/items/{item_id}"],listFieldsForOrg:["GET /orgs/{org}/projectsV2/{project_number}/fields"],listFieldsForUser:["GET /users/{username}/projectsV2/{project_number}/fields"],listForOrg:["GET /orgs/{org}/projectsV2"],listForUser:["GET /users/{username}/projectsV2"],listItemsForOrg:["GET /orgs/{org}/projectsV2/{project_number}/items"],listItemsForUser:["GET /users/{username}/projectsV2/{project_number}/items"],updateItemForOrg:["PATCH /orgs/{org}/projectsV2/{project_number}/items/{item_id}"],updateItemForUser:["PATCH /users/{username}/projectsV2/{project_number}/items/{item_id}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkImmutableReleases:["GET /repos/{owner}/{repo}/immutable-releases"],checkPrivateVulnerabilityReporting:["GET /repos/{owner}/{repo}/private-vulnerability-reporting"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAttestation:["POST /repos/{owner}/{repo}/attestations"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],customPropertiesForReposCreateOrUpdateRepositoryValues:["PATCH /repos/{owner}/{repo}/properties/values"],customPropertiesForReposGetRepositoryValues:["GET /repos/{owner}/{repo}/properties/values"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disableImmutableReleases:["DELETE /repos/{owner}/{repo}/immutable-releases"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enableImmutableReleases:["PUT /repos/{owner}/{repo}/immutable-releases"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesetHistory:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}/history"],getRepoRulesetVersion:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}/history/{version_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAttestations:["GET /repos/{owner}/{repo}/attestations/{subject_digest}"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{createPushProtectionBypass:["POST /repos/{owner}/{repo}/secret-scanning/push-protection-bypasses"],getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],getScanHistory:["GET /repos/{owner}/{repo}/secret-scanning/scan-history"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],listOrgPatternConfigs:["GET /orgs/{org}/secret-scanning/pattern-configurations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],updateOrgPatternConfigs:["PATCH /orgs/{org}/secret-scanning/pattern-configurations"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteAttestationsBulk:["POST /users/{username}/attestations/delete-request"],deleteAttestationsById:["DELETE /users/{username}/attestations/{attestation_id}"],deleteAttestationsBySubjectDigest:["DELETE /users/{username}/attestations/digest/{subject_digest}"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getById:["GET /user/{account_id}"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listAttestations:["GET /users/{username}/attestations/{subject_digest}"],listAttestationsBulk:["POST /users/{username}/attestations/bulk-list{?per_page,before,after}"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},da=Ap;var Ie=new Map;for(let[e,t]of Object.entries(da))for(let[r,n]of Object.entries(t)){let[o,s,i]=n,[a,l]=o.split(/ /),u=Object.assign({method:a,url:l},s);Ie.has(e)||Ie.set(e,new Map),Ie.get(e).set(r,{scope:e,methodName:r,endpointDefaults:u,decorations:i})}var Pp={has({scope:e},t){return Ie.get(e).has(t)},getOwnPropertyDescriptor(e,t){return{value:this.get(e,t),configurable:!0,writable:!0,enumerable:!0}},defineProperty(e,t,r){return Object.defineProperty(e.cache,t,r),!0},deleteProperty(e,t){return delete e.cache[t],!0},ownKeys({scope:e}){return[...Ie.get(e).keys()]},set(e,t,r){return e.cache[t]=r},get({octokit:e,scope:t,cache:r},n){if(r[n])return r[n];let o=Ie.get(t).get(n);if(!o)return;let{endpointDefaults:s,decorations:i}=o;return i?r[n]=Op(e,t,n,s,i):r[n]=e.request.defaults(s),r[n]}};function Tn(e){let t={};for(let r of Ie.keys())t[r]=new Proxy({octokit:e,scope:r,cache:{}},Pp);return t}function Op(e,t,r,n,o){let s=e.request.defaults(n);function i(...a){let l=s.endpoint.merge(...a);if(o.mapToData)return l=Object.assign({},l,{data:l[o.mapToData],[o.mapToData]:void 0}),s(l);if(o.renamed){let[u,c]=o.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${u}.${c}()`)}if(o.deprecated&&e.log.warn(o.deprecated),o.renamedParameters){let u=s.endpoint.merge(...a);for(let[c,p]of Object.entries(o.renamedParameters))c in u&&(e.log.warn(`"${c}" parameter is deprecated for "octokit.${t}.${r}()". Use "${p}" instead`),p in u||(u[p]=u[c]),delete u[c]);return s(u)}return s(...a)}return Object.assign(i,s)}function Dp(e){return{rest:Tn(e)}}Dp.VERSION=vn;function xn(e){let t=Tn(e);return{...t,rest:t}}xn.VERSION=vn;var ua="22.0.1";var ca=Bt.plugin(wn,xn,Sn).defaults({userAgent:`octokit-rest.js/${ua}`});var QR=ca.plugin(yn,Mt);var ZR=60*6e4;function An(e){if(!Bp(e))return!1;let t=e;return t.version===1&&t.origin==="asked"&&(t.outcome==="asked"||t.outcome==="unanswered")&&(t.asked_at===null||typeof t.asked_at=="string")&&(t.age_ms===null||typeof t.age_ms=="number")&&typeof t.threshold_ms=="number"&&typeof t.stale=="boolean"&&typeof t.posture=="string"&&typeof t.reserved_fraction=="number"&&typeof t.next_poll_ms=="number"&&Array.isArray(t.pools)&&Array.isArray(t.unreported_pools)&&typeof t.reason=="string"}function Bp(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var ma=4*60*1e3;var Jp=["api","graphql"],ZE=rn(Jp);var fa=2e4,eS=7*24*60*60*1e3;var zp=2,Yp=zp*fa;function ha(e){if(!ga(e))return!1;let t=e;return t.version===1&&(t.fetched_at===null||typeof t.fetched_at=="string")&&(t.age_ms===null||typeof t.age_ms=="number")&&typeof t.threshold_ms=="number"&&typeof t.stale=="boolean"&&Number.isInteger(t.request_count)&&ga(t.rate_limit)&&Array.isArray(t.projects)&&typeof t.reason=="string"}function ga(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var ya=["open_pull_requests","open_issues","merged_today","ready_queue","human_queue"];function Pn(e){if(!Ut(e))return!1;let t=e;return t.version===1&&typeof t.threshold_ms=="number"&&typeof t.reason=="string"&&Array.isArray(t.projects)&&t.projects.every(Qp)}function Qp(e){if(!Ut(e))return!1;let t=e;if(typeof t.project_label!="string"||typeof t.repository!="string"||typeof t.outcome!="string"||!Ut(t.counters))return!1;let r=t.counters;return ya.every(n=>Xp(r[n]))}function Xp(e){if(!Ut(e))return!1;let t=e;return typeof t.name=="string"&&(t.value===null||typeof t.value=="number")&&(t.fetched_at===null||typeof t.fetched_at=="string")&&(t.age_ms===null||typeof t.age_ms=="number")&&typeof t.threshold_ms=="number"&&typeof t.stale=="boolean"&&typeof t.reason=="string"}function Ut(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function On(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return Number.isInteger(t.count)&&Array.isArray(t.recent)}function ka(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return typeof t.generated_at=="string"&&_a(t.hour)&&_a(t.day)&&(t.history_48h===void 0||Zp(t.history_48h))}function Zp(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return t.hours===48&&ba(t.tokens_per_hour)&&ba(t.tickets_per_hour)}function ba(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return Array.isArray(t.buckets)&&t.buckets.length===48&&t.buckets.every(r=>{if(r===null||typeof r!="object"||Array.isArray(r))return!1;let n=r;return typeof n.hour=="string"&&(n.value===null||typeof n.value=="number")&&(n.absent_reason===null||typeof n.absent_reason=="string")})}function _a(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return typeof t.window=="string"&&typeof t.window_ms=="number"&&Dn(t.tokens_per_min)&&Dn(t.tools_per_min)&&Dn(t.issues_per_hour)&&Array.isArray(t.unavailable)}function Dn(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return(t.value===null||typeof t.value=="number")&&(t.absent_reason===null||typeof t.absent_reason=="string")&&Number.isInteger(t.samples)}function dt(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e,r=t.daemon,n=t.staleness,o=t.host;return t.version===1&&typeof t.generated_at=="string"&&r!=null&&typeof r=="object"&&Number.isInteger(r.pid)&&typeof r.daemon_version=="string"&&typeof r.protocol_version=="number"&&n!=null&&typeof n=="object"&&typeof n.stale=="boolean"&&typeof n.threshold_ms=="number"&&Array.isArray(n.unmeasured_workers)&&o!=null&&typeof o=="object"&&Number.isInteger(o.worker_count)&&Number.isInteger(o.project_count)&&typeof o.observed_rss_bytes=="number"&&Array.isArray(t.projects)&&Array.isArray(t.workers)&&(t.known_projects===void 0||Array.isArray(t.known_projects)&&t.known_projects.every(s=>typeof s=="string"))&&(t.registered_projects===void 0||Array.isArray(t.registered_projects)&&t.registered_projects.every(s=>typeof s=="string"))&&(t.lapsed_projects===void 0||Array.isArray(t.lapsed_projects)&&t.lapsed_projects.every(em))&&(t.stopped_projects===void 0||Array.isArray(t.stopped_projects)&&t.stopped_projects.every(tm))&&(t.orphaned_projects===void 0||Array.isArray(t.orphaned_projects)&&t.orphaned_projects.every(s=>typeof s=="string"))&&(t.repository_activity===void 0||ha(t.repository_activity))&&(t.remote_counters===void 0||Pn(t.remote_counters))&&(t.github_balance===void 0||An(t.github_balance))&&(t.deaths===void 0||On(t.deaths))&&(t.engine===void 0||rm(t.engine))&&(t.metrics===void 0||ka(t.metrics))}function em(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return typeof t.project_label=="string"&&typeof t.at=="string"&&(t.registered_at===void 0||typeof t.registered_at=="string")&&(t.standing===void 0||typeof t.standing=="boolean")&&(t.queue_depth===void 0||Number.isInteger(t.queue_depth))&&typeof t.reason=="string"}function tm(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return typeof t.project_label=="string"&&typeof t.at=="string"&&(t.standing===void 0||typeof t.standing=="boolean")&&(t.queue_depth===void 0||Number.isInteger(t.queue_depth))}function rm(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;let t=e;return typeof t.running_version=="string"&&(t.published_version===null||typeof t.published_version=="string")}var Ra={runner:null,model:null,effort:null,origin:null,issue:null,phase:null,step:null,phase_index:null,phase_total:null,failed:!1,heartbeat:null,wait_kind:null,wait_subject:null,wait_pid:null,wait_started_at:null,wait_deadline:null,wait_escalation:null,started_at:null,phase_started_at:null,progress_at:null,context:null,eta:null,added:null,removed:null,tokens:null,tools:null,reasoning:null,text:null};function Gn(e){let t=/^(\d+)\.(\d+)\.(\d+)/.exec(String(e).trim());return t?{major:Number(t[1]),minor:Number(t[2]),patch:Number(t[3])}:null}function wa(e,t){let r=Gn(e),n=Gn(t);return!r||!n?0:r.major-n.major||r.minor-n.minor||r.patch-n.patch}var nv=4*60*60*1e3;var sm=28;function Ht(e,t={}){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?t.fractionalThousands!==!0?`${Math.floor(e/1e3)}k`:`${Number((e/1e3).toFixed(1))}k`:String(e)}function im(e){return wa(e.latestCachedVersion??"",e.version??"")>0}function Ea(e,t){if(!e.version)return null;let r=im(e);return!r&&t==="update-only"?null:`v${e.version}${r?"*":""}`}function am(e){let t=e.basename,r=Ea(e,"update-only"),n=r?` ${r}`:"";if(e.branch){let o=e.branch;return o.length>sm&&(o=`${o.slice(0,27)}\u2026`),`${t} (${o})${n}`}return e.detachedSha?`${t} (detached ${e.detachedSha})${n}`:`${t}${n}`}function $n(e){return!e||!e.model?null:e.effort?`${e.model}\xB7${e.effort}`:e.model}function jn(e){if(!e)return null;let t=e.contextTokens;if(t===void 0||t===0)return null;let r=Ht(t);return e.contextPercent===void 0?r:`${r} ${Math.round(e.contextPercent)}%`}function In(e){if(!e)return null;let t=[];return e.usage5h!==void 0&&t.push(`5h=${Math.round(e.usage5h)}%`),e.usage7d!==void 0&&t.push(`7d=${Math.round(e.usage7d)}%`),t.length?t.join(" "):null}function Ln(e){if(!e)return null;let t=[];return e.localAdded&&e.localAdded>0&&t.push(`+${e.localAdded}`),e.localRemoved&&e.localRemoved>0&&t.push(`-${e.localRemoved}`),t.length?`loc=${t.join(" ")}`:null}function Cn(e){let t={...e};delete t.version;let r=am(t),n=Ea(e,"always");return n?`${r} ${n}`:r}function Sa(e){let t=[Cn(e.project)],r=$n(e.claude);r!==null&&t.push(r);let n=jn(e.claude);n!==null&&t.push(`ctx=${n}`);let o=In(e.claude);o!==null&&t.push(o);let s=Ln(e.localDiff);return s!==null&&t.push(s),t.join(" ")}function va(e,t){let r=[...t];for(;r.length>0&&(r[r.length-1]??"").trim()==="";)r.pop();let[n,...o]=r;return[n&&n.trim()!==""?`${e} \xB7 ${n}`:e,...o]}var Wt={$schema:"https://tr.designtokens.org/format/2025.10/schema.json",$description:"RedDB design tokens \u2014 the canonical, machine-readable source of truth. DTCG 2025.10 (Design Tokens Format Module, first stable version). Hand-authored; tokens.css and tailwind-preset.js are build outputs of generators/build-tokens.mjs \u2014 never hand-edit them. Locked brand values: red #ff2056, ink #07080a, paper #f4f5f7 (from the marks, issues #13/#16); type Space Grotesk + JetBrains Mono (ADR 0001).",color:{$type:"color",$description:"Primitive palette (raw scale) and semantic roles (aliases). Feedback colours (success/warning/danger) are intentionally not published yet; issue #10 locked --ok #4ade80, --warn #fbbf24, and --danger #ff5470, with the rule that the accent never signals error.",red:{$description:"The brand accent. red.500 is the locked mark colour #ff2056; the other stops are derived by mixing toward white/black for hover, active, and on-light emphasis.","400":{$value:{colorSpace:"srgb",components:[1,.3882,.5373],hex:"#ff6389"}},"500":{$value:{colorSpace:"srgb",components:[1,.1255,.3373],hex:"#ff2056"},$extensions:{reddb:{contrastGuardrail:{normalText:{passesOn:["color.neutral.950","color.neutral.900"],failsOn:["color.neutral.800"]},asFill:{textPasses:["color.neutral.950"],textFails:["color.neutral.0"]}}}}},"600":{$value:{colorSpace:"srgb",components:[.8196,.102,.2745],hex:"#d11a46"}},"700":{$value:{colorSpace:"srgb",components:[.6784,.0863,.2275],hex:"#ad163a"}}},neutral:{$description:"Cool-gray ramp on the ink\u2194paper axis. neutral.50 is the locked paper #f4f5f7; neutral.950 is the locked ink #07080a; intermediate stops are hand-tuned on the same hue.","0":{$value:{colorSpace:"srgb",components:[1,1,1],hex:"#ffffff"}},"50":{$value:{colorSpace:"srgb",components:[.9569,.9608,.9686],hex:"#f4f5f7"}},"100":{$value:{colorSpace:"srgb",components:[.9059,.9137,.9333],hex:"#e7e9ee"}},"200":{$value:{colorSpace:"srgb",components:[.8275,.8392,.8706],hex:"#d3d6de"}},"300":{$value:{colorSpace:"srgb",components:[.702,.7216,.7686],hex:"#b3b8c4"},$extensions:{reddb:{contrastGuardrail:{normalText:{passesOn:["color.neutral.950","color.neutral.900","color.neutral.800"],failsOn:[]}}}}},"400":{$value:{colorSpace:"srgb",components:[.5451,.5686,.6314],hex:"#8b91a1"},$extensions:{reddb:{contrastGuardrail:{normalText:{passesOn:["color.neutral.950","color.neutral.900","color.neutral.800"],failsOn:[]}}}}},"500":{$value:{colorSpace:"srgb",components:[.4,.4275,.4941],hex:"#666d7e"},$extensions:{reddb:{contrastGuardrail:{normalText:{passesOn:[],failsOn:["color.neutral.950","color.neutral.900","color.neutral.800"]}}}}},"600":{$value:{colorSpace:"srgb",components:[.2902,.3176,.3843],hex:"#4a5162"}},"700":{$value:{colorSpace:"srgb",components:[.2,.2235,.2863],hex:"#333949"}},"800":{$value:{colorSpace:"srgb",components:[.1176,.1333,.1765],hex:"#1e222d"}},"900":{$value:{colorSpace:"srgb",components:[.0706,.0784,.1059],hex:"#12141b"}},"950":{$value:{colorSpace:"srgb",components:[.0275,.0314,.0392],hex:"#07080a"}}},brand:{$description:"Semantic brand roles. on-primary is the black R the mark sets on the red field.",primary:{$value:"{color.red.500}"},hover:{$value:"{color.red.600}"},active:{$value:"{color.red.700}"},"on-primary":{$value:"{color.neutral.950}"}},ink:{$value:"{color.neutral.950}",$description:"The near-black foreground; the brand is dark-first."},paper:{$value:"{color.neutral.50}",$description:"The off-white ground."},surface:{muted:{$value:"{color.neutral.100}"}},border:{subtle:{$value:"{color.neutral.200}"},strong:{$value:"{color.neutral.300}"}}},fontFamily:{$type:"fontFamily",$description:"Space Grotesk for display and body, JetBrains Mono for code (ADR 0001). Space Grotesk has no italic and no weight 300; <em> maps to weight 500 and italic exists only in the mono.",sans:{$value:["Space Grotesk","system-ui","-apple-system","Segoe UI","sans-serif"]},mono:{$value:["JetBrains Mono","ui-monospace","SFMono-Regular","Menlo","monospace"]}},fontWeight:{$type:"fontWeight",$description:"Weight 300 is excluded (dark-first: thin strokes lose weight to halation).",regular:{$value:400},medium:{$value:500},bold:{$value:700}},fontSize:{$type:"dimension",$description:"Modular scale, ~1.2 (minor third) from a 1rem base.",xs:{$value:{value:.75,unit:"rem"}},sm:{$value:{value:.875,unit:"rem"}},base:{$value:{value:1,unit:"rem"}},lg:{$value:{value:1.125,unit:"rem"}},xl:{$value:{value:1.25,unit:"rem"}},"2xl":{$value:{value:1.5,unit:"rem"}},"3xl":{$value:{value:1.875,unit:"rem"}},"4xl":{$value:{value:2.25,unit:"rem"}},"5xl":{$value:{value:3,unit:"rem"}},"6xl":{$value:{value:3.75,unit:"rem"}}},lineHeight:{$type:"number",$description:"Unitless multipliers.",tight:{$value:1.1},snug:{$value:1.25},normal:{$value:1.5},relaxed:{$value:1.65}},letterSpacing:{$type:"dimension",tight:{$value:{value:-.02,unit:"em"}},normal:{$value:{value:0,unit:"em"}},wide:{$value:{value:.04,unit:"em"}}},spacing:{$type:"dimension",$description:"4px base grid; 1 unit = 0.25rem.","0":{$value:{value:0,unit:"rem"}},px:{$value:{value:1,unit:"px"}},"0.5":{$value:{value:.125,unit:"rem"}},"1":{$value:{value:.25,unit:"rem"}},"2":{$value:{value:.5,unit:"rem"}},"3":{$value:{value:.75,unit:"rem"}},"4":{$value:{value:1,unit:"rem"}},"5":{$value:{value:1.25,unit:"rem"}},"6":{$value:{value:1.5,unit:"rem"}},"8":{$value:{value:2,unit:"rem"}},"10":{$value:{value:2.5,unit:"rem"}},"12":{$value:{value:3,unit:"rem"}},"16":{$value:{value:4,unit:"rem"}},"20":{$value:{value:5,unit:"rem"}},"24":{$value:{value:6,unit:"rem"}}},radius:{$type:"dimension",$description:"The symbol's clipped corner is a hard geometric cut, so brand chrome favours restrained radii.",none:{$value:{value:0,unit:"rem"}},sm:{$value:{value:.125,unit:"rem"}},md:{$value:{value:.375,unit:"rem"}},lg:{$value:{value:.5,unit:"rem"}},xl:{$value:{value:.75,unit:"rem"}},"2xl":{$value:{value:1,unit:"rem"}},full:{$value:{value:9999,unit:"px"}}},duration:{$type:"duration",instant:{$value:{value:75,unit:"ms"}},fast:{$value:{value:150,unit:"ms"}},normal:{$value:{value:250,unit:"ms"}},slow:{$value:{value:400,unit:"ms"}}},easing:{$type:"cubicBezier",$description:"Standard for most transitions; entrance decelerates, exit accelerates, emphasized for hero motion.",standard:{$value:[.4,0,.2,1]},entrance:{$value:[0,0,.2,1]},exit:{$value:[.4,0,1,1]},emphasized:{$value:[.2,0,0,1]}},shadow:{$type:"shadow",$description:"Elevation cast in ink at low alpha; tuned for a dark-first surface.",sm:{$value:{color:{colorSpace:"srgb",components:[.0275,.0314,.0392],alpha:.12,hex:"#07080a"},offsetX:{value:0,unit:"px"},offsetY:{value:1,unit:"px"},blur:{value:2,unit:"px"},spread:{value:0,unit:"px"}}},md:{$value:{color:{colorSpace:"srgb",components:[.0275,.0314,.0392],alpha:.16,hex:"#07080a"},offsetX:{value:0,unit:"px"},offsetY:{value:2,unit:"px"},blur:{value:8,unit:"px"},spread:{value:0,unit:"px"}}},lg:{$value:{color:{colorSpace:"srgb",components:[.0275,.0314,.0392],alpha:.2,hex:"#07080a"},offsetX:{value:0,unit:"px"},offsetY:{value:8,unit:"px"},blur:{value:24,unit:"px"},spread:{value:0,unit:"px"}}},xl:{$value:{color:{colorSpace:"srgb",components:[.0275,.0314,.0392],alpha:.24,hex:"#07080a"},offsetX:{value:0,unit:"px"},offsetY:{value:16,unit:"px"},blur:{value:48,unit:"px"},spread:{value:0,unit:"px"}}}}};var ze=class extends Error{name="BrandTokenError";constructor(t,r,n){super(n),this.code=t,this.tokenName=r}};function ut(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}if(!ut(Wt)||!ut(Wt.color))throw new ze("TOKEN_MALFORMED","color","The vendored DTCG document has no color token group.");var dm=Wt;function um(e){let t=dm;for(let r of e.split(".")){if(!ut(t)||!(r in t))return;t=t[r]}return t}function Nn(e,t){return new ze("TOKEN_MALFORMED",e,`Brand color token "${e}" is malformed: ${t}`)}function Ta(e,t,r){if(r.has(e))throw new ze("TOKEN_ALIAS_CYCLE",t,`Brand color token "${t}" contains an alias cycle at "${e}".`);let n=um(e);if(n===void 0)throw new ze("TOKEN_NOT_FOUND",t,`Brand color token "${t}" was not found (resolved path "${e}").`);if(!ut(n)||!("$value"in n))throw Nn(t,`"${e}" is not a token with a $value`);let o=n.$value;if(typeof o=="string"){let s=/^\{([^{}]+)\}$/.exec(o);if(s?.[1]===void 0)throw Nn(t,`"${e}" has an invalid alias`);return Ta(s[1],t,new Set([...r,e]))}if(!ut(o)||typeof o.hex!="string"||!/^#[0-9a-fA-F]{6}$/.test(o.hex))throw Nn(t,`"${e}" has no six-digit hex color value`);return{name:e.startsWith("color.")?e.slice(6):e,hex:o.hex.toLowerCase()}}function cm(e){let t=e.startsWith("color.")?e:`color.${e}`;return Ta(t,e,new Set)}function pm(e){return cm(e).hex}function xa(e,t){let r=pm(e),n=Number.parseInt(r.slice(1,3),16),o=Number.parseInt(r.slice(3,5),16),s=Number.parseInt(r.slice(5,7),16);return`\x1B[${t};2;${n};${o};${s}m`}function ue(e){return xa(e,38)}function Mn(e){return xa(e,48)}var Fn=Mn("brand.primary"),Bn=ue("brand.on-primary"),qt=Mn("neutral.900"),Kt=ue("paper"),Le=ue("paper"),Ce="\x1B[39m",re=ue("neutral.400"),mm=ue("neutral.500"),Aa=ue("neutral.300"),Pa=ue("neutral.0"),Oa=ue("neutral.700"),Da=ue("red.500"),Re="\x1B[49m",pe="\x1B[0m",Vt="\x1B[1m",Jt="\x1B[22m";var fm=/\x1b\[[0-9;]*m/g,gm=/(\x1b\[[0-9;]*m)/,hm=/^\x1b\[[0-9;]*m$/;function Ga(e){return e.replace(fm,"")}function ym(e){return e.slice(2,-1).split(";").every(r=>r===""||Number(r)===0)}function me(e){return[...Ga(e)].length}function fe(e,t){if(t<=0)return"";if(me(e)<=t)return e;if(t===1)return"\u2026";let r=t-1,n=0,o=!1,s="";for(let i of e.split(gm))if(i!==""){if(hm.test(i)){s+=i,o=!ym(i);continue}for(let a of i){if(n===r)return`${s}\u2026${o?pe:""}`;s+=a,n+=1}}return`${s}\u2026${o?pe:""}`}function zt(e,t){return e+" ".repeat(Math.max(0,t-me(e)))}function Un(e){let t=e.toLowerCase();for(let r of["opus","sonnet","haiku","fable"]){let n=t.indexOf(r);if(n===-1)continue;let s=t.slice(n+r.length).match(/^-(\d+(?:[-.]\d+)*)/)?.[1]?.split(/[-.]/)??[];return/^\d{8}$/.test(s.at(-1)??"")&&s.pop(),s.length===0?r:`${r}-${s.join(".")}`}return e}function we(e){if(!Number.isFinite(e)||e<=0)return"0B";let t=["B","K","M","G","T"],r=e,n=0;for(;r>=1024&&n<t.length-1;)r/=1024,n+=1;return`${r>=100||n===0?Math.round(r).toString():r.toFixed(1).replace(/\.0$/,"")}${t[n]}`}function Yt(e){if(!Number.isFinite(e)||e<=0)return"0";let t=(r,n)=>{let o=(Math.round(r*10)/10).toFixed(1);return`${o.endsWith(".0")?o.slice(0,-2):o}${n}`};return e>=1e9?t(e/1e9,"B"):e>=1e6?t(e/1e6,"M"):e>=1e3?t(e/1e3,"k"):String(Math.round(e))}function K(e){if(e==null||!Number.isFinite(e)||e<0)return"\u2014";let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let r=Math.floor(t/60);if(r<60)return`${r}m${t%60}s`;let n=Math.floor(r/60);return n<24?`${n}h${r%60}m`:`${Math.floor(n/24)}d${n%24}h`}function ct(e){if(e==null)return null;let t=e.replace(/[\u0000-\u001f\u007f]+/g," ").replace(/\s+/g," ").trim();return t===""?null:t}var $a=[{name:"ready_queue",key:"rdy"},{name:"open_issues",key:"iss"},{name:"open_pull_requests",key:"pr"},{name:"merged_today",key:"mrg"}],ja=["ready_queue","open_pull_requests","merged_today"];function Qt(e,t,r){let n=La(e,t),o=Ca(e,t),s=[];for(let{name:i,key:a}of $a){if(r!=null&&!r.includes(i))continue;let l=_m(a,n?.counters[i],bm(o,i));l!=null&&s.push(l)}return s}function Ia(e,t){let r=Ca(e,t)?.counts,n=r?.trunk_lines_added,o=r?.trunk_lines_removed;if(n==null||o==null)return null;let s=[];return n>0&&s.push(`+${Ht(n,{fractionalThousands:!0})}`),o>0&&s.push(`-${Ht(o,{fractionalThousands:!0})}`),s.length===0?null:s.join(" ")}function La(e,t){return t==null?null:(e.remote_counters?.projects??[]).find(r=>r.project_label===t)??null}function Ca(e,t){return t==null?null:(e.repository_activity?.projects??[]).find(r=>r.project_label===t)??null}function bm(e,t){let r=e?.counts;return r==null?null:t==="open_pull_requests"?r.open_pull_requests:t==="open_issues"?r.open_issues:t==="merged_today"?r.merged_today??null:null}function _m(e,t,r){return t==null?r==null?null:`${e}=${r}`:t.value==null?null:`${e}=${t.value}${t.stale?`(${km(t.age_ms)})`:""}`}function km(e){return K(e).replace(/m0s$/,"m").replace(/h0m$/,"h").replace(/d0h$/,"d")}var pt="!unregistered";var Xt="\u21E1",Ne="\u2020",mt="\u25D0",ft="\u25EF",Hn="\u21B3",Wn="redskilled unreachable \u2014 Worker state unknown",Rm="\xB7withheld";function qn(e){return e?.includes("vitals")?Rm:"!unmeasured"}function gt(e,t){return t.mode==="global"?e.workers:t.project==null?[]:e.workers.filter(r=>r.project_label===t.project)}function Zt(e,t){return t.mode==="global"?e.projects:e.projects.filter(r=>r.project_label===t.project)}function er(e,t){return t==null?"unresolved":e.known_projects==null?"matched":e.known_projects.includes(t)?e.registered_projects==null||e.registered_projects.includes(t)?"matched":e.orphaned_projects?.includes(t)===!0?"orphaned":e.stopped_projects?.some(r=>r.project_label===t)===!0?"stopped":e.lapsed_projects?.some(r=>r.project_label===t)===!0?"lapsed":"name-only":"unregistered"}function Kn(e){let t=[];return e.workers.length>0&&e.workers.length<=e.maxWorkers&&t.push("workers"),e.mode==="global"&&e.projects.length>0&&e.projects.length<=e.maxProjects&&t.push("projects"),t.push("host"),t}var Ma=["setup","coding","validating","merging","done"],Em={claim:"setup",implement:"coding",gate:"validating",publish:"merging",land:"merging",setup:"setup",coding:"coding",validating:"validating",merging:"merging",done:"done","push-pr":"merging",merge:"merging",cascade:"merging"};function tr(e){if(e==null)return null;let t=e.trim();if(t==="")return null;let r=t.endsWith("!"),n=(r?t.slice(0,-1):t).toLowerCase(),o=Em[n];if(o===void 0)return null;let s=Ma.length,i=Ma.indexOf(o);return{macro:o,index:i===s-1?s:i,total:s,failed:r}}function Fa(e){let t=e.phase,r=e.phase_total,n=e.phase_index,o=r!=null&&r>0&&n!=null&&n>=0?{index:Math.floor(n),total:Math.floor(r)}:tr(t);return[t!=null&&o!=null?`${t} ${Math.min(o.index+1,o.total)}/${o.total}`:t,e.step].filter(i=>!!i).join(" \xB7 ")}function Vn(e,t){if(e==null||e==="")return null;let r=Date.parse(e),n=Date.parse(t);return Number.isFinite(r)&&Number.isFinite(n)?Math.max(0,n-r):null}function Ba(e,t,r){let n=e.uptime_ms??Vn(e.started_at,r),o=Vn(t.phase_started_at,r),s=Vn(t.progress_at,r);return[n==null?null:`age=${K(n)}`,o==null?null:`phase=${K(o)}`,s==null?null:`idle=${K(s)}`].filter(i=>i!=null).join(" ")}var rr=["wid","run","org","iss","bar","phase","base","elapsed","eta","hb","loc","tks","ctx","tls","rsn","txt"];var Ua="\u2588",Am="\u25B6",Pm="\u2717",Om="\u2591",Dm=new Set(["gate","push-pr","merge","cascade"]),Gm=new Set(["requeue"]),$m="repair";function nr(e){return e.display?.origin===$m}function Jn(e,t,r){let n=e.display??Ra,o=nr(e),s=[n.runner,n.model==null?null:Un(n.model),n.effort].filter(l=>!!l).join(" "),i=n.phase!=null&&Dm.has(n.phase),a=o||i||n.origin!=null&&Gm.has(n.origin);return{wid:t.mode==="global"?`${e.project_label}:${e.worker_id}`:e.worker_id,run:o||s===""?"":`run=${s}`,org:o?"lane=repair":i?"org=landing":n.origin==null?"":`org=${n.origin}`,iss:n.issue==null?"":o?`pr=#${n.issue.replace(/^#/,"")}`:`iss=${n.issue}`,bar:Wa(n),phase:Fa(n),base:e.base_commits_ahead==null?"":`base +${e.base_commits_ahead}`,elapsed:Ba(e,n,r),eta:n.eta==null?"":`eta=${K(n.eta*1e3)}`,hb:jm(n,r)??`hb=${n.heartbeat??"?"}`,loc:Im(n.added,n.removed),tks:a||n.tokens==null?"":`tks=${Yt(n.tokens)}`,ctx:n.context==null?"":`ctx=${Yt(n.context)}`,tls:a||n.tools==null?"":`tls=${n.tools}`,rsn:a||n.reasoning==null?"":`rsn=${n.reasoning}`,txt:a||n.text==null?"":`txt=${n.text}`}}function jm(e,t){if(e.wait_kind==null||e.wait_subject==null||e.wait_pid==null||e.wait_pid<=0||e.wait_started_at==null)return null;let r=Date.parse(e.wait_started_at),n=Date.parse(t);return!Number.isFinite(r)||!Number.isFinite(n)?null:`${e.wait_kind}=${e.wait_subject} ${K(Math.max(0,n-r))}`}function Wa(e){let t=e.phase_total,r=e.phase_index;if(t!=null&&t>0&&r!=null&&r>=0)return Ha(Math.floor(r),Math.floor(t),e.failed);let n=tr(e.phase);return n==null?"":Ha(n.index,n.total,n.failed||e.failed)}function Ha(e,t,r){let n=Math.min(e,t);if(n>=t)return Ua.repeat(t);let o=r?Pm:Am;return`${Ua.repeat(n)}${o}${Om.repeat(t-n-1)}`}function Im(e,t){if(e==null&&t==null)return"";let r=[];return e!=null&&e>0&&r.push(`+${e}`),t!=null&&t>0&&r.push(`-${t}`),`loc=${r.length>0?r.join(" "):"0"}`}function zn(e,t){if(e==="wid")return`${Vt}${t}${Jt}`;if(e==="org"&&t.trim()==="lane=repair"){let n=t.slice(t.trimEnd().length);return`${qt}${Kt}${t.trimEnd()}${Re}${re}${n}`}if(e==="bar")return t.replace(/█+/g,n=>`${Aa}${n}`).replace("\u25B6",`${Pa}\u25B6`).replace("\u2717",`${Da}\u2717`).replace(/░+/g,n=>`${Oa}${n}`)+re;let r=t.indexOf("=");return r>0?`${Le}${t.slice(0,r+1)}${Ce}${t.slice(r+1)}${re}`:t}var Lm=[{word:"killed",why:"the host ended this Worker on its resource budget, whatever it was doing",matches:e=>e.kind==="worker-budget-kill"},{word:"parked",why:"the Worker's last stage reported `ok: false` \u2014 it stopped on a refusal, not on a finish",matches:e=>(e.phase??"").endsWith("!")},{word:"landed",why:"the Worker reported its work done from the stage that reaches the trunk",matches:e=>e.birth_outcome==="work-reported"&&Cm.has((e.phase??"").toLowerCase())},{word:"done",why:"the Worker reported its work done from an earlier stage; what reached the trunk is the trunk's to say",matches:e=>e.birth_outcome==="work-reported"},{word:"no-work",why:"the Worker booted, read the queue, found nothing eligible and said so",matches:e=>e.birth_outcome==="no-eligible-work"},{word:"lost",why:"the Worker ended without reporting anything \u2014 a crash, a signal, a non-zero exit",matches:e=>e.birth_outcome==="unreported"}],Cm=new Set(["land","merging","merge","cascade","done"]);function Nm(e){return Lm.find(t=>t.matches(e))?.word??null}function qa(e,t,r){if(e==null||t!=null&&e.project_label!=null&&e.project_label!==t)return"idle";let n=Nm(e);if(n==null)return"idle";let o=Date.parse(e.ts),s=Date.parse(r),i=Number.isFinite(o)&&Number.isFinite(s)?Mm(Math.max(0,s-o)):null,a=e.issue==null||e.issue===""?null:`#${e.issue.replace(/^#/,"")}`;return[`idle\xB7${n}`,a,i].filter(l=>l!=null).join(" ")}function Mm(e){return K(e).replace(/m0s$/,"m").replace(/h0m$/,"h").replace(/d0h$/,"d")}function Qn(e){return Object.freeze({none:!0,reason:e})}function or(){return{tool:"project_start",args:{runner:"claude",target:1},why:"register this project with the host so its queue can drain"}}function Yn(e,t){if(e===null||typeof e=="string"||typeof e=="boolean")return e;if(typeof e=="number"){if(!Number.isFinite(e))throw new TypeError("repair args must contain only finite JSON numbers");return e}if(t.has(e))throw new TypeError("repair args must not contain cycles");t.add(e);try{if(Array.isArray(e))return Object.freeze(e.map(n=>Yn(n,t)));let r={};for(let[n,o]of Object.entries(e))r[n]=Yn(o,t);return Object.freeze(r)}finally{t.delete(e)}}function Fm(e){let t=Yn(e.args,new Set);return Object.freeze({tool:e.tool,args:t,why:e.why})}function Ye(e){if("none"in e.repair)return{prose:`${e.state}; repair: none because ${e.repair.reason}`,repair:"none",repair_reason:e.repair.reason};let t=Fm(e.repair);return{prose:`${e.state}; repair: call \`${t.tool}\` with \`${JSON.stringify(t.args)}\` because ${t.why}`,repair:t}}var M={mode:"local",project:null,maxWorkers:4,maxProjects:4,maxWidth:120,separator:" \xB7 ",verbose:!1};function Qe(e,t=M){let r=er(e,t.project),n=gt(e,t),o=Zt(e,t),s=Km(e,t.project,r),i=Um(e,t,n,r,s.prose),a=Kn({mode:t.mode,maxWorkers:t.maxWorkers,maxProjects:t.maxProjects,workers:n,projects:o}),l={detail:"host",line:i};for(let b of a){let _=b==="workers"?i:Xm(i,Bm(b,o),t.separator);if(l={detail:b,line:_},b==="workers"||me(_)<=t.maxWidth)break}let u=fe(l.line,t.maxWidth),c=l.detail==="workers"?zm(n,t,e.generated_at):{lines:[],degraded:!1},p=l.detail==="workers"?n.flatMap((b,_)=>{let S=t.verbose?Ym(b,t):null;return S==null?[c.lines[_]]:[c.lines[_],S]}):[],m=n.length>0?"workers":"host";return{version:1,line:u,lines:[u,...p],verbose:t.verbose,mode:t.mode,project:t.project,project_match:r,...s.repair===void 0?{}:{repair:s.repair},...s.repair_reason===void 0?{}:{repair_reason:s.repair_reason},detail:l.detail,degraded:l.detail!==m||u!==l.line||c.degraded,stale:e.staleness.stale,generated_at:e.generated_at}}function ro(e){let t=e.options??M,r=fe(Wn,t.maxWidth);return{version:1,line:r,lines:[r],verbose:t.verbose,mode:t.mode,project:t.project,project_match:"unanswered",detail:"host",degraded:!0,stale:!0,generated_at:e.generated_at}}function Bm(e,t){return e==="projects"?t.map(Qm):[]}function Um(e,t,r,n,o){let s=[],i=n!=="matched"&&n!=="unregistered"&&n!=="name-only";if(t.mode==="global"?(s.push(`host ${Xn(e.workers,e.host.worker_count)}/${e.host.project_count}p`),s.push(Va(e,t))):n==="matched"||n==="unregistered"?(s.push(Xn(r,r.length)),r.length===0&&s.push(qa(e.last_outcome,t.project,e.generated_at)),n==="unregistered"&&s.push(pt)):n==="name-only"?(s.push(Xn(r,r.length)),s.push(pt)):s.push(o),t.mode!=="global"){s.push(...Qt(e,t.project,ja));let c=Ia(e,t.project);c!=null&&s.push(c)}t.mode!=="global"&&(n==="matched"||n==="unregistered"||n==="name-only")&&s.push(Va(e,t)),s.push(Ka(e));let a=Hm(e);a!=null&&s.push(a);let l=Wm(e);l!=null&&s.push(l),e.staleness.stale&&s.push(Ja(e));let u=s.join(" ");return!i||me(u)<=t.maxWidth||a==null&&l==null?u:[a,l,o,Ka(e),e.staleness.stale?Ja(e):null].filter(c=>c!=null).join(" ")}function Xn(e,t){let r=e.filter(nr).length;return r===0?`${t}w`:`${Math.max(0,t-r)} coding + ${r} repairing`}function Ka(e){let t=e.engine,r=t?.running_version??e.daemon.daemon_version;return t==null||t.current!==!1?`v${r}`:`v${r}${Xt}`}function Hm(e){let t=e.github_balance;return t==null?null:t.posture==="spent"?`${ft} quota spent`:t.posture==="reserved"?`${mt} quota band`:null}function Wm(e){let t=e.deaths;if(t==null)return null;let r=t.sender_attributed_count??t.count,n=t.sender_attributed_count===void 0?t.latest:t.latest_sender_attributed??null;if(r<=0||n==null)return null;let o=t.boot_loop;if(o!=null){let i=ct(o.latest_refusal);return`${Ne}${r} boot-refused \xD7${o.count} in ${qm(o.span_ms)}`+(i==null?"":` \u2014 ${i}`)}let s=Object.prototype.hasOwnProperty.call(t,"current_sender_attributed")?t.current_sender_attributed??null:n;return s==null?`${Ne}${r}`:`${Ne}${r} ${s.sender_class}`}function qm(e){return K(e).replace(/m0s$/,"m").replace(/h0m$/,"h").replace(/d0h$/,"d")}function Km(e,t,r){if(r==="unregistered")return{prose:""};if(r==="orphaned")return Ye({state:`project unknown \u2014 ${t} is registered on a daemon this socket does not reach`,repair:Qn("this socket cannot safely replace a registration owned by an unreachable daemon")});if(r==="stopped"){let n=e.stopped_projects?.find(s=>s.project_label===t),o=n?.standing===!0&&(n.queue_depth??0)>0?`queue ${n.queue_depth}, drain STOPPED \u2014 `:"";return Ye({state:`${o}project unknown \u2014 ${t} was stopped${n==null?"":` at ${Zn(n.at)}`}`,repair:or()})}if(r==="lapsed"){let n=e.lapsed_projects?.find(o=>o.project_label===t);if(n!=null){let o=n.registered_at==null?"":` (registered ${Zn(n.registered_at)})`,s=n.standing===!0&&(n.queue_depth??0)>0?`queue ${n.queue_depth}, drain STOPPED \u2014 `:"";return Ye({state:`${s}project unknown \u2014 ${t} lapsed at ${Zn(n.at)}${o}`,repair:or()})}return Ye({state:`project unknown \u2014 ${t} lapsed`,repair:or()})}return r==="unresolved"?Ye({state:"project unknown \u2014 this directory resolved to no project",repair:Qn("the directory must resolve to a project before registration args can be safe")}):{prose:""}}function Zn(e){return/^\d{4}-\d{2}-\d{2}T(\d{2}:\d{2}:\d{2})/.exec(e)?.[1]??e}function Va(e,t){let r=t.mode==="global"?e.host.observed_rss_bytes:e.projects.filter(o=>o.project_label===t.project).reduce((o,s)=>o+s.observed_rss_bytes,0),n=e.host.ceiling.memory_bytes;return t.mode==="global"&&n!=null&&n>0?`${we(r)}/${we(n)}`:we(r)}function Ja(e){let t=e.staleness.age_ms;return t==null?qn(e.withheld):`!stale ${Math.round(t/1e3)}s`}var Vm=["txt","rsn","ctx","tks","tls","eta","base","elapsed","run","org","loc"];function Jm(e,t,r,n){let o=r.map(s=>zn(s,zt(e[s],t[s])));return fe(`${Re}${re}${o.join(" ")}${pe}`,n)}function zm(e,t,r){let n=e.map(a=>Jn(a,t,r)),o=rr.filter(a=>n.some(l=>me(l[a])>0)),s=[...o],i=eo(n,s);for(let a of Vm){if(s.length<=1||to(i,s)<=t.maxWidth)break;let l=s.indexOf(a);l<0||(s.splice(l,1),i=eo(n,s))}for(;s.length>1&&to(i,s)>t.maxWidth;)s.pop(),i=eo(n,s);return{lines:n.map(a=>Jm(a,i,s,t.maxWidth)),degraded:s.length<o.length||to(i,s)>t.maxWidth}}function eo(e,t){let r=Object.fromEntries(rr.map(n=>[n,0]));for(let n of e)for(let o of t)r[o]=Math.max(r[o],me(n[o]));return r}function to(e,t){return t.reduce((r,n)=>r+e[n],0)+Math.max(0,t.length-1)*2}function Ym(e,t){let r=ct(e.log.last_line);return r==null?null:fe(` ${Hn} ${za(e,t.mode)}: ${r}`,t.maxWidth)}function za(e,t){return t==="global"?`${e.project_label}:${e.worker_id}`:e.worker_id}function Qm(e){return`${e.project_label} ${e.worker_count}w ${we(e.observed_rss_bytes)}`}function Xm(e,t,r){return[e,...t].join(r)}async function no(e,t){return await Gt(e,t,"redskilled daemon")}var YT=16*1024;import{spawnSync as uf}from"node:child_process";import{existsSync as cf}from"node:fs";import{basename as el,dirname as pf,join as tl}from"node:path";import{homedir as lf}from"node:os";import{dirname as cx,isAbsolute as px,join as oo}from"node:path";import{join as of}from"node:path";var sf=[".red","redskilled"];function Ee(e){return of(e,...sf)}var ht="redskilled.service";function df(e=process.env){let t=e.XDG_CONFIG_HOME?.trim()||oo(e.HOME?.trim()||lf(),".config");return oo(t,"systemd","user")}function Za(e=process.env){return oo(df(e),ht)}async function yt(e){let r=await Xr(e.machineClaimPath,{machineIdHash:e.machineIdHash,sessionKeyHash:e.sessionKeyHash,socketPath:e.socketPath}).read().catch(()=>{});if(r==null||r.socket_path===e.socketPath||r.uid!==Zs().uid||!le(r.pid))return{paths:e,joined:!1};let n=pf(r.socket_path);return{joined:!0,paths:{...e,runtimeDir:n,socketPath:r.socket_path,acpSocketPath:e.platform==="win32"?`\\\\.\\pipe\\redskilled-${r.session_key_hash}-acp`:tl(n,el(e.acpSocketPath)),leasePath:tl(n,el(e.leasePath))}}}async function rl(e){let r=await Xr(e.machineClaimPath,{machineIdHash:e.machineIdHash,sessionKeyHash:e.sessionKeyHash,socketPath:e.socketPath}).read().catch(()=>{});if(!(r==null||r.socket_path===e.socketPath||!le(r.pid)))throw new je(e.machineClaimPath,"held",r)}async function nl(e,t,r){let n=t.env??process.env,o=t.supervisor?.installed?.(),s=n[Qr]?.trim();if(o==null&&(s!=null&&s!==""||e.machineClaimPath!==$t({env:n,machineIdHash:e.machineIdHash}))||!(o??cf(Za(n))))return!1;if(t.supervisor?.start!=null)await t.supervisor.start();else{let a=uf("systemctl",["--user","start",ht],{encoding:"utf8",env:n});if(a.error!=null||a.status!==0)throw new Error(`redskilled found the installed ${ht}, but systemd did not start it: ${a.error?.message??(a.stderr||a.stdout||`status ${a.status}`).trim()}`)}return await mf(e,t,r),!0}async function mf(e,t,r){let n=Date.now()+(t.readyTimeoutMs??r);for(;;){let o=await yt(e);if(await $e(o.paths.socketPath))return;if(Date.now()>=n)throw new Error(`the installed ${ht} did not expose a same-user daemon within the ready window (client socket ${JSON.stringify(e.socketPath)})`);await new Promise(s=>setTimeout(s,25))}}var ol=`run \`/red-setup\` (Section E3 \u2014 execution daemon), or \`${st("red-skills-redskilled",["provision"])}\` directly`;var il=3e4,al=500,ff=8e3,sl=new Set,V=class extends Error{constructor(r,n,o){super(`redskilled daemon is unreachable on ${JSON.stringify(r)}, so no Worker was started: ${n instanceof Error?n.message:String(n)}${o?.kind==="held-unresponsive"?`. ${Jr(o)}`:""}`);this.socketPath=r;this.cause=n;this.presence=o;this.name="RedskilledUnreachableError"}},bt=class extends V{constructor(t){super(t,new Error(`this host has no redskilled service installed, and a client never starts one (ADR 0150 \xA74) \u2014 ${ol}`)),this.name="RedskilledNotProvisionedError"}},Me=class extends V{constructor(r,n,o){super(r,o,n);this.presence=n;this.name="RedskilledDaemonHeldError"}};async function so(e){let t=e.config.reconnectTimeoutMs??il,r=Date.now()+t,n=e.config.reconnectInitialBackoffMs??al;for(;;)try{let o=await e.attempt(Math.max(0,r-Date.now()));return sl.add(e.socketPath),o}catch(o){if(!e.retryable(o,sl.has(e.socketPath)))throw o;if(Date.now()>=r)throw e.exhausted?.(o,t)??o;await gf(r,n),n=Math.min(n*2,ff)}}function io(e,t){if(!(e instanceof V))return e;let r=e.presence?.kind==="held-unresponsive"?e.presence.holder:null,n=new Error(`daemon replacing/booting, retrying with exponential backoff for ${t}ms exhausted`+(r==null?"":`; holder pid ${r.pid}`),{cause:e});return r==null||e.presence==null?new V(e.socketPath,n,e.presence):new Me(e.socketPath,e.presence,n)}async function gf(e,t){let r=e-Date.now();r<=0||await new Promise(n=>setTimeout(n,Math.min(t,r)))}var ll=1e4,sr=class extends Error{constructor(r){super(r);this.refusal=r;this.name="RedskilledRequestRefusedError"}};async function ir(e,t={}){let r=t.answers??await $e(e.socketPath),n=await zr(e.leasePath).catch(()=>{});return Vr({socketPath:e.socketPath,answers:r,lease:n,holderAlive:n!=null&&le(n.pid)})}async function _f(e,t={}){return await so({socketPath:e.socketPath,config:t,attempt:()=>kf(e,t),retryable:(r,n)=>r instanceof Me||r instanceof V&&n,exhausted:io})}async function kf(e,t){let r=await yt(e);try{let n=await Rf(r.paths,t);return r.joined&&n==="already-running"?"joined":n}catch(n){if(n instanceof je||n instanceof V)throw n;let o=await ir(r.paths).catch(()=>{});throw new V(r.paths.socketPath,n,o)}}async function Rf(e,t){if(await yf(bf(e.socketPath),{recursive:!0,mode:448}),await $e(e.socketPath))return"already-running";await rl(e);let r=await wf(e,t);if(r!=null)return r;if(await nl(e,t,ll))return"joined";throw new bt(e.socketPath)}async function wf(e,t){let r=await ir(e,{answers:!1}).catch(()=>{});if(r==null||r.kind!=="held-unresponsive")return null;let n=t.readyTimeoutMs??ll,o=Date.now()+n;for(;;){if(await $e(e.socketPath))return"joined";if(Date.now()>=o)break;await new Promise(i=>setTimeout(i,25))}let s=await ir(e).catch(()=>{});if(s==null||s.kind!=="held-unresponsive")return null;throw new Me(e.socketPath,s,new Error(`it did not answer a ping within ${n}ms, and no second daemon was spawned because pid ${s.holder?.pid??"unknown"} still holds this socket`))}async function Ef(e,t,r={}){let n=hf();return await so({socketPath:e.socketPath,config:r,attempt:async o=>{await _f(e,{...r,reconnectTimeoutMs:o});let s=(await yt(e)).paths,i;try{i=await no({socketPath:s.socketPath,timeoutMs:r.requestTimeoutMs??2e3},{...t,id:n})}catch(a){throw new V(s.socketPath,a,await ir(s).catch(()=>{}))}if(!i.ok)throw new sr(i.error);return i.value},retryable:(o,s)=>o instanceof V&&s,exhausted:io})}async function Sf(e,t={},r){let n=await Ef(e,{op:"statusline-payload",...t.sessionProject!=null?{session_project:t.sessionProject}:{},...r==null?{}:{extras:r}},t);if(!dt(n))throw new Error("redskilled daemon returned a malformed statusline payload");return n}async function dl(e,t=M,r={}){let n=await Sf(e,r,{vitals:!0,logs:t.verbose,display:!0});return Qe(n,t)}import{createHash as vf}from"node:crypto";import{hostname as Tf}from"node:os";import{join as Fe}from"node:path";var ul="redskilled.sock",xf="redskilled-acp.sock",Af="REDSKILLED_SESSION";function Pf(e={}){let t=e.env??process.env,r=t[Af]?.trim();if(r)return r;let n=t.XDG_RUNTIME_DIR?.trim();return n||`uid:${e.uid??(typeof process.getuid=="function"?process.getuid():"nouid")}`}function Of(e={}){return pl(e.host??Tf())}function cl(e={}){let t=e.platform??process.platform,r=Pf(e),n=e.runtimeDir??qs({key:`redskilled:${r}`,socketFileName:ul,env:e.env,uid:e.uid}),o=Of(e),s=pl(r),i=$t({env:e.env,machineIdHash:o,platform:e.platform}),a=e.homeDir??e.env?.HOME??(e.runtimeDir==null?process.env.HOME:e.runtimeDir)??n;return{platform:t,sessionKey:r,sessionKeyHash:s,machineIdHash:o,runtimeDir:n,socketPath:Fe(n,ul),acpSocketPath:t==="win32"?Df(`redskilled-${s}-acp`):Fe(n,xf),leasePath:Fe(n,"redskilled.lease.toon"),eventLanePath:Fe(Ee(a),ui),registrationIntentPath:Fe(Ee(a),"redskilled.registrations.toon"),resourceLeasePath:Fe(Ee(a),"redskilled.resources.toon"),projectWorkspaceRoot:Fe(Ee(a),"projects"),machineClaimPathOfThisHost:i,machineClaimPath:e.machineClaimPath??i}}function Df(e){return`\\\\.\\pipe\\${e}`}function pl(e){return vf("sha256").update(e).digest("hex").slice(0,12)}import{homedir as Yg}from"node:os";import{join as Gf}from"node:path";function ml(e){return jt(Gf(Ee(e),"state"))}function fl(e,t){let r;try{r=en(e)}catch{return null}let n=r.filter(a=>a.kind==="daemon").sort((a,l)=>Date.parse(l.ts)-Date.parse(a.ts))[0];if(n==null)return null;let o=Date.parse(n.ts);if(!Number.isFinite(o))return null;let s=n.signal!=null?`by ${n.signal}`:n.exit_code!=null?`exit ${n.exit_code}`:n.exit_path,i=n.detail==null||n.detail.trim()===""?"":` \u2014 ${n.detail.replace(/\s+/g," ").trim().slice(0,160)}`;return`last daemon death ${$f(Math.max(0,t-o))} ago (${s}, phase ${n.last_phase})${i}`}function $f(e){let t=Math.round(e/1e3);if(t<60)return`${t}s`;let r=Math.floor(t/60);if(r<60)return`${r}m`;let n=Math.floor(r/60);return n<48?`${n}h${r%60}m`:`${Math.floor(n/24)}d`}var gl={"=":"data",":=":{to:"data",typed:!0},":":"meta"},jf=/^[a-z][a-z0-9+.-]*:\/\//i;function If(e,t){return typeof t=="string"?{separator:e,to:t,typed:!1,prefix:!1}:{separator:e,to:t.to,typed:t.typed??!1,prefix:t.prefix??!1}}function Lf(e=gl){return Object.entries(e).map(([t,r])=>If(t,r)).sort((t,r)=>r.separator.length-t.separator.length)}function Cf(e){return/^-\d+(\.\d+)?$/.test(e)}function _t(e){return!(!e||e.startsWith("-")&&!Cf(e))}function ar(e){if(e==="true")return!0;if(e==="false")return!1;if(e==="null")return null;let t=Number(e);return!Number.isNaN(t)&&Number.isFinite(t)&&e.trim()!==""?t:e}function hl(e){if(e==="true")return!0;if(e==="false")return!1;if(e==="null")return null;if(e.startsWith("[")&&e.endsWith("]")||e.startsWith("{")&&e.endsWith("}"))try{return JSON.parse(e)}catch{}let t=Number(e);return!Number.isNaN(t)&&Number.isFinite(t)&&e.trim()!==""?t:e.includes(",")?e.split(",").map(r=>hl(r.trim())):e}function Be(e,t){switch(t){case"boolean":return Nf(e);case"number":return Mf(e);case"array":return e.split(",").map(r=>ar(r.trim()));case"string":default:return e}}function Nf(e){let t=e.toLowerCase().trim();return t==="true"||t==="yes"||t==="1"||t==="on"}function Mf(e){if(e.trim()==="")throw new TypeError(`Cannot convert "${e}" to number`);let t=Number(e);if(Number.isNaN(t))throw new TypeError(`Cannot convert "${e}" to number`);return t}function Se(e){return e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'")?e.slice(1,-1):e}function Ff(e,t={}){return e.map(r=>{let n=t[r.type];return n?n(r.value):r.value}).join("")}function A(e,t){return{type:e,value:t}}function Bf(e){let t=[],r=Hf(e);if(t.push(A("section-header","Usage:"),A("text"," "),A("usage-text",r),A("newline",`
38
42
  `),A("newline",`
39
43
  `)),e.positional&&e.positional.length>0){t.push(A("section-header","Arguments:"),A("newline",`
40
44
  `));for(let n of e.positional)if(n.description){let o=n.variadic?`${n.name}...`:n.name;t.push(A("indent"," "),A("positional-name",`<${o}>`)),n.required||t.push(A("positional-optional"," (optional)")),t.push(A("newline",`
41
45
  `),A("indent"," "),A("option-description",n.description),A("newline",`
42
46
  `))}t.push(A("newline",`
43
47
  `))}if(e.options&&Object.keys(e.options).length>0){t.push(A("section-header","Options:"),A("newline",`
44
- `));let n=Zm(e.options);t.push(...n)}return t}function Qm(e,t){let r=Ym(e);return zm(r,t)}function Xm(e){let t=["[options]"];if(e.positional)for(let r of e.positional)r.variadic?t.push(r.required?`<${r.name}...>`:`[${r.name}...]`):t.push(r.required?`<${r.name}>`:`[${r.name}]`);return t.join(" ")}function Zm(e,t=!1){let r=[],n=[],o=t?"global-option-flag":"option-flag",s=t?"global-option-type":"option-type",i=t?"global-option-default":"option-default",a=t?"global-option-description":"option-description";for(let[u,c]of Object.entries(e)){if(c.hidden)continue;let p=[],g=S=>{p.includes(S)||p.push(S)};c.short&&g(`-${c.short}`),g(`--${u}`);for(let S of c.aliases??[])S.length===1?g(`-${S}`):g(`--${S}`);let b=p.join(", "),_=c.type&&c.type!=="boolean"?`<${c.type}>`:void 0;n.push({flags:b,type:_,desc:c.description??"",default:c.default!==void 0?String(c.default):void 0})}let l=Math.max(...n.map(u=>u.flags.length+(u.type?u.type.length+1:0)),20);for(let u of n){let c=u.flags.length+(u.type?u.type.length+1:0),p=" ".repeat(l-c+2);r.push(A("indent"," ")),r.push(A(o,u.flags)),u.type&&(r.push(A("text"," ")),r.push(A(s,u.type))),r.push(A("text",p)),r.push(A(a,u.desc)),u.default!==void 0&&(r.push(A("text"," ")),r.push(A(i,`(default: ${u.default})`))),r.push(A("newline",`
45
- `))}return r}function Xa(e){let t=af(e.options??{},e.autoShort??!1),r=qm(e.separators??Ya);return{schema:e,parse(n){return ef(n,e,t,r)},help(){return Qm(e,e.formatter)}}}function ef(e,t,r,n){let o={positional:{},options:{},errors:[],rest:[]},s=new Set(n.map(c=>c.to));for(let c of s)o[c]={};let i=0,a=t.positional??[],l=0,u=!1;for(;l<e.length;){let c=e[l];if(t.stopEarly&&i>0){o.rest=e.slice(l);break}if(c==="--"&&!u){u=!0,l++;continue}if(u){if(i<a.length){let g=a[i];if(g.variadic){let b=[];for(;l<e.length;){let _=e[l];b.push(g.type?je(_,g.type):_),l++}o.positional[g.name]=b,i++}else{let b=g.type?je(c,g.type):c;o.positional[g.name]=b,i++,l++}}else t.allowUnknown!==!1&&(o.rest=o.rest??[],o.rest.push(c)),l++;continue}if(c.startsWith("--")){l=of(c,l,e,o,r,t);continue}if(c.startsWith("-")&&c.length>1&&!pf(c)){l=sf(c,l,e,o,r,t);continue}let p=tf(c,n);if(p){let{key:g,value:b,config:_}=p,S=o,v=S[_.to]??(S[_.to]={});v[g]=_.typed?Qa(b):ke(b),l++;continue}if(i<a.length){let g=a[i];if(g.variadic){let _=[];for(;l<e.length&&!e[l].startsWith("-");){let S=e[l];_.push(g.type?je(S,g.type):S),l++}o.positional[g.name]=_,i++;continue}let b=g.type?je(c,g.type):c;o.positional[g.name]=b,i++}else t.allowUnknown!==!1?o.rest.push(c):o.errors.push(`Unexpected positional argument: ${c}`);l++}return df(o,t,r),uf(o,t,a),cf(o,t,r),o}function tf(e,t){if(Hm.test(e))return null;for(let r of t){if(r.prefix&&e.startsWith(r.separator)){let o=e.slice(r.separator.length),s=o.indexOf(":");if(s>0){let i=o.slice(0,s),a=o.slice(s+1);if(rf(i))return{key:i,value:a,config:r}}continue}let n=e.indexOf(r.separator);if(n>0){let o=e.slice(0,n),s=e.slice(n+r.separator.length);if(nf(o,s,r))return{key:o,value:s,config:r}}}return null}function rf(e){return e?/^[a-zA-Z_][a-zA-Z0-9_-]*$/.test(e):!1}function nf(e,t,r){return e?r.separator===":"?e.includes("/")||e.includes(".")||/^\d+$/.test(t)?!1:/^[A-Z][a-zA-Z0-9-]*$/.test(e):!((r.separator==="="||r.separator===":=")&&e.includes("/")):!1}function of(e,t,r,n,o,s){let i=e.slice(2);if(i.startsWith("no-")){let l=i.slice(3),u=o.get(l);if(u?.negatable!==!1&&u?.type==="boolean")return n.options[u.name]=!1,t+1}if(i.includes("=")){let l=i.indexOf("="),u=i.slice(0,l),c=i.slice(l+1);return rr(u,c,t+1,n,o,s)}let a=o.get(i);if(a){if(a.type!=="boolean"){let l=r[t+1];return mt(l)?rr(a.name,l,t+2,n,o,s):(n.errors.push(`Option --${i} requires a value`),t+1)}return n.options[a.name]=!0,t+1}return s.strict?n.errors.push(`Unknown option: --${i}`):s.allowUnknown!==!1&&(n.options[i]=!0),t+1}function sf(e,t,r,n,o,s){let i=e.slice(1);if(i.includes("=")){let a=i.indexOf("="),l=i.slice(0,a),u=i.slice(a+1),c=Xn(l,o);return c?rr(c.name,u,t+1,n,o,s):(s.strict?n.errors.push(`Unknown option: -${l}`):s.allowUnknown!==!1&&(n.options[l]=tr(ke(u))),t+1)}if(i.length===1){let a=Xn(i,o);if(a){if(a.type!=="boolean"){let l=r[t+1];return mt(l)?rr(a.name,l,t+2,n,o,s):(n.errors.push(`Option -${i} requires a value`),t+1)}return n.options[a.name]=!0,t+1}if(s.strict)n.errors.push(`Unknown option: -${i}`);else if(s.allowUnknown!==!1){let l=r[t+1];if(mt(l))return n.options[i]=tr(ke(l)),t+2;n.options[i]=!0}return t+1}for(let a of i){let l=Xn(a,o);l?l.type==="boolean"?n.options[l.name]=!0:n.errors.push(`Option -${a} requires a value`):s.strict?n.errors.push(`Unknown option: -${a}`):s.allowUnknown!==!1&&(n.options[a]=!0)}return t+1}function rr(e,t,r,n,o,s){let i=o.get(e);if(i){if(i.choices){let l=i.type?je(ke(t),i.type):ke(t);if(!i.choices.includes(l))return n.errors.push(`Invalid value for '${e}': '${t}'. Allowed: ${i.choices.join(", ")}`),r}let a=i.type?je(ke(t),i.type):ke(t);if(i.type==="array"){let l=n.options[e];Array.isArray(l)?l.push(...a):n.options[e]=a}else n.options[e]=a}else s.strict?n.errors.push(`Unknown option: --${e}`):s.allowUnknown!==!1&&(n.options[e]=tr(ke(t)));return r}function af(e,t=!1){let r=new Map,n=Object.entries(e).sort(([s],[i])=>s.localeCompare(i)),o=new Set;for(let[,s]of n)s.short&&o.add(s.short);for(let[s,i]of n){let a=i.short??"";t&&!a&&(a=lf(s,o),a&&o.add(a));let l={name:s,short:a,aliases:i.aliases??[],type:i.type??"string",description:i.description??"",required:i.required??!1,hidden:i.hidden??!1,negatable:i.negatable??!0,default:i.default,choices:i.choices,env:i.env,validate:i.validate};r.set(s,l);for(let u of l.aliases)r.set(u,l)}return r}function lf(e,t){for(let r of e){if(!/[a-zA-Z]/.test(r))continue;let n=r.toLowerCase();if(!t.has(n))return n;let o=r.toUpperCase();if(!t.has(o))return o}return""}function Xn(e,t){for(let r of t.values())if(r.short===e||r.aliases.includes(e))return r}function df(e,t,r){for(let n of r.values())if(e.options[n.name]===void 0)if(n.env&&process.env[n.env]!==void 0){let o=process.env[n.env];e.options[n.name]=n.type?je(o,n.type):o}else n.default!==void 0&&(e.options[n.name]=n.default);for(let n of t.positional??[])e.positional[n.name]===void 0&&n.default!==void 0&&(e.positional[n.name]=n.default)}function uf(e,t,r){if(t.options)for(let[n,o]of Object.entries(t.options))o.required&&e.options[n]===void 0&&e.errors.push(`Missing required option: --${n}`);for(let n of r)n.required&&e.positional[n.name]===void 0&&e.errors.push(`Missing required argument: <${n.name}>`)}function cf(e,t,r){for(let n of r.values()){let o=e.options[n.name];if(n.validate&&o!==void 0){let s=n.validate(o);s!==!0&&e.errors.push(s)}}for(let n of t.positional??[]){let o=e.positional[n.name];if(n.validate&&o!==void 0){let s=n.validate(o);s!==!0&&e.errors.push(s)}}}function pf(e){return/^-\d+(\.\d+)?$/.test(e)}var Zn=class extends Error{flag;known;constructor(t,r){super(`unknown flag '${t}'; expected one of: ${r.join(", ")}`),this.name="UnknownFlagError",this.flag=t,this.known=r}};function mf(e){let t={};for(let[r,n]of Object.entries(e))t[r]={type:n.kind==="boolean"?"boolean":"string",...r.length===1?{short:r}:{},...n.aliases===void 0?{}:{aliases:n.aliases}};return t}function ff(e,t){let r=new Map;for(let[o,s]of Object.entries(t))if(!(s.kind!=="value"||s.type!=="array")){r.set(o,o);for(let i of s.aliases??[])r.set(i,o)}let n=new Map;for(let o=0;o<e.length;o+=1){let s=e[o];if(s==="--")break;let i=s.match(/^--([^=]+)(?:=(.*))?$/)??s.match(/^-([^=])(?:=(.*))?$/);if(i===null)continue;let a=r.get(i[1]);if(a===void 0)continue;let l=i[2];if(l===void 0&&mt(e[o+1])&&(l=e[o+1],o+=1),l===void 0)continue;let u=n.get(a)??[];u.push(l),n.set(a,u)}return n}function Za(e,t,r={}){let o=Xa({options:mf(t),separators:{},allowUnknown:!0}).parse([...e]),s={},i=ff(e,t),a=o.errors.find(l=>/^Option --?\S+ requires a value$/.test(l));if(a!==void 0)throw new Error(a.replace(/^Option /,""));if(o.errors.length>0)throw new Error(o.errors[0]);if(r.unknownFlags==="error"){let l=new Set(Object.keys(t));for(let u of Object.keys(o.options))if(!l.has(u))throw new Zn(u.length===1?`-${u}`:`--${u}`,Object.keys(t).map(c=>c.length===1?`-${c}`:`--${c}`))}for(let[l,u]of Object.entries(t)){let c=o.options[l];c!==void 0&&(u.kind==="boolean"?s[l]=c:u.type==="array"?s[l]=(i.get(l)??[]).map(p=>u.coerce(p)):s[l]=u.coerce(String(c)))}return{values:s,positionals:o.rest}}import{existsSync as gf,readFileSync as Yx}from"node:fs";import{dirname as hf,join as yf}from"node:path";function el(e,t){let r=e;for(let n=0;n<16;n++){let o=yf(r,t);if(gf(o))return o;let s=hf(r);if(s===r)break;r=s}return null}function bf(e){let t=e.indexOf(" #");return(t>=0?e.slice(0,t):e).trim()}function nr(e,t){let r=[];for(let n of e.split(`
46
- `)){let o=n.replace(/\r$/,""),s=o.trim();if(!s||s.startsWith("#"))continue;let i=o.indexOf(":");if(i<0)continue;let a=o.length-o.trimStart().length,l=o.slice(0,i).trim();if(!l)continue;let u=o.slice(i+1).trim();for(;r.length&&r[r.length-1].indent>=a;)r.pop();if(r.push({indent:a,key:l}),u&&r.map(p=>p.key).join(".")===t)return bf(u)}}var _f="plugins.dev.statusline",kf="dev.statusline";function Rf(e){let t=[],r=a=>{for(let l of[_f,kf]){let u=`${l}.${a}`,c=nr(e,u)?.trim();if(c!=null&&c!=="")return{key:u,value:c}}},n=r("mode"),o={};n!=null&&(n.value==="local"||n.value==="global"?o.mode=n.value:t.push({...n,reason:"expected `local` or `global`"}));let s=[{leaf:"max_workers",assign:a=>{o.maxWorkers=a}},{leaf:"max_projects",assign:a=>{o.maxProjects=a}},{leaf:"max_width",assign:a=>{o.maxWidth=a}}];for(let a of s){let l=r(a.leaf);if(l==null)continue;let u=Number(l.value);Number.isInteger(u)&&u>=0?a.assign(u):t.push({...l,reason:"expected a whole number of zero or more"})}let i=r("verbose");return i!=null&&(i.value==="true"||i.value==="false"?o.verbose=i.value==="true":t.push({...i,reason:"expected `true` or `false`"})),{config:o,warnings:t}}var wf={mode:{kind:"value",coerce:e=>e},verbose:{kind:"boolean"},project:{kind:"value",coerce:e=>e},"max-workers":{kind:"value",coerce:e=>e},"max-projects":{kind:"value",coerce:e=>e},"max-width":{kind:"value",coerce:e=>e}};function tl(e){let{values:t,positionals:r}=Za(e,wf),n=[],o={},s=t.mode??r.find(a=>a==="global"||a==="local");s!=null&&(s==="local"||s==="global"?o.mode=s:n.push({key:"--mode",value:s,reason:"expected `local` or `global`"})),t.project!=null&&(o.project=t.project),t.verbose!==void 0&&(o.verbose=t.verbose===!0);let i=[{flag:"max-workers",assign:a=>{o.maxWorkers=a}},{flag:"max-projects",assign:a=>{o.maxProjects=a}},{flag:"max-width",assign:a=>{o.maxWidth=a}}];for(let a of i){let l=t[a.flag];if(l==null)continue;let u=Number(l);Number.isInteger(u)&&u>=0?a.assign(u):n.push({key:`--${a.flag}`,value:l,reason:"expected a whole number of zero or more"})}return{flags:o,warnings:n}}function rl(e={}){let t=e.configText==null?{config:{},warnings:[]}:Rf(e.configText),r=e.flags??{};return{options:{...C,mode:r.mode??t.config.mode??e.defaultMode??C.mode,project:r.project!==void 0?r.project:e.project??C.project,maxWorkers:r.maxWorkers??t.config.maxWorkers??C.maxWorkers,maxProjects:r.maxProjects??t.config.maxProjects??C.maxProjects,maxWidth:r.maxWidth??t.config.maxWidth??C.maxWidth,verbose:r.verbose??t.config.verbose??C.verbose},warnings:t.warnings}}import{execFileSync as Gf}from"node:child_process";import{readFileSync as $f}from"node:fs";import{dirname as ll,join as jf}from"node:path";import{createHash as Ef}from"node:crypto";var Sf="project.name";function ol(e){let t=nr(e,Sf)?.trim();return t===void 0||t===""?void 0:t}var vf=8,sl="project";function il(e){let t=Of(e.gitCommonDir),r=(e.declaredName??"").trim(),n=r!==""?{name:r,source:"declared"}:Tf(e.remoteUrl)??{name:xf(e.checkoutPath,t),source:"basename"},o=Pf(t??eo(e.checkoutPath));return{name:n.name,slug:`${Af(n.name)}-${o}`,hash:o,source:n.source}}function al(e){let t=(e??"").trim();if(t==="")return;let r=t.replace(/^[a-zA-Z][a-zA-Z0-9+.-]*:\/\//,""),n=/^[^/]*?:(?!\d)(.+)$/.exec(r),s=(n?n[1]:r.replace(/^[^/]*/,"")).replace(/\.git$/,"").split("/").map(i=>i.trim()).filter(i=>i!=="");if(s.length!==0)return s.slice(-2).join("/")}function Tf(e){let t=al(e);return t===void 0?void 0:{name:t,source:"remote"}}function xf(e,t){let r=t===void 0?"":nl(Df(t));if(r!=="")return r;let n=nl(eo(e));return n===""?sl:n}function Af(e){let r=e.split("/").map(n=>n.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")).filter(n=>n!=="").join("--");return r===""?sl:r}function Pf(e){return Ef("sha256").update(e).digest("hex").slice(0,vf)}function Of(e){let t=eo(e??"");return t===""?void 0:t}function eo(e){let t=e.trim().replace(/\\/g,"/");return t.length>1?t.replace(/\/+$/,""):t}function nl(e){let t=e.split("/").filter(r=>r!=="");return t[t.length-1]??""}function Df(e){return e.split("/").filter(r=>r!=="").slice(0,-1).join("/")}var If=2e3;function dl(e){return Lf(e).name}function Lf(e){let t=ro(e),r=to(e,["rev-parse","--path-format=absolute","--git-common-dir"])??to(e,["rev-parse","--git-common-dir"]),n=to(e,["remote","get-url","origin"]);return il({checkoutPath:t.root??e,...r!==void 0?{gitCommonDir:r}:{},...n!==void 0?{remoteUrl:n}:{},...t.name!==void 0?{declaredName:t.name}:{}})}function ro(e){let t=el(e,jf(".red","config.yaml"));if(t==null)return{};let r;try{r=$f(t,"utf8")}catch{return{}}let n=ol(r),o=ll(ll(t));return{...n===void 0?{}:{name:n},configText:r,root:o}}function to(e,t){try{let r=Gf("git",[...t],{cwd:e,encoding:"utf8",stdio:["ignore","pipe","ignore"],timeout:If}).trim();return r===""?void 0:r}catch{return}}function ul(e){let t=ro(e);return t.configText==null?{label:null}:{configText:t.configText,label:dl(e)}}function cl(e){let t={app:e,version:Cf(Je("__RED_BUILD_VERSION__",()=>"4.2.8")??"0.0.0-dev"),gitSha:Je("__RED_BUILD_GIT_SHA__",()=>"327f33fe57e1b3b0536cc2cccb9b2b567add6d23")??"unknown",buildTime:Je("__RED_BUILD_TIME__",()=>"2026-08-24T16:12:24-03:00")??"unknown",bundleAsset:Je("__RED_BUNDLE_ASSET__",()=>"statusline.bundle.min.mjs")??"unknown"},r=Je("__REDDB_SDK_VERSION__",()=>"1.23.1"),n=Je("__REDDB_BINARY_TAG__",()=>"v1.23.1");return r&&(t.reddbSdkVersion=r),n&&(t.reddbBinaryTag=n),t}function Cf(e){return e.startsWith("v")?e.slice(1):e}function Je(e,t){try{let r=t();return typeof r=="string"&&r.length>0?r:void 0}catch{return process.env[e.replace(/^__|__$/g,"")]}}import{execFile as Nf}from"node:child_process";import{mkdirSync as Mf,readFileSync as Ff,renameSync as Bf,writeFileSync as Uf}from"node:fs";import{basename as no,dirname as ml,join as Hf}from"node:path";async function Wf(e,t,r){let n,o=new Promise(s=>{n=setTimeout(()=>s(r),t)});try{return await Promise.race([e,o])}finally{clearTimeout(n)}}function qf(e){try{return JSON.parse(e)}catch{return K(e)}}var Kf=5e3,Vf=400;function Jf(e){return Hf(Hs(e),"statusline-git-cache.toon")}function zf(e){try{return Ff(e,"utf8")}catch{return null}}function Yf(e,t){try{Mf(ml(e),{recursive:!0});let r=`${e}.tmp`;Uf(r,t,"utf8"),Bf(r,e)}catch{}}function Qf(e){if(e===null)return null;try{let t=qf(e),r={basename:typeof t.basename=="string"?t.basename:"",localAdded:Number(t.localAdded??0),localRemoved:Number(t.localRemoved??0),baseRef:typeof t.baseRef=="string"?t.baseRef:"",tsMs:Number(t.tsMs??0)};return typeof t.branch=="string"&&t.branch!==""&&(r.branch=t.branch),typeof t.detachedSha=="string"&&t.detachedSha!==""&&(r.detachedSha=t.detachedSha),r.basename===""?null:r}catch{return null}}function pl(e){let t={basename:e.basename,localAdded:e.localAdded,localRemoved:e.localRemoved};return e.branch&&(t.branch=e.branch),e.detachedSha&&(t.detachedSha=e.detachedSha),t}async function ft(e,t){return await new Promise(r=>{Nf("git",["-C",e,...t],{encoding:"utf8",maxBuffer:1024*1024},(n,o)=>r(n?"":String(o).trim()))})}async function Xf(e){let t=no(e),r=await ft(e,["rev-parse","--path-format=absolute","--git-common-dir"]);return r&&no(ml(r))||t}function Zf(e){let t=/(\d+) insertion/.exec(e),r=/(\d+) deletion/.exec(e);return{added:t?Number(t[1]):0,removed:r?Number(r[1]):0}}async function eg(e,t){let[r,n,o,s]=await Promise.all([Xf(e),ft(e,["branch","--show-current"]),ft(e,["rev-parse","--short","HEAD"]),ft(e,["merge-base",t,"HEAD"])]),i=Zf(await ft(e,["diff","--shortstat",s||t])),a={basename:r,localAdded:i.added,localRemoved:i.removed};return n?a.branch=n:o&&(a.detachedSha=o),a}async function fl(e,t={}){let r=(t.nowMs??Date.now)(),n=t.ttlMs??Kf,o=t.baseRef??"origin/main",s=Jf(e),i=Qf((t.readCache??zf)(s)),a=i?r-i.tsMs:Number.POSITIVE_INFINITY;if(i&&i.baseRef===o&&a>=0&&a<n)return pl(i);let l=t.writeCache??Yf,u=(t.readGitFacts??eg)(e,o).then(p=>(l(s,M({...p,baseRef:o,tsMs:r})),p)).catch(()=>null),c=await Wf(u,t.deadlineMs??Vf,null);return c||(i?pl(i):{basename:no(e),localAdded:0,localRemoved:0})}function Re(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function or(e,t){let r=e?.[t];return typeof r=="string"&&r!==""?r:void 0}function sr(e,t){let r=e?.[t];return typeof r=="number"&&Number.isFinite(r)?r:void 0}function tg(e){if(e.trim()==="")return null;let t;try{t=JSON.parse(e)}catch{return null}let r=Re(t);if(r===null)return null;let n={},o=or(Re(r.model),"display_name");o!==void 0&&(n.model=o);let s=or(Re(r.effort),"level");s!==void 0&&(n.effort=s);let i=Re(r.context_window),a=sr(i,"total_input_tokens");a!==void 0&&(n.contextTokens=a);let l=sr(i,"used_percentage");l!==void 0&&(n.contextPercent=l);let u=Re(r.rate_limits),c=sr(Re(u?.five_hour),"used_percentage");c!==void 0&&(n.usage5h=c);let p=sr(Re(u?.seven_day),"used_percentage");p!==void 0&&(n.usage7d=p);let g=or(Re(r.workspace),"current_dir")??or(r,"cwd");return g===void 0?{claude:n}:{claude:n,cwd:g}}async function gl(e={}){let t=e.stream??process.stdin;if(t.isTTY===!0)return null;let r=e.maxBytes??65536,n=e.deadlineMs??150,o=await new Promise(s=>{let i="",a=!1,l=setTimeout(()=>g(),n),u=b=>{i+=b,i.length>=r&&(i=i.slice(0,r),g())},c=()=>g(),p=()=>g();function g(){a||(a=!0,clearTimeout(l),t.removeListener("data",u),t.removeListener("end",c),t.removeListener("error",p),t.pause(),t.unref?.(),s(i))}try{t.setEncoding("utf8"),t.on("data",u),t.on("end",c),t.on("error",p),t.resume()}catch{g()}});return tg(o)}var ir=`${ee} `,SA=`${ee} \xB7 `;function rg(e){return e.replace(/(^|\s)([A-Za-z0-9][A-Za-z0-9/]*=)(\S+)/g,(t,r,n,o)=>`${r}${Pe}${n}${Oe}${o}${ee}`)}function ng(e){let t=Pn(e.project),r=e.project.basename,n=t.startsWith(r),o=n?r:"",s=n?t.slice(r.length):t;return`${Gn}${$n}\xBB ${Ft}${o}${Bt}${s}${be}`}function hl(e){let t=ng(e),r=vn(e.claude);r!==null&&(t+=`${ir}${Nt}${Mt}${r}${be}`);let n=Tn(e.claude);n!==null&&(t+=`${ir}${Pe}ctx=${Oe}${n}`);let o=xn(e.claude);o!==null&&(t+=`${ir}${rg(o)}`);let s=An(e.localDiff);return s!==null&&(t+=`${ir}${Pe}loc=${Oe}${s.slice(4)}`),`${t}${de}`}async function og(e={}){let t=await(e.readStdin??gl)(),r=t?.cwd??e.cwd??process.cwd(),n=await(e.readLocalGit??fl)(r),o=e.version??cl("redskilled").version,s={basename:n.basename};n.branch?s.branch=n.branch:n.detachedSha&&(s.detachedSha=n.detachedSha),o&&(s.version=o);let i=t?.claude,a={project:s,localDiff:{localAdded:n.localAdded,localRemoved:n.localRemoved}};return i!==void 0&&(a.claude=i),a}function sg(e,t=process.env){return t.NO_COLOR!==void 0?aa(e):hl(e)}async function yl(e,t={}){let r=await og(t);return la(sg(r,t.env??process.env),e)}async function bl(e,t={}){let r=t.write??(u=>process.stdout.write(u)),n=t.warn??(u=>process.stderr.write(u)),o=tl(e),s=ul(t.cwd??process.cwd()),i=rl({...s.configText==null?{}:{configText:s.configText},project:s.label,flags:o.flags});for(let u of[...i.warnings,...o.warnings])n(`redskilled statusline: ignoring ${u.key}=${u.value} \u2014 ${u.reason}
47
- `);let a;try{a=await Ka(t.paths??Ja(),i.options,{...t.client??{},...i.options.project==null?{}:{sessionProject:i.options.project}})}catch(u){n(`redskilled statusline: ${u instanceof Error?u.message:String(u)}
48
- `),a=Vn({options:i.options,generated_at:(t.now??(()=>new Date().toISOString()))()})}let l=a.lines;try{l=await yl(a.lines,{...t.cwd==null?{}:{cwd:t.cwd},...t.bedrock??{}})}catch(u){n(`redskilled statusline: bedrock unavailable \u2014 ${u instanceof Error?u.message:String(u)}
48
+ `));let n=Wf(e.options);t.push(...n)}return t}function Uf(e,t){let r=Bf(e);return Ff(r,t)}function Hf(e){let t=["[options]"];if(e.positional)for(let r of e.positional)r.variadic?t.push(r.required?`<${r.name}...>`:`[${r.name}...]`):t.push(r.required?`<${r.name}>`:`[${r.name}]`);return t.join(" ")}function Wf(e,t=!1){let r=[],n=[],o=t?"global-option-flag":"option-flag",s=t?"global-option-type":"option-type",i=t?"global-option-default":"option-default",a=t?"global-option-description":"option-description";for(let[u,c]of Object.entries(e)){if(c.hidden)continue;let p=[],m=S=>{p.includes(S)||p.push(S)};c.short&&m(`-${c.short}`),m(`--${u}`);for(let S of c.aliases??[])S.length===1?m(`-${S}`):m(`--${S}`);let b=p.join(", "),_=c.type&&c.type!=="boolean"?`<${c.type}>`:void 0;n.push({flags:b,type:_,desc:c.description??"",default:c.default!==void 0?String(c.default):void 0})}let l=Math.max(...n.map(u=>u.flags.length+(u.type?u.type.length+1:0)),20);for(let u of n){let c=u.flags.length+(u.type?u.type.length+1:0),p=" ".repeat(l-c+2);r.push(A("indent"," ")),r.push(A(o,u.flags)),u.type&&(r.push(A("text"," ")),r.push(A(s,u.type))),r.push(A("text",p)),r.push(A(a,u.desc)),u.default!==void 0&&(r.push(A("text"," ")),r.push(A(i,`(default: ${u.default})`))),r.push(A("newline",`
49
+ `))}return r}function yl(e){let t=Qf(e.options??{},e.autoShort??!1),r=Lf(e.separators??gl);return{schema:e,parse(n){return qf(n,e,t,r)},help(){return Uf(e,e.formatter)}}}function qf(e,t,r,n){let o={positional:{},options:{},errors:[],rest:[]},s=new Set(n.map(c=>c.to));for(let c of s)o[c]={};let i=0,a=t.positional??[],l=0,u=!1;for(;l<e.length;){let c=e[l];if(t.stopEarly&&i>0){o.rest=e.slice(l);break}if(c==="--"&&!u){u=!0,l++;continue}if(u){if(i<a.length){let m=a[i];if(m.variadic){let b=[];for(;l<e.length;){let _=e[l];b.push(m.type?Be(_,m.type):_),l++}o.positional[m.name]=b,i++}else{let b=m.type?Be(c,m.type):c;o.positional[m.name]=b,i++,l++}}else t.allowUnknown!==!1&&(o.rest=o.rest??[],o.rest.push(c)),l++;continue}if(c.startsWith("--")){l=zf(c,l,e,o,r,t);continue}if(c.startsWith("-")&&c.length>1&&!rg(c)){l=Yf(c,l,e,o,r,t);continue}let p=Kf(c,n);if(p){let{key:m,value:b,config:_}=p,S=o,v=S[_.to]??(S[_.to]={});v[m]=_.typed?hl(b):Se(b),l++;continue}if(i<a.length){let m=a[i];if(m.variadic){let _=[];for(;l<e.length&&!e[l].startsWith("-");){let S=e[l];_.push(m.type?Be(S,m.type):S),l++}o.positional[m.name]=_,i++;continue}let b=m.type?Be(c,m.type):c;o.positional[m.name]=b,i++}else t.allowUnknown!==!1?o.rest.push(c):o.errors.push(`Unexpected positional argument: ${c}`);l++}return Zf(o,t,r),eg(o,t,a),tg(o,t,r),o}function Kf(e,t){if(jf.test(e))return null;for(let r of t){if(r.prefix&&e.startsWith(r.separator)){let o=e.slice(r.separator.length),s=o.indexOf(":");if(s>0){let i=o.slice(0,s),a=o.slice(s+1);if(Vf(i))return{key:i,value:a,config:r}}continue}let n=e.indexOf(r.separator);if(n>0){let o=e.slice(0,n),s=e.slice(n+r.separator.length);if(Jf(o,s,r))return{key:o,value:s,config:r}}}return null}function Vf(e){return e?/^[a-zA-Z_][a-zA-Z0-9_-]*$/.test(e):!1}function Jf(e,t,r){return e?r.separator===":"?e.includes("/")||e.includes(".")||/^\d+$/.test(t)?!1:/^[A-Z][a-zA-Z0-9-]*$/.test(e):!((r.separator==="="||r.separator===":=")&&e.includes("/")):!1}function zf(e,t,r,n,o,s){let i=e.slice(2);if(i.startsWith("no-")){let l=i.slice(3),u=o.get(l);if(u?.negatable!==!1&&u?.type==="boolean")return n.options[u.name]=!1,t+1}if(i.includes("=")){let l=i.indexOf("="),u=i.slice(0,l),c=i.slice(l+1);return lr(u,c,t+1,n,o,s)}let a=o.get(i);if(a){if(a.type!=="boolean"){let l=r[t+1];return _t(l)?lr(a.name,l,t+2,n,o,s):(n.errors.push(`Option --${i} requires a value`),t+1)}return n.options[a.name]=!0,t+1}return s.strict?n.errors.push(`Unknown option: --${i}`):s.allowUnknown!==!1&&(n.options[i]=!0),t+1}function Yf(e,t,r,n,o,s){let i=e.slice(1);if(i.includes("=")){let a=i.indexOf("="),l=i.slice(0,a),u=i.slice(a+1),c=ao(l,o);return c?lr(c.name,u,t+1,n,o,s):(s.strict?n.errors.push(`Unknown option: -${l}`):s.allowUnknown!==!1&&(n.options[l]=ar(Se(u))),t+1)}if(i.length===1){let a=ao(i,o);if(a){if(a.type!=="boolean"){let l=r[t+1];return _t(l)?lr(a.name,l,t+2,n,o,s):(n.errors.push(`Option -${i} requires a value`),t+1)}return n.options[a.name]=!0,t+1}if(s.strict)n.errors.push(`Unknown option: -${i}`);else if(s.allowUnknown!==!1){let l=r[t+1];if(_t(l))return n.options[i]=ar(Se(l)),t+2;n.options[i]=!0}return t+1}for(let a of i){let l=ao(a,o);l?l.type==="boolean"?n.options[l.name]=!0:n.errors.push(`Option -${a} requires a value`):s.strict?n.errors.push(`Unknown option: -${a}`):s.allowUnknown!==!1&&(n.options[a]=!0)}return t+1}function lr(e,t,r,n,o,s){let i=o.get(e);if(i){if(i.choices){let l=i.type?Be(Se(t),i.type):Se(t);if(!i.choices.includes(l))return n.errors.push(`Invalid value for '${e}': '${t}'. Allowed: ${i.choices.join(", ")}`),r}let a=i.type?Be(Se(t),i.type):Se(t);if(i.type==="array"){let l=n.options[e];Array.isArray(l)?l.push(...a):n.options[e]=a}else n.options[e]=a}else s.strict?n.errors.push(`Unknown option: --${e}`):s.allowUnknown!==!1&&(n.options[e]=ar(Se(t)));return r}function Qf(e,t=!1){let r=new Map,n=Object.entries(e).sort(([s],[i])=>s.localeCompare(i)),o=new Set;for(let[,s]of n)s.short&&o.add(s.short);for(let[s,i]of n){let a=i.short??"";t&&!a&&(a=Xf(s,o),a&&o.add(a));let l={name:s,short:a,aliases:i.aliases??[],type:i.type??"string",description:i.description??"",required:i.required??!1,hidden:i.hidden??!1,negatable:i.negatable??!0,default:i.default,choices:i.choices,env:i.env,validate:i.validate};r.set(s,l);for(let u of l.aliases)r.set(u,l)}return r}function Xf(e,t){for(let r of e){if(!/[a-zA-Z]/.test(r))continue;let n=r.toLowerCase();if(!t.has(n))return n;let o=r.toUpperCase();if(!t.has(o))return o}return""}function ao(e,t){for(let r of t.values())if(r.short===e||r.aliases.includes(e))return r}function Zf(e,t,r){for(let n of r.values())if(e.options[n.name]===void 0)if(n.env&&process.env[n.env]!==void 0){let o=process.env[n.env];e.options[n.name]=n.type?Be(o,n.type):o}else n.default!==void 0&&(e.options[n.name]=n.default);for(let n of t.positional??[])e.positional[n.name]===void 0&&n.default!==void 0&&(e.positional[n.name]=n.default)}function eg(e,t,r){if(t.options)for(let[n,o]of Object.entries(t.options))o.required&&e.options[n]===void 0&&e.errors.push(`Missing required option: --${n}`);for(let n of r)n.required&&e.positional[n.name]===void 0&&e.errors.push(`Missing required argument: <${n.name}>`)}function tg(e,t,r){for(let n of r.values()){let o=e.options[n.name];if(n.validate&&o!==void 0){let s=n.validate(o);s!==!0&&e.errors.push(s)}}for(let n of t.positional??[]){let o=e.positional[n.name];if(n.validate&&o!==void 0){let s=n.validate(o);s!==!0&&e.errors.push(s)}}}function rg(e){return/^-\d+(\.\d+)?$/.test(e)}var lo=class extends Error{flag;known;constructor(t,r){super(`unknown flag '${t}'; expected one of: ${r.join(", ")}`),this.name="UnknownFlagError",this.flag=t,this.known=r}};function ng(e){let t={};for(let[r,n]of Object.entries(e))t[r]={type:n.kind==="boolean"?"boolean":"string",...r.length===1?{short:r}:{},...n.aliases===void 0?{}:{aliases:n.aliases}};return t}function og(e,t){let r=new Map;for(let[o,s]of Object.entries(t))if(!(s.kind!=="value"||s.type!=="array")){r.set(o,o);for(let i of s.aliases??[])r.set(i,o)}let n=new Map;for(let o=0;o<e.length;o+=1){let s=e[o];if(s==="--")break;let i=s.match(/^--([^=]+)(?:=(.*))?$/)??s.match(/^-([^=])(?:=(.*))?$/);if(i===null)continue;let a=r.get(i[1]);if(a===void 0)continue;let l=i[2];if(l===void 0&&_t(e[o+1])&&(l=e[o+1],o+=1),l===void 0)continue;let u=n.get(a)??[];u.push(l),n.set(a,u)}return n}function bl(e,t,r={}){let o=yl({options:ng(t),separators:{},allowUnknown:!0}).parse([...e]),s={},i=og(e,t),a=o.errors.find(l=>/^Option --?\S+ requires a value$/.test(l));if(a!==void 0)throw new Error(a.replace(/^Option /,""));if(o.errors.length>0)throw new Error(o.errors[0]);if(r.unknownFlags==="error"){let l=new Set(Object.keys(t));for(let u of Object.keys(o.options))if(!l.has(u))throw new lo(u.length===1?`-${u}`:`--${u}`,Object.keys(t).map(c=>c.length===1?`-${c}`:`--${c}`))}for(let[l,u]of Object.entries(t)){let c=o.options[l];c!==void 0&&(u.kind==="boolean"?s[l]=c:u.type==="array"?s[l]=(i.get(l)??[]).map(p=>u.coerce(p)):s[l]=u.coerce(String(c)))}return{values:s,positionals:o.rest}}import{existsSync as sg,readFileSync as WA}from"node:fs";import{dirname as ig,join as ag}from"node:path";function _l(e,t){let r=e;for(let n=0;n<16;n++){let o=ag(r,t);if(sg(o))return o;let s=ig(r);if(s===r)break;r=s}return null}function lg(e){let t=e.indexOf(" #");return(t>=0?e.slice(0,t):e).trim()}function dr(e,t){let r=[];for(let n of e.split(`
50
+ `)){let o=n.replace(/\r$/,""),s=o.trim();if(!s||s.startsWith("#"))continue;let i=o.indexOf(":");if(i<0)continue;let a=o.length-o.trimStart().length,l=o.slice(0,i).trim();if(!l)continue;let u=o.slice(i+1).trim();for(;r.length&&r[r.length-1].indent>=a;)r.pop();if(r.push({indent:a,key:l}),u&&r.map(p=>p.key).join(".")===t)return lg(u)}}var dg="plugins.dev.statusline",ug="dev.statusline";function cg(e){let t=[],r=a=>{for(let l of[dg,ug]){let u=`${l}.${a}`,c=dr(e,u)?.trim();if(c!=null&&c!=="")return{key:u,value:c}}},n=r("mode"),o={};n!=null&&(n.value==="local"||n.value==="global"?o.mode=n.value:t.push({...n,reason:"expected `local` or `global`"}));let s=[{leaf:"max_workers",assign:a=>{o.maxWorkers=a}},{leaf:"max_projects",assign:a=>{o.maxProjects=a}},{leaf:"max_width",assign:a=>{o.maxWidth=a}}];for(let a of s){let l=r(a.leaf);if(l==null)continue;let u=Number(l.value);Number.isInteger(u)&&u>=0?a.assign(u):t.push({...l,reason:"expected a whole number of zero or more"})}let i=r("verbose");return i!=null&&(i.value==="true"||i.value==="false"?o.verbose=i.value==="true":t.push({...i,reason:"expected `true` or `false`"})),{config:o,warnings:t}}var pg={mode:{kind:"value",coerce:e=>e},verbose:{kind:"boolean"},project:{kind:"value",coerce:e=>e},"max-workers":{kind:"value",coerce:e=>e},"max-projects":{kind:"value",coerce:e=>e},"max-width":{kind:"value",coerce:e=>e}};function kl(e){let{values:t,positionals:r}=bl(e,pg),n=[],o={},s=t.mode??r.find(a=>a==="global"||a==="local");s!=null&&(s==="local"||s==="global"?o.mode=s:n.push({key:"--mode",value:s,reason:"expected `local` or `global`"})),t.project!=null&&(o.project=t.project),t.verbose!==void 0&&(o.verbose=t.verbose===!0);let i=[{flag:"max-workers",assign:a=>{o.maxWorkers=a}},{flag:"max-projects",assign:a=>{o.maxProjects=a}},{flag:"max-width",assign:a=>{o.maxWidth=a}}];for(let a of i){let l=t[a.flag];if(l==null)continue;let u=Number(l);Number.isInteger(u)&&u>=0?a.assign(u):n.push({key:`--${a.flag}`,value:l,reason:"expected a whole number of zero or more"})}return{flags:o,warnings:n}}function Rl(e={}){let t=e.configText==null?{config:{},warnings:[]}:cg(e.configText),r=e.flags??{};return{options:{...M,mode:r.mode??t.config.mode??e.defaultMode??M.mode,project:r.project!==void 0?r.project:e.project??M.project,maxWorkers:r.maxWorkers??t.config.maxWorkers??M.maxWorkers,maxProjects:r.maxProjects??t.config.maxProjects??M.maxProjects,maxWidth:r.maxWidth??t.config.maxWidth??M.maxWidth,verbose:r.verbose??t.config.verbose??M.verbose},warnings:t.warnings}}import{execFileSync as wg}from"node:child_process";import{readFileSync as Eg}from"node:fs";import{dirname as xl,join as Sg}from"node:path";import{createHash as mg}from"node:crypto";var fg="project.name";function El(e){let t=dr(e,fg)?.trim();return t===void 0||t===""?void 0:t}var gg=8,Sl="project";function vl(e){let t=kg(e.gitCommonDir),r=(e.declaredName??"").trim(),n=r!==""?{name:r,source:"declared"}:hg(e.remoteUrl)??{name:yg(e.checkoutPath,t),source:"basename"},o=_g(t??uo(e.checkoutPath));return{name:n.name,slug:`${bg(n.name)}-${o}`,hash:o,source:n.source}}function Tl(e){let t=(e??"").trim();if(t==="")return;let r=t.replace(/^[a-zA-Z][a-zA-Z0-9+.-]*:\/\//,""),n=/^[^/]*?:(?!\d)(.+)$/.exec(r),s=(n?n[1]:r.replace(/^[^/]*/,"")).replace(/\.git$/,"").split("/").map(i=>i.trim()).filter(i=>i!=="");if(s.length!==0)return s.slice(-2).join("/")}function hg(e){let t=Tl(e);return t===void 0?void 0:{name:t,source:"remote"}}function yg(e,t){let r=t===void 0?"":wl(Rg(t));if(r!=="")return r;let n=wl(uo(e));return n===""?Sl:n}function bg(e){let r=e.split("/").map(n=>n.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")).filter(n=>n!=="").join("--");return r===""?Sl:r}function _g(e){return mg("sha256").update(e).digest("hex").slice(0,gg)}function kg(e){let t=uo(e??"");return t===""?void 0:t}function uo(e){let t=e.trim().replace(/\\/g,"/");return t.length>1?t.replace(/\/+$/,""):t}function wl(e){let t=e.split("/").filter(r=>r!=="");return t[t.length-1]??""}function Rg(e){return e.split("/").filter(r=>r!=="").slice(0,-1).join("/")}var vg=2e3;function Al(e){return Tg(e).name}function Tg(e){let t=po(e),r=co(e,["rev-parse","--path-format=absolute","--git-common-dir"])??co(e,["rev-parse","--git-common-dir"]),n=co(e,["remote","get-url","origin"]);return vl({checkoutPath:t.root??e,...r!==void 0?{gitCommonDir:r}:{},...n!==void 0?{remoteUrl:n}:{},...t.name!==void 0?{declaredName:t.name}:{}})}function po(e){let t=_l(e,Sg(".red","config.yaml"));if(t==null)return{};let r;try{r=Eg(t,"utf8")}catch{return{}}let n=El(r),o=xl(xl(t));return{...n===void 0?{}:{name:n},configText:r,root:o}}function co(e,t){try{let r=wg("git",[...t],{cwd:e,encoding:"utf8",stdio:["ignore","pipe","ignore"],timeout:vg}).trim();return r===""?void 0:r}catch{return}}function Pl(e){let t=po(e);return t.configText==null?{label:null}:{configText:t.configText,label:Al(e)}}function Ol(e){let t={app:e,version:xg(Xe("__RED_BUILD_VERSION__",()=>"4.3.0")??"0.0.0-dev"),gitSha:Xe("__RED_BUILD_GIT_SHA__",()=>"a0cb719342c94dcc47f1f2d87e93d372fae571a3")??"unknown",buildTime:Xe("__RED_BUILD_TIME__",()=>"2026-08-25T08:43:52-03:00")??"unknown",bundleAsset:Xe("__RED_BUNDLE_ASSET__",()=>"statusline.bundle.min.mjs")??"unknown"},r=Xe("__REDDB_SDK_VERSION__",()=>"1.23.1"),n=Xe("__REDDB_BINARY_TAG__",()=>"v1.23.1");return r&&(t.reddbSdkVersion=r),n&&(t.reddbBinaryTag=n),t}function xg(e){return e.startsWith("v")?e.slice(1):e}function Xe(e,t){try{let r=t();return typeof r=="string"&&r.length>0?r:void 0}catch{return process.env[e.replace(/^__|__$/g,"")]}}import{execFile as Ag}from"node:child_process";import{mkdirSync as Pg,readFileSync as Og,renameSync as Dg,writeFileSync as Gg}from"node:fs";import{basename as mo,dirname as Gl,join as $g}from"node:path";async function jg(e,t,r){let n,o=new Promise(s=>{n=setTimeout(()=>s(r),t)});try{return await Promise.race([e,o])}finally{clearTimeout(n)}}function Ig(e){try{return JSON.parse(e)}catch{return z(e)}}var Lg=5e3,Cg=400;function Ng(e){return $g(ri(e),"statusline-git-cache.toon")}function Mg(e){try{return Og(e,"utf8")}catch{return null}}function Fg(e,t){try{Pg(Gl(e),{recursive:!0});let r=`${e}.tmp`;Gg(r,t,"utf8"),Dg(r,e)}catch{}}function Bg(e){if(e===null)return null;try{let t=Ig(e),r={basename:typeof t.basename=="string"?t.basename:"",localAdded:Number(t.localAdded??0),localRemoved:Number(t.localRemoved??0),baseRef:typeof t.baseRef=="string"?t.baseRef:"",tsMs:Number(t.tsMs??0)};return typeof t.branch=="string"&&t.branch!==""&&(r.branch=t.branch),typeof t.detachedSha=="string"&&t.detachedSha!==""&&(r.detachedSha=t.detachedSha),r.basename===""?null:r}catch{return null}}function Dl(e){let t={basename:e.basename,localAdded:e.localAdded,localRemoved:e.localRemoved};return e.branch&&(t.branch=e.branch),e.detachedSha&&(t.detachedSha=e.detachedSha),t}async function kt(e,t){return await new Promise(r=>{Ag("git",["-C",e,...t],{encoding:"utf8",maxBuffer:1024*1024},(n,o)=>r(n?"":String(o).trim()))})}async function Ug(e){let t=mo(e),r=await kt(e,["rev-parse","--path-format=absolute","--git-common-dir"]);return r&&mo(Gl(r))||t}function Hg(e){let t=/(\d+) insertion/.exec(e),r=/(\d+) deletion/.exec(e);return{added:t?Number(t[1]):0,removed:r?Number(r[1]):0}}async function Wg(e,t){let[r,n,o,s]=await Promise.all([Ug(e),kt(e,["branch","--show-current"]),kt(e,["rev-parse","--short","HEAD"]),kt(e,["merge-base",t,"HEAD"])]),i=Hg(await kt(e,["diff","--shortstat",s||t])),a={basename:r,localAdded:i.added,localRemoved:i.removed};return n?a.branch=n:o&&(a.detachedSha=o),a}async function $l(e,t={}){let r=(t.nowMs??Date.now)(),n=t.ttlMs??Lg,o=t.baseRef??"origin/main",s=Ng(e),i=Bg((t.readCache??Mg)(s)),a=i?r-i.tsMs:Number.POSITIVE_INFINITY;if(i&&i.baseRef===o&&a>=0&&a<n)return Dl(i);let l=t.writeCache??Fg,u=(t.readGitFacts??Wg)(e,o).then(p=>(l(s,U({...p,baseRef:o,tsMs:r})),p)).catch(()=>null),c=await jg(u,t.deadlineMs??Cg,null);return c||(i?Dl(i):{basename:mo(e),localAdded:0,localRemoved:0})}function ve(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function ur(e,t){let r=e?.[t];return typeof r=="string"&&r!==""?r:void 0}function cr(e,t){let r=e?.[t];return typeof r=="number"&&Number.isFinite(r)?r:void 0}function qg(e){if(e.trim()==="")return null;let t;try{t=JSON.parse(e)}catch{return null}let r=ve(t);if(r===null)return null;let n={},o=ur(ve(r.model),"display_name");o!==void 0&&(n.model=o);let s=ur(ve(r.effort),"level");s!==void 0&&(n.effort=s);let i=ve(r.context_window),a=cr(i,"total_input_tokens");a!==void 0&&(n.contextTokens=a);let l=cr(i,"used_percentage");l!==void 0&&(n.contextPercent=l);let u=ve(r.rate_limits),c=cr(ve(u?.five_hour),"used_percentage");c!==void 0&&(n.usage5h=c);let p=cr(ve(u?.seven_day),"used_percentage");p!==void 0&&(n.usage7d=p);let m=ur(ve(r.workspace),"current_dir")??ur(r,"cwd");return m===void 0?{claude:n}:{claude:n,cwd:m}}async function jl(e={}){let t=e.stream??process.stdin;if(t.isTTY===!0)return null;let r=e.maxBytes??65536,n=e.deadlineMs??150,o=await new Promise(s=>{let i="",a=!1,l=setTimeout(()=>m(),n),u=b=>{i+=b,i.length>=r&&(i=i.slice(0,r),m())},c=()=>m(),p=()=>m();function m(){a||(a=!0,clearTimeout(l),t.removeListener("data",u),t.removeListener("end",c),t.removeListener("error",p),t.pause(),t.unref?.(),s(i))}try{t.setEncoding("utf8"),t.on("data",u),t.on("end",c),t.on("error",p),t.resume()}catch{m()}});return qg(o)}var pr=`${re} `,bP=`${re} \xB7 `;function Kg(e){return e.replace(/(^|\s)([A-Za-z0-9][A-Za-z0-9/]*=)(\S+)/g,(t,r,n,o)=>`${r}${Le}${n}${Ce}${o}${re}`)}function Vg(e){let t=Cn(e.project),r=e.project.basename,n=t.startsWith(r),o=n?r:"",s=n?t.slice(r.length):t;return`${Fn}${Bn}\xBB ${Vt}${o}${Jt}${s}${Re}`}function Il(e){let t=Vg(e),r=$n(e.claude);r!==null&&(t+=`${pr}${qt}${Kt}${r}${Re}`);let n=jn(e.claude);n!==null&&(t+=`${pr}${Le}ctx=${Ce}${n}`);let o=In(e.claude);o!==null&&(t+=`${pr}${Kg(o)}`);let s=Ln(e.localDiff);return s!==null&&(t+=`${pr}${Le}loc=${Ce}${s.slice(4)}`),`${t}${pe}`}async function Jg(e={}){let t=await(e.readStdin??jl)(),r=t?.cwd??e.cwd??process.cwd(),n=await(e.readLocalGit??$l)(r),o=e.version??Ol("redskilled").version,s={basename:n.basename};n.branch?s.branch=n.branch:n.detachedSha&&(s.detachedSha=n.detachedSha),o&&(s.version=o);let i=t?.claude,a={project:s,localDiff:{localAdded:n.localAdded,localRemoved:n.localRemoved}};return i!==void 0&&(a.claude=i),a}function zg(e,t=process.env){return t.NO_COLOR!==void 0?Sa(e):Il(e)}async function Ll(e,t={}){let r=await Jg(t);return va(zg(r,t.env??process.env),e)}async function Cl(e,t={}){let r=t.write??(u=>process.stdout.write(u)),n=t.warn??(u=>process.stderr.write(u)),o=kl(e),s=Pl(t.cwd??process.cwd()),i=Rl({...s.configText==null?{}:{configText:s.configText},project:s.label,flags:o.flags});for(let u of[...i.warnings,...o.warnings])n(`redskilled statusline: ignoring ${u.key}=${u.value} \u2014 ${u.reason}
51
+ `);let a;try{a=await dl(t.paths??cl(),i.options,{...t.client??{},...i.options.project==null?{}:{sessionProject:i.options.project}})}catch(u){n(`redskilled statusline: ${u instanceof Error?u.message:String(u)}
52
+ `);let c=(t.now??(()=>new Date().toISOString()))();a=ro({options:i.options,generated_at:c});try{let p=fl(ml(t.homeDir??Yg()),Date.parse(c));p!=null&&(a={...a,lines:[...a.lines,p]})}catch{}}let l=a.lines;try{l=await Ll(a.lines,{...t.cwd==null?{}:{cwd:t.cwd},...t.bedrock??{}})}catch(u){n(`redskilled statusline: bedrock unavailable \u2014 ${u instanceof Error?u.message:String(u)}
49
53
  `)}return r(`${l.join(`
50
54
  `)}
51
- `),0}var ig=process.argv[1]!=null&&import.meta.url===new URL(`file://${process.argv[1]}`).href;if(ig){let e=process.argv.slice(2);bl(e[0]==="statusline"?e.slice(1):e).then(t=>{process.exitCode=t},t=>{process.stderr.write(`statusline: ${t instanceof Error?t.message:String(t)}
55
+ `),0}var Qg=process.argv[1]!=null&&import.meta.url===new URL(`file://${process.argv[1]}`).href;if(Qg){let e=process.argv.slice(2);Cl(e[0]==="statusline"?e.slice(1):e).then(t=>{process.exitCode=t},t=>{process.stderr.write(`statusline: ${t instanceof Error?t.message:String(t)}
52
56
  `),process.exitCode=0})}
53
57
  /*! Bundled license information:
54
58