cc-safety-net 2.2.1 → 2.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.
- package/README.md +37 -53
- package/dist/amp/cc-safety-net/index.ts +55 -55
- package/dist/api.js +1 -1
- package/dist/bin/cc-safety-net.js +761 -142
- package/dist/chunks/index-et11dxs1.js +46 -0
- package/dist/chunks/{index-64gcamd4.js → index-qxyh7m59.js} +2 -2
- package/dist/chunks/index-y9vmf6ts.js +2 -0
- package/dist/index.js +1 -1
- package/dist/openclaw/cc-safety-net/index.js +55 -55
- package/dist/openclaw/cc-safety-net/openclaw.plugin.json +1 -1
- package/dist/openclaw/cc-safety-net/package.json +1 -1
- package/dist/pi/index.js +2 -2
- package/package.json +2 -2
- package/dist/chunks/index-25nh5wqs.js +0 -45
- package/dist/chunks/index-z08yh4sm.js +0 -46
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// cc-safety-net managed Amp plugin. Do not edit. Reinstall with: npx -y cc-safety-net install --amp
|
|
2
|
-
// version: 2.
|
|
2
|
+
// version: 2.3.0
|
|
3
3
|
// @bun
|
|
4
|
-
var
|
|
5
|
-
`).filter((o)=>o.trim()).map(
|
|
6
|
-
`,{encoding:"utf-8",mode:384}),
|
|
4
|
+
var VE=Object.defineProperty;var HE=(e)=>e;function KE(e,t){this[e]=HE.bind(null,t)}var ln=(e,t)=>{for(var n in t)VE(e,n,{get:t[n],enumerable:!0,configurable:!0,set:KE.bind(t,n)})};import{randomBytes as jw}from"crypto";import{appendFileSync as Uw,mkdirSync as Bw}from"fs";import{homedir as Vw,userInfo as Hw}from"os";import{isAbsolute as Kw,join as Tl}from"path";var qE=[/\bgh[pousr]_[A-Za-z0-9]{20,}\b/g,/\bgithub_pat_[A-Za-z0-9_]{20,}\b/g,/\bglpat-[A-Za-z0-9_-]{20,}\b/g,/\bxox[abeprs]-[A-Za-z0-9-]{20,}\b/g,/\bnpm_[A-Za-z0-9_]{20,}\b/g,/\bpypi-[A-Za-z0-9_-]{20,}\b/g,/\b[rs]k_(?:live|test)_[A-Za-z0-9_]{20,}\b/g,/\bsk-[A-Za-z0-9_-]{20,}\b/g,/\bsk_[A-Za-z0-9]{20,}\b/g,/\bgsk_[A-Za-z0-9]{52,}\b/g,/\bxai-[A-Za-z0-9_-]{80,}\b/g,/\bpplx-[A-Za-z0-9_-]{20,}\b/g,/\bbastn_[A-Za-z0-9]{16,}\b/g,/\btgp_v1_[A-Za-z0-9_-]{43,}\b/g,/\bflp_[A-Za-z0-9]{10,}\b/g,/\bwfr_[A-Za-z0-9]{20,}\b/g,/\bfwp?_[A-Za-z0-9_-]{20,}\b/g,/\btp-[A-Za-z0-9_-]{20,}\b/g,/\bpsk-[A-Za-z0-9_-]{8,}-[A-Za-z0-9_-]{8,}\b/g,/\b[a-f0-9]{32}\.[A-Za-z0-9]{16}\b/g];function Tt(e){let t=e.replace(/\b((?:DATABASE|POSTGRES|POSTGRESQL|MYSQL|MARIADB|REDIS|MONGO(?:DB)?|DB)_DSN|CONNECTION_STRING)=("[^"]*"|'[^']*'|[^\s]+(?:\s+[A-Z_][A-Z0-9_]*=[^\s]+)*)/gi,"$1=<redacted>").replace(/\b((?:DATABASE|POSTGRES|POSTGRESQL|MYSQL|MARIADB|REDIS|MONGO(?:DB)?|DB)_(?:URL|URI|CONNECTION_STRING))=("[^"]*"|'[^']*'|[^\s]+)/gi,"$1=<redacted>").replace(/\b([A-Z0-9_]*(?:TOKEN|SECRET|PASSWORD|PASS|KEY|CREDENTIALS)[A-Z0-9_]*)=("[^"]*"|'[^']*'|[^\s]+)/gi,"$1=<redacted>");return YE(t)}function YE(e){let t=e.replace(/-----BEGIN [A-Z ]*PRIVATE KEY-----[\s\S]*?-----END [A-Z ]*PRIVATE KEY-----/gi,"<redacted>").replace(/((?:(['"])(?:authorization|cookie|x-api-key|api-key)\2|(?:authorization|cookie|x-api-key|api-key))\s*:\s*)(['"])(?:\\[^\r\n]|(?!\3)[^\\\r\n])*\3/gi,"$1$3<redacted>$3").replace(/(['"]?\s*(?:authorization|cookie|x-api-key|api-key)\s*:(?!\s*(?:"<redacted>"|'<redacted>'))\s*)([^'"\r\n]+)(['"]?)/gi,"$1<redacted>$3").replace(/\b([a-z][a-z0-9+.-]*:\/\/)([^\s/:@]+):([^\s@/]+)@/gi,"$1<redacted>:<redacted>@").replace(/\b([a-z][a-z0-9+.-]*:\/\/)([^\s/@:]+)@/gi,"$1<redacted>@").replace(/(^|[\s?&;|])((?:x-amz-signature|x-goog-signature|sig|signature)=)(?:"[^"\r\n]*"|'[^'\r\n]*'|[^&#\s'"`;|<>()]*)/gi,"$1$2<redacted>").replace(/(^|\s)((?:-u|--user)(?:\s+|=))([^\s:]+):([^\s]+)/g,"$1$2<redacted>:<redacted>");for(let n of qE)t=t.replace(n,"<redacted>");return t.replace(/\beyJ[A-Za-z0-9_-]{8,}\.[A-Za-z0-9_-]{6,}\.[A-Za-z0-9_-]{6,}\b/g,"<redacted>").replace(/\b(?:AKIA|ASIA)[A-Z0-9]{16}\b/g,"<redacted>")}import{lstatSync as Xh,readdirSync as Tw,readFileSync as ny,rmdirSync as Iw,statSync as Qh,unlinkSync as Ow,utimesSync as zw,writeFileSync as Nw}from"fs";import{dirname as Dw,join as Hn}from"path";var Oi=30,xl=1,Cl=365;function zi(e){if(typeof e!=="number"||!Number.isInteger(e))return 30;if(e<1)return 1;return e>365?365:e}import{homedir as bw}from"os";import{dirname as Un,isAbsolute as vw,join as Bn,relative as _w,resolve as fn,sep as Sw}from"path";import{lstatSync as JE,realpathSync as XE}from"fs";import{homedir as QE,tmpdir as ew}from"os";var Be={realpath:(e)=>{try{return XE(e)}catch{return null}},entryKind:(e)=>{let t=JE(e,{throwIfNoEntry:!1});if(!t)return"missing";return t.isSymbolicLink()?"symlink":"present"}};function ze(e,t=process.platform){if(t!=="win32")return e;return e.replace(/^\/([A-Za-z])(?:\/|$)/,"$1:/")}function un(){return ze(process.env.HOME||QE())}function Qe(){return{env:new Map(Object.entries(process.env).flatMap(([e,t])=>t===void 0?[]:[[e,t]])),home:un(),tmpdir:ew(),paths:Be}}import{closeSync as tw,constants as Nh,fstatSync as nw,fsyncSync as a1,lstatSync as Dh,mkdirSync as c1,openSync as rw,readdirSync as l1,readFileSync as ow,realpathSync as Ni,renameSync as u1,rmdirSync as d1,statSync as iw,unlinkSync as m1,writeFileSync as f1}from"fs";import{isAbsolute as Mh,join as $h,normalize as sw,parse as aw,relative as El,resolve as wl,sep as Rl}from"path";var cw=Symbol("PolicyFilesystemScope"),lw=Symbol("PolicyFilesystemTarget"),uw=Nh.O_NOFOLLOW??0;class pe extends Error{constructor(e){super(`Unable to access ${e} filesystem safely.`);this.name="PolicyFilesystemError"}}function dn(e,t){return{[cw]:!0,root:wl(e),label:t}}function Lh(e,t){let n=sw(t);if(t===""||Mh(t)||n===".."||n.startsWith(`..${Rl}`))throw new pe(e.label);return{[lw]:!0,scope:e,relativePath:n,path:$h(e.root,n)}}function Jr(e,t){let n=El(e.root,wl(t));return Lh(e,n)}function Wh(e,t="rules policy"){let n=wl(e),r=aw(n).dir;return Lh(dn(r,t),El(r,n))}function Mi(e){try{if(!Di(e,!1).exists)return null;let n=rw(e.path,Nh.O_RDONLY|uw);try{let r=nw(n);if(!r.isFile())throw new pe(e.scope.label);let o=ow(n,"utf-8"),i=Dh(e.path);if(!i.isFile()||i.isSymbolicLink()||r.dev!==i.dev||r.ino!==i.ino)throw new pe(e.scope.label);return Di(e,!1),o}finally{tw(n)}}catch(t){fw(e.scope.label,t)}}function Fh(e,t){if(e.path===t.path)return!0;try{if(!Di(e,!1).exists||!Di(t,!1).exists)return!1;return Ni(e.path)===Ni(t.path)}catch(n){if(n instanceof pe)throw n;throw new pe(e.scope.label)}}function Di(e,t,n="file"){let r=dw(e.scope);if(!r)return{exists:!1};let o=e.relativePath.split(Rl);for(let i of o.keys()){let s=$h(e.scope.root,...o.slice(0,i+1)),a=Gh(s);if(!a){if(i===o.length-1&&t)return{exists:!1};return{exists:!1}}if(a.isSymbolicLink())throw new pe(e.scope.label);if(i<o.length-1&&!a.isDirectory())throw new pe(e.scope.label);if(i===o.length-1&&(n==="file"?!a.isFile():!a.isDirectory()))throw new pe(e.scope.label);mw(r,Ni(s),e.scope.label)}return{exists:!0}}function dw(e){if(!Gh(e.root))return null;if(!iw(e.root).isDirectory())throw new pe(e.label);return Ni(e.root)}function mw(e,t,n){let r=El(e,t);if(r===".."||r.startsWith(`..${Rl}`)||Mh(r))throw new pe(n)}function Gh(e){try{return Dh(e)}catch(t){if(pw(t)&&t.code==="ENOENT")return null;throw t}}function fw(e,t){if(t instanceof pe)throw t;throw new pe(e)}function pw(e){return e instanceof Error&&"code"in e}var mn=/^[a-zA-Z][a-zA-Z0-9_-]{0,63}$/,Zh="rulebook.json",jh=".cc-safety-net/rules";var Uh=/^([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+)#(.+)$/;var gw=/^[A-Za-z0-9._-]+(?:\/[A-Za-z0-9._-]+)*$/,hw=".cc-safety-net/rules".replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),yw="rulebook.json".replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),h1=new RegExp(`^${hw}/(${mn.source.slice(1,-1)})/${yw}$`);function Bh(e){return`.cc-safety-net/rules/${e}/rulebook.json`}function Vh(e){if($i(e))try{return Pl(e),null}catch(t){return t instanceof Error?t.message:String(t)}return mn.test(e)?null:`Local rulebook sources must be bare names matching ${mn}: ${e}`}function Pl(e){if(e.startsWith("github:"))throw Error(`Invalid rulebook source: ${e}`);let t=e.match(Uh);if(!t?.[1]||!t[2]||!t[3])throw Error(`Invalid GitHub rulebook source: ${e}`);let n=t[3].lastIndexOf("/");if(n<1)throw Error(`GitHub rulebook sources must be owner/repo#ref/<rulebook-name>: ${e}`);let r=t[3].slice(0,n),o=t[3].slice(n+1);if(!r||!gw.test(r))throw Error(`GitHub rulebook refs must use valid path segments: ${e}`);if(!o||!mn.test(o))throw Error(`GitHub rulebook sources must be owner/repo#ref/<rulebook-name>: ${e}`);return{owner:t[1],repo:t[2],ref:r,path:Bh(o),name:o}}function $i(e){return Uh.test(e)}var Hh="rule.json",pn="policy.json";var Kh=".cc-safety-net",xw="rules",Cw="CC_SAFETY_NET_HOME",qh="`cc-safety-net rule update`";function Ew(e){return fn(e??process.cwd(),jh)}function ww(e){return Bn(Ew(e),Hh)}function Xr(e){return Bn(fn(e??process.cwd()),Kh,pn)}function Vn(e){return e?.userConfigDir??(e?.userConfigPath?Un(e.userConfigPath):Bn(Rw(),xw))}function Rw(){let e=process.env[Cw];return e?fn(ze(e)):Bn(bw(),Kh)}function Pw(e){return Bn(Vn(e),Hh)}function Yh(e){let t=e.userConfigPath??Pw(e),n=e.projectConfigPath??ww(e.cwd),r=Aw(t,e),o=kw(n,e);return{userConfigPath:t,projectConfigPath:n,userScope:r,projectScope:o,userConfigTarget:Jr(r,t),projectConfigTarget:Jr(o,n)}}function Aw(e,t){let n=t.userConfigPath?Un(Un(fn(t.userConfigPath))):Un(fn(t.userConfigDir??Vn(t)));return dn(n,"user policy")}function kw(e,t){let n=fn(t.cwd??process.cwd()),r=fn(e),o=_w(n,r);if(o!==".."&&!o.startsWith(`..${Sw}`)&&!vw(o))return dn(n,"project policy");return dn(Un(Un(r)),"project policy")}function Jh(e,t){return Bn(e,t,Zh)}var kl=86400000,Mw=".last-prune",$w=/^\d{4}-\d{2}$/,Lw=/^((\d{4}-\d{2})-\d{2})-.+\.jsonl$/,ey=(e)=>Math.floor(e/kl);function Ww(e){try{let t=Hn(Dw(Vn(e)),pn),n=JSON.parse(ny(t,"utf-8"));return zi(n?.audit?.retention_days)}catch{return Oi}}function ry(e,t=()=>new Date){try{let n=t().getTime();if(!Qh(e,{throwIfNoEntry:!1})?.isDirectory())return;let r=Hn(e,Mw),o=Qh(r,{throwIfNoEntry:!1})?.mtimeMs;if(o!==void 0&&ey(o)===ey(n))return;let i=n-Ww()*kl,s=new Date(n).toISOString().slice(0,7);for(let a of Al(e)){if(a.isDirectory()){Fw(Hn(e,a.name),i,s);continue}if(a.isFile()&&a.name.endsWith(".jsonl"))Gw(Hn(e,a.name),i)}Nw(r,"",{mode:384}),zw(r,n/1000,n/1000)}catch{}}function Fw(e,t,n){for(let r of Al(e)){if(!r.isDirectory()||!$w.test(r.name))continue;let o=Hn(e,r.name);for(let i of Al(o)){if(!i.isFile())continue;let s=Lw.exec(i.name);if(!s||s[2]!==r.name)continue;let a=Date.parse(`${s[1]}T00:00:00.000Z`)+kl;if(!Number.isFinite(a)||a>=t)continue;oy(Hn(o,i.name))}if(r.name!==n)ty(o)}ty(e)}function Gw(e,t){try{let n=Xh(e);if(n.mtimeMs>=t)return;let r=ny(e,"utf-8").split(`
|
|
5
|
+
`).filter((o)=>o.trim()).map(Zw);if(r.length===0)return;if(r.some((o)=>o===void 0||o>=t))return;if(Xh(e).mtimeMs!==n.mtimeMs)return;oy(e)}catch{}}function Zw(e){try{let t=JSON.parse(e).ts,n=typeof t==="string"?Date.parse(t):Number.NaN;return Number.isFinite(n)?n:void 0}catch{return}}function Al(e){try{return Tw(e,{withFileTypes:!0,encoding:"utf8"})}catch{return[]}}function oy(e){try{Ow(e)}catch{}}function ty(e){try{Iw(e)}catch{}}var qw="2.3.0",Yw=1e4,Jw=2000,Xw=256,Qw=32768;function eR(e){let t=e.trim();if(!t)return null;let n=t.replace(/[^A-Za-z0-9_.-]+/g,"_");if(n=n.replace(/^[._-]+|[._-]+$/g,"").slice(0,128),!n||n==="."||n==="..")return null;return n}function tR(e){return(e??"").replace(/[^A-Za-z0-9]/g,"-").slice(0,180)||"no-cwd"}function Il(e,t,n,r,o,i={}){let s=eR(e);if(!s)return;let a=i.homeDir??iy();if(!a)return;let c=nR(a);if(!c)return;try{let l=(i.now??(()=>new Date))().toISOString(),u=Li(Tt(t),i.failureStage?Number.POSITIVE_INFINITY:Yw),d=Li(Tt(n),Jw),m=i.toolName?Li(Tt(i.toolName),Xw):void 0,f=o===null?void 0:Li(Tt(o),Qw),p=Tl(c,tR(f?.value??null),l.slice(0,7));Bw(p,{recursive:!0,mode:448});let h=Tl(p,`${l.slice(0,10)}-${s}.jsonl`),y={ts:l,id:(i.createId??(()=>jw(8).toString("hex")))(),v:qw,sessionId:s,decision:i.decision??"deny",agent:i.agent,shape:i.shape,level:i.level,configFallback:i.configFallback,toolName:m?.value,command:u.value,segment:d.value,...u.truncated||d.truncated||m?.truncated||f?.truncated?{truncated:!0}:{},reason:r,ruleId:i.ruleId,intent:i.intent,failureStage:i.failureStage,errorCode:i.errorCode,cwd:f?.value??null};Uw(h,`${JSON.stringify(y)}
|
|
6
|
+
`,{encoding:"utf-8",mode:384}),ry(c,i.now)}catch{}}function Li(e,t){return{value:e.slice(0,t),truncated:e.length>t}}function iy(e=process.env.CC_SAFETY_NET_AUDIT_HOME||process.env.HOME){let t=e||Vw()||Hw().homedir;return t&&Kw(t)?t:null}function nR(e=iy()){return e?Tl(e,".cc-safety-net","logs"):null}function ay(e,t,n,r=!0,o){if(t.decision.kind==="allow"){if(!n||e.route.kind!=="command")return;let a=sy(e);return{decision:"allow",command:a,segment:a,reason:"allowed",cwd:e.context.executionCwd,toolName:e.toolName,level:t.level,...t.configFallback?{configFallback:!0}:{}}}let i=t.decision.evidence.find((a)=>a.kind==="command"),s=i?.command??(r?sy(e):"");return{decision:"deny",command:s,segment:i?.segment??s,reason:t.decision.reason,cwd:e.context.executionCwd,toolName:e.toolName,level:t.level,...t.configFallback?{configFallback:!0}:{},ruleId:t.decision.ruleId,intent:t.decision.intent,failureStage:o?.stage,errorCode:o?.errorCode}}function sy(e){return"command"in e?e.command??"":""}function cy(e,t,n){if(!e)return;let r;try{r=t()}catch{return}if(typeof r!=="string"||!r.trim())return;Il(r,e.command,e.segment,e.reason,e.cwd,{homeDir:n.homeDir,decision:e.decision,agent:n.agent,shape:n.shape,level:e.level,configFallback:e.configFallback,toolName:e.toolName,ruleId:e.ruleId,intent:e.intent,failureStage:e.failureStage,errorCode:e.errorCode})}function ly(e,t,n){let r;try{r=t()}catch{return}if(typeof r!=="string"||!r.trim())return;Il(r,e.command??"",e.segment??e.command??"",e.reason,n.cwd??null,{homeDir:n.homeDir,decision:"deny",agent:n.agent,shape:n.shape,toolName:n.toolName??e.toolName,ruleId:e.ruleId,intent:e.intent})}import{accessSync as U1,constants as B1,realpathSync as uR,statSync as dR}from"fs";import{isAbsolute as zl,relative as mR,resolve as uy,sep as fR}from"path";import{dirname as rR,isAbsolute as oR,parse as iR,sep as sR}from"path";function Zt(e,t=process.platform){if(t!=="win32")return!1;return(e[0]==="/"||e[0]==="\\")&&(e[1]==="/"||e[1]==="\\")}function jt(e,t,n){if(Zt(t))throw Error("Unsupported Windows namespace path");let r=oR(t)?cR(t):"",o=r||e;for(let i of lR(r?t.slice(r.length):t)){if(i===""||i===".")continue;if(i===".."){o=rR(o);continue}let s=aR(o,i),a=n.entryKind(s),c=a==="symlink"?n.realpath(s):s;if(a==="missing"||c===null)throw Error(`Cannot resolve path component: ${s}`);o=c}return o}function aR(e,t){return e.endsWith("/")||e.endsWith("\\")?`${e}${t}`:`${e}${sR}${t}`}function cR(e){return iR(e).root}function lR(e){let t=process.platform==="win32"?/[\\/]+/:/\/+/;return e.split(t)}function Nl(e,t){if(Zt(e))return;let n=t.flatMap((o)=>Ol(o));if(!n[0])return;let r=Ol(zl(e)?e:uy(n[0],e))[0];if(!r)return;return n.some((o)=>my(r,o))?r:void 0}function dy(e,t){if(Zt(e))return;return Ol(zl(e)?e:uy(t,e))[0]}function Ol(e){try{let t=uR(e);return dR(t).isDirectory()?[t]:[]}catch{return[]}}function my(e,t){let n=mR(t,e);return n===""||n!==".."&&!n.startsWith(`..${fR}`)&&!zl(n)}var Ut="Command could not be safely analyzed (strict mode). Simplify the command and retry, or ask the user to verify.",It="Command exceeds maximum recursion depth and cannot be safely analyzed. Flatten the nesting and retry.",fy="CC Safety Net could not validate the command because its structure exceeds safe analysis limits.",py="CC Safety Net could not analyze the command because it exceeds safe analysis limits. Simplify or split the command and retry.",Wi="CC Safety Net failed closed because command analysis failed unexpectedly. This is not caused by your command. Report it to the user.";function hy(e){let{reason:t,command:n,segment:r,toolName:o}=e,i=e.maxLen??200,s=e.redact??((c)=>c),a=`BLOCKED by CC Safety Net
|
|
7
7
|
|
|
8
8
|
Reason: ${s(t)}`;if(e.ruleId)a+=`
|
|
9
9
|
|
|
@@ -11,90 +11,90 @@ Rule: ${e.ruleId}`;if(o)a+=`
|
|
|
11
11
|
|
|
12
12
|
Tool: ${o}`;if(n){let c=s(n);a+=`
|
|
13
13
|
|
|
14
|
-
Command: ${
|
|
14
|
+
Command: ${gy(c,i)}`}if(r&&r!==n){let c=s(r);a+=`
|
|
15
15
|
|
|
16
|
-
Segment: ${
|
|
16
|
+
Segment: ${gy(c,i)}`}if(e.configWarning)a+=`
|
|
17
17
|
|
|
18
18
|
Config warning: ${s(e.configWarning)}`;return a+=`
|
|
19
19
|
|
|
20
|
-
${
|
|
21
|
-
`;break;case"t":t+="\t";break;case"b":t+="\b";break;default:t+=`\\${o}`;break}n++}return t}function
|
|
22
|
-
`||e==="\r"||e==="\u2028"||e==="\u2029"}function
|
|
23
|
-
`||e===";"||e==="&"||e==="|"}function
|
|
24
|
-
`)t=!0,i++;continue}let a
|
|
25
|
-
`||a!==-1){if(t=!1,n=!1,r=!1,o=-1,a!==-1)i=a-1;continue}if(s===";"||s==="&"||s==="|"||i===
|
|
26
|
-
`,a++;if(c)n=!1,r=!1;t=!0,o=a;continue}if(!t){o++;continue}if(oe(e,o,"--")&&(o===0||re(C(e,o-1)))&&(!C(e,o+2)||re(C(e,o+2))||fe(C(e,o+2)))){t=!1,n=!1,r=!1,o+=2;continue}if(n||=oe(e,o,"--recursive")&&$t(e,o+11)||Jl(e,o,"recursive"),r||=oe(e,o,"--force")&&$t(e,o+7)||Jl(e,o,"force"),n&&r)return!0;o++}return!1}function Jl(e,t,n){if(!oe(e,t,"--"))return!1;let r=0;while(r<=n.length){let o=C(e,t+r+2);if(!o||re(o)||fe(o))break;if(o!==n[r])return!1;r++}return r>0&&$t(e,t+r+2)}function EE(e,t){let n=t,r=!1,o=!1;while(n<ce(e)){while(re(C(e,n)))n++;let i=n;while(n<ce(e)&&!re(C(e,n)))n++;if(C(e,i)!=="-"||n-i===2&&oe(e,i,"--"))return!1;let s=Iy(e,i,"recursive"),a=Iy(e,i,"force");if(r&&a||o&&s)return!0;if(r||=s,o||=a,C(e,i+1)==="-")continue;let c=kE(e,i,n);if(c.combined||r&&c.forceAtBoundary||o&&c.recursiveAtBoundary)return!0;r||=c.recursive,o||=c.force}return!1}function Iy(e,t,n){return oe(e,t,`--${n}`)&&$t(e,t+n.length+2)||Jl(e,t,n)}function PE(e,t){if(t>0&&bn(C(e,t-1)))return-1;let n=t;if(C(e,n)==="\\")n++;if(C(e,n)!=="r")return-1;if(n++,C(e,n)==="\\")n++;if(C(e,n)!=="m"||!re(C(e,n+1)))return-1;return n+1}function kE(e,t,n){let r=!1,o=!1,i=!1,s=!1,a=!1;if(C(e,t)!=="-")return{recursive:r,force:o,recursiveAtBoundary:i,forceAtBoundary:s,combined:a};let c="";for(let l=t+1;l<n;l++){let u=C(e,l)??"",d=(u==="r"||u==="f")&&$t(e,l+1);r||=u==="r",o||=u==="f",i||=u==="r"&&d,s||=u==="f"&&d,a||=(c==="r"&&u==="f"||c==="f"&&u==="r")&&d,c=u}return{recursive:r,force:o,recursiveAtBoundary:i,forceAtBoundary:s,combined:a}}function Oy(e,t,n){return co(e,"reset",Xn,!0,(r)=>C(e,r)==="-"&&Qn(e,r,t,n)?!0:r)}function AE(e){return co(e,"clean",Xn,!0,(t)=>{if(C(e,t)!=="-")return t;if(Qn(e,t,"--fo","rce"))return!0;let n=ao(e,t,Xn);for(let r=t+1;r<n;r++)if(C(e,r)==="f")return!0;return n-1})}function Xi(e,t,n){if(!Dt(e,t,"git"))return null;let r=t+3;if(!re(C(e,r)))return{commandEnd:-1,next:r};while(re(C(e,r)))r++;while(r<ce(e)){if(fe(C(e,r)))return{commandEnd:-1,next:r};let o=ao(e,r,fe);if(Dt(e,r,n))return{commandEnd:r+n.length,next:o};if(C(e,r)!=="-")return{commandEnd:-1,next:o};let i=o-r===2&&oe(e,r,"--"),s=TE(e,r,o);r=o;while(re(C(e,r)))r++;if(i)return{commandEnd:Dt(e,r,n)?r+n.length:-1,next:ao(e,r,fe)};if(!s)continue;if(r>=ce(e)||fe(C(e,r)))return{commandEnd:-1,next:r};r=ao(e,r,fe);while(re(C(e,r)))r++}return{commandEnd:-1,next:r}}function TE(e,t,n){for(let r of mt)if(n-t===r.length&&oe(e,t,r))return!0;return!1}function IE(e){return zy(e,{command:"checkout",longPrefix:"--fo",longOptional:"rce",shortFlag:"f",excludedShortStarts:"bBU"})}function OE(e){return co(e,"push",Xn,!0,(t)=>{if(C(e,t)!=="-")return t;if(C(e,t+1)==="f"&&!bn(C(e,t+2))&&!oe(e,t+2,"-with-lease"))return!0;let n=Dy(e,t,"--fo","rce");if(n>=0&&!oe(e,n,"-with-lease"))return!0;return t})}function zE(e){return co(e,"push",fe,!1,(t)=>{if(re(C(e,t))&&C(e,t+1)==="+"&&t+2<ce(e)&&!fe(C(e,t+2))&&!re(C(e,t+2)))return!0;if(C(e,t)===":"&&C(e,t+1)==="+")return!0;return t})}function NE(e){return co(e,"push",fe,!1,(t)=>{if(C(e,t)==="-"&&Qn(e,t,"--de","lete"))return!0;if(re(C(e,t))&&C(e,t+1)===":"&&t+2<ce(e)&&!re(C(e,t+2))&&!fe(C(e,t+2)))return!0;return t})}function DE(e){let t=!1,n=!1,r=!1;for(let o=0;o<=ce(e);o++){if(o===ce(e)||fe(C(e,o))){if(n&&r)return!0;t=!1,n=!1,r=!1;continue}if(!t){let a=Xi(e,o,"branch");if(a){t=a.commandEnd>=0,o=Math.max(o,(t?a.commandEnd:a.next)-1);continue}}if(!t||C(e,o)!=="-")continue;let i=ao(e,o,fe),s=$E(e,o,i);if(n||=s.deletion,r||=s.force,n&&r)return!0;o=i-1}return!1}function $E(e,t,n){let r=!1,o=!1;for(let i=t;i<n;i++){if(C(e,i)!=="-")continue;if(Qn(e,i,"--de","lete"))r=!0;if(Qn(e,i,"--fo","rce"))o=!0;if(C(e,i+1)==="-")continue;let s=i+1,a=!1,c=!1,l=!1;while(s<n&&ME(C(e,s))){let u=C(e,s);a||=u==="d"||u==="D",c||=u==="f",l||=u==="D",s++}if(!$t(e,s))continue;r||=a,o||=c||l}return{deletion:r,force:o}}function ME(e){if(!e)return!1;let t=e.charCodeAt(0);return t>=65&&t<=90||t>=97&&t<=122}function LE(e){return zy(e,{command:"tag",longPrefix:"--de",longOptional:"lete",shortFlag:"d",excludedShortStarts:""})}function zy(e,t){let n=[{outerActive:!1,shortActive:!1,hasShortFlag:!1,depth:0,quote:"",escaped:!1}];for(let r=0;r<ce(e);r++){let o=C(e,r),i=n[n.length-1];if(!i)return!1;let s=i.escaped;if(i.escaped=!s&&i.quote!=="'"&&o==="\\",!s&&o==="'"&&i.quote!=='"')i.quote=i.quote==="'"?"":"'";if(!s&&o==='"'&&i.quote!=="'")i.quote=i.quote==='"'?"":'"';if(o==="$"&&C(e,r+1)==="("&&(n.length===1||!s&&i.quote!=="'")){n.push({outerActive:!1,shortActive:!1,hasShortFlag:!1,depth:1,quote:"",escaped:!1}),r++;continue}if(!s&&!i.quote&&n.length>1&&o==="("){i.depth++;continue}if(!s&&!i.quote&&n.length>1&&o===")"){if(i.depth--,i.depth===0)n.pop();continue}if(re(o))i.shortActive=!1,i.hasShortFlag=!1;if(!i.outerActive){let a=Xi(e,r,t.command);if(a){i.outerActive=a.commandEnd>=0&&re(C(e,a.commandEnd)),i.shortActive=!1,i.hasShortFlag=!1,r=Math.max(r,(i.outerActive?a.commandEnd:a.next)-1);continue}}if(i.outerActive&&o==="-"){if(Qn(e,r,t.longPrefix,t.longOptional))return!0;i.shortActive||=!t.excludedShortStarts.includes(C(e,r+1)??"")}if(i.hasShortFlag||=i.shortActive&&o===t.shortFlag,i.hasShortFlag&&$t(e,r+1))return!0;if(Xn(o))i.outerActive=!1}return!1}function co(e,t,n,r,o){let i=!1;for(let s=0;s<ce(e);s++){let a=C(e,s),c=n(a);if(!i&&!c){let l=Xi(e,s,t);if(l){i=l.commandEnd>=0&&(!r||re(C(e,l.commandEnd))),s=Math.max(s,(i?l.commandEnd:l.next)-1);continue}}if(i){let l=o(s);if(l===!0)return!0;for(let u=s;u<=l;u++)if(n(C(e,u)))i=!1;s=l}if(c)i=!1}return!1}function WE(e){let t=!1;for(let n=0;n<ce(e);n++){if(Yl(C(e,n))){if(t)return!0;t=!1;continue}if(!t){let r=Xi(e,n,"restore");if(r){t=r.commandEnd>=0,n=Math.max(n,(t?r.commandEnd:r.next)-1);continue}}if(t&&C(e,n)==="-"&&C(e,n+1)==="-"&&(oe(e,n+2,"staged")||oe(e,n+2,"help")))t=!1}return t}function Ny(e,t){let n=!1;for(let r=0;r<ce(e);r++){let o=C(e,r),i=t?Yl(o):fe(o);if(n&&re(o)&&C(e,r+1)==="-"&&Dt(e,r+2,"delete"))return!0;if(i){n=!1;continue}if(Dt(e,r,"find"))n=!0,r+=3}return!1}function ao(e,t,n){let r=t;while(r<ce(e)&&!re(C(e,r))&&!n(C(e,r)))r++;return r}function Dy(e,t,n,r){if(!oe(e,t,n))return-1;let o=t+n.length;for(let i=0;i<r.length&&C(e,o)===r[i];i++)o++;return $t(e,o)?o:-1}function Qn(e,t,n,r){return Dy(e,t,n,r)>=0}var FE=["git.ssh-env","git.alias-config","git.checkout-force","git.checkout-double-dash","git.checkout-ref-path","git.checkout-pathspec-from-file","git.checkout-ambiguous","git.switch-discard-changes","git.switch-force","git.restore-worktree","git.restore-unstaged","git.reset-hard","git.reset-merge","git.clean-force","git.rm-force","git.push-force","git.push-delete","git.push-mirror","git.branch-force-delete","git.rebase-abort","git.merge-abort","git.tag-delete","git.reflog-delete","git.stash-drop","git.stash-clear","git.worktree-remove-force","rm.recursive-force-root-or-home","rm.git-metadata","rm.recursive-force-dynamic-target","rm.recursive-force-home-cwd","rm.recursive-force-cwd-self","rm.recursive-force-outside-cwd","rm.recursive-force-paranoid","powershell.remove-item-root-or-home","powershell.remove-item-recursive-force-root-or-home","powershell.remove-item-git-metadata","powershell.remove-item-recursive-force-dynamic-target","powershell.remove-item-recursive-force-home-cwd","powershell.remove-item-recursive-force-cwd-self","powershell.remove-item-recursive-force-outside-cwd","powershell.remove-item-recursive-force-paranoid","powershell.remove-item-pipeline-dynamic-target","find.delete","find.delete-git-metadata","find.exec-rm-recursive-force","dd.device-write","mkfs.device","shred.target","interpreter.dangerous-command","interpreter.one-liner-paranoid","awk.system-dynamic","xargs.rm-recursive-force-dynamic","xargs.shell-dynamic","parallel.rm-recursive-force-dynamic","parallel.shell-dynamic","parallel.command-stream-dynamic","shell.dynamic-structure","shell.dynamic-executable","raw-text.dangerous-command"],Qi=new Set(FE),es=[{id:"git.ssh-env",category:"Git",label:"Git SSH environment override",description:"Blocks Git network operations with SSH environment overrides.",example:'GIT_SSH_COMMAND="./ssh-wrapper" git push',intent:"manual_only"},{id:"git.alias-config",category:"Git",label:"Git command-line alias",description:"Blocks command-line Git aliases that cannot be safely resolved.",example:"git -c alias.wipe='!rm -rf /' wipe",intent:"manual_only"},{id:"git.checkout-force",category:"Git",label:"Git checkout force",description:"Blocks forced checkout operations that discard local changes.",example:"git checkout --force main",intent:"use_alternative"},{id:"git.checkout-double-dash",category:"Git",label:"Git checkout path restore",description:"Blocks checkout path restores after --.",example:"git checkout -- src/app.ts",intent:"use_alternative"},{id:"git.checkout-ref-path",category:"Git",label:"Git checkout ref and path",description:"Blocks checkout forms that mix a ref and path restore.",example:"git checkout HEAD -- src/app.ts",intent:"use_alternative"},{id:"git.checkout-pathspec-from-file",category:"Git",label:"Git checkout pathspec file",description:"Blocks checkout pathspec loading from a file.",example:"git checkout --pathspec-from-file=paths.txt",intent:"use_alternative"},{id:"git.checkout-ambiguous",category:"Git",label:"Git checkout ambiguous targets",description:"Blocks ambiguous checkout arguments that may restore paths.",example:"git checkout main src/app.ts",intent:"use_alternative"},{id:"git.switch-discard-changes",category:"Git",label:"Git switch discard changes",description:"Blocks branch switches that explicitly discard local changes.",example:"git switch --discard-changes main",intent:"use_alternative"},{id:"git.switch-force",category:"Git",label:"Git switch force",description:"Blocks forced branch switches.",example:"git switch --force main",intent:"use_alternative"},{id:"git.restore-worktree",category:"Git",label:"Git restore worktree",description:"Blocks worktree restore operations.",example:"git restore --worktree src/app.ts",intent:"use_alternative"},{id:"git.restore-unstaged",category:"Git",label:"Git restore unstaged",description:"Blocks unstaged restore operations.",example:"git restore src/app.ts",intent:"use_alternative"},{id:"git.reset-hard",category:"Git",label:"Git reset hard",description:"Blocks hard resets.",example:"git reset --hard",intent:"use_alternative"},{id:"git.reset-merge",category:"Git",label:"Git reset merge",description:"Blocks merge resets.",example:"git reset --merge",intent:"use_alternative"},{id:"git.clean-force",category:"Git",label:"Git clean force",description:"Blocks forced clean operations.",example:"git clean -fd",intent:"use_alternative"},{id:"git.rm-force",category:"Git",label:"Git rm force",description:"Blocks forced removal of tracked files from the working tree.",example:"git rm -rf .",intent:"use_alternative"},{id:"git.push-force",category:"Git",label:"Git push force",description:"Blocks force pushes.",example:"git push --force origin main",intent:"use_alternative"},{id:"git.push-delete",category:"Git",label:"Git push delete",description:"Blocks remote ref deletion through push.",example:"git push --delete origin old-branch",intent:"manual_only"},{id:"git.push-mirror",category:"Git",label:"Git push mirror",description:"Blocks mirror pushes that can force-update or delete remote refs.",example:"git push --mirror origin",intent:"manual_only"},{id:"git.branch-force-delete",category:"Git",label:"Git branch force delete",description:"Blocks forced branch deletion.",example:"git branch -D old-branch",intent:"use_alternative"},{id:"git.rebase-abort",category:"Git",label:"Git rebase abort",description:"Blocks rebase abort operations.",example:"git rebase --abort",intent:"use_alternative"},{id:"git.merge-abort",category:"Git",label:"Git merge abort",description:"Blocks merge abort operations.",example:"git merge --abort",intent:"use_alternative"},{id:"git.tag-delete",category:"Git",label:"Git tag delete",description:"Blocks tag deletion.",example:"git tag --delete v1.0.0",intent:"manual_only"},{id:"git.reflog-delete",category:"Git",label:"Git reflog delete",description:"Blocks reflog deletion.",example:"git reflog delete HEAD@{1}",intent:"manual_only"},{id:"git.stash-drop",category:"Git",label:"Git stash drop",description:"Blocks dropping stash entries.",example:"git stash drop stash@{0}",intent:"use_alternative"},{id:"git.stash-clear",category:"Git",label:"Git stash clear",description:"Blocks clearing all stash entries.",example:"git stash clear",intent:"manual_only"},{id:"git.worktree-remove-force",category:"Git",label:"Git worktree force remove",description:"Blocks forced worktree removal.",example:"git worktree remove --force ../feature",intent:"use_alternative"},{id:"rm.recursive-force-root-or-home",category:"Filesystem",label:"rm -rf root or home",description:"Blocks recursive forced removal of root or home paths.",example:"rm -rf /",intent:"hard_stop",catastrophic:!0},{id:"rm.git-metadata",category:"Filesystem",label:"rm Git metadata",description:"Blocks removal of protected Git metadata and hooks.",example:"rm -rf .git",intent:"hard_stop",catastrophic:!0},{id:"rm.recursive-force-dynamic-target",category:"Filesystem",label:"rm -rf dynamic target",description:"Blocks recursive forced removal with dynamic targets in strict mode.",example:'rm -rf "$target"',intent:"scope_down",activationCapability:"fail_closed"},{id:"rm.recursive-force-home-cwd",category:"Filesystem",label:"rm -rf from home cwd",description:"Blocks recursive forced removal while working in home.",example:'cd "$HOME" && rm -rf build',intent:"scope_down"},{id:"rm.recursive-force-cwd-self",category:"Filesystem",label:"rm -rf current directory",description:"Blocks recursive forced removal of the current directory.",example:"rm -rf .",intent:"scope_down"},{id:"rm.recursive-force-outside-cwd",category:"Filesystem",label:"rm -rf outside cwd",description:"Blocks recursive forced removal outside the original cwd.",example:"rm -rf ../outside",intent:"scope_down"},{id:"rm.recursive-force-paranoid",category:"Filesystem",label:"rm -rf paranoid mode",description:"Blocks non-temp recursive forced removal when paranoid rm is enabled.",example:"rm -rf ./cache",intent:"scope_down",activationCapability:"paranoid_rm"},{id:"powershell.remove-item-root-or-home",category:"PowerShell",label:"Remove-Item root or home",description:"Blocks PowerShell Remove-Item targeting root or home paths.",example:"Remove-Item C:\\",intent:"hard_stop",catastrophic:!0},{id:"powershell.remove-item-recursive-force-root-or-home",category:"PowerShell",label:"Remove-Item recursive force root or home",description:"Blocks recursive forced PowerShell removal of root or home paths.",example:"Remove-Item C:\\ -Recurse -Force",intent:"hard_stop",catastrophic:!0},{id:"powershell.remove-item-git-metadata",category:"PowerShell",label:"Remove-Item Git metadata",description:"Blocks PowerShell removal of protected Git metadata and hooks.",example:"Remove-Item .git -Recurse -Force",intent:"hard_stop",catastrophic:!0},{id:"powershell.remove-item-recursive-force-dynamic-target",category:"PowerShell",label:"Remove-Item recursive force dynamic target",description:"Blocks recursive forced PowerShell removal with dynamic targets in strict mode.",example:"Remove-Item $target -Recurse -Force",intent:"scope_down",activationCapability:"fail_closed"},{id:"powershell.remove-item-recursive-force-home-cwd",category:"PowerShell",label:"Remove-Item recursive force from home cwd",description:"Blocks recursive forced PowerShell removal while working in home.",example:"Set-Location $HOME; Remove-Item ./build -Recurse -Force",intent:"scope_down"},{id:"powershell.remove-item-recursive-force-cwd-self",category:"PowerShell",label:"Remove-Item recursive force current directory",description:"Blocks recursive forced PowerShell removal of the current directory.",example:"Remove-Item . -Recurse -Force",intent:"scope_down"},{id:"powershell.remove-item-recursive-force-outside-cwd",category:"PowerShell",label:"Remove-Item recursive force outside cwd",description:"Blocks recursive forced PowerShell removal outside the original cwd.",example:"Remove-Item ../outside -Recurse -Force",intent:"scope_down"},{id:"powershell.remove-item-recursive-force-paranoid",category:"PowerShell",label:"Remove-Item recursive force paranoid mode",description:"Blocks non-temp recursive forced PowerShell removal when paranoid rm is enabled.",example:"Remove-Item ./cache -Recurse -Force",intent:"scope_down",activationCapability:"paranoid_rm"},{id:"powershell.remove-item-pipeline-dynamic-target",category:"PowerShell",label:"Remove-Item pipeline dynamic target",description:"Blocks PowerShell Remove-Item with unverifiable pipeline input in strict mode.",example:"Get-ChildItem . -Recurse | Remove-Item -Force",intent:"scope_down",activationCapability:"fail_closed"},{id:"find.delete",category:"Filesystem",label:"find delete",description:"Blocks unsafe find -delete operations.",example:"find . -delete",intent:"scope_down"},{id:"find.delete-git-metadata",category:"Filesystem",label:"find delete Git metadata",description:"Blocks find -delete operations selecting protected Git metadata and hooks.",example:"find .git -delete",intent:"hard_stop",catastrophic:!0},{id:"find.exec-rm-recursive-force",category:"Filesystem",label:"find exec rm -rf",description:"Blocks find -exec rm -rf operations.",example:"find . -exec rm -rf {} +",intent:"scope_down"},{id:"dd.device-write",category:"Filesystem",label:"dd device write",description:"Blocks dd writing to a /dev device.",example:"dd if=/dev/zero of=/dev/sda",intent:"manual_only"},{id:"mkfs.device",category:"Filesystem",label:"mkfs device format",description:"Blocks mkfs formatting a /dev device.",example:"mkfs.ext4 /dev/sda1",intent:"manual_only"},{id:"shred.target",category:"Filesystem",label:"shred target",description:"Blocks shred against any target, including shred --help and shred --version.",example:"shred -u secret.txt",intent:"use_alternative"},{id:"interpreter.dangerous-command",category:"Execution",label:"Interpreter dangerous command",description:"Blocks interpreter one-liners containing dangerous commands.",example:`python -c "import os; os.system('rm -rf /')"`,intent:"use_alternative"},{id:"interpreter.one-liner-paranoid",category:"Execution",label:"Interpreter one-liner paranoid mode",description:"Blocks interpreter one-liners when paranoid interpreters is enabled.",example:'python -c "print(1)"',intent:"use_alternative",activationCapability:"paranoid_interpreters"},{id:"awk.system-dynamic",category:"Execution",label:"Awk dynamic system call",description:"Blocks awk system calls that cannot be safely analyzed.",example:"awk '{ system($0) }'",intent:"stop_and_explain"},{id:"xargs.rm-recursive-force-dynamic",category:"Execution",label:"xargs dynamic rm -rf",description:"Blocks xargs rm -rf with dynamic input.",example:"printf / | xargs rm -rf",intent:"scope_down"},{id:"xargs.shell-dynamic",category:"Execution",label:"xargs dynamic shell",description:"Blocks xargs shell execution with dynamic input.",example:"xargs r$(printf m) -rf",intent:"scope_down"},{id:"parallel.rm-recursive-force-dynamic",category:"Execution",label:"parallel dynamic rm -rf",description:"Blocks parallel rm -rf with dynamic input.",example:"printf / | parallel rm -rf",intent:"scope_down"},{id:"parallel.shell-dynamic",category:"Execution",label:"parallel dynamic shell",description:"Blocks parallel shell execution with dynamic input.",example:"parallel r$(printf m) -rf ::: child",intent:"scope_down"},{id:"parallel.command-stream-dynamic",category:"Execution",label:"parallel dynamic command stream",description:"Blocks parallel command streams from dynamic input.",example:"parallel --dry-run",intent:"scope_down"},{id:"shell.dynamic-structure",category:"Execution",label:"Dynamic command structure",description:"Blocks guarded subcommands and options assembled from substitution output in strict mode.",example:"git reset $(printf --hard)",intent:"stop_and_explain",activationCapability:"fail_closed"},{id:"shell.dynamic-executable",category:"Execution",label:"Dynamic executable name",description:"Blocks executable names assembled from command substitution output in strict mode.",example:"$(printf r)m -rf /",intent:"manual_only",activationCapability:"fail_closed"},{id:"raw-text.dangerous-command",category:"Execution",label:"Raw text dangerous command",description:"Blocks dangerous commands detected in raw command text.",example:"git reset --hard 'unterminated",intent:"stop_and_explain"}],GE=new Map(es.map((e)=>[e.id,e.intent])),$y=new Set(es.filter((e)=>e.catastrophic).map((e)=>e.id));function S(e,t){return{id:e,reason:t,intent:GE.get(e)??"manual_only"}}function O(e,t){if(!e)return null;if($y.has(e.id))return e;if(t?.destructiveCommandProtectionEnabled===!1)return null;let n=t?.effectiveDestructiveCommandRules[e.id];return n&&!n.enabled?null:e}function ue(e,t,n){if($y.has(t))return!0;if(e?.destructiveCommandProtectionEnabled===!1)return!1;return e?.effectiveDestructiveCommandRules[t]?.enabled??n}function My(e,t){return Object.freeze(Object.fromEntries(es.map((n)=>{let r=n.activationCapability?t[n.activationCapability]:void 0,o=r?.enabled??!0,i=e.destructiveCommandRuleOverrides[n.id],s=n.catastrophic?{enabled:!0,inheritedEnabled:!0,changesInherited:!1,source:"catastrophic",...i?{override:i}:{}}:e.destructiveCommandProtectionEnabled?i?{enabled:i==="on",inheritedEnabled:o,changesInherited:i==="on"!==o,source:"rule_override",...n.activationCapability?{activationCapability:n.activationCapability}:{},override:i}:{enabled:o,inheritedEnabled:o,changesInherited:!1,source:r?.source??"built_in_default",...n.activationCapability?{activationCapability:n.activationCapability}:{}}:{enabled:!1,inheritedEnabled:o,changesInherited:!1,source:"master_disabled",...n.activationCapability?{activationCapability:n.activationCapability}:{},...i?{override:i}:{}};return[n.id,Object.freeze(s)]})))}function Ly(e,t){return Object.freeze({...e,effectiveDestructiveCommandRules:My(e,t)})}function Mt(e,t){so(t,e,2);let n=e.toLowerCase(),r=n.trimStart(),o=r.startsWith("echo ")||r.startsWith("rg "),i=[{scan:"rm",label:"rm -rf"},{scan:"reset-hard",label:"git reset --hard"},{scan:"reset-merge",label:"git reset --merge"},{scan:"clean",label:"git clean -f"},{scan:"checkout",label:"git checkout --force"},{scan:"push-force",label:"git push --force"},{scan:"push-refspec",label:"git push --force"},{scan:"push-delete",label:"git push delete"},{scan:"branch",label:"git branch -D",caseSensitive:!0},{scan:"tag",label:"git tag -d"},{regex:/\bgit\s+stash\s+(drop|clear)\b/,label:"git stash drop/clear"},{regex:/\bgit\s+checkout\s+--\s/,label:"git checkout --"},{scan:"restore",label:"git restore without --staged"},{scan:"find",label:"find -delete",skipForEchoRg:!0},{regex:/\bdd\b[^\n|;&]*\bof=\/dev\/\S/,label:"dd of=/dev/",skipForEchoRg:!0},{regex:/\bmkfs(?:\.[a-z0-9_-]+)?\s+\/dev\/\S/,label:"mkfs /dev/",skipForEchoRg:!0},{regex:/\bshred\b\s+\S/,label:"shred",skipForEchoRg:!0}];for(let s of i){if(s.skipForEchoRg&&o)continue;let a=s.caseSensitive?e:n;if(s.regex)Ie(t,a);if((s.regex?.test(a)??!1)||s.scan&&Ji(a,s.scan,t))return S("raw-text.dangerous-command",`Unparseable command text contains a destructive pattern (${s.label}). Rewrite as a plain, parseable command so it can be analyzed.`)}return null}var ZE=/^[A-Za-z_][A-Za-z0-9_]*=/;function Fy(e,t,n){let r=e.words[0];if(!t||!r||e.words.length!==1||e.dialect!=="posix")return!1;if(!r.quoted||r.provenance!=="literal")return!1;let o=/^([A-Za-z_][A-Za-z0-9_]*)=/.exec(r.text)?.[1];if(!o)return!1;so(n,t.source,2);let i={anchored:new RegExp(`^\\$\\{?${o}(?![A-Za-z0-9_])`),loose:new RegExp(`\\$\\{?${o}(?![A-Za-z0-9_])`)};return Gy(t.nodes,r,i)}function Gy(e,t,n){return e.every((r)=>{if(r.kind==="connector")return!0;if(r.kind==="group"||r.kind==="function")return Gy(r.body.nodes,t,n);if(r.kind==="unknown")return!n.loose.test(r.source);return BE(r,t,n)})}function BE(e,t,n){if(e.nested.some((o)=>n.loose.test(o.source)))return!1;let r=e.words.findIndex((o)=>!ZE.test(o.text));return e.words.every((o,i)=>o===t||Wy(o.raw,n.anchored,i!==r))&&e.redirections.every((o)=>(!o.heredoc||o.heredoc.quotedDelimiter||!n.loose.test(o.heredoc.body))&&(!o.target||Wy(o.target.raw,n.anchored,!0)))}function Wy(e,t,n){let r=!1,o=!1;for(let i=0;i<e.length;i++){let s=e[i];if(s==="\\"&&!r){i++;continue}if(!o&&s==="'"){r=!r;continue}if(!r&&s==='"'){o=!o;continue}if(r||s!=="$")continue;if(!t.test(e.slice(i)))continue;if(!o||!n)return!1}return!0}var Zy=Object.freeze({maxDerivedTokens:16384}),By="Command analysis exceeds CC Safety Net's derived-command work limit. Reduce nested or embedded command complexity and retry.";class Oe extends Error{constructor(){super("Command analysis exceeds CC Safety Net's derived-command work limit. Reduce nested or embedded command complexity and retry.");this.name="DerivedCommandWorkLimitError"}}function ts(){return{derivedTokens:0}}function Xe(e,t){if(!Number.isSafeInteger(e.derivedTokens)||e.derivedTokens<0||e.derivedTokens>Zy.maxDerivedTokens||!Number.isSafeInteger(t)||t<0||t>Zy.maxDerivedTokens-e.derivedTokens)throw new Oe;e.derivedTokens+=t}import{isAbsolute as UE,resolve as Uy}from"path";var jy=64;function lo(e,t,n){let r=UE(e)?Uy(e):t?Uy(t,e):void 0;if(!r)return;try{return Y(r,n)}catch{return r}}function Hy(e){return!["/dev","/proc","/sys"].some((t)=>e===t||e.startsWith(`${t}/`))}function H(e){return G(e).toLowerCase()}function G(e){return e.split(/[\\/]/).pop()?.replace(/\.exe$/i,"")??e}var ns=10,er=20,vn=/^[a-zA-Z][a-zA-Z0-9_-]*$/,tr=256,de=new Set(["bash","sh","zsh","ksh","dash","fish","csh","tcsh"]),Vy=new Set(["python","python3","python2","node","ruby","perl"]),qy=/^python(?:[23](?:\.\d+)*)?$/,rs=new Set(["echo","printf","cat","head","tail","less","more","grep","rg","ag","ack","sed","awk","cut","tr","sort","uniq","wc","tee","man","help","info","type","which","whereis","whatis","apropos","file","stat","ls","ll","dir","tree","pwd","date","cal","uptime","whoami","id","groups","hostname","uname","env","printenv","set","export","alias","history","jobs","fg","bg","test","true","false","read","return","exit","break","continue","shift","wait","trap","basename","dirname","realpath","readlink","md5sum","sha256sum","base64","xxd","od","hexdump","strings","diff","cmp","comm","join","paste","column","fmt","fold","nl","pr","expand","unexpand","rev","tac","shuf","seq","yes","sleep","logger","write","wall","mesg","notify-send"]);var Sn="Interpreter code contains a dangerous command. Run the underlying command directly so it can be analyzed, or use the safer alternative for that command.",nr="Interpreter one-liners are blocked by the active safety policy. Write the code to a script file and run it, or run the equivalent shell command directly.",os=new Map([["python",new Set(["-c"])],["node",new Set(["-e","--eval"])],["ruby",new Set(["-e"])],["perl",new Set(["-e","-E"])]]),jE=new Set(["-p","--print"]),HE=new Map([["python",new Set(["c"])],["node",new Set(["e"])],["ruby",new Set(["e"])],["perl",new Set(["e","E"])]]),VE=new Map([["python",new Set(["W","X"])],["node",new Set(["C","r"])],["ruby",new Set(["C","E","F","I","r"])],["perl",new Set(["F","I","M","m"])]]),qE=new Map([["ruby",new Set(["0","K","W","x"])],["perl",new Set(["0","C","D","V","d","i","l","x"])]]),KE=new Map([["python",new Set(["m"])]]),YE=new Map([["node",new Set(["--allow-fs-read","--allow-fs-write","--conditions","--cpu-prof-dir","--cpu-prof-interval","--cpu-prof-name","--debug-port","--diagnostic-dir","--disable-proto","--disable-warning","--dns-result-order","--env-file","--env-file-if-exists","--experimental-package-map","--experimental-test-isolation","--experimental-test-tag-filter","--heap-prof-dir","--heap-prof-interval","--heap-prof-name","--heapsnapshot-near-heap-limit","--heapsnapshot-signal","--icu-data-dir","--input-type","--inspect-port","--inspect-publish-uid","--localstorage-file","--max-http-header-size","--max-old-space-size-percentage","--network-family-autoselection-attempt-timeout","--openssl-config","--redirect-warnings","--report-dir","--report-directory","--report-filename","--report-signal","--secure-heap","--secure-heap-min","--test-concurrency","--test-coverage-branches","--test-coverage-exclude","--test-coverage-functions","--test-coverage-include","--test-coverage-lines","--test-global-setup","--test-isolation","--test-name-pattern","--test-random-seed","--test-reporter","--test-reporter-destination","--test-rerun-failures","--test-shard","--test-skip-pattern","--test-timeout","--title","--tls-cipher-list","--tls-keylog","--trace-event-categories","--trace-event-file-pattern","--trace-require-module","--unhandled-rejections","--use-largepages","--v8-pool-size","--watch-kill-signal"])],["python",new Set(["--check-hash-based-pycs"])],["ruby",new Set(["--backtrace-limit","--crash-report","--disable","--enable","--encoding","--external-encoding","--internal-encoding","--parser"])]]),JE=new Set(["always","default","never"]),XE=new Set(["--backtrace-limit","--crash-report","--disable","--enable"]),QE=/\\\r?\n/g,eP=new Map([["python",[{selector:"-c",kind:"inline-code",valueForm:"attached-or-separate"},{selector:"-m",kind:"module-file",valueForm:"attached-or-separate"}]],["node",[{selector:"-e",kind:"inline-code",valueForm:"separate-only"},{selector:"--eval",kind:"inline-code",valueForm:"equals-or-separate"},{selector:"-p",kind:"inline-code",valueForm:"separate-only"},{selector:"--print",kind:"inline-code",valueForm:"separate-only"},{selector:"-r",kind:"module-file",valueForm:"separate-only"},{selector:"--require",kind:"module-file",valueForm:"equals-or-separate"},{selector:"--import",kind:"module-file",valueForm:"equals-or-separate"},{selector:"--loader",kind:"module-file",valueForm:"equals-or-separate"},{selector:"--experimental-loader",kind:"module-file",valueForm:"equals-or-separate"}]],["ruby",[{selector:"-e",kind:"inline-code",valueForm:"attached-or-separate"},{selector:"-r",kind:"module-file",valueForm:"attached-or-separate"}]],["perl",[{selector:"-e",kind:"inline-code",valueForm:"attached-or-separate"},{selector:"-E",kind:"inline-code",valueForm:"attached-or-separate"},{selector:"-M",kind:"module-file",valueForm:"attached-only"},{selector:"-m",kind:"module-file",valueForm:"attached-only"}]]]);function is(e){return as(e).code}function ss(e){return as(e).sources}function Yy(e){return eP.get(ls(e))??[]}function as(e){let t=ls(e[0]??"");if(!os.has(t))return{code:null,sources:[],optionsOpen:!1};let n=[],r=[],o=!0;for(let i=1;i<e.length;i++){let s=e[i];if(s===void 0)break;if(s==="--")return Qe(t,n,r,o,e[i+1]===void 0?void 0:i+1,e[i+1]);if(s===""||s==="-"||!s.startsWith("-"))return Qe(t,n,r,o,i,s);if(t==="node"&&jE.has(s)){let d=e[i+1];if(d===void 0)return Qe(t,n,r,o);if(d.startsWith("-"))continue;n.push({tokenIndex:i+1,value:d}),r.push({tokenIndex:i+1,kind:"inline-code",value:d}),i++;continue}if(nP(t,s)){let d=e[i+1];if(d===void 0)return Qe(t,n,r,o);if(n.push({tokenIndex:i+1,value:d}),r.push({tokenIndex:i+1,kind:"inline-code",value:d}),t==="python")return Qe(t,n,r,o);i++;continue}let a=/^--eval=(.*)$/s.exec(s);if(rP(t)&&a){let d=a[1]??"";n.push({tokenIndex:i,value:d}),r.push({tokenIndex:i,kind:"inline-code",value:d});continue}if(t==="node"){let d=tP(s);if(d){if(d.attached){if(o&&=d.value!=="",d.value!=="")r.push({tokenIndex:i,kind:"module-file",value:d.value});continue}let f=e[i+1];if(f===void 0||f.startsWith("-"))return o=!1,Qe(t,n,r,o);r.push({tokenIndex:i+1,kind:"module-file",value:f}),i++;continue}}if(t==="python"&&s.startsWith("--check-hash-based-pycs=")||t==="node"&&(s==="--conditions="||s==="--diagnostic-dir="||s==="--title=")||t==="ruby"&&(s==="--disable="||s==="--enable="))return Qe(t,n,r,o);if(YE.get(t)?.has(s)){let d=e[i+1];if(d===void 0||d.startsWith("-")&&!(t==="ruby"&&XE.has(s))||t==="python"&&!JE.has(d))return Qe(t,n,r,o);i++;continue}if(s.startsWith("--"))continue;let c,l=!1;for(let d=1;d<s.length;d++){let f=s[d];if(f===void 0)break;if(KE.get(t)?.has(f)){let m=s.slice(d+1),p=m||e[i+1];if(p!==void 0)r.push({tokenIndex:m?i:i+1,kind:"module-file",value:p});return Qe(t,n,r,o)}if(HE.get(t)?.has(f)){c=s.slice(d+1)||e[i+1],l=d+1===s.length;break}if(t==="node"&&f==="r"){if(s==="-r"){let m=e[i+1];if(o&&=m!==void 0&&!m.startsWith("-"),o&&m!==void 0)r.push({tokenIndex:i+1,kind:"module-file",value:m});i++}else o=!1;break}if(t==="ruby"&&f==="r"){let m=s.slice(d+1),p=m||e[i+1];if(o&&=p!==void 0,p!==void 0)r.push({tokenIndex:m?i:i+1,kind:"module-file",value:p});if(!m)i++;break}if(t==="perl"&&(f==="M"||f==="m")){let m=s.slice(d+1);if(m)r.push({tokenIndex:i,kind:"module-file",value:m});else if(o=!1,d+1===s.length)i++;break}if(VE.get(t)?.has(f)){if(d+1===s.length)i++;break}if(qE.get(t)?.has(f)&&d+1<s.length)break}if(c===void 0)continue;let u=l?i+1:i;if(n.push({tokenIndex:u,value:c}),r.push({tokenIndex:u,kind:"inline-code",value:c}),t==="python")return Qe(t,n,r,o);if(l)i++}return Qe(t,n,r,o,void 0,void 0,!0)}function Qe(e,t,n,r,o,i,s=!1){let a=e==="node"?t.slice(-1):t,c=new Set(a.map((u)=>u.tokenIndex)),l=n.filter((u)=>u.kind!=="inline-code"||c.has(u.tokenIndex));if(r&&t.length===0&&o!==void 0&&i!==void 0)l.push({tokenIndex:o,kind:"main-script",value:i});return{code:(e==="node"?a[0]?.value:a.map((u)=>u.value).join(`
|
|
27
|
-
`))||null,sources:r?l:[],optionsOpen:r&&s}}function
|
|
28
|
-
`;function
|
|
29
|
-
`||c==="\r"){i=!0;break}r+=c,s+=2;continue}if(a==="`"||e.startsWith("$(",s)||e.startsWith("${",s)||e.startsWith("<(",s)||e.startsWith(">(",s))i=!0;r+=a,s++}return{delimiter:r,quoted:o,next:s,span:{start:t,end:s},ambiguous:i}}function
|
|
30
|
-
`&&e[i]!=="\r"){let s=e[i]??"";if(s===r)return{text:o,next:i+1,closed:!0};if(r==='"'&&s==="\\"&&e[i+1]){let a=e[i+1]??"";o+=["$","`",'"',"\\"].includes(a)?a:`\\${a}`,i+=2;continue}o+=s,i++}return{text:o,next:i,closed:!1}}function
|
|
20
|
+
${pR(e.intent??"manual_only")}`,a}function pR(e){switch(e){case"hard_stop":return"Do not retry this operation or attempt any workaround (other tools, flags, or paths). Report the block to the user and continue with the rest of the task.";case"use_alternative":return"Do not retry the blocked form. Continue the task using the safer alternative described above.";case"scope_down":return"Retry with a narrower, explicit target as described above. Escalate to the user if the broad operation is truly required.";case"manual_only":return"If this operation is truly needed, ask the user for explicit permission and have them run the command manually.";case"stop_and_explain":return"Do not brute-force variants. Simplify or restructure the command so it can be analyzed, or report the block to the user."}}function gy(e,t){return e.length>t?`${e.slice(0,t)}...`:e}function yy(e,t){if(e.decision.kind!=="deny")return;let n=t.includeEvidence?e.decision.evidence.find((r)=>r.kind==="command"):void 0;return{reason:e.decision.reason,ruleId:e.decision.ruleId,intent:e.decision.intent,command:n?.command,segment:n?.segment,toolName:t.toolName,...e.configFallback?{configWarning:e.configFallback.reason}:{}}}function by(e={}){return{reason:Wi,intent:"stop_and_explain",command:e.command,segment:e.segment??e.command,toolName:e.toolName}}function vy(e){return hy({...e,redact:Tt})}function _y(e){return Tt(e instanceof Error?e.message:String(e))}import{basename as gR,dirname as hR,join as Dl}from"path";var Kn=Object.freeze({maxEnvironmentExpansionDepth:64,maxMissingSuffixComponents:256,maxRealpathAttempts:16384,maxProcessedCandidateBytes:4194304});class Se extends Error{name="PathCanonicalizationLimitError";constructor(){super("Path canonicalization work limit exceeded.")}}function Qr(){return{realpathAttempts:0,processedCandidateBytes:0,resolvedPaths:new Map}}function Ot(e){return{...Qr(),environment:e}}var Fi=new Set(["CC_SAFETY_NET_HOME","CLAUDE_CONFIG_DIR","CODEX_HOME","COPILOT_HOME","GEMINI_CLI_HOME","GROK_HOME","HOME","KIMI_CODE_HOME","KIMI_SHARE_DIR","OPENCODE_CONFIG","OPENCODE_CONFIG_DIR","PI_CODING_AGENT_DIR","ProgramData","TMPDIR","XDG_CONFIG_HOME","XDG_DATA_HOME"]);function Gi(e,t){return Ml(e,0,t)}function Ml(e,t,n){let r="",o=0;while(o<e.length){if(e[o]!=="$"){r+=e[o],o++;continue}if(e[o+1]==="{"){let s=$l(e,o+2),a=yR(e,o,t);if(a===null){if(Fi.has(s))throw new Se;r+=e.slice(o);break}let c=e.slice(o,a+1);r+=bR(c,t,n),o=a+1;continue}let i=$l(e,o+1);if(!i){r+="$",o++;continue}r+=Ll(i,n)??`$${i}`,o+=i.length+1}return r}function yR(e,t,n){let r=1;for(let o=t+2;o<e.length;o++){if(e[o]==="\\"){o++;continue}if(e[o]==="$"&&e[o+1]==="{"){if(r++,n+r>Kn.maxEnvironmentExpansionDepth)throw new Se;o++;continue}if(e[o]!=="}")continue;if(r--,r===0)return o}return null}function bR(e,t,n){let r=e.slice(2,-1),o=$l(r,0);if(!o)return e;let i=r.slice(o.length);if(!i)return Ll(o,n)??e;let s=[":-",":+",":=",":?","-","+","=","?"].find((l)=>i.startsWith(l));if(!s){if(Fi.has(o))throw new Se;return e}if(!Fi.has(o))return e;if(s.endsWith("="))throw new Se;let a=Ll(o,n),c=s.startsWith(":")?a!==null&&a!=="":a!==null;if(s.endsWith("?")&&!c)throw new Se;if(s.endsWith("-")||s.endsWith("?"))return c?a??"":Ml(i.slice(s.length),t+1,n);return c?Ml(i.slice(s.length),t+1,n):""}function $l(e,t){if(!/[A-Za-z_]/.test(e[t]??""))return"";let n=t+1;while(/[A-Za-z0-9_]/.test(e[n]??""))n++;return e.slice(t,n)}function X(e,t,n=Qr()){if(!e)return e;let r=n.resolvedPaths.get(e);if(r!==void 0)return r;let o=[],i=e;while(!0){if(n.realpathAttempts++,n.processedCandidateBytes+=Buffer.byteLength(i),n.realpathAttempts>Kn.maxRealpathAttempts||n.processedCandidateBytes>Kn.maxProcessedCandidateBytes)throw new Se;let s=t.realpath(i);if(s!==null){let c=o.length===0?s:Dl(s,...o.reverse());return n.resolvedPaths.set(e,c),c}let a=hR(i);if(a===i){let c=o.length===0?i:Dl(i,...o.reverse());return n.resolvedPaths.set(e,c),c}if(o.length>=Kn.maxMissingSuffixComponents){let c=Dl(i,...o.reverse());return n.resolvedPaths.set(e,c),c}o.push(gR(i)),i=a}}function Sy(e,t,n){let r=n.resolvedPaths.get(e);if(r!==void 0)return r;if(n.realpathAttempts++,n.processedCandidateBytes+=Buffer.byteLength(e),n.realpathAttempts>Kn.maxRealpathAttempts||n.processedCandidateBytes>Kn.maxProcessedCandidateBytes)throw new Se;let o=t.realpath(e);if(o!==null)n.resolvedPaths.set(e,o);return o}function Ll(e,t){if(!Fi.has(e))return null;if(e==="HOME")return t.env.get("HOME")??t.home;return t.env.get(e)??null}function N(e){return e.provenance==="command-substitution"?e.raw:e.text}function qn(e,t){return e==="posix"?t:j(t.map((n)=>n.text))}function Zi(e,t){return e&&e.provenance!=="unknown"?e.provenance==="literal":!/[$`*?[\]]/.test(t)}function j(e){return e.map((t)=>({kind:"word",text:t,raw:t,span:{start:0,end:0},provenance:"unknown",quoted:!1,parts:[]}))}import{existsSync as Zl,lstatSync as SR,readFileSync as Vi,realpathSync as no,statSync as to}from"fs";import{dirname as jl,isAbsolute as Ul,join as Hi,resolve as Ki}from"path";var Wl=["GIT_DIR","GIT_WORK_TREE","GIT_COMMON_DIR","GIT_INDEX_FILE"],vR=new Set(Wl);var xy=new Set(["GIT_CONFIG_GLOBAL","GIT_CONFIG_NOSYSTEM","GIT_CONFIG_SYSTEM","HOME","XDG_CONFIG_HOME"]),ji=new Set(["GIT_SSH_COMMAND","GIT_SSH","GIT_SSH_VARIANT"]),_R=/^([A-Za-z_][A-Za-z0-9_]*)\+=/;function Fl(e){return vR.has(e)}function eo(e){return e==="GIT_CONFIG_COUNT"||e==="GIT_CONFIG_PARAMETERS"||/^GIT_CONFIG_(KEY|VALUE)_\d+$/.test(e)}function Gl(e){return Fl(e)||xy.has(e)||ji.has(e)||eo(e)}function Ve(e,t,n){return n?.has(e)?n.get(e):t.get(e)}function Ui(e,t){let n=Ve("GIT_CONFIG_COUNT",e,t);if(n===void 0)return{state:"absent"};if(n==="")return{state:"valid",count:0};if(!/^\d+$/.test(n))return{state:"invalid"};let r=Number(n);return Number.isSafeInteger(r)&&r<=1024?{state:"valid",count:r}:{state:"invalid"}}function Bi(e,t,n){let o=e.match(_R)?.[1];if(!o||!Gl(o))return null;let i=e.indexOf("=");return{name:o,value:`${Ve(o,t,n)??""}${e.slice(i+1)}`}}function Cy(e){return wy(e,ji)}function Ey(e){return wy(e,xy)}function wy(e,t){if(!e)return!1;for(let n of e.keys())if(t.has(n))return!0;return!1}var He=new Set(["-c","-C","--git-dir","--work-tree","--namespace","--super-prefix","--config-env"]);function Ay(e,t){return Wl.some((n)=>t?.has(n)||e.has(n))}function ky(e,t){if(!t)return{gitCwd:null,hasExplicitGitContext:!1};let n;try{n=no(Ki(t))}catch{return{gitCwd:null,hasExplicitGitContext:!1}}if(!Oy(n))return{gitCwd:null,hasExplicitGitContext:!1};let r=!1,o=1;while(o<e.length){let i=e[o];if(!i)break;if(i==="--")break;if(!i.startsWith("-"))break;if(i==="-C"){let s=e[o+1];if(!s)return{gitCwd:null,hasExplicitGitContext:r};let a=Py(n,s);if(!a)return{gitCwd:null,hasExplicitGitContext:r};n=a,o+=2;continue}if(i.startsWith("-C")&&i.length>2){let s=Py(n,i.slice(2));if(!s)return{gitCwd:null,hasExplicitGitContext:r};n=s,o++;continue}if(i==="--git-dir"||i==="--work-tree"){r=!0,o+=2;continue}if(i.startsWith("--git-dir=")||i.startsWith("--work-tree=")){r=!0,o++;continue}if(He.has(i))o+=2;else if(i.startsWith("-c")&&i.length>2)o++;else o++}return{gitCwd:n,hasExplicitGitContext:r}}function Ty(e){let t=DR(e);if(!t)return!1;try{let n=SR(t);if(n.isSymbolicLink()||!n.isFile())return!1;let r=Bl(t);if(!r?.commonDir)return!1;if(!ER(r.gitDir,t))return!1;return wR(r.gitDir,jl(t))}catch{return!1}}function Bl(e){try{let t=xR(e);if(!t)return null;let n=no(Ul(t)?t:Ki(jl(e),t));if(!to(n).isDirectory())return null;return{gitDir:n,commonDir:CR(n)}}catch{return null}}function xR(e){let t=Vi(e,"utf-8").split(/\r?\n/,1)[0]?.trim()??"";if(!t.startsWith("gitdir:"))return null;return t.slice(7).trim()||null}function CR(e){try{let t=Vi(Hi(e,"commondir"),"utf-8").split(/\r?\n/,1)[0]?.trim();if(!t)return null;let n=no(Ul(t)?t:Ki(e,t));return to(n).isDirectory()?n:null}catch{return null}}function ER(e,t){let n=RR(e);return n===null?!1:Iy(e,n,t)}function wR(e,t){let n=PR(e);return n===null?!0:Iy(e,n,t)}function RR(e){let t=Hi(e,"gitdir");if(!Zl(t))return null;let n=Vi(t,"utf-8").split(/\r?\n/,1)[0]?.trim()??"";return n===""?null:n}function PR(e){let t=Hi(e,"config.worktree");return Zl(t)?OR(t):null}function Iy(e,t,n){return kR(AR(e,t),n)}function AR(e,t){return Ul(t)?t:Ki(e,t)}function kR(e,t){try{return TR(e,t)}catch{return!1}}function TR(e,t){try{let n=to(e),r=to(t);if(n.ino!==0&&r.ino!==0&&n.dev===r.dev&&n.ino===r.ino)return!0}catch{}return Ry(e)===Ry(t)}function Ry(e){return IR(no.native(e))}function IR(e){let t=e.replace(/^\\\\\?\\UNC\\/i,"//").replace(/^\\\\\?\\/i,"");if(t=t.replace(/\\/g,"/"),t.length>1&&t.endsWith("/"))t=t.slice(0,-1);return process.platform==="win32"?t.toLowerCase():t}function OR(e){let t=Vi(e,"utf-8"),n=!1,r=null;for(let o of t.split(/\r?\n/)){let i=o.trim();if(i===""||i.startsWith("#")||i.startsWith(";"))continue;if(i.startsWith("[")){n=/^\[core\]$/i.test(i);continue}if(!n)continue;let s=i.match(/^worktree\s*=\s*(.*)$/i);if(s)r=zR(s[1]??"")}return r}function zR(e){let t=e.trim();if(!t.startsWith('"')||!t.endsWith('"'))return t;return NR(t.slice(1,-1))}function NR(e){let t="";for(let n=0;n<e.length;n++){let r=e[n];if(r!=="\\"){t+=r;continue}let o=e[n+1];if(o===void 0){t+=r;continue}switch(o){case"\\":case'"':t+=o;break;case"n":t+=`
|
|
21
|
+
`;break;case"t":t+="\t";break;case"b":t+="\b";break;default:t+=`\\${o}`;break}n++}return t}function Py(e,t){try{let n=jt(e,t,Be);return Oy(n)?n:null}catch{return null}}function Oy(e){try{return to(e).isDirectory()}catch{return!1}}function DR(e){try{return ro(no(e))}catch{return null}}function ro(e){let t=e;while(!0){let n=Hi(t,".git");if(Zl(n))return n;let r=jl(t);if(r===t)return null;t=r}}function Vl(e,t){return{value:e,work:t}}function S(e,t){if(e.work)e.work.units=Math.min(Number.MAX_SAFE_INTEGER,e.work.units+1);return e.value[t]}function ue(e){return e.value.length}function oo(e,t,n=1){if(e)e.units=Math.min(Number.MAX_SAFE_INTEGER,e.units+t.length*n)}function Ne(e,t){oo(e,t)}function gn(e){if(!e)return!1;let t=e.charCodeAt(0);return t>=48&&t<=57||t>=65&&t<=90||t===95||t>=97&&t<=122}function ae(e){if(!e)return!1;let t=e.charCodeAt(0);return t===9||t===10||t===11||t===12||t===13||t===32||t===160||t===65279||t===5760||t>=8192&&t<=8202||t===8232||t===8233||t===8239||t===8287||t===12288}function Hl(e){return e===`
|
|
22
|
+
`||e==="\r"||e==="\u2028"||e==="\u2029"}function ce(e,t,n){if(t+n.length>ue(e))return!1;for(let r=0;r<n.length;r++)if(S(e,t+r)!==n[r])return!1;return!0}function zt(e,t,n){return!gn(S(e,t-1))&&ce(e,t,n)&&!gn(S(e,t+n.length))}function Nt(e,t){return gn(S(e,t-1))!==gn(S(e,t))}function he(e){return e===`
|
|
23
|
+
`||e===";"||e==="&"||e==="|"}function Yn(e){return e==="|"||e===";"}function qi(e,t,n){let r=Vl(e,n);if(t==="rm")return MR(r);if(t==="dd")return LR(r);return Ly(r,!0)}function Yi(e,t,n){let r=Vl(e,n);if(t==="rm")return WR(r);if(t==="reset-hard")return My(r,"--ha","rd");if(t==="reset-merge")return My(r,"--me","rge");if(t==="clean")return jR(r);if(t==="checkout")return BR(r);if(t==="push-force")return VR(r);if(t==="push-refspec")return HR(r);if(t==="push-delete")return KR(r);if(t==="branch")return qR(r);if(t==="tag")return XR(r);if(t==="restore")return QR(r);return Ly(r,!1)}function MR(e){let t=!1,n=!1,r=!1,o=-1;for(let i=0;i<=ue(e);i++){let s=S(e,i);if(!t){let c=S(e,i+2);if(zt(e,i,"rm")&&ae(c)&&c!==`
|
|
24
|
+
`)t=!0,i++;continue}let a=$R(e,i);if(s===`
|
|
25
|
+
`||a!==-1){if(t=!1,n=!1,r=!1,o=-1,a!==-1)i=a-1;continue}if(s===";"||s==="&"||s==="|"||i===ue(e)){if(o>=0){let c=zy(e,o,i);n||=c.recursive,r||=c.force}if(n&&r)return!0;t=!1,n=!1,r=!1,o=-1;continue}if(ae(s)){if(o>=0){if(ce(e,o,"--")&&i-o===2)t=!1,n=!1,r=!1;else{let c=zy(e,o,i);if(n||=c.recursive,r||=c.force,n&&r)return!0}o=-1}continue}if(o<0)o=i}return!1}function $R(e,t){if(S(e,t)!=="\\"||S(e,t-1)==="\\")return-1;if(ce(e,t,String.raw`\n`))return t+2;if(ce(e,t,String.raw`\x0a`)||ce(e,t,String.raw`\x0A`))return t+5;if(ce(e,t,String.raw`\u000a`)||ce(e,t,String.raw`\u000A`))return t+7;return ce(e,t,String.raw`\012`)?t+4:-1}function zy(e,t,n){if(Ny(e,t,n,"recursive"))return{recursive:!0,force:!1};if(Ny(e,t,n,"force"))return{recursive:!1,force:!0};if(S(e,t)!=="-"||S(e,t+1)==="-")return{recursive:!1,force:!1};let r=!1,o=!1;for(let i=t+1;i<n;i++){let s=S(e,i);r||=s==="r"||s==="R",o||=s==="f"||s==="F"}return{recursive:r,force:o}}function Ny(e,t,n,r){let o=n-t-2;if(o<1||o>r.length||!ce(e,t,"--"))return!1;for(let i=0;i<o;i++)if(S(e,t+i+2)!==r[i])return!1;return!0}function LR(e){let t=!1;for(let n=0;n<ue(e);n++){if(he(S(e,n))){t=!1;continue}if(zt(e,n,"dd")){t=!0,n++;continue}if(!t||!zt(e,n,"of")||!ce(e,n,"of=/dev/"))continue;let r=n+8;if(r<ue(e)&&!ae(S(e,r))&&S(e,r)!=="'"&&S(e,r)!=='"')return!0}return!1}function WR(e){let t=!1,n=!1,r=!1;for(let o=0;o<=ue(e);){let i=S(e,o);if(o===ue(e)||he(i)){t=!1,n=!1,r=!1,o++;continue}let s=GR(e,o);if(s>=0){if(FR(e,s))return!0;let a=s,c=!1;while(ae(S(e,a)))c||=S(e,a)===`
|
|
26
|
+
`,a++;if(c)n=!1,r=!1;t=!0,o=a;continue}if(!t){o++;continue}if(ce(e,o,"--")&&(o===0||ae(S(e,o-1)))&&(!S(e,o+2)||ae(S(e,o+2))||he(S(e,o+2)))){t=!1,n=!1,r=!1,o+=2;continue}if(n||=ce(e,o,"--recursive")&&Nt(e,o+11)||Kl(e,o,"recursive"),r||=ce(e,o,"--force")&&Nt(e,o+7)||Kl(e,o,"force"),n&&r)return!0;o++}return!1}function Kl(e,t,n){if(!ce(e,t,"--"))return!1;let r=0;while(r<=n.length){let o=S(e,t+r+2);if(!o||ae(o)||he(o))break;if(o!==n[r])return!1;r++}return r>0&&Nt(e,t+r+2)}function FR(e,t){let n=t,r=!1,o=!1;while(n<ue(e)){while(ae(S(e,n)))n++;let i=n;while(n<ue(e)&&!ae(S(e,n)))n++;if(S(e,i)!=="-"||n-i===2&&ce(e,i,"--"))return!1;let s=Dy(e,i,"recursive"),a=Dy(e,i,"force");if(r&&a||o&&s)return!0;if(r||=s,o||=a,S(e,i+1)==="-")continue;let c=ZR(e,i,n);if(c.combined||r&&c.forceAtBoundary||o&&c.recursiveAtBoundary)return!0;r||=c.recursive,o||=c.force}return!1}function Dy(e,t,n){return ce(e,t,`--${n}`)&&Nt(e,t+n.length+2)||Kl(e,t,n)}function GR(e,t){if(t>0&&gn(S(e,t-1)))return-1;let n=t;if(S(e,n)==="\\")n++;if(S(e,n)!=="r")return-1;if(n++,S(e,n)==="\\")n++;if(S(e,n)!=="m"||!ae(S(e,n+1)))return-1;return n+1}function ZR(e,t,n){let r=!1,o=!1,i=!1,s=!1,a=!1;if(S(e,t)!=="-")return{recursive:r,force:o,recursiveAtBoundary:i,forceAtBoundary:s,combined:a};let c="";for(let l=t+1;l<n;l++){let u=S(e,l)??"",d=(u==="r"||u==="f")&&Nt(e,l+1);r||=u==="r",o||=u==="f",i||=u==="r"&&d,s||=u==="f"&&d,a||=(c==="r"&&u==="f"||c==="f"&&u==="r")&&d,c=u}return{recursive:r,force:o,recursiveAtBoundary:i,forceAtBoundary:s,combined:a}}function My(e,t,n){return so(e,"reset",Yn,!0,(r)=>S(e,r)==="-"&&Jn(e,r,t,n)?!0:r)}function jR(e){return so(e,"clean",Yn,!0,(t)=>{if(S(e,t)!=="-")return t;if(Jn(e,t,"--fo","rce"))return!0;let n=io(e,t,Yn);for(let r=t+1;r<n;r++)if(S(e,r)==="f")return!0;return n-1})}function Ji(e,t,n){if(!zt(e,t,"git"))return null;let r=t+3;if(!ae(S(e,r)))return{commandEnd:-1,next:r};while(ae(S(e,r)))r++;while(r<ue(e)){if(he(S(e,r)))return{commandEnd:-1,next:r};let o=io(e,r,he);if(zt(e,r,n))return{commandEnd:r+n.length,next:o};if(S(e,r)!=="-")return{commandEnd:-1,next:o};let i=o-r===2&&ce(e,r,"--"),s=UR(e,r,o);r=o;while(ae(S(e,r)))r++;if(i)return{commandEnd:zt(e,r,n)?r+n.length:-1,next:io(e,r,he)};if(!s)continue;if(r>=ue(e)||he(S(e,r)))return{commandEnd:-1,next:r};r=io(e,r,he);while(ae(S(e,r)))r++}return{commandEnd:-1,next:r}}function UR(e,t,n){for(let r of He)if(n-t===r.length&&ce(e,t,r))return!0;return!1}function BR(e){return $y(e,{command:"checkout",longPrefix:"--fo",longOptional:"rce",shortFlag:"f",excludedShortStarts:"bBU"})}function VR(e){return so(e,"push",Yn,!0,(t)=>{if(S(e,t)!=="-")return t;if(S(e,t+1)==="f"&&!gn(S(e,t+2))&&!ce(e,t+2,"-with-lease"))return!0;let n=Wy(e,t,"--fo","rce");if(n>=0&&!ce(e,n,"-with-lease"))return!0;return t})}function HR(e){return so(e,"push",he,!1,(t)=>{if(ae(S(e,t))&&S(e,t+1)==="+"&&t+2<ue(e)&&!he(S(e,t+2))&&!ae(S(e,t+2)))return!0;if(S(e,t)===":"&&S(e,t+1)==="+")return!0;return t})}function KR(e){return so(e,"push",he,!1,(t)=>{if(S(e,t)==="-"&&Jn(e,t,"--de","lete"))return!0;if(ae(S(e,t))&&S(e,t+1)===":"&&t+2<ue(e)&&!ae(S(e,t+2))&&!he(S(e,t+2)))return!0;return t})}function qR(e){let t=!1,n=!1,r=!1;for(let o=0;o<=ue(e);o++){if(o===ue(e)||he(S(e,o))){if(n&&r)return!0;t=!1,n=!1,r=!1;continue}if(!t){let a=Ji(e,o,"branch");if(a){t=a.commandEnd>=0,o=Math.max(o,(t?a.commandEnd:a.next)-1);continue}}if(!t||S(e,o)!=="-")continue;let i=io(e,o,he),s=YR(e,o,i);if(n||=s.deletion,r||=s.force,n&&r)return!0;o=i-1}return!1}function YR(e,t,n){let r=!1,o=!1;for(let i=t;i<n;i++){if(S(e,i)!=="-")continue;if(Jn(e,i,"--de","lete"))r=!0;if(Jn(e,i,"--fo","rce"))o=!0;if(S(e,i+1)==="-")continue;let s=i+1,a=!1,c=!1,l=!1;while(s<n&&JR(S(e,s))){let u=S(e,s);a||=u==="d"||u==="D",c||=u==="f",l||=u==="D",s++}if(!Nt(e,s))continue;r||=a,o||=c||l}return{deletion:r,force:o}}function JR(e){if(!e)return!1;let t=e.charCodeAt(0);return t>=65&&t<=90||t>=97&&t<=122}function XR(e){return $y(e,{command:"tag",longPrefix:"--de",longOptional:"lete",shortFlag:"d",excludedShortStarts:""})}function $y(e,t){let n=[{outerActive:!1,shortActive:!1,hasShortFlag:!1,depth:0,quote:"",escaped:!1}];for(let r=0;r<ue(e);r++){let o=S(e,r),i=n[n.length-1];if(!i)return!1;let s=i.escaped;if(i.escaped=!s&&i.quote!=="'"&&o==="\\",!s&&o==="'"&&i.quote!=='"')i.quote=i.quote==="'"?"":"'";if(!s&&o==='"'&&i.quote!=="'")i.quote=i.quote==='"'?"":'"';if(o==="$"&&S(e,r+1)==="("&&(n.length===1||!s&&i.quote!=="'")){n.push({outerActive:!1,shortActive:!1,hasShortFlag:!1,depth:1,quote:"",escaped:!1}),r++;continue}if(!s&&!i.quote&&n.length>1&&o==="("){i.depth++;continue}if(!s&&!i.quote&&n.length>1&&o===")"){if(i.depth--,i.depth===0)n.pop();continue}if(ae(o))i.shortActive=!1,i.hasShortFlag=!1;if(!i.outerActive){let a=Ji(e,r,t.command);if(a){i.outerActive=a.commandEnd>=0&&ae(S(e,a.commandEnd)),i.shortActive=!1,i.hasShortFlag=!1,r=Math.max(r,(i.outerActive?a.commandEnd:a.next)-1);continue}}if(i.outerActive&&o==="-"){if(Jn(e,r,t.longPrefix,t.longOptional))return!0;i.shortActive||=!t.excludedShortStarts.includes(S(e,r+1)??"")}if(i.hasShortFlag||=i.shortActive&&o===t.shortFlag,i.hasShortFlag&&Nt(e,r+1))return!0;if(Yn(o))i.outerActive=!1}return!1}function so(e,t,n,r,o){let i=!1;for(let s=0;s<ue(e);s++){let a=S(e,s),c=n(a);if(!i&&!c){let l=Ji(e,s,t);if(l){i=l.commandEnd>=0&&(!r||ae(S(e,l.commandEnd))),s=Math.max(s,(i?l.commandEnd:l.next)-1);continue}}if(i){let l=o(s);if(l===!0)return!0;for(let u=s;u<=l;u++)if(n(S(e,u)))i=!1;s=l}if(c)i=!1}return!1}function QR(e){let t=!1;for(let n=0;n<ue(e);n++){if(Hl(S(e,n))){if(t)return!0;t=!1;continue}if(!t){let r=Ji(e,n,"restore");if(r){t=r.commandEnd>=0,n=Math.max(n,(t?r.commandEnd:r.next)-1);continue}}if(t&&S(e,n)==="-"&&S(e,n+1)==="-"&&(ce(e,n+2,"staged")||ce(e,n+2,"help")))t=!1}return t}function Ly(e,t){let n=!1;for(let r=0;r<ue(e);r++){let o=S(e,r),i=t?Hl(o):he(o);if(n&&ae(o)&&S(e,r+1)==="-"&&zt(e,r+2,"delete"))return!0;if(i){n=!1;continue}if(zt(e,r,"find"))n=!0,r+=3}return!1}function io(e,t,n){let r=t;while(r<ue(e)&&!ae(S(e,r))&&!n(S(e,r)))r++;return r}function Wy(e,t,n,r){if(!ce(e,t,n))return-1;let o=t+n.length;for(let i=0;i<r.length&&S(e,o)===r[i];i++)o++;return Nt(e,o)?o:-1}function Jn(e,t,n,r){return Wy(e,t,n,r)>=0}var Fy=[{id:"git.ssh-env",category:"Git",label:"Git SSH environment override",description:"Blocks Git network operations with SSH environment overrides.",example:'GIT_SSH_COMMAND="./ssh-wrapper" git push',intent:"manual_only"},{id:"git.alias-config",category:"Git",label:"Git command-line alias",description:"Blocks command-line Git aliases that cannot be safely resolved.",example:"git -c alias.wipe='!rm -rf /' wipe",intent:"manual_only"},{id:"git.checkout-force",category:"Git",label:"Git checkout force",description:"Blocks forced checkout operations that discard local changes.",example:"git checkout --force main",intent:"use_alternative"},{id:"git.checkout-double-dash",category:"Git",label:"Git checkout path restore",description:"Blocks checkout path restores after --.",example:"git checkout -- src/app.ts",intent:"use_alternative"},{id:"git.checkout-ref-path",category:"Git",label:"Git checkout ref and path",description:"Blocks checkout forms that mix a ref and path restore.",example:"git checkout HEAD -- src/app.ts",intent:"use_alternative"},{id:"git.checkout-pathspec-from-file",category:"Git",label:"Git checkout pathspec file",description:"Blocks checkout pathspec loading from a file.",example:"git checkout --pathspec-from-file=paths.txt",intent:"use_alternative"},{id:"git.checkout-ambiguous",category:"Git",label:"Git checkout ambiguous targets",description:"Blocks ambiguous checkout arguments that may restore paths.",example:"git checkout main src/app.ts",intent:"use_alternative"},{id:"git.switch-discard-changes",category:"Git",label:"Git switch discard changes",description:"Blocks branch switches that explicitly discard local changes.",example:"git switch --discard-changes main",intent:"use_alternative"},{id:"git.switch-force",category:"Git",label:"Git switch force",description:"Blocks forced branch switches.",example:"git switch --force main",intent:"use_alternative"},{id:"git.restore-worktree",category:"Git",label:"Git restore worktree",description:"Blocks worktree restore operations.",example:"git restore --worktree src/app.ts",intent:"use_alternative"},{id:"git.restore-unstaged",category:"Git",label:"Git restore unstaged",description:"Blocks unstaged restore operations.",example:"git restore src/app.ts",intent:"use_alternative"},{id:"git.reset-hard",category:"Git",label:"Git reset hard",description:"Blocks hard resets.",example:"git reset --hard",intent:"use_alternative"},{id:"git.reset-merge",category:"Git",label:"Git reset merge",description:"Blocks merge resets.",example:"git reset --merge",intent:"use_alternative"},{id:"git.clean-force",category:"Git",label:"Git clean force",description:"Blocks forced clean operations.",example:"git clean -fd",intent:"use_alternative"},{id:"git.rm-force",category:"Git",label:"Git rm force",description:"Blocks forced removal of tracked files from the working tree.",example:"git rm -rf .",intent:"use_alternative"},{id:"git.push-force",category:"Git",label:"Git push force",description:"Blocks force pushes.",example:"git push --force origin main",intent:"use_alternative"},{id:"git.push-delete",category:"Git",label:"Git push delete",description:"Blocks remote ref deletion through push.",example:"git push --delete origin old-branch",intent:"manual_only"},{id:"git.push-mirror",category:"Git",label:"Git push mirror",description:"Blocks mirror pushes that can force-update or delete remote refs.",example:"git push --mirror origin",intent:"manual_only"},{id:"git.branch-force-delete",category:"Git",label:"Git branch force delete",description:"Blocks forced branch deletion.",example:"git branch -D old-branch",intent:"use_alternative"},{id:"git.rebase-abort",category:"Git",label:"Git rebase abort",description:"Blocks rebase abort operations.",example:"git rebase --abort",intent:"use_alternative"},{id:"git.merge-abort",category:"Git",label:"Git merge abort",description:"Blocks merge abort operations.",example:"git merge --abort",intent:"use_alternative"},{id:"git.tag-delete",category:"Git",label:"Git tag delete",description:"Blocks tag deletion.",example:"git tag --delete v1.0.0",intent:"manual_only"},{id:"git.reflog-delete",category:"Git",label:"Git reflog delete",description:"Blocks reflog deletion.",example:"git reflog delete HEAD@{1}",intent:"manual_only"},{id:"git.stash-drop",category:"Git",label:"Git stash drop",description:"Blocks dropping stash entries.",example:"git stash drop stash@{0}",intent:"use_alternative"},{id:"git.stash-clear",category:"Git",label:"Git stash clear",description:"Blocks clearing all stash entries.",example:"git stash clear",intent:"manual_only"},{id:"git.worktree-remove-force",category:"Git",label:"Git worktree force remove",description:"Blocks forced worktree removal.",example:"git worktree remove --force ../feature",intent:"use_alternative"},{id:"rm.recursive-force-root-or-home",category:"Filesystem",label:"rm -rf root or home",description:"Blocks recursive forced removal of root or home paths.",example:"rm -rf /",intent:"hard_stop",catastrophic:!0},{id:"rm.git-metadata",category:"Filesystem",label:"rm Git metadata",description:"Blocks removal of protected Git metadata and hooks.",example:"rm -rf .git",intent:"hard_stop",catastrophic:!0},{id:"rm.recursive-force-dynamic-target",category:"Filesystem",label:"rm -rf dynamic target",description:"Blocks recursive forced removal with dynamic targets in strict mode.",example:'rm -rf "$target"',intent:"scope_down",activationCapability:"fail_closed"},{id:"rm.recursive-force-home-cwd",category:"Filesystem",label:"rm -rf from home cwd",description:"Blocks recursive forced removal while working in home.",example:'cd "$HOME" && rm -rf build',intent:"scope_down"},{id:"rm.recursive-force-cwd-self",category:"Filesystem",label:"rm -rf current directory",description:"Blocks recursive forced removal of the current directory.",example:"rm -rf .",intent:"scope_down"},{id:"rm.recursive-force-outside-cwd",category:"Filesystem",label:"rm -rf outside cwd",description:"Blocks recursive forced removal outside the original cwd.",example:"rm -rf ../outside",intent:"scope_down"},{id:"rm.recursive-force-paranoid",category:"Filesystem",label:"rm -rf paranoid mode",description:"Blocks non-temp recursive forced removal when paranoid rm is enabled.",example:"rm -rf ./cache",intent:"scope_down",activationCapability:"paranoid_rm"},{id:"powershell.remove-item-root-or-home",category:"PowerShell",label:"Remove-Item root or home",description:"Blocks PowerShell Remove-Item targeting root or home paths.",example:"Remove-Item C:\\",intent:"hard_stop",catastrophic:!0},{id:"powershell.remove-item-recursive-force-root-or-home",category:"PowerShell",label:"Remove-Item recursive force root or home",description:"Blocks recursive forced PowerShell removal of root or home paths.",example:"Remove-Item C:\\ -Recurse -Force",intent:"hard_stop",catastrophic:!0},{id:"powershell.remove-item-git-metadata",category:"PowerShell",label:"Remove-Item Git metadata",description:"Blocks PowerShell removal of protected Git metadata and hooks.",example:"Remove-Item .git -Recurse -Force",intent:"hard_stop",catastrophic:!0},{id:"powershell.remove-item-recursive-force-dynamic-target",category:"PowerShell",label:"Remove-Item recursive force dynamic target",description:"Blocks recursive forced PowerShell removal with dynamic targets in strict mode.",example:"Remove-Item $target -Recurse -Force",intent:"scope_down",activationCapability:"fail_closed"},{id:"powershell.remove-item-recursive-force-home-cwd",category:"PowerShell",label:"Remove-Item recursive force from home cwd",description:"Blocks recursive forced PowerShell removal while working in home.",example:"Set-Location $HOME; Remove-Item ./build -Recurse -Force",intent:"scope_down"},{id:"powershell.remove-item-recursive-force-cwd-self",category:"PowerShell",label:"Remove-Item recursive force current directory",description:"Blocks recursive forced PowerShell removal of the current directory.",example:"Remove-Item . -Recurse -Force",intent:"scope_down"},{id:"powershell.remove-item-recursive-force-outside-cwd",category:"PowerShell",label:"Remove-Item recursive force outside cwd",description:"Blocks recursive forced PowerShell removal outside the original cwd.",example:"Remove-Item ../outside -Recurse -Force",intent:"scope_down"},{id:"powershell.remove-item-recursive-force-paranoid",category:"PowerShell",label:"Remove-Item recursive force paranoid mode",description:"Blocks non-temp recursive forced PowerShell removal when paranoid rm is enabled.",example:"Remove-Item ./cache -Recurse -Force",intent:"scope_down",activationCapability:"paranoid_rm"},{id:"powershell.remove-item-pipeline-dynamic-target",category:"PowerShell",label:"Remove-Item pipeline dynamic target",description:"Blocks PowerShell Remove-Item with unverifiable pipeline input in strict mode.",example:"Get-ChildItem . -Recurse | Remove-Item -Force",intent:"scope_down",activationCapability:"fail_closed"},{id:"find.delete",category:"Filesystem",label:"find delete",description:"Blocks unsafe find -delete operations.",example:"find . -delete",intent:"scope_down"},{id:"find.delete-git-metadata",category:"Filesystem",label:"find delete Git metadata",description:"Blocks find -delete operations selecting protected Git metadata and hooks.",example:"find .git -delete",intent:"hard_stop",catastrophic:!0},{id:"find.exec-rm-recursive-force",category:"Filesystem",label:"find exec rm -rf",description:"Blocks find -exec rm -rf operations.",example:"find . -exec rm -rf {} +",intent:"scope_down"},{id:"dd.device-write",category:"Filesystem",label:"dd device write",description:"Blocks dd writing to a /dev device.",example:"dd if=/dev/zero of=/dev/sda",intent:"manual_only"},{id:"mkfs.device",category:"Filesystem",label:"mkfs device format",description:"Blocks mkfs formatting a /dev device.",example:"mkfs.ext4 /dev/sda1",intent:"manual_only"},{id:"shred.target",category:"Filesystem",label:"shred target",description:"Blocks shred against any target, including shred --help and shred --version.",example:"shred -u secret.txt",intent:"use_alternative"},{id:"interpreter.dangerous-command",category:"Execution",label:"Interpreter dangerous command",description:"Blocks interpreter one-liners containing dangerous commands.",example:`python -c "import os; os.system('rm -rf /')"`,intent:"use_alternative"},{id:"interpreter.one-liner-paranoid",category:"Execution",label:"Interpreter one-liner paranoid mode",description:"Blocks interpreter one-liners when paranoid interpreters is enabled.",example:'python -c "print(1)"',intent:"use_alternative",activationCapability:"paranoid_interpreters"},{id:"awk.system-dynamic",category:"Execution",label:"Awk dynamic system call",description:"Blocks awk system calls that cannot be safely analyzed.",example:"awk '{ system($0) }'",intent:"stop_and_explain"},{id:"xargs.rm-recursive-force-dynamic",category:"Execution",label:"xargs dynamic rm -rf",description:"Blocks xargs rm -rf with dynamic input.",example:"printf / | xargs rm -rf",intent:"scope_down"},{id:"xargs.shell-dynamic",category:"Execution",label:"xargs dynamic shell",description:"Blocks xargs shell execution with dynamic input.",example:"xargs r$(printf m) -rf",intent:"scope_down"},{id:"parallel.rm-recursive-force-dynamic",category:"Execution",label:"parallel dynamic rm -rf",description:"Blocks parallel rm -rf with dynamic input.",example:"printf / | parallel rm -rf",intent:"scope_down"},{id:"parallel.shell-dynamic",category:"Execution",label:"parallel dynamic shell",description:"Blocks parallel shell execution with dynamic input.",example:"parallel r$(printf m) -rf ::: child",intent:"scope_down"},{id:"parallel.command-stream-dynamic",category:"Execution",label:"parallel dynamic command stream",description:"Blocks parallel command streams from dynamic input.",example:"parallel --dry-run",intent:"scope_down"},{id:"shell.dynamic-structure",category:"Execution",label:"Dynamic command structure",description:"Blocks guarded subcommands and options assembled from substitution output in strict mode.",example:"git reset $(printf --hard)",intent:"stop_and_explain",activationCapability:"fail_closed"},{id:"shell.dynamic-executable",category:"Execution",label:"Dynamic executable name",description:"Blocks executable names assembled from command substitution output in strict mode.",example:"$(printf r)m -rf /",intent:"manual_only",activationCapability:"fail_closed"},{id:"raw-text.dangerous-command",category:"Execution",label:"Raw text dangerous command",description:"Blocks dangerous commands detected in raw command text.",example:"git reset --hard 'unterminated",intent:"stop_and_explain"}],ao=new Set(Fy.map((e)=>e.id)),Xi=Fy,eP=new Map(Xi.map((e)=>[e.id,e.intent])),Gy=new Set(Xi.filter((e)=>e.catastrophic).map((e)=>e.id));function v(e,t){return{id:e,reason:t,intent:eP.get(e)??"manual_only"}}function z(e,t){if(!e)return null;if(Gy.has(e.id))return e;if(t?.destructiveCommandProtectionEnabled===!1)return null;let n=t?.effectiveDestructiveCommandRules[e.id];return n&&!n.enabled?null:e}function de(e,t,n){if(Gy.has(t))return!0;if(e?.destructiveCommandProtectionEnabled===!1)return!1;return e?.effectiveDestructiveCommandRules[t]?.enabled??n}function Zy(e,t){return Object.freeze(Object.fromEntries(Xi.map((n)=>{let r=n.activationCapability?t[n.activationCapability]:void 0,o=r?.enabled??!0,i=e.destructiveCommandRuleOverrides[n.id],s=n.catastrophic?{enabled:!0,inheritedEnabled:!0,changesInherited:!1,source:"catastrophic",...i?{override:i}:{}}:e.destructiveCommandProtectionEnabled?i?{enabled:i==="on",inheritedEnabled:o,changesInherited:i==="on"!==o,source:"rule_override",...n.activationCapability?{activationCapability:n.activationCapability}:{},override:i}:{enabled:o,inheritedEnabled:o,changesInherited:!1,source:r?.source??"built_in_default",...n.activationCapability?{activationCapability:n.activationCapability}:{}}:{enabled:!1,inheritedEnabled:o,changesInherited:!1,source:"master_disabled",...n.activationCapability?{activationCapability:n.activationCapability}:{},...i?{override:i}:{}};return[n.id,Object.freeze(s)]})))}function jy(e,t){return Object.freeze({...e,effectiveDestructiveCommandRules:Zy(e,t)})}function Dt(e,t){oo(t,e,2);let n=e.toLowerCase(),r=n.trimStart(),o=r.startsWith("echo ")||r.startsWith("rg "),i=[{scan:"rm",label:"rm -rf"},{scan:"reset-hard",label:"git reset --hard"},{scan:"reset-merge",label:"git reset --merge"},{scan:"clean",label:"git clean -f"},{scan:"checkout",label:"git checkout --force"},{scan:"push-force",label:"git push --force"},{scan:"push-refspec",label:"git push --force"},{scan:"push-delete",label:"git push delete"},{scan:"branch",label:"git branch -D",caseSensitive:!0},{scan:"tag",label:"git tag -d"},{regex:/\bgit\s+stash\s+(drop|clear)\b/,label:"git stash drop/clear"},{regex:/\bgit\s+checkout\s+--\s/,label:"git checkout --"},{scan:"restore",label:"git restore without --staged"},{scan:"find",label:"find -delete",skipForEchoRg:!0},{regex:/\bdd\b[^\n|;&]*\bof=\/dev\/\S/,label:"dd of=/dev/",skipForEchoRg:!0},{regex:/\bmkfs(?:\.[a-z0-9_-]+)?\s+\/dev\/\S/,label:"mkfs /dev/",skipForEchoRg:!0},{regex:/\bshred\b\s+\S/,label:"shred",skipForEchoRg:!0}];for(let s of i){if(s.skipForEchoRg&&o)continue;let a=s.caseSensitive?e:n;if(s.regex)Ne(t,a);if((s.regex?.test(a)??!1)||s.scan&&Yi(a,s.scan,t))return v("raw-text.dangerous-command",`Unparseable command text contains a destructive pattern (${s.label}). Rewrite as a plain, parseable command so it can be analyzed.`)}return null}var tP=/^[A-Za-z_][A-Za-z0-9_]*=/;function By(e,t,n){let r=e.words[0];if(!t||!r||e.words.length!==1||e.dialect!=="posix")return!1;if(!r.quoted||r.provenance!=="literal")return!1;let o=/^([A-Za-z_][A-Za-z0-9_]*)=/.exec(r.text)?.[1];if(!o)return!1;oo(n,t.source,2);let i={anchored:new RegExp(`^\\$\\{?${o}(?![A-Za-z0-9_])`),loose:new RegExp(`\\$\\{?${o}(?![A-Za-z0-9_])`)};return Vy(t.nodes,r,i)}function Vy(e,t,n){return e.every((r)=>{if(r.kind==="connector")return!0;if(r.kind==="group"||r.kind==="function")return Vy(r.body.nodes,t,n);if(r.kind==="unknown")return!n.loose.test(r.source);return nP(r,t,n)})}function nP(e,t,n){if(e.nested.some((o)=>n.loose.test(o.source)))return!1;let r=e.words.findIndex((o)=>!tP.test(o.text));return e.words.every((o,i)=>o===t||Uy(o.raw,n.anchored,i!==r))&&e.redirections.every((o)=>(!o.heredoc||o.heredoc.quotedDelimiter||!n.loose.test(o.heredoc.body))&&(!o.target||Uy(o.target.raw,n.anchored,!0)))}function Uy(e,t,n){let r=!1,o=!1;for(let i=0;i<e.length;i++){let s=e[i];if(s==="\\"&&!r){i++;continue}if(!o&&s==="'"){r=!r;continue}if(!r&&s==='"'){o=!o;continue}if(r||s!=="$")continue;if(!t.test(e.slice(i)))continue;if(!o||!n)return!1}return!0}var Hy=Object.freeze({maxDerivedTokens:16384}),Ky="Command analysis exceeds CC Safety Net's derived-command work limit. Reduce nested or embedded command complexity and retry.";class De extends Error{constructor(){super("Command analysis exceeds CC Safety Net's derived-command work limit. Reduce nested or embedded command complexity and retry.");this.name="DerivedCommandWorkLimitError"}}function Qi(){return{derivedTokens:0}}function et(e,t){if(!Number.isSafeInteger(e.derivedTokens)||e.derivedTokens<0||e.derivedTokens>Hy.maxDerivedTokens||!Number.isSafeInteger(t)||t<0||t>Hy.maxDerivedTokens-e.derivedTokens)throw new De;e.derivedTokens+=t}import{isAbsolute as rP,resolve as qy}from"path";var Yy=64;function co(e,t,n){let r=rP(e)?qy(e):t?qy(t,e):void 0;if(!r)return;try{return X(r,n)}catch{return r}}function Jy(e){return!["/dev","/proc","/sys"].some((t)=>e===t||e.startsWith(`${t}/`))}function H(e){return F(e).toLowerCase()}function F(e){return e.split(/[\\/]/).pop()?.replace(/\.exe$/i,"")??e}var es=10,Xn=20,hn=/^[a-zA-Z][a-zA-Z0-9_-]*$/,Qn=256,me=new Set(["bash","sh","zsh","ksh","dash","fish","csh","tcsh"]),Xy=new Set(["python","python3","python2","node","ruby","perl"]),Qy=/^python(?:[23](?:\.\d+)*)?$/,ts=new Set(["echo","printf","cat","head","tail","less","more","grep","rg","ag","ack","sed","awk","cut","tr","sort","uniq","wc","tee","man","help","info","type","which","whereis","whatis","apropos","file","stat","ls","ll","dir","tree","pwd","date","cal","uptime","whoami","id","groups","hostname","uname","env","printenv","set","export","alias","history","jobs","fg","bg","test","true","false","read","return","exit","break","continue","shift","wait","trap","basename","dirname","realpath","readlink","md5sum","sha256sum","base64","xxd","od","hexdump","strings","diff","cmp","comm","join","paste","column","fmt","fold","nl","pr","expand","unexpand","rev","tac","shuf","seq","yes","sleep","logger","write","wall","mesg","notify-send"]);var yn="Interpreter code contains a dangerous command. Run the underlying command directly so it can be analyzed, or use the safer alternative for that command.",er="Interpreter one-liners are blocked by the active safety policy. Write the code to a script file and run it, or run the equivalent shell command directly.",ns=new Map([["python",new Set(["-c"])],["node",new Set(["-e","--eval"])],["ruby",new Set(["-e"])],["perl",new Set(["-e","-E"])]]),oP=new Set(["-p","--print"]),iP=new Map([["python",new Set(["c"])],["node",new Set(["e"])],["ruby",new Set(["e"])],["perl",new Set(["e","E"])]]),sP=new Map([["python",new Set(["W","X"])],["node",new Set(["C","r"])],["ruby",new Set(["C","E","F","I","r"])],["perl",new Set(["F","I","M","m"])]]),aP=new Map([["ruby",new Set(["0","K","W","x"])],["perl",new Set(["0","C","D","V","d","i","l","x"])]]),cP=new Map([["python",new Set(["m"])]]),lP=new Map([["node",new Set(["--allow-fs-read","--allow-fs-write","--conditions","--cpu-prof-dir","--cpu-prof-interval","--cpu-prof-name","--debug-port","--diagnostic-dir","--disable-proto","--disable-warning","--dns-result-order","--env-file","--env-file-if-exists","--experimental-package-map","--experimental-test-isolation","--experimental-test-tag-filter","--heap-prof-dir","--heap-prof-interval","--heap-prof-name","--heapsnapshot-near-heap-limit","--heapsnapshot-signal","--icu-data-dir","--input-type","--inspect-port","--inspect-publish-uid","--localstorage-file","--max-http-header-size","--max-old-space-size-percentage","--network-family-autoselection-attempt-timeout","--openssl-config","--redirect-warnings","--report-dir","--report-directory","--report-filename","--report-signal","--secure-heap","--secure-heap-min","--test-concurrency","--test-coverage-branches","--test-coverage-exclude","--test-coverage-functions","--test-coverage-include","--test-coverage-lines","--test-global-setup","--test-isolation","--test-name-pattern","--test-random-seed","--test-reporter","--test-reporter-destination","--test-rerun-failures","--test-shard","--test-skip-pattern","--test-timeout","--title","--tls-cipher-list","--tls-keylog","--trace-event-categories","--trace-event-file-pattern","--trace-require-module","--unhandled-rejections","--use-largepages","--v8-pool-size","--watch-kill-signal"])],["python",new Set(["--check-hash-based-pycs"])],["ruby",new Set(["--backtrace-limit","--crash-report","--disable","--enable","--encoding","--external-encoding","--internal-encoding","--parser"])]]),uP=new Set(["always","default","never"]),dP=new Set(["--backtrace-limit","--crash-report","--disable","--enable"]),mP=/\\\r?\n/g,fP=new Map([["python",[{selector:"-c",kind:"inline-code",valueForm:"attached-or-separate"},{selector:"-m",kind:"module-file",valueForm:"attached-or-separate"}]],["node",[{selector:"-e",kind:"inline-code",valueForm:"separate-only"},{selector:"--eval",kind:"inline-code",valueForm:"equals-or-separate"},{selector:"-p",kind:"inline-code",valueForm:"separate-only"},{selector:"--print",kind:"inline-code",valueForm:"separate-only"},{selector:"-r",kind:"module-file",valueForm:"separate-only"},{selector:"--require",kind:"module-file",valueForm:"equals-or-separate"},{selector:"--import",kind:"module-file",valueForm:"equals-or-separate"},{selector:"--loader",kind:"module-file",valueForm:"equals-or-separate"},{selector:"--experimental-loader",kind:"module-file",valueForm:"equals-or-separate"}]],["ruby",[{selector:"-e",kind:"inline-code",valueForm:"attached-or-separate"},{selector:"-r",kind:"module-file",valueForm:"attached-or-separate"}]],["perl",[{selector:"-e",kind:"inline-code",valueForm:"attached-or-separate"},{selector:"-E",kind:"inline-code",valueForm:"attached-or-separate"},{selector:"-M",kind:"module-file",valueForm:"attached-only"},{selector:"-m",kind:"module-file",valueForm:"attached-only"}]]]);function rs(e){return is(e).code}function os(e){return is(e).sources}function tb(e){return fP.get(as(e))??[]}function is(e){let t=as(e[0]??"");if(!ns.has(t))return{code:null,sources:[],optionsOpen:!1};let n=[],r=[],o=!0;for(let i=1;i<e.length;i++){let s=e[i];if(s===void 0)break;if(s==="--")return tt(t,n,r,o,e[i+1]===void 0?void 0:i+1,e[i+1]);if(s===""||s==="-"||!s.startsWith("-"))return tt(t,n,r,o,i,s);if(t==="node"&&oP.has(s)){let d=e[i+1];if(d===void 0)return tt(t,n,r,o);if(d.startsWith("-"))continue;n.push({tokenIndex:i+1,value:d}),r.push({tokenIndex:i+1,kind:"inline-code",value:d}),i++;continue}if(gP(t,s)){let d=e[i+1];if(d===void 0)return tt(t,n,r,o);if(n.push({tokenIndex:i+1,value:d}),r.push({tokenIndex:i+1,kind:"inline-code",value:d}),t==="python")return tt(t,n,r,o);i++;continue}let a=/^--eval=(.*)$/s.exec(s);if(hP(t)&&a){let d=a[1]??"";n.push({tokenIndex:i,value:d}),r.push({tokenIndex:i,kind:"inline-code",value:d});continue}if(t==="node"){let d=pP(s);if(d){if(d.attached){if(o&&=d.value!=="",d.value!=="")r.push({tokenIndex:i,kind:"module-file",value:d.value});continue}let m=e[i+1];if(m===void 0||m.startsWith("-"))return o=!1,tt(t,n,r,o);r.push({tokenIndex:i+1,kind:"module-file",value:m}),i++;continue}}if(t==="python"&&s.startsWith("--check-hash-based-pycs=")||t==="node"&&(s==="--conditions="||s==="--diagnostic-dir="||s==="--title=")||t==="ruby"&&(s==="--disable="||s==="--enable="))return tt(t,n,r,o);if(lP.get(t)?.has(s)){let d=e[i+1];if(d===void 0||d.startsWith("-")&&!(t==="ruby"&&dP.has(s))||t==="python"&&!uP.has(d))return tt(t,n,r,o);i++;continue}if(s.startsWith("--"))continue;let c,l=!1;for(let d=1;d<s.length;d++){let m=s[d];if(m===void 0)break;if(cP.get(t)?.has(m)){let f=s.slice(d+1),p=f||e[i+1];if(p!==void 0)r.push({tokenIndex:f?i:i+1,kind:"module-file",value:p});return tt(t,n,r,o)}if(iP.get(t)?.has(m)){c=s.slice(d+1)||e[i+1],l=d+1===s.length;break}if(t==="node"&&m==="r"){if(s==="-r"){let f=e[i+1];if(o&&=f!==void 0&&!f.startsWith("-"),o&&f!==void 0)r.push({tokenIndex:i+1,kind:"module-file",value:f});i++}else o=!1;break}if(t==="ruby"&&m==="r"){let f=s.slice(d+1),p=f||e[i+1];if(o&&=p!==void 0,p!==void 0)r.push({tokenIndex:f?i:i+1,kind:"module-file",value:p});if(!f)i++;break}if(t==="perl"&&(m==="M"||m==="m")){let f=s.slice(d+1);if(f)r.push({tokenIndex:i,kind:"module-file",value:f});else if(o=!1,d+1===s.length)i++;break}if(sP.get(t)?.has(m)){if(d+1===s.length)i++;break}if(aP.get(t)?.has(m)&&d+1<s.length)break}if(c===void 0)continue;let u=l?i+1:i;if(n.push({tokenIndex:u,value:c}),r.push({tokenIndex:u,kind:"inline-code",value:c}),t==="python")return tt(t,n,r,o);if(l)i++}return tt(t,n,r,o,void 0,void 0,!0)}function tt(e,t,n,r,o,i,s=!1){let a=e==="node"?t.slice(-1):t,c=new Set(a.map((u)=>u.tokenIndex)),l=n.filter((u)=>u.kind!=="inline-code"||c.has(u.tokenIndex));if(r&&t.length===0&&o!==void 0&&i!==void 0)l.push({tokenIndex:o,kind:"main-script",value:i});return{code:(e==="node"?a[0]?.value:a.map((u)=>u.value).join(`
|
|
27
|
+
`))||null,sources:r?l:[],optionsOpen:r&&s}}function pP(e){for(let t of["--import","--loader","--experimental-loader","--require"]){if(e===t)return{attached:!1,value:""};if(e.startsWith(`${t}=`))return{attached:!0,value:e.slice(t.length+1)}}return}function Me(e){return ns.has(as(e))}function ss(e,t){return as(e)==="node"&&/^\s*console\.(?:log|info|warn|error)\(\s*(?:"(?:\\.|[^"\\\r\n])*"|'(?:\\.|[^'\\\r\n])*')\s*\)\s*;?\s*$/.test(t)}function as(e){let t=F(e).toLowerCase();return Qy.test(t)?"python":t}function gP(e,t){return ns.get(e)?.has(t)??!1}function hP(e){return ns.get(e)?.has("--eval")??!1}function tr(e,t){let n=vP(e,t);if(!eb(n,t))return!1;Ne(t,n);let r=bP(n);if(eb(r,t))return!0;return Ne(t,r),yP.test(r)}var yP=/`|%x|\b(?:system|exec|spawn|popen|subprocess|child_process|open3|eval|fork|qx)/i;function bP(e){let t=[],n=0,r=0;while(r<e.length){let o=e[r];if(o!=="'"&&o!=='"'){r++;continue}let i=e.startsWith(o.repeat(3),r)?o.repeat(3):o,s=r+i.length;while(s<e.length&&!e.startsWith(i,s))s+=e[s]==="\\"?2:1;if(s>=e.length)break;t.push(e.slice(n,r)," "),r=s+i.length,n=r}return t.push(e.slice(n)),t.join("")}function eb(e,t){if(qi(e,"rm",t))return!0;for(let r of[/\bgit[^\S\n]+checkout[^\S\n]+--[^\S\n]/,/\bgit[^\S\n]+stash[^\S\n]+(drop|clear)\b/])if(Ne(t,e),r.test(e))return!0;if(qi(e,"dd",t))return!0;for(let r of[/\bmkfs(?:\.[A-Za-z0-9_-]+)?\s+\/dev\/[^\s'"]+/,/\bshred\b\s+/])if(Ne(t,e),r.test(e))return!0;if(qi(e,"find",t))return!0;let n=e.split(/[\n\r\u2028\u2029]/);return["reset-hard","reset-merge","clean","checkout","push-force","push-refspec","push-delete","branch","tag","restore"].some((r)=>(Ne(t,e),n.some((o)=>Yi(o,r))))}function vP(e,t){return Ne(t,e),e.replace(mP,"")}var K=Object.freeze({maxChildAnalyses:1024,maxDerivedTokens:16384,maxDerivedBytes:1048576,maxPlaceholderReplacements:16384}),nb="Parallel command expands beyond CC Safety Net's analysis limits. Reduce the template or explicit argument list and retry.";class ls extends Error{constructor(){super("Parallel command expands beyond CC Safety Net's analysis limits. Reduce the template or explicit argument list and retry.");this.name="ParallelAnalysisLimitError"}}function rb(){return{childAnalyses:0,derivedTokens:0,derivedBytes:0,placeholderReplacements:0}}function $e(e,t){let n=t.childAnalyses??0,r=t.derivedTokens??0,o=t.derivedBytes??0,i=t.placeholderReplacements??0;if(cs(e.childAnalyses,n,K.maxChildAnalyses)||cs(e.derivedTokens,r,K.maxDerivedTokens)||cs(e.derivedBytes,o,K.maxDerivedBytes)||cs(e.placeholderReplacements,i,K.maxPlaceholderReplacements))throw new ls;e.childAnalyses+=n,e.derivedTokens+=r,e.derivedBytes+=o,e.placeholderReplacements+=i}function cs(e,t,n){return!Number.isSafeInteger(e)||e<0||e>n||!Number.isSafeInteger(t)||t<0||t>n-e}import{isAbsolute as Pu,normalize as Ok,parse as zk,posix as Sv,resolve as ar,sep as Ru}from"path";import{isAbsolute as _P,join as ob,normalize as ab,parse as SP,sep as ib}from"path";var xP=["/tmp","/var/tmp","/private/tmp","/private/var/tmp"],CP=`
|
|
28
|
+
`;function lo(e,t){if(pt(e,t))return!0;if(!e.has("TMPDIR"))return!1;return!ql(e.get("TMPDIR")??"",t)}function Mt(e,t){if(e.has("TMPDIR"))return ql(e.get("TMPDIR")??"",t);let n=Yl(e,t);if(n===void 0)return!0;return ql(n,t)}function Yl(e,t){return ub(e,t,"TMPDIR")}function ql(e,t){if(!e)return!1;if(wP(e))return!1;return Jl(e,t)}function pt(e,t){let n=ub(e,t,"IFS");return n!==void 0&&n!==""&&n!==CP}function Jl(e,t){let n=us(e,t.paths);if(n===null)return!1;return lb(t).some((r)=>PP(n,r))}function cb(e,t){let n=us(e,t.paths);if(n===null)return!1;return lb(t).some((r)=>ds(r)===ds(n))}var sb=new WeakMap;function lb(e){let t=sb.get(e);if(t)return t;let n=EP(e);return sb.set(e,n),n}function EP(e){let t=xP.map((r)=>us(r,e.paths)??ab(r)),n=us(e.tmpdir,e.paths);if(!n)return t;if(process.platform==="win32")return[...t,n];if(process.platform==="darwin"&&RP(n))return[...t,n];return t}function wP(e){return/[\s$`*?[]/.test(e)||/\{[^{}]*(?:,|\.\.)[^{}]*\}/.test(e)||/[+@!]\([^)]*\)/.test(e)}function ub(e,t,n){return e.has(n)?e.get(n):t.env.get(n)}function RP(e){return/^\/(?:private\/)?var\/folders\/[^/]{2}\/[^/]+\/T$/.test(e)}function us(e,t){try{let n=ab(e);if(!_P(n))return n;let r=SP(n).root,o=n.slice(r.length).split(/[\\/]+/).filter(Boolean),i=r;for(let s=0;s<o.length;s++){let a=ob(i,o[s]??"");if(t.entryKind(a)==="missing")return ob(a,...o.slice(s+1));let c=t.realpath(a);if(c===null)return null;i=c}return i}catch{return null}}function PP(e,t){let n=ds(e),r=ds(t);if(n===r)return!0;let o=r.endsWith(ib)?r:`${r}${ib}`;return n.startsWith(o)}function ds(e){return process.platform==="win32"?e.toLowerCase():e}import{statSync as yk}from"fs";import{isAbsolute as mv,join as bk,relative as fv}from"path";import{isAbsolute as db,parse as AP}from"path";var fb=/^[A-Za-z_][A-Za-z0-9_]*=/;function Ke(e){if(!fb.test(e))return null;let t=e.indexOf("=");return{name:e.slice(0,t),value:e.slice(t+1)}}function ms(e){let t=new Map,n=0;while(n<e.length){let r=e[n];if(!r)break;let o=Ke(N(r));if(!o)break;t.set(o.name,o.value),n++}return{words:e.slice(n),envAssignments:t}}function pb(e){let t=e.toLowerCase();return e.includes("=")||t==="sudo"||t==="env"||t==="command"||t==="builtin"}function bn(e,t,n,r){if(!pb(nr(e)))return{words:e,envAssignments:new Map,cwd:n,rewritten:!1};let o=new Set(e),i=e,s=new Map,a=new Map(r??[]),c=[],l=n;for(let d=0;d<Xn;d++){let m=mb(i),f=ms(i);for(let[h,y]of f.envAssignments)s.set(h,y),a.set(h,y);if(i=f.words,i.length===0)break;while(i.length>0&&nr(i).includes("=")&&!TP(i)){let h=IP(nr(i),a,t.env)??Bi(nr(i),t.env,a);if(h)s.set(h.name,h.value),a.set(h.name,h.value);i=i.slice(1)}if(i.length===0)break;let p=nr(i).toLowerCase();if(p!=="sudo"&&p!=="env"&&p!=="command"&&p!=="builtin")break;if(p==="sudo"){let h=zP(i,t.paths,l);if(i=h.words,h.cwd!==void 0)l=h.cwd}if(p==="env"){let h=MP(i,l,a,t);if(c.push(...h.envSplitValues??[]),i=h.words,h.cwd!==void 0)l=h.cwd;for(let[y,b]of h.envAssignments)s.set(y,b),a.set(y,b)}if(p==="command")i=$P(i);if(p==="builtin")i=i.slice(nt(i,1)==="--"?2:1);if(mb(i)===m)break}let u=ms(i);for(let[d,m]of u.envAssignments)s.set(d,m),a.set(d,m);return{words:u.words,envAssignments:s,cwd:l,envSplitValues:c.length>0?c:void 0,rewritten:kP(u.words,o)}}function kP(e,t){return e.some((n)=>!t.has(n))}function mb(e){return e.map(N).join(" ")}function nr(e){let t=e[0];return t?N(t):""}function nt(e,t){let n=e[t];return n?N(n):void 0}function TP(e){return fb.test(nr(e))}function IP(e,t,n){if(!e.startsWith("TMPDIR+="))return null;return{name:"TMPDIR",value:`${t.get("TMPDIR")??n.get("TMPDIR")??""}${e.slice(8)}`}}var OP=new Set(["-u","-g","-C","-D","-h","-p","-r","-t","-T","-U"]);function zP(e,t,n){let r=1,o=n;while(r<e.length){let i=nt(e,r);if(!i)break;if(i==="--")return{words:e.slice(r+1),cwd:o};if(!i.startsWith("-"))break;if(i==="-D"||i==="--chdir"){let s=nt(e,r+1);o=s?uo(o,s,t):null,r+=2;continue}if(i.startsWith("--chdir=")){o=uo(o,i.slice(8),t),r++;continue}if(i.startsWith("-D")&&i.length>2){o=uo(o,i.slice(2),t),r++;continue}if(i==="-i"||i==="--login"){o=null,r++;continue}if(OP.has(i)){r+=2;continue}r++}return{words:e.slice(r),cwd:o}}var NP=new Set(["-i","-0","--null"]),DP=new Set(["-u","--unset","-C","--chdir","-P"]);function MP(e,t,n,r){let o=new Map,i=[],s=t,a=1,c=(l)=>({words:e.slice(l),envAssignments:o,cwd:s,envSplitValues:i.length>0?i:void 0});while(a<e.length){let l=nt(e,a);if(!l)break;if(l==="--")return c(a+1);if(l==="-i"||l==="--ignore-environment"||l==="-"){o.clear();for(let d of n.keys())o.set(d,"");o.set("TMPDIR",""),a++;continue}if(NP.has(l)){a++;continue}if(l==="-u"||l==="--unset"){let d=nt(e,a+1);if(d!==void 0)o.set(d,"");a+=2;continue}if(l.startsWith("-u")&&l.length>2&&!l.startsWith("-u=")){o.set(l.slice(2),""),a++;continue}if(l.startsWith("--unset=")){o.set(l.slice(8),""),a++;continue}let u=l==="-S"||l==="--split-string"?{value:nt(e,a+1),consumed:2}:l.startsWith("-S")&&l.length>2?{value:l.slice(2),consumed:1}:l.startsWith("--split-string=")?{value:l.slice(15),consumed:1}:null;if(u){if(u.value!==void 0)i.push(u.value);return s=null,c(a+u.consumed)}if(DP.has(l)){if(l==="-C"||l==="--chdir"){let d=nt(e,a+1);s=d?uo(s,d,r.paths):null}a+=2;continue}if(l.startsWith("-u=")){a++;continue}if(l.startsWith("-C")&&l.length>2||l.startsWith("--chdir=")){let d=l.startsWith("--chdir=")?l.slice(8):l.startsWith("-C=")?l.slice(3):l.slice(2);s=uo(s,d,r.paths),a++;continue}if(l.startsWith("-P")){a++;continue}if(l.startsWith("-")){a++;continue}if(!Ke(l))break;while(a<e.length){let d=Ke(nt(e,a)??"");if(!d)break;o.set(d.name,d.value),a++}if(nt(e,a)==="--")a++;return c(a)}return c(a)}function uo(e,t,n){if(t==="")return null;if(!e&&!db(t))return null;let r=db(t)?AP(t).root:n.realpath(e??"/");if(r===null)return null;try{return jt(r,t,n)}catch{return null}}function $P(e){if(nt(e,1)==="-v")return[...j(["type"]),...e.slice(2)];let t=1;while(t<e.length){let n=nt(e,t);if(!n)break;if(n==="-p"||n==="-v"||n==="-V"){t++;continue}if(n==="--")return e.slice(t+1);if(n.startsWith("-")&&!n.startsWith("--")&&n.length>1){if(!/^[pvV]+$/.test(n.slice(1)))break;t++;continue}break}return e.slice(t)}var LP=/['"\\$`{}#]/;function fs(e,t){if(e.some((r)=>LP.test(r)))return null;let n=[...e.flatMap((r)=>r.split(/\s+/).filter((o)=>o.length>0)),...t];return n.length<=64?n:null}function Bt(e,t,n){return ps(e,t,n).tokens}function WP(e){let t=[],n="",r=0;while(r<e.length){let o=e.charAt(r);if(o==='"'||o==="'"){let i=e.indexOf(o,r+1);if(i===-1)return e.split(/\s+/).map((s)=>s.replace(/["']/g,"")).filter((s)=>s.length>0);n+=e.slice(r+1,i),r=i+1;continue}if(/\s/.test(o)){if(n.length>0)t.push(n);n="",r++;continue}n+=o,r++}if(n.length>0)t.push(n);return t}function Vt(e,t,n,r=0){let o=ps(e,t,n),i=(o.envSplitValues??[]).flatMap(WP);if(i.length===0)return o.tokens;let s=[...i,...o.tokens];if(r>=8)return s;return Vt(s,t,n,r+1)}function ps(e,t,n,r){if(!pb(e[0]??""))return{tokens:[...e],envAssignments:new Map,cwd:n};let o=bn(j(e),t,n,r);return{tokens:o.words.map(N),envAssignments:o.envAssignments,cwd:o.cwd,envSplitValues:o.envSplitValues}}import{basename as dk,isAbsolute as mk,normalize as fk,resolve as cv}from"path";function gs(){return{words:[],redirections:[],nested:[],start:-1,end:-1,reset(){this.words=[],this.redirections=[],this.nested=[],this.start=-1,this.end=-1}}}function FP(e){return Object.freeze({...e,span:Object.freeze(e.span),words:Object.freeze(e.words),redirections:Object.freeze(e.redirections.map((t)=>Object.freeze({...t,span:Object.freeze(t.span),...t.heredoc?{heredoc:Object.freeze({...t.heredoc,bodySpan:Object.freeze(t.heredoc.bodySpan),terminatorSpan:Object.freeze(t.heredoc.terminatorSpan)})}:{}}))),nested:Object.freeze(e.nested.map((t)=>Re(t)))})}function hs(e,t,n){e.push(n),t.reset()}function GP(e,t,n,r,o){if(r<=n)return;e.push({raw:t.slice(n,r),span:{start:n,end:r},provenance:o})}function ys(e){let t=[];return{parts:t,push:(n,r,o)=>GP(t,e,n,r,o)}}function Xl(e){let t=e.parts??[{raw:e.raw,span:e.span,provenance:e.provenance}];return Object.freeze({kind:"word",...e,span:Object.freeze(e.span),parts:Object.freeze(t.map((n)=>Object.freeze({...n,span:Object.freeze(n.span)})))})}function rr(e,t,n,r,o,i,s){return Xl({text:r,raw:e.slice(t,n),span:{start:t,end:n},provenance:o,quoted:i,...s?{parts:s}:{}})}function Re(e){return Object.freeze({...e,span:Object.freeze(e.span),issues:Object.freeze(e.issues.map((t)=>Object.freeze({...t,span:Object.freeze(t.span)}))),nodes:Object.freeze(e.nodes.map((t)=>{if(t.kind==="command")return FP(t);if(t.kind==="group"||t.kind==="function")return Object.freeze({...t,span:Object.freeze(t.span),body:Re(t.body)});return Object.freeze({...t,span:Object.freeze(t.span)})}))})}function Ql(e,t,n){if(t>=n||hb(e[t]??""))return null;let r="",o=!1,i=!1,s=t;while(s<n&&!hb(e[s]??"")){let a=e[s]??"";if(a==="'"){o=!0;let c=gb(e,s+1,n,"'");r+=c.text,i||=!c.closed,s=c.next;continue}if(a==='"'){o=!0;let c=gb(e,s+1,n,'"');r+=c.text,i||=!c.closed,s=c.next;continue}if(a==="\\"){o=!0;let c=e[s+1];if(!c||c===`
|
|
29
|
+
`||c==="\r"){i=!0;break}r+=c,s+=2;continue}if(a==="`"||e.startsWith("$(",s)||e.startsWith("${",s)||e.startsWith("<(",s)||e.startsWith(">(",s))i=!0;r+=a,s++}return{delimiter:r,quoted:o,next:s,span:{start:t,end:s},ambiguous:i}}function eu(e,t,n,r){let o=[],i=t;for(let s of r){let a=i,c=!1;while(i<n){let l=ZP(e,i,n);if((s.stripTabs?l.text.replace(/^\t+/,""):l.text)===s.delimiter){s.attach({body:s.stripTabs?jP(e.slice(a,i)):e.slice(a,i),delimiter:s.delimiter,quotedDelimiter:s.quotedDelimiter,bodySpan:{start:a,end:i},terminatorSpan:{start:i,end:l.contentEnd}}),i=l.next,c=!0;break}if(l.next<=i)break;i=l.next}if(c)continue;return o.push({code:"unterminated-heredoc",message:`heredoc delimiter ${s.delimiter} was not found`,span:s.declarationSpan}),{next:n,issues:o,terminated:!1}}return{next:i,issues:o,terminated:!0}}function gb(e,t,n,r){let o="",i=t;while(i<n&&e[i]!==`
|
|
30
|
+
`&&e[i]!=="\r"){let s=e[i]??"";if(s===r)return{text:o,next:i+1,closed:!0};if(r==='"'&&s==="\\"&&e[i+1]){let a=e[i+1]??"";o+=["$","`",'"',"\\"].includes(a)?a:`\\${a}`,i+=2;continue}o+=s,i++}return{text:o,next:i,closed:!1}}function hb(e){return/[\s;&|<>)]/u.test(e)||e==="`"}function ZP(e,t,n){let r=t;while(r<n&&e[r]!==`
|
|
31
31
|
`&&e[r]!=="\r")r++;let o=r>=n?n:e[r]==="\r"&&e[r+1]===`
|
|
32
|
-
`?r+2:r+1;return{text:e.slice(t,r),contentEnd:r,next:o}}function
|
|
33
|
-
`||
|
|
34
|
-
`?m+2:m+1,
|
|
35
|
-
`&&e[m]!=="\r")m++;continue}let
|
|
36
|
-
`){
|
|
37
|
-
`){
|
|
38
|
-
`){
|
|
32
|
+
`?r+2:r+1;return{text:e.slice(t,r),contentEnd:r,next:o}}function jP(e){return e.replace(/(^|\r\n?|\n)\t+/g,"$1")}var Sb=new Set(["&&","||","|","|&"]);function xb(e,t){let n={start:0,end:e.length};if(e.length>t.maxInputLength)return Re({kind:"program",dialect:"posix",source:e,span:n,status:"limited",issues:[{code:"input-limit",message:`command exceeds ${t.maxInputLength} UTF-16 code units`,span:n}],nodes:[]});let r=_s(e,0,e.length,t,{used:0,max:t.maxWords},0);return Re({kind:"program",dialect:"posix",source:e,span:n,status:Cs(r.issues,r.limited),issues:r.issues,nodes:r.nodes})}function _s(e,t,n,r,o,i,s){let a=[],c=[],l=gs(),u=[],d=()=>{if(l.words.length===0&&l.redirections.length===0)return;let f={start:l.start,end:l.end},p=l.words.map((h)=>h.text);hs(a,l,{kind:"command",dialect:"posix",source:e.slice(f.start,f.end),span:f,words:l.words,redirections:l.redirections,nested:l.nested,displayText:c.length>0&&a.length===0?e.slice(t,n):p.join(" ")})},m=t;while(m<n){let f=e[m];if(!f)break;if(s&&f===s)return d(),_b(a,c),{nodes:a,issues:c,next:m+1,closed:!0,limited:!1,pendingHeredocs:u};if(xs(f)){if(f===`
|
|
33
|
+
`||f==="\r"){d();let x=f==="\r"&&e[m+1]===`
|
|
34
|
+
`?m+2:m+1,P=a.at(-1);if(P?.kind!=="connector"||!Sb.has(P.operator))a.push(Object.freeze({kind:"connector",operator:e.slice(m,x),span:Object.freeze({start:m,end:x})}));if(u.length>0){let L=eu(e,x,n,u.splice(0));c.push(...L.issues),m=L.next;continue}m=x;continue}m++;continue}if(f==="#"){while(m<n&&e[m]!==`
|
|
35
|
+
`&&e[m]!=="\r")m++;continue}let p=l.start===-1?cA(e,m,n):void 0;if(p){if(nu(a,c,m),i>=r.maxDepth)return or(a,c,m,"depth-limit",r.maxDepth);if(!tu(o))return or(a,c,m,"word-limit",r.maxWords);let x=_s(e,p.braceIndex+1,n,r,o,i+1,"}"),P=x.next,L={start:p.braceIndex+1,end:x.closed?P-1:P},k=yb(e,L,x);if(a.push({kind:"function",name:p.name,span:{start:m,end:P},body:k}),c.push(...x.issues),x.pendingHeredocs.length>0||fo(x.nodes))c.push({code:"unsupported-heredoc-context",message:"heredocs attached inside function bodies are not supported safely",span:{start:m,end:P}});if(u.push(...x.pendingHeredocs),x.limited)return vs(a,c,x.next);if(!x.closed)c.push({code:"unclosed-function-body",message:"function body is not closed",span:{start:p.braceIndex,end:P}});m=P;continue}let h=Ss(e,m);if(h){if(d(),!Tb(a.at(-1)))c.push({code:"unexpected-connector",message:`connector ${h} has no preceding command`,span:{start:m,end:m+h.length}});a.push(Object.freeze({kind:"connector",operator:h,span:Object.freeze({start:m,end:m+h.length})})),m+=h.length;continue}if(f===")"){d(),c.push({code:"unexpected-closing-delimiter",message:"closing parenthesis has no matching opening parenthesis",span:{start:m,end:m+1}}),a.push({kind:"unknown",source:f,span:{start:m,end:m+1}}),m++;continue}if((f==="("||f==="{"&&YP(e,m,n))&&l.start===-1){if(nu(a,c,m),i>=r.maxDepth)return or(a,c,m,"depth-limit",r.maxDepth);let x=f==="("?")":"}",P=_s(e,m+1,n,r,o,i+1,x),L=P.next,k={start:m+1,end:P.closed?L-1:L},U=yb(e,k,P);if(a.push({kind:"group",style:f==="("?"subshell":"brace",span:{start:m,end:L},body:U}),c.push(...P.issues),P.pendingHeredocs.length>0||fo(P.nodes))c.push({code:"unsupported-heredoc-context",message:"heredocs attached inside command groups are not supported safely",span:{start:m,end:L}});if(u.push(...P.pendingHeredocs),P.limited)return vs(a,c,P.next);if(!P.closed)c.push({code:f==="("?"unclosed-subshell":"unclosed-brace-group",message:`${f} group is not closed`,span:{start:m,end:L}});m=L;continue}let y=(f==="<"||f===">")&&e[m+1]!=="("?VP(e,m):null;if(y){let x=l.words.at(-1),P=x&&x.span.end===m&&/^[0-9]+$/.test(x.raw)?Number(x.raw):void 0;if(P!==void 0)l.words.pop();let L=P===void 0?m:x?.span.start??m;l.start=l.start===-1?m:l.start;let k=m+y.length;while(k<n&&/[ \t]/.test(e[k]??""))k++;let U=e[k],ie=k>m+y.length&&U==="#",se=!U||xs(U)||!!Ss(e,k)||U===s||U===")"||ie||(U==="<"||U===">")&&e[k+1]!=="(",J=y==="<<"||y==="<<-"?Ql(e,k,n):void 0,B=J?{word:rr(e,k,J.next,J.delimiter,"literal",J.quoted),nested:[],issues:[],next:J.next,limited:!1}:!se?ru(e,k,n,r,o,i):void 0;if(B){if(c.push(...B.issues),B.limited)return vs(a,c,B.next);if(!tu(o))return or(a,c,B.next,"word-limit",r.maxWords)}let w=B?.next??m+y.length,T={kind:"redirection",operator:y,span:{start:L,end:w},...P===void 0?{}:{fd:P},...B?{target:B.word}:{}};if(l.redirections.push(T),y==="<<"||y==="<<-")if(!J)c.push({code:"missing-heredoc-delimiter",message:"heredoc redirection requires a delimiter word",span:{start:m,end:m+y.length}});else{if(J.ambiguous||J.delimiter.length===0)c.push({code:"ambiguous-heredoc-delimiter",message:"heredoc delimiter cannot be determined safely",span:J.span});u.push({delimiter:J.delimiter,quotedDelimiter:J.quoted,stripTabs:y==="<<-",declarationSpan:{start:L,end:w},attach:(V)=>{T.heredoc=V}})}else if(!B)c.push({code:"missing-redirection-target",message:`redirection ${y} requires a target word`,span:{start:m,end:m+y.length}});if(B)l.nested.push(...B.nested);l.end=w,m=w;continue}if(l.start===-1)nu(a,c,m);let b=ru(e,m,n,r,o,i);if(c.push(...b.issues),b.limited)return vs(a,c,b.next);let R=QP(l.words)?oA(e,b.word,o.max-o.used,r.maxDepth,r.maxInputLength):void 0;if(R?.limitCode)return or(a,c,b.next,R.limitCode,R.limitCode==="word-limit"?r.maxWords:R.limitCode==="depth-limit"?r.maxDepth:r.maxInputLength);let A=R?.words??[b.word];for(let x of A){if(!tu(o))return or(a,c,b.next,"word-limit",r.maxWords);l.words.push(x)}l.start=l.start===-1?m:l.start,l.end=b.next,l.nested.push(...b.nested),m=b.next>m?b.next:m+1}return d(),_b(a,c),c.push(...lA(u)),{nodes:a,issues:c,next:m,closed:s===void 0,limited:!1,pendingHeredocs:[]}}function yb(e,t,n){return{kind:"program",dialect:"posix",source:e.slice(t.start,t.end),span:t,status:Cs(n.issues,n.limited),issues:n.issues,nodes:n.nodes}}function ru(e,t,n,r,o,i){let s="",a=t,c=!1,l="literal",u=[],d=[],m=!1;while(a<n){let f=e[a],p=(f==="<"||f===">")&&e[a+1]==="(";if(!f||xs(f)||(f===";"||f==="|"||f==="&")&&Ss(e,a)||(f==="<"||f===">")&&!p)break;if(f===")")break;if(f==="'"){c=!0;let y=e.indexOf("'",a+1);if(y===-1||y>=n){s+=e.slice(a+1,n),d.push({code:"unclosed-single-quote",message:"single-quoted word is not closed",span:{start:a,end:n}}),a=n;break}s+=e.slice(a+1,y),a=y+1;continue}if(f==='"'){c=!0;let y=UP(e,a,n,r,o,i);if(s+=y.text,u.push(...y.nested),d.push(...y.issues),m||=y.limited,l=mo(l,y.provenance),a=y.next,m)break;continue}if(e.startsWith("$'",a)){c=!0;let y=HP(e,a+2,n);if(s+=y.text,d.push(...y.issues),!y.closed)d.push({code:"unclosed-ansi-c-quote",message:"ANSI-C quoted word is not closed",span:{start:a,end:n}});a=y.next;continue}if(f==="\\"){let y=e[a+1];if(!y){d.push({code:"trailing-escape",message:"escape has no following character",span:{start:a,end:a+1}}),a++;break}if(y===`
|
|
36
|
+
`){a+=2;continue}s+=y,a+=2;continue}let h=f==="$"||f==="<"||f===">"||f==="`"?ou(e,a,n,r,o,i):null;if(h){let y=Cb(h,u,d);if(m||=y.limited,l=mo(l,y.provenance),a=y.next,m)break;continue}if(f==="$"){let y=Rb(e,a,n,s,l);s=y.text,l=y.provenance,a=y.next;continue}if(f==="*"||f==="?"||f==="[")l=mo(l,"glob");s+=f,a++}return{word:rr(e,t,a,s,l,c,l==="literal"?void 0:qP(e,t,a)),nested:u,issues:d,next:a,limited:m}}function UP(e,t,n,r,o,i){let s="",a="literal",c=[],l=[],u=!1,d=t+1;while(d<n){let m=e[d];if(m==='"')return{text:s,provenance:a,nested:c,issues:l,next:d+1,limited:u};if(m==="\\"&&e[d+1]){let p=e[d+1]??"";if(p===`
|
|
37
|
+
`){d+=2;continue}if(p==="\r"&&e[d+2]===`
|
|
38
|
+
`){d+=3;continue}s+=["$","`",'"',"\\"].includes(p)?p:`\\${p}`,d+=2;continue}if(e.startsWith("$((",d)){let p=iu(e,d+3,n,"))"),h=p===-1?n:p+2;if(s+=e.slice(d,h),p===-1)l.push({code:"unclosed-arithmetic",message:"$(( substitution is not closed",span:{start:d,end:h}});d=h;continue}let f=ou(e,d,n,r,o,i);if(f){let p=Cb(f,c,l);if(d=p.next,u||=p.limited,a=mo(a,p.provenance),u)return{text:s,provenance:a,nested:c,issues:l,next:d,limited:u};continue}if(m==="$"){let p=Rb(e,d,n,s,a);s=p.text,a=p.provenance,d=p.next;continue}s+=m??"",d++}return l.push({code:"unclosed-double-quote",message:"double-quoted word is not closed",span:{start:t,end:n}}),{text:s,provenance:a,nested:c,issues:l,next:n,limited:u}}function ou(e,t,n,r,o,i){let s=e.startsWith("$((",t),a=e.startsWith("$(",t)&&!s,c=e.startsWith("<(",t)||e.startsWith(">(",t),l=e[t]==="`";if(!s&&!a&&!c&&!l)return null;let u=s?3:l?1:2,d=s?"))":l?"`":")",m=iu(e,t+u,n,d),f=m===-1?n:m,p=m===-1?n:m+d.length;if(i>=r.maxDepth)return{program:aA(e,t+u,f,"depth-limit"),next:p,provenance:s?"arithmetic":"command-substitution"};if(s){let R=[],A=[],x=!1,P=t+u;while(P<f){let L=ou(e,P,f,r,o,i+1);if(!L){P++;continue}if(R.push(...L.program.nodes),A.push(...L.program.issues),x||=L.program.status==="limited",P=L.next,x)break}if(m===-1)A.push({code:"unclosed-arithmetic",message:"$(( substitution is not closed",span:{start:t,end:p}});return{program:Re({kind:"program",dialect:"posix",source:e.slice(t+u,f),span:{start:t+u,end:f},status:Cs(A,x),issues:A,nodes:R}),next:p,provenance:"arithmetic"}}let h=_s(e,t+u,f,r,o,i+1),y=m===-1?[{code:"unclosed-command-substitution",message:`${e.slice(t,t+u)} substitution is not closed`,span:{start:t,end:p}}]:[],b=(l||c)&&fo(h.nodes)?[{code:"unsupported-heredoc-context",message:"heredocs are supported only in ordinary commands and $(...) substitutions",span:{start:t,end:p}}]:[];return{program:Re({kind:"program",dialect:"posix",source:e.slice(t+u,f),span:{start:t+u,end:f},status:Cs([...h.issues,...y,...b],h.limited),issues:[...h.issues,...y,...b],nodes:h.nodes}),next:p,provenance:"command-substitution"}}function Cb(e,t,n){return t.push(e.program),n.push(...e.program.issues),{provenance:e.provenance,next:e.next,limited:e.program.status==="limited"}}function iu(e,t,n,r){if(r==="`"){for(let a=t;a<n;a++)if(e[a]==="\\")a++;else if(e[a]==="`")return a;return-1}let o=1,i={single:!1,double:!1},s=[];for(let a=t;a<n;a++){let c=e[a];if((c===`
|
|
39
39
|
`||c==="\r")&&s.length>0){let u=c==="\r"&&e[a+1]===`
|
|
40
|
-
`?a+2:a+1,d=
|
|
41
|
-
`&&e[s+1]!=="\r")s++;return s}function
|
|
42
|
-
`],["r","\r"],["t","\t"],["v","\v"],["\\","\\"],["'","'"],['"','"']]);if(o.has(r))return{text:o.get(r)??r,next:t+1};if(r==="x")return
|
|
43
|
-
`){d();let
|
|
44
|
-
`?
|
|
40
|
+
`?a+2:a+1,d=eu(e,u,n,s.splice(0));if(!d.terminated)return-1;a=d.next-1;continue}let l=Eb(e,a,t,n,i);if(l!==null){a=l;continue}if(!i.double&&e.startsWith("$((",a)){let u=BP(e,a+3,n);if(u===-1)return-1;a=u+1;continue}if(r===")"&&!i.double&&c==="<"&&e[a+1]==="<"&&e[a+2]!=="<"){let u=e[a+2]==="-",d=a+(u?3:2);while(d<n&&/[ \t]/.test(e[d]??""))d++;let m=Ql(e,d,n);if(m){s.push({delimiter:m.delimiter,quotedDelimiter:m.quoted,stripTabs:u,declarationSpan:{start:a,end:m.next},attach:()=>{return}}),a=m.next-1;continue}}if(e.startsWith("$(",a)&&!e.startsWith("$((",a)){o++,a++;continue}if(c==="("&&!i.double)o++;if(c===")"&&!i.double){if(o--,o===0)return r==="))"&&e[a+1]!==")"?-1:a}}return-1}function BP(e,t,n){let r=1,o={single:!1,double:!1};for(let i=t;i<n;i++){let s=e[i],a=Eb(e,i,t,n,o);if(a!==null){i=a;continue}if(e.startsWith("$(",i)&&!e.startsWith("$((",i)){r++,i++;continue}if(s==="("&&!o.double)r++;if(s!==")"||o.double)continue;if(r--,r===0)return e[i+1]===")"?i:-1}return-1}function Eb(e,t,n,r,o){let i=e[t];if(i==="\\"&&!o.single)return t+1;if(!o.double&&i==="'")o.single=!o.single;if(!o.single&&i==='"')o.double=!o.double;if(o.single)return t;if(o.double||i!=="#"||!uA(e,t,n))return null;let s=t;while(s+1<r&&e[s+1]!==`
|
|
41
|
+
`&&e[s+1]!=="\r")s++;return s}function Ss(e,t){let n=e[t];if(n===";")return";";if(n==="&")return e[t+1]==="&"?"&&":"&";if(n==="|")return e[t+1]==="|"?"||":e[t+1]==="&"?"|&":"|";return null}function VP(e,t){let n=e[t];if(n===">"){if(e[t+1]===">")return">>";if(e[t+1]==="&")return">&";return e[t+1]==="|"?">|":">"}if(n!=="<")return null;if(e.startsWith("<<<",t))return"<<<";if(e.startsWith("<<-",t))return"<<-";if(e[t+1]==="<")return"<<";if(e[t+1]==="&")return"<&";if(e[t+1]===">")return"<>";return"<"}function xs(e){let t=e.charCodeAt(0);if(t===32||t>=9&&t<=13)return!0;if(t<128)return!1;return/\s/u.test(e)}function wb(e,t,n){if(e[t+1]==="{"){let o=e.indexOf("}",t+2);return o===-1||o>=n?n:o+1}let r=t+1;while(r<n&&/[A-Za-z0-9_?@#$!*-]/.test(e[r]??""))r++;return r===t+1?t+1:r}function HP(e,t,n){let r="",o=[],i=t;while(i<n){let s=e[i];if(s==="'")return{text:r,next:i+1,closed:!0,issues:o};if(s!=="\\"){r+=s??"",i++;continue}let a=KP(e,i+1,n);if(r+=a.text,a.invalidCodePoint!==void 0)o.push({code:"invalid-ansi-c-code-point",message:`ANSI-C escape is not a valid Unicode scalar value: ${a.invalidCodePoint}`,span:{start:i,end:a.next}});i=a.next}return{text:r,next:n,closed:!1,issues:o}}function KP(e,t,n){let r=e[t];if(!r||t>=n)return{text:"\\",next:t};let o=new Map([["a","\x07"],["b","\b"],["e","\x1B"],["E","\x1B"],["f","\f"],["n",`
|
|
42
|
+
`],["r","\r"],["t","\t"],["v","\v"],["\\","\\"],["'","'"],['"','"']]);if(o.has(r))return{text:o.get(r)??r,next:t+1};if(r==="x")return bs(e,t+1,n,16,2,t+1);if(r==="u")return bs(e,t+1,n,16,4,t+1);if(r==="U")return bs(e,t+1,n,16,8,t+1);if(/[0-7]/.test(r))return bs(e,t,n,8,3,t+1);return{text:r,next:t+1}}function bs(e,t,n,r,o,i){let s=r===16?/[0-9a-fA-F]/:/[0-7]/,a="",c=t;while(c<n&&a.length<o&&s.test(e[c]??""))a+=e[c],c++;if(!a)return{text:e[i-1]??"",next:i};let l=Number.parseInt(a,r);return l>1114111||l>=55296&&l<=57343?{text:"\uFFFD",next:c,invalidCodePoint:l}:{text:String.fromCodePoint(l),next:c}}function Cs(e,t=!1){if(t)return"limited";if(e.some((n)=>n.code==="invalid-ansi-c-code-point"||n.code==="missing-heredoc-delimiter"||n.code==="ambiguous-heredoc-delimiter"||n.code==="unterminated-heredoc"||n.code==="unsupported-heredoc-context"))return"invalid";return e.length>0?"partial":"complete"}function Rb(e,t,n,r,o){let i=wb(e,t,n);return{text:r+e.slice(t,i),provenance:mo(o,"variable"),next:i}}function qP(e,t,n){let r=ys(e),o=t,i=!1,s=!1,a=t;while(a<n){let c=e[a];if(c==="\\"&&!i){a+=2;continue}if(!s&&c==="'"){i=!i,a++;continue}if(!i&&c==='"'){s=!s,a++;continue}if(i){a++;continue}let l=e.startsWith("$((",a),u=e.startsWith("$(",a)&&!l,d=!s&&(e.startsWith("<(",a)||e.startsWith(">(",a)),m=c==="`";if(l||u||d||m){let f=l?3:m?1:2,p=l?"))":m?"`":")",h=iu(e,a+f,n,p),y=h===-1?n:h+p.length;r.push(o,a,"literal"),r.push(a,y,l?"arithmetic":"command-substitution"),a=y,o=y;continue}if(c==="$"){let f=wb(e,a,n);if(f>a+1){r.push(o,a,"literal"),r.push(a,f,"variable"),a=f,o=f;continue}}if(!s&&(c==="*"||c==="?"||c==="[")){r.push(o,a,"literal"),r.push(a,a+1,"glob"),a++,o=a;continue}a++}return r.push(o,n,"literal"),r.parts}function mo(e,t){if(t==="command-substitution"||e==="command-substitution")return"command-substitution";if(t==="arithmetic"||e==="arithmetic")return"arithmetic";if(t==="variable"||e==="variable")return"variable";if(t==="glob"||e==="glob")return"glob";return e}function YP(e,t,n){return t+1>=n||xs(e[t+1]??"")||Ss(e,t+1)!==null}var JP=new Set(["-u","--unset","-C","--chdir","-S","--split-string","-P"]),XP=new Set(["-u","-g","-C","-D","-h","-p","-r","-t","-T","-U"]);function QP(e){let t=0;while(t<=e.length){while(/^[A-Za-z_][A-Za-z0-9_]*=/.test(e[t]?.text??""))t++;if(t===e.length)return!0;let n=eA(e,t);if(n===void 0||n===null)return!1;t=n}return!1}function eA(e,t){let n=e[t]?.text.toLowerCase();if(n==="command")return tA(e,t);if(n==="env")return nA(e,t);if(n==="sudo")return rA(e,t);return}function tA(e,t){if(e[t+1]?.text==="-v")return null;for(let n=t+1;n<e.length;n++){let r=e[n]?.text??"";if(r==="--")return n+1;if(r==="-p"||r==="-v"||r==="-V"||/^-[pvV]+$/.test(r))continue;return n}return e.length}function nA(e,t){for(let n=t+1;n<e.length;n++){let r=e[n]?.text??"";if(r==="--")return n+1;if(JP.has(r)){if(e[n+1]===void 0)return null;n++;continue}if(r.startsWith("-u=")||r.startsWith("--unset=")||r.startsWith("-C")&&r.length>2||r.startsWith("--chdir=")||r.startsWith("-S")&&r.length>2||r.startsWith("--split-string=")||r.startsWith("-P"))continue;if(r.startsWith("-")||/^[A-Za-z_][A-Za-z0-9_]*=/.test(r))continue;return n}return e.length}function rA(e,t){for(let n=t+1;n<e.length;n++){let r=e[n]?.text??"";if(r==="--")return n+1;if(XP.has(r)){if(e[n+1]===void 0)return null;n++;continue}if(r.startsWith("-"))continue;return n}return e.length}function Pb(e,t,n,r){if(e.provenance!=="literal"||!e.raw.includes("{"))return;let o=[e.raw],i=e.raw.length,s=0;while(!0){let c=o.findIndex((p)=>vb(p));if(c===-1)break;if(++s>n)return{limited:!0};let l=o[c]??"",u=vb(l);if(!u||u.kind==="range")return{limited:!0};let d=u.start+l.length-u.end,m=u.alternatives.reduce((p,h)=>p+d+h.length,0);if(i-l.length+m>r||o.length-1+u.alternatives.length>t)return{limited:!0};let f=Ab(l,u);o.splice(c,1,...f),i+=m-l.length}if(s===0)return;let a=o.map((c)=>sA(c,n));if(a.some((c)=>c===null))return{limited:!0};return{words:[...new Set(a.filter((c)=>c!==null&&c!==""))]}}function oA(e,t,n,r,o){if(t.provenance!=="literal"||t.quoted||t.raw!==t.text||!t.raw.includes("{"))return;let i=[t.text],s=t.text.length,a=0;while(!0){let l=i.findIndex((y)=>bb(y));if(l===-1)break;if(++a>r)return{limitCode:"depth-limit"};let u=i[l]??"",d=bb(u);if(!d)break;let m=d.start+u.length-d.end,f=d.alternatives.filter((y)=>m+y.length>0),p=f.reduce((y,b)=>y+m+b.length,0);if(s-u.length+p>o)return{limitCode:"brace-expansion-limit"};if(i.length-1+f.length>n)return{limitCode:"word-limit"};let h=Ab(u,{...d,alternatives:f});i.splice(l,1,...h),s+=p-u.length}let c=i.filter((l)=>l.length>0);if(a===0)return;return{words:c.map((l)=>rr(e,t.span.start,t.span.end,l,"literal",!1))}}function bb(e){let t=[],n;for(let r=0;r<e.length;r++){let o=e[r];if(o==="{"){t.push({start:r,commas:[]});continue}if(o===","&&t.length>0){t.at(-1)?.commas.push(r);continue}if(o!=="}"||t.length===0)continue;let i=t.pop();if(!i||i.commas.length===0)continue;if(!n||i.start<n.start)n={start:i.start,end:r+1,commas:i.commas}}if(!n)return;return{start:n.start,end:n.end,alternatives:kb(e,n)}}function vb(e){let t=[],n,r=null,o=!1;for(let i=0;i<e.length;i++){let s=e[i];if(o){o=!1;continue}if(s==="\\"&&r!=="'"){o=!0;continue}if(s===r){r=null;continue}if(r===null&&(s==="'"||s==='"')){r=s;continue}if(r!==null)continue;if(s==="{"){t.push({start:i,commas:[]});continue}if(s===","&&t.length>0){t.at(-1)?.commas.push(i);continue}if(s!=="}"||t.length===0)continue;let a=t.pop();if(!a)continue;let c=a.commas.length>0?{kind:"alternatives",start:a.start,end:i+1,commas:a.commas}:iA(e.slice(a.start+1,i))?{kind:"range",start:a.start,end:i+1}:void 0;if(c&&(!n||c.start<n.start))n=c}if(!n||n.kind==="range")return n;return{kind:n.kind,start:n.start,end:n.end,alternatives:kb(e,n)}}function Ab(e,t){return t.alternatives.map((n)=>`${e.slice(0,t.start)}${n}${e.slice(t.end)}`)}function kb(e,t){let n=[t.start,...t.commas,t.end-1];return n.slice(0,-1).map((r,o)=>e.slice(r+1,n[o+1]))}function iA(e){return/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(e)||/^[A-Za-z]\.\.[A-Za-z](?:\.\.-?\d+)?$/.test(e)}function sA(e,t){let n=`x${e}`,r=ru(n,0,n.length,{maxInputLength:n.length,maxWords:1,maxDepth:t},{used:0,max:1},0);if(r.limited||r.issues.length>0||r.next!==n.length||r.word.provenance!=="literal")return null;return r.word.text.slice(1)}function aA(e,t,n,r){return Re({kind:"program",dialect:"posix",source:e.slice(t,n),span:{start:t,end:n},status:"limited",issues:[{code:r,message:"command structure exceeds parser limit",span:{start:t,end:n}}],nodes:[]})}function or(e,t,n,r,o){return{nodes:e,issues:[...t,{code:r,message:`command structure exceeds parser limit ${o}`,span:{start:n,end:n}}],next:n,closed:!1,limited:!0,pendingHeredocs:[]}}function vs(e,t,n){return{nodes:e,issues:t,next:n,closed:!1,limited:!0,pendingHeredocs:[]}}function tu(e){return e.used++,e.used<=e.max}function cA(e,t,n){let r=/^([A-Za-z_][A-Za-z0-9_]*)[ \t]*\([ \t]*\)[ \t]*\{/.exec(e.slice(t,n)),o=r?.[1];if(!r||!o)return;return{name:o,braceIndex:t+r[0].lastIndexOf("{")}}function fo(e){return e.some((t)=>{if(t.kind==="command")return t.redirections.some((n)=>n.heredoc)||t.nested.some((n)=>fo(n.nodes));return(t.kind==="group"||t.kind==="function")&&fo(t.body.nodes)})}function lA(e){return e.map((t)=>({code:"unterminated-heredoc",message:`heredoc delimiter ${t.delimiter} was not found`,span:t.declarationSpan}))}function Tb(e){return e?.kind==="command"||e?.kind==="group"||e?.kind==="function"}function _b(e,t){let n=e.at(-1);if(n?.kind!=="connector"||!Sb.has(n.operator))return;t.push({code:"missing-command-after-connector",message:`connector ${n.operator} requires a following command`,span:n.span})}function nu(e,t,n){if(!Tb(e.at(-1)))return;t.push({code:"missing-command-connector",message:"adjacent commands require a connector",span:{start:n,end:n+1}})}function uA(e,t,n){return t===n||/[\s;&|()]/u.test(e[t-1]??"")}var Ib=new Set(["remove-item","ri","del","erase","rd","rmdir"]),Ob=["-rec","-for","-path","-literalpath","-whatif"],Es={maxInputLength:131072,maxWords:16384,maxDepth:64};function zb(e){let t=e.toLowerCase().replaceAll("`","");if(![...Ib].some((r)=>t.includes(r))&&!(t.includes("rm")&&Ob.some((r)=>t.includes(r)))&&!t.includes("<#"))return!1;let n=pA(e);return n.invalidComment||n.commands.some(dA)}function dA(e){let t=e[0]==="&"||e[0]==="."?1:0,n=e[t]?.toLowerCase();if(n&&Ib.has(n))return!0;if(n!=="rm")return!1;return e.slice(t+1).some((r)=>{let o=r.toLowerCase().split(":",1)[0]??"";return Ob.some((i)=>o.startsWith(i))})}function Nb(e,t){let n={start:0,end:e.length};if(e.length>t.maxInputLength)return Re({kind:"program",dialect:"powershell",source:e,span:n,status:"limited",issues:[{code:"input-limit",message:`command exceeds ${t.maxInputLength} UTF-16 code units`,span:n}],nodes:[]});let r=uu(e,0,e.length,t,0);return Re({kind:"program",dialect:"powershell",source:e,span:n,status:gA(r.issues,r.limited),issues:r.issues,nodes:r.nodes})}function uu(e,t,n,r,o,i=!1){let s=[],a=[],c=gs(),l=0,u=!1,d=()=>{if(c.words.length===0&&c.redirections.length===0)return;let f={start:c.start,end:c.end};hs(s,c,{kind:"command",dialect:"powershell",source:e.slice(f.start,f.end),span:f,words:c.words,redirections:c.redirections,nested:c.nested,displayText:c.words.map((p)=>p.text).join(" ")})},m=t;while(m<n){let f=e[m];if(!f)break;if(i&&f==="}")return d(),{nodes:s,issues:a,next:m+1,closed:!0,words:l,limited:u};let p=$b(e,m,n,r.maxDepth);if(p){if(p.issue)a.push(p.issue);if(p.limited)return d(),{nodes:s,issues:a,next:p.next,closed:!1,words:l,limited:!0};m=p.next;continue}if(/\s/.test(f)){if(f==="\r"||f===`
|
|
43
|
+
`){d();let b=f==="\r"&&e[m+1]===`
|
|
44
|
+
`?m+2:m+1;s.push(su(e,m,b)),m=b;continue}m++;continue}let h=du(e,m);if(h){d(),s.push(su(e,m,m+h.length)),m+=h.length;continue}if(f==="{"){if(d(),o>=r.maxDepth)return a.push(Mb(m,r.maxDepth)),{nodes:s,issues:a,next:n,closed:!1,words:l,limited:!0};let b=uu(e,m+1,n,r,o+1,!0),R=b.closed?b.next-1:b.next,A=Re({kind:"program",dialect:"powershell",source:e.slice(m+1,R),span:{start:m+1,end:R},status:b.limited?"limited":b.issues.length>0?"partial":"complete",issues:b.issues,nodes:b.nodes});if(s.push(Object.freeze({kind:"group",style:"brace",span:Object.freeze({start:m,end:b.next}),body:A})),a.push(...b.issues),!b.closed)a.push({code:"unclosed-script-block",message:"PowerShell script block is not closed",span:{start:m,end:b.next}});l+=b.words,u||=b.limited,m=b.next;continue}if(f==="}"){d(),s.push(su(e,m,m+1)),m++;continue}if(f===">"||f==="<"){c.start=c.start===-1?m:c.start;let b=e[m+1]===f?m+2:m+1,R=b;while(/[ \t]/.test(e[R]??""))R++;let A=R<n?au(e,R,n,r,o):void 0,x=A?.next??b;if(c.redirections.push(Object.freeze({kind:"redirection",operator:e.slice(m,b),span:Object.freeze({start:m,end:x}),...A?{target:A.word}:{}})),A)a.push(...A.issues),c.nested.push(...A.nested),l+=A.words,u||=A.limited;c.end=x,m=x;continue}if(f===","){c.start=c.start===-1?m:c.start,c.words.push(Xl({text:",",raw:",",span:{start:m,end:m+1},provenance:"literal",quoted:!1})),c.end=++m;continue}let y=au(e,m,n,r,o);if(c.start=c.start===-1?m:c.start,c.end=y.next,c.words.push(y.word),a.push(...y.issues),c.nested.push(...y.nested),l+=1+y.words,u||=y.limited,l>r.maxWords)return a.push({code:"word-limit",message:`command exceeds ${r.maxWords} words`,span:{start:m,end:y.next}}),d(),{nodes:s,issues:a,next:y.next,closed:!1,words:l,limited:!0};m=y.next>m?y.next:m+1}return d(),{nodes:s,issues:a,next:m,closed:!i,words:l,limited:u}}function au(e,t,n,r,o){let i="",s="literal",a=!1,c=[],l=[],u=0,d=!1,m=(p)=>{let h=mA(e,p,n,r,o);return i+=e.slice(p,h.next),l.push(h.program),c.push(...h.program.issues),u+=cu(h.program),d||=h.program.status==="limited",s="command-substitution",h.next},f=t;while(f<n){let p=e[f];if(!p||/\s/.test(p)||du(e,f)||p===">"||p==="<"||p==="#")break;if(p===",")break;if(p==="`"){let h=e[f+1];if(!h){c.push({code:"trailing-escape",message:"PowerShell escape has no following character",span:{start:f,end:f+1}}),f++;break}i+=h,f+=2;continue}if(e.startsWith("$(",f)){f=m(f);continue}if(p==="'"){a=!0,f++;let h=!1;while(f<e.length){if(e[f]==="'"&&e[f+1]==="'"){i+="'",f+=2;continue}if(e[f]==="'"){h=!0,f++;break}i+=e[f]??"",f++}if(!h)c.push({code:"unclosed-single-quote",message:"single-quoted word is not closed",span:{start:t,end:e.length}});continue}if(p==='"'){a=!0;let h=f++,y=!1;while(f<n){let b=e[f];if(b==="`"&&e[f+1]){i+=e[f+1],f+=2;continue}if(b==='"'){y=!0,f++;break}if(e.startsWith("$(",f)){f=m(f);continue}if(b==="$")s=e[f+1]==="("?"command-substitution":"variable";i+=b??"",f++}if(!y)c.push({code:"unclosed-double-quote",message:"double-quoted word is not closed",span:{start:h,end:e.length}});continue}if(p==="$")s=e[f+1]==="("?"command-substitution":"variable";if(p==="@"&&f===t)s="variable";i+=p,f++}return{word:rr(e,t,f,i,s,a,s==="literal"?void 0:fA(e,t,f)),next:f,issues:c,nested:l,words:u,limited:d}}function mA(e,t,n,r,o){let i=Db(e,t+2,n),s=i===-1?n:i,a=i===-1?n:i+1;if(o>=r.maxDepth)return{program:Re({kind:"program",dialect:"powershell",source:e.slice(t+2,s),span:{start:t+2,end:s},status:"limited",issues:[Mb(t,r.maxDepth)],nodes:[]}),next:a};let c=uu(e,t+2,s,r,o+1),l=i===-1?[{code:"unclosed-command-subexpression",message:"PowerShell command subexpression is not closed",span:{start:t,end:a}}]:[];return{program:Re({kind:"program",dialect:"powershell",source:e.slice(t+2,s),span:{start:t+2,end:s},status:c.limited?"limited":c.issues.length+l.length>0?"partial":"complete",issues:[...c.issues,...l],nodes:c.nodes}),next:a}}function Db(e,t,n){let r=1,o=!1,i=!1;for(let s=t;s<n;s++){let a=e[s];if(a==="`"){s++;continue}if(!i&&a==="'"){if(o&&e[s+1]==="'"){s++;continue}o=!o;continue}if(!o&&a==='"'){i=!i;continue}if(o)continue;if(e.startsWith("$(",s)){r++,s++;continue}if(!i&&a==="(")r++;if(a!==")")continue;if(r--,r===0)return s}return-1}function cu(e){let t=0;for(let n of e.nodes){if(n.kind==="group")t+=cu(n.body);if(n.kind==="command"){t+=n.words.length;for(let r of n.nested)t+=cu(r)}}return t}function fA(e,t,n){let r=ys(e),o=t,i=!1,s=t;while(s<n){let a=e[s];if(a==="`"){s+=2;continue}if(a==="'"){if(i&&e[s+1]==="'"){s+=2;continue}i=!i,s++;continue}if(i){s++;continue}if(e.startsWith("$(",s)){let c=Db(e,s+2,n),l=c===-1?n:c+1;r.push(o,s,"literal"),r.push(s,l,"command-substitution"),s=l,o=l;continue}if(a==="$"||a==="@"&&s===t){let c=s+1;if(e[c]==="{"){let l=e.indexOf("}",c+1);c=l===-1||l>=n?n:l+1}else while(c<n&&/[A-Za-z0-9_:?]/.test(e[c]??""))c++;r.push(o,s,"literal"),r.push(s,c,"variable"),s=c,o=c;continue}s++}return r.push(o,n,"literal"),r.parts}function Mb(e,t){return{code:"depth-limit",message:`command structure exceeds parser limit ${t}`,span:{start:e,end:e}}}function pA(e){let t=[],n=[],r=0,o=0,i=!1,s=()=>{if(n.length>0)t.push(n);n=[]};while(r<e.length&&r<131072&&o<16384){let a=e[r];if(a==="\r"||a===`
|
|
45
45
|
`){s(),r+=a==="\r"&&e[r+1]===`
|
|
46
|
-
`?2:1;continue}if(/\s/.test(a??"")){r++;continue}let c
|
|
47
|
-
`)s++;return{next:s,limited:!1}}if(!e.startsWith("<#",t))return null;let o=1,i=t+2;while(i<n){if(e.startsWith("<#",i)){if(o++,o>r)return{next:n,issue:{code:"comment-depth-limit",message:`PowerShell block comment exceeds nesting limit ${r}`,span:{start:t,end:i+2}},limited:!0};i+=2;continue}if(e.startsWith("#>",i)){if(o--,i+=2,o===0)return{next:i,limited:!1};continue}i++}return{next:n,issue:{code:"unclosed-block-comment",message:"PowerShell block comment is not closed",span:{start:t,end:n}},limited:!1}}function
|
|
48
|
-
`||s==="\r")t+=s,r=!1,n.escaped=!1;continue}if(s==="#"&&!n.inSingle&&!n.inDouble&&o){r=!0;continue}if(t+=s,!n.inSingle&&!n.inDouble&&!n.escaped)o=/[\s;&|()<>]/.test(s);ho(s,n)}return t}var ik=new Set(["&&","||","|&","|","&",";"]),sk=new Set(["<<","<<<",">|"]),ak=/[*@#?$!_-]/,gu=Object.freeze([]),ck=Object.freeze([]),lk=256;function Mb(e,t){let n=t.status==="complete"?new Set(yu(t)):new Set,r=[...n].reduce((s,a)=>s.slice(0,a.start)+" ".repeat(a.end-a.start)+s.slice(a.end),e);if(cr(r))return Is("unclosed-quote",r,gu);let o={invalid:!1,limited:!1,expansions:0,assignmentFallbacks:[]},i=yo(t,{source:r,suppressed:n,flags:o,depth:0,functions:new Map});if(o.limited)return Is("structural-limit",r,gu);if(o.invalid)return Is("invalid",r,gu);return Is("complete",r,i,o.assignmentFallbacks)}function Is(e,t,n,r=ck){return Object.freeze({status:e,source:t,entries:Object.freeze(n),assignmentFallbacks:Object.freeze(r)})}function yo(e,t){return e.nodes.flatMap((n,r)=>uk(n,e,r,t)).sort((n,r)=>n.start-r.start).flatMap((n)=>[...n.entries])}function uk(e,t,n,r){if(e.kind==="connector")return[{start:e.span.start,entries:[nt(gk(e.operator))]}];if(e.kind==="unknown")return[{start:e.span.start,entries:[nt(e.source)]}];if(e.kind==="function")return r.functions.set(e.name,e.body),[];if(e.kind==="group"){let i=e.style!=="subshell",s=r.source[e.span.end-1]===(i?"}":")"),a=i?r:{...r,functions:new Map(r.functions)};return[{start:e.span.start,entries:[i?Os("{"):nt("("),...yo(e.body,a),...s?[i?Os("}"):nt(")")]:[]]}]}let o=yk(e,r.functions);if(o){if(r.depth>=_n.maxDepth||++r.flags.expansions>lk)return r.flags.limited=!0,[];return[{start:e.span.start,entries:[...zb(e,r),Os(";"),...yo(o,{...r,depth:r.depth+1}),Os(";")]},...Nb(e,t,n,r)]}return[{start:e.span.start,entries:zb(e,r)},...Nb(e,t,n,r)]}function zb(e,t){return[...e.words.map((n)=>({start:n.span.start,entries:Wb(n,e,t,!1)})),...e.redirections.map((n)=>({start:n.span.start,entries:dk(n,e,t)}))].sort((n,r)=>n.start-r.start).flatMap((n)=>n.entries)}function dk(e,t,n){let r=e.operator==="<<-"?"<<":e.operator,o=e.target?Wb(e.target,t,n,!0):[],i=o[0],s=i?.kind==="word"?i.text:void 0;return[...e.fd===void 0?[]:[bu(String(e.fd))],Object.freeze({kind:"redirection",operator:r,role:hk(r),targetOrder:sk.has(r)?"legacy-segment":"immediate",...s===void 0?{}:{target:s}}),...s===void 0?o:o.slice(1)]}function Nb(e,t,n,r){let o=e.redirections.filter((i)=>i.operator==="<<"||i.operator==="<<-");return[...o.flatMap((i)=>{let s=i.heredoc;if(!s)return[];let a=[bu(s.delimiter),.../[\r\n]/.test(r.source[s.terminatorSpan.end]??"")?[nt(";")]:[]];if(r.suppressed.has(s.bodySpan))return[{start:s.bodySpan.start,entries:a}];return[{start:s.bodySpan.start,entries:[...Lb(r.source.slice(s.bodySpan.start,s.bodySpan.end),r),...a]}]}),...o.some((i)=>!i.heredoc&&i.target)?mk(t,n,r):[]]}function mk(e,t,n){let r=e.nodes.slice(t+1).find((o)=>o.kind==="connector");if(!r||r.span.end>=e.span.end)return[];return[{start:r.span.end,entries:Lb(n.source.slice(r.span.end,e.span.end),n)}]}function Lb(e,t){if(t.depth>=_n.maxDepth)return t.flags.limited=!0,[];let n=tt(e,"posix");if(n.status==="limited")return t.flags.limited=!0,[];let r={invalid:!1,limited:!1,expansions:t.flags.expansions,assignmentFallbacks:t.flags.assignmentFallbacks},o=yo(n,{source:e,suppressed:new Set,flags:r,depth:t.depth+1,functions:new Map});return t.flags.limited||=r.limited,t.flags.expansions=r.expansions,o}function Wb(e,t,n,r){let o=[],i={single:!1,double:!1},s="",a=!1,c=()=>{if(a&&!r)o.push(nt("glob"));else if(s!==""||e.quoted&&o.length===0)o.push(bu(s));s="",a=!1};for(let l of e.parts){if(l.provenance!=="command-substitution"&&l.provenance!=="arithmetic"){for(let m of hu(l.raw,i,n.flags)){if(typeof m==="string"){c(),o.push(nt(m));continue}s+=m.text,a||=m.glob}continue}if(i.double){let m=n.source.slice(l.span.start,l.span.end);s+=hu(m,{single:!1,double:!0},n.flags).map((p)=>typeof p==="string"?p:p.text).join("");continue}let u=t.nested.find((m)=>m.span.start>=l.span.start&&m.span.end<=l.span.end),d=u?yo(u,n):[];if(l.raw.startsWith("`")){s+="${}",c(),o.push(...d);continue}if(l.raw.startsWith("<(")||l.raw.startsWith(">(")){c(),o.push(l.raw.startsWith("<(")?nt("<("):Object.freeze({kind:"redirection",operator:">",role:"file-write",targetOrder:"immediate"}),...d,...l.raw.endsWith(")")?[nt(")")]:[]);continue}let f=l.raw.startsWith("$((")?2:1;s+="${}",c(),o.push(...Array.from({length:f},()=>nt("(")),...d,...l.raw.endsWith(")".repeat(f))?Array.from({length:f},()=>nt(")")):[])}return c(),o}function hu(e,t,n){let r=[],o="",i=!1,s=0;while(s<e.length){let a=e[s]??"";if(!t.single&&!t.double&&(a==="("||a===")")){r.push({text:o,glob:i},a),o="",i=!1,s++;continue}if(t.single){if(a==="'")t.single=!1;else o+=a;s++;continue}if(t.double){if(a==='"'){t.double=!1,s++;continue}if(a==="\\"){let c=e[s+1]??"";o+=['"',"\\","$"].includes(c)?c:`\\${c}`,s+=2;continue}if(a==="$"){let c=Db(e,s,t,n);o+=c.text,s=c.next;continue}o+=a,s++;continue}if(a==="'"||a==='"'){t.single=a==="'",t.double=a==='"',s++;continue}if(a==="\\"){let c=e[s+1]??"";i||=c==="*"||c==="?",o+=c,s+=2;continue}if(a==="$"){let c=Db(e,s,t,n);o+=c.text,s=c.next;continue}i||=a==="*"||a==="?",o+=a,s++}return[...r,{text:o,glob:i}]}function Db(e,t,n,r){let o=e[t+1];if(o==="{"){let s=pk(e,t+2);if(s===-1)return r.invalid=!0,{text:"",next:e.length};let a=e.slice(t,s+1);return fk(a,n,r),{text:a,next:s+1}}if(o!==void 0&&ak.test(o))return{text:`\${${o}}`,next:t+2};let i=/^\w*/.exec(e.slice(t+1))?.[0]??"";return{text:`\${${i}}`,next:t+1+i.length}}function fk(e,t,n){let r=e.slice(2,-1),o=/^[A-Za-z_][A-Za-z0-9_]*/.exec(r)?.[0];if(!o)return;let i=r.slice(o.length),s=[":=","="].find((c)=>i.startsWith(c));if(!s)return;let a=hu(i.slice(s.length),{...t},n);n.assignmentFallbacks.push(...a.flatMap((c)=>typeof c==="string"||!c.text?[]:[c.text]))}function pk(e,t){let n=1,r=t;while(n>0&&r<e.length){if(e[r]==="{"&&e[r-1]==="$")n++;else if(e[r]==="}")n--;r++}return n===0?r-1:-1}function gk(e){return/^[\r\n]+$/.test(e)?";":e}function nt(e){return Object.freeze({kind:"operator",operator:e,boundary:ik.has(e)})}function Os(e){return Object.freeze({kind:"operator",operator:e,boundary:!0})}function bu(e){return Object.freeze({kind:"word",text:e})}function hk(e){if(e==="<<"||e==="<<<")return"here-data";if(e==="<"||e==="<&")return"file-read";return"file-write"}function yu(e){return e.nodes.flatMap((t,n)=>{if(t.kind==="group"||t.kind==="function")return yu(t.body);if(t.kind!=="command")return[];let r=t.nested.flatMap((s)=>yu(s)),o=e.nodes[n+1];if(o?.kind==="connector"&&(o.operator==="|"||o.operator==="|&")||!vk(t))return r;return[...r,...t.redirections.flatMap((s)=>s.heredoc?.quotedDelimiter?[s.heredoc.bodySpan]:[])]})}function yk(e,t){let n=Ts(e);return n===void 0?void 0:t.get(n)}function Xt(e,t){return e!==void 0&&e.provenance==="literal"&&!e.quoted&&e.raw===e.text&&e.text===t}function bk(e){if(Xt(e.words[0],"git"))return Xt(e.words[1],"commit");if(!Xt(e.words[0],"gh")||!Xt(e.words[2],"create"))return!1;return Xt(e.words[1],"pr")||Xt(e.words[1],"issue")}function vk(e){return(Xt(e.words[0],"cat")||Xt(e.words[0],"tee")||bk(e))&&!e.words.some($b)&&!e.redirections.some((n)=>$b(n.target))}function $b(e){return e?.parts.some((t)=>t.provenance==="command-substitution"&&t.raw.startsWith(">("))??!1}import{types as Sk}from"util";var xk=new Set(["applypatch","patch"]),_k=new Set(["create","edit","listdir","listpermissions","ls","multiedit","multireplacefilecontent","notebookedit","read","readfile","readurlcontent","replacefilecontent","searchweb","strreplaceeditor","view","viewfile","write","writefile","writetofile"]),Ck=new Set(["grep","grepsearch","rg"]),wk=new Set(["find","findbyname","glob"]),Rk=new Set(["find","findbyname","glob","grep","grepsearch","listdir","listpermissions","ls","read","readfile","readurlcontent","searchweb","view","viewfile"]),Ek=new Set(["command","diff","input","patch","patchtext"]),Fb=new TextEncoder,Pk=new TextDecoder,kk=/\s/,Ak=64;class Wt extends Error{name="ToolInputLimitError";constructor(){super("tool input traversal limit exceeded")}}var bo=Object.freeze({maxDepth:64,maxNodes:1e4,maxKeys:1e4,maxStringBytes:1048576,maxAggregateStringBytes:4194304});function jb(e){return e.replace(/[-_\s]/g,"").toLowerCase()}function Ns(e){return Rk.has(jb(e))}function _u(e){let t=jb(e);if(xk.has(t))return"patch";if(Ck.has(t))return"grep";if(wk.has(t))return"glob";if(_k.has(t))return"path";return"unknown"}function So(e){if(!e||typeof e!=="object")return;Yb(e);let t=Object.getOwnPropertyDescriptor(e,"command");if(!t){if("command"in e)pt();return}if(t.get||t.set)pt();let n=t.value;return typeof n==="string"&&n!==""?n:void 0}function Cu(e,t){return Hb(e,t,{nodes:0,keys:0,stringBytes:0,ancestors:new Set},1)}function Hb(e,t,n,r){let o=Kb(e,n,r);if(!o)return[];let i=o.entries.flatMap(([s,a])=>{let c=Hb(a,t,n,r+1);return typeof a==="string"&&t.has(Vb(s))?[a]:c});return n.ancestors.delete(o.object),i}function Vb(e){return e.replace(/-/g,"_").toLowerCase()}function wu(e){return qb(e,!0,{nodes:0,keys:0,stringBytes:0,ancestors:new Set},1).flatMap(Ik)}function qb(e,t,n,r){let o=Kb(e,n,r);if(typeof e==="string")return t?[e]:[];if(!o)return[];let i=o.entries.flatMap(([s,a])=>qb(a,o.array?t:Ek.has(Vb(s)),n,r+1));return n.ancestors.delete(o.object),i}function Tk(e,t,n){if(t.nodes++,e!==null&&typeof e==="object"&&n>bo.maxDepth||t.nodes>bo.maxNodes)pt();if(typeof e!=="string")return;let r=Buffer.byteLength(e);if(t.stringBytes+=r,r>bo.maxStringBytes||t.stringBytes>bo.maxAggregateStringBytes)pt()}function Kb(e,t,n){if(Tk(e,t,n),!e||typeof e!=="object")return null;let r=Yb(e);if(t.ancestors.has(e))pt();let o=Reflect.ownKeys(e);if(t.keys+=o.length,t.keys>bo.maxKeys)pt();let i=o.flatMap((s)=>{let a=Object.getOwnPropertyDescriptor(e,s);if(!a||a.get||a.set)pt();return typeof s==="string"&&a.enumerable?[[s,a.value]]:[]});return t.ancestors.add(e),{object:e,array:r,entries:i}}function Yb(e){if(Sk.isProxy(e))pt();let t=Array.isArray(e),n=Object.getPrototypeOf(e);if(t&&n!==Array.prototype||!t&&n!==Object.prototype&&n!==null)pt();return t}function pt(){throw new Wt}function Ik(e){let t=[],n=e.split(/\r?\n/),r=!1,o=!1,i=null,s=null,a=()=>{o=!1,i=null,s=null};for(let c=0;c<n.length;c++){let l=n[c]??"";if(l==="*** Begin Patch"){r=!0,a();continue}if(l==="*** End Patch"){r=!1,a();continue}if(l.startsWith("@@")){let u=Ok(l);if(o=!0,i=u?.oldLines??null,s=u?.newLines??null,i===0&&s===0)a();continue}if(o&&i!==null&&s!==null){let u=l.startsWith(" ")||l.startsWith("-")?1:0,d=l.startsWith(" ")||l.startsWith("+")?1:0;if(i=Math.max(0,i-u),s=Math.max(0,s-d),i===0&&s===0)a();continue}if(l.startsWith("*** ")){a(),t.push(...vu(l));continue}if(o)continue;if(l.startsWith("diff --git ")){t.push(...vu(l));continue}if(l.startsWith("--- ")){let u=n[c+1]??"";if(!u.startsWith("+++ "))continue;t.push(...xu(zs(l.slice(4),!0),zs(u.slice(4),!0))),c++;continue}if(!r)t.push(...vu(l))}return t}function Ok(e){let t=/^@@ -\d+(?:,(\d+))? \+\d+(?:,(\d+))? @@/.exec(e);if(!t)return null;return{oldLines:Number(t[1]??1),newLines:Number(t[2]??1)}}function vu(e){let t=/^\*\*\* (?:Add|Update|Delete) File: (.+)$/.exec(e);if(t?.[1])return Ub(t[1]);let n=/^\*\*\* Move to: (.+)$/.exec(e);if(n?.[1])return Ub(n[1]);if(e.startsWith("diff --git "))return zk(e.slice(11));let r=/^--- (.+)$/.exec(e);if(r?.[1])return Bb(r[1]);let o=/^\+\+\+ (.+)$/.exec(e);if(o?.[1])return Bb(o[1]);let i=/^(?:rename|copy) (?:from|to) (.+)$/.exec(e);if(i?.[1])return Fk(i[1]);return[]}function zk(e){let t=Nk(e);if(t.length===2&&t[0]&&t[1])return xu(t[0],t[1]);let n=Dk(e);return n?xu(e.slice(n.oldStart,n.oldEnd),e.slice(n.newStart,n.newEnd)):[]}function Nk(e){let t=[],n=0;while(n<e.length&&t.length<2){while(Cn(e[n]))n++;if(n>=e.length)break;let r=e[n]==='"'||e[n]==="'"?e[n]:void 0;if(!r){let i=n;while(n<e.length&&!Cn(e[n]))n++;t.push(e.slice(i,n));continue}let o=Jb(e,n,r);if(!o)return[];t.push(o.value),n=o.end}while(Cn(e[n]))n++;return n===e.length?t:[]}function Dk(e){let t=0;while(t<e.length&&Cn(e[t]))t++;let n=e.length;while(n>t&&Cn(e[n-1]))n--;let r=0,o=t;while(o<n){if(!Cn(e[o])){o++;continue}let i=o;while(o<n&&Cn(e[o]))o++;if(i===t||o===n)continue;if(r++,r>Ak)pt();if($k(e,t,i,o,n))return{oldStart:t,oldEnd:i,newStart:o,newEnd:n}}return null}function $k(e,t,n,r,o){if(Su(e,t,n,r,o))return!0;let i=Gb(e,"/",t,n),s=Gb(e,"/",r,o);if(i<=t||s<=r)return!1;if(Su(e,t,i,r,s))return!1;return Su(e,i+1,n,s+1,o)}function Su(e,t,n,r,o){if(n-t!==o-r)return!1;for(let i=0;i<n-t;i++)if(e[t+i]!==e[r+i])return!1;return!0}function Gb(e,t,n,r){for(let o=n;o<r;o++)if(e[o]===t)return o;return-1}function Cn(e){return e!==void 0&&kk.test(e)}function Jb(e,t,n){let r=[],o=t+1;while(o<e.length){let i=e[o]??"";if(i===n)return{value:Pk.decode(Uint8Array.from(r)),end:o+1};if(i!=="\\"||n==="'"){r.push(...Fb.encode(i)),o++;continue}let s=e.slice(o+1),a=/^[0-7]{1,3}/.exec(s)?.[0];if(a){r.push(Number.parseInt(a,8)),o+=a.length+1;continue}r.push(...Fb.encode(Mk(s[0]??""))),o+=2}return null}function Mk(e){return{a:"\x07",b:"\b",f:"\f",n:`
|
|
49
|
-
`,r:"\r",t:"\t",v:"\v"}[e]??e}function Lk(e){return vo(Gk(e))}function xu(e,t){if(e==="/dev/null")return Zb(t);if(t==="/dev/null")return Zb(e);if(e.startsWith("a/")&&t.startsWith("b/"))return[e.slice(2),t.slice(2)].flatMap(vo);let n=Wk(e,t)??(e===t?Xb(e):null);return[e,t,...n?[n]:[]].flatMap(vo)}function Zb(e){let t=Xb(e);return[e,...t?[t]:[]].flatMap(vo)}function Xb(e){let t=e.indexOf("/");return t>0&&t<e.length-1?e.slice(t+1):null}function Wk(e,t){let n=e.indexOf("/"),r=t.indexOf("/");if(n<1||r<1)return null;if(e.slice(0,n)===t.slice(0,r))return null;let o=e.slice(n+1);return o===t.slice(r+1)?o:null}function Bb(e){return Lk(zs(e,!0))}function Fk(e){return vo(zs(e,!1))}function zs(e,t){let n=e.trim(),r=n[0]==='"'||n[0]==="'"?n[0]:void 0;if(r){let o=Jb(n,0,r);if(o&&(t||n.slice(o.end).trim()===""))return o.value}return t?n.split("\t",1)[0]?.trim()??"":n}function Gk(e){return e.startsWith("a/")||e.startsWith("b/")?e.slice(2):e}function vo(e){return e===""||e==="/dev/null"?[]:[e]}function Ub(e){let t=e.split("\t",1)[0]?.trim().replace(/^['"]|['"]$/g,"")??"";return t===""||t==="/dev/null"?[]:[t]}var Qb=new Set(["absolutepath","directorypath","directory_path","file","file_path","filepath","include","notebook_path","path","searchdirectory","search_directory","searchpath","targetfile","target_file"]),ev=new Set([...Qb,"glob"]),Bk=new Set([...ev,"pattern"]),Uk=[],tv={parseCommand:tt,projectShellSyntax:Mb};class gt extends Error{name="StructuralShellSyntaxLimitError";constructor(){super("Structural command analysis limit exceeded.")}}function Ds(e,t={}){let n=jk({...tv,...t}),r=So(e.input),o=[];if((e.route.kind==="command"||e.route.kind==="unknown")&&r)o.push({usage:"input-candidate",source:r});if(e.route.kind==="command"&&"command"in e&&e.command)o.push({usage:"declared-command",source:e.command});let i=o.reduce((s,a)=>{let c=s.findIndex((d)=>d.source===a.source);if(c!==-1){let d=s[c];if(!d)return s;return s[c]={...d,usages:[...d.usages,a.usage]},s}let l=e.route.kind==="command"?e.route.shell:"posix",u=n.getCommandProgram(a.source,l);return s.push({usages:[a.usage],source:a.source,program:u,shell:n.getShellSyntax(a.source,u)}),s},[]);return{invocation:{toolName:e.toolName,route:e.route,context:e.context},commands:i,paths:Hk(e),store:n}}function De(e,t){return e.commands.find((n)=>n.usages.includes(t))}function ht(e){if(!e.includes("$"))return e;return Zi(e,It())}function jk(e={}){let t={...tv,...e},n=new Map,r=new Map,o=new WeakMap,i=(a,c)=>{let l=`${c}\x00${a}`,u=r.get(l);if(u)return u;let d=t.parseCommand(a,c);return r.set(l,d),d};return{getShellSyntax:(a,c)=>{if(c&&c.source!==a)throw TypeError("Shell syntax source does not match command program source.");let l=c??i(a,"posix");if(l.status==="limited"){let f=o.get(l);if(f)return f;let m={status:"structural-limit",source:a,entries:Uk,assignmentFallbacks:[]};return o.set(l,m),m}let u=n.get(a);if(u)return u;let d=t.projectShellSyntax(a,l);return n.set(a,d),d},getCommandProgram:i}}function Hk(e){let t=e.route.kind==="grep"?ev:e.route.kind==="glob"?Bk:Qb;return[...Cu(e.input,t),...e.route.kind==="patch"?wu(e.input):[]]}function we(e,t){let n=new Set,r=!1;for(let o of e){if(o==="--"){r=!0;continue}if(r)continue;if(o.startsWith("-")&&!o.startsWith("--")&&o.length>1)for(let i=1;i<o.length;i++){let s=o[i];if(!s||!/[a-zA-Z]/.test(s))break;let a=`-${s}`;if(n.add(a),t?.shortOptsWithValue?.has(a))break}}return n}var Vk=new Map([["bash",new Set(["O","o"])],["dash",new Set(["o"])],["ksh",new Set(["o"])],["sh",new Set(["o"])],["zsh",new Set(["o"])]]),qk=new Map([["zsh",new Set(["o"])]]),Kk=new Map([["bash",new Set(["--init-file","--rcfile"])]]);function nv(e,t){for(let n=0;n<t.length;n++){let r=t[n];if(r===void 0||r==="--"||r==="-"||r[0]!=="-"&&r[0]!=="+")return null;if(r.startsWith("--")){let s=Kk.get(e);if(Jk(r,s))continue;if(!s?.has(r))continue;if(t[n+1]===void 0)return null;n++;continue}let o=Yk(e,r);if(o.commandSelected)return t[n+o.followingValues+1]??null;let i=t[n+1];if(e==="ksh"&&(r==="-o"||r==="+o")&&i!==void 0&&i[0]!=="-"&&i[0]!=="+")n++;n+=o.followingValues}return null}function Yk(e,t){let n=Vk.get(e),r=qk.get(e),o=!1,i=0;for(let s=1;s<t.length;s++){let a=t[s];if(a===void 0)break;if(t[0]==="-"&&a==="c")o=!0;if(e==="ksh"&&a==="o"){if(s+1<t.length){let c=t.slice(s+1);if(!o&&t[0]==="-"&&c==="c")continue;if(!o&&t[0]==="-"&&c[0]==="-"&&c.endsWith("c"))o=!0;break}if(o)i++;continue}if(!n?.has(a))continue;if(r?.has(a)&&s+1<t.length)break;i++}return{commandSelected:o,followingValues:i}}function Jk(e,t){return t!==void 0&&[...t].some((n)=>e.startsWith(`${n}=`))}var tA=new Set(["-S","--suffix"]);function $s(e,t,n,r){if(e.status==="structural-limit")throw new gt;if(e.status!=="complete")return r.findMalformedTarget(e.source);let o={cwd:t,variables:new Map},i=[];for(let s of e.entries){if(s.kind==="operator"){if(!s.boundary)continue;let a=r.findSegmentTarget(i,o);if(a)return a;o=nA(i,o,n,r.normalizeCwd),i=[];continue}if(s.kind==="redirection"){if(s.role==="file-write"&&s.target&&r.isRedirectionTarget($e(s.target,o.variables),o))return s.target;continue}i.push(s.text)}return r.findSegmentTarget(i,o)}function $e(e,t){return e.replace(/\$\{([A-Za-z_][A-Za-z0-9_]*)(:?[-+])([^}]*)\}/g,(n,r,o,i)=>{let s=t.get(r);if(s===void 0)return n;let a=o.startsWith(":")?s!=="":!0;if(o.endsWith("-"))return a?s:$e(i,t);return a?$e(i,t):""}).replace(/\$\{([A-Za-z_][A-Za-z0-9_]*)\}/g,(n,r)=>t.get(r)??n).replace(/\$([A-Za-z_][A-Za-z0-9_]*)/g,(n,r)=>t.get(r)??n)}function xo(e){return e.length>0&&e.every((t)=>/^[A-Za-z_][A-Za-z0-9_]*=.*/.test(t))}function ov(e,t,n){let r=n.environment.home,o=Zi(e.trim(),n.environment).replace(/\\/g,"/");if(!o)return"";let i=o==="~"?r:o.startsWith("~/")?rv(r,o.slice(2)):o,s=Te(i);return eA(Qk(s)?s:rv(t,s))}function ve(e,t,n){let r=ov(e,t,n);if(!r)return"";return Y(r,n.environment.paths,n).replace(/\\/g,"/")}function iv(e,t,n,r){let o=ov(e,t,n);if(!o)return null;if(r(Xk(o)))return Y(o,n.environment.paths,n).replace(/\\/g,"/");let i=yy(o,n.environment.paths,n);return i===null?null:i.replace(/\\/g,"/")}function Ms(e){let t=[],n=null,r=!1;for(let o=0;o<e.length;o++){let i=e[o];if(i===void 0)break;if(!r&&i==="--"){r=!0;continue}if(!r&&(i==="-t"||i==="--target-directory")){n=e[++o]??null;continue}if(!r&&i.startsWith("--target-directory=")){n=i.slice(19);continue}if(!r&&i.startsWith("-t")&&i.length>2){n=i.slice(2);continue}if(!r&&tA.has(i)){o++;continue}if(!r&&(i.startsWith("--suffix=")||i.startsWith("--backup=")))continue;if(!r&&i.startsWith("-"))continue;t.push(i)}return n?{sources:t,destination:n}:{sources:t.slice(0,-1),destination:t.at(-1)??null}}function nA(e,t,n,r){let o=xo(e)?new Map([...t.variables,...rA(e,t.variables)]):t.variables,i=ir([...e],n.environment),s=G(i[0]??"").toLowerCase()==="cd"?i[1]:void 0;return{cwd:!s||s==="-"?t.cwd:r($e(s,o),t.cwd,n),variables:o}}function rA(e,t){return e.flatMap((n)=>{let r=/^([A-Za-z_][A-Za-z0-9_]*)(.*)$/.exec(n),o=r?.[2]?.startsWith("=")?r[2].slice(1):void 0;return r?.[1]!==void 0&&o!==void 0?[[r[1],$e(o,t)]]:[]})}var Ve="Git metadata and hooks are protected. Ask the user before modifying them.";function lv(e,t=Eu([e.invocation.context.executionCwd,e.invocation.context.configCwd])){let n=yn(It()),r=e.invocation.context.executionCwd;if(!t)return null;if(e.invocation.route.kind==="patch"||e.invocation.route.kind==="path"||e.invocation.route.kind==="unknown"){if(Ns(e.invocation.toolName))return null;let s=e.paths.find((a)=>uA(a,r,t,n));return s?{target:s}:null}if(e.invocation.route.kind!=="command")return null;let o=De(e,"input-candidate");if(!o)return null;let i=$s(o.shell,r,n,{findSegmentTarget:(s,a)=>mA(s,a,t,n),isRedirectionTarget:(s,a)=>dA(s,a.cwd,t,n),findMalformedTarget:()=>null,normalizeCwd:ve});return i?{target:i}:null}function Eu(e,t=yn(It())){let n=[...new Map(e.filter((r)=>typeof r==="string"&&r!=="").flatMap((r)=>{let o=io(ve(r,r,t));return o?[[rt(o),{dotGitPath:o,cwd:r}]]:[]})).values()].flatMap((r)=>sA(r.dotGitPath,r.cwd,t));if(n.length===0)return null;return Object.freeze({entries:Object.freeze([...new Set(n.map((r)=>r.entry))]),markerFiles:Object.freeze([...new Set(n.flatMap((r)=>r.markerFile?[r.markerFile]:[]))]),directories:Object.freeze([...new Set(n.flatMap((r)=>r.directories))]),hooksDirectories:Object.freeze([...new Set(n.flatMap((r)=>r.hooksDirectories))])})}function sA(e,t,n){try{let r=ve(e,t,n),o=oA(e),i=o.isFile()?r:null,s=o.isFile()?ql(e):null,a=(o.isDirectory()?[r]:[s?.gitDir,s?.commonDir]).flatMap((l)=>l?[rt(ve(l,t,n))]:[]),c=[...new Set(o.isDirectory()?[rt(e.replace(/\\/g,"/")),...a]:a)];return[{entry:rt(r),markerFile:i?rt(i):null,directories:c,hooksDirectories:[...new Set(c.flatMap((l)=>{let u=rt(iA(l,"hooks"));return[u,rt(ve(u,t,n))]}))]}]}catch{return[]}}function wn(e,t,n,r,o,i=!1){if(!n)return!1;let s=rt(ve(e,t,o)),a=s.replace(/(\/\.?\*+)+$/,"");if(a!==s&&a!==""){if(Ru(a,n))return!0;let c=i||s.slice(a.length).includes("/."),l=(u)=>c?Ls(u,a):aA(u,a);if(n.markerFiles.some(l))return!0;return r&&sv(n).some(l)}if(Ru(s,n))return!0;return r&&sv(n).some((c)=>Ls(c,s))}function aA(e,t){let n=cv(t,e);if(n===""||n.startsWith("..")||av(n))return!1;return!n.split(/[\\/]/)[0]?.startsWith(".")}function cA(e,t,n,r){return wn(e,t,n,!0,r)}function lA(e,t,n,r){if(!n)return!1;return Ru(rt(ve(e,t,r)),n)}function uA(e,t,n,r){if(!n)return!1;return uv(e,t,n,r,n.entries)}function dA(e,t,n,r){if(!n)return!1;return uv(e,t,n,r,n.markerFiles)}function uv(e,t,n,r,o){let i=rt(ve(e,t,r));return o.includes(i)||mv(i,n)}function dv(e,t,n,r){if(!n)return!1;return n.hooksDirectories.some((o)=>e.some((i)=>Ls(o,rt(ve(i,t,r)))))}function Ru(e,t){return t.entries.includes(e)||t.directories.includes(e)||mv(e,t)}function mv(e,t){return t.hooksDirectories.some((n)=>Ls(e,n))}function sv(e){return[...e.entries,...e.directories,...e.hooksDirectories]}function Ls(e,t){let n=cv(t,e);return n===""||!/^\.\.(?:[\\/]|$)/.test(n)&&!av(n)}function rt(e){return process.platform==="win32"?e.toLowerCase():e}function mA(e,t,n,r){if(xo(e))return null;let o=Jt([...e],r.environment);if(G(o[0]??"").toLowerCase()!=="mv")return null;let i=Ms(o.slice(1)),s=i.sources.find((a)=>cA($e(a,t.variables),t.cwd,n,r));if(s)return s;return i.destination&&lA($e(i.destination,t.variables),t.cwd,n,r)?i.destination:null}import{isAbsolute as Pu,join as fA,normalize as pA,sep as Ws}from"path";var fv=process.platform==="win32",gA=/[*?]/;function _o(e,t){if(e==="~")return t;if(e.startsWith("~/"))return`${t}${e.slice(1)}`;return e}function Gs(e,t){if(typeof e!=="string"||e.trim()==="")return"must be a non-empty path string";let n=_o(e.trim(),t);if(!Pu(n))return"must be an absolute path or start with ~/";return Co(n,t)}function Zs(e,t){let n=pv(e,t);if(n===null)return"must be a non-empty path string";if(!Pu(n))return null;if(Co(n,t)===null)return null;return"cannot be the home directory or a path above it (this would block every command the agent runs)"}var hA="cannot cover the home directory or a path above it (this would disable secret protection everywhere)",yA="cannot cover the guard's own configuration";function pv(e,t){if(typeof e!=="string"||e.trim()==="")return null;return _o(e.trim().replace(/^\$(?:\{HOME\}|HOME(?=\/|$))/,"~"),t)}function Bs(e,t){let n=pv(e,t);if(n===null)return"must be a non-empty path string";if(gA.test(n))return"cannot contain glob characters (* or ?); list the exact file or directory";if(!Pu(n))return null;if(Co(n,t)!==null)return hA;return bA(n,t)?yA:null}function bA(e,t){let n=Fs(e),r=Fs(fA(t,".cc-safety-net"));return n===r||n.startsWith(`${r}${Ws}`)}function Co(e,t){let n=Fs(e),r=Fs(t);if(n===r)return"cannot be the home directory";let o=n.endsWith(Ws)?n:`${n}${Ws}`;if(r.startsWith(o))return"cannot contain the home directory";return null}function Fs(e){let t=pA(e);if(fv)t=t.replace(/\//g,"\\").toLowerCase();if(t.length>(fv?3:1)&&t.endsWith(Ws))t=t.slice(0,-1);return t}var xA=process.platform==="win32",gv=64,_A=16384;function wo(e){let t=_b(e,gv,gv,_A);return{expandedTargets:t&&"words"in t?t.words:void 0,unsafeBraceExpansion:t!==void 0&&"limited"in t,targetIsLiteral:t===void 0&&e.provenance==="literal"&&(e.quoted||e.raw!==e.text),tmpdirWordSplittingProtected:CA(e)}}function CA(e){let t=e.parts.filter((n)=>n.provenance==="variable"&&/\$(?:TMPDIR(?![A-Za-z0-9_])|\{TMPDIR\})/.test(n.raw));return t.length>0&&t.every((n)=>wA(e.raw,n.span.start-e.span.start))}function wA(e,t){let n=null,r=!1;for(let o=0;o<t;o++){let i=e[o];if(r){r=!1;continue}if(i==="\\"&&n!=="'"){r=!0;continue}if(n===i){n=null;continue}if(n===null&&(i==="'"||i==='"'))n=i}return n==='"'}function Rn(e){let t=e.environment.home,n=e.environment.paths,r=yn(e.environment);return{anchoredCwd:e.originalCwd??e.cwd??null,resolvedCwd:e.cwd??null,strict:e.strict??!1,paranoid:e.paranoid??!1,trustTmpdirVar:e.allowTmpdirVar??!0,posixShell:e.posixShell??!1,tmpdirWordSplittingUnsafe:e.tmpdirWordSplittingUnsafe??!1,trustedTmpdirValue:e.trustedTmpdirValue??e.allowTmpdirVar??!0,environment:e.environment,allowRoots:AA(e.allowPaths,t,n,r),protectedGitMetadata:e.protectedGitMetadata,pathCanonicalizationContext:r}}function ot(e,t,n={}){let r=n.targetIsLiteral??!1;if(!r&&t.tmpdirWordSplittingUnsafe&&!n.tmpdirWordSplittingProtected&&IA(e))return{kind:"outside_anchored_cwd"};let o=!r&&vv(e,t.posixShell);if(qt(e))return{kind:"outside_anchored_cwd"};if(Iu(e,r))return{kind:"root_or_home_target"};if(RA(e,t,r))return{kind:"root_or_home_target"};if(t.resolvedCwd&&wn(e,t.resolvedCwd,t.protectedGitMetadata,!0,t.pathCanonicalizationContext,!t.posixShell))return{kind:"git_metadata_target"};if(EA(e,t.trustTmpdirVar,t.posixShell,o,r,n.tmpdirWordSplittingProtected??!1,t.trustedTmpdirValue,t.environment))return{kind:"temp_target"};if(o)return{kind:"dynamic_target"};if(TA(e,t,r))return{kind:"temp_target"};let i=t.anchoredCwd;if(i){if(!n.skipHomeCwd&&DA(i,t.environment.home,t.environment.paths,t.pathCanonicalizationContext))return{kind:"home_cwd_target"};if(!n.skipCwdSelf&&$A(e,t.resolvedCwd??i,t.environment.paths,t.pathCanonicalizationContext))return{kind:"cwd_self_target"};if(MA(e,i,t.resolvedCwd??i,o,r,t.environment.paths,t.pathCanonicalizationContext))return{kind:"within_anchored_cwd"}}return{kind:"outside_anchored_cwd"}}function yv(e,t,n={}){let{containmentTarget:r,...o}=n;if(ot(e,t,o).kind!=="temp_target")return!1;let i=e.trim();if(kA(i))return!1;if(rb(i,t.environment))return!1;return![t.anchoredCwd,t.resolvedCwd].some((s)=>LA(r??i,s,t.environment.paths,t.pathCanonicalizationContext))}function Iu(e,t=!1){let n=e.trim(),r=hv.normalize(n),o=n.replace(/\\/g,"/"),i=r==="/"?r:r.replace(/\/+$/,"");if(i==="/"||i.startsWith("/")&&i.slice(1).split("/").every((s)=>/^\*+$/.test(s)))return!0;if(/^[A-Za-z]:\/+\*?$/.test(o)||/^\/\/[^/]+\/+[^/]+(?:\/+\*?)?$/.test(o))return!0;if(!t&&(r==="~"||r==="~/"||r==="~/*"))return!0;if(!t&&(r==="$HOME"||r==="$HOME/"||r==="$HOME/*"))return!0;if(!t&&(r==="${HOME}"||r==="${HOME}/"||r==="${HOME}/*"))return!0;return!1}function RA(e,t,n){let r=e.trim(),o=n?r:r==="*"?".":r.endsWith("/*")?r.slice(0,-2):r;if(!o)return!1;try{let i=Tu(o)?o:t.resolvedCwd?lr(t.resolvedCwd,o):null;if(!i)return!1;let s=Re(Y(i,t.environment.paths,t.pathCanonicalizationContext));if(s===SA(s).root)return!0;return s===Re(Y(t.environment.home,t.environment.paths,t.pathCanonicalizationContext))}catch{return!1}}function Re(e){let t=vA(e);if(xA){if(t=t.replace(/\//g,"\\").toLowerCase(),t.length>3&&t.endsWith("\\"))t=t.slice(0,-1);return t}if(t.length>1&&t.endsWith("/"))t=t.slice(0,-1);return t}function EA(e,t,n,r,o,i,s,a){let c=e.trim();if(bv(c))return!1;if(!r&&eu(c,a))return!0;return(t||i&&s)&&n&&!o&&PA(c,n)}function PA(e,t){return["$TMPDIR","${TMPDIR}"].some((n)=>{if(e===n)return!0;if(!e.startsWith(`${n}/`))return!1;return!vv(e.slice(n.length+1),t)})}function kA(e){let t=/^(?:\$TMPDIR|\$\{TMPDIR\})(?:\/(.*))?$/.exec(e);if(!t)return!1;return hv.normalize(`/${t[1]??""}`)==="/"}function bv(e){return e.split(/[\\/]+/).includes("..")}function AA(e,t,n,r){if(!e?.length)return[];return e.flatMap((o)=>{let i=_o(o.trim(),t);if(!Tu(i))return[];try{let s=Y(i,n,r);if(Co(s,Y(t,n,r)))return[];return[Re(s)]}catch{return[]}})}function TA(e,t,n){if(t.allowRoots.length===0)return!1;let r=e.trim();if(bv(r))return!1;let o=n?r:_o(r,t.environment.home),i=t.resolvedCwd??t.anchoredCwd,s=Tu(o)?o:i?lr(i,o):null;if(!s)return!1;try{let a=Re(Y(s,t.environment.paths,t.pathCanonicalizationContext));return t.allowRoots.some((c)=>a===c||a.startsWith(c.endsWith(Au)?c:`${c}${Au}`))}catch{return!1}}function IA(e){return/\$(?:TMPDIR(?![A-Za-z0-9_])|\{TMPDIR\})/.test(e)}function vv(e,t=!1){return e.includes("$")||e.includes("`")||OA(e)||t&&zA(e)}function OA(e){let t=!1;for(let n of e){if(t){t=!1;continue}if(n==="\\"){t=!0;continue}if(n==="*"||n==="?"||n==="[")return!0}return!1}function zA(e){let t=!1;for(let n=0;n<e.length;n++){let r=e[n];if(t){t=!1;continue}if(r==="\\"){t=!0;continue}if(r==="{"&&NA(e,n)||(r==="+"||r==="@"||r==="!")&&e[n+1]==="(")return!0}return!1}function NA(e,t){let n=e.indexOf("}",t+1);if(n===-1)return!1;let r=e.slice(t+1,n);return r.includes(",")||r.includes("..")}function DA(e,t,n,r){try{return Re(Y(e,n,r))===Re(Y(t,n,r))}catch{try{return Re(e)===Re(t)}catch{return!1}}}function $A(e,t,n,r){if(e==="."||e==="./"||e===".\\")return!0;try{return Re(Y(lr(t,e),n,r))===Re(Y(t,n,r))}catch{try{return Re(lr(t,e))===Re(t)}catch{return!1}}}function MA(e,t,n,r,o,i,s){let a=n??t;if(!o&&(e.startsWith("~")||e.startsWith("$HOME")||e.startsWith("${HOME}")))return!1;if(r)return!1;if(e.startsWith("/")||/^[A-Za-z]:[\\/]/.test(e))try{return ku(e,t,i,s)}catch{return!1}if(e.startsWith("./")||e.startsWith(".\\")||!e.includes("/")&&!e.includes("\\"))try{return ku(lr(a,e),t,i,s)}catch{return!1}if(e.startsWith("../"))return!1;try{return ku(lr(a,e),t,i,s)}catch{return!1}}function ku(e,t,n,r){try{return Sv(Y(e,n,r),Y(t,n,r))}catch{return!1}}function LA(e,t,n,r){if(!t)return!1;try{return Sv(Y(t,n,r),Y(e,n,r))}catch{return!0}}function Sv(e,t){let n=Re(e),r=Re(t);return n.startsWith(`${r}${Au}`)||n===r}var WA=new Set(["remove-item","ri","del","erase","rd","rm","rmdir"]),xv="PowerShell Remove-Item -Recurse -Force outside cwd is blocked. Retry deleting only explicit paths inside the current directory; escalate for anything outside it.",FA="PowerShell Remove-Item -Recurse -Force for non-temporary paths is blocked by the active safety policy. Retry deleting only explicit paths inside the current directory; escalate for anything outside it.",_v="PowerShell Remove-Item target contains variables or pipeline input that cannot be verified safely. Use literal paths within cwd.",Cv="PowerShell Remove-Item targeting root or home directory is extremely dangerous and always blocked.",GA="PowerShell Remove-Item -Recurse -Force in home directory is dangerous. Change to a project directory first.",ZA="PowerShell Remove-Item receives pipeline input that cannot be verified safely. Use explicit literal paths within cwd.";function wv(e,t,n,r=Rn({...n,allowPaths:n.policy?.destructiveCommandAllowPaths})){return BA(e.words.map((o)=>({kind:"word",text:o.text,dynamic:o.provenance!=="literal"})),t,r,n.policy)}function BA(e,t,n,r){let o=e.filter((c)=>c.kind==="word"),i=jA(o),s=o[i];if(!s||!WA.has(eT(s.text)))return null;let a=UA(o.slice(i+1));if(a.whatIfProtected)return null;if(ue(r,"powershell.remove-item-pipeline-dynamic-target",n.strict)&&t&&(a.targets.length===0||a.recursive))return S("powershell.remove-item-pipeline-dynamic-target",ZA);for(let c of a.targets)if(!qt(c.text)&&Iu(zu(c.text)))return S(a.recursive&&a.force?"powershell.remove-item-recursive-force-root-or-home":"powershell.remove-item-root-or-home",Cv);for(let c of a.targets)if(n.resolvedCwd&&wn(zu(c.text),n.resolvedCwd,n.protectedGitMetadata,a.recursive,n.pathCanonicalizationContext,!0))return S("powershell.remove-item-git-metadata",Ve);if(!a.recursive||!a.force)return null;if(ue(r,"powershell.remove-item-recursive-force-dynamic-target",n.strict)&&(a.hasDynamicTarget||a.targets.length===0))return S("powershell.remove-item-recursive-force-dynamic-target",_v);for(let c of a.targets){let l=tT(ot(zu(c.text),n),n,r);if(l)return l}return null}function UA(e){let t=[],n=!1,r=!1,o=!1,i=!1,s=!1;for(let a=0;a<e.length;a++){let c=e[a];if(!c||c.kind!=="word")continue;if(HA(c))continue;if(s){t.push(Ou(c)),i=i||c.dynamic;continue}if(c.text==="--"){s=!0;continue}let l=qA(c.text);if(!l){t.push(Ou(c)),i=i||c.dynamic;continue}if(KA(l.name)){let u=l.value?VA(l.value,c):e[++a];if(u?.kind==="word")t.push(Ou(u)),i=i||u.dynamic;else i=!0;continue}if(YA(l.name)){n=!0;continue}if(JA(l.name)){r=!0;continue}if(XA(l.name))o=QA(l.value)}return{targets:t,recursive:n,force:r,whatIfProtected:o,hasDynamicTarget:i}}function jA(e){let t=e[0];if(t?.kind==="word"&&t.text==="&"||t?.text===".")return e.length>1?1:0;return 0}function Ou(e){return{text:e.kind==="word"?e.text:"",dynamic:e.kind==="word"&&e.dynamic}}function HA(e){return e.kind==="word"&&e.text===","}function zu(e){let t=e.replace(/\\/g,"/"),n=/^\$env:(?:userprofile|home)(?=$|\/)/i.exec(t);return n?`$HOME${t.slice(n[0].length)}`:t}function VA(e,t){return{kind:"word",text:e,dynamic:t.kind==="word"&&(t.dynamic||e.includes("$"))}}function qA(e){if(!e.startsWith("-")||e==="-")return null;let t=e.slice(1),n=t.indexOf(":");if(n===-1)return{name:t.toLowerCase()};return{name:t.slice(0,n).toLowerCase(),value:t.slice(n+1)}}function KA(e){return"path".startsWith(e)||"literalpath".startsWith(e)}function YA(e){return"recurse".startsWith(e)}function JA(e){return e.length>=2&&"force".startsWith(e)}function XA(e){return e==="wi"||"whatif".startsWith(e)}function QA(e){if(e===void 0||e==="")return!0;let t=e.toLowerCase();return t==="$true"||t==="true"}function eT(e){return e.toLowerCase()}function tT(e,t,n){switch(e.kind){case"root_or_home_target":return S("powershell.remove-item-recursive-force-root-or-home",Cv);case"git_metadata_target":return S("powershell.remove-item-git-metadata",Ve);case"temp_target":return null;case"dynamic_target":if(!ue(n,"powershell.remove-item-recursive-force-dynamic-target",t.strict))return null;return S("powershell.remove-item-recursive-force-dynamic-target",_v);case"home_cwd_target":return S("powershell.remove-item-recursive-force-home-cwd",GA);case"cwd_self_target":return S("powershell.remove-item-recursive-force-cwd-self",xv);case"within_anchored_cwd":if(!ue(n,"powershell.remove-item-recursive-force-paranoid",t.paranoid))return null;return S("powershell.remove-item-recursive-force-paranoid",FA);case"outside_anchored_cwd":return S("powershell.remove-item-recursive-force-outside-cwd",xv)}}import{normalize as ia}from"path";var Me=new Set(["awk","gawk","nawk","mawk"]),nT=new Set(["-e","--source"]),rT=new Set(["-F","-v","--assign","--field-separator"]),Rv=new Set(["-f","--file"]),oT=new Set(["print","printf","return"]),Ev=[{selector:"-e",kind:"inline-code",valueForm:"attached-or-separate"},{selector:"--source",kind:"inline-code",valueForm:"equals-or-separate"},{selector:"-f",kind:"program-file",valueForm:"attached-or-separate"},{selector:"--file",kind:"program-file",valueForm:"equals-or-separate"}],iT="Detected awk system(), pipe, or getline command with dynamic command that cannot be safely analyzed. Use a literal command or process the data without system(), pipes, or getline.";function Hs(e,t,n){let r=!1;for(let o of sT(e)){let i=aT(o,n);if(!i)continue;for(let s of i.commands){let a=t(s);if(a)return a;if(s.includes("{}")||/[$`]/.test(s))r=!0}r||=i.dynamic}return r?S("awk.system-dynamic",iT):null}function Du(e){let t=[],n=!1,r=!1,o=!0,i=!0;for(let s=1;s<e.length;s++){let a=e[s];if(a===void 0)break;if(o&&a==="--"){o=!1;continue}if(o&&nT.has(a)){n=!0;let c=e[s+1];if(c!==void 0)t.push({tokenIndex:s+1,kind:"inline-code",value:c});else i=!1;s++;continue}if(o&&a.startsWith("--source=")){n=!0,t.push({tokenIndex:s,kind:"inline-code",value:a.slice(9)});continue}if(o&&a.startsWith("-e")&&a.length>2){n=!0,t.push({tokenIndex:s,kind:"inline-code",value:a.slice(2)});continue}if(o&&(rT.has(a)||Rv.has(a))){if(Rv.has(a)){r=!0;let c=e[s+1];if(c!==void 0)t.push({tokenIndex:s+1,kind:"program-file",value:c});else i=!1}else if(e[s+1]===void 0)i=!1;s++;continue}if(o&&(a.startsWith("-F")||a.startsWith("-v")&&a.slice(2).includes("=")))continue;if(o&&a.startsWith("-f")&&a.length>2){r=!0,t.push({tokenIndex:s,kind:"program-file",value:a.slice(2)});continue}if(o&&(a.startsWith("--assign=")||a.startsWith("--field-separator=")))continue;if(o&&a.startsWith("--file=")){r=!0,t.push({tokenIndex:s,kind:"program-file",value:a.slice(7)});continue}if(o&&a.startsWith("-")&&a!=="-")continue;if(o=!1,!n&&!r)t.push({tokenIndex:s,kind:"main-program",value:a});return{sources:t,optionsOpen:!1}}return{sources:i?t:[],optionsOpen:o&&i}}function Eo(e){return Du(e).sources}function sT(e){return Eo(e).filter((t)=>t.kind!=="program-file").map((t)=>t.value)}function aT(e,t){Ie(t,e);let n=e.includes("system")?$u(e,t):null,r=cT(e,t);if(!n&&!r)return null;return{dynamic:!!n?.dynamic||!!r?.dynamic,commands:[...n?.commands??[],...r?.commands??[]]}}function $u(e,t){Ie(t,e);let n=[],r=!1,o=!1,i=0;while(i<e.length){let s=e[i];if(s==='"'||s==="'"){i=js(e,i,s)?.endIndex??i+1;continue}if(s==="#"){i=Pv(e,i+1);continue}if(s==="/"&&kv(e,i)){i=Av(e,i+1)??i+1;continue}if(!e.startsWith("system",i)){i++;continue}let a=i;if(i+=6,Ro(e[a-1])||Ro(e[i]))continue;let c=Us(e,i);if(e[c]!=="(")continue;c=Us(e,c+1);let l=e[c];if(l!=='"'&&l!=="'"){r=!0,o=!0;continue}let u=js(e,c,l);if(!u){r=!0,o=!0;continue}if(c=Us(e,u.endIndex),r=!0,e[c]!==")"){o=!0,i=u.endIndex;continue}n.push(u.value),i=c+1}if(!r)return null;return{dynamic:o,commands:n}}function cT(e,t){Ie(t,e);let n=[],r=!1,o=!1,i=0,s=0,a=null,c=null,l=0;while(i<e.length){let u=e[i];if(!u)break;if(u==='"'||u==="'"){let m=js(e,i,u);if(m&&l===s)c={...m,startIndex:i};l=m?.endIndex??i+1,i=m?.endIndex??i+1;continue}if(u==="#"){i=Pv(e,i+1),s=i,a=null,c=null,l=i;continue}if(u==="/"&&kv(e,i)){let m=Av(e,i+1);l=m??i+1,i=m??i+1;continue}if(`;
|
|
50
|
-
{}`.includes(u)){i++,s=i,a=null,c=null,l=i;continue}if(a===null&&(
|
|
51
|
-
}#`.includes(r)}function
|
|
52
|
-
`,r:"\r",t:"\t",v:"\v"}[n]??n,endIndex:t}}function
|
|
53
|
-
`,t);return n===-1?e.length:n+1}function kv(e,t){let n=pT(e,t);if(n===-1)return!0;if("{([,;!~=".includes(e[n]??""))return!0;let r=n;while(Ro(e[r-1]))r--;return oT.has(e.slice(r,n+1))}function pT(e,t){for(let n=t-1;n>=0;n--)if(!/\s/.test(e[n]??""))return n;return-1}function Av(e,t){let n=!1;for(let r=t;r<e.length;r++){let o=e[r];if(!o)break;if(n){n=!1;continue}if(o==="\\"){n=!0;continue}if(o==="/")return r+1}return null}var Tv=new Set(["rm","find","xargs","parallel"]),gT=new Set(["sudo","env","command","builtin"]),hT=new Set(["git","busybox",...Tv,...de,...Vy,...Me]);function Vs(e,t){let n=e[0];if(!n||!t.transparentWrappers.includes(G(n)))return null;let r=G(n),o=e[1]==="--"?2:1,i=yT(e,o,r,t),s=i[0];if(s===void 0)return null;return{wrapper:r,tokens:[...e.slice(s)],childIndex:s,alternativeChildIndices:i.slice(1)}}function yT(e,t,n,r){let o=e[1]==="--",i=[];for(let s=t;s<e.length;s++){let a=e[s];if(!a)continue;if(G(a)!==n&&bT(a,r))i.push(s);else if(rs.has(H(a)))break;if(o)break}return i}function bT(e,t){let n=G(e),r=H(e);return r==="git"||n==="busybox"||En(e)||Tv.has(n)||t.transparentWrappers.includes(n)||de.has(r)||e==="$SHELL"||ze(r)||Me.has(r)||t.rules.some((o)=>o.command===n)}function En(e){return gT.has(e.toLowerCase())}function Iv(e){let t=H(e);return hT.has(t)||ze(t)}function it(e,t){let n=t.policy??{rules:[],transparentWrappers:[]};return qs([...e],t.environment,t.cwd,t.cwd,new Map,new Map(t.envAssignments??[]),n,{iterations:0},!1)}function*qs(e,t,n,r,o,i,s,a,c){let l=hs(e,t,n,i);for(let[m,p]of l.envAssignments)i.set(m,p),o.set(m,p);let{tokens:u,cwd:d}=l;if(l.envSplitValues){let m=gs(l.envSplitValues,u);if(!m)throw new Oe;Mu(a),yield*qs(m,t,d,r,o,i,s,a,c);return}if(En(u[0]??""))throw new Oe;let f=Vs(u,s);if(f){for(let m of[f.childIndex,...f.alternativeChildIndices])Mu(a),yield*qs(m===f.childIndex?f.tokens:[...u.slice(m)],t,d,r,new Map(o),new Map(i),s,a,!0);return}if(ST(u)){Mu(a),yield*qs([...u.slice(1)],t,d,r,o,i,s,a,c);return}yield vT(u,d,r,o,i,c)}function vT(e,t,n,r,o,i){return{tokens:e,cwd:t===null?void 0:t??n,wrapperCwd:t,wrapperEnvAssignments:r,envAssignments:o,head:G(e[0]??"").toLowerCase(),wrappedByTransparent:i}}function Mu(e){if(e.iterations>=er)throw new Oe;e.iterations++}function ST(e){return G(e[0]??"").toLowerCase()==="busybox"&&e.length>1}function Lu(e,t){let n=[],r=t;while(r<e.length){let o=e[r];if(o===void 0||o===":::")break;n.push(o),r++}return{markerIndex:r<e.length&&e[r]===":::"?r:-1,templateTokens:n}}function st(e){let t=!1,n=!1;for(let r of e){if(r==="--")break;if(r==="-r"||r==="-R"||Wu(r,"recursive"))t=!0;else if(r==="-f"||Wu(r,"force"))n=!0;else if(r.startsWith("-")&&!r.startsWith("--")){if(r.includes("r")||r.includes("R"))t=!0;if(r.includes("f"))n=!0}}return t&&n}function Ov(e){let t=e.indexOf("--");return e.slice(1,t===-1?void 0:t).some((n)=>Wu(n,"recursive")||/^-[A-Za-z]+$/.test(n)&&/[rR]/.test(n.slice(1)))}function Wu(e,t){return e.length>2&&e.startsWith("--")&&t.startsWith(e.slice(2))}var xT="find -delete permanently removes files. Use -print first to preview.",_T="find -exec rm -rf is dangerous. Use explicit file list instead.",CT=new Set(["-exec","-execdir","-ok","-okdir"]),wT=new Map([...["-Bmin","-Bnewer","-Btime","-amin","-anewer","-atime","-cmin","-cnewer","-context","-ctime","-f","-flags","-fprint","-fprint0","-fls","-fstype","-gid","-group","-ilname","-iname","-inum","-ipath","-iwholename","-iregex","-links","-lname","-maxdepth","-mindepth","-mmin","-mnewer","-mtime","-name","-newer","-newerXY","-newermt","-path","-perm","-printf","-regex","-samefile","-size","-type","-uid","-used","-user","-wholename","-xattrname","-xtype"].map((e)=>[e,1]),["-fprintf",2]]);function Ks(e,t){let n=e.map(N),r=RT(e,n,t);if(r)return r;if(Js(n,1)&&!PT(e,n,t)){let s=O(S("find.delete",xT),t.policy);if(s)return s}let o=t.derivedCommandWorkBudget??ts(),i=0;while(i<n.length){let s=n[i],a=Qt(s??"");if(a>0){i+=a+1;continue}if(!Ft(s)){i++;continue}Xe(o,n.length-i-1);let c=Po(n,i);i=c.nextIndex;let l=AT(c.tokens,t.environment);if(l){let m=O(l,t.policy);if(m)return m}let u=s==="-execdir"||s==="-okdir",d=t.analyzeTokens?t.analyzeTokens(c.tokens,u?null:t.cwd):t.analyzeNested?t.analyzeNested(c.tokens.join(" "),{effectiveCwd:u?void 0:t.cwd,envAssignments:t.envAssignments}):null,f=d?.id.startsWith("custom.")?d:O(d,t.policy);if(f)return f}return null}function RT(e,t,n){if(!Js(t,1)&&!Fu(t,n.environment))return null;let o=Ys(e)??j(["."]),i=Rn({...n,allowPaths:n.policy?.destructiveCommandAllowPaths,posixShell:!0});for(let s of o){let a=wo(s);for(let c of a.expandedTargets??[N(s)]){let l=ot(c,i,{targetIsLiteral:a.expandedTargets!==void 0||a.targetIsLiteral,tmpdirWordSplittingProtected:a.tmpdirWordSplittingProtected});if(l.kind==="root_or_home_target")return S("rm.recursive-force-root-or-home","rm -rf targeting root or home directory is extremely dangerous and always blocked.");if(l.kind==="git_metadata_target")return S("find.delete-git-metadata",Ve)}}if(ET(t)&&i.resolvedCwd&&dv(o.map(N),i.resolvedCwd,i.protectedGitMetadata,i.pathCanonicalizationContext))return S("find.delete-git-metadata",Ve);return null}function Fu(e,t){let n=0;while(n<e.length){if(!Ft(e[n])){n++;continue}let r=Po(e,n),o=Jt([...r.tokens],t),i=G(o[0]??"").toLowerCase();if((i==="rm"||i==="rmdir")&&o.some((s)=>s.includes("{}")))return!0;n=r.nextIndex}return!1}function ET(e){return e.some((t,n)=>{if(!["-name","-iname"].includes(t))return!1;return e[n+1]?.toLowerCase()==="hooks"})}function PT(e,t,n){if(t.includes("-L")||t.includes("-f")||t.includes("-follow"))return!1;let r=Ys(e);if(!r)return!1;let o=n.envAssignments??new Map,i=Ql(o,n.environment),s=n.trustedTmpdirValue??Lt(o,n.environment),a=n.allowTmpdirVar??!uo(o,n.environment),c=Rn({environment:n.environment,protectedGitMetadata:n.protectedGitMetadata,cwd:n.cwd,originalCwd:n.originalCwd,strict:n.strict,allowTmpdirVar:a&&s&&Boolean(i),allowPaths:n.policy?.destructiveCommandAllowPaths,posixShell:!0,tmpdirWordSplittingUnsafe:n.tmpdirWordSplittingUnsafe??ft(o,n.environment),trustedTmpdirValue:s});return r.every((l)=>{let u=wo(l);if(u.unsafeBraceExpansion)return!1;return(u.expandedTargets??[N(l)]).every((d)=>yv(d,c,{containmentTarget:kT(d,i),targetIsLiteral:u.expandedTargets!==void 0||u.targetIsLiteral,tmpdirWordSplittingProtected:u.tmpdirWordSplittingProtected}))})}function kT(e,t){if(!t)return e;return e.replace(/^(?:\$TMPDIR|\$\{TMPDIR\})/,()=>t)}function Ys(e){let t=(o)=>{let i=e[o];return i?N(i):void 0},n=1;while(t(n)==="-H"||t(n)==="-P")n++;if(t(n)==="--")n++;let r=[];while(n<e.length){let o=t(n),i=e[n];if(!o||!i||o.startsWith("-")||["!","(",")"].includes(o))break;r.push(i),n++}return r.length>0?r:null}function AT(e,t){let n=ir([...e],t);if(n.length===0)return null;let r=G(n[0]??"");if(r==="busybox"&&n.length>1)n=n.slice(1),r=G(n[0]??"");if(r==="rm"&&st(n))return S("find.exec-rm-recursive-force",_T);return null}function Po(e,t){let n=t+1;while(n<e.length&&e[n]!==";"&&!(e[n]==="+"&&e[n-1]==="{}"))n++;return{tokens:e.slice(t+1,n),nextIndex:Math.min(n+1,e.length)}}function Js(e,t){let n=t;while(n<e.length){let r=e[n];if(!r){n++;continue}if(Ft(r)){n=Po(e,n).nextIndex;continue}let o=Qt(r);if(o>0){n+=o+1;continue}if(r==="-delete")return!0;n++}return!1}function Qt(e){return wT.get(e)??(/^-newer[A-Za-z]{2}$/.test(e)?1:0)}function Ft(e){return e!==void 0&&CT.has(e)}function ko(e){let t=tt(e,"posix");if(t.status!=="complete"||t.nodes.length!==1)return null;let n=t.nodes[0];if(n?.kind!=="command")return null;if(n.redirections.length>0||n.nested.length>0)return null;if(n.words.some((r)=>r.provenance==="command-substitution"))return null;return n.words.map((r)=>r.text)}var TT=5,Gu="Git aliases supplied through command-line or environment config can hide or execute commands. Run git without Git alias overrides, or ask the user to run it manually.";function Se(e){let t=e.indexOf("--");if(t===-1)return{index:-1,before:e,after:[]};return{index:t,before:e.slice(0,t),after:e.slice(t+1)}}function Nv(e,t,n){let r=$v(e,t,n),o=IT(r.entries);if(o.size===0)return{blockedReason:r.blockedReason,expanded:!1,tokens:e};let i=e,s=!1;for(let a=0;a<TT;a++){let{subcommand:c,rest:l}=at(i),u=c?.toLowerCase();if(!u||!o.has(u))return{blockedReason:r.blockedReason,expanded:s,tokens:i};let d=o.get(u),f=$T(d);if(f===null||f.length===0)return{blockedReason:Gu,expanded:!0,tokens:i};i=["git",...f,...l],s=!0}return{blockedReason:Gu,expanded:!0,tokens:i}}function Dv(e,t,n){return $v(e,t,n).entries.some((r)=>r.key.toLowerCase()==="core.sshcommand")}function at(e){if(e.length===0)return{subcommand:null,rest:[]};let t=e[0];if((t?G(t).toLowerCase():null)!=="git")return{subcommand:null,rest:[]};let r=1;while(r<e.length){let o=e[r];if(!o)break;if(o==="--"){let i=e[r+1];if(i&&!i.startsWith("-"))return{subcommand:i,rest:e.slice(r+2)};return{subcommand:null,rest:e.slice(r+1)}}if(o.startsWith("-"))if(mt.has(o))r+=2;else if(o.startsWith("-c")&&o.length>2)r++;else if(o.startsWith("-C")&&o.length>2)r++;else r++;else return{subcommand:o,rest:e.slice(r+1)}}return{subcommand:null,rest:[]}}function IT(e){let t=new Map;for(let n of e){let r=n.key.toLowerCase();if(!r.startsWith("alias."))continue;let o=r.slice(6);if(o!=="")t.set(o,n.value)}return t}function $v(e,t,n){if(e.length===0)return{blockedReason:null,entries:[]};let r=e[0];if((r?G(r).toLowerCase():null)!=="git")return{blockedReason:null,entries:[]};let i=zT(t,n);return{blockedReason:i.blockedReason,entries:[...i.entries,...OT(e,t,n)]}}function OT(e,t,n){let r=[],o=1;while(o<e.length){let i=e[o];if(!i||i==="--"||!i.startsWith("-"))return r;if(i==="-c"){let s=Zu(e[o+1]);if(s)r.push(s);o+=2;continue}if(i.startsWith("-c")&&i.length>2){let s=Zu(i.slice(2));if(s)r.push(s);o++;continue}if(i==="--config-env"){let s=zv(e[o+1],t,n);if(s)r.push(s);o+=2;continue}if(i.startsWith("--config-env=")){let s=zv(i.slice(13),t,n);if(s)r.push(s);o++;continue}if(mt.has(i)){o+=2;continue}o++}return r}function zT(e,t){let n=NT(e,t),r=DT(e,t);return{blockedReason:n===null||r===null?Gu:null,entries:[...n??[],...r??[]]}}function NT(e,t){let n=je("GIT_CONFIG_PARAMETERS",e,t);if(n===void 0)return[];let r=[],o=ko(n);if(!o)return null;for(let i of o){let s=Zu(i);if(!s)return null;r.push(s)}return r}function DT(e,t){let n=ji(e,t);if(n.state==="absent")return[];if(n.state==="invalid")return null;let r=[];for(let o=0;o<n.count;o++){let i=je(`GIT_CONFIG_KEY_${o}`,e,t)?.trim(),s=je(`GIT_CONFIG_VALUE_${o}`,e,t);if(!i||s===void 0)return null;r.push({key:i,value:s})}return r}function Zu(e){if(!e)return null;let t=e.indexOf("=");return{key:(t===-1?e:e.slice(0,t)).trim(),value:t===-1?void 0:e.slice(t+1)}}function zv(e,t,n){let r=e?.indexOf("=")??-1;if(!e||r===-1)return null;return{key:e.slice(0,r).trim(),value:je(e.slice(r+1),t,n)}}function $T(e){let t=e?.trimStart();if(!t||t.startsWith("!"))return null;return ko(t)}var MT="git checkout -- discards uncommitted changes permanently. Use 'git stash' first.",LT="git checkout --force discards uncommitted changes. Use 'git stash' first.",WT="git checkout <ref> -- <path> overwrites working tree with ref version. Use 'git stash' first.",FT="git checkout --pathspec-from-file can overwrite multiple files. Use 'git stash' first.",GT="git checkout with multiple positional args may overwrite files. Use 'git switch' for branches or 'git restore' for files.",ZT="git switch --discard-changes discards uncommitted changes. Use 'git stash' first.",BT="git switch --force discards uncommitted changes. Use 'git stash' first.",UT="git restore discards uncommitted changes. Use 'git stash' first, or use --staged to only unstage.",jT="git restore --worktree explicitly discards working tree changes. Use 'git stash' first.",HT="git reset --hard destroys all uncommitted changes permanently. Use 'git stash' first.",VT="git reset --merge can lose uncommitted changes. Use 'git stash' first.",qT="git clean -f removes untracked files permanently. Use 'git clean -n' to preview first.",KT="git rm --force removes tracked files from the working tree. Use 'git rm --cached' to keep the files, or 'git rm --dry-run' to preview first.",YT="git push --force destroys remote history. Use --force-with-lease for safer force push.",JT="git push deletes remote refs. Ask the user to run it manually if deletion is intended.",XT="git push --mirror can force-update and delete remote refs. Ask the user to run it manually if mirror push is intended.",QT="git branch -D force-deletes without merge check. Use -d for safe delete.",eI="git rebase --abort discards rebase conflict resolutions. Use 'git status' first.",tI="git merge --abort discards merge conflict resolutions. Use 'git status' first.",nI="git tag -d permanently deletes tags. Ask the user to run it manually if deletion is intended.",rI="git reflog delete removes recovery history. Ask the user to run it manually if deletion is intended.",oI="git stash drop permanently deletes stashed changes. Consider 'git stash list' first.",iI="git stash clear deletes ALL stashed changes permanently. Use 'git stash list' to review; ask the user to run it manually if intended.",sI="git worktree remove --force can delete uncommitted changes. Remove --force flag.",Mv=new Set(["-b","-B","--orphan","--conflict","--inter-hunk-context","--pathspec-from-file","--unified"]),Lv=new Set(["--recurse-submodules","--track","-t"]),Bu=new Set(["-b","-B","-U"]),Uu=new Set(["-c","-C"]),aI=new Set(["--source","--conflict","--unified","--inter-hunk-context"]),cI=new Set(["-q","--quiet","--no-quiet","-f","--force","--no-force","-d","--detach","--no-detach","-m","--merge","--no-merge","-p","--patch","--no-patch","--guess","--no-guess","--overlay","--no-overlay","--ours","--theirs","--ignore-skip-worktree-bits","--no-ignore-skip-worktree-bits","--no-track","--overwrite-ignore","--no-overwrite-ignore","--ignore-other-worktrees","--no-ignore-other-worktrees","--progress","--no-progress","--pathspec-file-nul","--no-pathspec-file-nul","--no-recurse-submodules"]);function B(e,t){let n=e.split("=",1)[0]??e;return n.length>=4&&t.startsWith(n)&&n.startsWith("--")&&n.slice(2).length>=2}var ur=new Set(["branch","checkout","clean","merge","push","rebase","reflog","reset","restore","rm","stash","switch","tag","worktree"]);function Fv(e){let{subcommand:t,rest:n}=at(e);if(!t)return null;switch(t.toLowerCase()){case"checkout":return en(lI(n));case"switch":return en(uI(n));case"restore":return en(mI(n));case"reset":return pI(n);case"clean":return en(hI(n));case"rm":return en(yI(n));case"push":return Pn(bI(n));case"branch":return Pn(xI(n));case"stash":return Pn(EI(n));case"worktree":return Pn(PI(n));case"rebase":return en(_I(n));case"merge":return en(CI(n));case"tag":return Pn(wI(n));case"reflog":return Pn(RI(n));default:return null}}function en(e){return e?{...e,localDiscard:!0}:null}function Pn(e){return e?{...e,localDiscard:!1}:null}function lI(e){let{index:t,before:n}=Se(e),r=we(n,{shortOptsWithValue:Bu});if(n.some((i)=>B(i,"--force"))||r.has("-f"))return S("git.checkout-force",LT);for(let i of e){if(i==="-b"||i==="-B"||i==="--orphan")return null;if(B(i,"--pathspec-from-file"))return S("git.checkout-pathspec-from-file",FT)}if(t!==-1){if(n.some((s)=>!s.startsWith("-")))return S("git.checkout-ref-path",WT);return S("git.checkout-double-dash",MT)}if(dI(e).length>=2)return S("git.checkout-ambiguous",GT);return null}function uI(e){let{before:t}=Se(e);if(t.some((r)=>B(r,"--discard-changes")))return S("git.switch-discard-changes",ZT);let n=we(t,{shortOptsWithValue:Uu});if(t.some((r)=>B(r,"--force"))||n.has("-f"))return S("git.switch-force",BT);return null}function dI(e){let t=[],n=0;while(n<e.length){let r=e[n];if(!r)break;if(r==="--")break;if(r.startsWith("-"))if(Mv.has(r))n+=2;else if(r.startsWith("--")&&r.includes("="))n++;else if(Lv.has(r)){let o=e[n+1];if(o&&!o.startsWith("-")&&(r==="--recurse-submodules"||r==="--track"||r==="-t"))if((r==="--recurse-submodules"?["checkout","on-demand"]:["direct","inherit"]).includes(o))n+=2;else n++;else n++}else if(r.startsWith("--")&&!cI.has(r)&&!Mv.has(r)&&!Lv.has(r))n++;else n++;else t.push(r),n++}return t}function mI(e){let t=fI(e);if(t.isTerminal||!t.hasPathspec&&!t.hasPatch||!t.hasWorktree)return null;return t.hasExplicitLocation?S("git.restore-worktree",jT):S("git.restore-unstaged",UT)}function fI(e){let t=!1,n=!1,r=!0,o=!1,i=(s)=>{if(!o)r=!1,o=!0;if(s!==void 0)r=s};for(let s=0;s<e.length;s++){let a=e[s];if(a===void 0)break;if(a==="--"){t||=s+1<e.length;break}if(a==="--pathspec-from-file"){t=!0,s++;continue}if(a.startsWith("--pathspec-from-file=")){t=!0;continue}if(a==="-h"||a==="--help"||a==="--version")return{hasPathspec:t,hasPatch:n,hasWorktree:r,hasExplicitLocation:o,isTerminal:!0};if(a==="--staged"){i();continue}if(a==="--no-staged"){i();continue}if(a==="--worktree"){i(!0);continue}if(a==="--no-worktree"){i(!1);continue}if(a==="--patch"){n=!0;continue}if(a==="--no-patch"){n=!1;continue}if(aI.has(a)){s++;continue}if(a.startsWith("--"))continue;if(a==="-"){t=!0;continue}if(!a.startsWith("-")){t=!0;continue}for(let c=1;c<a.length;c++){let l=a.charAt(c);if(l==="h")return{hasPathspec:t,hasPatch:n,hasWorktree:r,hasExplicitLocation:o,isTerminal:!0};if(l==="S"){i();continue}if(l==="W"){i(!0);continue}if(l==="p"){n=!0;continue}if(l==="s"||l==="U"){if(c===a.length-1)s++;break}}}return{hasPathspec:t,hasPatch:n,hasWorktree:r,hasExplicitLocation:o,isTerminal:!1}}function pI(e){let t=null;for(let n of e){if(B(n,"--hard")){t=S("git.reset-hard",HT);break}if(B(n,"--merge")){t=S("git.reset-merge",VT);break}}if(!t)return null;return gI(e)?Pn(t):en(t)}function gI(e){for(let t of e){if(t==="--")return!1;if(!t.startsWith("-"))return!0}return!1}function hI(e){for(let n of e)if(n==="-n"||B(n,"--dry-run"))return null;let t=we(e.filter((n)=>n!=="--"));if(e.some((n)=>B(n,"--force"))||t.has("-f"))return S("git.clean-force",qT);return null}function yI(e){let t=!1,n=!1,r=!1;for(let o of Se(e).before){if(B(o,"--no-force")){t=!1;continue}if(B(o,"--force")){t=!0;continue}if(B(o,"--no-cached")){n=!1;continue}if(B(o,"--cached")){n=!0;continue}if(B(o,"--no-dry-run")){r=!1;continue}if(B(o,"--dry-run")){r=!0;continue}let i=we([o]);t||=i.has("-f"),r||=i.has("-n")}return t&&!n&&!r?S("git.rm-force",KT):null}function bI(e){let{before:t,after:n}=Se(e),r=we(t);if(t.some((s)=>B(s,"--mirror")))return S("git.push-mirror",XT);if(t.some((s)=>B(s,"--force"))||r.has("-f")||Wv(t,n).some(vI))return S("git.push-force",YT);if(t.some((s)=>B(s,"--delete"))||r.has("-d")||Wv(t,n).some(SI))return S("git.push-delete",JT);return null}function Wv(e,t){return[...e.filter((n)=>n!==""&&!n.startsWith("-")),...t]}function vI(e){return e.startsWith("+")||e.includes(":+")}function SI(e){return e.length>1&&e.startsWith(":")}function xI(e){let{before:t}=Se(e),n=we(t),r=n.has("-D")||n.has("-d")||t.some((i)=>B(i,"--delete")),o=n.has("-D")||n.has("-f")||t.some((i)=>B(i,"--force"));if(r&&o)return S("git.branch-force-delete",QT);return null}function _I(e){let{before:t}=Se(e);return t.some((n)=>B(n,"--abort"))?S("git.rebase-abort",eI):null}function CI(e){let{before:t}=Se(e);return t.some((n)=>B(n,"--abort"))?S("git.merge-abort",tI):null}function wI(e){let{before:t}=Se(e);return we(t).has("-d")||t.some((r)=>B(r,"--delete"))?S("git.tag-delete",nI):null}function RI(e){return e[0]==="delete"?S("git.reflog-delete",rI):null}function EI(e){for(let t of e){if(t==="drop")return S("git.stash-drop",oI);if(t==="clear")return S("git.stash-clear",iI)}return null}function PI(e){let{before:t}=Se(e);if(!t.includes("remove"))return null;let r=we(t);if(t.some((o)=>B(o,"--force"))||r.has("-f"))return S("git.worktree-remove-force",sI);return null}import{execFileSync as kI}from"child_process";import{existsSync as Hu,readFileSync as Vu}from"fs";import{dirname as AI,isAbsolute as Bv,join as ju,resolve as Uv}from"path";var TI=["/usr/bin/git","/usr/local/bin/git","/opt/homebrew/bin/git","C:\\Program Files\\Git\\cmd\\git.exe","C:\\Program Files\\Git\\bin\\git.exe"];function jv(e,t,n,r){let o=II(e,t,n);if(o!==null)return o;let i=OI(t,n);if(i!==null)return i;if(Sy(n))return!0;return zI(r)}function II(e,t,n){let r=null,o=1;while(o<e.length){let i=e[o];if(!i||i==="--")return r;if(!i.startsWith("-"))return r;if(i==="-c"){let s=Gv(e[o+1]);if(s!==null)r=s;o+=2;continue}if(i.startsWith("-c")&&i.length>2){let s=Gv(i.slice(2));if(s!==null)r=s;o++;continue}if(i==="--config-env"){let s=Zv(e[o+1],t,n);if(s!==null)r=s;o+=2;continue}if(i.startsWith("--config-env=")){let s=Zv(i.slice(13),t,n);if(s!==null)r=s;o++;continue}if(mt.has(i))o+=2;else o++}return r}function OI(e,t){if(je("GIT_CONFIG_PARAMETERS",e,t)!==void 0)return!0;let n=ji(e,t);if(n.state==="absent")return null;if(n.state==="invalid")return!0;let r=null;for(let o=0;o<n.count;o++){let i=je(`GIT_CONFIG_KEY_${o}`,e,t),s=je(`GIT_CONFIG_VALUE_${o}`,e,t);if(!i?.trim()||s===void 0)return!0;let a=i.trim().toLowerCase();if(qu(a))return!0;if(a!=="submodule.recurse")continue;r=Ao(s)}return r}function zI(e,t=DI()){let n=NI(e);if(n===null||n)return!0;if(t===null)return!0;try{let r=kI(t,["config","--get","submodule.recurse"],{cwd:e,encoding:"utf8",env:$I(process.env),stdio:["ignore","pipe","ignore"]}).trim();return Ao(r)}catch(r){return!MI(r)}}function NI(e){let t=LI(e);if(t===null)return null;for(let n of t){if(!Hu(n))continue;if(GI(n))return!0}return!1}function DI(){for(let e of TI)if(Hu(e))return e;return null}function $I(e){let t={...e};for(let n of Object.keys(t))if(no(n))delete t[n];return t}function MI(e){return typeof e==="object"&&e!==null&&"status"in e&&e.status===1}function LI(e){let t=io(e);if(t===null)return null;let n=WI(t);if(n===null)return null;let r=FI(n);if(r===null)return null;return[ju(r,"config"),ju(n,"config.worktree")]}function WI(e){try{let n=Vu(e,"utf-8").split(/\r?\n/,1)[0]?.trim()??"";if(!n.startsWith("gitdir:"))return e;let r=n.slice(7).trim();if(r==="")return null;return Bv(r)?r:Uv(AI(e),r)}catch{return null}}function FI(e){let t=ju(e,"commondir");if(!Hu(t))return e;try{let n=Vu(t,"utf-8").split(/\r?\n/,1)[0]?.trim()??"";if(n==="")return null;return Bv(n)?n:Uv(e,n)}catch{return null}}function GI(e){let t;try{t=Vu(e,"utf-8")}catch{return!0}let n="",r=!1;for(let o of t.split(/\r?\n/)){let i=o.trim();if(i===""||i.startsWith("#")||i.startsWith(";"))continue;let s=i.match(/^\[([^\]]+)\]$/);if(s){n=s[1]?.trim().toLowerCase()??"";continue}let a=i.indexOf("="),c=(a===-1?i:i.slice(0,a)).trim().toLowerCase(),l=a===-1?"true":i.slice(a+1).trim();if(ZI(n)&&c==="path")return!0;if(n==="submodule"&&c==="recurse")r=Ao(l)}return r}function ZI(e){return e==="include"||e.startsWith("includeif ")}function Gv(e){if(!e)return null;let t=e.indexOf("="),n=(t===-1?e:e.slice(0,t)).toLowerCase();if(qu(n))return!0;if(n!=="submodule.recurse")return null;let r=t===-1?"true":e.slice(t+1).toLowerCase();return Ao(r)}function Ao(e){let t=e.toLowerCase();return t!=="false"&&t!=="no"&&t!=="off"&&t!=="0"}function Zv(e,t,n){let r=e?.indexOf("=")??-1;if(!e||r===-1)return null;let o=e.slice(0,r).toLowerCase();if(qu(o))return!0;if(o!=="submodule.recurse")return null;let i=je(e.slice(r+1),t,n);return i===void 0||Ao(i)}function qu(e){return e==="include.path"||e.startsWith("includeif.")&&e.endsWith(".path")}function Hv(e,t,n){if(!t.localDiscard||!n.worktreeMode||wy(n.env,n.envAssignments))return null;let r=Ry(e,n.cwd);if(!r.gitCwd||r.hasExplicitGitContext)return null;if(!Ey(r.gitCwd))return null;if(BI(e,n,r.gitCwd))return null;return{originalReason:t.reason,gitCwd:r.gitCwd}}function BI(e,t,n){let{subcommand:r,rest:o}=at(e),i=r?.toLowerCase();if(t.dynamicArguments||UI(o)||jv(e,t.env,t.envAssignments,n)||VI(o)||jI(i,o))return!0;return i==="clean"&&qI(o)>1}function UI(e){return e.some((t)=>/[$*?[]/.test(t))}function jI(e,t){if(e==="checkout"){let{before:n}=Se(t),r=we(n,{shortOptsWithValue:Bu}),o=n.some((s)=>B(s,"--force"))||r.has("-f"),i=r.has("-B")||n.some((s)=>s==="-B"||s.startsWith("-B"));return o&&i}if(e==="switch"){let{before:n}=Se(t),r=we(n,{shortOptsWithValue:Uu}),o=n.some((s)=>B(s,"--force"))||n.some((s)=>B(s,"--discard-changes"))||r.has("-f"),i=n.some((s)=>s==="-C"||s.startsWith("-C")||HI(s))||r.has("-C");return o&&i}return!1}function HI(e){let t=e.split("=",1)[0]??e;return t==="--force-create"||t.length>=9&&"--force-create".startsWith(t)}function VI(e){return e.some((t)=>t.startsWith("--recurse-sub"))}function qI(e){let t=0;for(let n of e){if(n==="--force"){t++;continue}if(n.startsWith("-")&&!n.startsWith("--")){for(let r of n.slice(1))if(r==="f")t++}}return t}var KI="Git SSH environment overrides can execute arbitrary commands during network operations. Run git without GIT_SSH/GIT_SSH_COMMAND overrides, or ask the user to run it manually.",YI=new Set(["clone","fetch","pull","push","ls-remote","submodule"]);function dr(e,t){return Vv(e.map(N),t)}function Vv(e,t,n){let r=Nv(e,t.env,t.envAssignments),o=r.blockedReason?O(S("git.alias-config",r.blockedReason),t.policy):null;if(o)return o;let i=r.tokens;if((vy(t.envAssignments)||Dv(e,t.env,t.envAssignments))&&JI(i))return S("git.ssh-env",KI);let s=Fv(i);if(!s)return null;if(r.expanded||r.blockedReason)return s;let a=Hv(e,s,t);if(!a)return s;return n?.(a),null}function qv(e,t){let n=null;return{match:Vv(e.map(N),t,(o)=>{n=o}),relaxation:n}}function JI(e){let{subcommand:t,rest:n}=at(e),r=t?.toLowerCase();if(!r)return!1;if(YI.has(r))return!0;if(r==="archive")return Se(n).before.some((o)=>B(o,"--remote"));return r==="remote"&&XI(n)}function XI(e){return e.find((t)=>!QI(t))?.toLowerCase()==="update"}function QI(e){return e==="-v"||B(e,"--verbose")||B(e,"--no-verbose")}import{isAbsolute as BO}from"path";var Kv="rm -rf outside cwd is blocked. Retry deleting only explicit paths inside the current directory; escalate for anything outside it.",eO="rm -rf for non-temporary paths is blocked by the active safety policy. Retry deleting only explicit paths inside the current directory; escalate for anything outside it.",tO="rm -rf target contains shell variables that cannot be verified safely. Use literal paths within cwd, /tmp, /var/tmp, or $TMPDIR.",Jv="rm -rf targeting root or home directory is extremely dangerous and always blocked.",nO="rm -rf in home directory is dangerous. Change to a project directory first.";function mr(e,t){let n=Rn({...t,allowPaths:t.policy?.destructiveCommandAllowPaths,posixShell:!0}),r=e.map(N),o=st(r),i=Ov(r),s=oO(e);for(let a of s){let c=wo(a.word);if(o&&c.unsafeBraceExpansion){let l=O(Yv({kind:"outside_anchored_cwd"},n,t.policy),t.policy);if(l)return l;continue}for(let l of c.expandedTargets??[a.text]){let u=Te(l),d={targetIsLiteral:c.expandedTargets!==void 0||c.targetIsLiteral,tmpdirWordSplittingProtected:c.tmpdirWordSplittingProtected};if(!i&&n.resolvedCwd&&wn(u,n.resolvedCwd,n.protectedGitMetadata,i,n.pathCanonicalizationContext))return S("rm.git-metadata",Ve);if(i&&!o){let f=ot(u,n,d);if(f.kind==="root_or_home_target")return S("rm.recursive-force-root-or-home",Jv);if(f.kind==="git_metadata_target")return S("rm.git-metadata",Ve);continue}if(!o)continue;for(let f of rO(u,n,d)){let m=Yv(f,n,t.policy),p=O(m,t.policy);if(p)return p}}}return null}function rO(e,t,n){let r=ot(e,t,n);if(r.kind==="cwd_self_target")return[r,ot(e,t,{...n,skipCwdSelf:!0})];if(r.kind!=="home_cwd_target")return[r];let o=ot(e,t,{...n,skipHomeCwd:!0});if(o.kind!=="cwd_self_target")return[r,o];return[r,o,ot(e,t,{...n,skipHomeCwd:!0,skipCwdSelf:!0})]}function oO(e){let t=[],n=!1;for(let r of e.slice(1)){let o=N(r);if(!o)continue;if(o==="--"){n=!0;continue}if(n){t.push({text:o,word:r});continue}if(!o.startsWith("-"))t.push({text:o,word:r})}return t}function Yv(e,t,n){switch(e.kind){case"root_or_home_target":return S("rm.recursive-force-root-or-home",Jv);case"git_metadata_target":return S("rm.git-metadata",Ve);case"temp_target":return null;case"dynamic_target":if(!ue(n,"rm.recursive-force-dynamic-target",t.strict))return null;return S("rm.recursive-force-dynamic-target",tO);case"home_cwd_target":return S("rm.recursive-force-home-cwd",nO);case"cwd_self_target":return S("rm.recursive-force-cwd-self",Kv);case"within_anchored_cwd":if(ue(n,"rm.recursive-force-paranoid",t.paranoid))return S("rm.recursive-force-paranoid",eO);return null;case"outside_anchored_cwd":return S("rm.recursive-force-outside-cwd",Kv)}}var iO={bash:["O","o"],dash:["o"],ksh:["o"],sh:["o"],zsh:["o"]},Qv=new Set(["--init-file","--rcfile"]),sO=["--init-file","--rcfile"],aO=new Map([["bash","BASH_ENV"],["dash","ENV"],["ksh","ENV"],["sh","ENV"]]);function yt(e){for(let t=1;t<e.length;t++){let n=e[t];if(!n)continue;if(n==="-c")return Xv(e,t,!0);if(n.startsWith("-")&&n.includes("c")&&!n.startsWith("--")){let r=Xv(e,t,!1);if(r!==null)return r}}return null}function qe(e){let t=G(e[0]??"").toLowerCase();if(t==="zsh"||t==="ksh")return bt(e).syntaxCheck;let n=!1;for(let r of e.slice(1)){if(r==="--")return n;if(r.startsWith("+")&&!r.startsWith("++")){if(r.slice(1).includes("n"))n=!1;continue}if(!r.startsWith("-")||r.startsWith("--"))return n;let o=r.slice(1);if(o.includes("n"))n=!0;if(o.includes("c"))return n}return n}function Xv(e,t,n){if(e[t+1]==="--")return e[t+2]||null;let r=e[t+1];if(!r||!n&&r.startsWith("-"))return null;return r}function eS(e){let t=G(e[0]??"").toLowerCase(),n=cO(e,t),r=aO.get(t)??null,o=n.argvSource?.kind!=="absent";return{argvSource:t==="bash"?n.argvSource:null,argvSourceApplies:t==="bash"&&n.interactive&&n.argvSource?.kind==="literal",envName:r,envSourceApplies:o&&(r==="BASH_ENV"?!n.interactive:r==="ENV"&&n.interactive)}}function cO(e,t){let n=bt(e),r=n.commandIndex??n.scriptIndex??e.length,o=[],i=!1,s=!0;for(let a=1;a<r;a++){let c=e[a];if(c===void 0||c==="--"||c==="-"||c[0]!=="-"&&c[0]!=="+")break;if(c.startsWith("--")){if(t==="bash"&&s?sO.find((f)=>c===f):void 0){let f=e[a+1];o.push(f===void 0?{kind:"absent"}:{kind:"literal",value:f}),a++;continue}let d=c.split("=",1)[0]??c;if(t==="bash"&&Qv.has(d)&&!c.includes("="))a++;continue}if(t==="bash")s=!1;let l=tS(t,c,e[a+1],"startup");if(l.interactive)i=c[0]==="-";a+=l.followingValues}return{argvSource:o.at(-1)??null,interactive:i}}function tS(e,t,n,r){let o=!1,i=0,s=!1,a=!1,c=!1;for(let l=1;l<t.length;l++){let u=t[l];if(u===void 0)break;if(e==="ksh"&&u==="o"&&l+1<t.length){if(r==="argv"){let d=t.slice(l+1);if(t[0]==="-"&&(d==="c"||d[0]==="-"&&d.endsWith("c")))s=!0}break}if(e==="ksh"&&u==="o"&&l+1===t.length&&(n?.startsWith("-")||n?.startsWith("+")))break;if(e==="zsh"&&u==="o"&&l+1<t.length)break;if(r==="startup"&&u==="i")o=t[0]==="-";if(r==="argv"&&t[0]==="-"&&u==="c")s=!0;if(r==="argv"&&u==="n")c=t[0]==="-";if(r==="argv"&&u==="s")a=t[0]==="-";if(!iO[e]?.includes(u))continue;if(l+1===t.length)i++;break}return{interactive:o,followingValues:i,commandSelected:s,stdinMode:a,syntaxCheck:c}}function bt(e){let t=G(e[0]??"").toLowerCase(),n=!1,r=!1,o=!1;for(let i=1;i<e.length;i++){let s=e[i];if(s===void 0)break;if(s==="--"){let c=n&&e[i+1]!==void 0?i+1:null;return{command:c===null?null:e[c]??null,commandIndex:c,scriptIndex:!n&&!r&&e[i+1]!==void 0?i+1:null,readsStdinAsCommands:!n&&(r||e[i+1]===void 0),syntaxCheck:o}}if(s==="-"||s[0]!=="-"&&s[0]!=="+")return{command:n?s:null,commandIndex:n?i:null,scriptIndex:!n&&!r&&s!=="-"?i:null,readsStdinAsCommands:!n&&(r||s==="-"),syntaxCheck:o};if(s.startsWith("--")){let c=s.split("=",1)[0]??s;if(t==="bash"&&Qv.has(c)&&!s.includes("="))i++;continue}let a=tS(t,s,e[i+1],"argv");if(a.commandSelected)n=!0;if(a.syntaxCheck)o=!0;if(a.stdinMode)r=!0;i+=a.followingValues}return{command:null,commandIndex:null,scriptIndex:null,readsStdinAsCommands:!n,syntaxCheck:o}}var tn={kind:"none"},kn={kind:"dynamic"},lO=new Set(["<","<<","<<-","<<<","<&","<>"]),rS=/\$(?:([0-9]+|[@*]|[A-Za-z_][A-Za-z0-9_]*)|\{!?([0-9]+|[@*]|[A-Za-z_][A-Za-z0-9_]*))/g,uO=/^(?:[0-9]+|[@*])$/,dO=_n.maxWords,mO=_n.maxInputLength;function oS(e){if(!e||G(H(e.words[0]?.text??""))!=="printf")return;if(e.words.some((o)=>o.provenance!=="literal"))return;let t=e.words.slice(e.words[1]?.text==="--"?2:1),n=t[0]?.text;if(n===void 0)return"";let r=t.slice(1).map((o)=>o.text);if(n==="%s")return r.join("");if(n==="%s\\n"||n===`%s
|
|
46
|
+
`?2:1;continue}if(/\s/.test(a??"")){r++;continue}let c=$b(e,r,Math.min(e.length,Es.maxInputLength),Es.maxDepth);if(c){i||=!!c.issue||c.limited,r=c.next;continue}let l=du(e,r);if(l){s(),r+=l.length;continue}if(a==="{"||a==="}"){s(),r++;continue}let u=au(e,r,Math.min(e.length,Es.maxInputLength),Es,0);if(u.word.text)n.push(u.word.text);for(let d of u.nested)t.push(...lu(d));o++,r=u.next>r?u.next:r+1}return s(),{commands:t,invalidComment:i}}function lu(e){return e.nodes.flatMap((t)=>{if(t.kind==="group")return lu(t.body);if(t.kind!=="command")return[];return[t.words.map((n)=>n.text),...t.nested.flatMap(lu)]})}function du(e,t){for(let n of["&&","||",";","|"])if(e.startsWith(n,t))return n;return null}function $b(e,t,n,r){if(e[t]==="#"&&e[t+1]!==">"){let s=t+1;while(s<n&&e[s]!=="\r"&&e[s]!==`
|
|
47
|
+
`)s++;return{next:s,limited:!1}}if(!e.startsWith("<#",t))return null;let o=1,i=t+2;while(i<n){if(e.startsWith("<#",i)){if(o++,o>r)return{next:n,issue:{code:"comment-depth-limit",message:`PowerShell block comment exceeds nesting limit ${r}`,span:{start:t,end:i+2}},limited:!0};i+=2;continue}if(e.startsWith("#>",i)){if(o--,i+=2,o===0)return{next:i,limited:!1};continue}i++}return{next:n,issue:{code:"unclosed-block-comment",message:"PowerShell block comment is not closed",span:{start:t,end:n}},limited:!1}}function gA(e,t){if(t)return"limited";if(e.some((n)=>n.code==="unclosed-block-comment"))return"invalid";return e.length>0?"partial":"complete"}function su(e,t,n){return Object.freeze({kind:"connector",operator:e.slice(t,n),span:Object.freeze({start:t,end:n})})}var vn=Object.freeze({maxInputLength:131072,maxWords:16384,maxDepth:64});function rt(e,t="auto",n=vn){if(t==="powershell"||t==="auto"&&zb(e.slice(0,n.maxInputLength)))return Nb(e,n);return xb(e,n)}function po(e,t){if(e!=="powershell")return t[0]?.provenance==="command-substitution";let n=t[0]?.text==="&"||t[0]?.text==="."?1:0,r=t[n]?.provenance;return r!==void 0&&r!=="literal"}var hA=/^[A-Za-z_][A-Za-z0-9_]*=/;function ws(e,t){return e?.provenance==="literal"&&!e.quoted&&e.raw===t&&e.text===t}function Rs(e){let t=ws(e.words[0],"time")?1:0,n=t===1&&ws(e.words[t],"-p")?t+1:t,r=t===1&&ws(e.words[n],"--")?n+1:n,o=ws(e.words[r],"!")?r+1:r,i=e.words.slice(o).find((s)=>!hA.test(s.text));return i?.provenance==="literal"?i.text:void 0}function go(e,t){if(t.escaped)return t.escaped=!1,!0;if(e==="\\"&&!t.inSingle)return t.escaped=!0,!0;if(e==="'"&&!t.inDouble)return t.inSingle=!t.inSingle,!0;if(e==='"'&&!t.inSingle)return t.inDouble=!t.inDouble,!0;return!1}function ir(e){let t={inSingle:!1,inDouble:!1,escaped:!1};for(let n of yA(e))go(n,t);return t.inSingle||t.inDouble}function yA(e){let t="",n={inSingle:!1,inDouble:!1,escaped:!1},r=!1,o=!0;for(let i=0;i<e.length;i++){let s=e[i];if(!s)break;if(r){if(s===`
|
|
48
|
+
`||s==="\r")t+=s,r=!1,n.escaped=!1;continue}if(s==="#"&&!n.inSingle&&!n.inDouble&&o){r=!0;continue}if(t+=s,!n.inSingle&&!n.inDouble&&!n.escaped)o=/[\s;&|()<>]/.test(s);go(s,n)}return t}var bA=new Set(["&&","||","|&","|","&",";"]),vA=new Set(["<<","<<<",">|"]),_A=/[*@#?$!_-]/,mu=Object.freeze([]),SA=Object.freeze([]),xA=256;function Zb(e,t){let n=t.status==="complete"?new Set(pu(t)):new Set,r=[...n].reduce((s,a)=>s.slice(0,a.start)+" ".repeat(a.end-a.start)+s.slice(a.end),e);if(ir(r))return Ps("unclosed-quote",r,mu);let o={invalid:!1,limited:!1,expansions:0,assignmentFallbacks:[]},i=ho(t,{source:r,suppressed:n,flags:o,depth:0,functions:new Map});if(o.limited)return Ps("structural-limit",r,mu);if(o.invalid)return Ps("invalid",r,mu);return Ps("complete",r,i,o.assignmentFallbacks)}function Ps(e,t,n,r=SA){return Object.freeze({status:e,source:t,entries:Object.freeze(n),assignmentFallbacks:Object.freeze(r)})}function ho(e,t){return e.nodes.flatMap((n,r)=>CA(n,e,r,t)).sort((n,r)=>n.start-r.start).flatMap((n)=>[...n.entries])}function CA(e,t,n,r){if(e.kind==="connector")return[{start:e.span.start,entries:[ot(AA(e.operator))]}];if(e.kind==="unknown")return[{start:e.span.start,entries:[ot(e.source)]}];if(e.kind==="function")return r.functions.set(e.name,e.body),[];if(e.kind==="group"){let i=e.style!=="subshell",s=r.source[e.span.end-1]===(i?"}":")"),a=i?r:{...r,functions:new Map(r.functions)};return[{start:e.span.start,entries:[i?As("{"):ot("("),...ho(e.body,a),...s?[i?As("}"):ot(")")]:[]]}]}let o=TA(e,r.functions);if(o){if(r.depth>=vn.maxDepth||++r.flags.expansions>xA)return r.flags.limited=!0,[];return[{start:e.span.start,entries:[...Lb(e,r),As(";"),...ho(o,{...r,depth:r.depth+1}),As(";")]},...Wb(e,t,n,r)]}return[{start:e.span.start,entries:Lb(e,r)},...Wb(e,t,n,r)]}function Lb(e,t){return[...e.words.map((n)=>({start:n.span.start,entries:Ub(n,e,t,!1)})),...e.redirections.map((n)=>({start:n.span.start,entries:EA(n,e,t)}))].sort((n,r)=>n.start-r.start).flatMap((n)=>n.entries)}function EA(e,t,n){let r=e.operator==="<<-"?"<<":e.operator,o=e.target?Ub(e.target,t,n,!0):[],i=o[0],s=i?.kind==="word"?i.text:void 0;return[...e.fd===void 0?[]:[gu(String(e.fd))],Object.freeze({kind:"redirection",operator:r,role:kA(r),targetOrder:vA.has(r)?"legacy-segment":"immediate",...s===void 0?{}:{target:s}}),...s===void 0?o:o.slice(1)]}function Wb(e,t,n,r){let o=e.redirections.filter((i)=>i.operator==="<<"||i.operator==="<<-");return[...o.flatMap((i)=>{let s=i.heredoc;if(!s)return[];let a=[gu(s.delimiter),.../[\r\n]/.test(r.source[s.terminatorSpan.end]??"")?[ot(";")]:[]];if(r.suppressed.has(s.bodySpan))return[{start:s.bodySpan.start,entries:a}];return[{start:s.bodySpan.start,entries:[...jb(r.source.slice(s.bodySpan.start,s.bodySpan.end),r),...a]}]}),...o.some((i)=>!i.heredoc&&i.target)?wA(t,n,r):[]]}function wA(e,t,n){let r=e.nodes.slice(t+1).find((o)=>o.kind==="connector");if(!r||r.span.end>=e.span.end)return[];return[{start:r.span.end,entries:jb(n.source.slice(r.span.end,e.span.end),n)}]}function jb(e,t){if(t.depth>=vn.maxDepth)return t.flags.limited=!0,[];let n=rt(e,"posix");if(n.status==="limited")return t.flags.limited=!0,[];let r={invalid:!1,limited:!1,expansions:t.flags.expansions,assignmentFallbacks:t.flags.assignmentFallbacks},o=ho(n,{source:e,suppressed:new Set,flags:r,depth:t.depth+1,functions:new Map});return t.flags.limited||=r.limited,t.flags.expansions=r.expansions,o}function Ub(e,t,n,r){let o=[],i={single:!1,double:!1},s="",a=!1,c=()=>{if(a&&!r)o.push(ot("glob"));else if(s!==""||e.quoted&&o.length===0)o.push(gu(s));s="",a=!1};for(let l of e.parts){if(l.provenance!=="command-substitution"&&l.provenance!=="arithmetic"){for(let f of fu(l.raw,i,n.flags)){if(typeof f==="string"){c(),o.push(ot(f));continue}s+=f.text,a||=f.glob}continue}if(i.double){let f=n.source.slice(l.span.start,l.span.end);s+=fu(f,{single:!1,double:!0},n.flags).map((p)=>typeof p==="string"?p:p.text).join("");continue}let u=t.nested.find((f)=>f.span.start>=l.span.start&&f.span.end<=l.span.end),d=u?ho(u,n):[];if(l.raw.startsWith("`")){s+="${}",c(),o.push(...d);continue}if(l.raw.startsWith("<(")||l.raw.startsWith(">(")){c(),o.push(l.raw.startsWith("<(")?ot("<("):Object.freeze({kind:"redirection",operator:">",role:"file-write",targetOrder:"immediate"}),...d,...l.raw.endsWith(")")?[ot(")")]:[]);continue}let m=l.raw.startsWith("$((")?2:1;s+="${}",c(),o.push(...Array.from({length:m},()=>ot("(")),...d,...l.raw.endsWith(")".repeat(m))?Array.from({length:m},()=>ot(")")):[])}return c(),o}function fu(e,t,n){let r=[],o="",i=!1,s=0;while(s<e.length){let a=e[s]??"";if(!t.single&&!t.double&&(a==="("||a===")")){r.push({text:o,glob:i},a),o="",i=!1,s++;continue}if(t.single){if(a==="'")t.single=!1;else o+=a;s++;continue}if(t.double){if(a==='"'){t.double=!1,s++;continue}if(a==="\\"){let c=e[s+1]??"";o+=['"',"\\","$"].includes(c)?c:`\\${c}`,s+=2;continue}if(a==="$"){let c=Fb(e,s,t,n);o+=c.text,s=c.next;continue}o+=a,s++;continue}if(a==="'"||a==='"'){t.single=a==="'",t.double=a==='"',s++;continue}if(a==="\\"){let c=e[s+1]??"";i||=c==="*"||c==="?",o+=c,s+=2;continue}if(a==="$"){let c=Fb(e,s,t,n);o+=c.text,s=c.next;continue}i||=a==="*"||a==="?",o+=a,s++}return[...r,{text:o,glob:i}]}function Fb(e,t,n,r){let o=e[t+1];if(o==="{"){let s=PA(e,t+2);if(s===-1)return r.invalid=!0,{text:"",next:e.length};let a=e.slice(t,s+1);return RA(a,n,r),{text:a,next:s+1}}if(o!==void 0&&_A.test(o))return{text:`\${${o}}`,next:t+2};let i=/^\w*/.exec(e.slice(t+1))?.[0]??"";return{text:`\${${i}}`,next:t+1+i.length}}function RA(e,t,n){let r=e.slice(2,-1),o=/^[A-Za-z_][A-Za-z0-9_]*/.exec(r)?.[0];if(!o)return;let i=r.slice(o.length),s=[":=","="].find((c)=>i.startsWith(c));if(!s)return;let a=fu(i.slice(s.length),{...t},n);n.assignmentFallbacks.push(...a.flatMap((c)=>typeof c==="string"||!c.text?[]:[c.text]))}function PA(e,t){let n=1,r=t;while(n>0&&r<e.length){if(e[r]==="{"&&e[r-1]==="$")n++;else if(e[r]==="}")n--;r++}return n===0?r-1:-1}function AA(e){return/^[\r\n]+$/.test(e)?";":e}function ot(e){return Object.freeze({kind:"operator",operator:e,boundary:bA.has(e)})}function As(e){return Object.freeze({kind:"operator",operator:e,boundary:!0})}function gu(e){return Object.freeze({kind:"word",text:e})}function kA(e){if(e==="<<"||e==="<<<")return"here-data";if(e==="<"||e==="<&")return"file-read";return"file-write"}function pu(e){return e.nodes.flatMap((t,n)=>{if(t.kind==="group"||t.kind==="function")return pu(t.body);if(t.kind!=="command")return[];let r=t.nested.flatMap((s)=>pu(s)),o=e.nodes[n+1];if(o?.kind==="connector"&&(o.operator==="|"||o.operator==="|&")||!OA(t))return r;return[...r,...t.redirections.flatMap((s)=>s.heredoc?.quotedDelimiter?[s.heredoc.bodySpan]:[])]})}function TA(e,t){let n=Rs(e);return n===void 0?void 0:t.get(n)}function Ht(e,t){return e!==void 0&&e.provenance==="literal"&&!e.quoted&&e.raw===e.text&&e.text===t}function IA(e){if(Ht(e.words[0],"git"))return Ht(e.words[1],"commit");if(!Ht(e.words[0],"gh")||!Ht(e.words[2],"create"))return!1;return Ht(e.words[1],"pr")||Ht(e.words[1],"issue")}function OA(e){return(Ht(e.words[0],"cat")||Ht(e.words[0],"tee")||IA(e))&&!e.words.some(Gb)&&!e.redirections.some((n)=>Gb(n.target))}function Gb(e){return e?.parts.some((t)=>t.provenance==="command-substitution"&&t.raw.startsWith(">("))??!1}import{types as zA}from"util";var NA=new Set(["applypatch","patch"]),DA=new Set(["create","edit","listdir","listpermissions","ls","multiedit","multireplacefilecontent","notebookedit","read","readfile","readurlcontent","replacefilecontent","searchweb","strreplaceeditor","view","viewfile","write","writefile","writetofile"]),MA=new Set(["grep","grepsearch","rg"]),$A=new Set(["find","findbyname","glob"]),LA=new Set(["find","findbyname","glob","grep","grepsearch","listdir","listpermissions","ls","read","readfile","readurlcontent","searchweb","view","viewfile"]),WA=new Set(["command","diff","input","patch","patchtext"]),Bb=new TextEncoder,FA=new TextDecoder,GA=/\s/,ZA=64;class $t extends Error{name="ToolInputLimitError";constructor(){super("tool input traversal limit exceeded")}}var yo=Object.freeze({maxDepth:64,maxNodes:1e4,maxKeys:1e4,maxStringBytes:1048576,maxAggregateStringBytes:4194304});function Yb(e){return e.replace(/[-_\s]/g,"").toLowerCase()}function Ts(e){return LA.has(Yb(e))}function vu(e){let t=Yb(e);if(NA.has(t))return"patch";if(MA.has(t))return"grep";if($A.has(t))return"glob";if(DA.has(t))return"path";return"unknown"}function vo(e){if(!e||typeof e!=="object")return;tv(e);let t=Object.getOwnPropertyDescriptor(e,"command");if(!t){if("command"in e)gt();return}if(t.get||t.set)gt();let n=t.value;return typeof n==="string"&&n!==""?n:void 0}function _u(e,t){return Jb(e,t,{nodes:0,keys:0,stringBytes:0,ancestors:new Set},1)}function Jb(e,t,n,r){let o=ev(e,n,r);if(!o)return[];let i=o.entries.flatMap(([s,a])=>{let c=Jb(a,t,n,r+1);return typeof a==="string"&&t.has(Xb(s))?[a]:c});return n.ancestors.delete(o.object),i}function Xb(e){return e.replace(/-/g,"_").toLowerCase()}function Su(e){return Qb(e,!0,{nodes:0,keys:0,stringBytes:0,ancestors:new Set},1).flatMap(UA)}function Qb(e,t,n,r){let o=ev(e,n,r);if(typeof e==="string")return t?[e]:[];if(!o)return[];let i=o.entries.flatMap(([s,a])=>Qb(a,o.array?t:WA.has(Xb(s)),n,r+1));return n.ancestors.delete(o.object),i}function jA(e,t,n){if(t.nodes++,e!==null&&typeof e==="object"&&n>yo.maxDepth||t.nodes>yo.maxNodes)gt();if(typeof e!=="string")return;let r=Buffer.byteLength(e);if(t.stringBytes+=r,r>yo.maxStringBytes||t.stringBytes>yo.maxAggregateStringBytes)gt()}function ev(e,t,n){if(jA(e,t,n),!e||typeof e!=="object")return null;let r=tv(e);if(t.ancestors.has(e))gt();let o=Reflect.ownKeys(e);if(t.keys+=o.length,t.keys>yo.maxKeys)gt();let i=o.flatMap((s)=>{let a=Object.getOwnPropertyDescriptor(e,s);if(!a||a.get||a.set)gt();return typeof s==="string"&&a.enumerable?[[s,a.value]]:[]});return t.ancestors.add(e),{object:e,array:r,entries:i}}function tv(e){if(zA.isProxy(e))gt();let t=Array.isArray(e),n=Object.getPrototypeOf(e);if(t&&n!==Array.prototype||!t&&n!==Object.prototype&&n!==null)gt();return t}function gt(){throw new $t}function UA(e){let t=[],n=e.split(/\r?\n/),r=!1,o=!1,i=null,s=null,a=()=>{o=!1,i=null,s=null};for(let c=0;c<n.length;c++){let l=n[c]??"";if(l==="*** Begin Patch"){r=!0,a();continue}if(l==="*** End Patch"){r=!1,a();continue}if(l.startsWith("@@")){let u=BA(l);if(o=!0,i=u?.oldLines??null,s=u?.newLines??null,i===0&&s===0)a();continue}if(o&&i!==null&&s!==null){let u=l.startsWith(" ")||l.startsWith("-")?1:0,d=l.startsWith(" ")||l.startsWith("+")?1:0;if(i=Math.max(0,i-u),s=Math.max(0,s-d),i===0&&s===0)a();continue}if(l.startsWith("*** ")){a(),t.push(...hu(l));continue}if(o)continue;if(l.startsWith("diff --git ")){t.push(...hu(l));continue}if(l.startsWith("--- ")){let u=n[c+1]??"";if(!u.startsWith("+++ "))continue;t.push(...bu(ks(l.slice(4),!0),ks(u.slice(4),!0))),c++;continue}if(!r)t.push(...hu(l))}return t}function BA(e){let t=/^@@ -\d+(?:,(\d+))? \+\d+(?:,(\d+))? @@/.exec(e);if(!t)return null;return{oldLines:Number(t[1]??1),newLines:Number(t[2]??1)}}function hu(e){let t=/^\*\*\* (?:Add|Update|Delete) File: (.+)$/.exec(e);if(t?.[1])return qb(t[1]);let n=/^\*\*\* Move to: (.+)$/.exec(e);if(n?.[1])return qb(n[1]);if(e.startsWith("diff --git "))return VA(e.slice(11));let r=/^--- (.+)$/.exec(e);if(r?.[1])return Kb(r[1]);let o=/^\+\+\+ (.+)$/.exec(e);if(o?.[1])return Kb(o[1]);let i=/^(?:rename|copy) (?:from|to) (.+)$/.exec(e);if(i?.[1])return QA(i[1]);return[]}function VA(e){let t=HA(e);if(t.length===2&&t[0]&&t[1])return bu(t[0],t[1]);let n=KA(e);return n?bu(e.slice(n.oldStart,n.oldEnd),e.slice(n.newStart,n.newEnd)):[]}function HA(e){let t=[],n=0;while(n<e.length&&t.length<2){while(_n(e[n]))n++;if(n>=e.length)break;let r=e[n]==='"'||e[n]==="'"?e[n]:void 0;if(!r){let i=n;while(n<e.length&&!_n(e[n]))n++;t.push(e.slice(i,n));continue}let o=nv(e,n,r);if(!o)return[];t.push(o.value),n=o.end}while(_n(e[n]))n++;return n===e.length?t:[]}function KA(e){let t=0;while(t<e.length&&_n(e[t]))t++;let n=e.length;while(n>t&&_n(e[n-1]))n--;let r=0,o=t;while(o<n){if(!_n(e[o])){o++;continue}let i=o;while(o<n&&_n(e[o]))o++;if(i===t||o===n)continue;if(r++,r>ZA)gt();if(qA(e,t,i,o,n))return{oldStart:t,oldEnd:i,newStart:o,newEnd:n}}return null}function qA(e,t,n,r,o){if(yu(e,t,n,r,o))return!0;let i=Vb(e,"/",t,n),s=Vb(e,"/",r,o);if(i<=t||s<=r)return!1;if(yu(e,t,i,r,s))return!1;return yu(e,i+1,n,s+1,o)}function yu(e,t,n,r,o){if(n-t!==o-r)return!1;for(let i=0;i<n-t;i++)if(e[t+i]!==e[r+i])return!1;return!0}function Vb(e,t,n,r){for(let o=n;o<r;o++)if(e[o]===t)return o;return-1}function _n(e){return e!==void 0&&GA.test(e)}function nv(e,t,n){let r=[],o=t+1;while(o<e.length){let i=e[o]??"";if(i===n)return{value:FA.decode(Uint8Array.from(r)),end:o+1};if(i!=="\\"||n==="'"){r.push(...Bb.encode(i)),o++;continue}let s=e.slice(o+1),a=/^[0-7]{1,3}/.exec(s)?.[0];if(a){r.push(Number.parseInt(a,8)),o+=a.length+1;continue}r.push(...Bb.encode(YA(s[0]??""))),o+=2}return null}function YA(e){return{a:"\x07",b:"\b",f:"\f",n:`
|
|
49
|
+
`,r:"\r",t:"\t",v:"\v"}[e]??e}function JA(e){return bo(ek(e))}function bu(e,t){if(e==="/dev/null")return Hb(t);if(t==="/dev/null")return Hb(e);if(e.startsWith("a/")&&t.startsWith("b/"))return[e.slice(2),t.slice(2)].flatMap(bo);let n=XA(e,t)??(e===t?rv(e):null);return[e,t,...n?[n]:[]].flatMap(bo)}function Hb(e){let t=rv(e);return[e,...t?[t]:[]].flatMap(bo)}function rv(e){let t=e.indexOf("/");return t>0&&t<e.length-1?e.slice(t+1):null}function XA(e,t){let n=e.indexOf("/"),r=t.indexOf("/");if(n<1||r<1)return null;if(e.slice(0,n)===t.slice(0,r))return null;let o=e.slice(n+1);return o===t.slice(r+1)?o:null}function Kb(e){return JA(ks(e,!0))}function QA(e){return bo(ks(e,!1))}function ks(e,t){let n=e.trim(),r=n[0]==='"'||n[0]==="'"?n[0]:void 0;if(r){let o=nv(n,0,r);if(o&&(t||n.slice(o.end).trim()===""))return o.value}return t?n.split("\t",1)[0]?.trim()??"":n}function ek(e){return e.startsWith("a/")||e.startsWith("b/")?e.slice(2):e}function bo(e){return e===""||e==="/dev/null"?[]:[e]}function qb(e){let t=e.split("\t",1)[0]?.trim().replace(/^['"]|['"]$/g,"")??"";return t===""||t==="/dev/null"?[]:[t]}var ov=new Set(["absolutepath","directorypath","directory_path","file","file_path","filepath","include","notebook_path","path","searchdirectory","search_directory","searchpath","targetfile","target_file"]),iv=new Set([...ov,"glob"]),nk=new Set([...iv,"pattern"]),rk=[],sv={parseCommand:rt,projectShellSyntax:Zb};class ht extends Error{name="StructuralShellSyntaxLimitError";constructor(){super("Structural command analysis limit exceeded.")}}function _o(e,t={}){let n=ok({...sv,...t}),r=vo(e.input),o=[];if((e.route.kind==="command"||e.route.kind==="unknown")&&r)o.push({usage:"input-candidate",source:r});if(e.route.kind==="command"&&"command"in e&&e.command)o.push({usage:"declared-command",source:e.command});let i=o.reduce((s,a)=>{let c=s.findIndex((d)=>d.source===a.source);if(c!==-1){let d=s[c];if(!d)return s;return s[c]={...d,usages:[...d.usages,a.usage]},s}let l=e.route.kind==="command"?e.route.shell:"posix",u=n.getCommandProgram(a.source,l);return s.push({usages:[a.usage],source:a.source,program:u,shell:n.getShellSyntax(a.source,u)}),s},[]);return{invocation:{toolName:e.toolName,route:e.route,context:e.context},commands:i,paths:ik(e),store:n}}function xe(e,t){return e.commands.find((n)=>n.usages.includes(t))}function yt(e){if(!e.includes("$"))return e;return Gi(e,Qe())}function ok(e={}){let t={...sv,...e},n=new Map,r=new Map,o=new WeakMap,i=(a,c)=>{let l=`${c}\x00${a}`,u=r.get(l);if(u)return u;let d=t.parseCommand(a,c);return r.set(l,d),d};return{getShellSyntax:(a,c)=>{if(c&&c.source!==a)throw TypeError("Shell syntax source does not match command program source.");let l=c??i(a,"posix");if(l.status==="limited"){let m=o.get(l);if(m)return m;let f={status:"structural-limit",source:a,entries:rk,assignmentFallbacks:[]};return o.set(l,f),f}let u=n.get(a);if(u)return u;let d=t.projectShellSyntax(a,l);return n.set(a,d),d},getCommandProgram:i}}function ik(e){let t=e.route.kind==="grep"?iv:e.route.kind==="glob"?nk:ov;return[..._u(e.input,t),...e.route.kind==="patch"?Su(e.input):[]]}function Pe(e,t){let n=new Set,r=!1;for(let o of e){if(o==="--"){r=!0;continue}if(r)continue;if(o.startsWith("-")&&!o.startsWith("--")&&o.length>1)for(let i=1;i<o.length;i++){let s=o[i];if(!s||!/[a-zA-Z]/.test(s))break;let a=`-${s}`;if(n.add(a),t?.shortOptsWithValue?.has(a))break}}return n}var sk=new Map([["bash",new Set(["O","o"])],["dash",new Set(["o"])],["ksh",new Set(["o"])],["sh",new Set(["o"])],["zsh",new Set(["o"])]]),ak=new Map([["zsh",new Set(["o"])]]),ck=new Map([["bash",new Set(["--init-file","--rcfile"])]]);function av(e,t){for(let n=0;n<t.length;n++){let r=t[n];if(r===void 0||r==="--"||r==="-"||r[0]!=="-"&&r[0]!=="+")return null;if(r.startsWith("--")){let s=ck.get(e);if(uk(r,s))continue;if(!s?.has(r))continue;if(t[n+1]===void 0)return null;n++;continue}let o=lk(e,r);if(o.commandSelected)return t[n+o.followingValues+1]??null;let i=t[n+1];if(e==="ksh"&&(r==="-o"||r==="+o")&&i!==void 0&&i[0]!=="-"&&i[0]!=="+")n++;n+=o.followingValues}return null}function lk(e,t){let n=sk.get(e),r=ak.get(e),o=!1,i=0;for(let s=1;s<t.length;s++){let a=t[s];if(a===void 0)break;if(t[0]==="-"&&a==="c")o=!0;if(e==="ksh"&&a==="o"){if(s+1<t.length){let c=t.slice(s+1);if(!o&&t[0]==="-"&&c==="c")continue;if(!o&&t[0]==="-"&&c[0]==="-"&&c.endsWith("c"))o=!0;break}if(o)i++;continue}if(!n?.has(a))continue;if(r?.has(a)&&s+1<t.length)break;i++}return{commandSelected:o,followingValues:i}}function uk(e,t){return t!==void 0&&[...t].some((n)=>e.startsWith(`${n}=`))}var pk=new Set(["-S","--suffix"]);function sr(e,t,n,r){if(e.status==="structural-limit")throw new ht;if(e.status!=="complete")return r.findMalformedTarget(e.source);let o={cwd:t,variables:new Map},i=[];for(let s of e.entries){if(s.kind==="operator"){if(!s.boundary)continue;let a=r.findSegmentTarget(i,o);if(a)return a;o=gk(i,o,n,r.normalizeCwd),i=[];continue}if(s.kind==="redirection"){if(s.role==="file-write"&&s.target&&r.isRedirectionTarget(Le(s.target,o.variables),o))return s.target;continue}i.push(s.text)}return r.findSegmentTarget(i,o)}function Le(e,t){return e.replace(/\$\{([A-Za-z_][A-Za-z0-9_]*)(:?[-+])([^}]*)\}/g,(n,r,o,i)=>{let s=t.get(r);if(s===void 0)return n;let a=o.startsWith(":")?s!=="":!0;if(o.endsWith("-"))return a?s:Le(i,t);return a?Le(i,t):""}).replace(/\$\{([A-Za-z_][A-Za-z0-9_]*)\}/g,(n,r)=>t.get(r)??n).replace(/\$([A-Za-z_][A-Za-z0-9_]*)/g,(n,r)=>t.get(r)??n)}function So(e){return e.length>0&&e.every((t)=>/^[A-Za-z_][A-Za-z0-9_]*=.*/.test(t))}function lv(e,t,n){let r=n.environment.home,o=Gi(e.trim(),n.environment).replace(/\\/g,"/");if(!o)return"";let i=o==="~"?r:o.startsWith("~/")?cv(r,o.slice(2)):o,s=ze(i);return fk(mk(s)?s:cv(t,s))}function ye(e,t,n){let r=lv(e,t,n);if(!r)return"";return X(r,n.environment.paths,n).replace(/\\/g,"/")}function uv(e,t,n,r){let o=lv(e,t,n);if(!o)return null;if(r(dk(o)))return X(o,n.environment.paths,n).replace(/\\/g,"/");let i=Sy(o,n.environment.paths,n);return i===null?null:i.replace(/\\/g,"/")}function Is(e){let t=[],n=null,r=!1;for(let o=0;o<e.length;o++){let i=e[o];if(i===void 0)break;if(!r&&i==="--"){r=!0;continue}if(!r&&(i==="-t"||i==="--target-directory")){n=e[++o]??null;continue}if(!r&&i.startsWith("--target-directory=")){n=i.slice(19);continue}if(!r&&i.startsWith("-t")&&i.length>2){n=i.slice(2);continue}if(!r&&pk.has(i)){o++;continue}if(!r&&(i.startsWith("--suffix=")||i.startsWith("--backup=")))continue;if(!r&&i.startsWith("-"))continue;t.push(i)}return n?{sources:t,destination:n}:{sources:t.slice(0,-1),destination:t.at(-1)??null}}function gk(e,t,n,r){let o=So(e)?new Map([...t.variables,...hk(e,t.variables)]):t.variables,i=Bt([...e],n.environment),s=F(i[0]??"").toLowerCase()==="cd"?i[1]:void 0;return{cwd:!s||s==="-"?t.cwd:r(Le(s,o),t.cwd,n),variables:o}}function hk(e,t){return e.flatMap((n)=>{let r=/^([A-Za-z_][A-Za-z0-9_]*)(.*)$/.exec(n),o=r?.[2]?.startsWith("=")?r[2].slice(1):void 0;return r?.[1]!==void 0&&o!==void 0?[[r[1],Le(o,t)]]:[]})}var qe="Git metadata and hooks are protected. Ask the user before modifying them.";function pv(e,t=Cu([e.invocation.context.executionCwd,e.invocation.context.configCwd])){let n=Ot(Qe()),r=e.invocation.context.executionCwd;if(!t)return null;if(e.invocation.route.kind==="patch"||e.invocation.route.kind==="path"||e.invocation.route.kind==="unknown"){if(Ts(e.invocation.toolName))return null;let s=e.paths.find((a)=>Ck(a,r,t,n));return s?{target:s}:null}if(e.invocation.route.kind!=="command")return null;let o=xe(e,"input-candidate");if(!o)return null;let i=sr(o.shell,r,n,{findSegmentTarget:(s,a)=>wk(s,a,t,n),isRedirectionTarget:(s,a)=>Ek(s,a.cwd,t,n),findMalformedTarget:()=>null,normalizeCwd:ye});return i?{target:i}:null}function Cu(e,t=Ot(Qe())){let n=[...new Map(e.filter((r)=>typeof r==="string"&&r!=="").flatMap((r)=>{let o=ro(ye(r,r,t));return o?[[it(o),{dotGitPath:o,cwd:r}]]:[]})).values()].flatMap((r)=>vk(r.dotGitPath,r.cwd,t));if(n.length===0)return null;return Object.freeze({entries:Object.freeze([...new Set(n.map((r)=>r.entry))]),markerFiles:Object.freeze([...new Set(n.flatMap((r)=>r.markerFile?[r.markerFile]:[]))]),directories:Object.freeze([...new Set(n.flatMap((r)=>r.directories))]),hooksDirectories:Object.freeze([...new Set(n.flatMap((r)=>r.hooksDirectories))])})}function vk(e,t,n){try{let r=ye(e,t,n),o=yk(e),i=o.isFile()?r:null,s=o.isFile()?Bl(e):null,a=(o.isDirectory()?[r]:[s?.gitDir,s?.commonDir]).flatMap((l)=>l?[it(ye(l,t,n))]:[]),c=[...new Set(o.isDirectory()?[it(e.replace(/\\/g,"/")),...a]:a)];return[{entry:it(r),markerFile:i?it(i):null,directories:c,hooksDirectories:[...new Set(c.flatMap((l)=>{let u=it(bk(l,"hooks"));return[u,it(ye(u,t,n))]}))]}]}catch{return[]}}function Sn(e,t,n,r,o,i=!1){if(!n)return!1;let s=it(ye(e,t,o)),a=s.replace(/(\/\.?\*+)+$/,"");if(a!==s&&a!==""){if(xu(a,n))return!0;let c=i||s.slice(a.length).includes("/."),l=(u)=>c?Os(u,a):_k(u,a);if(n.markerFiles.some(l))return!0;return r&&dv(n).some(l)}if(xu(s,n))return!0;return r&&dv(n).some((c)=>Os(c,s))}function _k(e,t){let n=fv(t,e);if(n===""||n.startsWith("..")||mv(n))return!1;return!n.split(/[\\/]/)[0]?.startsWith(".")}function Sk(e,t,n,r){return Sn(e,t,n,!0,r)}function xk(e,t,n,r){if(!n)return!1;return xu(it(ye(e,t,r)),n)}function Ck(e,t,n,r){if(!n)return!1;return gv(e,t,n,r,n.entries)}function Ek(e,t,n,r){if(!n)return!1;return gv(e,t,n,r,n.markerFiles)}function gv(e,t,n,r,o){let i=it(ye(e,t,r));return o.includes(i)||yv(i,n)}function hv(e,t,n,r){if(!n)return!1;return n.hooksDirectories.some((o)=>e.some((i)=>Os(o,it(ye(i,t,r)))))}function xu(e,t){return t.entries.includes(e)||t.directories.includes(e)||yv(e,t)}function yv(e,t){return t.hooksDirectories.some((n)=>Os(e,n))}function dv(e){return[...e.entries,...e.directories,...e.hooksDirectories]}function Os(e,t){let n=fv(t,e);return n===""||!/^\.\.(?:[\\/]|$)/.test(n)&&!mv(n)}function it(e){return process.platform==="win32"?e.toLowerCase():e}function wk(e,t,n,r){if(So(e))return null;let o=Vt([...e],r.environment);if(F(o[0]??"").toLowerCase()!=="mv")return null;let i=Is(o.slice(1)),s=i.sources.find((a)=>Sk(Le(a,t.variables),t.cwd,n,r));if(s)return s;return i.destination&&xk(Le(i.destination,t.variables),t.cwd,n,r)?i.destination:null}import{isAbsolute as Eu,join as Rk,normalize as Pk,sep as zs}from"path";var bv=process.platform==="win32",Ak=/[*?]/;function xo(e,t){if(e==="~")return t;if(e.startsWith("~/"))return`${t}${e.slice(1)}`;return e}function Ds(e,t){if(typeof e!=="string"||e.trim()==="")return"must be a non-empty path string";let n=xo(e.trim(),t);if(!Eu(n))return"must be an absolute path or start with ~/";return Co(n,t)}function Ms(e,t){let n=vv(e,t);if(n===null)return"must be a non-empty path string";if(!Eu(n))return null;if(Co(n,t)===null)return null;return"cannot be the home directory or a path above it (this would block every command the agent runs)"}var kk="cannot cover the home directory or a path above it (this would disable secret protection everywhere)",Tk="cannot cover the guard's own configuration";function vv(e,t){if(typeof e!=="string"||e.trim()==="")return null;return xo(e.trim().replace(/^\$(?:\{HOME\}|HOME(?=\/|$))/,"~"),t)}function $s(e,t){let n=vv(e,t);if(n===null)return"must be a non-empty path string";if(Ak.test(n))return"cannot contain glob characters (* or ?); list the exact file or directory";if(!Eu(n))return null;if(Co(n,t)!==null)return kk;return Ik(n,t)?Tk:null}function Ik(e,t){let n=Ns(e),r=Ns(Rk(t,".cc-safety-net"));return n===r||n.startsWith(`${r}${zs}`)}function Co(e,t){let n=Ns(e),r=Ns(t);if(n===r)return"cannot be the home directory";let o=n.endsWith(zs)?n:`${n}${zs}`;if(r.startsWith(o))return"cannot contain the home directory";return null}function Ns(e){let t=Pk(e);if(bv)t=t.replace(/\//g,"\\").toLowerCase();if(t.length>(bv?3:1)&&t.endsWith(zs))t=t.slice(0,-1);return t}var Nk=process.platform==="win32",_v=64,Dk=16384;function Eo(e){let t=Pb(e,_v,_v,Dk);return{expandedTargets:t&&"words"in t?t.words:void 0,unsafeBraceExpansion:t!==void 0&&"limited"in t,targetIsLiteral:t===void 0&&e.provenance==="literal"&&(e.quoted||e.raw!==e.text),tmpdirWordSplittingProtected:Mk(e)}}function Mk(e){let t=e.parts.filter((n)=>n.provenance==="variable"&&/\$(?:TMPDIR(?![A-Za-z0-9_])|\{TMPDIR\})/.test(n.raw));return t.length>0&&t.every((n)=>$k(e.raw,n.span.start-e.span.start))}function $k(e,t){let n=null,r=!1;for(let o=0;o<t;o++){let i=e[o];if(r){r=!1;continue}if(i==="\\"&&n!=="'"){r=!0;continue}if(n===i){n=null;continue}if(n===null&&(i==="'"||i==='"'))n=i}return n==='"'}function xn(e){let t=e.environment.home,n=e.environment.paths,r=Ot(e.environment);return{anchoredCwd:e.originalCwd??e.cwd??null,resolvedCwd:e.cwd??null,strict:e.strict??!1,paranoid:e.paranoid??!1,trustTmpdirVar:e.allowTmpdirVar??!0,posixShell:e.posixShell??!1,tmpdirWordSplittingUnsafe:e.tmpdirWordSplittingUnsafe??!1,trustedTmpdirValue:e.trustedTmpdirValue??e.allowTmpdirVar??!0,environment:e.environment,allowRoots:Zk(e.allowPaths,t,n,r),protectedGitMetadata:e.protectedGitMetadata,pathCanonicalizationContext:r}}function st(e,t,n={}){let r=n.targetIsLiteral??!1;if(!r&&t.tmpdirWordSplittingUnsafe&&!n.tmpdirWordSplittingProtected&&Uk(e))return{kind:"outside_anchored_cwd"};let o=!r&&Ev(e,t.posixShell);if(Zt(e))return{kind:"outside_anchored_cwd"};if(Au(e,r))return{kind:"root_or_home_target"};if(Lk(e,t,r))return{kind:"root_or_home_target"};if(t.resolvedCwd&&Sn(e,t.resolvedCwd,t.protectedGitMetadata,!0,t.pathCanonicalizationContext,!t.posixShell))return{kind:"git_metadata_target"};if(Wk(e,t.trustTmpdirVar,t.posixShell,o,r,n.tmpdirWordSplittingProtected??!1,t.trustedTmpdirValue,t.environment))return{kind:"temp_target"};if(o)return{kind:"dynamic_target"};if(jk(e,t,r))return{kind:"temp_target"};let i=t.anchoredCwd;if(i){if(!n.skipHomeCwd&&Kk(i,t.environment.home,t.environment.paths,t.pathCanonicalizationContext))return{kind:"home_cwd_target"};if(!n.skipCwdSelf&&qk(e,t.resolvedCwd??i,t.environment.paths,t.pathCanonicalizationContext))return{kind:"cwd_self_target"};if(Yk(e,i,t.resolvedCwd??i,o,r,t.environment.paths,t.pathCanonicalizationContext))return{kind:"within_anchored_cwd"}}return{kind:"outside_anchored_cwd"}}function xv(e,t,n={}){let{containmentTarget:r,...o}=n;if(st(e,t,o).kind!=="temp_target")return!1;let i=e.trim();if(Gk(i))return!1;if(cb(i,t.environment))return!1;return![t.anchoredCwd,t.resolvedCwd].some((s)=>Jk(r??i,s,t.environment.paths,t.pathCanonicalizationContext))}function Au(e,t=!1){let n=e.trim(),r=Sv.normalize(n),o=n.replace(/\\/g,"/"),i=r==="/"?r:r.replace(/\/+$/,"");if(i==="/"||i.startsWith("/")&&i.slice(1).split("/").every((s)=>/^\*+$/.test(s)))return!0;if(/^[A-Za-z]:\/+\*?$/.test(o)||/^\/\/[^/]+\/+[^/]+(?:\/+\*?)?$/.test(o))return!0;if(!t&&(r==="~"||r==="~/"||r==="~/*"))return!0;if(!t&&(r==="$HOME"||r==="$HOME/"||r==="$HOME/*"))return!0;if(!t&&(r==="${HOME}"||r==="${HOME}/"||r==="${HOME}/*"))return!0;return!1}function Lk(e,t,n){let r=e.trim(),o=n?r:r==="*"?".":r.endsWith("/*")?r.slice(0,-2):r;if(!o)return!1;try{let i=Pu(o)?o:t.resolvedCwd?ar(t.resolvedCwd,o):null;if(!i)return!1;let s=Ae(X(i,t.environment.paths,t.pathCanonicalizationContext));if(s===zk(s).root)return!0;return s===Ae(X(t.environment.home,t.environment.paths,t.pathCanonicalizationContext))}catch{return!1}}function Ae(e){let t=Ok(e);if(Nk){if(t=t.replace(/\//g,"\\").toLowerCase(),t.length>3&&t.endsWith("\\"))t=t.slice(0,-1);return t}if(t.length>1&&t.endsWith("/"))t=t.slice(0,-1);return t}function Wk(e,t,n,r,o,i,s,a){let c=e.trim();if(Cv(c))return!1;if(!r&&Jl(c,a))return!0;return(t||i&&s)&&n&&!o&&Fk(c,n)}function Fk(e,t){return["$TMPDIR","${TMPDIR}"].some((n)=>{if(e===n)return!0;if(!e.startsWith(`${n}/`))return!1;return!Ev(e.slice(n.length+1),t)})}function Gk(e){let t=/^(?:\$TMPDIR|\$\{TMPDIR\})(?:\/(.*))?$/.exec(e);if(!t)return!1;return Sv.normalize(`/${t[1]??""}`)==="/"}function Cv(e){return e.split(/[\\/]+/).includes("..")}function Zk(e,t,n,r){if(!e?.length)return[];return e.flatMap((o)=>{let i=xo(o.trim(),t);if(!Pu(i))return[];try{let s=X(i,n,r);if(Co(s,X(t,n,r)))return[];return[Ae(s)]}catch{return[]}})}function jk(e,t,n){if(t.allowRoots.length===0)return!1;let r=e.trim();if(Cv(r))return!1;let o=n?r:xo(r,t.environment.home),i=t.resolvedCwd??t.anchoredCwd,s=Pu(o)?o:i?ar(i,o):null;if(!s)return!1;try{let a=Ae(X(s,t.environment.paths,t.pathCanonicalizationContext));return t.allowRoots.some((c)=>a===c||a.startsWith(c.endsWith(Ru)?c:`${c}${Ru}`))}catch{return!1}}function Uk(e){return/\$(?:TMPDIR(?![A-Za-z0-9_])|\{TMPDIR\})/.test(e)}function Ev(e,t=!1){return e.includes("$")||e.includes("`")||Bk(e)||t&&Vk(e)}function Bk(e){let t=!1;for(let n of e){if(t){t=!1;continue}if(n==="\\"){t=!0;continue}if(n==="*"||n==="?"||n==="[")return!0}return!1}function Vk(e){let t=!1;for(let n=0;n<e.length;n++){let r=e[n];if(t){t=!1;continue}if(r==="\\"){t=!0;continue}if(r==="{"&&Hk(e,n)||(r==="+"||r==="@"||r==="!")&&e[n+1]==="(")return!0}return!1}function Hk(e,t){let n=e.indexOf("}",t+1);if(n===-1)return!1;let r=e.slice(t+1,n);return r.includes(",")||r.includes("..")}function Kk(e,t,n,r){try{return Ae(X(e,n,r))===Ae(X(t,n,r))}catch{try{return Ae(e)===Ae(t)}catch{return!1}}}function qk(e,t,n,r){if(e==="."||e==="./"||e===".\\")return!0;try{return Ae(X(ar(t,e),n,r))===Ae(X(t,n,r))}catch{try{return Ae(ar(t,e))===Ae(t)}catch{return!1}}}function Yk(e,t,n,r,o,i,s){let a=n??t;if(!o&&(e.startsWith("~")||e.startsWith("$HOME")||e.startsWith("${HOME}")))return!1;if(r)return!1;if(e.startsWith("/")||/^[A-Za-z]:[\\/]/.test(e))try{return wu(e,t,i,s)}catch{return!1}if(e.startsWith("./")||e.startsWith(".\\")||!e.includes("/")&&!e.includes("\\"))try{return wu(ar(a,e),t,i,s)}catch{return!1}if(e.startsWith("../"))return!1;try{return wu(ar(a,e),t,i,s)}catch{return!1}}function wu(e,t,n,r){try{return wv(X(e,n,r),X(t,n,r))}catch{return!1}}function Jk(e,t,n,r){if(!t)return!1;try{return wv(X(t,n,r),X(e,n,r))}catch{return!0}}function wv(e,t){let n=Ae(e),r=Ae(t);return n.startsWith(`${r}${Ru}`)||n===r}var Xk=new Set(["remove-item","ri","del","erase","rd","rm","rmdir"]),Rv="PowerShell Remove-Item -Recurse -Force outside cwd is blocked. Retry deleting only explicit paths inside the current directory; escalate for anything outside it.",Qk="PowerShell Remove-Item -Recurse -Force for non-temporary paths is blocked by the active safety policy. Retry deleting only explicit paths inside the current directory; escalate for anything outside it.",Pv="PowerShell Remove-Item target contains variables or pipeline input that cannot be verified safely. Use literal paths within cwd.",Av="PowerShell Remove-Item targeting root or home directory is extremely dangerous and always blocked.",eT="PowerShell Remove-Item -Recurse -Force in home directory is dangerous. Change to a project directory first.",tT="PowerShell Remove-Item receives pipeline input that cannot be verified safely. Use explicit literal paths within cwd.";function kv(e,t,n,r=xn({...n,allowPaths:n.policy?.destructiveCommandAllowPaths})){return nT(e.words.map((o)=>({kind:"word",text:o.text,dynamic:o.provenance!=="literal"})),t,r,n.policy)}function nT(e,t,n,r){let o=e.filter((c)=>c.kind==="word"),i=oT(o),s=o[i];if(!s||!Xk.has(fT(s.text)))return null;let a=rT(o.slice(i+1));if(a.whatIfProtected)return null;if(de(r,"powershell.remove-item-pipeline-dynamic-target",n.strict)&&t&&(a.targets.length===0||a.recursive))return v("powershell.remove-item-pipeline-dynamic-target",tT);for(let c of a.targets)if(!Zt(c.text)&&Au(Tu(c.text)))return v(a.recursive&&a.force?"powershell.remove-item-recursive-force-root-or-home":"powershell.remove-item-root-or-home",Av);for(let c of a.targets)if(n.resolvedCwd&&Sn(Tu(c.text),n.resolvedCwd,n.protectedGitMetadata,a.recursive,n.pathCanonicalizationContext,!0))return v("powershell.remove-item-git-metadata",qe);if(!a.recursive||!a.force)return null;if(de(r,"powershell.remove-item-recursive-force-dynamic-target",n.strict)&&(a.hasDynamicTarget||a.targets.length===0))return v("powershell.remove-item-recursive-force-dynamic-target",Pv);for(let c of a.targets){let l=pT(st(Tu(c.text),n),n,r);if(l)return l}return null}function rT(e){let t=[],n=!1,r=!1,o=!1,i=!1,s=!1;for(let a=0;a<e.length;a++){let c=e[a];if(!c||c.kind!=="word")continue;if(iT(c))continue;if(s){t.push(ku(c)),i=i||c.dynamic;continue}if(c.text==="--"){s=!0;continue}let l=aT(c.text);if(!l){t.push(ku(c)),i=i||c.dynamic;continue}if(cT(l.name)){let u=l.value?sT(l.value,c):e[++a];if(u?.kind==="word")t.push(ku(u)),i=i||u.dynamic;else i=!0;continue}if(lT(l.name)){n=!0;continue}if(uT(l.name)){r=!0;continue}if(dT(l.name))o=mT(l.value)}return{targets:t,recursive:n,force:r,whatIfProtected:o,hasDynamicTarget:i}}function oT(e){let t=e[0];if(t?.kind==="word"&&t.text==="&"||t?.text===".")return e.length>1?1:0;return 0}function ku(e){return{text:e.kind==="word"?e.text:"",dynamic:e.kind==="word"&&e.dynamic}}function iT(e){return e.kind==="word"&&e.text===","}function Tu(e){let t=e.replace(/\\/g,"/"),n=/^\$env:(?:userprofile|home)(?=$|\/)/i.exec(t);return n?`$HOME${t.slice(n[0].length)}`:t}function sT(e,t){return{kind:"word",text:e,dynamic:t.kind==="word"&&(t.dynamic||e.includes("$"))}}function aT(e){if(!e.startsWith("-")||e==="-")return null;let t=e.slice(1),n=t.indexOf(":");if(n===-1)return{name:t.toLowerCase()};return{name:t.slice(0,n).toLowerCase(),value:t.slice(n+1)}}function cT(e){return"path".startsWith(e)||"literalpath".startsWith(e)}function lT(e){return"recurse".startsWith(e)}function uT(e){return e.length>=2&&"force".startsWith(e)}function dT(e){return e==="wi"||"whatif".startsWith(e)}function mT(e){if(e===void 0||e==="")return!0;let t=e.toLowerCase();return t==="$true"||t==="true"}function fT(e){return e.toLowerCase()}function pT(e,t,n){switch(e.kind){case"root_or_home_target":return v("powershell.remove-item-recursive-force-root-or-home",Av);case"git_metadata_target":return v("powershell.remove-item-git-metadata",qe);case"temp_target":return null;case"dynamic_target":if(!de(n,"powershell.remove-item-recursive-force-dynamic-target",t.strict))return null;return v("powershell.remove-item-recursive-force-dynamic-target",Pv);case"home_cwd_target":return v("powershell.remove-item-recursive-force-home-cwd",eT);case"cwd_self_target":return v("powershell.remove-item-recursive-force-cwd-self",Rv);case"within_anchored_cwd":if(!de(n,"powershell.remove-item-recursive-force-paranoid",t.paranoid))return null;return v("powershell.remove-item-recursive-force-paranoid",Qk);case"outside_anchored_cwd":return v("powershell.remove-item-recursive-force-outside-cwd",Rv)}}import{normalize as Qs}from"path";var We=new Set(["awk","gawk","nawk","mawk"]),gT=new Set(["-e","--source"]),hT=new Set(["-F","-v","--assign","--field-separator"]),Tv=new Set(["-f","--file"]),yT=new Set(["print","printf","return"]),Iv=[{selector:"-e",kind:"inline-code",valueForm:"attached-or-separate"},{selector:"--source",kind:"inline-code",valueForm:"equals-or-separate"},{selector:"-f",kind:"program-file",valueForm:"attached-or-separate"},{selector:"--file",kind:"program-file",valueForm:"equals-or-separate"}],bT="Detected awk system(), pipe, or getline command with dynamic command that cannot be safely analyzed. Use a literal command or process the data without system(), pipes, or getline.";function Fs(e,t,n){let r=!1;for(let o of vT(e)){let i=_T(o,n);if(!i)continue;for(let s of i.commands){let a=t(s);if(a)return a;if(s.includes("{}")||/[$`]/.test(s))r=!0}r||=i.dynamic}return r?v("awk.system-dynamic",bT):null}function Ou(e){let t=[],n=!1,r=!1,o=!0,i=!0;for(let s=1;s<e.length;s++){let a=e[s];if(a===void 0)break;if(o&&a==="--"){o=!1;continue}if(o&&gT.has(a)){n=!0;let c=e[s+1];if(c!==void 0)t.push({tokenIndex:s+1,kind:"inline-code",value:c});else i=!1;s++;continue}if(o&&a.startsWith("--source=")){n=!0,t.push({tokenIndex:s,kind:"inline-code",value:a.slice(9)});continue}if(o&&a.startsWith("-e")&&a.length>2){n=!0,t.push({tokenIndex:s,kind:"inline-code",value:a.slice(2)});continue}if(o&&(hT.has(a)||Tv.has(a))){if(Tv.has(a)){r=!0;let c=e[s+1];if(c!==void 0)t.push({tokenIndex:s+1,kind:"program-file",value:c});else i=!1}else if(e[s+1]===void 0)i=!1;s++;continue}if(o&&(a.startsWith("-F")||a.startsWith("-v")&&a.slice(2).includes("=")))continue;if(o&&a.startsWith("-f")&&a.length>2){r=!0,t.push({tokenIndex:s,kind:"program-file",value:a.slice(2)});continue}if(o&&(a.startsWith("--assign=")||a.startsWith("--field-separator=")))continue;if(o&&a.startsWith("--file=")){r=!0,t.push({tokenIndex:s,kind:"program-file",value:a.slice(7)});continue}if(o&&a.startsWith("-")&&a!=="-")continue;if(o=!1,!n&&!r)t.push({tokenIndex:s,kind:"main-program",value:a});return{sources:t,optionsOpen:!1}}return{sources:i?t:[],optionsOpen:o&&i}}function Ro(e){return Ou(e).sources}function vT(e){return Ro(e).filter((t)=>t.kind!=="program-file").map((t)=>t.value)}function _T(e,t){Ne(t,e);let n=e.includes("system")?zu(e,t):null,r=ST(e,t);if(!n&&!r)return null;return{dynamic:!!n?.dynamic||!!r?.dynamic,commands:[...n?.commands??[],...r?.commands??[]]}}function zu(e,t){Ne(t,e);let n=[],r=!1,o=!1,i=0;while(i<e.length){let s=e[i];if(s==='"'||s==="'"){i=Ws(e,i,s)?.endIndex??i+1;continue}if(s==="#"){i=Ov(e,i+1);continue}if(s==="/"&&zv(e,i)){i=Nv(e,i+1)??i+1;continue}if(!e.startsWith("system",i)){i++;continue}let a=i;if(i+=6,wo(e[a-1])||wo(e[i]))continue;let c=Ls(e,i);if(e[c]!=="(")continue;c=Ls(e,c+1);let l=e[c];if(l!=='"'&&l!=="'"){r=!0,o=!0;continue}let u=Ws(e,c,l);if(!u){r=!0,o=!0;continue}if(c=Ls(e,u.endIndex),r=!0,e[c]!==")"){o=!0,i=u.endIndex;continue}n.push(u.value),i=c+1}if(!r)return null;return{dynamic:o,commands:n}}function ST(e,t){Ne(t,e);let n=[],r=!1,o=!1,i=0,s=0,a=null,c=null,l=0;while(i<e.length){let u=e[i];if(!u)break;if(u==='"'||u==="'"){let f=Ws(e,i,u);if(f&&l===s)c={...f,startIndex:i};l=f?.endIndex??i+1,i=f?.endIndex??i+1;continue}if(u==="#"){i=Ov(e,i+1),s=i,a=null,c=null,l=i;continue}if(u==="/"&&zv(e,i)){let f=Nv(e,i+1);l=f??i+1,i=f??i+1;continue}if(`;
|
|
50
|
+
{}`.includes(u)){i++,s=i,a=null,c=null,l=i;continue}if(a===null&&(Iu(e,i,"print")||Iu(e,i,"printf")))a=i;if(u!=="|"||e[i-1]==="|"||e[i+1]==="|"){if(!/\s/.test(u))l=i+1;i++;continue}let d=e[i+1]==="&"?i+2:i+1,m=Ls(e,d);if(Iu(e,m,"getline")){o=!0;let f=ET(s,c,l);if(f===null)r=!0;else n.push(f);l=d,i=d;continue}if(RT(s,a)){o=!0;let f=CT(e,m);if(!f){r=!0,l=d,i=d;continue}if(!xT(e,f.endIndex)){r=!0,l=f.endIndex,i=f.endIndex;continue}n.push(f.value),l=f.endIndex,i=f.endIndex;continue}l=d,i++}if(!o)return null;return{dynamic:r,commands:n}}function wo(e){return!!e&&/[A-Za-z0-9_]/.test(e)}function Ls(e,t){let n=t;while(/\s/.test(e[n]??""))n++;return n}function xT(e,t){let n=t;while(/[\t\f\v\r ]/.test(e[n]??""))n++;let r=e[n];return!r||`;
|
|
51
|
+
}#`.includes(r)}function Ws(e,t,n){let r="",o=!1;for(let i=t+1;i<e.length;i++){let s=e[i];if(!s)break;if(o){let a=wT(e,i);if(!a)return null;r+=a.value,i=a.endIndex,o=!1;continue}if(s==="\\"){o=!0;continue}if(s===n)return{value:r,endIndex:i+1};r+=s}return null}function CT(e,t){let n=e[t];if(n!=='"'&&n!=="'")return null;return Ws(e,t,n)}function ET(e,t,n){if(!t)return null;return t.startIndex>=e&&t.endIndex===n?t.value:null}function wT(e,t){let n=e[t];if(!n)return null;if(n==="x"){let o=e.slice(t+1,t+3);if(!/^[0-9A-Fa-f]{2}$/.test(o))return null;return{value:String.fromCharCode(Number.parseInt(o,16)),endIndex:t+2}}if(/[0-7]/.test(n)){let o=/^[0-7]{1,3}/.exec(e.slice(t));if(!o)return null;return{value:String.fromCharCode(Number.parseInt(o[0],8)),endIndex:t+o[0].length-1}}return{value:{a:"\x07",b:"\b",f:"\f",n:`
|
|
52
|
+
`,r:"\r",t:"\t",v:"\v"}[n]??n,endIndex:t}}function Iu(e,t,n){return e.startsWith(n,t)&&!wo(e[t-1])&&!wo(e[t+n.length])}function RT(e,t){return t!==null&&t>=e}function Ov(e,t){let n=e.indexOf(`
|
|
53
|
+
`,t);return n===-1?e.length:n+1}function zv(e,t){let n=PT(e,t);if(n===-1)return!0;if("{([,;!~=".includes(e[n]??""))return!0;let r=n;while(wo(e[r-1]))r--;return yT.has(e.slice(r,n+1))}function PT(e,t){for(let n=t-1;n>=0;n--)if(!/\s/.test(e[n]??""))return n;return-1}function Nv(e,t){let n=!1;for(let r=t;r<e.length;r++){let o=e[r];if(!o)break;if(n){n=!1;continue}if(o==="\\"){n=!0;continue}if(o==="/")return r+1}return null}var Dv=new Set(["rm","find","xargs","parallel"]),AT=new Set(["sudo","env","command","builtin"]),kT=new Set(["git","busybox",...Dv,...me,...Xy,...We]);function Gs(e,t){let n=e[0];if(!n||!t.transparentWrappers.includes(F(n)))return null;let r=F(n),o=e[1]==="--"?2:1,i=TT(e,o,r,t),s=i[0];if(s===void 0)return null;return{wrapper:r,tokens:[...e.slice(s)],childIndex:s,alternativeChildIndices:i.slice(1)}}function TT(e,t,n,r){let o=e[1]==="--",i=[];for(let s=t;s<e.length;s++){let a=e[s];if(!a)continue;if(F(a)!==n&&IT(a,r))i.push(s);else if(ts.has(H(a)))break;if(o)break}return i}function IT(e,t){let n=F(e),r=H(e);return r==="git"||n==="busybox"||Cn(e)||Dv.has(n)||t.transparentWrappers.includes(n)||me.has(r)||e==="$SHELL"||Me(r)||We.has(r)||t.rules.some((o)=>o.command===n)}function Cn(e){return AT.has(e.toLowerCase())}function Mv(e){let t=H(e);return kT.has(t)||Me(t)}function at(e,t){let n=t.policy??{rules:[],transparentWrappers:[]};return Zs([...e],t.environment,t.cwd,t.cwd,new Map,new Map(t.envAssignments??[]),n,{iterations:0},!1)}function*Zs(e,t,n,r,o,i,s,a,c){let l=ps(e,t,n,i);for(let[f,p]of l.envAssignments)i.set(f,p),o.set(f,p);let{tokens:u,cwd:d}=l;if(l.envSplitValues){let f=fs(l.envSplitValues,u);if(!f)throw new De;Nu(a),yield*Zs(f,t,d,r,o,i,s,a,c);return}if(Cn(u[0]??""))throw new De;let m=Gs(u,s);if(m){for(let f of[m.childIndex,...m.alternativeChildIndices])Nu(a),yield*Zs(f===m.childIndex?m.tokens:[...u.slice(f)],t,d,r,new Map(o),new Map(i),s,a,!0);return}if(zT(u)){Nu(a),yield*Zs([...u.slice(1)],t,d,r,o,i,s,a,c);return}yield OT(u,d,r,o,i,c)}function OT(e,t,n,r,o,i){return{tokens:e,cwd:t===null?void 0:t??n,wrapperCwd:t,wrapperEnvAssignments:r,envAssignments:o,head:F(e[0]??"").toLowerCase(),wrappedByTransparent:i}}function Nu(e){if(e.iterations>=Xn)throw new De;e.iterations++}function zT(e){return F(e[0]??"").toLowerCase()==="busybox"&&e.length>1}function Du(e,t){let n=[],r=t;while(r<e.length){let o=e[r];if(o===void 0||o===":::")break;n.push(o),r++}return{markerIndex:r<e.length&&e[r]===":::"?r:-1,templateTokens:n}}function ct(e){let t=!1,n=!1;for(let r of e){if(r==="--")break;if(r==="-r"||r==="-R"||Mu(r,"recursive"))t=!0;else if(r==="-f"||Mu(r,"force"))n=!0;else if(r.startsWith("-")&&!r.startsWith("--")){if(r.includes("r")||r.includes("R"))t=!0;if(r.includes("f"))n=!0}}return t&&n}function $v(e){let t=e.indexOf("--");return e.slice(1,t===-1?void 0:t).some((n)=>Mu(n,"recursive")||/^-[A-Za-z]+$/.test(n)&&/[rR]/.test(n.slice(1)))}function Mu(e,t){return e.length>2&&e.startsWith("--")&&t.startsWith(e.slice(2))}var NT="find -delete permanently removes files. Use -print first to preview.",DT="find -exec rm -rf is dangerous. Use explicit file list instead.",MT=new Set(["-exec","-execdir","-ok","-okdir"]),$T=new Map([...["-Bmin","-Bnewer","-Btime","-amin","-anewer","-atime","-cmin","-cnewer","-context","-ctime","-f","-flags","-fprint","-fprint0","-fls","-fstype","-gid","-group","-ilname","-iname","-inum","-ipath","-iwholename","-iregex","-links","-lname","-maxdepth","-mindepth","-mmin","-mnewer","-mtime","-name","-newer","-newerXY","-newermt","-path","-perm","-printf","-regex","-samefile","-size","-type","-uid","-used","-user","-wholename","-xattrname","-xtype"].map((e)=>[e,1]),["-fprintf",2]]);function js(e,t){let n=e.map(N),r=LT(e,n,t);if(r)return r;if(Bs(n,1)&&!FT(e,n,t)){let s=z(v("find.delete",NT),t.policy);if(s)return s}let o=t.derivedCommandWorkBudget??Qi(),i=0;while(i<n.length){let s=n[i],a=Kt(s??"");if(a>0){i+=a+1;continue}if(!Lt(s)){i++;continue}et(o,n.length-i-1);let c=Po(n,i);i=c.nextIndex;let l=ZT(c.tokens,t.environment);if(l){let f=z(l,t.policy);if(f)return f}let u=s==="-execdir"||s==="-okdir",d=t.analyzeTokens?t.analyzeTokens(c.tokens,u?null:t.cwd):t.analyzeNested?t.analyzeNested(c.tokens.join(" "),{effectiveCwd:u?void 0:t.cwd,envAssignments:t.envAssignments}):null,m=d?.id.startsWith("custom.")?d:z(d,t.policy);if(m)return m}return null}function LT(e,t,n){if(!Bs(t,1)&&!$u(t,n.environment))return null;let o=Us(e)??j(["."]),i=xn({...n,allowPaths:n.policy?.destructiveCommandAllowPaths,posixShell:!0});for(let s of o){let a=Eo(s);for(let c of a.expandedTargets??[N(s)]){let l=st(c,i,{targetIsLiteral:a.expandedTargets!==void 0||a.targetIsLiteral,tmpdirWordSplittingProtected:a.tmpdirWordSplittingProtected});if(l.kind==="root_or_home_target")return v("rm.recursive-force-root-or-home","rm -rf targeting root or home directory is extremely dangerous and always blocked.");if(l.kind==="git_metadata_target")return v("find.delete-git-metadata",qe)}}if(WT(t)&&i.resolvedCwd&&hv(o.map(N),i.resolvedCwd,i.protectedGitMetadata,i.pathCanonicalizationContext))return v("find.delete-git-metadata",qe);return null}function $u(e,t){let n=0;while(n<e.length){if(!Lt(e[n])){n++;continue}let r=Po(e,n),o=Vt([...r.tokens],t),i=F(o[0]??"").toLowerCase();if((i==="rm"||i==="rmdir")&&o.some((s)=>s.includes("{}")))return!0;n=r.nextIndex}return!1}function WT(e){return e.some((t,n)=>{if(!["-name","-iname"].includes(t))return!1;return e[n+1]?.toLowerCase()==="hooks"})}function FT(e,t,n){if(t.includes("-L")||t.includes("-f")||t.includes("-follow"))return!1;let r=Us(e);if(!r)return!1;let o=n.envAssignments??new Map,i=Yl(o,n.environment),s=n.trustedTmpdirValue??Mt(o,n.environment),a=n.allowTmpdirVar??!lo(o,n.environment),c=xn({environment:n.environment,protectedGitMetadata:n.protectedGitMetadata,cwd:n.cwd,originalCwd:n.originalCwd,strict:n.strict,allowTmpdirVar:a&&s&&Boolean(i),allowPaths:n.policy?.destructiveCommandAllowPaths,posixShell:!0,tmpdirWordSplittingUnsafe:n.tmpdirWordSplittingUnsafe??pt(o,n.environment),trustedTmpdirValue:s});return r.every((l)=>{let u=Eo(l);if(u.unsafeBraceExpansion)return!1;return(u.expandedTargets??[N(l)]).every((d)=>xv(d,c,{containmentTarget:GT(d,i),targetIsLiteral:u.expandedTargets!==void 0||u.targetIsLiteral,tmpdirWordSplittingProtected:u.tmpdirWordSplittingProtected}))})}function GT(e,t){if(!t)return e;return e.replace(/^(?:\$TMPDIR|\$\{TMPDIR\})/,()=>t)}function Us(e){let t=(o)=>{let i=e[o];return i?N(i):void 0},n=1;while(t(n)==="-H"||t(n)==="-P")n++;if(t(n)==="--")n++;let r=[];while(n<e.length){let o=t(n),i=e[n];if(!o||!i||o.startsWith("-")||["!","(",")"].includes(o))break;r.push(i),n++}return r.length>0?r:null}function ZT(e,t){let n=Bt([...e],t);if(n.length===0)return null;let r=F(n[0]??"");if(r==="busybox"&&n.length>1)n=n.slice(1),r=F(n[0]??"");if(r==="rm"&&ct(n))return v("find.exec-rm-recursive-force",DT);return null}function Po(e,t){let n=t+1;while(n<e.length&&e[n]!==";"&&!(e[n]==="+"&&e[n-1]==="{}"))n++;return{tokens:e.slice(t+1,n),nextIndex:Math.min(n+1,e.length)}}function Bs(e,t){let n=t;while(n<e.length){let r=e[n];if(!r){n++;continue}if(Lt(r)){n=Po(e,n).nextIndex;continue}let o=Kt(r);if(o>0){n+=o+1;continue}if(r==="-delete")return!0;n++}return!1}function Kt(e){return $T.get(e)??(/^-newer[A-Za-z]{2}$/.test(e)?1:0)}function Lt(e){return e!==void 0&&MT.has(e)}function Ao(e){let t=rt(e,"posix");if(t.status!=="complete"||t.nodes.length!==1)return null;let n=t.nodes[0];if(n?.kind!=="command")return null;if(n.redirections.length>0||n.nested.length>0)return null;if(n.words.some((r)=>r.provenance==="command-substitution"))return null;return n.words.map((r)=>r.text)}var jT=5,Lu="Git aliases supplied through command-line or environment config can hide or execute commands. Run git without Git alias overrides, or ask the user to run it manually.";function Ce(e){let t=e.indexOf("--");if(t===-1)return{index:-1,before:e,after:[]};return{index:t,before:e.slice(0,t),after:e.slice(t+1)}}function Wv(e,t,n){let r=Gv(e,t,n),o=UT(r.entries);if(o.size===0)return{blockedReason:r.blockedReason,expanded:!1,tokens:e};let i=e,s=!1;for(let a=0;a<jT;a++){let{subcommand:c,rest:l}=lt(i),u=c?.toLowerCase();if(!u||!o.has(u))return{blockedReason:r.blockedReason,expanded:s,tokens:i};let d=o.get(u),m=qT(d);if(m===null||m.length===0)return{blockedReason:Lu,expanded:!0,tokens:i};i=["git",...m,...l],s=!0}return{blockedReason:Lu,expanded:!0,tokens:i}}function Fv(e,t,n){return Gv(e,t,n).entries.some((r)=>r.key.toLowerCase()==="core.sshcommand")}function lt(e){if(e.length===0)return{subcommand:null,rest:[]};let t=e[0];if((t?F(t).toLowerCase():null)!=="git")return{subcommand:null,rest:[]};let r=1;while(r<e.length){let o=e[r];if(!o)break;if(o==="--"){let i=e[r+1];if(i&&!i.startsWith("-"))return{subcommand:i,rest:e.slice(r+2)};return{subcommand:null,rest:e.slice(r+1)}}if(o.startsWith("-"))if(He.has(o))r+=2;else if(o.startsWith("-c")&&o.length>2)r++;else if(o.startsWith("-C")&&o.length>2)r++;else r++;else return{subcommand:o,rest:e.slice(r+1)}}return{subcommand:null,rest:[]}}function UT(e){let t=new Map;for(let n of e){let r=n.key.toLowerCase();if(!r.startsWith("alias."))continue;let o=r.slice(6);if(o!=="")t.set(o,n.value)}return t}function Gv(e,t,n){if(e.length===0)return{blockedReason:null,entries:[]};let r=e[0];if((r?F(r).toLowerCase():null)!=="git")return{blockedReason:null,entries:[]};let i=VT(t,n);return{blockedReason:i.blockedReason,entries:[...i.entries,...BT(e,t,n)]}}function BT(e,t,n){let r=[],o=1;while(o<e.length){let i=e[o];if(!i||i==="--"||!i.startsWith("-"))return r;if(i==="-c"){let s=Wu(e[o+1]);if(s)r.push(s);o+=2;continue}if(i.startsWith("-c")&&i.length>2){let s=Wu(i.slice(2));if(s)r.push(s);o++;continue}if(i==="--config-env"){let s=Lv(e[o+1],t,n);if(s)r.push(s);o+=2;continue}if(i.startsWith("--config-env=")){let s=Lv(i.slice(13),t,n);if(s)r.push(s);o++;continue}if(He.has(i)){o+=2;continue}o++}return r}function VT(e,t){let n=HT(e,t),r=KT(e,t);return{blockedReason:n===null||r===null?Lu:null,entries:[...n??[],...r??[]]}}function HT(e,t){let n=Ve("GIT_CONFIG_PARAMETERS",e,t);if(n===void 0)return[];let r=[],o=Ao(n);if(!o)return null;for(let i of o){let s=Wu(i);if(!s)return null;r.push(s)}return r}function KT(e,t){let n=Ui(e,t);if(n.state==="absent")return[];if(n.state==="invalid")return null;let r=[];for(let o=0;o<n.count;o++){let i=Ve(`GIT_CONFIG_KEY_${o}`,e,t)?.trim(),s=Ve(`GIT_CONFIG_VALUE_${o}`,e,t);if(!i||s===void 0)return null;r.push({key:i,value:s})}return r}function Wu(e){if(!e)return null;let t=e.indexOf("=");return{key:(t===-1?e:e.slice(0,t)).trim(),value:t===-1?void 0:e.slice(t+1)}}function Lv(e,t,n){let r=e?.indexOf("=")??-1;if(!e||r===-1)return null;return{key:e.slice(0,r).trim(),value:Ve(e.slice(r+1),t,n)}}function qT(e){let t=e?.trimStart();if(!t||t.startsWith("!"))return null;return Ao(t)}var YT="git checkout -- discards uncommitted changes permanently. Use 'git stash' first.",JT="git checkout --force discards uncommitted changes. Use 'git stash' first.",XT="git checkout <ref> -- <path> overwrites working tree with ref version. Use 'git stash' first.",QT="git checkout --pathspec-from-file can overwrite multiple files. Use 'git stash' first.",eI="git checkout with multiple positional args may overwrite files. Use 'git switch' for branches or 'git restore' for files.",tI="git switch --discard-changes discards uncommitted changes. Use 'git stash' first.",nI="git switch --force discards uncommitted changes. Use 'git stash' first.",rI="git restore discards uncommitted changes. Use 'git stash' first, or use --staged to only unstage.",oI="git restore --worktree explicitly discards working tree changes. Use 'git stash' first.",iI="git reset --hard destroys all uncommitted changes permanently. Use 'git stash' first.",sI="git reset --merge can lose uncommitted changes. Use 'git stash' first.",aI="git clean -f removes untracked files permanently. Use 'git clean -n' to preview first.",cI="git rm --force removes tracked files from the working tree. Use 'git rm --cached' to keep the files, or 'git rm --dry-run' to preview first.",lI="git push --force destroys remote history. Use --force-with-lease for safer force push.",uI="git push deletes remote refs. Ask the user to run it manually if deletion is intended.",dI="git push --mirror can force-update and delete remote refs. Ask the user to run it manually if mirror push is intended.",mI="git branch -D force-deletes without merge check. Use -d for safe delete.",fI="git rebase --abort discards rebase conflict resolutions. Use 'git status' first.",pI="git merge --abort discards merge conflict resolutions. Use 'git status' first.",gI="git tag -d permanently deletes tags. Ask the user to run it manually if deletion is intended.",hI="git reflog delete removes recovery history. Ask the user to run it manually if deletion is intended.",yI="git stash drop permanently deletes stashed changes. Consider 'git stash list' first.",bI="git stash clear deletes ALL stashed changes permanently. Use 'git stash list' to review; ask the user to run it manually if intended.",vI="git worktree remove --force can delete uncommitted changes. Remove --force flag.",Zv=new Set(["-b","-B","--orphan","--conflict","--inter-hunk-context","--pathspec-from-file","--unified"]),jv=new Set(["--recurse-submodules","--track","-t"]),Fu=new Set(["-b","-B","-U"]),Gu=new Set(["-c","-C"]),_I=new Set(["--source","--conflict","--unified","--inter-hunk-context"]),SI=new Set(["-q","--quiet","--no-quiet","-f","--force","--no-force","-d","--detach","--no-detach","-m","--merge","--no-merge","-p","--patch","--no-patch","--guess","--no-guess","--overlay","--no-overlay","--ours","--theirs","--ignore-skip-worktree-bits","--no-ignore-skip-worktree-bits","--no-track","--overwrite-ignore","--no-overwrite-ignore","--ignore-other-worktrees","--no-ignore-other-worktrees","--progress","--no-progress","--pathspec-file-nul","--no-pathspec-file-nul","--no-recurse-submodules"]);function G(e,t){let n=e.split("=",1)[0]??e;return n.length>=4&&t.startsWith(n)&&n.startsWith("--")&&n.slice(2).length>=2}var cr=new Set(["branch","checkout","clean","merge","push","rebase","reflog","reset","restore","rm","stash","switch","tag","worktree"]);function Bv(e){let{subcommand:t,rest:n}=lt(e);if(!t)return null;switch(t.toLowerCase()){case"checkout":return qt(xI(n));case"switch":return qt(CI(n));case"restore":return qt(wI(n));case"reset":return PI(n);case"clean":return qt(kI(n));case"rm":return qt(TI(n));case"push":return En(II(n));case"branch":return En(NI(n));case"stash":return En(WI(n));case"worktree":return En(FI(n));case"rebase":return qt(DI(n));case"merge":return qt(MI(n));case"tag":return En($I(n));case"reflog":return En(LI(n));default:return null}}function qt(e){return e?{...e,localDiscard:!0}:null}function En(e){return e?{...e,localDiscard:!1}:null}function xI(e){let{index:t,before:n}=Ce(e),r=Pe(n,{shortOptsWithValue:Fu});if(n.some((i)=>G(i,"--force"))||r.has("-f"))return v("git.checkout-force",JT);for(let i of e){if(i==="-b"||i==="-B"||i==="--orphan")return null;if(G(i,"--pathspec-from-file"))return v("git.checkout-pathspec-from-file",QT)}if(t!==-1){if(n.some((s)=>!s.startsWith("-")))return v("git.checkout-ref-path",XT);return v("git.checkout-double-dash",YT)}if(EI(e).length>=2)return v("git.checkout-ambiguous",eI);return null}function CI(e){let{before:t}=Ce(e);if(t.some((r)=>G(r,"--discard-changes")))return v("git.switch-discard-changes",tI);let n=Pe(t,{shortOptsWithValue:Gu});if(t.some((r)=>G(r,"--force"))||n.has("-f"))return v("git.switch-force",nI);return null}function EI(e){let t=[],n=0;while(n<e.length){let r=e[n];if(!r)break;if(r==="--")break;if(r.startsWith("-"))if(Zv.has(r))n+=2;else if(r.startsWith("--")&&r.includes("="))n++;else if(jv.has(r)){let o=e[n+1];if(o&&!o.startsWith("-")&&(r==="--recurse-submodules"||r==="--track"||r==="-t"))if((r==="--recurse-submodules"?["checkout","on-demand"]:["direct","inherit"]).includes(o))n+=2;else n++;else n++}else if(r.startsWith("--")&&!SI.has(r)&&!Zv.has(r)&&!jv.has(r))n++;else n++;else t.push(r),n++}return t}function wI(e){let t=RI(e);if(t.isTerminal||!t.hasPathspec&&!t.hasPatch||!t.hasWorktree)return null;return t.hasExplicitLocation?v("git.restore-worktree",oI):v("git.restore-unstaged",rI)}function RI(e){let t=!1,n=!1,r=!0,o=!1,i=(s)=>{if(!o)r=!1,o=!0;if(s!==void 0)r=s};for(let s=0;s<e.length;s++){let a=e[s];if(a===void 0)break;if(a==="--"){t||=s+1<e.length;break}if(a==="--pathspec-from-file"){t=!0,s++;continue}if(a.startsWith("--pathspec-from-file=")){t=!0;continue}if(a==="-h"||a==="--help"||a==="--version")return{hasPathspec:t,hasPatch:n,hasWorktree:r,hasExplicitLocation:o,isTerminal:!0};if(a==="--staged"){i();continue}if(a==="--no-staged"){i();continue}if(a==="--worktree"){i(!0);continue}if(a==="--no-worktree"){i(!1);continue}if(a==="--patch"){n=!0;continue}if(a==="--no-patch"){n=!1;continue}if(_I.has(a)){s++;continue}if(a.startsWith("--"))continue;if(a==="-"){t=!0;continue}if(!a.startsWith("-")){t=!0;continue}for(let c=1;c<a.length;c++){let l=a.charAt(c);if(l==="h")return{hasPathspec:t,hasPatch:n,hasWorktree:r,hasExplicitLocation:o,isTerminal:!0};if(l==="S"){i();continue}if(l==="W"){i(!0);continue}if(l==="p"){n=!0;continue}if(l==="s"||l==="U"){if(c===a.length-1)s++;break}}}return{hasPathspec:t,hasPatch:n,hasWorktree:r,hasExplicitLocation:o,isTerminal:!1}}function PI(e){let t=null;for(let n of e){if(G(n,"--hard")){t=v("git.reset-hard",iI);break}if(G(n,"--merge")){t=v("git.reset-merge",sI);break}}if(!t)return null;return AI(e)?En(t):qt(t)}function AI(e){for(let t of e){if(t==="--")return!1;if(!t.startsWith("-"))return!0}return!1}function kI(e){for(let n of e)if(n==="-n"||G(n,"--dry-run"))return null;let t=Pe(e.filter((n)=>n!=="--"));if(e.some((n)=>G(n,"--force"))||t.has("-f"))return v("git.clean-force",aI);return null}function TI(e){let t=!1,n=!1,r=!1;for(let o of Ce(e).before){if(G(o,"--no-force")){t=!1;continue}if(G(o,"--force")){t=!0;continue}if(G(o,"--no-cached")){n=!1;continue}if(G(o,"--cached")){n=!0;continue}if(G(o,"--no-dry-run")){r=!1;continue}if(G(o,"--dry-run")){r=!0;continue}let i=Pe([o]);t||=i.has("-f"),r||=i.has("-n")}return t&&!n&&!r?v("git.rm-force",cI):null}function II(e){let{before:t,after:n}=Ce(e),r=Pe(t);if(t.some((s)=>G(s,"--mirror")))return v("git.push-mirror",dI);if(t.some((s)=>G(s,"--force"))||r.has("-f")||Uv(t,n).some(OI))return v("git.push-force",lI);if(t.some((s)=>G(s,"--delete"))||r.has("-d")||Uv(t,n).some(zI))return v("git.push-delete",uI);return null}function Uv(e,t){return[...e.filter((n)=>n!==""&&!n.startsWith("-")),...t]}function OI(e){return e.startsWith("+")||e.includes(":+")}function zI(e){return e.length>1&&e.startsWith(":")}function NI(e){let{before:t}=Ce(e),n=Pe(t),r=n.has("-D")||n.has("-d")||t.some((i)=>G(i,"--delete")),o=n.has("-D")||n.has("-f")||t.some((i)=>G(i,"--force"));if(r&&o)return v("git.branch-force-delete",mI);return null}function DI(e){let{before:t}=Ce(e);return t.some((n)=>G(n,"--abort"))?v("git.rebase-abort",fI):null}function MI(e){let{before:t}=Ce(e);return t.some((n)=>G(n,"--abort"))?v("git.merge-abort",pI):null}function $I(e){let{before:t}=Ce(e);return Pe(t).has("-d")||t.some((r)=>G(r,"--delete"))?v("git.tag-delete",gI):null}function LI(e){return e[0]==="delete"?v("git.reflog-delete",hI):null}function WI(e){for(let t of e){if(t==="drop")return v("git.stash-drop",yI);if(t==="clear")return v("git.stash-clear",bI)}return null}function FI(e){let{before:t}=Ce(e);if(!t.includes("remove"))return null;let r=Pe(t);if(t.some((o)=>G(o,"--force"))||r.has("-f"))return v("git.worktree-remove-force",vI);return null}import{execFileSync as GI}from"child_process";import{existsSync as ju,readFileSync as Uu}from"fs";import{dirname as ZI,isAbsolute as Kv,join as Zu,resolve as qv}from"path";var jI=["/usr/bin/git","/usr/local/bin/git","/opt/homebrew/bin/git","C:\\Program Files\\Git\\cmd\\git.exe","C:\\Program Files\\Git\\bin\\git.exe"];function Yv(e,t,n,r){let o=UI(e,t,n);if(o!==null)return o;let i=BI(t,n);if(i!==null)return i;if(Ey(n))return!0;return VI(r)}function UI(e,t,n){let r=null,o=1;while(o<e.length){let i=e[o];if(!i||i==="--")return r;if(!i.startsWith("-"))return r;if(i==="-c"){let s=Vv(e[o+1]);if(s!==null)r=s;o+=2;continue}if(i.startsWith("-c")&&i.length>2){let s=Vv(i.slice(2));if(s!==null)r=s;o++;continue}if(i==="--config-env"){let s=Hv(e[o+1],t,n);if(s!==null)r=s;o+=2;continue}if(i.startsWith("--config-env=")){let s=Hv(i.slice(13),t,n);if(s!==null)r=s;o++;continue}if(He.has(i))o+=2;else o++}return r}function BI(e,t){if(Ve("GIT_CONFIG_PARAMETERS",e,t)!==void 0)return!0;let n=Ui(e,t);if(n.state==="absent")return null;if(n.state==="invalid")return!0;let r=null;for(let o=0;o<n.count;o++){let i=Ve(`GIT_CONFIG_KEY_${o}`,e,t),s=Ve(`GIT_CONFIG_VALUE_${o}`,e,t);if(!i?.trim()||s===void 0)return!0;let a=i.trim().toLowerCase();if(Bu(a))return!0;if(a!=="submodule.recurse")continue;r=ko(s)}return r}function VI(e,t=KI()){let n=HI(e);if(n===null||n)return!0;if(t===null)return!0;try{let r=GI(t,["config","--get","submodule.recurse"],{cwd:e,encoding:"utf8",env:qI(process.env),stdio:["ignore","pipe","ignore"]}).trim();return ko(r)}catch(r){return!YI(r)}}function HI(e){let t=JI(e);if(t===null)return null;for(let n of t){if(!ju(n))continue;if(eO(n))return!0}return!1}function KI(){for(let e of jI)if(ju(e))return e;return null}function qI(e){let t={...e};for(let n of Object.keys(t))if(eo(n))delete t[n];return t}function YI(e){return typeof e==="object"&&e!==null&&"status"in e&&e.status===1}function JI(e){let t=ro(e);if(t===null)return null;let n=XI(t);if(n===null)return null;let r=QI(n);if(r===null)return null;return[Zu(r,"config"),Zu(n,"config.worktree")]}function XI(e){try{let n=Uu(e,"utf-8").split(/\r?\n/,1)[0]?.trim()??"";if(!n.startsWith("gitdir:"))return e;let r=n.slice(7).trim();if(r==="")return null;return Kv(r)?r:qv(ZI(e),r)}catch{return null}}function QI(e){let t=Zu(e,"commondir");if(!ju(t))return e;try{let n=Uu(t,"utf-8").split(/\r?\n/,1)[0]?.trim()??"";if(n==="")return null;return Kv(n)?n:qv(e,n)}catch{return null}}function eO(e){let t;try{t=Uu(e,"utf-8")}catch{return!0}let n="",r=!1;for(let o of t.split(/\r?\n/)){let i=o.trim();if(i===""||i.startsWith("#")||i.startsWith(";"))continue;let s=i.match(/^\[([^\]]+)\]$/);if(s){n=s[1]?.trim().toLowerCase()??"";continue}let a=i.indexOf("="),c=(a===-1?i:i.slice(0,a)).trim().toLowerCase(),l=a===-1?"true":i.slice(a+1).trim();if(tO(n)&&c==="path")return!0;if(n==="submodule"&&c==="recurse")r=ko(l)}return r}function tO(e){return e==="include"||e.startsWith("includeif ")}function Vv(e){if(!e)return null;let t=e.indexOf("="),n=(t===-1?e:e.slice(0,t)).toLowerCase();if(Bu(n))return!0;if(n!=="submodule.recurse")return null;let r=t===-1?"true":e.slice(t+1).toLowerCase();return ko(r)}function ko(e){let t=e.toLowerCase();return t!=="false"&&t!=="no"&&t!=="off"&&t!=="0"}function Hv(e,t,n){let r=e?.indexOf("=")??-1;if(!e||r===-1)return null;let o=e.slice(0,r).toLowerCase();if(Bu(o))return!0;if(o!=="submodule.recurse")return null;let i=Ve(e.slice(r+1),t,n);return i===void 0||ko(i)}function Bu(e){return e==="include.path"||e.startsWith("includeif.")&&e.endsWith(".path")}function Jv(e,t,n){if(!t.localDiscard||!n.worktreeMode||Ay(n.env,n.envAssignments))return null;let r=ky(e,n.cwd);if(!r.gitCwd||r.hasExplicitGitContext)return null;if(!Ty(r.gitCwd))return null;if(nO(e,n,r.gitCwd))return null;return{originalReason:t.reason,gitCwd:r.gitCwd}}function nO(e,t,n){let{subcommand:r,rest:o}=lt(e),i=r?.toLowerCase();if(t.dynamicArguments||rO(o)||Yv(e,t.env,t.envAssignments,n)||sO(o)||oO(i,o))return!0;return i==="clean"&&aO(o)>1}function rO(e){return e.some((t)=>/[$*?[]/.test(t))}function oO(e,t){if(e==="checkout"){let{before:n}=Ce(t),r=Pe(n,{shortOptsWithValue:Fu}),o=n.some((s)=>G(s,"--force"))||r.has("-f"),i=r.has("-B")||n.some((s)=>s==="-B"||s.startsWith("-B"));return o&&i}if(e==="switch"){let{before:n}=Ce(t),r=Pe(n,{shortOptsWithValue:Gu}),o=n.some((s)=>G(s,"--force"))||n.some((s)=>G(s,"--discard-changes"))||r.has("-f"),i=n.some((s)=>s==="-C"||s.startsWith("-C")||iO(s))||r.has("-C");return o&&i}return!1}function iO(e){let t=e.split("=",1)[0]??e;return t==="--force-create"||t.length>=9&&"--force-create".startsWith(t)}function sO(e){return e.some((t)=>t.startsWith("--recurse-sub"))}function aO(e){let t=0;for(let n of e){if(n==="--force"){t++;continue}if(n.startsWith("-")&&!n.startsWith("--")){for(let r of n.slice(1))if(r==="f")t++}}return t}var cO="Git SSH environment overrides can execute arbitrary commands during network operations. Run git without GIT_SSH/GIT_SSH_COMMAND overrides, or ask the user to run it manually.",lO=new Set(["clone","fetch","pull","push","ls-remote","submodule"]);function lr(e,t){return Xv(e.map(N),t)}function Xv(e,t,n){let r=Wv(e,t.env,t.envAssignments),o=r.blockedReason?z(v("git.alias-config",r.blockedReason),t.policy):null;if(o)return o;let i=r.tokens;if((Cy(t.envAssignments)||Fv(e,t.env,t.envAssignments))&&uO(i))return v("git.ssh-env",cO);let s=Bv(i);if(!s)return null;if(r.expanded||r.blockedReason)return s;let a=Jv(e,s,t);if(!a)return s;return n?.(a),null}function Qv(e,t){let n=null;return{match:Xv(e.map(N),t,(o)=>{n=o}),relaxation:n}}function uO(e){let{subcommand:t,rest:n}=lt(e),r=t?.toLowerCase();if(!r)return!1;if(lO.has(r))return!0;if(r==="archive")return Ce(n).before.some((o)=>G(o,"--remote"));return r==="remote"&&dO(n)}function dO(e){return e.find((t)=>!mO(t))?.toLowerCase()==="update"}function mO(e){return e==="-v"||G(e,"--verbose")||G(e,"--no-verbose")}import{isAbsolute as az}from"path";var e_="rm -rf outside cwd is blocked. Retry deleting only explicit paths inside the current directory; escalate for anything outside it.",fO="rm -rf for non-temporary paths is blocked by the active safety policy. Retry deleting only explicit paths inside the current directory; escalate for anything outside it.",pO="rm -rf target contains shell variables that cannot be verified safely. Use literal paths within cwd, /tmp, /var/tmp, or $TMPDIR.",n_="rm -rf targeting root or home directory is extremely dangerous and always blocked.",gO="rm -rf in home directory is dangerous. Change to a project directory first.";function ur(e,t){let n=xn({...t,allowPaths:t.policy?.destructiveCommandAllowPaths,posixShell:!0}),r=e.map(N),o=ct(r),i=$v(r),s=yO(e);for(let a of s){let c=Eo(a.word);if(o&&c.unsafeBraceExpansion){let l=z(t_({kind:"outside_anchored_cwd"},n,t.policy),t.policy);if(l)return l;continue}for(let l of c.expandedTargets??[a.text]){let u=ze(l),d={targetIsLiteral:c.expandedTargets!==void 0||c.targetIsLiteral,tmpdirWordSplittingProtected:c.tmpdirWordSplittingProtected};if(!i&&n.resolvedCwd&&Sn(u,n.resolvedCwd,n.protectedGitMetadata,i,n.pathCanonicalizationContext))return v("rm.git-metadata",qe);if(i&&!o){let m=st(u,n,d);if(m.kind==="root_or_home_target")return v("rm.recursive-force-root-or-home",n_);if(m.kind==="git_metadata_target")return v("rm.git-metadata",qe);continue}if(!o)continue;for(let m of hO(u,n,d)){let f=t_(m,n,t.policy),p=z(f,t.policy);if(p)return p}}}return null}function hO(e,t,n){let r=st(e,t,n);if(r.kind==="cwd_self_target")return[r,st(e,t,{...n,skipCwdSelf:!0})];if(r.kind!=="home_cwd_target")return[r];let o=st(e,t,{...n,skipHomeCwd:!0});if(o.kind!=="cwd_self_target")return[r,o];return[r,o,st(e,t,{...n,skipHomeCwd:!0,skipCwdSelf:!0})]}function yO(e){let t=[],n=!1;for(let r of e.slice(1)){let o=N(r);if(!o)continue;if(o==="--"){n=!0;continue}if(n){t.push({text:o,word:r});continue}if(!o.startsWith("-"))t.push({text:o,word:r})}return t}function t_(e,t,n){switch(e.kind){case"root_or_home_target":return v("rm.recursive-force-root-or-home",n_);case"git_metadata_target":return v("rm.git-metadata",qe);case"temp_target":return null;case"dynamic_target":if(!de(n,"rm.recursive-force-dynamic-target",t.strict))return null;return v("rm.recursive-force-dynamic-target",pO);case"home_cwd_target":return v("rm.recursive-force-home-cwd",gO);case"cwd_self_target":return v("rm.recursive-force-cwd-self",e_);case"within_anchored_cwd":if(de(n,"rm.recursive-force-paranoid",t.paranoid))return v("rm.recursive-force-paranoid",fO);return null;case"outside_anchored_cwd":return v("rm.recursive-force-outside-cwd",e_)}}var bO={bash:["O","o"],dash:["o"],ksh:["o"],sh:["o"],zsh:["o"]},o_=new Set(["--init-file","--rcfile"]),vO=["--init-file","--rcfile"],_O=new Map([["bash","BASH_ENV"],["dash","ENV"],["ksh","ENV"],["sh","ENV"]]);function bt(e){for(let t=1;t<e.length;t++){let n=e[t];if(!n)continue;if(n==="-c")return r_(e,t,!0);if(n.startsWith("-")&&n.includes("c")&&!n.startsWith("--")){let r=r_(e,t,!1);if(r!==null)return r}}return null}function Ye(e){let t=F(e[0]??"").toLowerCase();if(t==="zsh"||t==="ksh")return vt(e).syntaxCheck;let n=!1;for(let r of e.slice(1)){if(r==="--")return n;if(r.startsWith("+")&&!r.startsWith("++")){if(r.slice(1).includes("n"))n=!1;continue}if(!r.startsWith("-")||r.startsWith("--"))return n;let o=r.slice(1);if(o.includes("n"))n=!0;if(o.includes("c"))return n}return n}function r_(e,t,n){if(e[t+1]==="--")return e[t+2]||null;let r=e[t+1];if(!r||!n&&r.startsWith("-"))return null;return r}function i_(e){let t=F(e[0]??"").toLowerCase(),n=SO(e,t),r=_O.get(t)??null,o=n.argvSource?.kind!=="absent";return{argvSource:t==="bash"?n.argvSource:null,argvSourceApplies:t==="bash"&&n.interactive&&n.argvSource?.kind==="literal",envName:r,envSourceApplies:o&&(r==="BASH_ENV"?!n.interactive:r==="ENV"&&n.interactive)}}function SO(e,t){let n=vt(e),r=n.commandIndex??n.scriptIndex??e.length,o=[],i=!1,s=!0;for(let a=1;a<r;a++){let c=e[a];if(c===void 0||c==="--"||c==="-"||c[0]!=="-"&&c[0]!=="+")break;if(c.startsWith("--")){if(t==="bash"&&s?vO.find((m)=>c===m):void 0){let m=e[a+1];o.push(m===void 0?{kind:"absent"}:{kind:"literal",value:m}),a++;continue}let d=c.split("=",1)[0]??c;if(t==="bash"&&o_.has(d)&&!c.includes("="))a++;continue}if(t==="bash")s=!1;let l=s_(t,c,e[a+1],"startup");if(l.interactive)i=c[0]==="-";a+=l.followingValues}return{argvSource:o.at(-1)??null,interactive:i}}function s_(e,t,n,r){let o=!1,i=0,s=!1,a=!1,c=!1;for(let l=1;l<t.length;l++){let u=t[l];if(u===void 0)break;if(e==="ksh"&&u==="o"&&l+1<t.length){if(r==="argv"){let d=t.slice(l+1);if(t[0]==="-"&&(d==="c"||d[0]==="-"&&d.endsWith("c")))s=!0}break}if(e==="ksh"&&u==="o"&&l+1===t.length&&(n?.startsWith("-")||n?.startsWith("+")))break;if(e==="zsh"&&u==="o"&&l+1<t.length)break;if(r==="startup"&&u==="i")o=t[0]==="-";if(r==="argv"&&t[0]==="-"&&u==="c")s=!0;if(r==="argv"&&u==="n")c=t[0]==="-";if(r==="argv"&&u==="s")a=t[0]==="-";if(!bO[e]?.includes(u))continue;if(l+1===t.length)i++;break}return{interactive:o,followingValues:i,commandSelected:s,stdinMode:a,syntaxCheck:c}}function vt(e){let t=F(e[0]??"").toLowerCase(),n=!1,r=!1,o=!1;for(let i=1;i<e.length;i++){let s=e[i];if(s===void 0)break;if(s==="--"){let c=n&&e[i+1]!==void 0?i+1:null;return{command:c===null?null:e[c]??null,commandIndex:c,scriptIndex:!n&&!r&&e[i+1]!==void 0?i+1:null,readsStdinAsCommands:!n&&(r||e[i+1]===void 0),syntaxCheck:o}}if(s==="-"||s[0]!=="-"&&s[0]!=="+")return{command:n?s:null,commandIndex:n?i:null,scriptIndex:!n&&!r&&s!=="-"?i:null,readsStdinAsCommands:!n&&(r||s==="-"),syntaxCheck:o};if(s.startsWith("--")){let c=s.split("=",1)[0]??s;if(t==="bash"&&o_.has(c)&&!s.includes("="))i++;continue}let a=s_(t,s,e[i+1],"argv");if(a.commandSelected)n=!0;if(a.syntaxCheck)o=!0;if(a.stdinMode)r=!0;i+=a.followingValues}return{command:null,commandIndex:null,scriptIndex:null,readsStdinAsCommands:!n,syntaxCheck:o}}var Yt={kind:"none"},wn={kind:"dynamic"},xO=new Set(["<","<<","<<-","<<<","<&","<>"]),c_=/\$(?:([0-9]+|[@*]|[A-Za-z_][A-Za-z0-9_]*)|\{!?([0-9]+|[@*]|[A-Za-z_][A-Za-z0-9_]*))/g,CO=/^(?:[0-9]+|[@*])$/,EO=vn.maxWords,wO=vn.maxInputLength;function l_(e){if(!e||F(H(e.words[0]?.text??""))!=="printf")return;if(e.words.some((o)=>o.provenance!=="literal"))return;let t=e.words.slice(e.words[1]?.text==="--"?2:1),n=t[0]?.text;if(n===void 0)return"";let r=t.slice(1).map((o)=>o.text);if(n==="%s")return r.join("");if(n==="%s\\n"||n===`%s
|
|
54
54
|
`)return`${r.join(`
|
|
55
55
|
`)}
|
|
56
56
|
`;if(n.includes("%")||/\\(?![\\nrt])/.test(n))return;return n.replaceAll("\\n",`
|
|
57
|
-
`).replaceAll("\\r","\r").replaceAll("\\t","\t").replaceAll("\\\\","\\")}function
|
|
58
|
-
`}}function
|
|
57
|
+
`).replaceAll("\\r","\r").replaceAll("\\t","\t").replaceAll("\\\\","\\")}function dr(e){let t=To(e[1])==="--"?2:1;if(e.length<=t)return Yt;let n=e.slice(t);if(!n.every(Hs))return wn;return{kind:"literal",source:n.map(N).join(" ")}}function u_(e){let t=To(e[1])==="--"?2:1,n=e[t],r=To(n);if(n===void 0||e.length<=t+1||r==="-"||r===""||r==="-l"||r==="-p")return Yt;if(!Hs(n))return wn;return{kind:"literal",source:r}}function Vs(e,t){let n=PO(e);if(n===-1)return Yt;let r=AO(t);if(!r)return Yt;let o=[],i=r.command?.length??0;for(let s of r.references){let a=TO(s,e,n,r.ifs);if(!a)return wn;if(i+=a.reduce((c,l)=>c+l.length+3,0),o.length+a.length>EO||i>wO)return wn;o.push(...a)}if(r.command==="eval")return{kind:"literal",source:o.join(" ")};if(o.length===0||/\s/.test(o[0]??""))return{kind:"literal",source:""};return{kind:"literal",source:[r.command,r.command&&r.optionTerminator?"--":null,...o.map(OO)].filter((s)=>s!==null).join(" ")}}function d_(e,t,n,r){if(!vt(e.map(N)).readsStdinAsCommands)return Yt;let o=t.filter((i)=>(i.fd===void 0||i.fd===0)&&xO.has(i.operator)).at(-1);if(o){if(o.operator==="<<"||o.operator==="<<-")return Yt;if(o.operator!=="<<<"||o.target?.provenance!=="literal")return wn;return{kind:"literal",source:o.target.text}}if(!n)return Yt;return r===void 0?wn:{kind:"literal",source:r}}function _t(e){let t=vt(e.map(N)).scriptIndex;if(t===null)return Yt;let n=e[t],r=To(n);return Zi(n,r)?{kind:"literal",source:r}:wn}var RO=new Set(["curl","wget","fetch","aria2c","http","https","xh","xhs","nc","ncat","netcat"]);function qu(e){if(e.words.length!==2||e.redirections.length!==0||e.nested.length!==1)return!1;let t=e.words[0],n=e.words[1];if(!t||t.provenance!=="literal"||t.quoted||t.raw!==t.text||!n)return!1;if(!(t.text==="eval"&&n.quoted&&n.parts.length===3&&n.parts[0]?.raw==='"'&&n.parts[1]?.provenance==="command-substitution"&&n.parts[1].raw.startsWith("$(")&&n.parts[2]?.raw==='"'||(t.text==="source"||t.text===".")&&!n.quoted&&n.parts.length===1&&n.parts[0]?.provenance==="command-substitution"&&n.parts[0].raw.startsWith("<(")))return!1;let o=e.nested[0];if(o?.status!=="complete"||o.nodes.length!==1)return!1;let i=o.nodes[0];if(i?.kind!=="command"||i.redirections.length!==0||i.nested.length!==0||i.words.some((c)=>c.provenance!=="literal"||c.parts.some((l)=>l.provenance!=="literal")))return!1;let s=i.words[0]?.text;if(s===void 0||Ke(s)!==null)return!1;let a=F(H(s));return!RO.has(a)&&!me.has(a)&&!Cn(a)}function PO(e){return vt(e.map(N)).commandIndex??-1}function AO(e){let t=/^IFS=(?:'([^']*)'|"([^"]*)"|([^;\s]*))\s*;\s*(.+)$/.exec(e.trim()),n=t?.[4]??e.trim(),r=/^(\.|bash|command|dash|exec|eval|ksh|sh|source|zsh)(?:\s+(--))?\s+(.+)$/.exec(n),o=(r?.[3]??n).split(/\s+/).map(kO);if(o.length===0||o.some((i)=>i===null))return null;return{command:r?.[1]??null,optionTerminator:r?.[2]!==void 0,references:o.filter((i)=>!!i),ifs:t?t[1]??t[2]??t[3]??"":`
|
|
58
|
+
`}}function kO(e){let t=/^"\$(?:([0-9]+|[@*])|\{([0-9]+|[@*])\})"$/.exec(e),n=/^\$(?:([0-9]+|[@*])|\{([0-9]+|[@*])\})$/.exec(e),r=t??n;if(!r)return null;let o=r[1]??r[2];return{parameter:o==="@"||o==="*"?o:Number(o),quoted:t!==null}}function TO(e,t,n,r){let o=t.slice(n+2);if(e.parameter==="@")return e.quoted?Vu(o):IO(o,r);if(e.parameter==="*"){let a=Vu(o);if(!a)return;let c=a.join(r[0]??"");return e.quoted?[c]:Hu(c,r)}let i=t[n+1+e.parameter];if(i&&!Hs(i))return;let s=To(i);return e.quoted?[s]:Hu(s,r)}function Vu(e){return e.every(Hs)?e.map(N):void 0}function IO(e,t){let n=Vu(e);if(!n)return;let r=n.map((o)=>Hu(o,t));return r.some((o)=>o===void 0)?void 0:r.flatMap((o)=>o??[])}function Hu(e,t){if(["*","?","[","]"].some((n)=>e.includes(n)))return;if(t==="")return e===""?[]:[e];if(t===`
|
|
59
59
|
`)return e.trim().split(/\s+/).filter(Boolean);if(t.length!==1)return;return t===" "||t==="\t"||t===`
|
|
60
|
-
`?e.trim().split(/\s+/).filter(Boolean):e.split(t).filter(Boolean)}function Qs(e){if(!e)return!0;return e.provenance==="unknown"?!/[$`]/.test(N(e)):e.provenance==="literal"}function To(e){return e?N(e):""}function vO(e){return`'${e.replaceAll("'",`'"'"'`)}'`}function Qu(e,t){return Ju(tt(e,"posix"),t)}function pr(e){return Qu(e,new Set(Array.from(e.matchAll(rS)).flatMap((t)=>{let n=t[1]??t[2];return n===void 0?[]:[n]})))}function Ju(e,t){if(e.status==="invalid"||e.status==="limited")return!1;let n=new Set(t);for(let r of e.nodes){if(r.kind==="group"){if(Ju(r.body,n))return!0;continue}if(r.kind!=="command")continue;if(r.nested.some((o)=>Ju(o,n))||aS(r.words,n))return!0;wO(r,n)}return!1}function aS(e,t){let n=e.findIndex((s)=>He(s.text)===null);if(n===-1)return!1;let r=e[n];if(!r)return!1;if(Io(r,t))return!0;let o=H(r.text);if(o==="source"||o==="."){let s=e[n+1]?.text==="--"?n+2:n+1;return nS(e[s],t)}if(de.has(o)){let s=e.slice(n),a=bt(s.map((l)=>l.text)),c=a.commandIndex??a.scriptIndex;return!a.syntaxCheck&&c!==null&&nS(s[c],t)}let i=SO(e,n,t);if(i===null)return!1;if(i===-1)return!0;return aS(e.slice(i),t)}function SO(e,t,n){let r=H(e[t]?.text??"");if(r==="command")return xO(e,t+1);if(r==="exec")return _O(e,t+1);if(r==="env")return CO(e,t+1,n);return null}function xO(e,t){for(let n=t;n<e.length;n++){let r=e[n]?.text??"";if(r==="--")return e[n+1]?n+1:null;if(/^-[p]*[vV][pvV]*$/.test(r))return null;if(/^-p+$/.test(r))continue;return n}return null}function _O(e,t){for(let n=t;n<e.length;n++){let r=e[n]?.text??"";if(r==="--")return e[n+1]?n+1:null;if(r==="-a"){n++;continue}if(/^-a.+/.test(r)||/^-[cl]+$/.test(r))continue;return n}return null}function CO(e,t,n){for(let r=t;r<e.length;r++){let o=e[r],i=o?.text??"";if(i==="--")return e[r+1]?r+1:null;if(i==="-S"||i==="--split-string")return Io(e[r+1],n)?-1:r+2;if(i.startsWith("-S")||i.startsWith("--split-string="))return Io(o,n)?-1:r+1;if(i==="-u"||i==="--unset"||i==="-C"||i==="--chdir"||i==="-P"){r++;continue}if(i==="-i"||i==="-0"||i==="--null"||i.startsWith("-u=")||i.startsWith("--unset=")||i.startsWith("-C")||i.startsWith("--chdir=")||i.startsWith("-P"))continue;if(i.startsWith("-"))continue;if(He(i))continue;return r}return null}function wO(e,t){if(!e.words.every((n)=>He(n.text)!==null))return;for(let n of e.words){let r=He(n.text);if(!r)continue;if(Io(n,t))t.add(r.name)}}function Io(e,t){if(!e)return!1;return e.parts.filter((n)=>n.provenance==="variable").some((n)=>Array.from(n.raw.matchAll(rS)).some((r)=>{let o=r[1]??r[2];return o!==void 0&&(uO.test(o)||t.has(o))}))}function nS(e,t){return!!e&&(e.parts.some((n)=>n.provenance!=="literal"&&n.provenance!=="variable")||Io(e,t))}var RO=new Set(["-c","-C","--git-dir","--work-tree","--namespace","--config-env"]),EO=new Set(["-c","-H","-l","--config","--context","--host","--log-level","--tlscacert","--tlscert","--tlskey"]),PO=new Set;function cS(e){if(e==="git")return RO;if(e==="docker")return EO;return PO}function pe(e,t){if(e.length===0||t.length===0)return null;let n=H(e[0]??""),r=we(e);for(let o of t){if(!kO(n,o.command))continue;if(!AO(n,e,o.subcommand))continue;if(IO(e,new Set(o.block_args),r))return{id:`custom.${o.name}`,reason:`[${o.name}] ${o.reason}`,intent:o.intent??"manual_only"}}return null}function kO(e,t){return e===H(t)}function AO(e,t,n){if(!n)return!0;return lS(t,1,n,cS(e))}function lS(e,t,n,r){let o=!1;for(let i=t;i<e.length;i++){let s=e[i];if(!s)continue;if(o){o=!1;continue}if(s==="--"){let a=e[i+1];if(a&&!a.startsWith("-"))return a===n;return!1}if(r.has(s)){o=!0;continue}if(s.startsWith("-")){if(!s.includes("=")&&TO(e,i,n,r))return!0;continue}return s===n}return!1}function TO(e,t,n,r){let o=e[t+1];if(!o||o.startsWith("-"))return!1;return lS(e,t+2,n,r)}function IO(e,t,n){for(let r of e)if(t.has(r))return!0;for(let r of n)if(t.has(r))return!0;return!1}function nn(e,t,n={}){if(e.length===0)return null;let r=e[0];if(!r)return null;let o=H(r);if(o==="eval"){let i=fr(j(e));if(i.kind==="dynamic")return gr(n,t);if(i.kind==="literal"&&t.analyzeNested){let s=t.analyzeNested(i.source,{effectiveCwd:t.cwd,envAssignments:t.envAssignments});if(s)return s}return St(n,t)}if(de.has(o)){if(qe(e))return null;let i=yt(e);if(i){if(n.dynamicSourceInput??n.dynamicInput){let c=gr(n,t);if(c)return c}if(pr(i)){let c=gr(n,t);if(c)return c}if(!t.analyzeNested)return null;let a=t.analyzeNested(i,{effectiveCwd:t.cwd,envAssignments:t.envAssignments});if(a)return a;return null}let s=vt(j(e));if(s.kind==="dynamic")return gr(n,t);if(s.kind==="literal"){if(n.dynamicSourceInput)return gr(n,t);return null}if(n.dynamicSourceInput??n.dynamicInput)return gr(n,t);return null}if(Me.has(o))return O(Hs(e,(i)=>t.analyzeNested?t.analyzeNested(i,{effectiveCwd:t.cwd,envAssignments:t.envAssignments}):null),t.policy)??pe(e,t.policy?.rules??[])??St(n,t);if(ze(o)){let i=is(e);if(!i)return St(n,t);if(ue(t.policy,"interpreter.one-liner-paranoid",!!t.paranoidInterpreters)){let a=O(S("interpreter.one-liner-paranoid",nr),t.policy);if(a)return a}if(cs(o,i))return St(n,t);let s=t.analyzeNested?.(i,{effectiveCwd:t.cwd,envAssignments:t.envAssignments});if(s&&s.id!=="raw-text.dangerous-command"&&(s.reason!==Yt||cr(i)))return s;if(rr(i,t.scanWork))return O(S("interpreter.dangerous-command",Sn),t.policy)??St(n,t);return St(n,t)}if(o==="rm"||o==="rmdir"){let i=o==="rm"&&(st(e)||n.dynamicRmInput);return O(mr(j(e),{environment:t.environment,cwd:t.cwd,originalCwd:t.originalCwd,strict:t.strict,paranoid:t.paranoidRm,allowTmpdirVar:t.allowTmpdirVar,tmpdirWordSplittingUnsafe:ft(t.envAssignments,t.environment),trustedTmpdirValue:Lt(t.envAssignments,t.environment),protectedGitMetadata:t.protectedGitMetadata,policy:t.policy}),t.policy)??(i&&n.dynamicRmInput?St(n,t):null)??(i?OO(n,t):null)}if(o==="find")return Ks(j(e),{...t,derivedCommandWorkBudget:t.derivedCommandWorkBudget,analyzeTokens:(i,s)=>nn(i,{...t,cwd:s??void 0,derivedCommandWorkBudget:t.derivedCommandWorkBudget},n)})??pe(e,t.policy?.rules??[])??St(n,t);if(o==="git")return O(dr(j(e),{env:t.environment.env,cwd:t.cwd,envAssignments:t.envAssignments,policy:t.policy,worktreeMode:n.dynamicInput?!1:t.worktreeMode}),t.policy)??pe(e,t.policy?.rules??[])??St(n,t);return pe(e,t.policy?.rules??[])??St(n,t)}function gr(e,t){return e.shellDynamicMatch?O(e.shellDynamicMatch,t.policy):null}function St(e,t){return e.dynamicSourceInput&&e.dynamicSourceMatch?O(e.dynamicSourceMatch,t.policy):null}function OO(e,t){return e.dynamicInput&&e.rmDynamicMatch?O(e.rmDynamicMatch,t.policy):null}var ed="xargs rm -rf with dynamic input is dangerous. Use explicit file list instead.",td="xargs dynamic input can supply arbitrary executable command source. Use an explicit child command and arguments instead.",zO="__CC_SAFETY_NET_XARGS_INPUT__",ea="__CC_SAFETY_NET_XARGS_INTERPRETER_INPUT__",ta="rm",NO=/(?:^|[;&|]\s*|\b(?:eval|source)\s+|\b(?:ba|da|z|k)?sh\s+-c\s+)\s*["']?\$(?:([0-9]+|[@*]|[A-Za-z_][A-Za-z0-9_]*)|\{!?([0-9]+|[@*]|[A-Za-z_][A-Za-z0-9_]*)(?:[^}]*)\})/g,DO=/(?:^|[;&|]\s*)\s*eval\b((?:\\.|"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|[^\\'";&|\r\n])*)/g,$O=/\$(?:([0-9]+|[@*]|[A-Za-z_][A-Za-z0-9_]*)|\{!?([0-9]+|[@*]|[A-Za-z_][A-Za-z0-9_]*)(?:[^}]*)\})/g,MO=/^(?:[0-9]+|[@*])$/;function mS(e,t){let n=e.map(N),{childStart:r,replacementToken:o}=An(n),i=n.slice(r),s=S("xargs.shell-dynamic",td);if(WO(i,o,t)&&O(s,t.policy))return O(s,t.policy);for(let a of it(i,t)){let c=a.tokens,l=o!==null&&c[0]!==i[0]&&(c[0]?.includes(o)??!1)?O(s,t.policy):null;if(l)return l;let u=hS(c,o,a.wrapperEnvAssignments),d=a.head==="rm"&&o!==null&&pS(c,o),f=nn(c,{...t,cwd:a.cwd,envAssignments:a.envAssignments},{dynamicInput:u,dynamicSourceInput:d||fS(c,a.head,o,a.wrapperEnvAssignments,u,t.scanWork,t.environment),dynamicRmInput:d,shellDynamicMatch:s,dynamicSourceMatch:s,rmDynamicMatch:S("xargs.rm-recursive-force-dynamic",ed)});if(f)return f;let m=LO(c,o,t.policy?.rules??[]);if(m)return m;if(a.head==="git"){let h=o===null?[...c,zO]:c,b=o!==null&&(c.some((R)=>R.includes(o))||Array.from(a.envAssignments.values()).some((R)=>R.includes(o))),y=nn(h,{...t,cwd:a.cwd,envAssignments:a.envAssignments,worktreeMode:o===null||b?!1:t.worktreeMode});if(y)return y}let p=pe(c,t.policy?.rules??[]);if(p)return p}return null}function LO(e,t,n){if(n.length===0)return null;if(t===null){for(let o of n){let i=pe([...e,...o.subcommand?[o.subcommand]:[],...o.block_args],n);if(i)return i}return null}let r=new Set(n.flatMap((o)=>[o.subcommand,...o.block_args].flatMap((i)=>i?e.flatMap((s)=>nd(s,t,i)):[])));for(let o of r){let i=pe(e.map((s)=>s.replaceAll(t,o)),n);if(i)return i}return null}function nd(e,t,n){let r=e.indexOf(t);if(r===-1||e.indexOf(t,r+t.length)!==-1)return[];let o=e.slice(0,r),i=e.slice(r+t.length);return n.startsWith(o)&&n.endsWith(i)?[n.slice(o.length,n.length-i.length)]:[]}function fS(e,t,n,r,o,i,s){if(de.has(t)){if(qe(e))return!1;if(n!==null&&FO(e,n))return!0;let a=yt(e);if(!a){let c=vt(j(e));if(c.kind==="literal")return n!==null&&c.source.includes(n);return c.kind==="none"&&o}if(n!==null&&a.includes(n))return!0;if(Mt(a,i))return!0;return GO(a,n,r)}if(ze(t))return uS(e,n,as,Yy(t));if(Me.has(t))return uS(e,n,Du,Ev);if(t==="eval"){let a=fr(j(e));if(a.kind==="dynamic")return!0;if(n!==null)return a.kind==="literal"&&a.source.includes(n);return o}if(t==="find")return ZO(e,n,i,s);if(t==="git"){let a=at(e);return n===null?a.subcommand===null:(a.subcommand?.includes(n)??!1)||a.subcommand!==null&&ur.has(a.subcommand.toLowerCase())&&gS(a.rest,n).some((c)=>c.includes(n))}return!1}function uS(e,t,n,r){let o=n(e);if(t===null)return o.optionsOpen||n([...e,ea]).sources.some((c)=>c.value===ea);if(o.sources.some((c)=>c.value.includes(t)))return!0;let i=new Set(o.sources.map((c)=>`${c.tokenIndex}\x00${c.kind}\x00${c.value}`)),s=r.flatMap((c)=>[c.selector,...c.valueForm==="attached-only"||c.valueForm==="attached-or-separate"?[`${c.selector}${ea}`]:[],...c.valueForm==="equals-or-separate"?[`${c.selector}=${ea}`]:[]]),a=new Set(s.flatMap((c)=>e.flatMap((l)=>nd(l,t,c))));return Array.from(a).some((c)=>n(e.map((l)=>l.replaceAll(t,c))).sources.some((l)=>!i.has(`${l.tokenIndex}\x00${l.kind}\x00${l.value}`)))}function WO(e,t,n){if(e.length===0||(e[0]??"").toLowerCase()==="command")return!1;let r=new Set(Array.from(it(e,n),(i)=>i.head)),o=t===null?[...e,ta]:e.map((i,s)=>s===0?i:i.replaceAll(t,ta));return Array.from(it(o,n)).some((i)=>i.head===ta&&!r.has(ta))}function pS(e,t){return gS(e.slice(1),t).some((n)=>n.includes(t)&&(n.startsWith("-")||n.startsWith(t)))}function gS(e,t){let n=e.findIndex((r)=>r==="--"&&!r.includes(t));return n===-1?e:e.slice(0,n)}function hS(e,t,n){if(t===null)return!0;return e.some((r)=>r.includes(t))||Array.from(n.values()).some((r)=>r.includes(t))}function FO(e,t){let n=bt(e);if(n.commandIndex!==null&&(e[n.commandIndex]??"").includes(t)||n.scriptIndex!==null&&(e[n.scriptIndex]??"").includes(t))return!0;return["-c","-nc","-cn",`--${t}`,t].some((o)=>e.some((i,s)=>{if(s===0||!i.includes(t))return!1;return nd(i,t,o).some((c)=>{let l=e.map((d,f)=>f===s?d.replaceAll(t,c):d),u=bt(l);if(u.commandIndex===null&&u.scriptIndex===null)return!1;if(n.commandIndex===null&&u.commandIndex!==null)return!0;if(n.scriptIndex===null&&u.scriptIndex!==null)return!0;if(u.commandIndex!==null&&(l[u.commandIndex]??"").includes(c))return!0;return u.scriptIndex!==null&&(l[u.scriptIndex]??"").includes(c)})}))}function GO(e,t,n){let r=new Set(t===null?[]:Array.from(n).filter(([,o])=>o.includes(t)).map(([o])=>o));for(let o of e.matchAll(NO))if(dS(o,r))return!0;for(let o of e.matchAll(DO))for(let i of(o[1]??"").matchAll($O))if(dS(i,r))return!0;return Qu(e,r)}function dS(e,t){let n=e[1]??e[2];return n!==void 0&&(MO.test(n)||t.has(n))}function ZO(e,t,n,r){if(t===null)return!0;let o=!1,i=0;for(let s=1;s<e.length;s++){let a=e[s]??"";if(!o&&!a.startsWith("-")&&a!=="!"&&a!=="("){if(a.indexOf(t)===0)return!0;continue}if(o=!0,i>0){i--;continue}if(Ft(a)){let l=Po(e,s);s=l.nextIndex-1;for(let u of it(l.tokens,{environment:r,cwd:void 0})){let d=hS(u.tokens,t,u.wrapperEnvAssignments);if(u.head==="rm"&&pS(u.tokens,t)||fS(u.tokens,u.head,t,u.wrapperEnvAssignments,d,n,r))return!0}continue}let c=Qt(a);if(c>0){if(i=c,a.includes(t))return!0;continue}if(a.includes(t))return!0}return!1}function An(e){let t=new Set(["-L","-n","-P","-s","-a","-E","-R","-S","-e","-d","-J","--max-args","--max-procs","--max-chars","--arg-file","--eof","--delimiter","--max-lines","--process-slot-var"]),n=null,r=1;while(r<e.length){let o=e[r];if(!o)break;if(o==="--")return{childStart:r+1,replacementToken:n};if(o.startsWith("-")){if(o==="-I"){n=e[r+1]??"{}",r+=2;continue}if(o.startsWith("-I")&&o.length>2){n=o.slice(2),r++;continue}if(o==="--replace"){n="{}",r++;continue}if(o.startsWith("--replace=")){let i=o.slice(10);n=i===""?"{}":i,r++;continue}if(o==="-J"){n=e[r+1]??"{}",r+=2;continue}if(t.has(o))r+=2;else r++}else return{childStart:r,replacementToken:n}}return{childStart:e.length,replacementToken:n}}var zo="parallel rm -rf with dynamic input is dangerous. Use explicit file list instead.",No="parallel with shell -c can execute arbitrary commands from dynamic input. Run the inner command directly on an explicit file list instead.",UO="parallel without a command reads executable commands from dynamic input. Use an explicit command template or ::: arguments instead.",jO="parallel command construction cannot be verified safely. Use the default ::: separator, literal arguments, and built-in replacement strings.",HO=/\{[^{}\s]*\}/,wS=/\{\}|\{-?\d+\}/g,VO=["e","f","source","file","-e","-f","--source","--file"],qO=["c","e","eval","m","r","Mmodule","import","require","-c","-e","-m","-r","--eval","--import","--require"],KO=new Set(["-L","-d","-n","--delay","--delimiter","--header","--joblog","--jl","--max-args","--max-lines","--nice","--results","--result","--res","--tagstring","--timeout"]),YO=new Set(["--arg-file","--colsep","--rpl","--arg-sep","--arg-file-sep"]),yS=new Set(["-S","--sshlogin","--slf","--sshloginfile"]),JO=new Set(["--workdir","--wd"]),bS="__CC_SAFETY_NET_PARALLEL_SOURCE__",XO=new TextEncoder,od=V.maxDerivedBytes+4*V.maxPlaceholderReplacements;function Ee(e,t){for(let n of e){let r=t(n);if(r)return r}return null}function RS(e,t){return Ee([...e],(n)=>Mt(n,t.scanWork))}function ES(e,t){let n=e.map(N);if((t.envAssignments?.has("PARALLEL")?t.envAssignments.get("PARALLEL"):t.environment.env.get("PARALLEL"))?.trim()){let p=In(t);if(p)return p}if(n.length===2&&(n[1]==="--version"||n[1]==="--help"))return null;let o=DS(n),{template:i,jobs:s,runsRemotely:a,readsCommandsFromInput:c,unsupported:l,workdir:u,dryRun:d}=o;if(l){let p=In(t);if(p)return p;let h=RS(t.envAssignments?.values()??[],t);if(h)return h}if(c){let p=sz(t);if(p)return p}if(u!==void 0&&a){let p=In(t);if(p)return p}let f=uz(u,t.cwd,t.environment.paths);if(f===null){let p=In(t);if(p)return p}let m=a?{...t,cwd:void 0,originalCwd:void 0}:f===null||f===void 0||f===t.cwd?t:{...t,cwd:f};if(d){if([...it(i,m)].flatMap((h)=>[...h.envAssignments.values()]).some(cd)){let h=In(t);if(h)return h}return null}if(i.length===0){if(s.some((b)=>b.length!==1)){let b=In(t);if(b)return b}let p=s.map((b)=>b[0]??"");Ne(t.budget,id(p));let h=IS(m.envAssignments,m.cwd,a);return Ee(p,(b)=>t.analyzeNested(b,h))}return Ee(it(i,m),(p)=>QO(p,o,t,m))}function QO(e,t,n,r){let{jobs:o,templateHasPlaceholder:i,runsRemotely:s,usesStdin:a}=t,c=e.tokens,l={...r,cwd:e.cwd,envAssignments:e.envAssignments},u=[...e.envAssignments.values()];if(u.some(zS)){let y=In(n);if(y)return y}let d=RS(u,n);if(d)return d;let f=u.some(ee),m=i||f,p=a&&m,h=IS(e.envAssignments,e.wrapperCwd,s||p);if(de.has(e.head)){let y=()=>{if(!i||o.length===0)return null;return Ne(n.budget,na(c,o,"generic")),Ee(o,(E)=>nn(c.map((P)=>rn(P,E)),l))};if(qe(c))return y();let R=yt(c);if(R){if(NS(R)){let v=Tn(n);if(v)return v;if(o.length===0)return null;return Ne(n.budget,CS(R,o)),Ee(o,(T)=>n.analyzeNested(rn(R,T),h))}if(ee(R)){if(o.length>0)return Ne(n.budget,CS(R,o)),Ee(o,(k)=>n.analyzeNested(rn(R,k),h));Ne(n.budget,xS(R));let v=ko(R);if(v?.[0]&&H(v[0])==="rm"&&st(v)){let k=SS(n);if(k)return k}let T=v?nn(v,l,{dynamicInput:a,shellDynamicMatch:S("parallel.shell-dynamic",No),rmDynamicMatch:S("parallel.rm-recursive-force-dynamic",zo)}):null;if(T)return T;return n.analyzeNested(R,h)}let E=!f&&(!i||o.length>0)?(o.length>0?o:[void 0]).map((v)=>Xs(j(v===void 0?c:i?c.map((T)=>rn(T,v)):[...c,...v]),R)):[];if(E.some((v)=>v.kind==="dynamic")){let v=Tn(n);if(v)return v}let P=E.flatMap((v)=>v.kind==="literal"?[v.source]:[]);if(P.length>0)return Ne(n.budget,id(P)),Ee(P,(v)=>n.analyzeNested(v,h));if(Ne(n.budget,xS(R)),pr(R)){let v=Tn(n);if(v)return v}let _=n.analyzeNested(R,h);if(_)return _;if(m)return Tn(n);return null}let w=vt(j(c));if(w.kind==="dynamic"||w.kind==="literal"&&ee(w.source))return Tn(n)??y();if(w.kind==="literal")return y();if(o.length>0){let E=Tn(n);if(E)return E;let P=y();if(P)return P;if(i)return null;let _=o.flatMap((v)=>v[0]===void 0?[]:[v[0]]);return Ne(n.budget,id(_)),Ee(_,(v)=>n.analyzeNested(v,h))}if(m||a)return Tn(n)??y();return null}if(e.head==="rm"&&st(c)){if(i&&o.length>0)return Ne(n.budget,na(c,o,"rm")),Ee(o,(R)=>rd(c.map((w)=>sd(w,R)),e.cwd,r));if(o.length>0)return Ne(n.budget,_S(c,o)),Ee(o,(R)=>rd([...c,...R],e.cwd,r));let y=rd(c.flatMap((R,w)=>{if(w===0||!ee(R))return[R];return R.startsWith("-")?[sd(R,[""])]:[]}),e.cwd,r);if(y)return y;return SS(n)}Ne(n.budget,i&&o.length>0?na(c,o,"generic"):o.length>0?_S(c,o):TS(c));let b=o.length>0?o:[void 0];return Ee(b,(y)=>{let R=y===void 0?c:i?c.map((z)=>rn(z,y)):[...c,...y],w=S("parallel.shell-dynamic",No),E=a&&e.head==="find"?iz(R,r):null,P=kS(R,a,n.policy?.rules??[],n.budget)??E?.customResult??null,_=H(e.head),v=a&&(_==="rm"&&ad(R)||_==="xargs"&&AS(R)||E?.rmOptions===!0),T=a&&(v||E?.executedSource===!0||E===null&&PS(R,_)),k=nn(R,{...l,worktreeMode:s||a||m?!1:n.worktreeMode},{dynamicInput:a||m,dynamicRmInput:v,dynamicSourceInput:P!==null||T,shellDynamicMatch:w,dynamicSourceMatch:w,rmDynamicMatch:S("parallel.rm-recursive-force-dynamic",zo)});if(T){let z=O(w,n.policy);if(z)return z}return k??P??pe(R,n.policy?.rules??[])})}function PS(e,t){if(ee(e[0]??""))return!0;if(t==="eval"||t==="source"||t===".")return!0;if(t==="parallel"||t==="xargs")return!0;if(de.has(t))return nz(e);if(t==="git")return ez(e);if(t==="find")return!0;if(Me.has(t))return vS(e,VO,Eo);if(ze(t))return vS(e,qO,ss);return!1}function ad(e){let t=e.indexOf("--"),n=e.slice(1,t===-1?void 0:t);if(!e.some(ee))return t===-1;return n.some((o)=>ee(o)&&(o.startsWith("-")||NS(o)))}function ez(e){if(tz(e))return!0;let t=at(e);if(t.subcommand===null||ee(t.subcommand))return!0;if(!ur.has(t.subcommand.toLowerCase()))return!1;let n=t.rest.indexOf("--"),r=t.rest.slice(0,n===-1?void 0:n);if(!e.some(ee))return n===-1;return r.some(ee)}function tz(e){for(let t=1;t<e.length;t++){let n=e[t];if(!n||n==="--"||!n.startsWith("-"))return!1;if(n==="-c"||n==="--config-env"){if(ee(e[t+1]??""))return!0;t++;continue}if(n.startsWith("-c")&&n.length>2||n.startsWith("--config-env=")){if(ee(n))return!0;continue}if(ee(n))return!0}return!1}function nz(e){if(qe(e))return!1;let t=yt(e);if(t!==null)return ee(t);let n=vt(j(e));if(n.kind==="literal")return ee(n.source);if(n.kind==="dynamic")return!0;return!e.some(ee)}function vS(e,t,n){let r=n(e);if(r.some((i)=>ee(i.value)))return!0;if(!e.some(ee))return n([...e,bS]).some((i)=>i.value===bS);let o=new Set(r.map((i)=>`${i.tokenIndex}\x00${i.kind}\x00${i.value}`));return t.some((i)=>n(e.map((s)=>rn(s,[i]))).some((s)=>!o.has(`${s.tokenIndex}\x00${s.kind}\x00${s.value}`)))}function kS(e,t,n,r){if(!t||n.length===0)return null;let o=n.filter((s)=>H(s.command)===H(e[0]??""));if(o.length===0)return null;let i=e.some(ee);if(Ne(r,rz(e,o,i)),!i)return Ee(o,(s)=>pe([...e,...s.subcommand?[s.subcommand]:[],...s.block_args],[s]));return Ee(o,(s)=>{let a=new Set([s.subcommand,...s.block_args].flatMap((c)=>c?oz(e,c):[]));return Ee(a,(c)=>pe(e.map((l)=>rn(l,[c])),[s]))})}function rz(e,t,n){let r=n?On(Ke(t.map((o)=>o.block_args.length+(o.subcommand?1:0)),V.maxChildAnalyses),2*Math.max(e.length,1),V.maxChildAnalyses):t.length;return{childAnalyses:r,derivedTokens:On(r,e.length,V.maxDerivedTokens)}}function oz(e,t){return e.flatMap((n)=>{let r=[...n.matchAll(/\{[^{}\s]*\}/g)];if(r.length!==1)return[];let o=r[0];if(!o||o.index===void 0)return[];let i=n.slice(0,o.index),s=n.slice(o.index+o[0].length);if(!t.startsWith(i)||!t.endsWith(s))return[t];let a=t.slice(i.length,t.length-s.length);return a!==t?[t,a]:[t]})}function iz(e,t){let n={customResult:null,executedSource:!e.some(ee),rmOptions:!1},r=!1,o=0,i=null,s=()=>{if(!i?.some(ee))return;for(let a of it(i,t))n.executedSource||=PS(a.tokens,a.head),n.rmOptions||=a.head==="rm"&&ad(a.tokens)||a.head==="xargs"&&AS(a.tokens),n.customResult??=kS(a.tokens,!0,t.policy?.rules??[],t.budget)};for(let a of e.slice(1)){if(!r&&!a.startsWith("-")&&a!=="!"&&a!=="("){n.executedSource||=ee(a);continue}if(r=!0,i){if(a===";"||a==="+"){s(),i=null;continue}i.push(a);continue}if(o>0){o--;continue}if(Ft(a)){i=[],n.executedSource||=ee(a);continue}let c=Qt(a);if(c>0){o=c,n.executedSource||=ee(a);continue}n.executedSource||=ee(a)}return s(),n}function AS(e){let t=e.slice(An(e).childStart);return H(t[0]??"")==="rm"&&ad(t)}function ra(e,t){return(n)=>O(S(e,t),n.policy)}var Tn=ra("parallel.shell-dynamic",No),sz=ra("parallel.command-stream-dynamic",UO),In=ra("parallel.command-stream-dynamic",jO),SS=ra("parallel.rm-recursive-force-dynamic",zo);function rd(e,t,n){return O(mr(j(e),{environment:n.environment,cwd:t,originalCwd:n.originalCwd,strict:n.strict,paranoid:n.paranoidRm,allowTmpdirVar:n.allowTmpdirVar,tmpdirWordSplittingUnsafe:ft(n.envAssignments??new Map,n.environment),trustedTmpdirValue:Lt(n.envAssignments??new Map,n.environment),protectedGitMetadata:n.protectedGitMetadata,policy:n.policy}),n.policy)}function id(e){return{childAnalyses:e.length,derivedTokens:e.length,derivedBytes:Do(e)}}function xS(e){return TS([e])}function TS(e){return{childAnalyses:1,derivedTokens:e.length,derivedBytes:Do(e)}}function _S(e,t){if(t.length>V.maxChildAnalyses)return{childAnalyses:t.length};return{childAnalyses:t.length,derivedTokens:Ke(t.map((n)=>e.length+n.length),V.maxDerivedTokens),derivedBytes:Ke([On(Do(e),t.length,V.maxDerivedBytes),Ke(t.map((n)=>Do(n)),V.maxDerivedBytes)],V.maxDerivedBytes)}}function CS(e,t){return na([e],t,"generic")}function na(e,t,n){if(t.length>V.maxChildAnalyses)return{childAnalyses:t.length};let r=On(e.length,t.length,V.maxDerivedTokens);if(r>V.maxDerivedTokens)return{childAnalyses:t.length,derivedTokens:r};let o=lz(e.map((c)=>cz(c,n))),i=On(o.occurrences,t.length,V.maxPlaceholderReplacements);if(i>V.maxPlaceholderReplacements)return{childAnalyses:t.length,derivedTokens:r,placeholderReplacements:i};if(az(o,t,i))return{childAnalyses:t.length,derivedTokens:r,derivedBytes:V.maxDerivedBytes+1,placeholderReplacements:i};let s=n==="generic"?rn:sd,a=Ke(t.map((c)=>Do(e.map((l)=>s(l,c)))),V.maxDerivedBytes);return{childAnalyses:t.length,derivedTokens:r,derivedBytes:a,placeholderReplacements:i}}function az(e,t,n){let r=V.maxDerivedBytes+4*n;return Ke([On(e.fixedBytes,t.length,r),On(e.occurrences,Ke(t.map((o)=>o.reduce((i,s)=>Math.max(i,Oo(s)),0)),r),r)],r)>r}function cz(e,t){let n=t==="generic"?e.matchAll(/\{[^{}\s]*\}/g):e.matchAll(wS),r=0,o=0,i=0;for(let s of n){if(r>=V.maxPlaceholderReplacements)return{occurrences:V.maxPlaceholderReplacements+1,fixedBytes:0};o=Ke([o,Oo(e.slice(i,s.index))],od),r++,i=s.index+s[0].length}return{occurrences:r,fixedBytes:r===0?Oo(e):Ke([o,Oo(e.slice(i))],od)}}function lz(e){return{occurrences:Ke(e.map((t)=>t.occurrences),V.maxPlaceholderReplacements),fixedBytes:Ke(e.map((t)=>t.fixedBytes),od)}}function Do(e,t=V.maxDerivedBytes){return Ke(e.map(Oo),t)}function Oo(e){return XO.encode(e).byteLength}function Ke(e,t){let n=0;for(let r of e){if(!Number.isSafeInteger(r)||r<0||r>t-n)return t+1;n+=r}return n}function On(e,t,n){if(!Number.isSafeInteger(e)||!Number.isSafeInteger(t)||e<0||t<0||e!==0&&t>Math.floor(n/e))return n+1;return e*t}function IS(e,t,n){let r={};if(e)r.envAssignments=e;if(n)return r.effectiveCwd=null,r.worktreeMode=!1,r;if(t!==void 0)r.effectiveCwd=t;return Object.keys(r).length>0?r:void 0}function rn(e,t){return e.replace(/\{[^{}\s]*\}/g,(n)=>OS(n,t))}function sd(e,t){return e.replace(wS,(n)=>OS(n,t))}function OS(e,t){let n=/^\{(-?\d+)[^{}\s]*\}$/.exec(e)?.[1];if(n===void 0)return t[0]??"";let r=Number(n),o=r>0?r-1:t.length+r;return t[o]??""}function ee(e){return HO.test(e)}function zS(e){if(cd(e))return!0;for(let t of e.matchAll(/\{[^{}\s]*\}/g))if(!/^(?:\{\}|\{-?\d+\})$/.test(t[0]))return!0;return!1}function cd(e){let t=e.indexOf("{=");return t!==-1&&e.indexOf("=}",t+2)!==-1}function NS(e){return/^\{[^{}\s]*\}$/.test(e)}function DS(e){let t=1,n=[],r=e.length,o=-1,i=!1,s=!1,a=!1,c,l=e.some((p)=>p==="::::"||p==="::::+"||p===":::+");while(t<e.length){let p=e[t];if(p===void 0)break;if(p===":::"){o=t;break}if(p==="--"){let w=Lu(e,t+1);n.push(...w.templateTokens),r=t+1,o=w.markerIndex;break}if(!p.startsWith("-")){let w=Lu(e,t);n.push(...w.templateTokens),r=t,o=w.markerIndex;break}let h=e[t+1],b=p.indexOf("="),y=b===-1?p:p.slice(0,b),R=b===-1?void 0:p.slice(b+1);if(p==="--dry-run"){a=!0,t++;continue}if(p==="-I"||p.startsWith("-I")&&p.length>2){l||=(p==="-I"?h:p.slice(2))!=="{}",t+=p==="-I"?2:1;continue}if(p==="--replace"||p==="-i"){l=!0,t+=2;continue}if(y==="--replace"||p.startsWith("-i")&&p.length>2){let w=y==="--replace"?R:p.slice(2);l||=w!==""&&w!=="{}",t++;continue}if(p==="-a"||YO.has(y)){l=!0,t+=R===void 0?2:1;continue}if(p==="--pipe"||p==="--pipepart"){s=!0,t++;continue}if(y==="--env"){l=!0,t+=R===void 0?2:1;continue}if(yS.has(y)||p.startsWith("-S")&&p.length>2){i=!0,t+=yS.has(p)?2:1;continue}if(JO.has(y)){let w=R??h;if(w===void 0||w===":::"||w==="--"){l=!0,t++;continue}c=w,l||=R!==void 0&&w==="",t+=R===void 0?2:1;continue}if(p.startsWith("-j")&&p.length>2&&/^\d+$/.test(p.slice(2))){t++;continue}if(p.startsWith("--")&&R!==void 0){t++;continue}if(KO.has(p)){if(h===void 0||h===":::"||h==="--"){l=!0,t++;continue}t+=2;continue}t+=p==="-j"||p==="--jobs"?2:1}l||=n.some(a?cd:zS);let u=[];if(o!==-1){let p=[];for(let h=o+1;h<e.length;h++){let b=e[h];if(b===":::"){u.push(p),p=[];continue}if(b!==void 0)p.push(b)}u.push(p)}let d=dz(u),f=n.some(ee),m=n.length===0&&o===-1;return{template:n,jobs:d,childStart:r,templateHasPlaceholder:f,runsRemotely:i,usesStdin:s||o===-1,readsCommandsFromInput:m,unsupported:l,workdir:c,dryRun:a}}function uz(e,t,n){if(e===void 0)return;if(e==="..."||/[{}$`*?~[]/.test(e))return null;if(!t&&!BO(e))return null;try{return Kt(t??e,e,n)}catch{return null}}function dz(e){if(e.length===0||e.some((n)=>n.length===0))return[];let t=[[]];for(let n of e){if(n.length===1){let o=n[0];if(o===void 0)return[];for(let i of t)i.push(o);continue}let r=[];for(let o of t)for(let i of n)if(r.push([...o,i]),r.length>V.maxChildAnalyses)return r;t=r}return t}function $S(e){return DS(e).childStart}var mz="dynamic command name contains shell substitution output and cannot be verified safely. Use a literal executable name.",oa="shell substitution output can change guarded command structure and cannot be verified safely. Use literal subcommands and options.";function ud(e){return e?.parts.some((t)=>t.provenance==="command-substitution")??!1}function ld(e){return e?.parts.some((t)=>t.provenance==="literal"&&t.raw.replace(/^["']/,"").startsWith("-"))??!1}function LS(e,t,n,r,o=!1,i){let a=(go(e,t)||r&&e!=="powershell"&&t[0]?.provenance==="variable")&&ue(i,"shell.dynamic-executable",o)?S("shell.dynamic-executable",mz):null;return O(a,i)??WS(e,t,n,o,i)}function WS(e,t,n,r,o){if(t.length<2)return null;let i=t.flatMap((a,c)=>ud(a)?[c]:[]);if(i.length===0)return null;let s=H(t[0]?.text??"");if(s==="git"){let a=Jn(e,t),c=pz(a);if(ue(o,"shell.dynamic-structure",r)&&i.some((d)=>d<=c))return O(S("shell.dynamic-structure",oa),o);if(O(dr(a,{env:n.env}),o))return null;let l=t[c]?.text.toLowerCase(),u=a.findIndex((d,f)=>f>c&&N(d)==="--");if(ue(o,"shell.dynamic-structure",r)&&l&&ur.has(l)&&i.some((d)=>d>c&&(u===-1||d<u)))return O(S("shell.dynamic-structure",oa),o);return null}if(s==="find")return ue(o,"shell.dynamic-structure",r)&&gz(t)?O(S("shell.dynamic-structure",oa),o):null;if(s==="rm"){let a=t.findIndex((l,u)=>u>0&&N(l)==="--"),c=st(t.map(N));return ue(o,"shell.dynamic-structure",r)&&i.some((l)=>(a===-1||l<a)&&(l<t.length-1||!c))?O(S("shell.dynamic-structure",oa),o):null}if(s==="xargs")return MS(e,t.slice(An(t.map(N)).childStart),"xargs",n,r,o);if(s==="parallel")return MS(e,t.slice($S(t.map(N))),"parallel",n,r,o);return null}function MS(e,t,n,r,o,i){if(t.length===0)return null;let s=fz(t,r);if(go(e,s)){let c=O(S(`${n}.shell-dynamic`,n==="xargs"?td:No),i);if(c)return c}let a=WS(e,s,r,o,i);if(a)return a;if(s[0]?.text==="rm"&&s.slice(1).some((c)=>ud(c)&&ld(c)))return O(S(`${n}.rm-recursive-force-dynamic`,n==="xargs"?ed:zo),i);return null}function fz(e,t){let n=xn(e,t),r=n.rewritten?j(n.words.map(N)):n.words,o=r[0];return o&&N(o)==="busybox"?r.slice(1):r}function pz(e){let t=1;while(t<e.length){let n=e[t],r=n?N(n):"";if(mt.has(r)){t+=2;continue}if(r.startsWith("-")){t++;continue}return t}return t}function gz(e){let t=!1,n=0,r=!1,o=!1;for(let i=1;i<e.length;i++){let s=e[i];if(!s)continue;let a=ud(s);if(n>0){n--;continue}if(o){if(s.text===";"||s.text==="+"){o=!1,t=!0,r=!1;continue}if(a&&(r||ld(s)))return!0;r=!1;continue}if(!t&&!s.text.startsWith("-")){if(a&&(i>1||ld(s)))return!0;continue}if(t=!0,a)return!0;let c=Qt(s.text);if(c>0){n=c;continue}if(Ft(s.text))o=!0,r=!0}return!1}function dd(e,t){return e.some((n)=>{if(n.value==="-"&&(n.kind==="main-script"||n.kind==="program-file"))return!0;return!Bi(t[n.tokenIndex],n.value)})}var hz="dd writing to a /dev device can destroy a disk or partition. Run device writes manually after confirming the target.",yz="mkfs formatting a /dev device erases everything on it. Run the format manually after confirming the target.",bz="shred permanently destroys the given target. Use rm for ordinary deletes, or run shred manually.";function FS(e,t){let n=t.slice(1);if(e==="dd"&&n.some((r)=>/^of=\/dev\/.+/.test(r)))return S("dd.device-write",hz);if((e==="mkfs"||e.startsWith("mkfs."))&&n.some((r)=>r.startsWith("/dev/")))return S("mkfs.device",yz);if(e==="shred"&&n.length>0)return S("shred.target",bz);return null}var ZS=[{heads:new Set(["rm","rmdir"]),analyze:(e)=>mr(e.words,{environment:e.options.environment,cwd:e.cwd,originalCwd:e.originalCwd,strict:e.options.strict,paranoid:e.options.paranoidRm,allowTmpdirVar:e.allowTmpdirVar,tmpdirWordSplittingUnsafe:ft(e.envAssignments,e.options.environment),trustedTmpdirValue:Lt(e.envAssignments,e.options.environment),protectedGitMetadata:e.options.protectedGitMetadata,policy:e.options.policy})},{heads:new Set(["git"]),analyze:(e)=>dr(e.words,md(e))},{heads:new Set(["find"]),analyze:(e)=>Ks(e.words,{environment:e.options.environment,cwd:e.cwd,originalCwd:e.originalCwd,strict:e.options.strict,allowTmpdirVar:e.allowTmpdirVar,tmpdirWordSplittingUnsafe:ft(e.envAssignments,e.options.environment),trustedTmpdirValue:Lt(e.envAssignments,e.options.environment),protectedGitMetadata:e.options.protectedGitMetadata,derivedCommandWorkBudget:e.options.derivedCommandWorkBudget,envAssignments:e.envAssignments,policy:e.options.policy,analyzeTokens:e.analyzeChildTokens,analyzeNested:(t,n)=>zn(e.options.analyzeNested(t,n))})},{heads:new Set(["xargs"]),analyze:(e)=>mS(e.words,{...GS(e),analyzeNested:(t,n)=>zn(e.options.analyzeNested(t,n))})},{heads:new Set(["parallel"]),analyze:(e)=>ES(e.words,{...GS(e),budget:e.options.parallelBudget,analyzeNested:(t,n)=>zn(e.options.analyzeNested(t,n))})}];function GS(e){return{environment:e.options.environment,cwd:e.cwd,originalCwd:e.originalCwd,strict:e.options.strict,paranoidRm:e.options.paranoidRm,paranoidInterpreters:e.options.paranoidInterpreters,allowTmpdirVar:e.allowTmpdirVar,protectedGitMetadata:e.options.protectedGitMetadata,derivedCommandWorkBudget:e.options.derivedCommandWorkBudget,envAssignments:e.envAssignments,worktreeMode:e.options.worktreeMode,policy:e.options.policy,scanWork:e.options.scanWork}}function zn(e){return e?{id:e.ruleId??"",reason:e.reason,intent:e.intent??"manual_only"}:null}function md(e){return{env:e.options.environment.env,cwd:e.cwd,dynamicArguments:e.dynamicArguments,envAssignments:e.envAssignments,policy:e.options.policy,worktreeMode:e.options.worktreeMode}}var HS="shell execution source cannot be verified safely. Use a literal command string or ask the user to run it manually.";function VS(e){return ZS.find((t)=>t.heads.has(e))?.analyze}function $o(e,t,n){let r=n.trace;if(e.length===0)return null;let o=n.commandView?.dialect??"posix",i=(A)=>A.map((Z)=>o==="posix"?N(Z):Z.text),s=n.effectiveCwd===null,a=s?void 0:n.effectiveCwd??n.cwd,c=s?void 0:n.cwd,l=ps(e);if(l.envAssignments.size>0)r?.recordSegment({type:"env-strip",input:i(e),envVars:[...l.envAssignments.keys()],output:i(l.words)});let u=xn(l.words,n.environment,a,new Map([...n.envAssignments??[],...l.envAssignments])),d=u.envSplitValues??[];if(d.length>0){let A=[...d,...i(u.words)].join(" "),Z=Mt(A,n.scanWork);if(Z)return r?.recordSegment({type:"dangerous-text",token:A,matched:!0,reason:Z.reason}),xt(Z);if(n.strict)return Le(r);let ie=gs(d,i(u.words));if(ie){Xe(n.derivedCommandWorkBudget,ie.length);let le=n.analyzeNested(ie.join(" "),{effectiveCwd:u.cwd===void 0?n.effectiveCwd:u.cwd,envAssignments:new Map([...n.envAssignments??[],...l.envAssignments,...u.envAssignments])});if(le)return le}}let f=u.rewritten?j(i(u.words)):Jn(o,u.words),m=i(f),p={...n,wrapperNormalizationBudget:n.wrapperNormalizationBudget??{iterations:0}};if(r&&l.words.length>f.length){let A=i(l.words);r.recordSegment({type:"leading-tokens-stripped",input:A,removed:A.slice(0,A.length-f.length),output:m})}let h=new Map([...n.envAssignments??[],...l.envAssignments,...u.envAssignments]),b=m[0];if(!b)return null;if(En(b))throw new Oe;let y=H(b),R=u.cwd===null?void 0:u.cwd??a,w=u.cwd===null?void 0:c,E=u.cwd===void 0?n.effectiveCwd:u.cwd,P=!uo(h,n.environment),_=LS(o,u.words,n.environment,t===0,n.strict,n.policy);if(_)return r?.recordSegment({type:"rule-check",rule:"analyzer/segment.ts:analyzeDynamicCommandStructure",matched:!0,reason:_.reason}),xt(_);let v=Vs(m,n.policy);if(v){for(let A of[v.childIndex,...v.alternativeChildIndices]){BS(p.wrapperNormalizationBudget);let Z=f.slice(A);r?.recordSegment({type:"transparent-wrapper",wrapper:v.wrapper,output:i(Z)});let ie=$o(Z,t,{...p,effectiveCwd:E,envAssignments:h});if(ie)return ie}return null}let T=y==="eval"?fr(f):y==="trap"?iS(f):void 0;if(T?.kind==="dynamic"&&(n.strict||!n.commandView||!Xu(n.commandView)))return Le(r);if(T?.kind==="literal"){r?.recordSegment({type:"recurse",reason:y==="eval"?"shell-eval":"shell-trap",innerCommand:T.source,depth:t+1});let A=n.analyzeNested(T.source,{effectiveCwd:E,envAssignments:h,functionDefinitions:n.functionDefinitions});if(A)return A}if(KS(b,y)){if(qe(m))return null;let A=vz(m,h,E,n,r,t);if(A)return A;let Z=yt(m);if(Z){let qn=Xs(f,Z);if(qn.kind==="dynamic")return Le(r);let xl=qn.kind==="literal"?qn.source:Z,Oh=Sz(xl);r?.recordSegment({type:"shell-wrapper",wrapper:y,innerCommand:Oh}),r?.recordSegment({type:"recurse",reason:"shell-wrapper",innerCommand:Oh,depth:t+1});let zh=n.analyzeNested(xl,{effectiveCwd:E,envAssignments:h});if(zh)return zh;return pr(xl)?Le(r):null}let ie=vt(f);if(ie.kind==="dynamic")return Le(r);if(ie.kind==="literal")return aa(ie.source,E,h,n,r,t);let le=sS(f,n.commandView?.redirections??[],n.hasPipelineInput??!1,n.literalShellInput);if(le.kind==="dynamic")return Le(r);if(le.kind==="literal")return r?.recordSegment({type:"recurse",reason:"shell-stdin",innerCommand:le.source,depth:t+1}),n.analyzeNested(le.source,{effectiveCwd:E,envAssignments:h})}if(y==="source"||y==="."){let A=m[1]==="-p"?2:null;if(A!==null){let qn=n.commandView?f[A]:void 0;if(!qn)return null;if(qn.provenance!=="literal")return Le(r)}let Z=A===null?1:3,ie=m[Z]==="--"?Z+1:Z,le=n.commandView?f[ie]:void 0;if(!le)return null;if(le.provenance==="literal")return aa(le.text,E,h,n,r,t);if(n.strict||!n.commandView||!Xu(n.commandView))return Le(r)}if(Me.has(y)){if(n.strict&&dd(Eo(m),f))return Le(r);let A=Hs(m,(ie)=>zn(n.analyzeNested(ie,{effectiveCwd:E,envAssignments:h}))),Z=O(A,n.policy);if(Z)return r?.recordSegment({type:"rule-check",rule:"awk:analyzeAwkSystemCallMatch",matched:!0,reason:Z.reason}),xt(Z)}if(ze(y)){if(n.strict&&dd(ss(m),f))return Le(r);let A=is(m);if(A){let Z=ue(n.policy,"interpreter.one-liner-paranoid",!!n.paranoidInterpreters);if(r?.recordSegment({type:"interpreter",interpreter:y,codeArg:A,paranoidBlocked:Z}),Z){let le=O(S("interpreter.one-liner-paranoid",nr),n.policy);if(le)return xt(le)}if(cs(y,A))return null;r?.recordSegment({type:"recurse",reason:"interpreter",innerCommand:A,depth:t+1});let ie=n.analyzeNested(A,{effectiveCwd:E,envAssignments:h});if(ie&&ie.ruleId!=="raw-text.dangerous-command"&&(ie.reason!==Yt||cr(A)))return ie;if(rr(A,n.scanWork)){let le=O(S("interpreter.dangerous-command",Sn),n.policy);if(le)return r?.recordSegment({type:"dangerous-text",token:A,matched:!0,reason:Sn}),xt(le)}r=void 0}}if(y==="busybox"&&m.length>1)return BS(p.wrapperNormalizationBudget),r?.recordSegment({type:"busybox",subcommand:m[1]??"unknown"}),r?.recordSegment({type:"recurse",reason:"busybox",innerCommand:m.slice(1).join(" "),depth:t+1}),$o(f.slice(1),t,{...p,effectiveCwd:E,envAssignments:h});let k=O(FS(y,m),n.policy);if(k)return r?.recordSegment({type:"rule-check",rule:"analyzer/device.ts:analyzeDeviceCommandMatch",matched:!0,reason:k.reason}),xt(k);let z=r===p.trace?p:{...p,trace:r},M={words:f,head:y,cwd:R,originalCwd:w,envAssignments:h,allowTmpdirVar:P,dynamicArguments:u.words.some((A)=>A.provenance==="command-substitution"),depth:t,effectiveCwd:E,options:z,analyzeChildTokens:(A,Z)=>zn($o(j(A),t+1,{...z,commandView:void 0,effectiveCwd:Z,envAssignments:h}))??pe(A,z.policy.rules)},W=VS(y);if(y==="rm"||y==="xargs"||y==="parallel")r?.recordSegment({type:"tmpdir-check",tmpdirValue:h.has("TMPDIR")||n.environment.env.has("TMPDIR")?"<redacted>":null,isOverriddenToNonTemp:!P,allowTmpdirVar:P});let U=r&&y==="git"?qv(M.words,md(M)):void 0,ge=US(U?U.match:W?.(M)??null,n.policy);if(r)xz(M,ge,U?.relaxation??null);if(ge)return xt(ge);let Be=W!==void 0;if(!Be)if(!rs.has(y)){let A=r?[]:void 0;for(let Z=1;Z<m.length;Z++){let ie=m[Z];if(!ie)continue;A?.push(ie);let le=US(_z(M,m,Z),n.policy);if(le)return r?.recordSegment({type:"fallback-scan",tokensScanned:A??[],embeddedCommandFound:H(ie)}),xt(le)}r?.recordSegment({type:"fallback-scan",tokensScanned:A??[]})}else r?.recordSegment({type:"fallback-scan",tokensScanned:[]});else r?.recordSegment({type:"fallback-scan",tokensScanned:[]});if(t===0||!Be){let A=pe(m,n.policy.rules);if(r?.recordSegment({type:"custom-rules-check",rulesChecked:n.policy.rules.length>0,matched:!!A,reason:A?.reason}),A)return xt(A)}else r?.recordSegment({type:"custom-rules-check",rulesChecked:!1,matched:!1});return null}function vz(e,t,n,r,o,i){let s=eS(e);if(s.argvSource?.kind==="absent")return Le(o);if(s.argvSourceApplies&&s.argvSource){let c=aa(s.argvSource.value,n,t,r,o,i,!0);if(c)return c}if(!s.envSourceApplies||!s.envName)return null;let a=t.get(s.envName);if(!a)return null;return aa(a,n,t,r,o,i,!0)}function aa(e,t,n,r,o,i,s=!1){if(s&&/[$`*?[\]]/.test(e))return Le(o);let a=lo(e,t,r.environment.paths),c=a?r.literalHeredocFiles?.get(a):void 0;if(c===void 0)return s?Le(o):null;return Xe(r.derivedCommandWorkBudget,1),o?.recordSegment({type:"recurse",reason:"heredoc-file",innerCommand:c,depth:i+1}),r.analyzeNested(c,{effectiveCwd:t,envAssignments:n})}function Sz(e){let t=e[0];return e.length>=2&&(t==='"'||t==="'")&&e.at(-1)===t?e.slice(1,-1):e}function xz(e,t,n){let r={git:"git:analyzeGitMatch",rm:"analyzer/rm.ts:analyzeRmMatch",find:"analyzer/find.ts:analyzeFindMatch",xargs:"analyzer/xargs.ts:analyzeXargs",parallel:"analyzer/parallel.ts:analyzeParallel"}[e.head];if(!r)return;if(e.options.trace?.recordSegment({type:"rule-check",rule:r,matched:!!t||!!n,reason:t?.reason??n?.originalReason}),n)e.options.trace?.recordSegment({type:"worktree-relaxation",originalReason:n.originalReason,gitCwd:n.gitCwd})}function BS(e){if(e.iterations>=er)throw new Oe;e.iterations++}function xt(e){return{reason:e.reason,ruleId:e.id||void 0,intent:e.intent}}function Le(e){return e?.recordSegment({type:"error",message:HS}),xt(qS())}function qS(){return{id:"",reason:HS,intent:"stop_and_explain"}}function KS(e,t){return de.has(t)||e==="$SHELL"||e==="${SHELL}"||de.has(G(t))}function _z(e,t,n){let r=it(t.slice(n),{environment:e.options.environment,cwd:e.cwd,envAssignments:e.envAssignments,policy:e.options.policy});for(let o of r){let i=Cz(e,n,o);if(i)return i}return null}function Cz(e,t,n){let r=n.tokens[0];if(!r)return null;let o=H(r);if(KS(r,o)){Xe(e.options.derivedCommandWorkBudget,e.words.length-t);let c=n.tokens;if(qe(c))return null;let l=yt(c);if(!l){if(vt(j(c)).kind==="dynamic")return qS();return sa(e,n)}let u=e.options.analyzeNested(l,{effectiveCwd:n.wrapperCwd===void 0?e.effectiveCwd:n.wrapperCwd,envAssignments:n.envAssignments});return u?zn(u):sa(e,n)}let i=VS(o);if(!i||o==="xargs"||o==="parallel"){if(n.wrappedByTransparent&&e.options.policy.rules.length>0)Xe(e.options.derivedCommandWorkBudget,e.words.length-t);return sa(e,n)}Xe(e.options.derivedCommandWorkBudget,e.words.length-t);let s=[o,...n.tokens.slice(1)],a={...e,words:j(s),head:o,cwd:n.cwd,originalCwd:n.wrapperCwd===null?void 0:e.originalCwd,envAssignments:n.envAssignments,allowTmpdirVar:!uo(n.envAssignments,e.options.environment),effectiveCwd:n.wrapperCwd===void 0?e.effectiveCwd:n.wrapperCwd,options:o==="git"?{...e.options,worktreeMode:!1}:e.options};return i(a)??sa(e,n)}function sa(e,t){return t.wrappedByTransparent?pe(t.tokens,e.options.policy.rules):null}function US(e,t){return e?.id.startsWith("custom.")||e?.id==="raw-text.dangerous-command"?e:O(e,t)}var wz=/^\s*(?:\$\(\s*)?[({]*\s*(?:command\s+|builtin\s+)?(?:cd|pushd|popd)(?:\s|$)/,Rz=new Set(["cd","chdir","pop-location","popd","push-location","pushd","set-location","sl"]);function Ez(e,t){let n=XS(e,t);if(n.length===0)return!1;let r=n[JS(n)];if(r==="cd"||r==="pushd"||r==="popd")return!0;return wz.test(e.join(" "))}function YS(e,t,n,r){if(e.dialect==="powershell"){let a=Pz(e.words,r);if(a.kind==="none")return;if(!t||a.kind==="unknown")return null;return jS(Iz(a.target),t,n.paths)}let o=e.words.map(N);if(!Ez(o,n))return;if(!t)return null;let i=XS(o,n,t),s=JS(i);if(s===-1||i[s]!=="cd")return null;return jS(i[s+1],t,n.paths)}function jS(e,t,n){if(!e||e==="-"||e.includes("$")||e.includes("`"))return null;try{return Oz(Kt(t,e,n),t,n)?t:null}catch{return null}}function Pz(e,t){let n=kz(e[0])?1:0,r=e[n];if(!Az(r,n===1))return{kind:"none"};let o=r.text.toLowerCase(),i=o.split(/[\\/]/).pop()??o;if(!Rz.has(i))return{kind:"none"};if(o!==i||i==="pop-location"||i==="popd")return{kind:"unknown"};return Tz(e.slice(n+1),t)}function kz(e){return e?.provenance==="literal"&&!e.quoted&&e.raw===e.text&&(e.text==="&"||e.text===".")}function Az(e,t){return e?.provenance==="literal"&&(t||!e.quoted&&e.raw===e.text)}function Tz(e,t){let n;for(let r of e){if(r.provenance!=="literal"||n!==void 0)return{kind:"unknown"};n=r.text}if(n!==void 0)return{kind:"target",target:n};return t===void 0?{kind:"unknown"}:{kind:"target",target:t}}function Iz(e){return e.includes("::")?void 0:e.replaceAll("\\","/")}function JS(e){let t=0;if(e[0]==="builtin"&&e.length>1)t=1;if(e[t]!=="time")return t;let n=t+1;while(e[n]?.startsWith("-"))n++;return n}function XS(e,t,n){let r=zz(e);return ir([...r],t,n)}function Oz(e,t,n){let r=n.realpath(e),o=n.realpath(t);if(r===null||o===null)return ia(e)===ia(t);return ia(r)===ia(o)}function zz(e){let t=0;while(t<e.length){let n=e[t];if(n==="{"||n==="("||n==="$(")t++;else break}return e.slice(t)}var pd="TMPDIR",gd="IFS",QS=/^([A-Za-z_][A-Za-z0-9_]*)\+=/,ex=/^[A-Za-z_][A-Za-z0-9_]*$/,tx=new Set(["export","typeset","declare","readonly"]),Nz=new Set(["builtin","command","time"]);function nx(e,t){return{env:e,effectiveEnvAssignments:Wz(e,t),shellAssignments:new Map}}function rx(e){return{env:e.env,effectiveEnvAssignments:e.effectiveEnvAssignments?new Map(e.effectiveEnvAssignments):void 0,shellAssignments:new Map(e.shellAssignments)}}function hd(e,t){let n=ix(e,t);n.assignments.filter((s)=>s.persists).forEach((s)=>{t.shellAssignments.set(s.name,s.value),yd(t,s)});let r=n.commandIndex;if(r!==-1&&tx.has(e[r]??""))e.filter((s)=>ex.test(s)&&fd(s)).forEach((s)=>{Fz(t,s)});let o=r===-1?-1:sx(e,r);if(o===-1||e[o]!=="unset")return;let i=Zz(e,o);if(i===null)return;e.slice(i).forEach((s)=>{Gz(t,s)})}function ox(e,t){let n=ix(e,t).assignments;if(n.length===0)return t.effectiveEnvAssignments;let r=new Map(t.effectiveEnvAssignments??[]);return n.forEach((o)=>{r.set(o.name,o.value)}),r}function ix(e,t){let n=e.findIndex((s)=>!Dz(s)),r=n!==-1&&tx.has(e[sx(e,n)]??""),o=Lz(t);return{assignments:e.flatMap((s,a)=>{let c=$z(s,o,t.env);if(!c)return[];if(n!==-1&&a>n&&!r&&!Bl(c.name))return[];return o.set(c.name,c.value),[{...c,persists:n===-1||r}]}),commandIndex:n}}function sx(e,t){let n=t;while(Nz.has(e[n]??"")){n+=1;while(e[n]?.startsWith("-")){if(/^-p*[vV][pvV]*$/.test(e[n]??""))return t;n+=1}}return n}function Dz(e){return He(e)!==null||QS.test(e)}function $z(e,t,n){return He(e)??Mz(e,t,n)}function Mz(e,t,n){let r=Hi(e,n,t);if(r)return r;let o=e.match(QS)?.[1];if(!o)return null;let i=e.indexOf("=");return{name:o,value:`${t.has(o)?t.get(o):n.get(o)??""}${e.slice(i+1)}`}}function fd(e){return e===pd||e===gd||Ul(e)}function Lz(e){return new Map([...e.effectiveEnvAssignments??[],...e.shellAssignments])}function Wz(e,t){let n=[...Ui,pd,gd].map((r)=>{let o=e.get(r);return o===void 0?null:[r,o]}).filter((r)=>r!==null);if(n.length===0)return t;return new Map([...n,...t??[]])}function yd(e,t){let n=new Map(e.effectiveEnvAssignments??[]);n.set(t.name,t.value),e.effectiveEnvAssignments=n}function Fz(e,t){yd(e,{name:t,value:e.shellAssignments.get(t)??e.effectiveEnvAssignments?.get(t)??e.env.get(t)??""})}function Gz(e,t){if(!fd(t)&&!ex.test(t))return;if(e.shellAssignments.set(t,""),!fd(t)||t===pd||t===gd||no(t)){yd(e,{name:t,value:""});return}if(!e.effectiveEnvAssignments?.has(t))return;let n=new Map(e.effectiveEnvAssignments);n.delete(t),e.effectiveEnvAssignments=n.size===0?void 0:n}function Zz(e,t){let n=t+1;while(n<e.length){let r=e[n];if(!r)return null;if(r==="--")return n+1;if(r==="-v"){n++;continue}if(r.startsWith("-"))return null;return n}return n}var Bz="Unquoted heredoc input is not supported safely. Quote the delimiter or ask the user to verify.",Nn="This heredoc form or stdin consumer is not supported safely. Use a quoted heredoc with a supported consumer (cat, tee, git apply, git commit, gh pr create, gh issue create), or ask the user to verify.",Uz=64;function _d(e,t,n,r){let o=n.derivedCommandWorkBudget===void 0,i=n.parallelBudget===void 0;try{return jz(e,t,{...n,derivedCommandWorkBudget:n.derivedCommandWorkBudget??ts(),parallelBudget:n.parallelBudget??Xy()},r)}catch(s){let a=s instanceof Oe&&o?By:s instanceof ds&&i?Jy:void 0;if(!a)throw s;if(n.trace?.currentSegmentIndex!==void 0)n.trace.recordSegment({type:"error",message:a});else n.trace?.recordGlobal({type:"error",message:a});return{reason:a,segment:e,intent:"stop_and_explain"}}}function jz(e,t,n,r){if(t>=ns)return n.trace?.recordSegment({type:"error",message:Nt}),{reason:Nt,segment:e,intent:"stop_and_explain"};let o=r??n.factStore?.getCommandProgram(e,n.shell??"auto")??tt(e,n.shell);if(o.status==="limited")return n.trace?.recordSegment({type:"error",message:Nt}),{reason:Nt,segment:e,intent:"stop_and_explain"};if(o.status==="invalid"){let l=o.issues.find((u)=>u.code.includes("heredoc"));if(l){if(!n.strict)return xd(e,n);let u=`Unsupported heredoc syntax: ${l.message}`;return n.trace?.recordGlobal({type:"error",message:u}),{reason:u,segment:e,intent:"stop_and_explain"}}return mx(e,n),{reason:Yt,segment:e,intent:"stop_and_explain"}}if(n.strict&&o.status==="partial")return mx(e,n),{reason:Yt,segment:e,intent:"stop_and_explain"};if(o.issues.some((l)=>l.code.includes("quote"))&&!n.analyzePartialProgram)return xd(e,n);let s=n.cwd,a=n.effectiveCwd!==void 0?n.effectiveCwd:n.cwd,c=nx(n.environment.env,n.envAssignments);return ua(o,t,{...n,rootProgram:o},s,[{effectiveCwd:a,shellGitContextState:c,literalHeredocFiles:new Map(n.literalHeredocFiles),functionDefinitions:new Map(n.functionDefinitions)}]).result}function ua(e,t,n,r,o){let i=[...o],s,a;for(let[c,l]of e.nodes.entries()){if(l.kind==="connector"){a=l.operator;continue}let u=e.nodes[c+1],d=u?.kind==="connector"?u.operator:void 0,f=Hz(e,c,l,a,d),m=a==="&&"||a==="||",p=m?s:void 0,h=a==="&&"?p?.success??i:a==="||"?p?.failure??i:i,b=a==="||"?p?.success??[]:[],y=a==="&&"?p?.failure??[]:[],R=m||hr(d);if(l.kind==="function"){let k=h.flatMap((M)=>{let W=Mo(M);return W.functionDefinitions.set(l.name,l.body),bd(M,[W],f,d==="&",hr(d))}),z=vd(k,[],b,y,a,d);i=z.states,s=z.conditionalStates,a=void 0;continue}if(l.kind==="group"){let k=[],z=[];for(let W of h){let U=ua(l.body,t,n,r,[Mo(W)]);if(U.result)return U;if(k.push(...bd(W,U.states,f,d==="&",hr(d))),R)z.push(W,...f?U.states.map((ge)=>ca(W,ge)):U.states)}let M=vd(k,z,b,y,a,d);i=M.states,s=M.conditionalStates,a=void 0;continue}if(l.kind!=="command")continue;let w=n.trace?.flattenNested?n.trace.currentSegmentIndex:n.trace?.allocateSegment(),E=e.nodes[c-2],P=da(a)&&E?.kind==="command"?oS(E)??qz(E):void 0,_=[],v=[];for(let k of h){let z=Kz(l,t,n,r,[Mo(k)]);if(z.result)return{result:z.result,states:i};let M=e.dialect==="powershell"?z.states:z.states.map((W)=>ca(k,W));for(let W of M){let U=Mo(W),ge=Xz(l,t,n.trace?{...n,trace:fx(n.trace,w)}:n,r,U,da(a),P);if(ge)return{result:ge,states:i};let Be=dN(l,U.functionDefinitions);if(Be)Xe(n.derivedCommandWorkBudget,ma(Be));let A=Be?t+1>=ns?Sd(l.displayText,n,[U]):ua(Be,t+1,n,r,[U]):{result:null,states:[U]};if(A.result)return A;if(_.push(...bd(k,A.states,f,d==="&",hr(d))),R)v.push(k),v.push(...A.states.map((Z)=>f?ca(k,Z):Z))}}let T=vd(_,v,b,y,a,d);i=T.states,s=T.conditionalStates,a=void 0}return{result:null,states:i}}function Hz(e,t,n,r,o){if(n.kind==="group"&&n.style==="subshell")return!0;if(e.dialect==="posix"&&(da(r)||da(o)))return!0;if(o==="&")return!0;return e.dialect==="powershell"&&n.kind==="group"&&n.style==="brace"&&Vz(e,t)}function bd(e,t,n,r,o){let i=n?t.map((a)=>ca(e,a)):[...t],s=o?i.flatMap((a)=>Lo(e.literalHeredocFiles,a.literalHeredocFiles)?[a]:[{...a,literalHeredocFiles:new Map(e.literalHeredocFiles)},a]):i;return r?[e,...s]:s}function ca(e,t){return{...e,literalHeredocFiles:new Map(t.literalHeredocFiles)}}function Vz(e,t){let n=[...e.nodes.slice(0,t)].reverse().find((o)=>o.kind==="command"||o.kind==="connector");if(!n||n.kind!=="command")return!0;let r=n.words[0]?.text.toLowerCase();if(r==="&"||r===".")return!1;if(r==="write-output"||r==="function"||r==="start-job")return!0;if(Yz(n))return!0;return n.source.replaceAll(/\s/g,"").toLowerCase()==="if($false)"}function da(e){return e==="|"||e==="|&"}function qz(e){if(e?.dialect!=="powershell")return;if(e.words.length===1&&e.words[0]?.quoted&&e.words[0].provenance==="literal")return e.words[0].text;if(e.words[0]?.text.toLowerCase()==="write-output"&&e.words.length===2&&e.words[1]?.provenance==="literal")return e.words[1].text;return}function hr(e){return e==="&&"||e==="||"}function vd(e,t,n,r,o,i){let s={success:la([...n,...e]),failure:la([...r,...t])},a=hr(i)?s:void 0;return{states:hr(o)||a?la([...s.success,...s.failure]):s.success,conditionalStates:a}}function fx(e,t,n=e.flattenNested){return{currentSegmentIndex:t,flattenNested:n,allocateSegment:e.allocateSegment,getNextSegmentIndex:e.getNextSegmentIndex,recordGlobal:e.recordGlobal,recordSegment:(r,o=t)=>e.recordSegment(r,o)}}function Kz(e,t,n,r,o){let i=e.nested.map((s)=>({program:s,depth:t}));if(e.dialect==="powershell"){let s=Jz(e);if(s){if(t+1>=ns)return Sd(s,n,o);let a=tt(s,"powershell");if(a.status==="limited")return Sd(s,n,o);if(a.status!=="complete")return ax(i,n,r,o);Xe(n.derivedCommandWorkBudget,ma(a)),i.push({program:a,depth:t+1})}}return ax(i,n,r,o)}function Yz(e){let t=e.words[0];return t?.provenance==="variable"&&e.words.at(-1)?.text==="="?t.text.toLowerCase():void 0}function ax(e,t,n,r){let o=[...r];for(let i of e){let s=[];for(let a of o){let c=ua(i.program,i.depth,t,n,[Mo(a)]);if(c.result)return c;s.push(...c.states)}o=la(s)}return{result:null,states:o}}function Jz(e){let t=e.words[0]?.provenance==="literal"&&!e.words[0].quoted&&e.words[0].raw===e.words[0].text&&(e.words[0].text==="&"||e.words[0].text==="."),n=t?1:0,r=e.words[n];if(r?.provenance!=="literal"||!t&&(r.quoted||r.raw!==r.text)||!["iex","invoke-expression"].includes(r.text.toLowerCase()))return;let o=e.words.slice(n+1),i=o[0]&&!o[0].quoted&&o[0].raw===o[0].text&&["-c","-command"].includes(o[0].text.toLowerCase())?1:0,s=o[i];return o.length===i+1&&s?.quoted&&s.provenance==="literal"?s.text:void 0}function ma(e){return e.nodes.reduce((t,n)=>t+(n.kind==="command"?n.words.length+n.nested.reduce((r,o)=>r+ma(o),0):n.kind==="group"||n.kind==="function"?ma(n.body):0),0)}function Sd(e,t,n){return t.trace?.recordSegment({type:"error",message:Nt}),{result:{reason:Nt,segment:e,intent:"stop_and_explain"},states:[...n]}}function Xz(e,t,n,r,o,i,s){let a=iN(e);if(a&&n.strict)return n.trace?.recordSegment({type:"error",message:a}),{reason:a,segment:e.source,intent:"stop_and_explain"};px(e,o,"before-consumer",n.environment.paths);let c=Jn(e.dialect,e.words).map(N),l=e.displayText,u=ox(c,o.shellGitContextState);if(e.dialect==="powershell"){let m=O(wv(e,i,fN(n,o.effectiveCwd)),n.policy);if(n.trace?.recordSegment({type:"rule-check",rule:"analyzer/powershell/remove-item.ts:analyzePowerShellCommandViewMatch",matched:!!m,reason:m?.reason}),m)return mN(l,m)}if(c.length===1&&c[0]?.includes(" ")&&!go(e.dialect,e.words)){let m=O(Mt(c[0],n.scanWork),n.policy),p=m!==null&&!n.strict&&Fy(e,n.rootProgram,n.scanWork);if(m&&!p)return n.trace?.recordSegment({type:"dangerous-text",token:c[0],matched:!0,reason:m.reason}),{reason:m.reason,segment:l,ruleId:m.id,intent:m.intent};n.trace?.recordSegment({type:"dangerous-text",token:c[0],matched:!1});let h=cx(e,a,o,u,s,n);if(h)return h;return hd(c,o.shellGitContextState),null}let d=$o(e.words,t,{...n,commandView:e,cwd:r,effectiveCwd:o.effectiveCwd,envAssignments:u,literalHeredocFiles:o.literalHeredocFiles,functionDefinitions:o.functionDefinitions,hasPipelineInput:i,literalShellInput:s,analyzeNested:(m,p)=>{let h=p&&Object.hasOwn(p,"effectiveCwd")?p.effectiveCwd:o.effectiveCwd,b=_d(m,t+1,{...n,derivedCommandWorkBudget:n.derivedCommandWorkBudget,effectiveCwd:h,envAssignments:p?.envAssignments??u,literalHeredocFiles:o.literalHeredocFiles,functionDefinitions:p?.functionDefinitions,worktreeMode:p?.worktreeMode??n.worktreeMode,trace:n.trace?fx(n.trace,n.trace.currentSegmentIndex,!0):void 0});return b?{reason:b.reason,ruleId:b.ruleId,intent:b.intent}:null}});if(d)return{...d,segment:l};let f=cx(e,a,o,u,s,n);if(f)return f;return hd(c,o.shellGitContextState),null}function cx(e,t,n,r,o,i){let s=sN(e,t,n,r??new Map,i);if(s)return s;return px(e,n,"after-consumer",i.environment.paths),n.literalHeredocFiles.clear(),tN(e,t,n,i.environment.paths),lN(e,n,o,i.environment,i.trace),null}var Qz=new Set([">>","<>"]);function px(e,t,n,r){for(let i of e.redirections){if(!(n==="before-consumer"?eN(i):Qz.has(i.operator)))continue;lx(i.target,t,r)}if(n!=="before-consumer"||!We(e.words[0],"tee"))return;let o=gx(e.words.slice(1));if(!o)return;for(let i of o.operands)lx(i,t,r)}function eN(e){if(e.operator===">"||e.operator===">|")return!0;return e.operator===">&"&&e.fd===void 0&&e.target?.provenance==="literal"&&!/^(?:[0-9]+|-)$/.test(e.target.text)}function lx(e,t,n){let r=e?.provenance==="literal"?lo(e.text,t.effectiveCwd,n):void 0;if(!r)return;t.literalHeredocFiles.delete(r)}function tN(e,t,n,r){if(t)return;let o=e.redirections.find((i)=>i.operator==="<<"||i.operator==="<<-")?.heredoc;if(!o||!fa(o))return;for(let i of nN(e)){let s=lo(i.text,n.effectiveCwd,r);if(!s||!Hy(s))continue;if(!n.literalHeredocFiles.has(s)&&n.literalHeredocFiles.size>=jy)throw new Oe;n.literalHeredocFiles.set(s,o.body)}}function nN(e){let t=oN(e.redirections)?.target,n=ux(t)?[t]:[];if(We(e.words[0],"cat"))return rN(e.words)?n:[];if(!We(e.words[0],"tee"))return[];let r=gx(e.words.slice(1));if(!r||r.append||r.hasUnsupportedOptions||!r.operands.every(ux))return[];return[...r.operands,...n]}function rN(e){let t=!1;for(let n of e.slice(1)){if(t||n.provenance!=="literal")return!1;if(n.text==="--"){t=!0;continue}if(!/^-u+$/.test(n.text))return!1}return!0}function oN(e){let t=e.findLast((n)=>(n.fd??([">",">|",">>",">&"].includes(n.operator)?1:0))===1);return t?.operator===">"||t?.operator===">|"?t:void 0}function gx(e){let t=[],n=!0,r=!1,o=!1;for(let i of e){if(i.provenance!=="literal")return;if(n&&We(i,"--")){n=!1;continue}if(n&&!i.quoted&&i.raw===i.text&&/^-[^-]/.test(i.text)){r||=i.text.slice(1).includes("a"),o||=[...i.text.slice(1)].some((s)=>s!=="a"&&s!=="i");continue}if(n&&!i.quoted&&i.raw===i.text&&i.text.startsWith("--")){r||=i.text==="--append",o||=i.text!=="--append"&&i.text!=="--ignore-interrupts";continue}t.push(i)}return{operands:t,append:r,hasUnsupportedOptions:o}}function ux(e){if(!e||e.provenance!=="literal"||e.text.length===0)return!1;if(e.quoted||e.raw!==e.text)return!0;return!e.raw.startsWith("~")&&!/[{}]/.test(e.raw)}function We(e,t){return e?.text===t&&e.raw===t&&e.provenance==="literal"&&!e.quoted}function fa(e){return e.quotedDelimiter||!/[$`\\]/.test(e.body)}function iN(e){let t=e.redirections.filter((s)=>s.operator==="<<"||s.operator==="<<-");if(t.length===0)return;if(t.length!==1)return Nn;let n=t[0];if(!n?.heredoc)return Nn;if(!fa(n.heredoc))return Bz;if(n.fd!==void 0&&n.fd!==0)return Nn;if(e.redirections.some((s)=>s!==n&&["<","<<","<<-","<<<","<&","<>"].includes(s.operator)))return Nn;let r=e.redirections.some((s)=>s!==n&&dx(s.target));if(We(e.words[0],"cat"))return r?Nn:void 0;if(We(e.words[0],"tee"))return r||e.words.slice(1).some(dx)?Nn:void 0;let o=e.words[0],i=e.words[1];if(We(o,"git")&&(We(i,"apply")||We(i,"commit")))return;if(We(o,"gh")&&(We(i,"pr")||We(i,"issue"))&&We(e.words[2],"create"))return;return Nn}function dx(e){return e?.parts.some((t)=>t.provenance==="command-substitution"&&t.raw.startsWith(">("))??!1}function sN(e,t,n,r,o){if(!t)return null;let i=e.redirections.filter((l)=>l.operator==="<<"||l.operator==="<<-"),s=i.flatMap((l)=>l.heredoc?[l.heredoc.body]:[]);if(cN(e,i,n,r,o))return null;let a=aN(e,i,o);if(a!==void 0)return a?{reason:a.reason,segment:e.displayText,ruleId:a.id,intent:a.intent}:null;let c=xd(s.length===i.length?s.join(`
|
|
61
|
-
`):e.source,o);return c?{...c,segment:e.displayText}:null}function aN(e,t,n){let r=t.length===1?t[0]:void 0;if(!r?.heredoc||!fa(r.heredoc)||r.fd!==void 0&&r.fd!==0)return;let o=e.words[0];if(o?.provenance!=="literal"||!ze(o.text))return;if(!e.words.slice(1).every((l)=>l.provenance==="literal"&&l.text.startsWith("-")))return;let s=r.heredoc.body,a=ue(n.policy,"interpreter.one-liner-paranoid",!!n.paranoidInterpreters);if(n.trace?.recordSegment({type:"interpreter",interpreter:o.text,codeArg:s,paranoidBlocked:a}),a){let l=O(S("interpreter.one-liner-paranoid",nr),n.policy);if(l)return l}if(!rr(s,n.scanWork))return null;let c=O(S("interpreter.dangerous-command",Sn),n.policy);if(!c)return null;return n.trace?.recordSegment({type:"dangerous-text",token:s,matched:!0,reason:c.reason}),c}function cN(e,t,n,r,o){let i=t.length===1?t[0]:void 0;if(!i?.heredoc||!fa(i.heredoc)||i.fd!==void 0&&i.fd!==0)return!1;let s=xn(e.words,o.environment,n.effectiveCwd,r),a=s.words.map(N),c=H(a[0]??"");if((s.envSplitValues?.length??0)>0||!de.has(c)&&!de.has(G(c)))return!1;return qe(a)}function lN(e,t,n,r,o){let i=YS(e,t.effectiveCwd,r,n);if(i===null)o?.recordSegment({type:"cwd-change",segment:e.words.map(N).join(" "),effectiveCwdNowUnknown:!0});if(i!==void 0)t.effectiveCwd=i}function Mo(e){return{effectiveCwd:e.effectiveCwd,shellGitContextState:rx(e.shellGitContextState),literalHeredocFiles:new Map(e.literalHeredocFiles),functionDefinitions:new Map(e.functionDefinitions)}}function la(e){let t=[];for(let n of e){if(!t.some((r)=>uN(r,n)))t.push(n);if(t.length>Uz)throw new Oe}return t}function uN(e,t){return e.effectiveCwd===t.effectiveCwd&&Lo(e.literalHeredocFiles,t.literalHeredocFiles)&&Lo(e.functionDefinitions,t.functionDefinitions)&&Lo(e.shellGitContextState.effectiveEnvAssignments,t.shellGitContextState.effectiveEnvAssignments)&&Lo(e.shellGitContextState.shellAssignments,t.shellGitContextState.shellAssignments)}function Lo(e,t){if(e===t)return!0;if(!e||!t||e.size!==t.size)return!1;return[...e].every(([n,r])=>t.get(n)===r&&t.has(n))}function dN(e,t){let n=Ts(e);return n===void 0?void 0:t.get(n)}function mN(e,t){if(!t)return null;return{reason:t.reason,segment:e,ruleId:t.id,intent:t.intent}}function fN(e,t=e.effectiveCwd){let n=t===null;return{environment:e.environment,cwd:n?void 0:t??e.cwd,originalCwd:n?void 0:e.cwd,strict:e.strict,paranoid:e.paranoidRm,allowTmpdirVar:e.allowTmpdirVar,protectedGitMetadata:e.protectedGitMetadata,policy:e.policy}}function xd(e,t){let n=O(Mt(e,t.scanWork),t.policy),r=t.trace?.currentSegmentIndex??t.trace?.allocateSegment(),o={type:"dangerous-text",token:e,matched:!!n,reason:n?.reason};if(t.trace?.recordSegment(o,r),!n&&/^(?:cd|pushd)\s/.test(e))t.trace?.recordSegment({type:"cwd-change",segment:e,effectiveCwdNowUnknown:!0},r);return n?{reason:n.reason,segment:e,ruleId:n.id,intent:n.intent}:null}function mx(e,t){let n={type:"strict-unparseable",rawCommand:e,reason:Yt};if(t.trace?.currentSegmentIndex===void 0)t.trace?.recordGlobal(n);else t.trace.recordSegment(n)}var me={level:{name:"CC_SAFETY_NET_LEVEL"},strict:{name:"CC_SAFETY_NET_STRICT",legacyName:"SAFETY_NET_STRICT"},paranoid:{name:"CC_SAFETY_NET_PARANOID",legacyName:"SAFETY_NET_PARANOID"},paranoidRm:{name:"CC_SAFETY_NET_PARANOID_RM",legacyName:"SAFETY_NET_PARANOID_RM"},paranoidInterpreters:{name:"CC_SAFETY_NET_PARANOID_INTERPRETERS",legacyName:"SAFETY_NET_PARANOID_INTERPRETERS"},worktree:{name:"CC_SAFETY_NET_WORKTREE",legacyName:"SAFETY_NET_WORKTREE"},debug:{name:"CC_SAFETY_NET_DEBUG"},auditScope:{name:"CC_SAFETY_NET_AUDIT_SCOPE"}},pa=["standard","strict","paranoid"];function pN(e){return{failClosed:e==="strict"||e==="paranoid",paranoidRm:e==="paranoid",paranoidInterpreters:e==="paranoid"}}function gN(e,t){if(!t)return e;return pa.indexOf(t)>pa.indexOf(e)?t:e}function hN(){let e=Pd(me.level);if(e===void 0||e==="")return;if(pa.includes(e))return e;console.error(`CC Safety Net: ignored invalid ${me.level.name}=${JSON.stringify(e.slice(0,40))}. Use ${pa.join(", ")}.`);return}function yN(e){if(e===void 0||e==="all")return"all";if(e==="blocked")return"blocked";return"invalid"}function wd(){return yN(Pd(me.auditScope))==="all"}function Rd(e){if(e.failClosed&&e.paranoidRm&&e.paranoidInterpreters)return"paranoid";if(e.failClosed&&!e.paranoidRm&&!e.paranoidInterpreters)return"strict";if(!e.failClosed&&!e.paranoidRm&&!e.paranoidInterpreters)return"standard";return"custom"}function Ed(e={}){let t=e.safety?.level??"standard",n=hN(),r=gN(t,n),o=pN(r),i={failClosed:r===t?"preset":"environment",paranoidRm:r===t?"preset":"environment",paranoidInterpreters:r===t?"preset":"environment"},s={failClosed:[`policy safety.level=${t}`],paranoidRm:[`policy safety.level=${t}`],paranoidInterpreters:[`policy safety.level=${t}`]};if(r!==t)s.failClosed.push(`env ${me.level.name}=${n}`),s.paranoidRm.push(`env ${me.level.name}=${n}`),s.paranoidInterpreters.push(`env ${me.level.name}=${n}`);if(e.safety?.overrides?.failClosed!==void 0)o.failClosed=e.safety.overrides.failClosed,i.failClosed="capability_override",s.failClosed.push("policy safety.overrides.fail_closed");if(e.safety?.overrides?.paranoidRm!==void 0)o.paranoidRm=e.safety.overrides.paranoidRm,i.paranoidRm="capability_override",s.paranoidRm.push("policy safety.overrides.paranoid_rm");if(e.safety?.overrides?.paranoidInterpreters!==void 0)o.paranoidInterpreters=e.safety.overrides.paranoidInterpreters,i.paranoidInterpreters="capability_override",s.paranoidInterpreters.push("policy safety.overrides.paranoid_interpreters");if(on(me.strict))o.failClosed=!0,i.failClosed="environment",s.failClosed.push(`env ${me.strict.name}`);if(on(me.paranoid))o.paranoidRm=!0,o.paranoidInterpreters=!0,i.paranoidRm="environment",i.paranoidInterpreters="environment",s.paranoidRm.push(`env ${me.paranoid.name}`),s.paranoidInterpreters.push(`env ${me.paranoid.name}`);if(on(me.paranoidRm))o.paranoidRm=!0,i.paranoidRm="environment",s.paranoidRm.push(`env ${me.paranoidRm.name}`);if(on(me.paranoidInterpreters))o.paranoidInterpreters=!0,i.paranoidInterpreters="environment",s.paranoidInterpreters.push(`env ${me.paranoidInterpreters.name}`);let a=!!e.worktreeMode||on(me.worktree);return{strict:o.failClosed,paranoidRm:o.paranoidRm,paranoidInterpreters:o.paranoidInterpreters,worktreeMode:a,effectiveLevel:Rd(o),capabilities:{fail_closed:{enabled:o.failClosed,source:i.failClosed,sources:s.failClosed},paranoid_rm:{enabled:o.paranoidRm,source:i.paranoidRm,sources:s.paranoidRm},paranoid_interpreters:{enabled:o.paranoidInterpreters,source:i.paranoidInterpreters,sources:s.paranoidInterpreters}}}}function on(e){let t=typeof e==="string"?Cd(e):Pd(e);return t==="1"||t?.toLowerCase()==="true"}function Cd(e){return Object.hasOwn(process.env,e)?process.env[e]:void 0}function Pd(e){let t=Cd(e.name);if(t!==void 0)return t;if(e.legacyName)return Cd(e.legacyName);return}function hx(e){let t=e.effectiveCapabilities,n=e.strict??t.fail_closed.enabled,r=e.paranoidRm??t.paranoid_rm.enabled,o=e.paranoidInterpreters??t.paranoid_interpreters.enabled,i={fail_closed:kd(t.fail_closed,e.strict,"strict"),paranoid_rm:kd(t.paranoid_rm,e.paranoidRm,"paranoidRm"),paranoid_interpreters:kd(t.paranoid_interpreters,e.paranoidInterpreters,"paranoidInterpreters")};return{policy:Ly(e.policySnapshot.policy,i),effectiveCapabilities:i,effectiveLevel:Rd({failClosed:n,paranoidRm:r,paranoidInterpreters:o}),strict:n,paranoidRm:r,paranoidInterpreters:o,worktreeMode:e.worktreeMode??!1}}function kd(e,t,n){if(t===void 0||t===e.enabled)return e;return{enabled:t,source:"capability_override",sources:[...e.sources,`analysis options.${n}`]}}function yx(e,t,n,r){let o=_d(e,0,{...t,...hx(t),factStore:r},n);if(!o)return null;return{kind:"deny",reason:o.reason,intent:o.intent??"manual_only",...o.ruleId?{ruleId:o.ruleId}:{},evidence:[{kind:"command",command:e,segment:o.segment}]}}import{basename as L$,dirname as _h}from"path";function Wo(e,t,n,r,o){if(n.kind!=="command")return{toolName:e,input:t,route:n,context:r};return{toolName:e,input:t,route:n,context:r,command:o}}import{chmodSync as VU,existsSync as R$,mkdirSync as qU,readFileSync as E$}from"fs";import{dirname as P$,join as k$}from"path";import{createRequire as m$}from"module";var mh={};fn(mh,{$brand:()=>ha,$input:()=>Va,$output:()=>Ha,NEVER:()=>ga,TimePrecision:()=>pc,ZodAny:()=>Eg,ZodArray:()=>Tg,ZodBase64:()=>Jc,ZodBase64URL:()=>Xc,ZodBigInt:()=>Kr,ZodBigIntFormat:()=>tl,ZodBoolean:()=>qr,ZodCIDRv4:()=>Kc,ZodCIDRv6:()=>Yc,ZodCUID:()=>Zc,ZodCUID2:()=>Bc,ZodCatch:()=>Xg,ZodCodec:()=>ll,ZodCustom:()=>Si,ZodCustomStringFormat:()=>Hr,ZodDate:()=>gi,ZodDefault:()=>Hg,ZodDiscriminatedUnion:()=>Og,ZodE164:()=>Qc,ZodEmail:()=>Wc,ZodEmoji:()=>Fc,ZodEnum:()=>Ur,ZodError:()=>Jx,ZodExactOptional:()=>Bg,ZodFile:()=>Gg,ZodFirstPartyTypeKind:()=>ul,ZodFunction:()=>ah,ZodGUID:()=>ui,ZodIPv4:()=>Vc,ZodIPv6:()=>qc,ZodISODate:()=>si,ZodISODateTime:()=>ii,ZodISODuration:()=>ci,ZodISOTime:()=>ai,ZodIntersection:()=>zg,ZodIssueCode:()=>mC,ZodJWT:()=>el,ZodKSUID:()=>Hc,ZodLazy:()=>oh,ZodLiteral:()=>Fg,ZodMAC:()=>vg,ZodMap:()=>Lg,ZodNaN:()=>eh,ZodNanoID:()=>Gc,ZodNever:()=>kg,ZodNonOptional:()=>al,ZodNull:()=>wg,ZodNullable:()=>jg,ZodNumber:()=>Vr,ZodNumberFormat:()=>Bn,ZodObject:()=>yi,ZodOptional:()=>sl,ZodPipe:()=>cl,ZodPrefault:()=>qg,ZodPromise:()=>sh,ZodReadonly:()=>th,ZodRealError:()=>_e,ZodRecord:()=>vi,ZodSet:()=>Wg,ZodString:()=>jr,ZodStringFormat:()=>K,ZodSuccess:()=>Jg,ZodSymbol:()=>_g,ZodTemplateLiteral:()=>rh,ZodTransform:()=>Zg,ZodTuple:()=>Dg,ZodType:()=>L,ZodULID:()=>Uc,ZodURL:()=>pi,ZodUUID:()=>Pt,ZodUndefined:()=>Cg,ZodUnion:()=>bi,ZodUnknown:()=>Pg,ZodVoid:()=>Ag,ZodXID:()=>jc,ZodXor:()=>Ig,_ZodString:()=>Lc,_default:()=>Vg,_function:()=>rC,any:()=>D_,array:()=>hi,base64:()=>b_,base64url:()=>v_,bigint:()=>T_,boolean:()=>xg,catch:()=>Qg,check:()=>oC,cidrv4:()=>h_,cidrv6:()=>y_,clone:()=>he,codec:()=>eC,coerce:()=>dl,config:()=>se,core:()=>Et,cuid:()=>c_,cuid2:()=>l_,custom:()=>iC,date:()=>M_,decode:()=>Ac,decodeAsync:()=>Ic,default:()=>a$,describe:()=>sC,discriminatedUnion:()=>B_,e164:()=>S_,email:()=>Xx,emoji:()=>s_,encode:()=>kc,encodeAsync:()=>Tc,endsWith:()=>Or,enum:()=>ol,exactOptional:()=>Ug,file:()=>Y_,flattenError:()=>Sr,float32:()=>E_,float64:()=>P_,formatError:()=>xr,fromJSONSchema:()=>dh,function:()=>rC,getErrorMap:()=>pC,globalRegistry:()=>Ae,gt:()=>wt,gte:()=>xe,guid:()=>Qx,hash:()=>R_,hex:()=>w_,hostname:()=>C_,httpUrl:()=>i_,includes:()=>Tr,instanceof:()=>cC,int:()=>Mc,int32:()=>k_,int64:()=>I_,intersection:()=>Ng,ipv4:()=>f_,ipv6:()=>g_,iso:()=>li,json:()=>uC,jwt:()=>x_,keyof:()=>L_,ksuid:()=>m_,lazy:()=>ih,length:()=>Gn,literal:()=>K_,locales:()=>ei,looseObject:()=>G_,looseRecord:()=>j_,lowercase:()=>kr,lt:()=>Ct,lte:()=>Ze,mac:()=>p_,map:()=>H_,maxLength:()=>Fn,maxSize:()=>dn,meta:()=>aC,mime:()=>zr,minLength:()=>Zt,minSize:()=>Rt,multipleOf:()=>un,nan:()=>Q_,nanoid:()=>a_,nativeEnum:()=>q_,negative:()=>hc,never:()=>nl,nonnegative:()=>bc,nonoptional:()=>Yg,nonpositive:()=>yc,normalize:()=>Nr,null:()=>Rg,nullable:()=>mi,nullish:()=>J_,number:()=>Sg,object:()=>W_,optional:()=>di,overwrite:()=>ct,parse:()=>wc,parseAsync:()=>Rc,partialRecord:()=>U_,pipe:()=>fi,positive:()=>gc,prefault:()=>Kg,preprocess:()=>dC,prettifyError:()=>_a,promise:()=>nC,property:()=>vc,readonly:()=>nh,record:()=>Mg,refine:()=>ch,regex:()=>Pr,regexes:()=>Ge,registry:()=>ti,safeDecode:()=>zc,safeDecodeAsync:()=>Dc,safeEncode:()=>Oc,safeEncodeAsync:()=>Nc,safeParse:()=>Ec,safeParseAsync:()=>Pc,set:()=>V_,setErrorMap:()=>fC,size:()=>Wn,slugify:()=>Lr,startsWith:()=>Ir,strictObject:()=>F_,string:()=>$c,stringFormat:()=>__,stringbool:()=>lC,success:()=>X_,superRefine:()=>lh,symbol:()=>z_,templateLiteral:()=>tC,toJSONSchema:()=>oi,toLowerCase:()=>$r,toUpperCase:()=>Mr,transform:()=>il,treeifyError:()=>xa,trim:()=>Dr,tuple:()=>$g,uint32:()=>A_,uint64:()=>O_,ulid:()=>u_,undefined:()=>N_,union:()=>rl,unknown:()=>Zn,uppercase:()=>Ar,url:()=>o_,util:()=>I,uuid:()=>e_,uuidv4:()=>t_,uuidv6:()=>n_,uuidv7:()=>r_,void:()=>$_,xid:()=>d_,xor:()=>Z_,z:()=>ml});var ml={};fn(ml,{$brand:()=>ha,$input:()=>Va,$output:()=>Ha,NEVER:()=>ga,TimePrecision:()=>pc,ZodAny:()=>Eg,ZodArray:()=>Tg,ZodBase64:()=>Jc,ZodBase64URL:()=>Xc,ZodBigInt:()=>Kr,ZodBigIntFormat:()=>tl,ZodBoolean:()=>qr,ZodCIDRv4:()=>Kc,ZodCIDRv6:()=>Yc,ZodCUID:()=>Zc,ZodCUID2:()=>Bc,ZodCatch:()=>Xg,ZodCodec:()=>ll,ZodCustom:()=>Si,ZodCustomStringFormat:()=>Hr,ZodDate:()=>gi,ZodDefault:()=>Hg,ZodDiscriminatedUnion:()=>Og,ZodE164:()=>Qc,ZodEmail:()=>Wc,ZodEmoji:()=>Fc,ZodEnum:()=>Ur,ZodError:()=>Jx,ZodExactOptional:()=>Bg,ZodFile:()=>Gg,ZodFirstPartyTypeKind:()=>ul,ZodFunction:()=>ah,ZodGUID:()=>ui,ZodIPv4:()=>Vc,ZodIPv6:()=>qc,ZodISODate:()=>si,ZodISODateTime:()=>ii,ZodISODuration:()=>ci,ZodISOTime:()=>ai,ZodIntersection:()=>zg,ZodIssueCode:()=>mC,ZodJWT:()=>el,ZodKSUID:()=>Hc,ZodLazy:()=>oh,ZodLiteral:()=>Fg,ZodMAC:()=>vg,ZodMap:()=>Lg,ZodNaN:()=>eh,ZodNanoID:()=>Gc,ZodNever:()=>kg,ZodNonOptional:()=>al,ZodNull:()=>wg,ZodNullable:()=>jg,ZodNumber:()=>Vr,ZodNumberFormat:()=>Bn,ZodObject:()=>yi,ZodOptional:()=>sl,ZodPipe:()=>cl,ZodPrefault:()=>qg,ZodPromise:()=>sh,ZodReadonly:()=>th,ZodRealError:()=>_e,ZodRecord:()=>vi,ZodSet:()=>Wg,ZodString:()=>jr,ZodStringFormat:()=>K,ZodSuccess:()=>Jg,ZodSymbol:()=>_g,ZodTemplateLiteral:()=>rh,ZodTransform:()=>Zg,ZodTuple:()=>Dg,ZodType:()=>L,ZodULID:()=>Uc,ZodURL:()=>pi,ZodUUID:()=>Pt,ZodUndefined:()=>Cg,ZodUnion:()=>bi,ZodUnknown:()=>Pg,ZodVoid:()=>Ag,ZodXID:()=>jc,ZodXor:()=>Ig,_ZodString:()=>Lc,_default:()=>Vg,_function:()=>rC,any:()=>D_,array:()=>hi,base64:()=>b_,base64url:()=>v_,bigint:()=>T_,boolean:()=>xg,catch:()=>Qg,check:()=>oC,cidrv4:()=>h_,cidrv6:()=>y_,clone:()=>he,codec:()=>eC,coerce:()=>dl,config:()=>se,core:()=>Et,cuid:()=>c_,cuid2:()=>l_,custom:()=>iC,date:()=>M_,decode:()=>Ac,decodeAsync:()=>Ic,describe:()=>sC,discriminatedUnion:()=>B_,e164:()=>S_,email:()=>Xx,emoji:()=>s_,encode:()=>kc,encodeAsync:()=>Tc,endsWith:()=>Or,enum:()=>ol,exactOptional:()=>Ug,file:()=>Y_,flattenError:()=>Sr,float32:()=>E_,float64:()=>P_,formatError:()=>xr,fromJSONSchema:()=>dh,function:()=>rC,getErrorMap:()=>pC,globalRegistry:()=>Ae,gt:()=>wt,gte:()=>xe,guid:()=>Qx,hash:()=>R_,hex:()=>w_,hostname:()=>C_,httpUrl:()=>i_,includes:()=>Tr,instanceof:()=>cC,int:()=>Mc,int32:()=>k_,int64:()=>I_,intersection:()=>Ng,ipv4:()=>f_,ipv6:()=>g_,iso:()=>li,json:()=>uC,jwt:()=>x_,keyof:()=>L_,ksuid:()=>m_,lazy:()=>ih,length:()=>Gn,literal:()=>K_,locales:()=>ei,looseObject:()=>G_,looseRecord:()=>j_,lowercase:()=>kr,lt:()=>Ct,lte:()=>Ze,mac:()=>p_,map:()=>H_,maxLength:()=>Fn,maxSize:()=>dn,meta:()=>aC,mime:()=>zr,minLength:()=>Zt,minSize:()=>Rt,multipleOf:()=>un,nan:()=>Q_,nanoid:()=>a_,nativeEnum:()=>q_,negative:()=>hc,never:()=>nl,nonnegative:()=>bc,nonoptional:()=>Yg,nonpositive:()=>yc,normalize:()=>Nr,null:()=>Rg,nullable:()=>mi,nullish:()=>J_,number:()=>Sg,object:()=>W_,optional:()=>di,overwrite:()=>ct,parse:()=>wc,parseAsync:()=>Rc,partialRecord:()=>U_,pipe:()=>fi,positive:()=>gc,prefault:()=>Kg,preprocess:()=>dC,prettifyError:()=>_a,promise:()=>nC,property:()=>vc,readonly:()=>nh,record:()=>Mg,refine:()=>ch,regex:()=>Pr,regexes:()=>Ge,registry:()=>ti,safeDecode:()=>zc,safeDecodeAsync:()=>Dc,safeEncode:()=>Oc,safeEncodeAsync:()=>Nc,safeParse:()=>Ec,safeParseAsync:()=>Pc,set:()=>V_,setErrorMap:()=>fC,size:()=>Wn,slugify:()=>Lr,startsWith:()=>Ir,strictObject:()=>F_,string:()=>$c,stringFormat:()=>__,stringbool:()=>lC,success:()=>X_,superRefine:()=>lh,symbol:()=>z_,templateLiteral:()=>tC,toJSONSchema:()=>oi,toLowerCase:()=>$r,toUpperCase:()=>Mr,transform:()=>il,treeifyError:()=>xa,trim:()=>Dr,tuple:()=>$g,uint32:()=>A_,uint64:()=>O_,ulid:()=>u_,undefined:()=>N_,union:()=>rl,unknown:()=>Zn,uppercase:()=>Ar,url:()=>o_,util:()=>I,uuid:()=>e_,uuidv4:()=>t_,uuidv6:()=>n_,uuidv7:()=>r_,void:()=>$_,xid:()=>d_,xor:()=>Z_});var Et={};fn(Et,{$ZodAny:()=>ff,$ZodArray:()=>bf,$ZodAsyncError:()=>_t,$ZodBase64:()=>nf,$ZodBase64URL:()=>rf,$ZodBigInt:()=>Ba,$ZodBigIntFormat:()=>lf,$ZodBoolean:()=>Jo,$ZodCIDRv4:()=>Qm,$ZodCIDRv6:()=>ef,$ZodCUID:()=>Gm,$ZodCUID2:()=>Zm,$ZodCatch:()=>$f,$ZodCheck:()=>J,$ZodCheckBigIntFormat:()=>ym,$ZodCheckEndsWith:()=>Am,$ZodCheckGreaterThan:()=>Da,$ZodCheckIncludes:()=>Pm,$ZodCheckLengthEquals:()=>Cm,$ZodCheckLessThan:()=>Na,$ZodCheckLowerCase:()=>Rm,$ZodCheckMaxLength:()=>xm,$ZodCheckMaxSize:()=>bm,$ZodCheckMimeType:()=>Im,$ZodCheckMinLength:()=>_m,$ZodCheckMinSize:()=>vm,$ZodCheckMultipleOf:()=>gm,$ZodCheckNumberFormat:()=>hm,$ZodCheckOverwrite:()=>Om,$ZodCheckProperty:()=>Tm,$ZodCheckRegex:()=>wm,$ZodCheckSizeEquals:()=>Sm,$ZodCheckStartsWith:()=>km,$ZodCheckStringFormat:()=>Er,$ZodCheckUpperCase:()=>Em,$ZodCodec:()=>Qo,$ZodCustom:()=>Uf,$ZodCustomStringFormat:()=>af,$ZodDate:()=>yf,$ZodDefault:()=>Of,$ZodDiscriminatedUnion:()=>xf,$ZodE164:()=>of,$ZodEmail:()=>Mm,$ZodEmoji:()=>Wm,$ZodEncodeError:()=>Dn,$ZodEnum:()=>Ef,$ZodError:()=>Vo,$ZodExactOptional:()=>Tf,$ZodFile:()=>kf,$ZodFunction:()=>Gf,$ZodGUID:()=>Dm,$ZodIPv4:()=>Ym,$ZodIPv6:()=>Jm,$ZodISODate:()=>Vm,$ZodISODateTime:()=>Hm,$ZodISODuration:()=>Km,$ZodISOTime:()=>qm,$ZodIntersection:()=>_f,$ZodJWT:()=>sf,$ZodKSUID:()=>jm,$ZodLazy:()=>Bf,$ZodLiteral:()=>Pf,$ZodMAC:()=>Xm,$ZodMap:()=>wf,$ZodNaN:()=>Mf,$ZodNanoID:()=>Fm,$ZodNever:()=>gf,$ZodNonOptional:()=>Nf,$ZodNull:()=>mf,$ZodNullable:()=>If,$ZodNumber:()=>Za,$ZodNumberFormat:()=>cf,$ZodObject:()=>jx,$ZodObjectJIT:()=>vf,$ZodOptional:()=>ja,$ZodPipe:()=>Lf,$ZodPrefault:()=>zf,$ZodPromise:()=>Zf,$ZodReadonly:()=>Wf,$ZodRealError:()=>ke,$ZodRecord:()=>Cf,$ZodRegistry:()=>jf,$ZodSet:()=>Rf,$ZodString:()=>Ln,$ZodStringFormat:()=>q,$ZodSuccess:()=>Df,$ZodSymbol:()=>uf,$ZodTemplateLiteral:()=>Ff,$ZodTransform:()=>Af,$ZodTuple:()=>Ua,$ZodType:()=>D,$ZodULID:()=>Bm,$ZodURL:()=>Lm,$ZodUUID:()=>$m,$ZodUndefined:()=>df,$ZodUnion:()=>Xo,$ZodUnknown:()=>pf,$ZodVoid:()=>hf,$ZodXID:()=>Um,$ZodXor:()=>Sf,$brand:()=>ha,$constructor:()=>g,$input:()=>Va,$output:()=>Ha,Doc:()=>$a,JSONSchema:()=>qx,JSONSchemaGenerator:()=>pg,NEVER:()=>ga,TimePrecision:()=>pc,_any:()=>gp,_array:()=>_p,_base64:()=>uc,_base64url:()=>dc,_bigint:()=>cp,_boolean:()=>sp,_catch:()=>jD,_check:()=>Vx,_cidrv4:()=>cc,_cidrv6:()=>lc,_coercedBigint:()=>lp,_coercedBoolean:()=>ap,_coercedDate:()=>Sp,_coercedNumber:()=>ep,_coercedString:()=>Vf,_cuid:()=>tc,_cuid2:()=>nc,_custom:()=>wp,_date:()=>vp,_decode:()=>Ea,_decodeAsync:()=>ka,_default:()=>ZD,_discriminatedUnion:()=>TD,_e164:()=>mc,_email:()=>qa,_emoji:()=>Qa,_encode:()=>Ra,_encodeAsync:()=>Pa,_endsWith:()=>Or,_enum:()=>$D,_file:()=>Cp,_float32:()=>np,_float64:()=>rp,_gt:()=>wt,_gte:()=>xe,_guid:()=>ni,_includes:()=>Tr,_int:()=>tp,_int32:()=>op,_int64:()=>up,_intersection:()=>ID,_ipv4:()=>sc,_ipv6:()=>ac,_isoDate:()=>Yf,_isoDateTime:()=>Kf,_isoDuration:()=>Xf,_isoTime:()=>Jf,_jwt:()=>fc,_ksuid:()=>ic,_lazy:()=>KD,_length:()=>Gn,_literal:()=>LD,_lowercase:()=>kr,_lt:()=>Ct,_lte:()=>Ze,_mac:()=>qf,_map:()=>ND,_max:()=>Ze,_maxLength:()=>Fn,_maxSize:()=>dn,_mime:()=>zr,_min:()=>xe,_minLength:()=>Zt,_minSize:()=>Rt,_multipleOf:()=>un,_nan:()=>xp,_nanoid:()=>ec,_nativeEnum:()=>MD,_negative:()=>hc,_never:()=>yp,_nonnegative:()=>bc,_nonoptional:()=>BD,_nonpositive:()=>yc,_normalize:()=>Nr,_null:()=>pp,_nullable:()=>GD,_number:()=>Qf,_optional:()=>FD,_overwrite:()=>ct,_parse:()=>_r,_parseAsync:()=>Cr,_pipe:()=>HD,_positive:()=>gc,_promise:()=>YD,_property:()=>vc,_readonly:()=>VD,_record:()=>zD,_refine:()=>Rp,_regex:()=>Pr,_safeDecode:()=>Ta,_safeDecodeAsync:()=>Oa,_safeEncode:()=>Aa,_safeEncodeAsync:()=>Ia,_safeParse:()=>wr,_safeParseAsync:()=>Rr,_set:()=>DD,_size:()=>Wn,_slugify:()=>Lr,_startsWith:()=>Ir,_string:()=>Hf,_stringFormat:()=>Wr,_stringbool:()=>Ap,_success:()=>UD,_superRefine:()=>Ep,_symbol:()=>mp,_templateLiteral:()=>qD,_toLowerCase:()=>$r,_toUpperCase:()=>Mr,_transform:()=>WD,_trim:()=>Dr,_tuple:()=>OD,_uint32:()=>ip,_uint64:()=>dp,_ulid:()=>rc,_undefined:()=>fp,_union:()=>kD,_unknown:()=>hp,_uppercase:()=>Ar,_url:()=>ri,_uuid:()=>Ka,_uuidv4:()=>Ya,_uuidv6:()=>Ja,_uuidv7:()=>Xa,_void:()=>bp,_xid:()=>oc,_xor:()=>AD,clone:()=>he,config:()=>se,createStandardJSONSchemaMethod:()=>Sc,createToJSONSchemaMethod:()=>Tp,decode:()=>HN,decodeAsync:()=>qN,describe:()=>Pp,encode:()=>jN,encodeAsync:()=>VN,extractDefs:()=>Zr,finalize:()=>Br,flattenError:()=>Sr,formatError:()=>xr,globalConfig:()=>Fo,globalRegistry:()=>Ae,initializeContext:()=>Gr,isValidBase64:()=>tf,isValidBase64URL:()=>Gx,isValidJWT:()=>Zx,locales:()=>ei,meta:()=>kp,parse:()=>Ca,parseAsync:()=>wa,prettifyError:()=>_a,process:()=>X,regexes:()=>Ge,registry:()=>ti,safeDecode:()=>YN,safeDecodeAsync:()=>XN,safeEncode:()=>KN,safeEncodeAsync:()=>JN,safeParse:()=>Wd,safeParseAsync:()=>Fd,toDotPath:()=>Cx,toJSONSchema:()=>oi,treeifyError:()=>xa,util:()=>I,version:()=>zm});var ga=Object.freeze({status:"aborted"});function g(e,t,n){function r(a,c){if(!a._zod)Object.defineProperty(a,"_zod",{value:{def:c,constr:s,traits:new Set},enumerable:!1});if(a._zod.traits.has(e))return;a._zod.traits.add(e),t(a,c);let l=s.prototype,u=Object.keys(l);for(let d=0;d<u.length;d++){let f=u[d];if(!(f in a))a[f]=l[f].bind(a)}}let o=n?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:e});function s(a){var c;let l=n?.Parent?new i:this;r(l,a),(c=l._zod).deferred??(c.deferred=[]);for(let u of l._zod.deferred)u();return l}return Object.defineProperty(s,"init",{value:r}),Object.defineProperty(s,Symbol.hasInstance,{value:(a)=>{if(n?.Parent&&a instanceof n.Parent)return!0;return a?._zod?.traits?.has(e)}}),Object.defineProperty(s,"name",{value:e}),s}var ha=Symbol("zod_brand");class _t extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Dn extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}var Fo={};function se(e){if(e)Object.assign(Fo,e);return Fo}var I={};fn(I,{BIGINT_FORMAT_RANGES:()=>Md,Class:()=>xx,NUMBER_FORMAT_RANGES:()=>$d,aborted:()=>ln,allowsEval:()=>Od,assert:()=>CN,assertEqual:()=>vN,assertIs:()=>xN,assertNever:()=>_N,assertNotEqual:()=>SN,assignProp:()=>an,base64ToUint8Array:()=>vx,base64urlToUint8Array:()=>FN,cached:()=>br,captureStackTrace:()=>va,cleanEnum:()=>WN,cleanRegex:()=>Bo,clone:()=>he,cloneDef:()=>RN,createTransparentProxy:()=>IN,defineLazy:()=>F,esc:()=>ba,escapeRegex:()=>Ye,extend:()=>NN,finalizeIssue:()=>Pe,floatSafeRemainder:()=>Td,getElementAtPath:()=>EN,getEnumValues:()=>Zo,getLengthableOrigin:()=>Ho,getParsedType:()=>TN,getSizableOrigin:()=>jo,hexToUint8Array:()=>ZN,isObject:()=>$n,isPlainObject:()=>cn,issue:()=>vr,joinValues:()=>ya,jsonStringifyReplacer:()=>yr,merge:()=>$N,mergeDefs:()=>Gt,normalizeParams:()=>x,nullish:()=>sn,numKeys:()=>AN,objectClone:()=>wN,omit:()=>zN,optionalKeys:()=>Dd,parsedType:()=>Ld,partial:()=>MN,pick:()=>ON,prefixIssues:()=>Fe,primitiveTypes:()=>Nd,promiseAllObject:()=>PN,propertyKeyTypes:()=>Uo,randomString:()=>kN,required:()=>LN,safeExtend:()=>DN,shallowClone:()=>zd,slugify:()=>Id,stringifyPrimitive:()=>Sa,uint8ArrayToBase64:()=>Sx,uint8ArrayToBase64url:()=>GN,uint8ArrayToHex:()=>BN,unwrapMessage:()=>Go});function vN(e){return e}function SN(e){return e}function xN(e){}function _N(e){throw Error("Unexpected value in exhaustive check")}function CN(e){}function Zo(e){let t=Object.values(e).filter((r)=>typeof r==="number");return Object.entries(e).filter(([r,o])=>t.indexOf(+r)===-1).map(([r,o])=>o)}function ya(e,t="|"){return e.map((n)=>Sa(n)).join(t)}function yr(e,t){if(typeof t==="bigint")return t.toString();return t}function br(e){return{get value(){{let n=e();return Object.defineProperty(this,"value",{value:n}),n}throw Error("cached value already set")}}}function sn(e){return e===null||e===void 0}function Bo(e){let t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function Td(e,t){let n=(e.toString().split(".")[1]||"").length,r=t.toString(),o=(r.split(".")[1]||"").length;if(o===0&&/\d?e-\d?/.test(r)){let c=r.match(/\d?e-(\d?)/);if(c?.[1])o=Number.parseInt(c[1])}let i=n>o?n:o,s=Number.parseInt(e.toFixed(i).replace(".","")),a=Number.parseInt(t.toFixed(i).replace(".",""));return s%a/10**i}var bx=Symbol("evaluating");function F(e,t,n){let r=void 0;Object.defineProperty(e,t,{get(){if(r===bx)return;if(r===void 0)r=bx,r=n();return r},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function wN(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function an(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Gt(...e){let t={};for(let n of e){let r=Object.getOwnPropertyDescriptors(n);Object.assign(t,r)}return Object.defineProperties({},t)}function RN(e){return Gt(e._zod.def)}function EN(e,t){if(!t)return e;return t.reduce((n,r)=>n?.[r],e)}function PN(e){let t=Object.keys(e),n=t.map((r)=>e[r]);return Promise.all(n).then((r)=>{let o={};for(let i=0;i<t.length;i++)o[t[i]]=r[i];return o})}function kN(e=10){let n="";for(let r=0;r<e;r++)n+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return n}function ba(e){return JSON.stringify(e)}function Id(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var va="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function $n(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Od=br(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function cn(e){if($n(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let n=t.prototype;if($n(n)===!1)return!1;if(Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)return!1;return!0}function zd(e){if(cn(e))return{...e};if(Array.isArray(e))return[...e];return e}function AN(e){let t=0;for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n))t++;return t}var TN=(e)=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(e))return"array";if(e===null)return"null";if(e.then&&typeof e.then==="function"&&e.catch&&typeof e.catch==="function")return"promise";if(typeof Map<"u"&&e instanceof Map)return"map";if(typeof Set<"u"&&e instanceof Set)return"set";if(typeof Date<"u"&&e instanceof Date)return"date";if(typeof File<"u"&&e instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${t}`)}},Uo=new Set(["string","number","symbol"]),Nd=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Ye(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function he(e,t,n){let r=new e._zod.constr(t??e._zod.def);if(!t||n?.parent)r._zod.parent=e;return r}function x(e){let t=e;if(!t)return{};if(typeof t==="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}if(delete t.message,typeof t.error==="string")return{...t,error:()=>t.error};return t}function IN(e){let t;return new Proxy({},{get(n,r,o){return t??(t=e()),Reflect.get(t,r,o)},set(n,r,o,i){return t??(t=e()),Reflect.set(t,r,o,i)},has(n,r){return t??(t=e()),Reflect.has(t,r)},deleteProperty(n,r){return t??(t=e()),Reflect.deleteProperty(t,r)},ownKeys(n){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(n,r){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,r)},defineProperty(n,r,o){return t??(t=e()),Reflect.defineProperty(t,r,o)}})}function Sa(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Dd(e){return Object.keys(e).filter((t)=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var $d={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Md={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function ON(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let i=Gt(e._zod.def,{get shape(){let s={};for(let a in t){if(!(a in n.shape))throw Error(`Unrecognized key: "${a}"`);if(!t[a])continue;s[a]=n.shape[a]}return an(this,"shape",s),s},checks:[]});return he(e,i)}function zN(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let i=Gt(e._zod.def,{get shape(){let s={...e._zod.def.shape};for(let a in t){if(!(a in n.shape))throw Error(`Unrecognized key: "${a}"`);if(!t[a])continue;delete s[a]}return an(this,"shape",s),s},checks:[]});return he(e,i)}function NN(e,t){if(!cn(t))throw Error("Invalid input to extend: expected a plain object");let n=e._zod.def.checks;if(n&&n.length>0){let i=e._zod.def.shape;for(let s in t)if(Object.getOwnPropertyDescriptor(i,s)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let o=Gt(e._zod.def,{get shape(){let i={...e._zod.def.shape,...t};return an(this,"shape",i),i}});return he(e,o)}function DN(e,t){if(!cn(t))throw Error("Invalid input to safeExtend: expected a plain object");let n=Gt(e._zod.def,{get shape(){let r={...e._zod.def.shape,...t};return an(this,"shape",r),r}});return he(e,n)}function $N(e,t){let n=Gt(e._zod.def,{get shape(){let r={...e._zod.def.shape,...t._zod.def.shape};return an(this,"shape",r),r},get catchall(){return t._zod.def.catchall},checks:[]});return he(e,n)}function MN(e,t,n){let o=t._zod.def.checks;if(o&&o.length>0)throw Error(".partial() cannot be used on object schemas containing refinements");let s=Gt(t._zod.def,{get shape(){let a=t._zod.def.shape,c={...a};if(n)for(let l in n){if(!(l in a))throw Error(`Unrecognized key: "${l}"`);if(!n[l])continue;c[l]=e?new e({type:"optional",innerType:a[l]}):a[l]}else for(let l in a)c[l]=e?new e({type:"optional",innerType:a[l]}):a[l];return an(this,"shape",c),c},checks:[]});return he(t,s)}function LN(e,t,n){let r=Gt(t._zod.def,{get shape(){let o=t._zod.def.shape,i={...o};if(n)for(let s in n){if(!(s in i))throw Error(`Unrecognized key: "${s}"`);if(!n[s])continue;i[s]=new e({type:"nonoptional",innerType:o[s]})}else for(let s in o)i[s]=new e({type:"nonoptional",innerType:o[s]});return an(this,"shape",i),i}});return he(t,r)}function ln(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Fe(e,t){return t.map((n)=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(e),n})}function Go(e){return typeof e==="string"?e:e?.message}function Pe(e,t,n){let r={...e,path:e.path??[]};if(!e.message){let o=Go(e.inst?._zod.def?.error?.(e))??Go(t?.error?.(e))??Go(n.customError?.(e))??Go(n.localeError?.(e))??"Invalid input";r.message=o}if(delete r.inst,delete r.continue,!t?.reportInput)delete r.input;return r}function jo(e){if(e instanceof Set)return"set";if(e instanceof Map)return"map";if(e instanceof File)return"file";return"unknown"}function Ho(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function Ld(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let n=e;if(n&&Object.getPrototypeOf(n)!==Object.prototype&&"constructor"in n&&n.constructor)return n.constructor.name}}return t}function vr(...e){let[t,n,r]=e;if(typeof t==="string")return{message:t,code:"custom",input:n,inst:r};return{...t}}function WN(e){return Object.entries(e).filter(([t,n])=>Number.isNaN(Number.parseInt(t,10))).map((t)=>t[1])}function vx(e){let t=atob(e),n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t.charCodeAt(r);return n}function Sx(e){let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function FN(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),n="=".repeat((4-t.length%4)%4);return vx(t+n)}function GN(e){return Sx(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function ZN(e){let t=e.replace(/^0x/,"");if(t.length%2!==0)throw Error("Invalid hex string length");let n=new Uint8Array(t.length/2);for(let r=0;r<t.length;r+=2)n[r/2]=Number.parseInt(t.slice(r,r+2),16);return n}function BN(e){return Array.from(e).map((t)=>t.toString(16).padStart(2,"0")).join("")}class xx{constructor(...e){}}var _x=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,yr,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Vo=g("$ZodError",_x),ke=g("$ZodError",_x,{Parent:Error});function Sr(e,t=(n)=>n.message){let n={},r=[];for(let o of e.issues)if(o.path.length>0)n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o));else r.push(t(o));return{formErrors:r,fieldErrors:n}}function xr(e,t=(n)=>n.message){let n={_errors:[]},r=(o)=>{for(let i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map((s)=>r({issues:s}));else if(i.code==="invalid_key")r({issues:i.issues});else if(i.code==="invalid_element")r({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let s=n,a=0;while(a<i.path.length){let c=i.path[a];if(a!==i.path.length-1)s[c]=s[c]||{_errors:[]};else s[c]=s[c]||{_errors:[]},s[c]._errors.push(t(i));s=s[c],a++}}};return r(e),n}function xa(e,t=(n)=>n.message){let n={errors:[]},r=(o,i=[])=>{var s,a;for(let c of o.issues)if(c.code==="invalid_union"&&c.errors.length)c.errors.map((l)=>r({issues:l},c.path));else if(c.code==="invalid_key")r({issues:c.issues},c.path);else if(c.code==="invalid_element")r({issues:c.issues},c.path);else{let l=[...i,...c.path];if(l.length===0){n.errors.push(t(c));continue}let u=n,d=0;while(d<l.length){let f=l[d],m=d===l.length-1;if(typeof f==="string")u.properties??(u.properties={}),(s=u.properties)[f]??(s[f]={errors:[]}),u=u.properties[f];else u.items??(u.items=[]),(a=u.items)[f]??(a[f]={errors:[]}),u=u.items[f];if(m)u.errors.push(t(c));d++}}};return r(e),n}function Cx(e){let t=[],n=e.map((r)=>typeof r==="object"?r.key:r);for(let r of n)if(typeof r==="number")t.push(`[${r}]`);else if(typeof r==="symbol")t.push(`[${JSON.stringify(String(r))}]`);else if(/[^\w$]/.test(r))t.push(`[${JSON.stringify(r)}]`);else{if(t.length)t.push(".");t.push(r)}return t.join("")}function _a(e){let t=[],n=[...e.issues].sort((r,o)=>(r.path??[]).length-(o.path??[]).length);for(let r of n)if(t.push(`\u2716 ${r.message}`),r.path?.length)t.push(` \u2192 at ${Cx(r.path)}`);return t.join(`
|
|
62
|
-
`)}var _r=(e)=>(t,n,r,o)=>{let i=r?Object.assign(r,{async:!1}):{async:!1},s=t._zod.run({value:n,issues:[]},i);if(s instanceof Promise)throw new _t;if(s.issues.length){let a=new(o?.Err??e)(s.issues.map((c)=>Pe(c,i,se())));throw va(a,o?.callee),a}return s.value},Ca=_r(ke),Cr=(e)=>async(t,n,r,o)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},s=t._zod.run({value:n,issues:[]},i);if(s instanceof Promise)s=await s;if(s.issues.length){let a=new(o?.Err??e)(s.issues.map((c)=>Pe(c,i,se())));throw va(a,o?.callee),a}return s.value},wa=Cr(ke),wr=(e)=>(t,n,r)=>{let o=r?{...r,async:!1}:{async:!1},i=t._zod.run({value:n,issues:[]},o);if(i instanceof Promise)throw new _t;return i.issues.length?{success:!1,error:new(e??Vo)(i.issues.map((s)=>Pe(s,o,se())))}:{success:!0,data:i.value}},Wd=wr(ke),Rr=(e)=>async(t,n,r)=>{let o=r?Object.assign(r,{async:!0}):{async:!0},i=t._zod.run({value:n,issues:[]},o);if(i instanceof Promise)i=await i;return i.issues.length?{success:!1,error:new e(i.issues.map((s)=>Pe(s,o,se())))}:{success:!0,data:i.value}},Fd=Rr(ke),Ra=(e)=>(t,n,r)=>{let o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return _r(e)(t,n,o)},jN=Ra(ke),Ea=(e)=>(t,n,r)=>_r(e)(t,n,r),HN=Ea(ke),Pa=(e)=>async(t,n,r)=>{let o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Cr(e)(t,n,o)},VN=Pa(ke),ka=(e)=>async(t,n,r)=>Cr(e)(t,n,r),qN=ka(ke),Aa=(e)=>(t,n,r)=>{let o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return wr(e)(t,n,o)},KN=Aa(ke),Ta=(e)=>(t,n,r)=>wr(e)(t,n,r),YN=Ta(ke),Ia=(e)=>async(t,n,r)=>{let o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Rr(e)(t,n,o)},JN=Ia(ke),Oa=(e)=>async(t,n,r)=>Rr(e)(t,n,r),XN=Oa(ke);var Ge={};fn(Ge,{base64:()=>nm,base64url:()=>za,bigint:()=>cm,boolean:()=>um,browserEmail:()=>sD,cidrv4:()=>em,cidrv6:()=>tm,cuid:()=>Gd,cuid2:()=>Zd,date:()=>om,datetime:()=>sm,domain:()=>lD,duration:()=>Vd,e164:()=>rm,email:()=>Kd,emoji:()=>Yd,extendedDuration:()=>QN,guid:()=>qd,hex:()=>uD,hostname:()=>cD,html5Email:()=>rD,idnEmail:()=>iD,integer:()=>lm,ipv4:()=>Jd,ipv6:()=>Xd,ksuid:()=>jd,lowercase:()=>fm,mac:()=>Qd,md5_base64:()=>mD,md5_base64url:()=>fD,md5_hex:()=>dD,nanoid:()=>Hd,null:()=>dm,number:()=>qo,rfc5322Email:()=>oD,sha1_base64:()=>gD,sha1_base64url:()=>hD,sha1_hex:()=>pD,sha256_base64:()=>bD,sha256_base64url:()=>vD,sha256_hex:()=>yD,sha384_base64:()=>xD,sha384_base64url:()=>_D,sha384_hex:()=>SD,sha512_base64:()=>wD,sha512_base64url:()=>RD,sha512_hex:()=>CD,string:()=>am,time:()=>im,ulid:()=>Bd,undefined:()=>mm,unicodeEmail:()=>wx,uppercase:()=>pm,uuid:()=>Mn,uuid4:()=>eD,uuid6:()=>tD,uuid7:()=>nD,xid:()=>Ud});var Gd=/^[cC][^\s-]{8,}$/,Zd=/^[0-9a-z]+$/,Bd=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Ud=/^[0-9a-vA-V]{20}$/,jd=/^[A-Za-z0-9]{27}$/,Hd=/^[a-zA-Z0-9_-]{21}$/,Vd=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,QN=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,qd=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Mn=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)},eD=Mn(4),tD=Mn(6),nD=Mn(7),Kd=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,rD=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,oD=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,wx=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,iD=wx,sD=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,aD="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Yd(){return new RegExp(aD,"u")}var Jd=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Xd=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Qd=(e)=>{let t=Ye(e??":");return new RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}$`)},em=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,tm=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,nm=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,za=/^[A-Za-z0-9_-]*$/,cD=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,lD=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,rm=/^\+[1-9]\d{6,14}$/,Rx="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",om=new RegExp(`^${Rx}$`);function Ex(e){return typeof e.precision==="number"?e.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":e.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${e.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function im(e){return new RegExp(`^${Ex(e)}$`)}function sm(e){let t=Ex({precision:e.precision}),n=["Z"];if(e.local)n.push("");if(e.offset)n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let r=`${t}(?:${n.join("|")})`;return new RegExp(`^${Rx}T(?:${r})$`)}var am=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},cm=/^-?\d+n?$/,lm=/^-?\d+$/,qo=/^-?\d+(?:\.\d+)?$/,um=/^(?:true|false)$/i,dm=/^null$/i;var mm=/^undefined$/i;var fm=/^[^A-Z]*$/,pm=/^[^a-z]*$/,uD=/^[0-9a-fA-F]*$/;function Ko(e,t){return new RegExp(`^[A-Za-z0-9+/]{${e}}${t}$`)}function Yo(e){return new RegExp(`^[A-Za-z0-9_-]{${e}}$`)}var dD=/^[0-9a-fA-F]{32}$/,mD=Ko(22,"=="),fD=Yo(22),pD=/^[0-9a-fA-F]{40}$/,gD=Ko(27,"="),hD=Yo(27),yD=/^[0-9a-fA-F]{64}$/,bD=Ko(43,"="),vD=Yo(43),SD=/^[0-9a-fA-F]{96}$/,xD=Ko(64,""),_D=Yo(64),CD=/^[0-9a-fA-F]{128}$/,wD=Ko(86,"=="),RD=Yo(86);var J=g("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),kx={number:"number",bigint:"bigint",object:"date"},Na=g("$ZodCheckLessThan",(e,t)=>{J.init(e,t);let n=kx[typeof t.value];e._zod.onattach.push((r)=>{let o=r._zod.bag,i=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(t.value<i)if(t.inclusive)o.maximum=t.value;else o.exclusiveMaximum=t.value}),e._zod.check=(r)=>{if(t.inclusive?r.value<=t.value:r.value<t.value)return;r.issues.push({origin:n,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Da=g("$ZodCheckGreaterThan",(e,t)=>{J.init(e,t);let n=kx[typeof t.value];e._zod.onattach.push((r)=>{let o=r._zod.bag,i=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(t.value>i)if(t.inclusive)o.minimum=t.value;else o.exclusiveMinimum=t.value}),e._zod.check=(r)=>{if(t.inclusive?r.value>=t.value:r.value>t.value)return;r.issues.push({origin:n,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),gm=g("$ZodCheckMultipleOf",(e,t)=>{J.init(e,t),e._zod.onattach.push((n)=>{var r;(r=n._zod.bag).multipleOf??(r.multipleOf=t.value)}),e._zod.check=(n)=>{if(typeof n.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof n.value==="bigint"?n.value%t.value===BigInt(0):Td(n.value,t.value)===0)return;n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),hm=g("$ZodCheckNumberFormat",(e,t)=>{J.init(e,t),t.format=t.format||"float64";let n=t.format?.includes("int"),r=n?"int":"number",[o,i]=$d[t.format];e._zod.onattach.push((s)=>{let a=s._zod.bag;if(a.format=t.format,a.minimum=o,a.maximum=i,n)a.pattern=lm}),e._zod.check=(s)=>{let a=s.value;if(n){if(!Number.isInteger(a)){s.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});return}if(!Number.isSafeInteger(a)){if(a>0)s.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});else s.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}if(a<o)s.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort});if(a>i)s.issues.push({origin:"number",input:a,code:"too_big",maximum:i,inclusive:!0,inst:e,continue:!t.abort})}}),ym=g("$ZodCheckBigIntFormat",(e,t)=>{J.init(e,t);let[n,r]=Md[t.format];e._zod.onattach.push((o)=>{let i=o._zod.bag;i.format=t.format,i.minimum=n,i.maximum=r}),e._zod.check=(o)=>{let i=o.value;if(i<n)o.issues.push({origin:"bigint",input:i,code:"too_small",minimum:n,inclusive:!0,inst:e,continue:!t.abort});if(i>r)o.issues.push({origin:"bigint",input:i,code:"too_big",maximum:r,inclusive:!0,inst:e,continue:!t.abort})}}),bm=g("$ZodCheckMaxSize",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let o=r.value;return!sn(o)&&o.size!==void 0}),e._zod.onattach.push((r)=>{let o=r._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<o)r._zod.bag.maximum=t.maximum}),e._zod.check=(r)=>{let o=r.value;if(o.size<=t.maximum)return;r.issues.push({origin:jo(o),code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),vm=g("$ZodCheckMinSize",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let o=r.value;return!sn(o)&&o.size!==void 0}),e._zod.onattach.push((r)=>{let o=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>o)r._zod.bag.minimum=t.minimum}),e._zod.check=(r)=>{let o=r.value;if(o.size>=t.minimum)return;r.issues.push({origin:jo(o),code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Sm=g("$ZodCheckSizeEquals",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let o=r.value;return!sn(o)&&o.size!==void 0}),e._zod.onattach.push((r)=>{let o=r._zod.bag;o.minimum=t.size,o.maximum=t.size,o.size=t.size}),e._zod.check=(r)=>{let o=r.value,i=o.size;if(i===t.size)return;let s=i>t.size;r.issues.push({origin:jo(o),...s?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),xm=g("$ZodCheckMaxLength",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let o=r.value;return!sn(o)&&o.length!==void 0}),e._zod.onattach.push((r)=>{let o=r._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<o)r._zod.bag.maximum=t.maximum}),e._zod.check=(r)=>{let o=r.value;if(o.length<=t.maximum)return;let s=Ho(o);r.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),_m=g("$ZodCheckMinLength",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let o=r.value;return!sn(o)&&o.length!==void 0}),e._zod.onattach.push((r)=>{let o=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>o)r._zod.bag.minimum=t.minimum}),e._zod.check=(r)=>{let o=r.value;if(o.length>=t.minimum)return;let s=Ho(o);r.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Cm=g("$ZodCheckLengthEquals",(e,t)=>{var n;J.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let o=r.value;return!sn(o)&&o.length!==void 0}),e._zod.onattach.push((r)=>{let o=r._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=(r)=>{let o=r.value,i=o.length;if(i===t.length)return;let s=Ho(o),a=i>t.length;r.issues.push({origin:s,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),Er=g("$ZodCheckStringFormat",(e,t)=>{var n,r;if(J.init(e,t),e._zod.onattach.push((o)=>{let i=o._zod.bag;if(i.format=t.format,t.pattern)i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern)}),t.pattern)(n=e._zod).check??(n.check=(o)=>{if(t.pattern.lastIndex=0,t.pattern.test(o.value))return;o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(r=e._zod).check??(r.check=()=>{})}),wm=g("$ZodCheckRegex",(e,t)=>{Er.init(e,t),e._zod.check=(n)=>{if(t.pattern.lastIndex=0,t.pattern.test(n.value))return;n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Rm=g("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=fm),Er.init(e,t)}),Em=g("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=pm),Er.init(e,t)}),Pm=g("$ZodCheckIncludes",(e,t)=>{J.init(e,t);let n=Ye(t.includes),r=new RegExp(typeof t.position==="number"?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push((o)=>{let i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=(o)=>{if(o.value.includes(t.includes,t.position))return;o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),km=g("$ZodCheckStartsWith",(e,t)=>{J.init(e,t);let n=new RegExp(`^${Ye(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push((r)=>{let o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=(r)=>{if(r.value.startsWith(t.prefix))return;r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:r.value,inst:e,continue:!t.abort})}}),Am=g("$ZodCheckEndsWith",(e,t)=>{J.init(e,t);let n=new RegExp(`.*${Ye(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push((r)=>{let o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=(r)=>{if(r.value.endsWith(t.suffix))return;r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}});function Px(e,t,n){if(e.issues.length)t.issues.push(...Fe(n,e.issues))}var Tm=g("$ZodCheckProperty",(e,t)=>{J.init(e,t),e._zod.check=(n)=>{let r=t.schema._zod.run({value:n.value[t.property],issues:[]},{});if(r instanceof Promise)return r.then((o)=>Px(o,n,t.property));Px(r,n,t.property);return}}),Im=g("$ZodCheckMimeType",(e,t)=>{J.init(e,t);let n=new Set(t.mime);e._zod.onattach.push((r)=>{r._zod.bag.mime=t.mime}),e._zod.check=(r)=>{if(n.has(r.value.type))return;r.issues.push({code:"invalid_value",values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),Om=g("$ZodCheckOverwrite",(e,t)=>{J.init(e,t),e._zod.check=(n)=>{n.value=t.tx(n.value)}});class $a{constructor(e=[]){if(this.content=[],this.indent=0,this)this.args=e}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e==="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
|
|
60
|
+
`?e.trim().split(/\s+/).filter(Boolean):e.split(t).filter(Boolean)}function Hs(e){if(!e)return!0;return e.provenance==="unknown"?!/[$`]/.test(N(e)):e.provenance==="literal"}function To(e){return e?N(e):""}function OO(e){return`'${e.replaceAll("'",`'"'"'`)}'`}function Yu(e,t){return Ku(rt(e,"posix"),t)}function mr(e){return Yu(e,new Set(Array.from(e.matchAll(c_)).flatMap((t)=>{let n=t[1]??t[2];return n===void 0?[]:[n]})))}function Ku(e,t){if(e.status==="invalid"||e.status==="limited")return!1;let n=new Set(t);for(let r of e.nodes){if(r.kind==="group"){if(Ku(r.body,n))return!0;continue}if(r.kind!=="command")continue;if(r.nested.some((o)=>Ku(o,n))||m_(r.words,n))return!0;$O(r,n)}return!1}function m_(e,t){let n=e.findIndex((s)=>Ke(s.text)===null);if(n===-1)return!1;let r=e[n];if(!r)return!1;if(Io(r,t))return!0;let o=H(r.text);if(o==="source"||o==="."){let s=e[n+1]?.text==="--"?n+2:n+1;return a_(e[s],t)}if(me.has(o)){let s=e.slice(n),a=vt(s.map((l)=>l.text)),c=a.commandIndex??a.scriptIndex;return!a.syntaxCheck&&c!==null&&a_(s[c],t)}let i=zO(e,n,t);if(i===null)return!1;if(i===-1)return!0;return m_(e.slice(i),t)}function zO(e,t,n){let r=H(e[t]?.text??"");if(r==="command")return NO(e,t+1);if(r==="exec")return DO(e,t+1);if(r==="env")return MO(e,t+1,n);return null}function NO(e,t){for(let n=t;n<e.length;n++){let r=e[n]?.text??"";if(r==="--")return e[n+1]?n+1:null;if(/^-[p]*[vV][pvV]*$/.test(r))return null;if(/^-p+$/.test(r))continue;return n}return null}function DO(e,t){for(let n=t;n<e.length;n++){let r=e[n]?.text??"";if(r==="--")return e[n+1]?n+1:null;if(r==="-a"){n++;continue}if(/^-a.+/.test(r)||/^-[cl]+$/.test(r))continue;return n}return null}function MO(e,t,n){for(let r=t;r<e.length;r++){let o=e[r],i=o?.text??"";if(i==="--")return e[r+1]?r+1:null;if(i==="-S"||i==="--split-string")return Io(e[r+1],n)?-1:r+2;if(i.startsWith("-S")||i.startsWith("--split-string="))return Io(o,n)?-1:r+1;if(i==="-u"||i==="--unset"||i==="-C"||i==="--chdir"||i==="-P"){r++;continue}if(i==="-i"||i==="-0"||i==="--null"||i.startsWith("-u=")||i.startsWith("--unset=")||i.startsWith("-C")||i.startsWith("--chdir=")||i.startsWith("-P"))continue;if(i.startsWith("-"))continue;if(Ke(i))continue;return r}return null}function $O(e,t){if(!e.words.every((n)=>Ke(n.text)!==null))return;for(let n of e.words){let r=Ke(n.text);if(!r)continue;if(Io(n,t))t.add(r.name)}}function Io(e,t){if(!e)return!1;return e.parts.filter((n)=>n.provenance==="variable").some((n)=>Array.from(n.raw.matchAll(c_)).some((r)=>{let o=r[1]??r[2];return o!==void 0&&(CO.test(o)||t.has(o))}))}function a_(e,t){return!!e&&(e.parts.some((n)=>n.provenance!=="literal"&&n.provenance!=="variable")||Io(e,t))}var LO=new Set(["--ca-bundle","--cli-binary-format","--cli-connect-timeout","--cli-error-format","--cli-read-timeout","--color","--endpoint-url","--output","--profile","--query","--region"]),WO=new Set(["--access-token-file","--account","--billing-project","--configuration","--flags-file","--flatten","--format","--impersonate-service-account","--project","--trace-token","--verbosity"]),FO=new Set(["-o","--output","--query","--subscription"]),GO=new Set;function f_(e){if(e==="aws")return LO;if(e==="gcloud")return WO;if(e==="az")return FO;return GO}var ZO=new Set(["-c","-H","-l","--config","--context","--host","--log-level","--tlscacert","--tlscert","--tlskey"]),jO=new Set;function p_(e){if(e==="git")return He;if(e==="docker")return ZO;return jO}function be(e,t){if(e.length===0||t.length===0)return null;let n=H(e[0]??""),r=Pe(e);for(let o of t){if(!VO(n,o.command))continue;if(o.match){if(UO(n,e,o.match))return g_(o);continue}if(!HO(n,e,o.subcommand))continue;if(qO(e,new Set(o.block_args),r))return g_(o)}return null}function g_(e){return{id:`custom.${e.name}`,reason:`[${e.name}] ${e.reason}`,intent:e.intent??"manual_only"}}function UO(e,t,n){let r=t.slice(1);if(n.exclude_args?.some((o)=>r.includes(o)))return!1;if(n.any_args&&!n.any_args.some((o)=>r.includes(o)))return!1;return BO(r,n.command_path,f_(e))}function BO(e,t,n){let r=0,o=!1;for(let i of e){if(r>=t.length)return!0;if(o){o=!1;continue}if(i.startsWith("-")){o=!i.includes("=")&&n.has(i);continue}if(i!==t[r])return!1;r++}return r>=t.length}function VO(e,t){return e===H(t)}function HO(e,t,n){if(!n)return!0;return h_(t,1,n,p_(e))}function h_(e,t,n,r){let o=!1;for(let i=t;i<e.length;i++){let s=e[i];if(!s)continue;if(o){o=!1;continue}if(s==="--"){let a=e[i+1];if(a&&!a.startsWith("-"))return a===n;return!1}if(r.has(s)){o=!0;continue}if(s.startsWith("-")){if(!s.includes("=")&&KO(e,i,n,r))return!0;continue}return s===n}return!1}function KO(e,t,n,r){let o=e[t+1];if(!o||o.startsWith("-"))return!1;return h_(e,t+2,n,r)}function qO(e,t,n){for(let r of e)if(t.has(r))return!0;for(let r of n)if(t.has(r))return!0;return!1}function Jt(e,t,n={}){if(e.length===0)return null;let r=e[0];if(!r)return null;let o=H(r);if(o==="eval"){let i=dr(j(e));if(i.kind==="dynamic")return fr(n,t);if(i.kind==="literal"&&t.analyzeNested){let s=t.analyzeNested(i.source,{effectiveCwd:t.cwd,envAssignments:t.envAssignments});if(s)return s}return St(n,t)}if(me.has(o)){if(Ye(e))return null;let i=bt(e);if(i){if(n.dynamicSourceInput??n.dynamicInput){let c=fr(n,t);if(c)return c}if(mr(i)){let c=fr(n,t);if(c)return c}if(!t.analyzeNested)return null;let a=t.analyzeNested(i,{effectiveCwd:t.cwd,envAssignments:t.envAssignments});if(a)return a;return null}let s=_t(j(e));if(s.kind==="dynamic")return fr(n,t);if(s.kind==="literal"){if(n.dynamicSourceInput)return fr(n,t);return null}if(n.dynamicSourceInput??n.dynamicInput)return fr(n,t);return null}if(We.has(o))return z(Fs(e,(i)=>t.analyzeNested?t.analyzeNested(i,{effectiveCwd:t.cwd,envAssignments:t.envAssignments}):null),t.policy)??be(e,t.policy?.rules??[])??St(n,t);if(Me(o)){let i=rs(e);if(!i)return St(n,t);if(de(t.policy,"interpreter.one-liner-paranoid",!!t.paranoidInterpreters)){let a=z(v("interpreter.one-liner-paranoid",er),t.policy);if(a)return a}if(ss(o,i))return St(n,t);let s=t.analyzeNested?.(i,{effectiveCwd:t.cwd,envAssignments:t.envAssignments});if(s&&s.id!=="raw-text.dangerous-command"&&(s.reason!==Ut||ir(i)))return s;if(tr(i,t.scanWork))return z(v("interpreter.dangerous-command",yn),t.policy)??St(n,t);return St(n,t)}if(o==="rm"||o==="rmdir"){let i=o==="rm"&&(ct(e)||n.dynamicRmInput);return z(ur(j(e),{environment:t.environment,cwd:t.cwd,originalCwd:t.originalCwd,strict:t.strict,paranoid:t.paranoidRm,allowTmpdirVar:t.allowTmpdirVar,tmpdirWordSplittingUnsafe:pt(t.envAssignments,t.environment),trustedTmpdirValue:Mt(t.envAssignments,t.environment),protectedGitMetadata:t.protectedGitMetadata,policy:t.policy}),t.policy)??(i&&n.dynamicRmInput?St(n,t):null)??(i?YO(n,t):null)}if(o==="find")return js(j(e),{...t,derivedCommandWorkBudget:t.derivedCommandWorkBudget,analyzeTokens:(i,s)=>Jt(i,{...t,cwd:s??void 0,derivedCommandWorkBudget:t.derivedCommandWorkBudget},n)})??be(e,t.policy?.rules??[])??St(n,t);if(o==="git")return z(lr(j(e),{env:t.environment.env,cwd:t.cwd,envAssignments:t.envAssignments,policy:t.policy,worktreeMode:n.dynamicInput?!1:t.worktreeMode}),t.policy)??be(e,t.policy?.rules??[])??St(n,t);return be(e,t.policy?.rules??[])??St(n,t)}function fr(e,t){return e.shellDynamicMatch?z(e.shellDynamicMatch,t.policy):null}function St(e,t){return e.dynamicSourceInput&&e.dynamicSourceMatch?z(e.dynamicSourceMatch,t.policy):null}function YO(e,t){return e.dynamicInput&&e.rmDynamicMatch?z(e.rmDynamicMatch,t.policy):null}var Ju="xargs rm -rf with dynamic input is dangerous. Use explicit file list instead.",Xu="xargs dynamic input can supply arbitrary executable command source. Use an explicit child command and arguments instead.",JO="__CC_SAFETY_NET_XARGS_INPUT__",Ks="__CC_SAFETY_NET_XARGS_INTERPRETER_INPUT__",qs="rm",XO=/(?:^|[;&|]\s*|\b(?:eval|source)\s+|\b(?:ba|da|z|k)?sh\s+-c\s+)\s*["']?\$(?:([0-9]+|[@*]|[A-Za-z_][A-Za-z0-9_]*)|\{!?([0-9]+|[@*]|[A-Za-z_][A-Za-z0-9_]*)(?:[^}]*)\})/g,QO=/(?:^|[;&|]\s*)\s*eval\b((?:\\.|"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|[^\\'";&|\r\n])*)/g,ez=/\$(?:([0-9]+|[@*]|[A-Za-z_][A-Za-z0-9_]*)|\{!?([0-9]+|[@*]|[A-Za-z_][A-Za-z0-9_]*)(?:[^}]*)\})/g,tz=/^(?:[0-9]+|[@*])$/;function v_(e,t){let n=e.map(N),{childStart:r,replacementToken:o}=Rn(n),i=n.slice(r),s=v("xargs.shell-dynamic",Xu);if(rz(i,o,t)&&z(s,t.policy))return z(s,t.policy);for(let a of at(i,t)){let c=a.tokens,l=o!==null&&c[0]!==i[0]&&(c[0]?.includes(o)??!1)?z(s,t.policy):null;if(l)return l;let u=C_(c,o,a.wrapperEnvAssignments),d=a.head==="rm"&&o!==null&&S_(c,o),m=Jt(c,{...t,cwd:a.cwd,envAssignments:a.envAssignments},{dynamicInput:u,dynamicSourceInput:d||__(c,a.head,o,a.wrapperEnvAssignments,u,t.scanWork,t.environment),dynamicRmInput:d,shellDynamicMatch:s,dynamicSourceMatch:s,rmDynamicMatch:v("xargs.rm-recursive-force-dynamic",Ju)});if(m)return m;let f=nz(c,o,t.policy?.rules??[]);if(f)return f;if(a.head==="git"){let h=o===null?[...c,JO]:c,y=o!==null&&(c.some((R)=>R.includes(o))||Array.from(a.envAssignments.values()).some((R)=>R.includes(o))),b=Jt(h,{...t,cwd:a.cwd,envAssignments:a.envAssignments,worktreeMode:o===null||y?!1:t.worktreeMode});if(b)return b}let p=be(c,t.policy?.rules??[]);if(p)return p}return null}function nz(e,t,n){if(n.length===0)return null;if(t===null){for(let o of n){let i=be([...e,...o.subcommand?[o.subcommand]:[],...o.block_args],n);if(i)return i}return null}let r=new Set(n.flatMap((o)=>[o.subcommand,...o.block_args].flatMap((i)=>i?e.flatMap((s)=>Qu(s,t,i)):[])));for(let o of r){let i=be(e.map((s)=>s.replaceAll(t,o)),n);if(i)return i}return null}function Qu(e,t,n){let r=e.indexOf(t);if(r===-1||e.indexOf(t,r+t.length)!==-1)return[];let o=e.slice(0,r),i=e.slice(r+t.length);return n.startsWith(o)&&n.endsWith(i)?[n.slice(o.length,n.length-i.length)]:[]}function __(e,t,n,r,o,i,s){if(me.has(t)){if(Ye(e))return!1;if(n!==null&&oz(e,n))return!0;let a=bt(e);if(!a){let c=_t(j(e));if(c.kind==="literal")return n!==null&&c.source.includes(n);return c.kind==="none"&&o}if(n!==null&&a.includes(n))return!0;if(Dt(a,i))return!0;return iz(a,n,r)}if(Me(t))return y_(e,n,is,tb(t));if(We.has(t))return y_(e,n,Ou,Iv);if(t==="eval"){let a=dr(j(e));if(a.kind==="dynamic")return!0;if(n!==null)return a.kind==="literal"&&a.source.includes(n);return o}if(t==="find")return sz(e,n,i,s);if(t==="git"){let a=lt(e);return n===null?a.subcommand===null:(a.subcommand?.includes(n)??!1)||a.subcommand!==null&&cr.has(a.subcommand.toLowerCase())&&x_(a.rest,n).some((c)=>c.includes(n))}return!1}function y_(e,t,n,r){let o=n(e);if(t===null)return o.optionsOpen||n([...e,Ks]).sources.some((c)=>c.value===Ks);if(o.sources.some((c)=>c.value.includes(t)))return!0;let i=new Set(o.sources.map((c)=>`${c.tokenIndex}\x00${c.kind}\x00${c.value}`)),s=r.flatMap((c)=>[c.selector,...c.valueForm==="attached-only"||c.valueForm==="attached-or-separate"?[`${c.selector}${Ks}`]:[],...c.valueForm==="equals-or-separate"?[`${c.selector}=${Ks}`]:[]]),a=new Set(s.flatMap((c)=>e.flatMap((l)=>Qu(l,t,c))));return Array.from(a).some((c)=>n(e.map((l)=>l.replaceAll(t,c))).sources.some((l)=>!i.has(`${l.tokenIndex}\x00${l.kind}\x00${l.value}`)))}function rz(e,t,n){if(e.length===0||(e[0]??"").toLowerCase()==="command")return!1;let r=new Set(Array.from(at(e,n),(i)=>i.head)),o=t===null?[...e,qs]:e.map((i,s)=>s===0?i:i.replaceAll(t,qs));return Array.from(at(o,n)).some((i)=>i.head===qs&&!r.has(qs))}function S_(e,t){return x_(e.slice(1),t).some((n)=>n.includes(t)&&(n.startsWith("-")||n.startsWith(t)))}function x_(e,t){let n=e.findIndex((r)=>r==="--"&&!r.includes(t));return n===-1?e:e.slice(0,n)}function C_(e,t,n){if(t===null)return!0;return e.some((r)=>r.includes(t))||Array.from(n.values()).some((r)=>r.includes(t))}function oz(e,t){let n=vt(e);if(n.commandIndex!==null&&(e[n.commandIndex]??"").includes(t)||n.scriptIndex!==null&&(e[n.scriptIndex]??"").includes(t))return!0;return["-c","-nc","-cn",`--${t}`,t].some((o)=>e.some((i,s)=>{if(s===0||!i.includes(t))return!1;return Qu(i,t,o).some((c)=>{let l=e.map((d,m)=>m===s?d.replaceAll(t,c):d),u=vt(l);if(u.commandIndex===null&&u.scriptIndex===null)return!1;if(n.commandIndex===null&&u.commandIndex!==null)return!0;if(n.scriptIndex===null&&u.scriptIndex!==null)return!0;if(u.commandIndex!==null&&(l[u.commandIndex]??"").includes(c))return!0;return u.scriptIndex!==null&&(l[u.scriptIndex]??"").includes(c)})}))}function iz(e,t,n){let r=new Set(t===null?[]:Array.from(n).filter(([,o])=>o.includes(t)).map(([o])=>o));for(let o of e.matchAll(XO))if(b_(o,r))return!0;for(let o of e.matchAll(QO))for(let i of(o[1]??"").matchAll(ez))if(b_(i,r))return!0;return Yu(e,r)}function b_(e,t){let n=e[1]??e[2];return n!==void 0&&(tz.test(n)||t.has(n))}function sz(e,t,n,r){if(t===null)return!0;let o=!1,i=0;for(let s=1;s<e.length;s++){let a=e[s]??"";if(!o&&!a.startsWith("-")&&a!=="!"&&a!=="("){if(a.indexOf(t)===0)return!0;continue}if(o=!0,i>0){i--;continue}if(Lt(a)){let l=Po(e,s);s=l.nextIndex-1;for(let u of at(l.tokens,{environment:r,cwd:void 0})){let d=C_(u.tokens,t,u.wrapperEnvAssignments);if(u.head==="rm"&&S_(u.tokens,t)||__(u.tokens,u.head,t,u.wrapperEnvAssignments,d,n,r))return!0}continue}let c=Kt(a);if(c>0){if(i=c,a.includes(t))return!0;continue}if(a.includes(t))return!0}return!1}function Rn(e){let t=new Set(["-L","-n","-P","-s","-a","-E","-R","-S","-e","-d","-J","--max-args","--max-procs","--max-chars","--arg-file","--eof","--delimiter","--max-lines","--process-slot-var"]),n=null,r=1;while(r<e.length){let o=e[r];if(!o)break;if(o==="--")return{childStart:r+1,replacementToken:n};if(o.startsWith("-")){if(o==="-I"){n=e[r+1]??"{}",r+=2;continue}if(o.startsWith("-I")&&o.length>2){n=o.slice(2),r++;continue}if(o==="--replace"){n="{}",r++;continue}if(o.startsWith("--replace=")){let i=o.slice(10);n=i===""?"{}":i,r++;continue}if(o==="-J"){n=e[r+1]??"{}",r+=2;continue}if(t.has(o))r+=2;else r++}else return{childStart:r,replacementToken:n}}return{childStart:e.length,replacementToken:n}}var zo="parallel rm -rf with dynamic input is dangerous. Use explicit file list instead.",No="parallel with shell -c can execute arbitrary commands from dynamic input. Run the inner command directly on an explicit file list instead.",cz="parallel without a command reads executable commands from dynamic input. Use an explicit command template or ::: arguments instead.",lz="parallel command construction cannot be verified safely. Use the default ::: separator, literal arguments, and built-in replacement strings.",uz=/\{[^{}\s]*\}/,I_=/\{\}|\{-?\d+\}/g,dz=["e","f","source","file","-e","-f","--source","--file"],mz=["c","e","eval","m","r","Mmodule","import","require","-c","-e","-m","-r","--eval","--import","--require"],fz=new Set(["-L","-d","-n","--delay","--delimiter","--header","--joblog","--jl","--max-args","--max-lines","--nice","--results","--result","--res","--tagstring","--timeout"]),pz=new Set(["--arg-file","--colsep","--rpl","--arg-sep","--arg-file-sep"]),E_=new Set(["-S","--sshlogin","--slf","--sshloginfile"]),gz=new Set(["--workdir","--wd"]),w_="__CC_SAFETY_NET_PARALLEL_SOURCE__",hz=new TextEncoder,td=K.maxDerivedBytes+4*K.maxPlaceholderReplacements;function ke(e,t){for(let n of e){let r=t(n);if(r)return r}return null}function O_(e,t){return ke([...e],(n)=>Dt(n,t.scanWork))}function z_(e,t){let n=e.map(N);if((t.envAssignments?.has("PARALLEL")?t.envAssignments.get("PARALLEL"):t.environment.env.get("PARALLEL"))?.trim()){let p=An(t);if(p)return p}if(n.length===2&&(n[1]==="--version"||n[1]==="--help"))return null;let o=Z_(n),{template:i,jobs:s,runsRemotely:a,readsCommandsFromInput:c,unsupported:l,workdir:u,dryRun:d}=o;if(l){let p=An(t);if(p)return p;let h=O_(t.envAssignments?.values()??[],t);if(h)return h}if(c){let p=Ez(t);if(p)return p}if(u!==void 0&&a){let p=An(t);if(p)return p}let m=Az(u,t.cwd,t.environment.paths);if(m===null){let p=An(t);if(p)return p}let f=a?{...t,cwd:void 0,originalCwd:void 0}:m===null||m===void 0||m===t.cwd?t:{...t,cwd:m};if(d){if([...at(i,f)].flatMap((h)=>[...h.envAssignments.values()]).some(id)){let h=An(t);if(h)return h}return null}if(i.length===0){if(s.some((y)=>y.length!==1)){let y=An(t);if(y)return y}let p=s.map((y)=>y[0]??"");$e(t.budget,nd(p));let h=L_(f.envAssignments,f.cwd,a);return ke(p,(y)=>t.analyzeNested(y,h))}return ke(at(i,f),(p)=>yz(p,o,t,f))}function yz(e,t,n,r){let{jobs:o,templateHasPlaceholder:i,runsRemotely:s,usesStdin:a}=t,c=e.tokens,l={...r,cwd:e.cwd,envAssignments:e.envAssignments},u=[...e.envAssignments.values()];if(u.some(F_)){let b=An(n);if(b)return b}let d=O_(u,n);if(d)return d;let m=u.some(ne),f=i||m,p=a&&f,h=L_(e.envAssignments,e.wrapperCwd,s||p);if(me.has(e.head)){let b=()=>{if(!i||o.length===0)return null;return $e(n.budget,Ys(c,o,"generic")),ke(o,(x)=>Jt(c.map((P)=>Xt(P,x)),l))};if(Ye(c))return b();let R=bt(c);if(R){if(G_(R)){let k=Pn(n);if(k)return k;if(o.length===0)return null;return $e(n.budget,T_(R,o)),ke(o,(U)=>n.analyzeNested(Xt(R,U),h))}if(ne(R)){if(o.length>0)return $e(n.budget,T_(R,o)),ke(o,(ie)=>n.analyzeNested(Xt(R,ie),h));$e(n.budget,A_(R));let k=Ao(R);if(k?.[0]&&H(k[0])==="rm"&&ct(k)){let ie=P_(n);if(ie)return ie}let U=k?Jt(k,l,{dynamicInput:a,shellDynamicMatch:v("parallel.shell-dynamic",No),rmDynamicMatch:v("parallel.rm-recursive-force-dynamic",zo)}):null;if(U)return U;return n.analyzeNested(R,h)}let x=!m&&(!i||o.length>0)?(o.length>0?o:[void 0]).map((k)=>Vs(j(k===void 0?c:i?c.map((U)=>Xt(U,k)):[...c,...k]),R)):[];if(x.some((k)=>k.kind==="dynamic")){let k=Pn(n);if(k)return k}let P=x.flatMap((k)=>k.kind==="literal"?[k.source]:[]);if(P.length>0)return $e(n.budget,nd(P)),ke(P,(k)=>n.analyzeNested(k,h));if($e(n.budget,A_(R)),mr(R)){let k=Pn(n);if(k)return k}let L=n.analyzeNested(R,h);if(L)return L;if(f)return Pn(n);return null}let A=_t(j(c));if(A.kind==="dynamic"||A.kind==="literal"&&ne(A.source))return Pn(n)??b();if(A.kind==="literal")return b();if(o.length>0){let x=Pn(n);if(x)return x;let P=b();if(P)return P;if(i)return null;let L=o.flatMap((k)=>k[0]===void 0?[]:[k[0]]);return $e(n.budget,nd(L)),ke(L,(k)=>n.analyzeNested(k,h))}if(f||a)return Pn(n)??b();return null}if(e.head==="rm"&&ct(c)){if(i&&o.length>0)return $e(n.budget,Ys(c,o,"rm")),ke(o,(R)=>ed(c.map((A)=>rd(A,R)),e.cwd,r));if(o.length>0)return $e(n.budget,k_(c,o)),ke(o,(R)=>ed([...c,...R],e.cwd,r));let b=ed(c.flatMap((R,A)=>{if(A===0||!ne(R))return[R];return R.startsWith("-")?[rd(R,[""])]:[]}),e.cwd,r);if(b)return b;return P_(n)}$e(n.budget,i&&o.length>0?Ys(c,o,"generic"):o.length>0?k_(c,o):$_(c));let y=o.length>0?o:[void 0];return ke(y,(b)=>{let R=b===void 0?c:i?c.map((se)=>Xt(se,b)):[...c,...b],A=v("parallel.shell-dynamic",No),x=a&&e.head==="find"?Cz(R,r):null,P=D_(R,a,n.policy?.rules??[],n.budget)??x?.customResult??null,L=H(e.head),k=a&&(L==="rm"&&od(R)||L==="xargs"&&M_(R)||x?.rmOptions===!0),U=a&&(k||x?.executedSource===!0||x===null&&N_(R,L)),ie=Jt(R,{...l,worktreeMode:s||a||f?!1:n.worktreeMode},{dynamicInput:a||f,dynamicRmInput:k,dynamicSourceInput:P!==null||U,shellDynamicMatch:A,dynamicSourceMatch:A,rmDynamicMatch:v("parallel.rm-recursive-force-dynamic",zo)});if(U){let se=z(A,n.policy);if(se)return se}return ie??P??be(R,n.policy?.rules??[])})}function N_(e,t){if(ne(e[0]??""))return!0;if(t==="eval"||t==="source"||t===".")return!0;if(t==="parallel"||t==="xargs")return!0;if(me.has(t))return _z(e);if(t==="git")return bz(e);if(t==="find")return!0;if(We.has(t))return R_(e,dz,Ro);if(Me(t))return R_(e,mz,os);return!1}function od(e){let t=e.indexOf("--"),n=e.slice(1,t===-1?void 0:t);if(!e.some(ne))return t===-1;return n.some((o)=>ne(o)&&(o.startsWith("-")||G_(o)))}function bz(e){if(vz(e))return!0;let t=lt(e);if(t.subcommand===null||ne(t.subcommand))return!0;if(!cr.has(t.subcommand.toLowerCase()))return!1;let n=t.rest.indexOf("--"),r=t.rest.slice(0,n===-1?void 0:n);if(!e.some(ne))return n===-1;return r.some(ne)}function vz(e){for(let t=1;t<e.length;t++){let n=e[t];if(!n||n==="--"||!n.startsWith("-"))return!1;if(n==="-c"||n==="--config-env"){if(ne(e[t+1]??""))return!0;t++;continue}if(n.startsWith("-c")&&n.length>2||n.startsWith("--config-env=")){if(ne(n))return!0;continue}if(ne(n))return!0}return!1}function _z(e){if(Ye(e))return!1;let t=bt(e);if(t!==null)return ne(t);let n=_t(j(e));if(n.kind==="literal")return ne(n.source);if(n.kind==="dynamic")return!0;return!e.some(ne)}function R_(e,t,n){let r=n(e);if(r.some((i)=>ne(i.value)))return!0;if(!e.some(ne))return n([...e,w_]).some((i)=>i.value===w_);let o=new Set(r.map((i)=>`${i.tokenIndex}\x00${i.kind}\x00${i.value}`));return t.some((i)=>n(e.map((s)=>Xt(s,[i]))).some((s)=>!o.has(`${s.tokenIndex}\x00${s.kind}\x00${s.value}`)))}function D_(e,t,n,r){if(!t||n.length===0)return null;let o=n.filter((s)=>H(s.command)===H(e[0]??""));if(o.length===0)return null;let i=e.some(ne);if($e(r,Sz(e,o,i)),!i)return ke(o,(s)=>be([...e,...s.subcommand?[s.subcommand]:[],...s.block_args],[s]));return ke(o,(s)=>{let a=new Set([s.subcommand,...s.block_args].flatMap((c)=>c?xz(e,c):[]));return ke(a,(c)=>be(e.map((l)=>Xt(l,[c])),[s]))})}function Sz(e,t,n){let r=n?kn(Je(t.map((o)=>o.block_args.length+(o.subcommand?1:0)),K.maxChildAnalyses),2*Math.max(e.length,1),K.maxChildAnalyses):t.length;return{childAnalyses:r,derivedTokens:kn(r,e.length,K.maxDerivedTokens)}}function xz(e,t){return e.flatMap((n)=>{let r=[...n.matchAll(/\{[^{}\s]*\}/g)];if(r.length!==1)return[];let o=r[0];if(!o||o.index===void 0)return[];let i=n.slice(0,o.index),s=n.slice(o.index+o[0].length);if(!t.startsWith(i)||!t.endsWith(s))return[t];let a=t.slice(i.length,t.length-s.length);return a!==t?[t,a]:[t]})}function Cz(e,t){let n={customResult:null,executedSource:!e.some(ne),rmOptions:!1},r=!1,o=0,i=null,s=()=>{if(!i?.some(ne))return;for(let a of at(i,t))n.executedSource||=N_(a.tokens,a.head),n.rmOptions||=a.head==="rm"&&od(a.tokens)||a.head==="xargs"&&M_(a.tokens),n.customResult??=D_(a.tokens,!0,t.policy?.rules??[],t.budget)};for(let a of e.slice(1)){if(!r&&!a.startsWith("-")&&a!=="!"&&a!=="("){n.executedSource||=ne(a);continue}if(r=!0,i){if(a===";"||a==="+"){s(),i=null;continue}i.push(a);continue}if(o>0){o--;continue}if(Lt(a)){i=[],n.executedSource||=ne(a);continue}let c=Kt(a);if(c>0){o=c,n.executedSource||=ne(a);continue}n.executedSource||=ne(a)}return s(),n}function M_(e){let t=e.slice(Rn(e).childStart);return H(t[0]??"")==="rm"&&od(t)}function Js(e,t){return(n)=>z(v(e,t),n.policy)}var Pn=Js("parallel.shell-dynamic",No),Ez=Js("parallel.command-stream-dynamic",cz),An=Js("parallel.command-stream-dynamic",lz),P_=Js("parallel.rm-recursive-force-dynamic",zo);function ed(e,t,n){return z(ur(j(e),{environment:n.environment,cwd:t,originalCwd:n.originalCwd,strict:n.strict,paranoid:n.paranoidRm,allowTmpdirVar:n.allowTmpdirVar,tmpdirWordSplittingUnsafe:pt(n.envAssignments??new Map,n.environment),trustedTmpdirValue:Mt(n.envAssignments??new Map,n.environment),protectedGitMetadata:n.protectedGitMetadata,policy:n.policy}),n.policy)}function nd(e){return{childAnalyses:e.length,derivedTokens:e.length,derivedBytes:Do(e)}}function A_(e){return $_([e])}function $_(e){return{childAnalyses:1,derivedTokens:e.length,derivedBytes:Do(e)}}function k_(e,t){if(t.length>K.maxChildAnalyses)return{childAnalyses:t.length};return{childAnalyses:t.length,derivedTokens:Je(t.map((n)=>e.length+n.length),K.maxDerivedTokens),derivedBytes:Je([kn(Do(e),t.length,K.maxDerivedBytes),Je(t.map((n)=>Do(n)),K.maxDerivedBytes)],K.maxDerivedBytes)}}function T_(e,t){return Ys([e],t,"generic")}function Ys(e,t,n){if(t.length>K.maxChildAnalyses)return{childAnalyses:t.length};let r=kn(e.length,t.length,K.maxDerivedTokens);if(r>K.maxDerivedTokens)return{childAnalyses:t.length,derivedTokens:r};let o=Pz(e.map((c)=>Rz(c,n))),i=kn(o.occurrences,t.length,K.maxPlaceholderReplacements);if(i>K.maxPlaceholderReplacements)return{childAnalyses:t.length,derivedTokens:r,placeholderReplacements:i};if(wz(o,t,i))return{childAnalyses:t.length,derivedTokens:r,derivedBytes:K.maxDerivedBytes+1,placeholderReplacements:i};let s=n==="generic"?Xt:rd,a=Je(t.map((c)=>Do(e.map((l)=>s(l,c)))),K.maxDerivedBytes);return{childAnalyses:t.length,derivedTokens:r,derivedBytes:a,placeholderReplacements:i}}function wz(e,t,n){let r=K.maxDerivedBytes+4*n;return Je([kn(e.fixedBytes,t.length,r),kn(e.occurrences,Je(t.map((o)=>o.reduce((i,s)=>Math.max(i,Oo(s)),0)),r),r)],r)>r}function Rz(e,t){let n=t==="generic"?e.matchAll(/\{[^{}\s]*\}/g):e.matchAll(I_),r=0,o=0,i=0;for(let s of n){if(r>=K.maxPlaceholderReplacements)return{occurrences:K.maxPlaceholderReplacements+1,fixedBytes:0};o=Je([o,Oo(e.slice(i,s.index))],td),r++,i=s.index+s[0].length}return{occurrences:r,fixedBytes:r===0?Oo(e):Je([o,Oo(e.slice(i))],td)}}function Pz(e){return{occurrences:Je(e.map((t)=>t.occurrences),K.maxPlaceholderReplacements),fixedBytes:Je(e.map((t)=>t.fixedBytes),td)}}function Do(e,t=K.maxDerivedBytes){return Je(e.map(Oo),t)}function Oo(e){return hz.encode(e).byteLength}function Je(e,t){let n=0;for(let r of e){if(!Number.isSafeInteger(r)||r<0||r>t-n)return t+1;n+=r}return n}function kn(e,t,n){if(!Number.isSafeInteger(e)||!Number.isSafeInteger(t)||e<0||t<0||e!==0&&t>Math.floor(n/e))return n+1;return e*t}function L_(e,t,n){let r={};if(e)r.envAssignments=e;if(n)return r.effectiveCwd=null,r.worktreeMode=!1,r;if(t!==void 0)r.effectiveCwd=t;return Object.keys(r).length>0?r:void 0}function Xt(e,t){return e.replace(/\{[^{}\s]*\}/g,(n)=>W_(n,t))}function rd(e,t){return e.replace(I_,(n)=>W_(n,t))}function W_(e,t){let n=/^\{(-?\d+)[^{}\s]*\}$/.exec(e)?.[1];if(n===void 0)return t[0]??"";let r=Number(n),o=r>0?r-1:t.length+r;return t[o]??""}function ne(e){return uz.test(e)}function F_(e){if(id(e))return!0;for(let t of e.matchAll(/\{[^{}\s]*\}/g))if(!/^(?:\{\}|\{-?\d+\})$/.test(t[0]))return!0;return!1}function id(e){let t=e.indexOf("{=");return t!==-1&&e.indexOf("=}",t+2)!==-1}function G_(e){return/^\{[^{}\s]*\}$/.test(e)}function Z_(e){let t=1,n=[],r=e.length,o=-1,i=!1,s=!1,a=!1,c,l=e.some((p)=>p==="::::"||p==="::::+"||p===":::+");while(t<e.length){let p=e[t];if(p===void 0)break;if(p===":::"){o=t;break}if(p==="--"){let A=Du(e,t+1);n.push(...A.templateTokens),r=t+1,o=A.markerIndex;break}if(!p.startsWith("-")){let A=Du(e,t);n.push(...A.templateTokens),r=t,o=A.markerIndex;break}let h=e[t+1],y=p.indexOf("="),b=y===-1?p:p.slice(0,y),R=y===-1?void 0:p.slice(y+1);if(p==="--dry-run"){a=!0,t++;continue}if(p==="-I"||p.startsWith("-I")&&p.length>2){l||=(p==="-I"?h:p.slice(2))!=="{}",t+=p==="-I"?2:1;continue}if(p==="--replace"||p==="-i"){l=!0,t+=2;continue}if(b==="--replace"||p.startsWith("-i")&&p.length>2){let A=b==="--replace"?R:p.slice(2);l||=A!==""&&A!=="{}",t++;continue}if(p==="-a"||pz.has(b)){l=!0,t+=R===void 0?2:1;continue}if(p==="--pipe"||p==="--pipepart"){s=!0,t++;continue}if(b==="--env"){l=!0,t+=R===void 0?2:1;continue}if(E_.has(b)||p.startsWith("-S")&&p.length>2){i=!0,t+=E_.has(p)?2:1;continue}if(gz.has(b)){let A=R??h;if(A===void 0||A===":::"||A==="--"){l=!0,t++;continue}c=A,l||=R!==void 0&&A==="",t+=R===void 0?2:1;continue}if(p.startsWith("-j")&&p.length>2&&/^\d+$/.test(p.slice(2))){t++;continue}if(p.startsWith("--")&&R!==void 0){t++;continue}if(fz.has(p)){if(h===void 0||h===":::"||h==="--"){l=!0,t++;continue}t+=2;continue}t+=p==="-j"||p==="--jobs"?2:1}l||=n.some(a?id:F_);let u=[];if(o!==-1){let p=[];for(let h=o+1;h<e.length;h++){let y=e[h];if(y===":::"){u.push(p),p=[];continue}if(y!==void 0)p.push(y)}u.push(p)}let d=kz(u),m=n.some(ne),f=n.length===0&&o===-1;return{template:n,jobs:d,childStart:r,templateHasPlaceholder:m,runsRemotely:i,usesStdin:s||o===-1,readsCommandsFromInput:f,unsupported:l,workdir:c,dryRun:a}}function Az(e,t,n){if(e===void 0)return;if(e==="..."||/[{}$`*?~[]/.test(e))return null;if(!t&&!az(e))return null;try{return jt(t??e,e,n)}catch{return null}}function kz(e){if(e.length===0||e.some((n)=>n.length===0))return[];let t=[[]];for(let n of e){if(n.length===1){let o=n[0];if(o===void 0)return[];for(let i of t)i.push(o);continue}let r=[];for(let o of t)for(let i of n)if(r.push([...o,i]),r.length>K.maxChildAnalyses)return r;t=r}return t}function j_(e){return Z_(e).childStart}var Tz="dynamic command name contains shell substitution output and cannot be verified safely. Use a literal executable name.",Xs="shell substitution output can change guarded command structure and cannot be verified safely. Use literal subcommands and options.";function ad(e){return e?.parts.some((t)=>t.provenance==="command-substitution")??!1}function sd(e){return e?.parts.some((t)=>t.provenance==="literal"&&t.raw.replace(/^["']/,"").startsWith("-"))??!1}function B_(e,t,n,r,o=!1,i){let a=(po(e,t)||r&&e!=="powershell"&&t[0]?.provenance==="variable")&&de(i,"shell.dynamic-executable",o)?v("shell.dynamic-executable",Tz):null;return z(a,i)??V_(e,t,n,o,i)}function V_(e,t,n,r,o){if(t.length<2)return null;let i=t.flatMap((a,c)=>ad(a)?[c]:[]);if(i.length===0)return null;let s=H(t[0]?.text??"");if(s==="git"){let a=qn(e,t),c=Oz(a);if(de(o,"shell.dynamic-structure",r)&&i.some((d)=>d<=c))return z(v("shell.dynamic-structure",Xs),o);if(z(lr(a,{env:n.env}),o))return null;let l=t[c]?.text.toLowerCase(),u=a.findIndex((d,m)=>m>c&&N(d)==="--");if(de(o,"shell.dynamic-structure",r)&&l&&cr.has(l)&&i.some((d)=>d>c&&(u===-1||d<u)))return z(v("shell.dynamic-structure",Xs),o);return null}if(s==="find")return de(o,"shell.dynamic-structure",r)&&zz(t)?z(v("shell.dynamic-structure",Xs),o):null;if(s==="rm"){let a=t.findIndex((l,u)=>u>0&&N(l)==="--"),c=ct(t.map(N));return de(o,"shell.dynamic-structure",r)&&i.some((l)=>(a===-1||l<a)&&(l<t.length-1||!c))?z(v("shell.dynamic-structure",Xs),o):null}if(s==="xargs")return U_(e,t.slice(Rn(t.map(N)).childStart),"xargs",n,r,o);if(s==="parallel")return U_(e,t.slice(j_(t.map(N))),"parallel",n,r,o);return null}function U_(e,t,n,r,o,i){if(t.length===0)return null;let s=Iz(t,r);if(po(e,s)){let c=z(v(`${n}.shell-dynamic`,n==="xargs"?Xu:No),i);if(c)return c}let a=V_(e,s,r,o,i);if(a)return a;if(s[0]?.text==="rm"&&s.slice(1).some((c)=>ad(c)&&sd(c)))return z(v(`${n}.rm-recursive-force-dynamic`,n==="xargs"?Ju:zo),i);return null}function Iz(e,t){let n=bn(e,t),r=n.rewritten?j(n.words.map(N)):n.words,o=r[0];return o&&N(o)==="busybox"?r.slice(1):r}function Oz(e){let t=1;while(t<e.length){let n=e[t],r=n?N(n):"";if(He.has(r)){t+=2;continue}if(r.startsWith("-")){t++;continue}return t}return t}function zz(e){let t=!1,n=0,r=!1,o=!1;for(let i=1;i<e.length;i++){let s=e[i];if(!s)continue;let a=ad(s);if(n>0){n--;continue}if(o){if(s.text===";"||s.text==="+"){o=!1,t=!0,r=!1;continue}if(a&&(r||sd(s)))return!0;r=!1;continue}if(!t&&!s.text.startsWith("-")){if(a&&(i>1||sd(s)))return!0;continue}if(t=!0,a)return!0;let c=Kt(s.text);if(c>0){n=c;continue}if(Lt(s.text))o=!0,r=!0}return!1}function cd(e,t){return e.some((n)=>{if(n.value==="-"&&(n.kind==="main-script"||n.kind==="program-file"))return!0;return!Zi(t[n.tokenIndex],n.value)})}var Nz="dd writing to a /dev device can destroy a disk or partition. Run device writes manually after confirming the target.",Dz="mkfs formatting a /dev device erases everything on it. Run the format manually after confirming the target.",Mz="shred permanently destroys the given target. Use rm for ordinary deletes, or run shred manually.";function H_(e,t){let n=t.slice(1);if(e==="dd"&&n.some((r)=>/^of=\/dev\/.+/.test(r)))return v("dd.device-write",Nz);if((e==="mkfs"||e.startsWith("mkfs."))&&n.some((r)=>r.startsWith("/dev/")))return v("mkfs.device",Dz);if(e==="shred"&&n.length>0)return v("shred.target",Mz);return null}var q_=[{heads:new Set(["rm","rmdir"]),analyze:(e)=>ur(e.words,{environment:e.options.environment,cwd:e.cwd,originalCwd:e.originalCwd,strict:e.options.strict,paranoid:e.options.paranoidRm,allowTmpdirVar:e.allowTmpdirVar,tmpdirWordSplittingUnsafe:pt(e.envAssignments,e.options.environment),trustedTmpdirValue:Mt(e.envAssignments,e.options.environment),protectedGitMetadata:e.options.protectedGitMetadata,policy:e.options.policy})},{heads:new Set(["git"]),analyze:(e)=>lr(e.words,ld(e))},{heads:new Set(["find"]),analyze:(e)=>js(e.words,{environment:e.options.environment,cwd:e.cwd,originalCwd:e.originalCwd,strict:e.options.strict,allowTmpdirVar:e.allowTmpdirVar,tmpdirWordSplittingUnsafe:pt(e.envAssignments,e.options.environment),trustedTmpdirValue:Mt(e.envAssignments,e.options.environment),protectedGitMetadata:e.options.protectedGitMetadata,derivedCommandWorkBudget:e.options.derivedCommandWorkBudget,envAssignments:e.envAssignments,policy:e.options.policy,analyzeTokens:e.analyzeChildTokens,analyzeNested:(t,n)=>Tn(e.options.analyzeNested(t,n))})},{heads:new Set(["xargs"]),analyze:(e)=>v_(e.words,{...K_(e),analyzeNested:(t,n)=>Tn(e.options.analyzeNested(t,n))})},{heads:new Set(["parallel"]),analyze:(e)=>z_(e.words,{...K_(e),budget:e.options.parallelBudget,analyzeNested:(t,n)=>Tn(e.options.analyzeNested(t,n))})}];function K_(e){return{environment:e.options.environment,cwd:e.cwd,originalCwd:e.originalCwd,strict:e.options.strict,paranoidRm:e.options.paranoidRm,paranoidInterpreters:e.options.paranoidInterpreters,allowTmpdirVar:e.allowTmpdirVar,protectedGitMetadata:e.options.protectedGitMetadata,derivedCommandWorkBudget:e.options.derivedCommandWorkBudget,envAssignments:e.envAssignments,worktreeMode:e.options.worktreeMode,policy:e.options.policy,scanWork:e.options.scanWork}}function Tn(e){return e?{id:e.ruleId??"",reason:e.reason,intent:e.intent??"manual_only"}:null}function ld(e){return{env:e.options.environment.env,cwd:e.cwd,dynamicArguments:e.dynamicArguments,envAssignments:e.envAssignments,policy:e.options.policy,worktreeMode:e.options.worktreeMode}}var Q_="shell execution source cannot be verified safely. Use a literal command string or ask the user to run it manually.";function eS(e){return q_.find((t)=>t.heads.has(e))?.analyze}function Mo(e,t,n){let r=n.trace;if(e.length===0)return null;let o=n.commandView?.dialect??"posix",i=(C)=>C.map((E)=>o==="posix"?N(E):E.text),s=n.effectiveCwd===null,a=s?void 0:n.effectiveCwd??n.cwd,c=s?void 0:n.cwd,l=ms(e);if(l.envAssignments.size>0)r?.recordSegment({type:"env-strip",input:i(e),envVars:[...l.envAssignments.keys()],output:i(l.words)});let u=bn(l.words,n.environment,a,new Map([...n.envAssignments??[],...l.envAssignments])),d=u.envSplitValues??[];if(d.length>0){let C=[...d,...i(u.words)].join(" "),E=Dt(C,n.scanWork);if(E)return r?.recordSegment({type:"dangerous-text",token:C,matched:!0,reason:E.reason}),xt(E);if(n.strict)return Fe(r);let O=fs(d,i(u.words));if(O){et(n.derivedCommandWorkBudget,O.length);let Z=n.analyzeNested(O.join(" "),{effectiveCwd:u.cwd===void 0?n.effectiveCwd:u.cwd,envAssignments:new Map([...n.envAssignments??[],...l.envAssignments,...u.envAssignments])});if(Z)return Z}}let m=u.rewritten?j(i(u.words)):qn(o,u.words),f=i(m),p={...n,wrapperNormalizationBudget:n.wrapperNormalizationBudget??{iterations:0}};if(r&&l.words.length>m.length){let C=i(l.words);r.recordSegment({type:"leading-tokens-stripped",input:C,removed:C.slice(0,C.length-m.length),output:f})}let h=new Map([...n.envAssignments??[],...l.envAssignments,...u.envAssignments]),y=f[0];if(!y)return null;if(Cn(y))throw new De;let b=H(y),R=u.cwd===null?void 0:u.cwd??a,A=u.cwd===null?void 0:c,x=u.cwd===void 0?n.effectiveCwd:u.cwd,P=!lo(h,n.environment),L=B_(o,u.words,n.environment,t===0,n.strict,n.policy);if(L)return r?.recordSegment({type:"rule-check",rule:"analyzer/segment.ts:analyzeDynamicCommandStructure",matched:!0,reason:L.reason}),xt(L);let k=Gs(f,n.policy);if(k){for(let C of[k.childIndex,...k.alternativeChildIndices]){Y_(p.wrapperNormalizationBudget);let E=m.slice(C);r?.recordSegment({type:"transparent-wrapper",wrapper:k.wrapper,output:i(E)});let O=Mo(E,t,{...p,effectiveCwd:x,envAssignments:h});if(O)return O}return null}let U=b==="eval"?dr(m):b==="trap"?u_(m):void 0;if(U?.kind==="dynamic"&&(n.strict||!n.commandView||!qu(n.commandView)))return Fe(r);if(U?.kind==="literal"){r?.recordSegment({type:"recurse",reason:b==="eval"?"shell-eval":"shell-trap",innerCommand:U.source,depth:t+1});let C=n.analyzeNested(U.source,{effectiveCwd:x,envAssignments:h,functionDefinitions:n.functionDefinitions});if(C)return C}if(nS(y,b)){if(Ye(f))return null;let C=$z(f,h,x,n,r,t);if(C)return C;let E=bt(f);if(E){let jn=Vs(m,E);if(jn.kind==="dynamic")return Fe(r);let Sl=jn.kind==="literal"?jn.source:E,Oh=Lz(Sl);r?.recordSegment({type:"shell-wrapper",wrapper:b,innerCommand:Oh}),r?.recordSegment({type:"recurse",reason:"shell-wrapper",innerCommand:Oh,depth:t+1});let zh=n.analyzeNested(Sl,{effectiveCwd:x,envAssignments:h});if(zh)return zh;return mr(Sl)?Fe(r):null}let O=_t(m);if(O.kind==="dynamic")return Fe(r);if(O.kind==="literal")return ta(O.source,x,h,n,r,t);let Z=d_(m,n.commandView?.redirections??[],n.hasPipelineInput??!1,n.literalShellInput);if(Z.kind==="dynamic")return Fe(r);if(Z.kind==="literal")return r?.recordSegment({type:"recurse",reason:"shell-stdin",innerCommand:Z.source,depth:t+1}),n.analyzeNested(Z.source,{effectiveCwd:x,envAssignments:h})}if(b==="source"||b==="."){let C=f[1]==="-p"?2:null;if(C!==null){let jn=n.commandView?m[C]:void 0;if(!jn)return null;if(jn.provenance!=="literal")return Fe(r)}let E=C===null?1:3,O=f[E]==="--"?E+1:E,Z=n.commandView?m[O]:void 0;if(!Z)return null;if(Z.provenance==="literal")return ta(Z.text,x,h,n,r,t);if(n.strict||!n.commandView||!qu(n.commandView))return Fe(r)}if(We.has(b)){if(n.strict&&cd(Ro(f),m))return Fe(r);let C=Fs(f,(O)=>Tn(n.analyzeNested(O,{effectiveCwd:x,envAssignments:h}))),E=z(C,n.policy);if(E)return r?.recordSegment({type:"rule-check",rule:"awk:analyzeAwkSystemCallMatch",matched:!0,reason:E.reason}),xt(E)}if(Me(b)){if(n.strict&&cd(os(f),m))return Fe(r);let C=rs(f);if(C){let E=de(n.policy,"interpreter.one-liner-paranoid",!!n.paranoidInterpreters);if(r?.recordSegment({type:"interpreter",interpreter:b,codeArg:C,paranoidBlocked:E}),E){let Z=z(v("interpreter.one-liner-paranoid",er),n.policy);if(Z)return xt(Z)}if(ss(b,C))return null;r?.recordSegment({type:"recurse",reason:"interpreter",innerCommand:C,depth:t+1});let O=n.analyzeNested(C,{effectiveCwd:x,envAssignments:h});if(O&&O.ruleId!=="raw-text.dangerous-command"&&(O.reason!==Ut||ir(C)))return O;if(tr(C,n.scanWork)){let Z=z(v("interpreter.dangerous-command",yn),n.policy);if(Z)return r?.recordSegment({type:"dangerous-text",token:C,matched:!0,reason:yn}),xt(Z)}r=void 0}}if(b==="busybox"&&f.length>1)return Y_(p.wrapperNormalizationBudget),r?.recordSegment({type:"busybox",subcommand:f[1]??"unknown"}),r?.recordSegment({type:"recurse",reason:"busybox",innerCommand:f.slice(1).join(" "),depth:t+1}),Mo(m.slice(1),t,{...p,effectiveCwd:x,envAssignments:h});let ie=z(H_(b,f),n.policy);if(ie)return r?.recordSegment({type:"rule-check",rule:"analyzer/device.ts:analyzeDeviceCommandMatch",matched:!0,reason:ie.reason}),xt(ie);let se=r===p.trace?p:{...p,trace:r},J={words:m,head:b,cwd:R,originalCwd:A,envAssignments:h,allowTmpdirVar:P,dynamicArguments:u.words.some((C)=>C.provenance==="command-substitution"),depth:t,effectiveCwd:x,options:se,analyzeChildTokens:(C,E)=>Tn(Mo(j(C),t+1,{...se,commandView:void 0,effectiveCwd:E,envAssignments:h}))??be(C,se.policy.rules)},B=eS(b);if(b==="rm"||b==="xargs"||b==="parallel")r?.recordSegment({type:"tmpdir-check",tmpdirValue:h.has("TMPDIR")||n.environment.env.has("TMPDIR")?"<redacted>":null,isOverriddenToNonTemp:!P,allowTmpdirVar:P});let w=r&&b==="git"?Qv(J.words,ld(J)):void 0,T=J_(w?w.match:B?.(J)??null,n.policy);if(r)Wz(J,T,w?.relaxation??null);if(T)return xt(T);let V=B!==void 0;if(!V)if(!ts.has(b)){let C=r?[]:void 0;for(let E=1;E<f.length;E++){let O=f[E];if(!O)continue;C?.push(O);let Z=J_(Fz(J,f,E),n.policy);if(Z)return r?.recordSegment({type:"fallback-scan",tokensScanned:C??[],embeddedCommandFound:H(O)}),xt(Z)}r?.recordSegment({type:"fallback-scan",tokensScanned:C??[]})}else r?.recordSegment({type:"fallback-scan",tokensScanned:[]});else r?.recordSegment({type:"fallback-scan",tokensScanned:[]});if(t===0||!V){let C=be(f,n.policy.rules);if(r?.recordSegment({type:"custom-rules-check",rulesChecked:n.policy.rules.length>0,matched:!!C,reason:C?.reason}),C)return xt(C)}else r?.recordSegment({type:"custom-rules-check",rulesChecked:!1,matched:!1});return null}function $z(e,t,n,r,o,i){let s=i_(e);if(s.argvSource?.kind==="absent")return Fe(o);if(s.argvSourceApplies&&s.argvSource){let c=ta(s.argvSource.value,n,t,r,o,i,!0);if(c)return c}if(!s.envSourceApplies||!s.envName)return null;let a=t.get(s.envName);if(!a)return null;return ta(a,n,t,r,o,i,!0)}function ta(e,t,n,r,o,i,s=!1){if(s&&/[$`*?[\]]/.test(e))return Fe(o);let a=co(e,t,r.environment.paths),c=a?r.literalHeredocFiles?.get(a):void 0;if(c===void 0)return s?Fe(o):null;return et(r.derivedCommandWorkBudget,1),o?.recordSegment({type:"recurse",reason:"heredoc-file",innerCommand:c,depth:i+1}),r.analyzeNested(c,{effectiveCwd:t,envAssignments:n})}function Lz(e){let t=e[0];return e.length>=2&&(t==='"'||t==="'")&&e.at(-1)===t?e.slice(1,-1):e}function Wz(e,t,n){let r={git:"git:analyzeGitMatch",rm:"analyzer/rm.ts:analyzeRmMatch",find:"analyzer/find.ts:analyzeFindMatch",xargs:"analyzer/xargs.ts:analyzeXargs",parallel:"analyzer/parallel.ts:analyzeParallel"}[e.head];if(!r)return;if(e.options.trace?.recordSegment({type:"rule-check",rule:r,matched:!!t||!!n,reason:t?.reason??n?.originalReason}),n)e.options.trace?.recordSegment({type:"worktree-relaxation",originalReason:n.originalReason,gitCwd:n.gitCwd})}function Y_(e){if(e.iterations>=Xn)throw new De;e.iterations++}function xt(e){return{reason:e.reason,ruleId:e.id||void 0,intent:e.intent}}function Fe(e){return e?.recordSegment({type:"error",message:Q_}),xt(tS())}function tS(){return{id:"",reason:Q_,intent:"stop_and_explain"}}function nS(e,t){return me.has(t)||e==="$SHELL"||e==="${SHELL}"||me.has(F(t))}function Fz(e,t,n){let r=at(t.slice(n),{environment:e.options.environment,cwd:e.cwd,envAssignments:e.envAssignments,policy:e.options.policy});for(let o of r){let i=Gz(e,n,o);if(i)return i}return null}function Gz(e,t,n){let r=n.tokens[0];if(!r)return null;let o=H(r);if(nS(r,o)){et(e.options.derivedCommandWorkBudget,e.words.length-t);let c=n.tokens;if(Ye(c))return null;let l=bt(c);if(!l){if(_t(j(c)).kind==="dynamic")return tS();return ea(e,n)}let u=e.options.analyzeNested(l,{effectiveCwd:n.wrapperCwd===void 0?e.effectiveCwd:n.wrapperCwd,envAssignments:n.envAssignments});return u?Tn(u):ea(e,n)}let i=eS(o);if(!i||o==="xargs"||o==="parallel"){if(n.wrappedByTransparent&&e.options.policy.rules.length>0)et(e.options.derivedCommandWorkBudget,e.words.length-t);return ea(e,n)}et(e.options.derivedCommandWorkBudget,e.words.length-t);let s=[o,...n.tokens.slice(1)],a={...e,words:j(s),head:o,cwd:n.cwd,originalCwd:n.wrapperCwd===null?void 0:e.originalCwd,envAssignments:n.envAssignments,allowTmpdirVar:!lo(n.envAssignments,e.options.environment),effectiveCwd:n.wrapperCwd===void 0?e.effectiveCwd:n.wrapperCwd,options:o==="git"?{...e.options,worktreeMode:!1}:e.options};return i(a)??ea(e,n)}function ea(e,t){return t.wrappedByTransparent?be(t.tokens,e.options.policy.rules):null}function J_(e,t){return e?.id.startsWith("custom.")||e?.id==="raw-text.dangerous-command"?e:z(e,t)}var Zz=/^\s*(?:\$\(\s*)?[({]*\s*(?:command\s+|builtin\s+)?(?:cd|pushd|popd)(?:\s|$)/,jz=new Set(["cd","chdir","pop-location","popd","push-location","pushd","set-location","sl"]);function Uz(e,t){let n=iS(e,t);if(n.length===0)return!1;let r=n[oS(n)];if(r==="cd"||r==="pushd"||r==="popd")return!0;return Zz.test(e.join(" "))}function rS(e,t,n,r){if(e.dialect==="powershell"){let a=Bz(e.words,r);if(a.kind==="none")return;if(!t||a.kind==="unknown")return null;return X_(qz(a.target),t,n.paths)}let o=e.words.map(N);if(!Uz(o,n))return;if(!t)return null;let i=iS(o,n,t),s=oS(i);if(s===-1||i[s]!=="cd")return null;return X_(i[s+1],t,n.paths)}function X_(e,t,n){if(!e||e==="-"||e.includes("$")||e.includes("`"))return null;try{return Yz(jt(t,e,n),t,n)?t:null}catch{return null}}function Bz(e,t){let n=Vz(e[0])?1:0,r=e[n];if(!Hz(r,n===1))return{kind:"none"};let o=r.text.toLowerCase(),i=o.split(/[\\/]/).pop()??o;if(!jz.has(i))return{kind:"none"};if(o!==i||i==="pop-location"||i==="popd")return{kind:"unknown"};return Kz(e.slice(n+1),t)}function Vz(e){return e?.provenance==="literal"&&!e.quoted&&e.raw===e.text&&(e.text==="&"||e.text===".")}function Hz(e,t){return e?.provenance==="literal"&&(t||!e.quoted&&e.raw===e.text)}function Kz(e,t){let n;for(let r of e){if(r.provenance!=="literal"||n!==void 0)return{kind:"unknown"};n=r.text}if(n!==void 0)return{kind:"target",target:n};return t===void 0?{kind:"unknown"}:{kind:"target",target:t}}function qz(e){return e.includes("::")?void 0:e.replaceAll("\\","/")}function oS(e){let t=0;if(e[0]==="builtin"&&e.length>1)t=1;if(e[t]!=="time")return t;let n=t+1;while(e[n]?.startsWith("-"))n++;return n}function iS(e,t,n){let r=Jz(e);return Bt([...r],t,n)}function Yz(e,t,n){let r=n.realpath(e),o=n.realpath(t);if(r===null||o===null)return Qs(e)===Qs(t);return Qs(r)===Qs(o)}function Jz(e){let t=0;while(t<e.length){let n=e[t];if(n==="{"||n==="("||n==="$(")t++;else break}return e.slice(t)}var dd="TMPDIR",md="IFS",sS=/^([A-Za-z_][A-Za-z0-9_]*)\+=/,aS=/^[A-Za-z_][A-Za-z0-9_]*$/,cS=new Set(["export","typeset","declare","readonly"]),Xz=new Set(["builtin","command","time"]);function lS(e,t){return{env:e,effectiveEnvAssignments:rN(e,t),shellAssignments:new Map}}function uS(e){return{env:e.env,effectiveEnvAssignments:e.effectiveEnvAssignments?new Map(e.effectiveEnvAssignments):void 0,shellAssignments:new Map(e.shellAssignments)}}function fd(e,t){let n=mS(e,t);n.assignments.filter((s)=>s.persists).forEach((s)=>{t.shellAssignments.set(s.name,s.value),pd(t,s)});let r=n.commandIndex;if(r!==-1&&cS.has(e[r]??""))e.filter((s)=>aS.test(s)&&ud(s)).forEach((s)=>{oN(t,s)});let o=r===-1?-1:fS(e,r);if(o===-1||e[o]!=="unset")return;let i=sN(e,o);if(i===null)return;e.slice(i).forEach((s)=>{iN(t,s)})}function dS(e,t){let n=mS(e,t).assignments;if(n.length===0)return t.effectiveEnvAssignments;let r=new Map(t.effectiveEnvAssignments??[]);return n.forEach((o)=>{r.set(o.name,o.value)}),r}function mS(e,t){let n=e.findIndex((s)=>!Qz(s)),r=n!==-1&&cS.has(e[fS(e,n)]??""),o=nN(t);return{assignments:e.flatMap((s,a)=>{let c=eN(s,o,t.env);if(!c)return[];if(n!==-1&&a>n&&!r&&!Fl(c.name))return[];return o.set(c.name,c.value),[{...c,persists:n===-1||r}]}),commandIndex:n}}function fS(e,t){let n=t;while(Xz.has(e[n]??"")){n+=1;while(e[n]?.startsWith("-")){if(/^-p*[vV][pvV]*$/.test(e[n]??""))return t;n+=1}}return n}function Qz(e){return Ke(e)!==null||sS.test(e)}function eN(e,t,n){return Ke(e)??tN(e,t,n)}function tN(e,t,n){let r=Bi(e,n,t);if(r)return r;let o=e.match(sS)?.[1];if(!o)return null;let i=e.indexOf("=");return{name:o,value:`${t.has(o)?t.get(o):n.get(o)??""}${e.slice(i+1)}`}}function ud(e){return e===dd||e===md||Gl(e)}function nN(e){return new Map([...e.effectiveEnvAssignments??[],...e.shellAssignments])}function rN(e,t){let n=[...ji,dd,md].map((r)=>{let o=e.get(r);return o===void 0?null:[r,o]}).filter((r)=>r!==null);if(n.length===0)return t;return new Map([...n,...t??[]])}function pd(e,t){let n=new Map(e.effectiveEnvAssignments??[]);n.set(t.name,t.value),e.effectiveEnvAssignments=n}function oN(e,t){pd(e,{name:t,value:e.shellAssignments.get(t)??e.effectiveEnvAssignments?.get(t)??e.env.get(t)??""})}function iN(e,t){if(!ud(t)&&!aS.test(t))return;if(e.shellAssignments.set(t,""),!ud(t)||t===dd||t===md||eo(t)){pd(e,{name:t,value:""});return}if(!e.effectiveEnvAssignments?.has(t))return;let n=new Map(e.effectiveEnvAssignments);n.delete(t),e.effectiveEnvAssignments=n.size===0?void 0:n}function sN(e,t){let n=t+1;while(n<e.length){let r=e[n];if(!r)return null;if(r==="--")return n+1;if(r==="-v"){n++;continue}if(r.startsWith("-"))return null;return n}return n}var aN="Unquoted heredoc input is not supported safely. Quote the delimiter or ask the user to verify.",In="This heredoc form or stdin consumer is not supported safely. Use a quoted heredoc with a supported consumer (cat, tee, git apply, git commit, gh pr create, gh issue create), or ask the user to verify.",cN=64;function vd(e,t,n,r){let o=n.derivedCommandWorkBudget===void 0,i=n.parallelBudget===void 0;try{return lN(e,t,{...n,derivedCommandWorkBudget:n.derivedCommandWorkBudget??Qi(),parallelBudget:n.parallelBudget??rb()},r)}catch(s){let a=s instanceof De&&o?Ky:s instanceof ls&&i?nb:void 0;if(!a)throw s;if(n.trace?.currentSegmentIndex!==void 0)n.trace.recordSegment({type:"error",message:a});else n.trace?.recordGlobal({type:"error",message:a});return{reason:a,segment:e,intent:"stop_and_explain"}}}function lN(e,t,n,r){if(t>=es)return n.trace?.recordSegment({type:"error",message:It}),{reason:It,segment:e,intent:"stop_and_explain"};let o=r??n.factStore?.getCommandProgram(e,n.shell??"auto")??rt(e,n.shell);if(o.status==="limited")return n.trace?.recordSegment({type:"error",message:It}),{reason:It,segment:e,intent:"stop_and_explain"};if(o.status==="invalid"){let l=o.issues.find((u)=>u.code.includes("heredoc"));if(l){if(!n.strict)return bd(e,n);let u=`Unsupported heredoc syntax: ${l.message}`;return n.trace?.recordGlobal({type:"error",message:u}),{reason:u,segment:e,intent:"stop_and_explain"}}return vS(e,n),{reason:Ut,segment:e,intent:"stop_and_explain"}}if(n.strict&&o.status==="partial")return vS(e,n),{reason:Ut,segment:e,intent:"stop_and_explain"};if(o.issues.some((l)=>l.code.includes("quote"))&&!n.analyzePartialProgram)return bd(e,n);let s=n.cwd,a=n.effectiveCwd!==void 0?n.effectiveCwd:n.cwd,c=lS(n.environment.env,n.envAssignments);return oa(o,t,{...n,rootProgram:o},s,[{effectiveCwd:a,shellGitContextState:c,literalHeredocFiles:new Map(n.literalHeredocFiles),functionDefinitions:new Map(n.functionDefinitions)}]).result}function oa(e,t,n,r,o){let i=[...o],s,a;for(let[c,l]of e.nodes.entries()){if(l.kind==="connector"){a=l.operator;continue}let u=e.nodes[c+1],d=u?.kind==="connector"?u.operator:void 0,m=uN(e,c,l,a,d),f=a==="&&"||a==="||",p=f?s:void 0,h=a==="&&"?p?.success??i:a==="||"?p?.failure??i:i,y=a==="||"?p?.success??[]:[],b=a==="&&"?p?.failure??[]:[],R=f||pr(d);if(l.kind==="function"){let ie=h.flatMap((J)=>{let B=$o(J);return B.functionDefinitions.set(l.name,l.body),gd(J,[B],m,d==="&",pr(d))}),se=hd(ie,[],y,b,a,d);i=se.states,s=se.conditionalStates,a=void 0;continue}if(l.kind==="group"){let ie=[],se=[];for(let B of h){let w=oa(l.body,t,n,r,[$o(B)]);if(w.result)return w;if(ie.push(...gd(B,w.states,m,d==="&",pr(d))),R)se.push(B,...m?w.states.map((T)=>na(B,T)):w.states)}let J=hd(ie,se,y,b,a,d);i=J.states,s=J.conditionalStates,a=void 0;continue}if(l.kind!=="command")continue;let A=n.trace?.flattenNested?n.trace.currentSegmentIndex:n.trace?.allocateSegment(),x=e.nodes[c-2],P=ia(a)&&x?.kind==="command"?l_(x)??mN(x):void 0,L=[],k=[];for(let ie of h){let se=fN(l,t,n,r,[$o(ie)]);if(se.result)return{result:se.result,states:i};let J=e.dialect==="powershell"?se.states:se.states.map((B)=>na(ie,B));for(let B of J){let w=$o(B),T=hN(l,t,n.trace?{...n,trace:_S(n.trace,A)}:n,r,w,ia(a),P);if(T)return{result:T,states:i};let V=kN(l,w.functionDefinitions);if(V)et(n.derivedCommandWorkBudget,sa(V));let C=V?t+1>=es?yd(l.displayText,n,[w]):oa(V,t+1,n,r,[w]):{result:null,states:[w]};if(C.result)return C;if(L.push(...gd(ie,C.states,m,d==="&",pr(d))),R)k.push(ie),k.push(...C.states.map((E)=>m?na(ie,E):E))}}let U=hd(L,k,y,b,a,d);i=U.states,s=U.conditionalStates,a=void 0}return{result:null,states:i}}function uN(e,t,n,r,o){if(n.kind==="group"&&n.style==="subshell")return!0;if(e.dialect==="posix"&&(ia(r)||ia(o)))return!0;if(o==="&")return!0;return e.dialect==="powershell"&&n.kind==="group"&&n.style==="brace"&&dN(e,t)}function gd(e,t,n,r,o){let i=n?t.map((a)=>na(e,a)):[...t],s=o?i.flatMap((a)=>Lo(e.literalHeredocFiles,a.literalHeredocFiles)?[a]:[{...a,literalHeredocFiles:new Map(e.literalHeredocFiles)},a]):i;return r?[e,...s]:s}function na(e,t){return{...e,literalHeredocFiles:new Map(t.literalHeredocFiles)}}function dN(e,t){let n=[...e.nodes.slice(0,t)].reverse().find((o)=>o.kind==="command"||o.kind==="connector");if(!n||n.kind!=="command")return!0;let r=n.words[0]?.text.toLowerCase();if(r==="&"||r===".")return!1;if(r==="write-output"||r==="function"||r==="start-job")return!0;if(pN(n))return!0;return n.source.replaceAll(/\s/g,"").toLowerCase()==="if($false)"}function ia(e){return e==="|"||e==="|&"}function mN(e){if(e?.dialect!=="powershell")return;if(e.words.length===1&&e.words[0]?.quoted&&e.words[0].provenance==="literal")return e.words[0].text;if(e.words[0]?.text.toLowerCase()==="write-output"&&e.words.length===2&&e.words[1]?.provenance==="literal")return e.words[1].text;return}function pr(e){return e==="&&"||e==="||"}function hd(e,t,n,r,o,i){let s={success:ra([...n,...e]),failure:ra([...r,...t])},a=pr(i)?s:void 0;return{states:pr(o)||a?ra([...s.success,...s.failure]):s.success,conditionalStates:a}}function _S(e,t,n=e.flattenNested){return{currentSegmentIndex:t,flattenNested:n,allocateSegment:e.allocateSegment,getNextSegmentIndex:e.getNextSegmentIndex,recordGlobal:e.recordGlobal,recordSegment:(r,o=t)=>e.recordSegment(r,o)}}function fN(e,t,n,r,o){let i=e.nested.map((s)=>({program:s,depth:t}));if(e.dialect==="powershell"){let s=gN(e);if(s){if(t+1>=es)return yd(s,n,o);let a=rt(s,"powershell");if(a.status==="limited")return yd(s,n,o);if(a.status!=="complete")return pS(i,n,r,o);et(n.derivedCommandWorkBudget,sa(a)),i.push({program:a,depth:t+1})}}return pS(i,n,r,o)}function pN(e){let t=e.words[0];return t?.provenance==="variable"&&e.words.at(-1)?.text==="="?t.text.toLowerCase():void 0}function pS(e,t,n,r){let o=[...r];for(let i of e){let s=[];for(let a of o){let c=oa(i.program,i.depth,t,n,[$o(a)]);if(c.result)return c;s.push(...c.states)}o=ra(s)}return{result:null,states:o}}function gN(e){let t=e.words[0]?.provenance==="literal"&&!e.words[0].quoted&&e.words[0].raw===e.words[0].text&&(e.words[0].text==="&"||e.words[0].text==="."),n=t?1:0,r=e.words[n];if(r?.provenance!=="literal"||!t&&(r.quoted||r.raw!==r.text)||!["iex","invoke-expression"].includes(r.text.toLowerCase()))return;let o=e.words.slice(n+1),i=o[0]&&!o[0].quoted&&o[0].raw===o[0].text&&["-c","-command"].includes(o[0].text.toLowerCase())?1:0,s=o[i];return o.length===i+1&&s?.quoted&&s.provenance==="literal"?s.text:void 0}function sa(e){return e.nodes.reduce((t,n)=>t+(n.kind==="command"?n.words.length+n.nested.reduce((r,o)=>r+sa(o),0):n.kind==="group"||n.kind==="function"?sa(n.body):0),0)}function yd(e,t,n){return t.trace?.recordSegment({type:"error",message:It}),{result:{reason:It,segment:e,intent:"stop_and_explain"},states:[...n]}}function hN(e,t,n,r,o,i,s){let a=CN(e);if(a&&n.strict)return n.trace?.recordSegment({type:"error",message:a}),{reason:a,segment:e.source,intent:"stop_and_explain"};SS(e,o,"before-consumer",n.environment.paths);let c=qn(e.dialect,e.words).map(N),l=e.displayText,u=dS(c,o.shellGitContextState);if(e.dialect==="powershell"){let f=z(kv(e,i,IN(n,o.effectiveCwd)),n.policy);if(n.trace?.recordSegment({type:"rule-check",rule:"analyzer/powershell/remove-item.ts:analyzePowerShellCommandViewMatch",matched:!!f,reason:f?.reason}),f)return TN(l,f)}if(c.length===1&&c[0]?.includes(" ")&&!po(e.dialect,e.words)){let f=z(Dt(c[0],n.scanWork),n.policy),p=f!==null&&!n.strict&&By(e,n.rootProgram,n.scanWork);if(f&&!p)return n.trace?.recordSegment({type:"dangerous-text",token:c[0],matched:!0,reason:f.reason}),{reason:f.reason,segment:l,ruleId:f.id,intent:f.intent};n.trace?.recordSegment({type:"dangerous-text",token:c[0],matched:!1});let h=gS(e,a,o,u,s,n);if(h)return h;return fd(c,o.shellGitContextState),null}let d=Mo(e.words,t,{...n,commandView:e,cwd:r,effectiveCwd:o.effectiveCwd,envAssignments:u,literalHeredocFiles:o.literalHeredocFiles,functionDefinitions:o.functionDefinitions,hasPipelineInput:i,literalShellInput:s,analyzeNested:(f,p)=>{let h=p&&Object.hasOwn(p,"effectiveCwd")?p.effectiveCwd:o.effectiveCwd,y=vd(f,t+1,{...n,derivedCommandWorkBudget:n.derivedCommandWorkBudget,effectiveCwd:h,envAssignments:p?.envAssignments??u,literalHeredocFiles:o.literalHeredocFiles,functionDefinitions:p?.functionDefinitions,worktreeMode:p?.worktreeMode??n.worktreeMode,trace:n.trace?_S(n.trace,n.trace.currentSegmentIndex,!0):void 0});return y?{reason:y.reason,ruleId:y.ruleId,intent:y.intent}:null}});if(d)return{...d,segment:l};let m=gS(e,a,o,u,s,n);if(m)return m;return fd(c,o.shellGitContextState),null}function gS(e,t,n,r,o,i){let s=EN(e,t,n,r??new Map,i);if(s)return s;return SS(e,n,"after-consumer",i.environment.paths),n.literalHeredocFiles.clear(),vN(e,t,n,i.environment.paths),PN(e,n,o,i.environment,i.trace),null}var yN=new Set([">>","<>"]);function SS(e,t,n,r){for(let i of e.redirections){if(!(n==="before-consumer"?bN(i):yN.has(i.operator)))continue;hS(i.target,t,r)}if(n!=="before-consumer"||!Ge(e.words[0],"tee"))return;let o=xS(e.words.slice(1));if(!o)return;for(let i of o.operands)hS(i,t,r)}function bN(e){if(e.operator===">"||e.operator===">|")return!0;return e.operator===">&"&&e.fd===void 0&&e.target?.provenance==="literal"&&!/^(?:[0-9]+|-)$/.test(e.target.text)}function hS(e,t,n){let r=e?.provenance==="literal"?co(e.text,t.effectiveCwd,n):void 0;if(!r)return;t.literalHeredocFiles.delete(r)}function vN(e,t,n,r){if(t)return;let o=e.redirections.find((i)=>i.operator==="<<"||i.operator==="<<-")?.heredoc;if(!o||!aa(o))return;for(let i of _N(e)){let s=co(i.text,n.effectiveCwd,r);if(!s||!Jy(s))continue;if(!n.literalHeredocFiles.has(s)&&n.literalHeredocFiles.size>=Yy)throw new De;n.literalHeredocFiles.set(s,o.body)}}function _N(e){let t=xN(e.redirections)?.target,n=yS(t)?[t]:[];if(Ge(e.words[0],"cat"))return SN(e.words)?n:[];if(!Ge(e.words[0],"tee"))return[];let r=xS(e.words.slice(1));if(!r||r.append||r.hasUnsupportedOptions||!r.operands.every(yS))return[];return[...r.operands,...n]}function SN(e){let t=!1;for(let n of e.slice(1)){if(t||n.provenance!=="literal")return!1;if(n.text==="--"){t=!0;continue}if(!/^-u+$/.test(n.text))return!1}return!0}function xN(e){let t=e.findLast((n)=>(n.fd??([">",">|",">>",">&"].includes(n.operator)?1:0))===1);return t?.operator===">"||t?.operator===">|"?t:void 0}function xS(e){let t=[],n=!0,r=!1,o=!1;for(let i of e){if(i.provenance!=="literal")return;if(n&&Ge(i,"--")){n=!1;continue}if(n&&!i.quoted&&i.raw===i.text&&/^-[^-]/.test(i.text)){r||=i.text.slice(1).includes("a"),o||=[...i.text.slice(1)].some((s)=>s!=="a"&&s!=="i");continue}if(n&&!i.quoted&&i.raw===i.text&&i.text.startsWith("--")){r||=i.text==="--append",o||=i.text!=="--append"&&i.text!=="--ignore-interrupts";continue}t.push(i)}return{operands:t,append:r,hasUnsupportedOptions:o}}function yS(e){if(!e||e.provenance!=="literal"||e.text.length===0)return!1;if(e.quoted||e.raw!==e.text)return!0;return!e.raw.startsWith("~")&&!/[{}]/.test(e.raw)}function Ge(e,t){return e?.text===t&&e.raw===t&&e.provenance==="literal"&&!e.quoted}function aa(e){return e.quotedDelimiter||!/[$`\\]/.test(e.body)}function CN(e){let t=e.redirections.filter((s)=>s.operator==="<<"||s.operator==="<<-");if(t.length===0)return;if(t.length!==1)return In;let n=t[0];if(!n?.heredoc)return In;if(!aa(n.heredoc))return aN;if(n.fd!==void 0&&n.fd!==0)return In;if(e.redirections.some((s)=>s!==n&&["<","<<","<<-","<<<","<&","<>"].includes(s.operator)))return In;let r=e.redirections.some((s)=>s!==n&&bS(s.target));if(Ge(e.words[0],"cat"))return r?In:void 0;if(Ge(e.words[0],"tee"))return r||e.words.slice(1).some(bS)?In:void 0;let o=e.words[0],i=e.words[1];if(Ge(o,"git")&&(Ge(i,"apply")||Ge(i,"commit")))return;if(Ge(o,"gh")&&(Ge(i,"pr")||Ge(i,"issue"))&&Ge(e.words[2],"create"))return;return In}function bS(e){return e?.parts.some((t)=>t.provenance==="command-substitution"&&t.raw.startsWith(">("))??!1}function EN(e,t,n,r,o){if(!t)return null;let i=e.redirections.filter((l)=>l.operator==="<<"||l.operator==="<<-"),s=i.flatMap((l)=>l.heredoc?[l.heredoc.body]:[]);if(RN(e,i,n,r,o))return null;let a=wN(e,i,o);if(a!==void 0)return a?{reason:a.reason,segment:e.displayText,ruleId:a.id,intent:a.intent}:null;let c=bd(s.length===i.length?s.join(`
|
|
61
|
+
`):e.source,o);return c?{...c,segment:e.displayText}:null}function wN(e,t,n){let r=t.length===1?t[0]:void 0;if(!r?.heredoc||!aa(r.heredoc)||r.fd!==void 0&&r.fd!==0)return;let o=e.words[0];if(o?.provenance!=="literal"||!Me(o.text))return;if(!e.words.slice(1).every((l)=>l.provenance==="literal"&&l.text.startsWith("-")))return;let s=r.heredoc.body,a=de(n.policy,"interpreter.one-liner-paranoid",!!n.paranoidInterpreters);if(n.trace?.recordSegment({type:"interpreter",interpreter:o.text,codeArg:s,paranoidBlocked:a}),a){let l=z(v("interpreter.one-liner-paranoid",er),n.policy);if(l)return l}if(!tr(s,n.scanWork))return null;let c=z(v("interpreter.dangerous-command",yn),n.policy);if(!c)return null;return n.trace?.recordSegment({type:"dangerous-text",token:s,matched:!0,reason:c.reason}),c}function RN(e,t,n,r,o){let i=t.length===1?t[0]:void 0;if(!i?.heredoc||!aa(i.heredoc)||i.fd!==void 0&&i.fd!==0)return!1;let s=bn(e.words,o.environment,n.effectiveCwd,r),a=s.words.map(N),c=H(a[0]??"");if((s.envSplitValues?.length??0)>0||!me.has(c)&&!me.has(F(c)))return!1;return Ye(a)}function PN(e,t,n,r,o){let i=rS(e,t.effectiveCwd,r,n);if(i===null)o?.recordSegment({type:"cwd-change",segment:e.words.map(N).join(" "),effectiveCwdNowUnknown:!0});if(i!==void 0)t.effectiveCwd=i}function $o(e){return{effectiveCwd:e.effectiveCwd,shellGitContextState:uS(e.shellGitContextState),literalHeredocFiles:new Map(e.literalHeredocFiles),functionDefinitions:new Map(e.functionDefinitions)}}function ra(e){let t=[];for(let n of e){if(!t.some((r)=>AN(r,n)))t.push(n);if(t.length>cN)throw new De}return t}function AN(e,t){return e.effectiveCwd===t.effectiveCwd&&Lo(e.literalHeredocFiles,t.literalHeredocFiles)&&Lo(e.functionDefinitions,t.functionDefinitions)&&Lo(e.shellGitContextState.effectiveEnvAssignments,t.shellGitContextState.effectiveEnvAssignments)&&Lo(e.shellGitContextState.shellAssignments,t.shellGitContextState.shellAssignments)}function Lo(e,t){if(e===t)return!0;if(!e||!t||e.size!==t.size)return!1;return[...e].every(([n,r])=>t.get(n)===r&&t.has(n))}function kN(e,t){let n=Rs(e);return n===void 0?void 0:t.get(n)}function TN(e,t){if(!t)return null;return{reason:t.reason,segment:e,ruleId:t.id,intent:t.intent}}function IN(e,t=e.effectiveCwd){let n=t===null;return{environment:e.environment,cwd:n?void 0:t??e.cwd,originalCwd:n?void 0:e.cwd,strict:e.strict,paranoid:e.paranoidRm,allowTmpdirVar:e.allowTmpdirVar,protectedGitMetadata:e.protectedGitMetadata,policy:e.policy}}function bd(e,t){let n=z(Dt(e,t.scanWork),t.policy),r=t.trace?.currentSegmentIndex??t.trace?.allocateSegment(),o={type:"dangerous-text",token:e,matched:!!n,reason:n?.reason};if(t.trace?.recordSegment(o,r),!n&&/^(?:cd|pushd)\s/.test(e))t.trace?.recordSegment({type:"cwd-change",segment:e,effectiveCwdNowUnknown:!0},r);return n?{reason:n.reason,segment:e,ruleId:n.id,intent:n.intent}:null}function vS(e,t){let n={type:"strict-unparseable",rawCommand:e,reason:Ut};if(t.trace?.currentSegmentIndex===void 0)t.trace?.recordGlobal(n);else t.trace.recordSegment(n)}var Wo=["fail_closed","paranoid_rm","paranoid_interpreters"],ca={standard:{fail_closed:!1,paranoid_rm:!1,paranoid_interpreters:!1},strict:{fail_closed:!0,paranoid_rm:!1,paranoid_interpreters:!1},paranoid:{fail_closed:!0,paranoid_rm:!0,paranoid_interpreters:!0}};var fe={level:{name:"CC_SAFETY_NET_LEVEL"},strict:{name:"CC_SAFETY_NET_STRICT",legacyName:"SAFETY_NET_STRICT"},paranoid:{name:"CC_SAFETY_NET_PARANOID",legacyName:"SAFETY_NET_PARANOID"},paranoidRm:{name:"CC_SAFETY_NET_PARANOID_RM",legacyName:"SAFETY_NET_PARANOID_RM"},paranoidInterpreters:{name:"CC_SAFETY_NET_PARANOID_INTERPRETERS",legacyName:"SAFETY_NET_PARANOID_INTERPRETERS"},worktree:{name:"CC_SAFETY_NET_WORKTREE",legacyName:"SAFETY_NET_WORKTREE"},debug:{name:"CC_SAFETY_NET_DEBUG"},auditScope:{name:"CC_SAFETY_NET_AUDIT_SCOPE"}},la=["standard","strict","paranoid"];function ON(e,t){if(!t)return e;return la.indexOf(t)>la.indexOf(e)?t:e}function zN(){let e=Ed(fe.level);if(e===void 0||e==="")return;if(la.includes(e))return e;console.error(`CC Safety Net: ignored invalid ${fe.level.name}=${JSON.stringify(e.slice(0,40))}. Use ${la.join(", ")}.`);return}function NN(e){if(e===void 0||e==="all")return"all";if(e==="blocked")return"blocked";return"invalid"}function Sd(){return NN(Ed(fe.auditScope))==="all"}function xd(e){if(e.failClosed&&e.paranoidRm&&e.paranoidInterpreters)return"paranoid";if(e.failClosed&&!e.paranoidRm&&!e.paranoidInterpreters)return"strict";if(!e.failClosed&&!e.paranoidRm&&!e.paranoidInterpreters)return"standard";return"custom"}function Cd(e={}){let t=e.safety?.level??"standard",n=zN(),r=ON(t,n),o=ca[r],i={failClosed:o.fail_closed,paranoidRm:o.paranoid_rm,paranoidInterpreters:o.paranoid_interpreters},s={failClosed:r===t?"preset":"environment",paranoidRm:r===t?"preset":"environment",paranoidInterpreters:r===t?"preset":"environment"},a={failClosed:[`policy safety.level=${t}`],paranoidRm:[`policy safety.level=${t}`],paranoidInterpreters:[`policy safety.level=${t}`]};if(r!==t)a.failClosed.push(`env ${fe.level.name}=${n}`),a.paranoidRm.push(`env ${fe.level.name}=${n}`),a.paranoidInterpreters.push(`env ${fe.level.name}=${n}`);if(e.safety?.overrides?.failClosed!==void 0)i.failClosed=e.safety.overrides.failClosed,s.failClosed="capability_override",a.failClosed.push("policy safety.overrides.fail_closed");if(e.safety?.overrides?.paranoidRm!==void 0)i.paranoidRm=e.safety.overrides.paranoidRm,s.paranoidRm="capability_override",a.paranoidRm.push("policy safety.overrides.paranoid_rm");if(e.safety?.overrides?.paranoidInterpreters!==void 0)i.paranoidInterpreters=e.safety.overrides.paranoidInterpreters,s.paranoidInterpreters="capability_override",a.paranoidInterpreters.push("policy safety.overrides.paranoid_interpreters");if(Qt(fe.strict))i.failClosed=!0,s.failClosed="environment",a.failClosed.push(`env ${fe.strict.name}`);if(Qt(fe.paranoid))i.paranoidRm=!0,i.paranoidInterpreters=!0,s.paranoidRm="environment",s.paranoidInterpreters="environment",a.paranoidRm.push(`env ${fe.paranoid.name}`),a.paranoidInterpreters.push(`env ${fe.paranoid.name}`);if(Qt(fe.paranoidRm))i.paranoidRm=!0,s.paranoidRm="environment",a.paranoidRm.push(`env ${fe.paranoidRm.name}`);if(Qt(fe.paranoidInterpreters))i.paranoidInterpreters=!0,s.paranoidInterpreters="environment",a.paranoidInterpreters.push(`env ${fe.paranoidInterpreters.name}`);let c=!!e.worktreeMode||Qt(fe.worktree);return{strict:i.failClosed,paranoidRm:i.paranoidRm,paranoidInterpreters:i.paranoidInterpreters,worktreeMode:c,effectiveLevel:xd(i),capabilities:{fail_closed:{enabled:i.failClosed,source:s.failClosed,sources:a.failClosed},paranoid_rm:{enabled:i.paranoidRm,source:s.paranoidRm,sources:a.paranoidRm},paranoid_interpreters:{enabled:i.paranoidInterpreters,source:s.paranoidInterpreters,sources:a.paranoidInterpreters}}}}function Qt(e){let t=typeof e==="string"?_d(e):Ed(e);return t==="1"||t?.toLowerCase()==="true"}function _d(e){return Object.hasOwn(process.env,e)?process.env[e]:void 0}function Ed(e){let t=_d(e.name);if(t!==void 0)return t;if(e.legacyName)return _d(e.legacyName);return}function CS(e){let t=e.effectiveCapabilities,n=e.strict??t.fail_closed.enabled,r=e.paranoidRm??t.paranoid_rm.enabled,o=e.paranoidInterpreters??t.paranoid_interpreters.enabled,i={fail_closed:wd(t.fail_closed,e.strict,"strict"),paranoid_rm:wd(t.paranoid_rm,e.paranoidRm,"paranoidRm"),paranoid_interpreters:wd(t.paranoid_interpreters,e.paranoidInterpreters,"paranoidInterpreters")};return{policy:jy(e.policySnapshot.policy,i),effectiveCapabilities:i,effectiveLevel:xd({failClosed:n,paranoidRm:r,paranoidInterpreters:o}),strict:n,paranoidRm:r,paranoidInterpreters:o,worktreeMode:e.worktreeMode??!1}}function wd(e,t,n){if(t===void 0||t===e.enabled)return e;return{enabled:t,source:"capability_override",sources:[...e.sources,`analysis options.${n}`]}}function ES(e,t,n,r){let o=vd(e,0,{...t,...CS(t),factStore:r},n);if(!o)return null;return{kind:"deny",reason:o.reason,intent:o.intent??"manual_only",...o.ruleId?{ruleId:o.ruleId}:{},evidence:[{kind:"command",command:e,segment:o.segment}]}}var DN=new Set(["src/cli/cc-safety-net.ts","dist/bin/cc-safety-net.js"]),Pd=new Set(["cc-safety-net","ccsn"]),MN=new Set(["bunx","npx","pnpx"]),$N=new Set(["pnpm","yarn"]),LN=new Set(["npm","pnpm","yarn"]),WN=new Set(["bun","node"]);function da(e,t,n={}){if(Pd.has(e))return 0;if(MN.has(e)){if(n.broad)return Rd(t);let o=t[0]==="-y"||t[0]==="--yes"?1:0;return ua(t[o])?o+1:null}let r=n.broad?t.findIndex((o)=>!o.startsWith("-")):0;if(r!==-1&&LN.has(e)&&n.broad&&t[r]==="exec"){let o=Rd(t.slice(r+1));return o===null?null:r+1+o}if($N.has(e)){if(e==="yarn"&&!n.broad)return null;if(!n.broad)return t[0]==="dlx"&&ua(t[1])?2:null;if(r===-1||t[r]!=="dlx")return null;let o=Rd(t.slice(r+1));return o===null?null:r+1+o}if(WN.has(e)){let o=n.broad&&r!==-1?r:0;if(wS(t[o]))return o+1;if(e==="bun"&&t[o]==="run"&&wS(t[o+1]))return o+2}return null}function Rd(e){let t=e.findIndex((r)=>ua(r));if(t===-1)return null;let n=t;while(n<e.length){let r=e[n]??"";if(!r.startsWith("-")&&!ua(r))break;n++}return n}function ua(e){if(!e)return!1;let t=e.indexOf("@");if(t===-1)return Pd.has(e);if(t===0)return!1;let n=e.slice(t+1);if(n===""||n.includes("/")||n.includes(":"))return!1;return Pd.has(e.slice(0,t))}function wS(e){let t=e?.replaceAll("\\","/");return[...DN].some((n)=>t===n||t?.endsWith(`/${n}`))}function gr(e,t,n,r,o){if(n.kind!=="command")return{toolName:e,input:t,route:n,context:r};return{toolName:e,input:t,route:n,context:r,command:o}}var RS="Only the user may apply a policy proposal, because it rewrites the configuration CC Safety Net enforces. Ask them to run `cc-safety-net policy apply <file>` themselves in a terminal; you can run `cc-safety-net policy check <file>` to show them what it would change.";function PS(e){let t=xe(e,"input-candidate");if(!t)return null;let n=Ot(Qe()),r=sr(t.shell,e.invocation.context.executionCwd,n,{findSegmentTarget:(o)=>GN(o,n.environment),isRedirectionTarget:()=>!1,findMalformedTarget:()=>null,normalizeCwd:ye});return r?{target:r}:null}function GN(e,t){let n=Bt([...e],t),r=n.slice(1),o=da(F(n[0]??"").toLowerCase(),r,{broad:!0});if(o===null)return null;let i=r.slice(o).filter((s)=>s!=="-g"&&s!=="--global");return i[0]==="policy"&&i[1]==="apply"?n.join(" "):null}import{dirname as hl}from"path";import{chmodSync as PB,existsSync as K0,mkdirSync as AB,readFileSync as q0}from"fs";import{dirname as Y0,join as J0}from"path";import{createRequire as D0}from"module";var dh={};ln(dh,{$brand:()=>fa,$input:()=>Ua,$output:()=>ja,NEVER:()=>ma,TimePrecision:()=>dc,ZodAny:()=>wg,ZodArray:()=>kg,ZodBase64:()=>Kc,ZodBase64URL:()=>qc,ZodBigInt:()=>Kr,ZodBigIntFormat:()=>Xc,ZodBoolean:()=>Hr,ZodCIDRv4:()=>Vc,ZodCIDRv6:()=>Hc,ZodCUID:()=>Wc,ZodCUID2:()=>Fc,ZodCatch:()=>Jg,ZodCodec:()=>sl,ZodCustom:()=>_i,ZodCustomStringFormat:()=>Br,ZodDate:()=>gi,ZodDefault:()=>Bg,ZodDiscriminatedUnion:()=>Ig,ZodE164:()=>Yc,ZodEmail:()=>Mc,ZodEmoji:()=>$c,ZodEnum:()=>jr,ZodError:()=>ax,ZodExactOptional:()=>Zg,ZodFile:()=>Fg,ZodFirstPartyTypeKind:()=>al,ZodFunction:()=>sh,ZodGUID:()=>ui,ZodIPv4:()=>Uc,ZodIPv6:()=>Bc,ZodISODate:()=>si,ZodISODateTime:()=>ii,ZodISODuration:()=>ci,ZodISOTime:()=>ai,ZodIntersection:()=>Og,ZodIssueCode:()=>xC,ZodJWT:()=>Jc,ZodKSUID:()=>jc,ZodLazy:()=>rh,ZodLiteral:()=>Wg,ZodMAC:()=>bg,ZodMap:()=>$g,ZodNaN:()=>Qg,ZodNanoID:()=>Lc,ZodNever:()=>Pg,ZodNonOptional:()=>ol,ZodNull:()=>Cg,ZodNullable:()=>Ug,ZodNumber:()=>Vr,ZodNumberFormat:()=>Fn,ZodObject:()=>yi,ZodOptional:()=>rl,ZodPipe:()=>il,ZodPrefault:()=>Hg,ZodPromise:()=>ih,ZodReadonly:()=>eh,ZodRealError:()=>we,ZodRecord:()=>vi,ZodSet:()=>Lg,ZodString:()=>Ur,ZodStringFormat:()=>Y,ZodSuccess:()=>Yg,ZodSymbol:()=>Sg,ZodTemplateLiteral:()=>nh,ZodTransform:()=>Gg,ZodTuple:()=>Ng,ZodType:()=>M,ZodULID:()=>Gc,ZodURL:()=>pi,ZodUUID:()=>At,ZodUndefined:()=>xg,ZodUnion:()=>bi,ZodUnknown:()=>Rg,ZodVoid:()=>Ag,ZodXID:()=>Zc,ZodXor:()=>Tg,_ZodString:()=>Dc,_default:()=>Vg,_function:()=>fC,any:()=>Bx,array:()=>hi,base64:()=>Ax,base64url:()=>kx,bigint:()=>Fx,boolean:()=>_g,catch:()=>Xg,check:()=>pC,cidrv4:()=>Rx,cidrv6:()=>Px,clone:()=>ve,codec:()=>uC,coerce:()=>cl,config:()=>le,core:()=>Pt,cuid:()=>bx,cuid2:()=>vx,custom:()=>gC,date:()=>Hx,decode:()=>Rc,decodeAsync:()=>Ac,default:()=>T0,describe:()=>hC,discriminatedUnion:()=>Qx,e164:()=>Tx,email:()=>cx,emoji:()=>hx,encode:()=>wc,encodeAsync:()=>Pc,endsWith:()=>Ir,enum:()=>tl,exactOptional:()=>jg,file:()=>sC,flattenError:()=>vr,float32:()=>Mx,float64:()=>$x,formatError:()=>_r,fromJSONSchema:()=>uh,function:()=>fC,getErrorMap:()=>EC,globalRegistry:()=>Oe,gt:()=>wt,gte:()=>Ee,guid:()=>lx,hash:()=>Dx,hex:()=>Nx,hostname:()=>zx,httpUrl:()=>gx,includes:()=>kr,instanceof:()=>bC,int:()=>Nc,int32:()=>Lx,int64:()=>Gx,intersection:()=>zg,ipv4:()=>Cx,ipv6:()=>wx,iso:()=>li,json:()=>_C,jwt:()=>Ix,keyof:()=>Kx,ksuid:()=>xx,lazy:()=>oh,length:()=>Ln,literal:()=>iC,locales:()=>ei,looseObject:()=>Jx,looseRecord:()=>tC,lowercase:()=>Pr,lt:()=>Et,lte:()=>Ue,mac:()=>Ex,map:()=>nC,maxLength:()=>$n,maxSize:()=>sn,meta:()=>yC,mime:()=>Or,minLength:()=>Ft,minSize:()=>Rt,multipleOf:()=>on,nan:()=>lC,nanoid:()=>yx,nativeEnum:()=>oC,negative:()=>fc,never:()=>Qc,nonnegative:()=>gc,nonoptional:()=>qg,nonpositive:()=>pc,normalize:()=>zr,null:()=>Eg,nullable:()=>mi,nullish:()=>aC,number:()=>vg,object:()=>qx,optional:()=>di,overwrite:()=>ut,parse:()=>Sc,parseAsync:()=>xc,partialRecord:()=>eC,pipe:()=>fi,positive:()=>mc,prefault:()=>Kg,preprocess:()=>SC,prettifyError:()=>va,promise:()=>mC,property:()=>hc,readonly:()=>th,record:()=>Mg,refine:()=>ah,regex:()=>Rr,regexes:()=>je,registry:()=>ti,safeDecode:()=>Tc,safeDecodeAsync:()=>Oc,safeEncode:()=>kc,safeEncodeAsync:()=>Ic,safeParse:()=>Cc,safeParseAsync:()=>Ec,set:()=>rC,setErrorMap:()=>CC,size:()=>Mn,slugify:()=>$r,startsWith:()=>Tr,strictObject:()=>Yx,string:()=>zc,stringFormat:()=>Ox,stringbool:()=>vC,success:()=>cC,superRefine:()=>ch,symbol:()=>jx,templateLiteral:()=>dC,toJSONSchema:()=>oi,toLowerCase:()=>Dr,toUpperCase:()=>Mr,transform:()=>nl,treeifyError:()=>ba,trim:()=>Nr,tuple:()=>Dg,uint32:()=>Wx,uint64:()=>Zx,ulid:()=>_x,undefined:()=>Ux,union:()=>el,unknown:()=>Wn,uppercase:()=>Ar,url:()=>px,util:()=>I,uuid:()=>ux,uuidv4:()=>dx,uuidv6:()=>mx,uuidv7:()=>fx,void:()=>Vx,xid:()=>Sx,xor:()=>Xx,z:()=>ll});var ll={};ln(ll,{$brand:()=>fa,$input:()=>Ua,$output:()=>ja,NEVER:()=>ma,TimePrecision:()=>dc,ZodAny:()=>wg,ZodArray:()=>kg,ZodBase64:()=>Kc,ZodBase64URL:()=>qc,ZodBigInt:()=>Kr,ZodBigIntFormat:()=>Xc,ZodBoolean:()=>Hr,ZodCIDRv4:()=>Vc,ZodCIDRv6:()=>Hc,ZodCUID:()=>Wc,ZodCUID2:()=>Fc,ZodCatch:()=>Jg,ZodCodec:()=>sl,ZodCustom:()=>_i,ZodCustomStringFormat:()=>Br,ZodDate:()=>gi,ZodDefault:()=>Bg,ZodDiscriminatedUnion:()=>Ig,ZodE164:()=>Yc,ZodEmail:()=>Mc,ZodEmoji:()=>$c,ZodEnum:()=>jr,ZodError:()=>ax,ZodExactOptional:()=>Zg,ZodFile:()=>Fg,ZodFirstPartyTypeKind:()=>al,ZodFunction:()=>sh,ZodGUID:()=>ui,ZodIPv4:()=>Uc,ZodIPv6:()=>Bc,ZodISODate:()=>si,ZodISODateTime:()=>ii,ZodISODuration:()=>ci,ZodISOTime:()=>ai,ZodIntersection:()=>Og,ZodIssueCode:()=>xC,ZodJWT:()=>Jc,ZodKSUID:()=>jc,ZodLazy:()=>rh,ZodLiteral:()=>Wg,ZodMAC:()=>bg,ZodMap:()=>$g,ZodNaN:()=>Qg,ZodNanoID:()=>Lc,ZodNever:()=>Pg,ZodNonOptional:()=>ol,ZodNull:()=>Cg,ZodNullable:()=>Ug,ZodNumber:()=>Vr,ZodNumberFormat:()=>Fn,ZodObject:()=>yi,ZodOptional:()=>rl,ZodPipe:()=>il,ZodPrefault:()=>Hg,ZodPromise:()=>ih,ZodReadonly:()=>eh,ZodRealError:()=>we,ZodRecord:()=>vi,ZodSet:()=>Lg,ZodString:()=>Ur,ZodStringFormat:()=>Y,ZodSuccess:()=>Yg,ZodSymbol:()=>Sg,ZodTemplateLiteral:()=>nh,ZodTransform:()=>Gg,ZodTuple:()=>Ng,ZodType:()=>M,ZodULID:()=>Gc,ZodURL:()=>pi,ZodUUID:()=>At,ZodUndefined:()=>xg,ZodUnion:()=>bi,ZodUnknown:()=>Rg,ZodVoid:()=>Ag,ZodXID:()=>Zc,ZodXor:()=>Tg,_ZodString:()=>Dc,_default:()=>Vg,_function:()=>fC,any:()=>Bx,array:()=>hi,base64:()=>Ax,base64url:()=>kx,bigint:()=>Fx,boolean:()=>_g,catch:()=>Xg,check:()=>pC,cidrv4:()=>Rx,cidrv6:()=>Px,clone:()=>ve,codec:()=>uC,coerce:()=>cl,config:()=>le,core:()=>Pt,cuid:()=>bx,cuid2:()=>vx,custom:()=>gC,date:()=>Hx,decode:()=>Rc,decodeAsync:()=>Ac,describe:()=>hC,discriminatedUnion:()=>Qx,e164:()=>Tx,email:()=>cx,emoji:()=>hx,encode:()=>wc,encodeAsync:()=>Pc,endsWith:()=>Ir,enum:()=>tl,exactOptional:()=>jg,file:()=>sC,flattenError:()=>vr,float32:()=>Mx,float64:()=>$x,formatError:()=>_r,fromJSONSchema:()=>uh,function:()=>fC,getErrorMap:()=>EC,globalRegistry:()=>Oe,gt:()=>wt,gte:()=>Ee,guid:()=>lx,hash:()=>Dx,hex:()=>Nx,hostname:()=>zx,httpUrl:()=>gx,includes:()=>kr,instanceof:()=>bC,int:()=>Nc,int32:()=>Lx,int64:()=>Gx,intersection:()=>zg,ipv4:()=>Cx,ipv6:()=>wx,iso:()=>li,json:()=>_C,jwt:()=>Ix,keyof:()=>Kx,ksuid:()=>xx,lazy:()=>oh,length:()=>Ln,literal:()=>iC,locales:()=>ei,looseObject:()=>Jx,looseRecord:()=>tC,lowercase:()=>Pr,lt:()=>Et,lte:()=>Ue,mac:()=>Ex,map:()=>nC,maxLength:()=>$n,maxSize:()=>sn,meta:()=>yC,mime:()=>Or,minLength:()=>Ft,minSize:()=>Rt,multipleOf:()=>on,nan:()=>lC,nanoid:()=>yx,nativeEnum:()=>oC,negative:()=>fc,never:()=>Qc,nonnegative:()=>gc,nonoptional:()=>qg,nonpositive:()=>pc,normalize:()=>zr,null:()=>Eg,nullable:()=>mi,nullish:()=>aC,number:()=>vg,object:()=>qx,optional:()=>di,overwrite:()=>ut,parse:()=>Sc,parseAsync:()=>xc,partialRecord:()=>eC,pipe:()=>fi,positive:()=>mc,prefault:()=>Kg,preprocess:()=>SC,prettifyError:()=>va,promise:()=>mC,property:()=>hc,readonly:()=>th,record:()=>Mg,refine:()=>ah,regex:()=>Rr,regexes:()=>je,registry:()=>ti,safeDecode:()=>Tc,safeDecodeAsync:()=>Oc,safeEncode:()=>kc,safeEncodeAsync:()=>Ic,safeParse:()=>Cc,safeParseAsync:()=>Ec,set:()=>rC,setErrorMap:()=>CC,size:()=>Mn,slugify:()=>$r,startsWith:()=>Tr,strictObject:()=>Yx,string:()=>zc,stringFormat:()=>Ox,stringbool:()=>vC,success:()=>cC,superRefine:()=>ch,symbol:()=>jx,templateLiteral:()=>dC,toJSONSchema:()=>oi,toLowerCase:()=>Dr,toUpperCase:()=>Mr,transform:()=>nl,treeifyError:()=>ba,trim:()=>Nr,tuple:()=>Dg,uint32:()=>Wx,uint64:()=>Zx,ulid:()=>_x,undefined:()=>Ux,union:()=>el,unknown:()=>Wn,uppercase:()=>Ar,url:()=>px,util:()=>I,uuid:()=>ux,uuidv4:()=>dx,uuidv6:()=>mx,uuidv7:()=>fx,void:()=>Vx,xid:()=>Sx,xor:()=>Xx});var Pt={};ln(Pt,{$ZodAny:()=>mf,$ZodArray:()=>yf,$ZodAsyncError:()=>Ct,$ZodBase64:()=>tf,$ZodBase64URL:()=>nf,$ZodBigInt:()=>Fa,$ZodBigIntFormat:()=>cf,$ZodBoolean:()=>Jo,$ZodCIDRv4:()=>Xm,$ZodCIDRv6:()=>Qm,$ZodCUID:()=>Fm,$ZodCUID2:()=>Gm,$ZodCatch:()=>Df,$ZodCheck:()=>Q,$ZodCheckBigIntFormat:()=>hm,$ZodCheckEndsWith:()=>Am,$ZodCheckGreaterThan:()=>Oa,$ZodCheckIncludes:()=>Rm,$ZodCheckLengthEquals:()=>xm,$ZodCheckLessThan:()=>Ia,$ZodCheckLowerCase:()=>Em,$ZodCheckMaxLength:()=>_m,$ZodCheckMaxSize:()=>ym,$ZodCheckMimeType:()=>Tm,$ZodCheckMinLength:()=>Sm,$ZodCheckMinSize:()=>bm,$ZodCheckMultipleOf:()=>pm,$ZodCheckNumberFormat:()=>gm,$ZodCheckOverwrite:()=>Im,$ZodCheckProperty:()=>km,$ZodCheckRegex:()=>Cm,$ZodCheckSizeEquals:()=>vm,$ZodCheckStartsWith:()=>Pm,$ZodCheckStringFormat:()=>wr,$ZodCheckUpperCase:()=>wm,$ZodCodec:()=>Qo,$ZodCustom:()=>jf,$ZodCustomStringFormat:()=>sf,$ZodDate:()=>hf,$ZodDefault:()=>If,$ZodDiscriminatedUnion:()=>_f,$ZodE164:()=>rf,$ZodEmail:()=>Mm,$ZodEmoji:()=>Lm,$ZodEncodeError:()=>On,$ZodEnum:()=>wf,$ZodError:()=>Ho,$ZodExactOptional:()=>kf,$ZodFile:()=>Pf,$ZodFunction:()=>Ff,$ZodGUID:()=>Nm,$ZodIPv4:()=>qm,$ZodIPv6:()=>Ym,$ZodISODate:()=>Vm,$ZodISODateTime:()=>Bm,$ZodISODuration:()=>Km,$ZodISOTime:()=>Hm,$ZodIntersection:()=>Sf,$ZodJWT:()=>of,$ZodKSUID:()=>Um,$ZodLazy:()=>Zf,$ZodLiteral:()=>Rf,$ZodMAC:()=>Jm,$ZodMap:()=>Cf,$ZodNaN:()=>Mf,$ZodNanoID:()=>Wm,$ZodNever:()=>pf,$ZodNonOptional:()=>zf,$ZodNull:()=>df,$ZodNullable:()=>Tf,$ZodNumber:()=>Wa,$ZodNumberFormat:()=>af,$ZodObject:()=>tx,$ZodObjectJIT:()=>bf,$ZodOptional:()=>Za,$ZodPipe:()=>$f,$ZodPrefault:()=>Of,$ZodPromise:()=>Gf,$ZodReadonly:()=>Lf,$ZodRealError:()=>Ie,$ZodRecord:()=>xf,$ZodRegistry:()=>Uf,$ZodSet:()=>Ef,$ZodString:()=>Dn,$ZodStringFormat:()=>q,$ZodSuccess:()=>Nf,$ZodSymbol:()=>lf,$ZodTemplateLiteral:()=>Wf,$ZodTransform:()=>Af,$ZodTuple:()=>Ga,$ZodType:()=>D,$ZodULID:()=>Zm,$ZodURL:()=>$m,$ZodUUID:()=>Dm,$ZodUndefined:()=>uf,$ZodUnion:()=>Xo,$ZodUnknown:()=>ff,$ZodVoid:()=>gf,$ZodXID:()=>jm,$ZodXor:()=>vf,$brand:()=>fa,$constructor:()=>g,$input:()=>Ua,$output:()=>ja,Doc:()=>za,JSONSchema:()=>ox,JSONSchemaGenerator:()=>fg,NEVER:()=>ma,TimePrecision:()=>dc,_any:()=>pp,_array:()=>Sp,_base64:()=>ac,_base64url:()=>cc,_bigint:()=>ap,_boolean:()=>ip,_catch:()=>p0,_check:()=>rx,_cidrv4:()=>ic,_cidrv6:()=>sc,_coercedBigint:()=>cp,_coercedBoolean:()=>sp,_coercedDate:()=>vp,_coercedNumber:()=>Qf,_coercedString:()=>Vf,_cuid:()=>Xa,_cuid2:()=>Qa,_custom:()=>Cp,_date:()=>bp,_decode:()=>Ca,_decodeAsync:()=>wa,_default:()=>d0,_discriminatedUnion:()=>QD,_e164:()=>lc,_email:()=>Ba,_emoji:()=>Ya,_encode:()=>xa,_encodeAsync:()=>Ea,_endsWith:()=>Ir,_enum:()=>i0,_file:()=>xp,_float32:()=>tp,_float64:()=>np,_gt:()=>wt,_gte:()=>Ee,_guid:()=>ni,_includes:()=>kr,_int:()=>ep,_int32:()=>rp,_int64:()=>lp,_intersection:()=>e0,_ipv4:()=>rc,_ipv6:()=>oc,_isoDate:()=>qf,_isoDateTime:()=>Kf,_isoDuration:()=>Jf,_isoTime:()=>Yf,_jwt:()=>uc,_ksuid:()=>nc,_lazy:()=>b0,_length:()=>Ln,_literal:()=>a0,_lowercase:()=>Pr,_lt:()=>Et,_lte:()=>Ue,_mac:()=>Hf,_map:()=>r0,_max:()=>Ue,_maxLength:()=>$n,_maxSize:()=>sn,_mime:()=>Or,_min:()=>Ee,_minLength:()=>Ft,_minSize:()=>Rt,_multipleOf:()=>on,_nan:()=>_p,_nanoid:()=>Ja,_nativeEnum:()=>s0,_negative:()=>fc,_never:()=>hp,_nonnegative:()=>gc,_nonoptional:()=>m0,_nonpositive:()=>pc,_normalize:()=>zr,_null:()=>fp,_nullable:()=>u0,_number:()=>Xf,_optional:()=>l0,_overwrite:()=>ut,_parse:()=>Sr,_parseAsync:()=>xr,_pipe:()=>g0,_positive:()=>mc,_promise:()=>v0,_property:()=>hc,_readonly:()=>h0,_record:()=>n0,_refine:()=>Ep,_regex:()=>Rr,_safeDecode:()=>Pa,_safeDecodeAsync:()=>ka,_safeEncode:()=>Ra,_safeEncodeAsync:()=>Aa,_safeParse:()=>Cr,_safeParseAsync:()=>Er,_set:()=>o0,_size:()=>Mn,_slugify:()=>$r,_startsWith:()=>Tr,_string:()=>Bf,_stringFormat:()=>Lr,_stringbool:()=>Ap,_success:()=>f0,_superRefine:()=>wp,_symbol:()=>dp,_templateLiteral:()=>y0,_toLowerCase:()=>Dr,_toUpperCase:()=>Mr,_transform:()=>c0,_trim:()=>Nr,_tuple:()=>t0,_uint32:()=>op,_uint64:()=>up,_ulid:()=>ec,_undefined:()=>mp,_union:()=>JD,_unknown:()=>gp,_uppercase:()=>Ar,_url:()=>ri,_uuid:()=>Va,_uuidv4:()=>Ha,_uuidv6:()=>Ka,_uuidv7:()=>qa,_void:()=>yp,_xid:()=>tc,_xor:()=>XD,clone:()=>ve,config:()=>le,createStandardJSONSchemaMethod:()=>yc,createToJSONSchemaMethod:()=>kp,decode:()=>gD,decodeAsync:()=>yD,describe:()=>Rp,encode:()=>pD,encodeAsync:()=>hD,extractDefs:()=>Gr,finalize:()=>Zr,flattenError:()=>vr,formatError:()=>_r,globalConfig:()=>Fo,globalRegistry:()=>Oe,initializeContext:()=>Fr,isValidBase64:()=>ef,isValidBase64URL:()=>JS,isValidJWT:()=>XS,locales:()=>ei,meta:()=>Pp,parse:()=>_a,parseAsync:()=>Sa,prettifyError:()=>va,process:()=>ee,regexes:()=>je,registry:()=>ti,safeDecode:()=>vD,safeDecodeAsync:()=>SD,safeEncode:()=>bD,safeEncodeAsync:()=>_D,safeParse:()=>Ld,safeParseAsync:()=>Wd,toDotPath:()=>zS,toJSONSchema:()=>oi,treeifyError:()=>ba,util:()=>I,version:()=>Om});var ma=Object.freeze({status:"aborted"});function g(e,t,n){function r(a,c){if(!a._zod)Object.defineProperty(a,"_zod",{value:{def:c,constr:s,traits:new Set},enumerable:!1});if(a._zod.traits.has(e))return;a._zod.traits.add(e),t(a,c);let l=s.prototype,u=Object.keys(l);for(let d=0;d<u.length;d++){let m=u[d];if(!(m in a))a[m]=l[m].bind(a)}}let o=n?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:e});function s(a){var c;let l=n?.Parent?new i:this;r(l,a),(c=l._zod).deferred??(c.deferred=[]);for(let u of l._zod.deferred)u();return l}return Object.defineProperty(s,"init",{value:r}),Object.defineProperty(s,Symbol.hasInstance,{value:(a)=>{if(n?.Parent&&a instanceof n.Parent)return!0;return a?._zod?.traits?.has(e)}}),Object.defineProperty(s,"name",{value:e}),s}var fa=Symbol("zod_brand");class Ct extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class On extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}var Fo={};function le(e){if(e)Object.assign(Fo,e);return Fo}var I={};ln(I,{BIGINT_FORMAT_RANGES:()=>Md,Class:()=>IS,NUMBER_FORMAT_RANGES:()=>Dd,aborted:()=>rn,allowsEval:()=>Id,assert:()=>VN,assertEqual:()=>ZN,assertIs:()=>UN,assertNever:()=>BN,assertNotEqual:()=>jN,assignProp:()=>tn,base64ToUint8Array:()=>kS,base64urlToUint8Array:()=>lD,cached:()=>yr,captureStackTrace:()=>ha,cleanEnum:()=>cD,cleanRegex:()=>jo,clone:()=>ve,cloneDef:()=>KN,createTransparentProxy:()=>eD,defineLazy:()=>W,esc:()=>ga,escapeRegex:()=>Xe,extend:()=>rD,finalizeIssue:()=>Te,floatSafeRemainder:()=>kd,getElementAtPath:()=>qN,getEnumValues:()=>Zo,getLengthableOrigin:()=>Vo,getParsedType:()=>QN,getSizableOrigin:()=>Bo,hexToUint8Array:()=>dD,isObject:()=>zn,isPlainObject:()=>nn,issue:()=>br,joinValues:()=>pa,jsonStringifyReplacer:()=>hr,merge:()=>iD,mergeDefs:()=>Wt,normalizeParams:()=>_,nullish:()=>en,numKeys:()=>XN,objectClone:()=>HN,omit:()=>nD,optionalKeys:()=>Nd,parsedType:()=>$d,partial:()=>sD,pick:()=>tD,prefixIssues:()=>Ze,primitiveTypes:()=>zd,promiseAllObject:()=>YN,propertyKeyTypes:()=>Uo,randomString:()=>JN,required:()=>aD,safeExtend:()=>oD,shallowClone:()=>Od,slugify:()=>Td,stringifyPrimitive:()=>ya,uint8ArrayToBase64:()=>TS,uint8ArrayToBase64url:()=>uD,uint8ArrayToHex:()=>mD,unwrapMessage:()=>Go});function ZN(e){return e}function jN(e){return e}function UN(e){}function BN(e){throw Error("Unexpected value in exhaustive check")}function VN(e){}function Zo(e){let t=Object.values(e).filter((r)=>typeof r==="number");return Object.entries(e).filter(([r,o])=>t.indexOf(+r)===-1).map(([r,o])=>o)}function pa(e,t="|"){return e.map((n)=>ya(n)).join(t)}function hr(e,t){if(typeof t==="bigint")return t.toString();return t}function yr(e){return{get value(){{let n=e();return Object.defineProperty(this,"value",{value:n}),n}throw Error("cached value already set")}}}function en(e){return e===null||e===void 0}function jo(e){let t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function kd(e,t){let n=(e.toString().split(".")[1]||"").length,r=t.toString(),o=(r.split(".")[1]||"").length;if(o===0&&/\d?e-\d?/.test(r)){let c=r.match(/\d?e-(\d?)/);if(c?.[1])o=Number.parseInt(c[1])}let i=n>o?n:o,s=Number.parseInt(e.toFixed(i).replace(".","")),a=Number.parseInt(t.toFixed(i).replace(".",""));return s%a/10**i}var AS=Symbol("evaluating");function W(e,t,n){let r=void 0;Object.defineProperty(e,t,{get(){if(r===AS)return;if(r===void 0)r=AS,r=n();return r},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function HN(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function tn(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Wt(...e){let t={};for(let n of e){let r=Object.getOwnPropertyDescriptors(n);Object.assign(t,r)}return Object.defineProperties({},t)}function KN(e){return Wt(e._zod.def)}function qN(e,t){if(!t)return e;return t.reduce((n,r)=>n?.[r],e)}function YN(e){let t=Object.keys(e),n=t.map((r)=>e[r]);return Promise.all(n).then((r)=>{let o={};for(let i=0;i<t.length;i++)o[t[i]]=r[i];return o})}function JN(e=10){let n="";for(let r=0;r<e;r++)n+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return n}function ga(e){return JSON.stringify(e)}function Td(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var ha="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function zn(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Id=yr(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function nn(e){if(zn(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let n=t.prototype;if(zn(n)===!1)return!1;if(Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)return!1;return!0}function Od(e){if(nn(e))return{...e};if(Array.isArray(e))return[...e];return e}function XN(e){let t=0;for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n))t++;return t}var QN=(e)=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(e))return"array";if(e===null)return"null";if(e.then&&typeof e.then==="function"&&e.catch&&typeof e.catch==="function")return"promise";if(typeof Map<"u"&&e instanceof Map)return"map";if(typeof Set<"u"&&e instanceof Set)return"set";if(typeof Date<"u"&&e instanceof Date)return"date";if(typeof File<"u"&&e instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${t}`)}},Uo=new Set(["string","number","symbol"]),zd=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Xe(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ve(e,t,n){let r=new e._zod.constr(t??e._zod.def);if(!t||n?.parent)r._zod.parent=e;return r}function _(e){let t=e;if(!t)return{};if(typeof t==="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}if(delete t.message,typeof t.error==="string")return{...t,error:()=>t.error};return t}function eD(e){let t;return new Proxy({},{get(n,r,o){return t??(t=e()),Reflect.get(t,r,o)},set(n,r,o,i){return t??(t=e()),Reflect.set(t,r,o,i)},has(n,r){return t??(t=e()),Reflect.has(t,r)},deleteProperty(n,r){return t??(t=e()),Reflect.deleteProperty(t,r)},ownKeys(n){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(n,r){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,r)},defineProperty(n,r,o){return t??(t=e()),Reflect.defineProperty(t,r,o)}})}function ya(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Nd(e){return Object.keys(e).filter((t)=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Dd={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Md={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function tD(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let i=Wt(e._zod.def,{get shape(){let s={};for(let a in t){if(!(a in n.shape))throw Error(`Unrecognized key: "${a}"`);if(!t[a])continue;s[a]=n.shape[a]}return tn(this,"shape",s),s},checks:[]});return ve(e,i)}function nD(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let i=Wt(e._zod.def,{get shape(){let s={...e._zod.def.shape};for(let a in t){if(!(a in n.shape))throw Error(`Unrecognized key: "${a}"`);if(!t[a])continue;delete s[a]}return tn(this,"shape",s),s},checks:[]});return ve(e,i)}function rD(e,t){if(!nn(t))throw Error("Invalid input to extend: expected a plain object");let n=e._zod.def.checks;if(n&&n.length>0){let i=e._zod.def.shape;for(let s in t)if(Object.getOwnPropertyDescriptor(i,s)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let o=Wt(e._zod.def,{get shape(){let i={...e._zod.def.shape,...t};return tn(this,"shape",i),i}});return ve(e,o)}function oD(e,t){if(!nn(t))throw Error("Invalid input to safeExtend: expected a plain object");let n=Wt(e._zod.def,{get shape(){let r={...e._zod.def.shape,...t};return tn(this,"shape",r),r}});return ve(e,n)}function iD(e,t){let n=Wt(e._zod.def,{get shape(){let r={...e._zod.def.shape,...t._zod.def.shape};return tn(this,"shape",r),r},get catchall(){return t._zod.def.catchall},checks:[]});return ve(e,n)}function sD(e,t,n){let o=t._zod.def.checks;if(o&&o.length>0)throw Error(".partial() cannot be used on object schemas containing refinements");let s=Wt(t._zod.def,{get shape(){let a=t._zod.def.shape,c={...a};if(n)for(let l in n){if(!(l in a))throw Error(`Unrecognized key: "${l}"`);if(!n[l])continue;c[l]=e?new e({type:"optional",innerType:a[l]}):a[l]}else for(let l in a)c[l]=e?new e({type:"optional",innerType:a[l]}):a[l];return tn(this,"shape",c),c},checks:[]});return ve(t,s)}function aD(e,t,n){let r=Wt(t._zod.def,{get shape(){let o=t._zod.def.shape,i={...o};if(n)for(let s in n){if(!(s in i))throw Error(`Unrecognized key: "${s}"`);if(!n[s])continue;i[s]=new e({type:"nonoptional",innerType:o[s]})}else for(let s in o)i[s]=new e({type:"nonoptional",innerType:o[s]});return tn(this,"shape",i),i}});return ve(t,r)}function rn(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Ze(e,t){return t.map((n)=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(e),n})}function Go(e){return typeof e==="string"?e:e?.message}function Te(e,t,n){let r={...e,path:e.path??[]};if(!e.message){let o=Go(e.inst?._zod.def?.error?.(e))??Go(t?.error?.(e))??Go(n.customError?.(e))??Go(n.localeError?.(e))??"Invalid input";r.message=o}if(delete r.inst,delete r.continue,!t?.reportInput)delete r.input;return r}function Bo(e){if(e instanceof Set)return"set";if(e instanceof Map)return"map";if(e instanceof File)return"file";return"unknown"}function Vo(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function $d(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let n=e;if(n&&Object.getPrototypeOf(n)!==Object.prototype&&"constructor"in n&&n.constructor)return n.constructor.name}}return t}function br(...e){let[t,n,r]=e;if(typeof t==="string")return{message:t,code:"custom",input:n,inst:r};return{...t}}function cD(e){return Object.entries(e).filter(([t,n])=>Number.isNaN(Number.parseInt(t,10))).map((t)=>t[1])}function kS(e){let t=atob(e),n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t.charCodeAt(r);return n}function TS(e){let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function lD(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),n="=".repeat((4-t.length%4)%4);return kS(t+n)}function uD(e){return TS(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function dD(e){let t=e.replace(/^0x/,"");if(t.length%2!==0)throw Error("Invalid hex string length");let n=new Uint8Array(t.length/2);for(let r=0;r<t.length;r+=2)n[r/2]=Number.parseInt(t.slice(r,r+2),16);return n}function mD(e){return Array.from(e).map((t)=>t.toString(16).padStart(2,"0")).join("")}class IS{constructor(...e){}}var OS=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,hr,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Ho=g("$ZodError",OS),Ie=g("$ZodError",OS,{Parent:Error});function vr(e,t=(n)=>n.message){let n={},r=[];for(let o of e.issues)if(o.path.length>0)n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o));else r.push(t(o));return{formErrors:r,fieldErrors:n}}function _r(e,t=(n)=>n.message){let n={_errors:[]},r=(o)=>{for(let i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map((s)=>r({issues:s}));else if(i.code==="invalid_key")r({issues:i.issues});else if(i.code==="invalid_element")r({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let s=n,a=0;while(a<i.path.length){let c=i.path[a];if(a!==i.path.length-1)s[c]=s[c]||{_errors:[]};else s[c]=s[c]||{_errors:[]},s[c]._errors.push(t(i));s=s[c],a++}}};return r(e),n}function ba(e,t=(n)=>n.message){let n={errors:[]},r=(o,i=[])=>{var s,a;for(let c of o.issues)if(c.code==="invalid_union"&&c.errors.length)c.errors.map((l)=>r({issues:l},c.path));else if(c.code==="invalid_key")r({issues:c.issues},c.path);else if(c.code==="invalid_element")r({issues:c.issues},c.path);else{let l=[...i,...c.path];if(l.length===0){n.errors.push(t(c));continue}let u=n,d=0;while(d<l.length){let m=l[d],f=d===l.length-1;if(typeof m==="string")u.properties??(u.properties={}),(s=u.properties)[m]??(s[m]={errors:[]}),u=u.properties[m];else u.items??(u.items=[]),(a=u.items)[m]??(a[m]={errors:[]}),u=u.items[m];if(f)u.errors.push(t(c));d++}}};return r(e),n}function zS(e){let t=[],n=e.map((r)=>typeof r==="object"?r.key:r);for(let r of n)if(typeof r==="number")t.push(`[${r}]`);else if(typeof r==="symbol")t.push(`[${JSON.stringify(String(r))}]`);else if(/[^\w$]/.test(r))t.push(`[${JSON.stringify(r)}]`);else{if(t.length)t.push(".");t.push(r)}return t.join("")}function va(e){let t=[],n=[...e.issues].sort((r,o)=>(r.path??[]).length-(o.path??[]).length);for(let r of n)if(t.push(`\u2716 ${r.message}`),r.path?.length)t.push(` \u2192 at ${zS(r.path)}`);return t.join(`
|
|
62
|
+
`)}var Sr=(e)=>(t,n,r,o)=>{let i=r?Object.assign(r,{async:!1}):{async:!1},s=t._zod.run({value:n,issues:[]},i);if(s instanceof Promise)throw new Ct;if(s.issues.length){let a=new(o?.Err??e)(s.issues.map((c)=>Te(c,i,le())));throw ha(a,o?.callee),a}return s.value},_a=Sr(Ie),xr=(e)=>async(t,n,r,o)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},s=t._zod.run({value:n,issues:[]},i);if(s instanceof Promise)s=await s;if(s.issues.length){let a=new(o?.Err??e)(s.issues.map((c)=>Te(c,i,le())));throw ha(a,o?.callee),a}return s.value},Sa=xr(Ie),Cr=(e)=>(t,n,r)=>{let o=r?{...r,async:!1}:{async:!1},i=t._zod.run({value:n,issues:[]},o);if(i instanceof Promise)throw new Ct;return i.issues.length?{success:!1,error:new(e??Ho)(i.issues.map((s)=>Te(s,o,le())))}:{success:!0,data:i.value}},Ld=Cr(Ie),Er=(e)=>async(t,n,r)=>{let o=r?Object.assign(r,{async:!0}):{async:!0},i=t._zod.run({value:n,issues:[]},o);if(i instanceof Promise)i=await i;return i.issues.length?{success:!1,error:new e(i.issues.map((s)=>Te(s,o,le())))}:{success:!0,data:i.value}},Wd=Er(Ie),xa=(e)=>(t,n,r)=>{let o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Sr(e)(t,n,o)},pD=xa(Ie),Ca=(e)=>(t,n,r)=>Sr(e)(t,n,r),gD=Ca(Ie),Ea=(e)=>async(t,n,r)=>{let o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return xr(e)(t,n,o)},hD=Ea(Ie),wa=(e)=>async(t,n,r)=>xr(e)(t,n,r),yD=wa(Ie),Ra=(e)=>(t,n,r)=>{let o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Cr(e)(t,n,o)},bD=Ra(Ie),Pa=(e)=>(t,n,r)=>Cr(e)(t,n,r),vD=Pa(Ie),Aa=(e)=>async(t,n,r)=>{let o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Er(e)(t,n,o)},_D=Aa(Ie),ka=(e)=>async(t,n,r)=>Er(e)(t,n,r),SD=ka(Ie);var je={};ln(je,{base64:()=>tm,base64url:()=>Ta,bigint:()=>am,boolean:()=>lm,browserEmail:()=>kD,cidrv4:()=>Qd,cidrv6:()=>em,cuid:()=>Fd,cuid2:()=>Gd,date:()=>rm,datetime:()=>im,domain:()=>OD,duration:()=>Vd,e164:()=>nm,email:()=>Kd,emoji:()=>qd,extendedDuration:()=>xD,guid:()=>Hd,hex:()=>zD,hostname:()=>ID,html5Email:()=>RD,idnEmail:()=>AD,integer:()=>cm,ipv4:()=>Yd,ipv6:()=>Jd,ksuid:()=>Ud,lowercase:()=>mm,mac:()=>Xd,md5_base64:()=>DD,md5_base64url:()=>MD,md5_hex:()=>ND,nanoid:()=>Bd,null:()=>um,number:()=>Ko,rfc5322Email:()=>PD,sha1_base64:()=>LD,sha1_base64url:()=>WD,sha1_hex:()=>$D,sha256_base64:()=>GD,sha256_base64url:()=>ZD,sha256_hex:()=>FD,sha384_base64:()=>UD,sha384_base64url:()=>BD,sha384_hex:()=>jD,sha512_base64:()=>HD,sha512_base64url:()=>KD,sha512_hex:()=>VD,string:()=>sm,time:()=>om,ulid:()=>Zd,undefined:()=>dm,unicodeEmail:()=>NS,uppercase:()=>fm,uuid:()=>Nn,uuid4:()=>CD,uuid6:()=>ED,uuid7:()=>wD,xid:()=>jd});var Fd=/^[cC][^\s-]{8,}$/,Gd=/^[0-9a-z]+$/,Zd=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,jd=/^[0-9a-vA-V]{20}$/,Ud=/^[A-Za-z0-9]{27}$/,Bd=/^[a-zA-Z0-9_-]{21}$/,Vd=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,xD=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Hd=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Nn=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)},CD=Nn(4),ED=Nn(6),wD=Nn(7),Kd=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,RD=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,PD=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,NS=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,AD=NS,kD=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,TD="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function qd(){return new RegExp(TD,"u")}var Yd=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Jd=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Xd=(e)=>{let t=Xe(e??":");return new RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}$`)},Qd=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,em=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,tm=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ta=/^[A-Za-z0-9_-]*$/,ID=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,OD=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,nm=/^\+[1-9]\d{6,14}$/,DS="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",rm=new RegExp(`^${DS}$`);function MS(e){return typeof e.precision==="number"?e.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":e.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${e.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function om(e){return new RegExp(`^${MS(e)}$`)}function im(e){let t=MS({precision:e.precision}),n=["Z"];if(e.local)n.push("");if(e.offset)n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let r=`${t}(?:${n.join("|")})`;return new RegExp(`^${DS}T(?:${r})$`)}var sm=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},am=/^-?\d+n?$/,cm=/^-?\d+$/,Ko=/^-?\d+(?:\.\d+)?$/,lm=/^(?:true|false)$/i,um=/^null$/i;var dm=/^undefined$/i;var mm=/^[^A-Z]*$/,fm=/^[^a-z]*$/,zD=/^[0-9a-fA-F]*$/;function qo(e,t){return new RegExp(`^[A-Za-z0-9+/]{${e}}${t}$`)}function Yo(e){return new RegExp(`^[A-Za-z0-9_-]{${e}}$`)}var ND=/^[0-9a-fA-F]{32}$/,DD=qo(22,"=="),MD=Yo(22),$D=/^[0-9a-fA-F]{40}$/,LD=qo(27,"="),WD=Yo(27),FD=/^[0-9a-fA-F]{64}$/,GD=qo(43,"="),ZD=Yo(43),jD=/^[0-9a-fA-F]{96}$/,UD=qo(64,""),BD=Yo(64),VD=/^[0-9a-fA-F]{128}$/,HD=qo(86,"=="),KD=Yo(86);var Q=g("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),LS={number:"number",bigint:"bigint",object:"date"},Ia=g("$ZodCheckLessThan",(e,t)=>{Q.init(e,t);let n=LS[typeof t.value];e._zod.onattach.push((r)=>{let o=r._zod.bag,i=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(t.value<i)if(t.inclusive)o.maximum=t.value;else o.exclusiveMaximum=t.value}),e._zod.check=(r)=>{if(t.inclusive?r.value<=t.value:r.value<t.value)return;r.issues.push({origin:n,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Oa=g("$ZodCheckGreaterThan",(e,t)=>{Q.init(e,t);let n=LS[typeof t.value];e._zod.onattach.push((r)=>{let o=r._zod.bag,i=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(t.value>i)if(t.inclusive)o.minimum=t.value;else o.exclusiveMinimum=t.value}),e._zod.check=(r)=>{if(t.inclusive?r.value>=t.value:r.value>t.value)return;r.issues.push({origin:n,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),pm=g("$ZodCheckMultipleOf",(e,t)=>{Q.init(e,t),e._zod.onattach.push((n)=>{var r;(r=n._zod.bag).multipleOf??(r.multipleOf=t.value)}),e._zod.check=(n)=>{if(typeof n.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof n.value==="bigint"?n.value%t.value===BigInt(0):kd(n.value,t.value)===0)return;n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),gm=g("$ZodCheckNumberFormat",(e,t)=>{Q.init(e,t),t.format=t.format||"float64";let n=t.format?.includes("int"),r=n?"int":"number",[o,i]=Dd[t.format];e._zod.onattach.push((s)=>{let a=s._zod.bag;if(a.format=t.format,a.minimum=o,a.maximum=i,n)a.pattern=cm}),e._zod.check=(s)=>{let a=s.value;if(n){if(!Number.isInteger(a)){s.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});return}if(!Number.isSafeInteger(a)){if(a>0)s.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});else s.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}if(a<o)s.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort});if(a>i)s.issues.push({origin:"number",input:a,code:"too_big",maximum:i,inclusive:!0,inst:e,continue:!t.abort})}}),hm=g("$ZodCheckBigIntFormat",(e,t)=>{Q.init(e,t);let[n,r]=Md[t.format];e._zod.onattach.push((o)=>{let i=o._zod.bag;i.format=t.format,i.minimum=n,i.maximum=r}),e._zod.check=(o)=>{let i=o.value;if(i<n)o.issues.push({origin:"bigint",input:i,code:"too_small",minimum:n,inclusive:!0,inst:e,continue:!t.abort});if(i>r)o.issues.push({origin:"bigint",input:i,code:"too_big",maximum:r,inclusive:!0,inst:e,continue:!t.abort})}}),ym=g("$ZodCheckMaxSize",(e,t)=>{var n;Q.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let o=r.value;return!en(o)&&o.size!==void 0}),e._zod.onattach.push((r)=>{let o=r._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<o)r._zod.bag.maximum=t.maximum}),e._zod.check=(r)=>{let o=r.value;if(o.size<=t.maximum)return;r.issues.push({origin:Bo(o),code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),bm=g("$ZodCheckMinSize",(e,t)=>{var n;Q.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let o=r.value;return!en(o)&&o.size!==void 0}),e._zod.onattach.push((r)=>{let o=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>o)r._zod.bag.minimum=t.minimum}),e._zod.check=(r)=>{let o=r.value;if(o.size>=t.minimum)return;r.issues.push({origin:Bo(o),code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),vm=g("$ZodCheckSizeEquals",(e,t)=>{var n;Q.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let o=r.value;return!en(o)&&o.size!==void 0}),e._zod.onattach.push((r)=>{let o=r._zod.bag;o.minimum=t.size,o.maximum=t.size,o.size=t.size}),e._zod.check=(r)=>{let o=r.value,i=o.size;if(i===t.size)return;let s=i>t.size;r.issues.push({origin:Bo(o),...s?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),_m=g("$ZodCheckMaxLength",(e,t)=>{var n;Q.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let o=r.value;return!en(o)&&o.length!==void 0}),e._zod.onattach.push((r)=>{let o=r._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<o)r._zod.bag.maximum=t.maximum}),e._zod.check=(r)=>{let o=r.value;if(o.length<=t.maximum)return;let s=Vo(o);r.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Sm=g("$ZodCheckMinLength",(e,t)=>{var n;Q.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let o=r.value;return!en(o)&&o.length!==void 0}),e._zod.onattach.push((r)=>{let o=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>o)r._zod.bag.minimum=t.minimum}),e._zod.check=(r)=>{let o=r.value;if(o.length>=t.minimum)return;let s=Vo(o);r.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),xm=g("$ZodCheckLengthEquals",(e,t)=>{var n;Q.init(e,t),(n=e._zod.def).when??(n.when=(r)=>{let o=r.value;return!en(o)&&o.length!==void 0}),e._zod.onattach.push((r)=>{let o=r._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=(r)=>{let o=r.value,i=o.length;if(i===t.length)return;let s=Vo(o),a=i>t.length;r.issues.push({origin:s,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),wr=g("$ZodCheckStringFormat",(e,t)=>{var n,r;if(Q.init(e,t),e._zod.onattach.push((o)=>{let i=o._zod.bag;if(i.format=t.format,t.pattern)i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern)}),t.pattern)(n=e._zod).check??(n.check=(o)=>{if(t.pattern.lastIndex=0,t.pattern.test(o.value))return;o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(r=e._zod).check??(r.check=()=>{})}),Cm=g("$ZodCheckRegex",(e,t)=>{wr.init(e,t),e._zod.check=(n)=>{if(t.pattern.lastIndex=0,t.pattern.test(n.value))return;n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Em=g("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=mm),wr.init(e,t)}),wm=g("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=fm),wr.init(e,t)}),Rm=g("$ZodCheckIncludes",(e,t)=>{Q.init(e,t);let n=Xe(t.includes),r=new RegExp(typeof t.position==="number"?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push((o)=>{let i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),e._zod.check=(o)=>{if(o.value.includes(t.includes,t.position))return;o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),Pm=g("$ZodCheckStartsWith",(e,t)=>{Q.init(e,t);let n=new RegExp(`^${Xe(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push((r)=>{let o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=(r)=>{if(r.value.startsWith(t.prefix))return;r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:r.value,inst:e,continue:!t.abort})}}),Am=g("$ZodCheckEndsWith",(e,t)=>{Q.init(e,t);let n=new RegExp(`.*${Xe(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push((r)=>{let o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=(r)=>{if(r.value.endsWith(t.suffix))return;r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}});function $S(e,t,n){if(e.issues.length)t.issues.push(...Ze(n,e.issues))}var km=g("$ZodCheckProperty",(e,t)=>{Q.init(e,t),e._zod.check=(n)=>{let r=t.schema._zod.run({value:n.value[t.property],issues:[]},{});if(r instanceof Promise)return r.then((o)=>$S(o,n,t.property));$S(r,n,t.property);return}}),Tm=g("$ZodCheckMimeType",(e,t)=>{Q.init(e,t);let n=new Set(t.mime);e._zod.onattach.push((r)=>{r._zod.bag.mime=t.mime}),e._zod.check=(r)=>{if(n.has(r.value.type))return;r.issues.push({code:"invalid_value",values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),Im=g("$ZodCheckOverwrite",(e,t)=>{Q.init(e,t),e._zod.check=(n)=>{n.value=t.tx(n.value)}});class za{constructor(e=[]){if(this.content=[],this.indent=0,this)this.args=e}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e==="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
|
|
63
63
|
`).filter((i)=>i),r=Math.min(...n.map((i)=>i.length-i.trimStart().length)),o=n.map((i)=>i.slice(r)).map((i)=>" ".repeat(this.indent*2)+i);for(let i of o)this.content.push(i)}compile(){let e=Function,t=this?.args,r=[...(this?.content??[""]).map((o)=>` ${o}`)];return new e(...t,r.join(`
|
|
64
|
-
`))}}var zm={major:4,minor:3,patch:5};var D=g("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=zm;let r=[...e._zod.def.checks??[]];if(e._zod.traits.has("$ZodCheck"))r.unshift(e);for(let o of r)for(let i of o._zod.onattach)i(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let o=(s,a,c)=>{let l=ln(s),u;for(let d of a){if(d._zod.def.when){if(!d._zod.def.when(s))continue}else if(l)continue;let f=s.issues.length,m=d._zod.check(s);if(m instanceof Promise&&c?.async===!1)throw new _t;if(u||m instanceof Promise)u=(u??Promise.resolve()).then(async()=>{if(await m,s.issues.length===f)return;if(!l)l=ln(s,f)});else{if(s.issues.length===f)continue;if(!l)l=ln(s,f)}}if(u)return u.then(()=>s);return s},i=(s,a,c)=>{if(ln(s))return s.aborted=!0,s;let l=o(a,r,c);if(l instanceof Promise){if(c.async===!1)throw new _t;return l.then((u)=>e._zod.parse(u,c))}return e._zod.parse(l,c)};e._zod.run=(s,a)=>{if(a.skipChecks)return e._zod.parse(s,a);if(a.direction==="backward"){let l=e._zod.parse({value:s.value,issues:[]},{...a,skipChecks:!0});if(l instanceof Promise)return l.then((u)=>i(u,s,a));return i(l,s,a)}let c=e._zod.parse(s,a);if(c instanceof Promise){if(a.async===!1)throw new _t;return c.then((l)=>o(l,r,a))}return o(c,r,a)}}F(e,"~standard",()=>({validate:(o)=>{try{let i=Wd(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch(i){return Fd(e,o).then((s)=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}))}),Ln=g("$ZodString",(e,t)=>{D.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??am(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch(o){}if(typeof n.value==="string")return n;return n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),q=g("$ZodStringFormat",(e,t)=>{Er.init(e,t),Ln.init(e,t)}),Dm=g("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=qd),q.init(e,t)}),$m=g("$ZodUUID",(e,t)=>{if(t.version){let r={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(r===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Mn(r))}else t.pattern??(t.pattern=Mn());q.init(e,t)}),Mm=g("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Kd),q.init(e,t)}),Lm=g("$ZodURL",(e,t)=>{q.init(e,t),e._zod.check=(n)=>{try{let r=n.value.trim(),o=new URL(r);if(t.hostname){if(t.hostname.lastIndex=0,!t.hostname.test(o.hostname))n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})}if(t.protocol){if(t.protocol.lastIndex=0,!t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol))n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})}if(t.normalize)n.value=o.href;else n.value=r;return}catch(r){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Wm=g("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Yd()),q.init(e,t)}),Fm=g("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Hd),q.init(e,t)}),Gm=g("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Gd),q.init(e,t)}),Zm=g("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Zd),q.init(e,t)}),Bm=g("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Bd),q.init(e,t)}),Um=g("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Ud),q.init(e,t)}),jm=g("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=jd),q.init(e,t)}),Hm=g("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=sm(t)),q.init(e,t)}),Vm=g("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=om),q.init(e,t)}),qm=g("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=im(t)),q.init(e,t)}),Km=g("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Vd),q.init(e,t)}),Ym=g("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Jd),q.init(e,t),e._zod.bag.format="ipv4"}),Jm=g("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Xd),q.init(e,t),e._zod.bag.format="ipv6",e._zod.check=(n)=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),Xm=g("$ZodMAC",(e,t)=>{t.pattern??(t.pattern=Qd(t.delimiter)),q.init(e,t),e._zod.bag.format="mac"}),Qm=g("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=em),q.init(e,t)}),ef=g("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=tm),q.init(e,t),e._zod.check=(n)=>{let r=n.value.split("/");try{if(r.length!==2)throw Error();let[o,i]=r;if(!i)throw Error();let s=Number(i);if(`${s}`!==i)throw Error();if(s<0||s>128)throw Error();new URL(`http://[${o}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function tf(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var nf=g("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=nm),q.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(n)=>{if(tf(n.value))return;n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});function Gx(e){if(!za.test(e))return!1;let t=e.replace(/[-_]/g,(r)=>r==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return tf(n)}var rf=g("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=za),q.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(n)=>{if(Gx(n.value))return;n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),of=g("$ZodE164",(e,t)=>{t.pattern??(t.pattern=rm),q.init(e,t)});function Zx(e,t=null){try{let n=e.split(".");if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let o=JSON.parse(atob(r));if("typ"in o&&o?.typ!=="JWT")return!1;if(!o.alg)return!1;if(t&&(!("alg"in o)||o.alg!==t))return!1;return!0}catch{return!1}}var sf=g("$ZodJWT",(e,t)=>{q.init(e,t),e._zod.check=(n)=>{if(Zx(n.value,t.alg))return;n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),af=g("$ZodCustomStringFormat",(e,t)=>{q.init(e,t),e._zod.check=(n)=>{if(t.fn(n.value))return;n.issues.push({code:"invalid_format",format:t.format,input:n.value,inst:e,continue:!t.abort})}}),Za=g("$ZodNumber",(e,t)=>{D.init(e,t),e._zod.pattern=e._zod.bag.pattern??qo,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch(s){}let o=n.value;if(typeof o==="number"&&!Number.isNaN(o)&&Number.isFinite(o))return n;let i=typeof o==="number"?Number.isNaN(o)?"NaN":!Number.isFinite(o)?"Infinity":void 0:void 0;return n.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...i?{received:i}:{}}),n}}),cf=g("$ZodNumberFormat",(e,t)=>{hm.init(e,t),Za.init(e,t)}),Jo=g("$ZodBoolean",(e,t)=>{D.init(e,t),e._zod.pattern=um,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(i){}let o=n.value;if(typeof o==="boolean")return n;return n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}}),Ba=g("$ZodBigInt",(e,t)=>{D.init(e,t),e._zod.pattern=cm,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch(o){}if(typeof n.value==="bigint")return n;return n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:e}),n}}),lf=g("$ZodBigIntFormat",(e,t)=>{ym.init(e,t),Ba.init(e,t)}),uf=g("$ZodSymbol",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(typeof o==="symbol")return n;return n.issues.push({expected:"symbol",code:"invalid_type",input:o,inst:e}),n}}),df=g("$ZodUndefined",(e,t)=>{D.init(e,t),e._zod.pattern=mm,e._zod.values=new Set([void 0]),e._zod.optin="optional",e._zod.optout="optional",e._zod.parse=(n,r)=>{let o=n.value;if(typeof o>"u")return n;return n.issues.push({expected:"undefined",code:"invalid_type",input:o,inst:e}),n}}),mf=g("$ZodNull",(e,t)=>{D.init(e,t),e._zod.pattern=dm,e._zod.values=new Set([null]),e._zod.parse=(n,r)=>{let o=n.value;if(o===null)return n;return n.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),n}}),ff=g("$ZodAny",(e,t)=>{D.init(e,t),e._zod.parse=(n)=>n}),pf=g("$ZodUnknown",(e,t)=>{D.init(e,t),e._zod.parse=(n)=>n}),gf=g("$ZodNever",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)}),hf=g("$ZodVoid",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(typeof o>"u")return n;return n.issues.push({expected:"void",code:"invalid_type",input:o,inst:e}),n}}),yf=g("$ZodDate",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(a){}let o=n.value,i=o instanceof Date;if(i&&!Number.isNaN(o.getTime()))return n;return n.issues.push({expected:"date",code:"invalid_type",input:o,...i?{received:"Invalid Date"}:{},inst:e}),n}});function Tx(e,t,n){if(e.issues.length)t.issues.push(...Fe(n,e.issues));t.value[n]=e.value}var bf=g("$ZodArray",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);let i=[];for(let s=0;s<o.length;s++){let a=o[s],c=t.element._zod.run({value:a,issues:[]},r);if(c instanceof Promise)i.push(c.then((l)=>Tx(l,n,s)));else Tx(c,n,s)}if(i.length)return Promise.all(i).then(()=>n);return n}});function Ga(e,t,n,r,o){if(e.issues.length){if(o&&!(n in r))return;t.issues.push(...Fe(n,e.issues))}if(e.value===void 0){if(n in r)t.value[n]=void 0}else t.value[n]=e.value}function Bx(e){let t=Object.keys(e.shape);for(let r of t)if(!e.shape?.[r]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${r}": expected a Zod schema`);let n=Dd(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Ux(e,t,n,r,o,i){let s=[],a=o.keySet,c=o.catchall._zod,l=c.def.type,u=c.optout==="optional";for(let d in t){if(a.has(d))continue;if(l==="never"){s.push(d);continue}let f=c.run({value:t[d],issues:[]},r);if(f instanceof Promise)e.push(f.then((m)=>Ga(m,n,d,t,u)));else Ga(f,n,d,t,u)}if(s.length)n.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:i});if(!e.length)return n;return Promise.all(e).then(()=>n)}var jx=g("$ZodObject",(e,t)=>{if(D.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let a=t.shape;Object.defineProperty(t,"shape",{get:()=>{let c={...a};return Object.defineProperty(t,"shape",{value:c}),c}})}let r=br(()=>Bx(t));F(e._zod,"propValues",()=>{let a=t.shape,c={};for(let l in a){let u=a[l]._zod;if(u.values){c[l]??(c[l]=new Set);for(let d of u.values)c[l].add(d)}}return c});let o=$n,i=t.catchall,s;e._zod.parse=(a,c)=>{s??(s=r.value);let l=a.value;if(!o(l))return a.issues.push({expected:"object",code:"invalid_type",input:l,inst:e}),a;a.value={};let u=[],d=s.shape;for(let f of s.keys){let m=d[f],p=m._zod.optout==="optional",h=m._zod.run({value:l[f],issues:[]},c);if(h instanceof Promise)u.push(h.then((b)=>Ga(b,a,f,l,p)));else Ga(h,a,f,l,p)}if(!i)return u.length?Promise.all(u).then(()=>a):a;return Ux(u,l,a,c,r.value,e)}}),vf=g("$ZodObjectJIT",(e,t)=>{jx.init(e,t);let n=e._zod.parse,r=br(()=>Bx(t)),o=(f)=>{let m=new $a(["shape","payload","ctx"]),p=r.value,h=(w)=>{let E=ba(w);return`shape[${E}]._zod.run({ value: input[${E}], issues: [] }, ctx)`};m.write("const input = payload.value;");let b=Object.create(null),y=0;for(let w of p.keys)b[w]=`key_${y++}`;m.write("const newResult = {};");for(let w of p.keys){let E=b[w],P=ba(w),v=f[w]?._zod?.optout==="optional";if(m.write(`const ${E} = ${h(w)};`),v)m.write(`
|
|
65
|
-
if (${
|
|
64
|
+
`))}}var Om={major:4,minor:3,patch:5};var D=g("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Om;let r=[...e._zod.def.checks??[]];if(e._zod.traits.has("$ZodCheck"))r.unshift(e);for(let o of r)for(let i of o._zod.onattach)i(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let o=(s,a,c)=>{let l=rn(s),u;for(let d of a){if(d._zod.def.when){if(!d._zod.def.when(s))continue}else if(l)continue;let m=s.issues.length,f=d._zod.check(s);if(f instanceof Promise&&c?.async===!1)throw new Ct;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{if(await f,s.issues.length===m)return;if(!l)l=rn(s,m)});else{if(s.issues.length===m)continue;if(!l)l=rn(s,m)}}if(u)return u.then(()=>s);return s},i=(s,a,c)=>{if(rn(s))return s.aborted=!0,s;let l=o(a,r,c);if(l instanceof Promise){if(c.async===!1)throw new Ct;return l.then((u)=>e._zod.parse(u,c))}return e._zod.parse(l,c)};e._zod.run=(s,a)=>{if(a.skipChecks)return e._zod.parse(s,a);if(a.direction==="backward"){let l=e._zod.parse({value:s.value,issues:[]},{...a,skipChecks:!0});if(l instanceof Promise)return l.then((u)=>i(u,s,a));return i(l,s,a)}let c=e._zod.parse(s,a);if(c instanceof Promise){if(a.async===!1)throw new Ct;return c.then((l)=>o(l,r,a))}return o(c,r,a)}}W(e,"~standard",()=>({validate:(o)=>{try{let i=Ld(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch(i){return Wd(e,o).then((s)=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}))}),Dn=g("$ZodString",(e,t)=>{D.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??sm(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch(o){}if(typeof n.value==="string")return n;return n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),q=g("$ZodStringFormat",(e,t)=>{wr.init(e,t),Dn.init(e,t)}),Nm=g("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Hd),q.init(e,t)}),Dm=g("$ZodUUID",(e,t)=>{if(t.version){let r={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(r===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Nn(r))}else t.pattern??(t.pattern=Nn());q.init(e,t)}),Mm=g("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Kd),q.init(e,t)}),$m=g("$ZodURL",(e,t)=>{q.init(e,t),e._zod.check=(n)=>{try{let r=n.value.trim(),o=new URL(r);if(t.hostname){if(t.hostname.lastIndex=0,!t.hostname.test(o.hostname))n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})}if(t.protocol){if(t.protocol.lastIndex=0,!t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol))n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})}if(t.normalize)n.value=o.href;else n.value=r;return}catch(r){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Lm=g("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=qd()),q.init(e,t)}),Wm=g("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Bd),q.init(e,t)}),Fm=g("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Fd),q.init(e,t)}),Gm=g("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Gd),q.init(e,t)}),Zm=g("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Zd),q.init(e,t)}),jm=g("$ZodXID",(e,t)=>{t.pattern??(t.pattern=jd),q.init(e,t)}),Um=g("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Ud),q.init(e,t)}),Bm=g("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=im(t)),q.init(e,t)}),Vm=g("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=rm),q.init(e,t)}),Hm=g("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=om(t)),q.init(e,t)}),Km=g("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Vd),q.init(e,t)}),qm=g("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Yd),q.init(e,t),e._zod.bag.format="ipv4"}),Ym=g("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Jd),q.init(e,t),e._zod.bag.format="ipv6",e._zod.check=(n)=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),Jm=g("$ZodMAC",(e,t)=>{t.pattern??(t.pattern=Xd(t.delimiter)),q.init(e,t),e._zod.bag.format="mac"}),Xm=g("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Qd),q.init(e,t)}),Qm=g("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=em),q.init(e,t),e._zod.check=(n)=>{let r=n.value.split("/");try{if(r.length!==2)throw Error();let[o,i]=r;if(!i)throw Error();let s=Number(i);if(`${s}`!==i)throw Error();if(s<0||s>128)throw Error();new URL(`http://[${o}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function ef(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var tf=g("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=tm),q.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(n)=>{if(ef(n.value))return;n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});function JS(e){if(!Ta.test(e))return!1;let t=e.replace(/[-_]/g,(r)=>r==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return ef(n)}var nf=g("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Ta),q.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(n)=>{if(JS(n.value))return;n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),rf=g("$ZodE164",(e,t)=>{t.pattern??(t.pattern=nm),q.init(e,t)});function XS(e,t=null){try{let n=e.split(".");if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let o=JSON.parse(atob(r));if("typ"in o&&o?.typ!=="JWT")return!1;if(!o.alg)return!1;if(t&&(!("alg"in o)||o.alg!==t))return!1;return!0}catch{return!1}}var of=g("$ZodJWT",(e,t)=>{q.init(e,t),e._zod.check=(n)=>{if(XS(n.value,t.alg))return;n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),sf=g("$ZodCustomStringFormat",(e,t)=>{q.init(e,t),e._zod.check=(n)=>{if(t.fn(n.value))return;n.issues.push({code:"invalid_format",format:t.format,input:n.value,inst:e,continue:!t.abort})}}),Wa=g("$ZodNumber",(e,t)=>{D.init(e,t),e._zod.pattern=e._zod.bag.pattern??Ko,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch(s){}let o=n.value;if(typeof o==="number"&&!Number.isNaN(o)&&Number.isFinite(o))return n;let i=typeof o==="number"?Number.isNaN(o)?"NaN":!Number.isFinite(o)?"Infinity":void 0:void 0;return n.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...i?{received:i}:{}}),n}}),af=g("$ZodNumberFormat",(e,t)=>{gm.init(e,t),Wa.init(e,t)}),Jo=g("$ZodBoolean",(e,t)=>{D.init(e,t),e._zod.pattern=lm,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(i){}let o=n.value;if(typeof o==="boolean")return n;return n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}}),Fa=g("$ZodBigInt",(e,t)=>{D.init(e,t),e._zod.pattern=am,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch(o){}if(typeof n.value==="bigint")return n;return n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:e}),n}}),cf=g("$ZodBigIntFormat",(e,t)=>{hm.init(e,t),Fa.init(e,t)}),lf=g("$ZodSymbol",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(typeof o==="symbol")return n;return n.issues.push({expected:"symbol",code:"invalid_type",input:o,inst:e}),n}}),uf=g("$ZodUndefined",(e,t)=>{D.init(e,t),e._zod.pattern=dm,e._zod.values=new Set([void 0]),e._zod.optin="optional",e._zod.optout="optional",e._zod.parse=(n,r)=>{let o=n.value;if(typeof o>"u")return n;return n.issues.push({expected:"undefined",code:"invalid_type",input:o,inst:e}),n}}),df=g("$ZodNull",(e,t)=>{D.init(e,t),e._zod.pattern=um,e._zod.values=new Set([null]),e._zod.parse=(n,r)=>{let o=n.value;if(o===null)return n;return n.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),n}}),mf=g("$ZodAny",(e,t)=>{D.init(e,t),e._zod.parse=(n)=>n}),ff=g("$ZodUnknown",(e,t)=>{D.init(e,t),e._zod.parse=(n)=>n}),pf=g("$ZodNever",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)}),gf=g("$ZodVoid",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(typeof o>"u")return n;return n.issues.push({expected:"void",code:"invalid_type",input:o,inst:e}),n}}),hf=g("$ZodDate",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(a){}let o=n.value,i=o instanceof Date;if(i&&!Number.isNaN(o.getTime()))return n;return n.issues.push({expected:"date",code:"invalid_type",input:o,...i?{received:"Invalid Date"}:{},inst:e}),n}});function FS(e,t,n){if(e.issues.length)t.issues.push(...Ze(n,e.issues));t.value[n]=e.value}var yf=g("$ZodArray",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);let i=[];for(let s=0;s<o.length;s++){let a=o[s],c=t.element._zod.run({value:a,issues:[]},r);if(c instanceof Promise)i.push(c.then((l)=>FS(l,n,s)));else FS(c,n,s)}if(i.length)return Promise.all(i).then(()=>n);return n}});function La(e,t,n,r,o){if(e.issues.length){if(o&&!(n in r))return;t.issues.push(...Ze(n,e.issues))}if(e.value===void 0){if(n in r)t.value[n]=void 0}else t.value[n]=e.value}function QS(e){let t=Object.keys(e.shape);for(let r of t)if(!e.shape?.[r]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${r}": expected a Zod schema`);let n=Nd(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function ex(e,t,n,r,o,i){let s=[],a=o.keySet,c=o.catchall._zod,l=c.def.type,u=c.optout==="optional";for(let d in t){if(a.has(d))continue;if(l==="never"){s.push(d);continue}let m=c.run({value:t[d],issues:[]},r);if(m instanceof Promise)e.push(m.then((f)=>La(f,n,d,t,u)));else La(m,n,d,t,u)}if(s.length)n.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:i});if(!e.length)return n;return Promise.all(e).then(()=>n)}var tx=g("$ZodObject",(e,t)=>{if(D.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let a=t.shape;Object.defineProperty(t,"shape",{get:()=>{let c={...a};return Object.defineProperty(t,"shape",{value:c}),c}})}let r=yr(()=>QS(t));W(e._zod,"propValues",()=>{let a=t.shape,c={};for(let l in a){let u=a[l]._zod;if(u.values){c[l]??(c[l]=new Set);for(let d of u.values)c[l].add(d)}}return c});let o=zn,i=t.catchall,s;e._zod.parse=(a,c)=>{s??(s=r.value);let l=a.value;if(!o(l))return a.issues.push({expected:"object",code:"invalid_type",input:l,inst:e}),a;a.value={};let u=[],d=s.shape;for(let m of s.keys){let f=d[m],p=f._zod.optout==="optional",h=f._zod.run({value:l[m],issues:[]},c);if(h instanceof Promise)u.push(h.then((y)=>La(y,a,m,l,p)));else La(h,a,m,l,p)}if(!i)return u.length?Promise.all(u).then(()=>a):a;return ex(u,l,a,c,r.value,e)}}),bf=g("$ZodObjectJIT",(e,t)=>{tx.init(e,t);let n=e._zod.parse,r=yr(()=>QS(t)),o=(m)=>{let f=new za(["shape","payload","ctx"]),p=r.value,h=(A)=>{let x=ga(A);return`shape[${x}]._zod.run({ value: input[${x}], issues: [] }, ctx)`};f.write("const input = payload.value;");let y=Object.create(null),b=0;for(let A of p.keys)y[A]=`key_${b++}`;f.write("const newResult = {};");for(let A of p.keys){let x=y[A],P=ga(A),k=m[A]?._zod?.optout==="optional";if(f.write(`const ${x} = ${h(A)};`),k)f.write(`
|
|
65
|
+
if (${x}.issues.length) {
|
|
66
66
|
if (${P} in input) {
|
|
67
|
-
payload.issues = payload.issues.concat(${
|
|
67
|
+
payload.issues = payload.issues.concat(${x}.issues.map(iss => ({
|
|
68
68
|
...iss,
|
|
69
69
|
path: iss.path ? [${P}, ...iss.path] : [${P}]
|
|
70
70
|
})));
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
-
if (${
|
|
74
|
+
if (${x}.value === undefined) {
|
|
75
75
|
if (${P} in input) {
|
|
76
76
|
newResult[${P}] = undefined;
|
|
77
77
|
}
|
|
78
78
|
} else {
|
|
79
|
-
newResult[${P}] = ${
|
|
79
|
+
newResult[${P}] = ${x}.value;
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
`);else
|
|
83
|
-
if (${
|
|
84
|
-
payload.issues = payload.issues.concat(${
|
|
82
|
+
`);else f.write(`
|
|
83
|
+
if (${x}.issues.length) {
|
|
84
|
+
payload.issues = payload.issues.concat(${x}.issues.map(iss => ({
|
|
85
85
|
...iss,
|
|
86
86
|
path: iss.path ? [${P}, ...iss.path] : [${P}]
|
|
87
87
|
})));
|
|
88
88
|
}
|
|
89
89
|
|
|
90
|
-
if (${
|
|
90
|
+
if (${x}.value === undefined) {
|
|
91
91
|
if (${P} in input) {
|
|
92
92
|
newResult[${P}] = undefined;
|
|
93
93
|
}
|
|
94
94
|
} else {
|
|
95
|
-
newResult[${P}] = ${
|
|
95
|
+
newResult[${P}] = ${x}.value;
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
-
`)}m.write("payload.value = newResult;"),m.write("return payload;");let R=m.compile();return(w,E)=>R(f,w,E)},i,s=$n,a=!Fo.jitless,l=a&&Od.value,u=t.catchall,d;e._zod.parse=(f,m)=>{d??(d=r.value);let p=f.value;if(!s(p))return f.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),f;if(a&&l&&m?.async===!1&&m.jitless!==!0){if(!i)i=o(t.shape);if(f=i(f,m),!u)return f;return Ux([],p,f,m,d,e)}return n(f,m)}});function Ix(e,t,n,r){for(let i of e)if(i.issues.length===0)return t.value=i.value,t;let o=e.filter((i)=>!ln(i));if(o.length===1)return t.value=o[0].value,o[0];return t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((i)=>i.issues.map((s)=>Pe(s,r,se())))}),t}var Xo=g("$ZodUnion",(e,t)=>{D.init(e,t),F(e._zod,"optin",()=>t.options.some((o)=>o._zod.optin==="optional")?"optional":void 0),F(e._zod,"optout",()=>t.options.some((o)=>o._zod.optout==="optional")?"optional":void 0),F(e._zod,"values",()=>{if(t.options.every((o)=>o._zod.values))return new Set(t.options.flatMap((o)=>Array.from(o._zod.values)));return}),F(e._zod,"pattern",()=>{if(t.options.every((o)=>o._zod.pattern)){let o=t.options.map((i)=>i._zod.pattern);return new RegExp(`^(${o.map((i)=>Bo(i.source)).join("|")})$`)}return});let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(o,i)=>{if(n)return r(o,i);let s=!1,a=[];for(let c of t.options){let l=c._zod.run({value:o.value,issues:[]},i);if(l instanceof Promise)a.push(l),s=!0;else{if(l.issues.length===0)return l;a.push(l)}}if(!s)return Ix(a,o,e,i);return Promise.all(a).then((c)=>Ix(c,o,e,i))}});function Ox(e,t,n,r){let o=e.filter((i)=>i.issues.length===0);if(o.length===1)return t.value=o[0].value,t;if(o.length===0)t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((i)=>i.issues.map((s)=>Pe(s,r,se())))});else t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:[],inclusive:!1});return t}var Sf=g("$ZodXor",(e,t)=>{Xo.init(e,t),t.inclusive=!1;let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(o,i)=>{if(n)return r(o,i);let s=!1,a=[];for(let c of t.options){let l=c._zod.run({value:o.value,issues:[]},i);if(l instanceof Promise)a.push(l),s=!0;else a.push(l)}if(!s)return Ox(a,o,e,i);return Promise.all(a).then((c)=>Ox(c,o,e,i))}}),xf=g("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,Xo.init(e,t);let n=e._zod.parse;F(e._zod,"propValues",()=>{let o={};for(let i of t.options){let s=i._zod.propValues;if(!s||Object.keys(s).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(let[a,c]of Object.entries(s)){if(!o[a])o[a]=new Set;for(let l of c)o[a].add(l)}}return o});let r=br(()=>{let o=t.options,i=new Map;for(let s of o){let a=s._zod.propValues?.[t.discriminator];if(!a||a.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(s)}"`);for(let c of a){if(i.has(c))throw Error(`Duplicate discriminator value "${String(c)}"`);i.set(c,s)}}return i});e._zod.parse=(o,i)=>{let s=o.value;if(!$n(s))return o.issues.push({code:"invalid_type",expected:"object",input:s,inst:e}),o;let a=r.value.get(s?.[t.discriminator]);if(a)return a._zod.run(o,i);if(t.unionFallback)return n(o,i);return o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:s,path:[t.discriminator],inst:e}),o}}),_f=g("$ZodIntersection",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value,i=t.left._zod.run({value:o,issues:[]},r),s=t.right._zod.run({value:o,issues:[]},r);if(i instanceof Promise||s instanceof Promise)return Promise.all([i,s]).then(([c,l])=>zx(n,c,l));return zx(n,i,s)}});function Nm(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(cn(e)&&cn(t)){let n=Object.keys(t),r=Object.keys(e).filter((i)=>n.indexOf(i)!==-1),o={...e,...t};for(let i of r){let s=Nm(e[i],t[i]);if(!s.valid)return{valid:!1,mergeErrorPath:[i,...s.mergeErrorPath]};o[i]=s.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let o=e[r],i=t[r],s=Nm(o,i);if(!s.valid)return{valid:!1,mergeErrorPath:[r,...s.mergeErrorPath]};n.push(s.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function zx(e,t,n){let r=new Map,o;for(let a of t.issues)if(a.code==="unrecognized_keys"){o??(o=a);for(let c of a.keys){if(!r.has(c))r.set(c,{});r.get(c).l=!0}}else e.issues.push(a);for(let a of n.issues)if(a.code==="unrecognized_keys")for(let c of a.keys){if(!r.has(c))r.set(c,{});r.get(c).r=!0}else e.issues.push(a);let i=[...r].filter(([,a])=>a.l&&a.r).map(([a])=>a);if(i.length&&o)e.issues.push({...o,keys:i});if(ln(e))return e;let s=Nm(t.value,n.value);if(!s.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}var Ua=g("$ZodTuple",(e,t)=>{D.init(e,t);let n=t.items;e._zod.parse=(r,o)=>{let i=r.value;if(!Array.isArray(i))return r.issues.push({input:i,inst:e,expected:"tuple",code:"invalid_type"}),r;r.value=[];let s=[],a=[...n].reverse().findIndex((u)=>u._zod.optin!=="optional"),c=a===-1?0:n.length-a;if(!t.rest){let u=i.length>n.length,d=i.length<c-1;if(u||d)return r.issues.push({...u?{code:"too_big",maximum:n.length,inclusive:!0}:{code:"too_small",minimum:n.length},input:i,inst:e,origin:"array"}),r}let l=-1;for(let u of n){if(l++,l>=i.length){if(l>=c)continue}let d=u._zod.run({value:i[l],issues:[]},o);if(d instanceof Promise)s.push(d.then((f)=>Ma(f,r,l)));else Ma(d,r,l)}if(t.rest){let u=i.slice(n.length);for(let d of u){l++;let f=t.rest._zod.run({value:d,issues:[]},o);if(f instanceof Promise)s.push(f.then((m)=>Ma(m,r,l)));else Ma(f,r,l)}}if(s.length)return Promise.all(s).then(()=>r);return r}});function Ma(e,t,n){if(e.issues.length)t.issues.push(...Fe(n,e.issues));t.value[n]=e.value}var Cf=g("$ZodRecord",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(!cn(o))return n.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),n;let i=[],s=t.keyType._zod.values;if(s){n.value={};let a=new Set;for(let l of s)if(typeof l==="string"||typeof l==="number"||typeof l==="symbol"){a.add(typeof l==="number"?l.toString():l);let u=t.valueType._zod.run({value:o[l],issues:[]},r);if(u instanceof Promise)i.push(u.then((d)=>{if(d.issues.length)n.issues.push(...Fe(l,d.issues));n.value[l]=d.value}));else{if(u.issues.length)n.issues.push(...Fe(l,u.issues));n.value[l]=u.value}}let c;for(let l in o)if(!a.has(l))c=c??[],c.push(l);if(c&&c.length>0)n.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:c})}else{n.value={};for(let a of Reflect.ownKeys(o)){if(a==="__proto__")continue;let c=t.keyType._zod.run({value:a,issues:[]},r);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof a==="string"&&qo.test(a)&&c.issues.length&&c.issues.some((d)=>d.code==="invalid_type"&&d.expected==="number")){let d=t.keyType._zod.run({value:Number(a),issues:[]},r);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(d.issues.length===0)c=d}if(c.issues.length){if(t.mode==="loose")n.value[a]=o[a];else n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map((d)=>Pe(d,r,se())),input:a,path:[a],inst:e});continue}let u=t.valueType._zod.run({value:o[a],issues:[]},r);if(u instanceof Promise)i.push(u.then((d)=>{if(d.issues.length)n.issues.push(...Fe(a,d.issues));n.value[c.value]=d.value}));else{if(u.issues.length)n.issues.push(...Fe(a,u.issues));n.value[c.value]=u.value}}}if(i.length)return Promise.all(i).then(()=>n);return n}}),wf=g("$ZodMap",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(!(o instanceof Map))return n.issues.push({expected:"map",code:"invalid_type",input:o,inst:e}),n;let i=[];n.value=new Map;for(let[s,a]of o){let c=t.keyType._zod.run({value:s,issues:[]},r),l=t.valueType._zod.run({value:a,issues:[]},r);if(c instanceof Promise||l instanceof Promise)i.push(Promise.all([c,l]).then(([u,d])=>{Nx(u,d,n,s,o,e,r)}));else Nx(c,l,n,s,o,e,r)}if(i.length)return Promise.all(i).then(()=>n);return n}});function Nx(e,t,n,r,o,i,s){if(e.issues.length)if(Uo.has(typeof r))n.issues.push(...Fe(r,e.issues));else n.issues.push({code:"invalid_key",origin:"map",input:o,inst:i,issues:e.issues.map((a)=>Pe(a,s,se()))});if(t.issues.length)if(Uo.has(typeof r))n.issues.push(...Fe(r,t.issues));else n.issues.push({origin:"map",code:"invalid_element",input:o,inst:i,key:r,issues:t.issues.map((a)=>Pe(a,s,se()))});n.value.set(e.value,t.value)}var Rf=g("$ZodSet",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(!(o instanceof Set))return n.issues.push({input:o,inst:e,expected:"set",code:"invalid_type"}),n;let i=[];n.value=new Set;for(let s of o){let a=t.valueType._zod.run({value:s,issues:[]},r);if(a instanceof Promise)i.push(a.then((c)=>Dx(c,n)));else Dx(a,n)}if(i.length)return Promise.all(i).then(()=>n);return n}});function Dx(e,t){if(e.issues.length)t.issues.push(...e.issues);t.value.add(e.value)}var Ef=g("$ZodEnum",(e,t)=>{D.init(e,t);let n=Zo(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter((o)=>Uo.has(typeof o)).map((o)=>typeof o==="string"?Ye(o):o.toString()).join("|")})$`),e._zod.parse=(o,i)=>{let s=o.value;if(r.has(s))return o;return o.issues.push({code:"invalid_value",values:n,input:s,inst:e}),o}}),Pf=g("$ZodLiteral",(e,t)=>{if(D.init(e,t),t.values.length===0)throw Error("Cannot create literal schema with no valid values");let n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map((r)=>typeof r==="string"?Ye(r):r?Ye(r.toString()):String(r)).join("|")})$`),e._zod.parse=(r,o)=>{let i=r.value;if(n.has(i))return r;return r.issues.push({code:"invalid_value",values:t.values,input:i,inst:e}),r}}),kf=g("$ZodFile",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(o instanceof File)return n;return n.issues.push({expected:"file",code:"invalid_type",input:o,inst:e}),n}}),Af=g("$ZodTransform",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Dn(e.constructor.name);let o=t.transform(n.value,n);if(r.async)return(o instanceof Promise?o:Promise.resolve(o)).then((s)=>(n.value=s,n));if(o instanceof Promise)throw new _t;return n.value=o,n}});function $x(e,t){if(e.issues.length&&t===void 0)return{issues:[],value:void 0};return e}var ja=g("$ZodOptional",(e,t)=>{D.init(e,t),e._zod.optin="optional",e._zod.optout="optional",F(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),F(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${Bo(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){let o=t.innerType._zod.run(n,r);if(o instanceof Promise)return o.then((i)=>$x(i,n.value));return $x(o,n.value)}if(n.value===void 0)return n;return t.innerType._zod.run(n,r)}}),Tf=g("$ZodExactOptional",(e,t)=>{ja.init(e,t),F(e._zod,"values",()=>t.innerType._zod.values),F(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,r)=>t.innerType._zod.run(n,r)}),If=g("$ZodNullable",(e,t)=>{D.init(e,t),F(e._zod,"optin",()=>t.innerType._zod.optin),F(e._zod,"optout",()=>t.innerType._zod.optout),F(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${Bo(n.source)}|null)$`):void 0}),F(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(n,r)=>{if(n.value===null)return n;return t.innerType._zod.run(n,r)}}),Of=g("$ZodDefault",(e,t)=>{D.init(e,t),e._zod.optin="optional",F(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)return n.value=t.defaultValue,n;let o=t.innerType._zod.run(n,r);if(o instanceof Promise)return o.then((i)=>Mx(i,t));return Mx(o,t)}});function Mx(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var zf=g("$ZodPrefault",(e,t)=>{D.init(e,t),e._zod.optin="optional",F(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)n.value=t.defaultValue;return t.innerType._zod.run(n,r)}}),Nf=g("$ZodNonOptional",(e,t)=>{D.init(e,t),F(e._zod,"values",()=>{let n=t.innerType._zod.values;return n?new Set([...n].filter((r)=>r!==void 0)):void 0}),e._zod.parse=(n,r)=>{let o=t.innerType._zod.run(n,r);if(o instanceof Promise)return o.then((i)=>Lx(i,e));return Lx(o,e)}});function Lx(e,t){if(!e.issues.length&&e.value===void 0)e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t});return e}var Df=g("$ZodSuccess",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Dn("ZodSuccess");let o=t.innerType._zod.run(n,r);if(o instanceof Promise)return o.then((i)=>(n.value=i.issues.length===0,n));return n.value=o.issues.length===0,n}}),$f=g("$ZodCatch",(e,t)=>{D.init(e,t),F(e._zod,"optin",()=>t.innerType._zod.optin),F(e._zod,"optout",()=>t.innerType._zod.optout),F(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);let o=t.innerType._zod.run(n,r);if(o instanceof Promise)return o.then((i)=>{if(n.value=i.value,i.issues.length)n.value=t.catchValue({...n,error:{issues:i.issues.map((s)=>Pe(s,r,se()))},input:n.value}),n.issues=[];return n});if(n.value=o.value,o.issues.length)n.value=t.catchValue({...n,error:{issues:o.issues.map((i)=>Pe(i,r,se()))},input:n.value}),n.issues=[];return n}}),Mf=g("$ZodNaN",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{if(typeof n.value!=="number"||!Number.isNaN(n.value))return n.issues.push({input:n.value,inst:e,expected:"nan",code:"invalid_type"}),n;return n}}),Lf=g("$ZodPipe",(e,t)=>{D.init(e,t),F(e._zod,"values",()=>t.in._zod.values),F(e._zod,"optin",()=>t.in._zod.optin),F(e._zod,"optout",()=>t.out._zod.optout),F(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if(r.direction==="backward"){let i=t.out._zod.run(n,r);if(i instanceof Promise)return i.then((s)=>La(s,t.in,r));return La(i,t.in,r)}let o=t.in._zod.run(n,r);if(o instanceof Promise)return o.then((i)=>La(i,t.out,r));return La(o,t.out,r)}});function La(e,t,n){if(e.issues.length)return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues},n)}var Qo=g("$ZodCodec",(e,t)=>{D.init(e,t),F(e._zod,"values",()=>t.in._zod.values),F(e._zod,"optin",()=>t.in._zod.optin),F(e._zod,"optout",()=>t.out._zod.optout),F(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if((r.direction||"forward")==="forward"){let i=t.in._zod.run(n,r);if(i instanceof Promise)return i.then((s)=>Wa(s,t,r));return Wa(i,t,r)}else{let i=t.out._zod.run(n,r);if(i instanceof Promise)return i.then((s)=>Wa(s,t,r));return Wa(i,t,r)}}});function Wa(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||"forward")==="forward"){let o=t.transform(e.value,e);if(o instanceof Promise)return o.then((i)=>Fa(e,i,t.out,n));return Fa(e,o,t.out,n)}else{let o=t.reverseTransform(e.value,e);if(o instanceof Promise)return o.then((i)=>Fa(e,i,t.in,n));return Fa(e,o,t.in,n)}}function Fa(e,t,n,r){if(e.issues.length)return e.aborted=!0,e;return n._zod.run({value:t,issues:e.issues},r)}var Wf=g("$ZodReadonly",(e,t)=>{D.init(e,t),F(e._zod,"propValues",()=>t.innerType._zod.propValues),F(e._zod,"values",()=>t.innerType._zod.values),F(e._zod,"optin",()=>t.innerType?._zod?.optin),F(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);let o=t.innerType._zod.run(n,r);if(o instanceof Promise)return o.then(Wx);return Wx(o)}});function Wx(e){return e.value=Object.freeze(e.value),e}var Ff=g("$ZodTemplateLiteral",(e,t)=>{D.init(e,t);let n=[];for(let r of t.parts)if(typeof r==="object"&&r!==null){if(!r._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...r._zod.traits].shift()}`);let o=r._zod.pattern instanceof RegExp?r._zod.pattern.source:r._zod.pattern;if(!o)throw Error(`Invalid template literal part: ${r._zod.traits}`);let i=o.startsWith("^")?1:0,s=o.endsWith("$")?o.length-1:o.length;n.push(o.slice(i,s))}else if(r===null||Nd.has(typeof r))n.push(Ye(`${r}`));else throw Error(`Invalid template literal part: ${r}`);e._zod.pattern=new RegExp(`^${n.join("")}$`),e._zod.parse=(r,o)=>{if(typeof r.value!=="string")return r.issues.push({input:r.value,inst:e,expected:"string",code:"invalid_type"}),r;if(e._zod.pattern.lastIndex=0,!e._zod.pattern.test(r.value))return r.issues.push({input:r.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),r;return r}}),Gf=g("$ZodFunction",(e,t)=>(D.init(e,t),e._def=t,e._zod.def=t,e.implement=(n)=>{if(typeof n!=="function")throw Error("implement() must be called with a function");return function(...r){let o=e._def.input?Ca(e._def.input,r):r,i=Reflect.apply(n,this,o);if(e._def.output)return Ca(e._def.output,i);return i}},e.implementAsync=(n)=>{if(typeof n!=="function")throw Error("implementAsync() must be called with a function");return async function(...r){let o=e._def.input?await wa(e._def.input,r):r,i=await Reflect.apply(n,this,o);if(e._def.output)return await wa(e._def.output,i);return i}},e._zod.parse=(n,r)=>{if(typeof n.value!=="function")return n.issues.push({code:"invalid_type",expected:"function",input:n.value,inst:e}),n;if(e._def.output&&e._def.output._zod.def.type==="promise")n.value=e.implementAsync(n.value);else n.value=e.implement(n.value);return n},e.input=(...n)=>{let r=e.constructor;if(Array.isArray(n[0]))return new r({type:"function",input:new Ua({type:"tuple",items:n[0],rest:n[1]}),output:e._def.output});return new r({type:"function",input:n[0],output:e._def.output})},e.output=(n)=>new e.constructor({type:"function",input:e._def.input,output:n}),e)),Zf=g("$ZodPromise",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>Promise.resolve(n.value).then((o)=>t.innerType._zod.run({value:o,issues:[]},r))}),Bf=g("$ZodLazy",(e,t)=>{D.init(e,t),F(e._zod,"innerType",()=>t.getter()),F(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),F(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),F(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),F(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,r)=>e._zod.innerType._zod.run(n,r)}),Uf=g("$ZodCustom",(e,t)=>{J.init(e,t),D.init(e,t),e._zod.parse=(n,r)=>n,e._zod.check=(n)=>{let r=n.value,o=t.fn(r);if(o instanceof Promise)return o.then((i)=>Fx(i,n,r,e));Fx(o,n,r,e);return}});function Fx(e,t,n,r){if(!e){let o={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};if(r._zod.def.params)o.params=r._zod.def.params;t.issues.push(vr(o))}}var ei={};var Hx,Ha=Symbol("ZodOutput"),Va=Symbol("ZodInput");class jf{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];if(this._map.set(e,n),n&&typeof n==="object"&&"id"in n)this._idmap.set(n.id,e);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);if(t&&typeof t==="object"&&"id"in t)this._idmap.delete(t.id);return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function ti(){return new jf}(Hx=globalThis).__zod_globalRegistry??(Hx.__zod_globalRegistry=ti());var Ae=globalThis.__zod_globalRegistry;function Hf(e,t){return new e({type:"string",...x(t)})}function Vf(e,t){return new e({type:"string",coerce:!0,...x(t)})}function qa(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...x(t)})}function ni(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...x(t)})}function Ka(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...x(t)})}function Ya(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...x(t)})}function Ja(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...x(t)})}function Xa(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...x(t)})}function ri(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...x(t)})}function Qa(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...x(t)})}function ec(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...x(t)})}function tc(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...x(t)})}function nc(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...x(t)})}function rc(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...x(t)})}function oc(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...x(t)})}function ic(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...x(t)})}function sc(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...x(t)})}function ac(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...x(t)})}function qf(e,t){return new e({type:"string",format:"mac",check:"string_format",abort:!1,...x(t)})}function cc(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...x(t)})}function lc(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...x(t)})}function uc(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...x(t)})}function dc(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...x(t)})}function mc(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...x(t)})}function fc(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...x(t)})}var pc={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function Kf(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...x(t)})}function Yf(e,t){return new e({type:"string",format:"date",check:"string_format",...x(t)})}function Jf(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...x(t)})}function Xf(e,t){return new e({type:"string",format:"duration",check:"string_format",...x(t)})}function Qf(e,t){return new e({type:"number",checks:[],...x(t)})}function ep(e,t){return new e({type:"number",coerce:!0,checks:[],...x(t)})}function tp(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...x(t)})}function np(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float32",...x(t)})}function rp(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float64",...x(t)})}function op(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"int32",...x(t)})}function ip(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"uint32",...x(t)})}function sp(e,t){return new e({type:"boolean",...x(t)})}function ap(e,t){return new e({type:"boolean",coerce:!0,...x(t)})}function cp(e,t){return new e({type:"bigint",...x(t)})}function lp(e,t){return new e({type:"bigint",coerce:!0,...x(t)})}function up(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...x(t)})}function dp(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...x(t)})}function mp(e,t){return new e({type:"symbol",...x(t)})}function fp(e,t){return new e({type:"undefined",...x(t)})}function pp(e,t){return new e({type:"null",...x(t)})}function gp(e){return new e({type:"any"})}function hp(e){return new e({type:"unknown"})}function yp(e,t){return new e({type:"never",...x(t)})}function bp(e,t){return new e({type:"void",...x(t)})}function vp(e,t){return new e({type:"date",...x(t)})}function Sp(e,t){return new e({type:"date",coerce:!0,...x(t)})}function xp(e,t){return new e({type:"nan",...x(t)})}function Ct(e,t){return new Na({check:"less_than",...x(t),value:e,inclusive:!1})}function Ze(e,t){return new Na({check:"less_than",...x(t),value:e,inclusive:!0})}function wt(e,t){return new Da({check:"greater_than",...x(t),value:e,inclusive:!1})}function xe(e,t){return new Da({check:"greater_than",...x(t),value:e,inclusive:!0})}function gc(e){return wt(0,e)}function hc(e){return Ct(0,e)}function yc(e){return Ze(0,e)}function bc(e){return xe(0,e)}function un(e,t){return new gm({check:"multiple_of",...x(t),value:e})}function dn(e,t){return new bm({check:"max_size",...x(t),maximum:e})}function Rt(e,t){return new vm({check:"min_size",...x(t),minimum:e})}function Wn(e,t){return new Sm({check:"size_equals",...x(t),size:e})}function Fn(e,t){return new xm({check:"max_length",...x(t),maximum:e})}function Zt(e,t){return new _m({check:"min_length",...x(t),minimum:e})}function Gn(e,t){return new Cm({check:"length_equals",...x(t),length:e})}function Pr(e,t){return new wm({check:"string_format",format:"regex",...x(t),pattern:e})}function kr(e){return new Rm({check:"string_format",format:"lowercase",...x(e)})}function Ar(e){return new Em({check:"string_format",format:"uppercase",...x(e)})}function Tr(e,t){return new Pm({check:"string_format",format:"includes",...x(t),includes:e})}function Ir(e,t){return new km({check:"string_format",format:"starts_with",...x(t),prefix:e})}function Or(e,t){return new Am({check:"string_format",format:"ends_with",...x(t),suffix:e})}function vc(e,t,n){return new Tm({check:"property",property:e,schema:t,...x(n)})}function zr(e,t){return new Im({check:"mime_type",mime:e,...x(t)})}function ct(e){return new Om({check:"overwrite",tx:e})}function Nr(e){return ct((t)=>t.normalize(e))}function Dr(){return ct((e)=>e.trim())}function $r(){return ct((e)=>e.toLowerCase())}function Mr(){return ct((e)=>e.toUpperCase())}function Lr(){return ct((e)=>Id(e))}function _p(e,t,n){return new e({type:"array",element:t,...x(n)})}function kD(e,t,n){return new e({type:"union",options:t,...x(n)})}function AD(e,t,n){return new e({type:"union",options:t,inclusive:!1,...x(n)})}function TD(e,t,n,r){return new e({type:"union",options:n,discriminator:t,...x(r)})}function ID(e,t,n){return new e({type:"intersection",left:t,right:n})}function OD(e,t,n,r){let o=n instanceof D;return new e({type:"tuple",items:t,rest:o?n:null,...x(o?r:n)})}function zD(e,t,n,r){return new e({type:"record",keyType:t,valueType:n,...x(r)})}function ND(e,t,n,r){return new e({type:"map",keyType:t,valueType:n,...x(r)})}function DD(e,t,n){return new e({type:"set",valueType:t,...x(n)})}function $D(e,t,n){let r=Array.isArray(t)?Object.fromEntries(t.map((o)=>[o,o])):t;return new e({type:"enum",entries:r,...x(n)})}function MD(e,t,n){return new e({type:"enum",entries:t,...x(n)})}function LD(e,t,n){return new e({type:"literal",values:Array.isArray(t)?t:[t],...x(n)})}function Cp(e,t){return new e({type:"file",...x(t)})}function WD(e,t){return new e({type:"transform",transform:t})}function FD(e,t){return new e({type:"optional",innerType:t})}function GD(e,t){return new e({type:"nullable",innerType:t})}function ZD(e,t,n){return new e({type:"default",innerType:t,get defaultValue(){return typeof n==="function"?n():zd(n)}})}function BD(e,t,n){return new e({type:"nonoptional",innerType:t,...x(n)})}function UD(e,t){return new e({type:"success",innerType:t})}function jD(e,t,n){return new e({type:"catch",innerType:t,catchValue:typeof n==="function"?n:()=>n})}function HD(e,t,n){return new e({type:"pipe",in:t,out:n})}function VD(e,t){return new e({type:"readonly",innerType:t})}function qD(e,t,n){return new e({type:"template_literal",parts:t,...x(n)})}function KD(e,t){return new e({type:"lazy",getter:t})}function YD(e,t){return new e({type:"promise",innerType:t})}function wp(e,t,n){let r=x(n);return r.abort??(r.abort=!0),new e({type:"custom",check:"custom",fn:t,...r})}function Rp(e,t,n){return new e({type:"custom",check:"custom",fn:t,...x(n)})}function Ep(e){let t=Vx((n)=>(n.addIssue=(r)=>{if(typeof r==="string")n.issues.push(vr(r,n.value,t._zod.def));else{let o=r;if(o.fatal)o.continue=!1;o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),n.issues.push(vr(o))}},e(n.value,n)));return t}function Vx(e,t){let n=new J({check:"custom",...x(t)});return n._zod.check=e,n}function Pp(e){let t=new J({check:"describe"});return t._zod.onattach=[(n)=>{let r=Ae.get(n)??{};Ae.add(n,{...r,description:e})}],t._zod.check=()=>{},t}function kp(e){let t=new J({check:"meta"});return t._zod.onattach=[(n)=>{let r=Ae.get(n)??{};Ae.add(n,{...r,...e})}],t._zod.check=()=>{},t}function Ap(e,t){let n=x(t),r=n.truthy??["true","1","yes","on","y","enabled"],o=n.falsy??["false","0","no","off","n","disabled"];if(n.case!=="sensitive")r=r.map((m)=>typeof m==="string"?m.toLowerCase():m),o=o.map((m)=>typeof m==="string"?m.toLowerCase():m);let i=new Set(r),s=new Set(o),a=e.Codec??Qo,c=e.Boolean??Jo,u=new(e.String??Ln)({type:"string",error:n.error}),d=new c({type:"boolean",error:n.error}),f=new a({type:"pipe",in:u,out:d,transform:(m,p)=>{let h=m;if(n.case!=="sensitive")h=h.toLowerCase();if(i.has(h))return!0;else if(s.has(h))return!1;else return p.issues.push({code:"invalid_value",expected:"stringbool",values:[...i,...s],input:p.value,inst:f,continue:!1}),{}},reverseTransform:(m,p)=>{if(m===!0)return r[0]||"true";else return o[0]||"false"},error:n.error});return f}function Wr(e,t,n,r={}){let o=x(r),i={...x(r),check:"string_format",type:"string",format:t,fn:typeof n==="function"?n:(a)=>n.test(a),...o};if(n instanceof RegExp)i.pattern=n;return new e(i)}var Fr=()=>{throw Error("JSON Schema conversion is not bundled into this plugin artifact")},Tp=()=>Fr,Sc=()=>Fr,Gr=Fr,X=Fr,Zr=Fr,Br=Fr;var JD={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Ip=(e,t,n,r)=>{let o=n;o.type="string";let{minimum:i,maximum:s,format:a,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof i==="number")o.minLength=i;if(typeof s==="number")o.maxLength=s;if(a){if(o.format=JD[a]??a,o.format==="")delete o.format;if(a==="time")delete o.format}if(l)o.contentEncoding=l;if(c&&c.size>0){let u=[...c];if(u.length===1)o.pattern=u[0].source;else if(u.length>1)o.allOf=[...u.map((d)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))]}},Op=(e,t,n,r)=>{let o=n,{minimum:i,maximum:s,format:a,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;if(typeof a==="string"&&a.includes("int"))o.type="integer";else o.type="number";if(typeof u==="number")if(t.target==="draft-04"||t.target==="openapi-3.0")o.minimum=u,o.exclusiveMinimum=!0;else o.exclusiveMinimum=u;if(typeof i==="number"){if(o.minimum=i,typeof u==="number"&&t.target!=="draft-04")if(u>=i)delete o.minimum;else delete o.exclusiveMinimum}if(typeof l==="number")if(t.target==="draft-04"||t.target==="openapi-3.0")o.maximum=l,o.exclusiveMaximum=!0;else o.exclusiveMaximum=l;if(typeof s==="number"){if(o.maximum=s,typeof l==="number"&&t.target!=="draft-04")if(l<=s)delete o.maximum;else delete o.exclusiveMaximum}if(typeof c==="number")o.multipleOf=c},zp=(e,t,n,r)=>{n.type="boolean"},Np=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},Dp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},$p=(e,t,n,r)=>{if(t.target==="openapi-3.0")n.type="string",n.nullable=!0,n.enum=[null];else n.type="null"},Mp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},Lp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},Wp=(e,t,n,r)=>{n.not={}},Fp=(e,t,n,r)=>{},Gp=(e,t,n,r)=>{},Zp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},Bp=(e,t,n,r)=>{let o=e._zod.def,i=Zo(o.entries);if(i.every((s)=>typeof s==="number"))n.type="number";if(i.every((s)=>typeof s==="string"))n.type="string";n.enum=i},Up=(e,t,n,r)=>{let o=e._zod.def,i=[];for(let s of o.values)if(s===void 0){if(t.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof s==="bigint")if(t.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else i.push(Number(s));else i.push(s);if(i.length===0);else if(i.length===1){let s=i[0];if(n.type=s===null?"null":typeof s,t.target==="draft-04"||t.target==="openapi-3.0")n.enum=[s];else n.const=s}else{if(i.every((s)=>typeof s==="number"))n.type="number";if(i.every((s)=>typeof s==="string"))n.type="string";if(i.every((s)=>typeof s==="boolean"))n.type="boolean";if(i.every((s)=>s===null))n.type="null";n.enum=i}},jp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Hp=(e,t,n,r)=>{let o=n,i=e._zod.pattern;if(!i)throw Error("Pattern not found in template literal");o.type="string",o.pattern=i.source},Vp=(e,t,n,r)=>{let o=n,i={type:"string",format:"binary",contentEncoding:"binary"},{minimum:s,maximum:a,mime:c}=e._zod.bag;if(s!==void 0)i.minLength=s;if(a!==void 0)i.maxLength=a;if(c)if(c.length===1)i.contentMediaType=c[0],Object.assign(o,i);else Object.assign(o,i),o.anyOf=c.map((l)=>({contentMediaType:l}));else Object.assign(o,i)},qp=(e,t,n,r)=>{n.type="boolean"},Kp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},Yp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},Jp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},Xp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},Qp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},eg=(e,t,n,r)=>{let o=n,i=e._zod.def,{minimum:s,maximum:a}=e._zod.bag;if(typeof s==="number")o.minItems=s;if(typeof a==="number")o.maxItems=a;o.type="array",o.items=X(i.element,t,{...r,path:[...r.path,"items"]})},tg=(e,t,n,r)=>{let o=n,i=e._zod.def;o.type="object",o.properties={};let s=i.shape;for(let l in s)o.properties[l]=X(s[l],t,{...r,path:[...r.path,"properties",l]});let a=new Set(Object.keys(s)),c=new Set([...a].filter((l)=>{let u=i.shape[l]._zod;if(t.io==="input")return u.optin===void 0;else return u.optout===void 0}));if(c.size>0)o.required=Array.from(c);if(i.catchall?._zod.def.type==="never")o.additionalProperties=!1;else if(!i.catchall){if(t.io==="output")o.additionalProperties=!1}else if(i.catchall)o.additionalProperties=X(i.catchall,t,{...r,path:[...r.path,"additionalProperties"]})},_c=(e,t,n,r)=>{let o=e._zod.def,i=o.inclusive===!1,s=o.options.map((a,c)=>X(a,t,{...r,path:[...r.path,i?"oneOf":"anyOf",c]}));if(i)n.oneOf=s;else n.anyOf=s},ng=(e,t,n,r)=>{let o=e._zod.def,i=X(o.left,t,{...r,path:[...r.path,"allOf",0]}),s=X(o.right,t,{...r,path:[...r.path,"allOf",1]}),a=(l)=>("allOf"in l)&&Object.keys(l).length===1,c=[...a(i)?i.allOf:[i],...a(s)?s.allOf:[s]];n.allOf=c},rg=(e,t,n,r)=>{let o=n,i=e._zod.def;o.type="array";let s=t.target==="draft-2020-12"?"prefixItems":"items",a=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",c=i.items.map((f,m)=>X(f,t,{...r,path:[...r.path,s,m]})),l=i.rest?X(i.rest,t,{...r,path:[...r.path,a,...t.target==="openapi-3.0"?[i.items.length]:[]]}):null;if(t.target==="draft-2020-12"){if(o.prefixItems=c,l)o.items=l}else if(t.target==="openapi-3.0"){if(o.items={anyOf:c},l)o.items.anyOf.push(l);if(o.minItems=c.length,!l)o.maxItems=c.length}else if(o.items=c,l)o.additionalItems=l;let{minimum:u,maximum:d}=e._zod.bag;if(typeof u==="number")o.minItems=u;if(typeof d==="number")o.maxItems=d},og=(e,t,n,r)=>{let o=n,i=e._zod.def;o.type="object";let s=i.keyType,c=s._zod.bag?.patterns;if(i.mode==="loose"&&c&&c.size>0){let u=X(i.valueType,t,{...r,path:[...r.path,"patternProperties","*"]});o.patternProperties={};for(let d of c)o.patternProperties[d.source]=u}else{if(t.target==="draft-07"||t.target==="draft-2020-12")o.propertyNames=X(i.keyType,t,{...r,path:[...r.path,"propertyNames"]});o.additionalProperties=X(i.valueType,t,{...r,path:[...r.path,"additionalProperties"]})}let l=s._zod.values;if(l){let u=[...l].filter((d)=>typeof d==="string"||typeof d==="number");if(u.length>0)o.required=u}},ig=(e,t,n,r)=>{let o=e._zod.def,i=X(o.innerType,t,r),s=t.seen.get(e);if(t.target==="openapi-3.0")s.ref=o.innerType,n.nullable=!0;else n.anyOf=[i,{type:"null"}]},sg=(e,t,n,r)=>{let o=e._zod.def;X(o.innerType,t,r);let i=t.seen.get(e);i.ref=o.innerType},ag=(e,t,n,r)=>{let o=e._zod.def;X(o.innerType,t,r);let i=t.seen.get(e);i.ref=o.innerType,n.default=JSON.parse(JSON.stringify(o.defaultValue))},cg=(e,t,n,r)=>{let o=e._zod.def;X(o.innerType,t,r);let i=t.seen.get(e);if(i.ref=o.innerType,t.io==="input")n._prefault=JSON.parse(JSON.stringify(o.defaultValue))},lg=(e,t,n,r)=>{let o=e._zod.def;X(o.innerType,t,r);let i=t.seen.get(e);i.ref=o.innerType;let s;try{s=o.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}n.default=s},ug=(e,t,n,r)=>{let o=e._zod.def,i=t.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;X(i,t,r);let s=t.seen.get(e);s.ref=i},dg=(e,t,n,r)=>{let o=e._zod.def;X(o.innerType,t,r);let i=t.seen.get(e);i.ref=o.innerType,n.readOnly=!0},mg=(e,t,n,r)=>{let o=e._zod.def;X(o.innerType,t,r);let i=t.seen.get(e);i.ref=o.innerType},Cc=(e,t,n,r)=>{let o=e._zod.def;X(o.innerType,t,r);let i=t.seen.get(e);i.ref=o.innerType},fg=(e,t,n,r)=>{let o=e._zod.innerType;X(o,t,r);let i=t.seen.get(e);i.ref=o},xc={string:Ip,number:Op,boolean:zp,bigint:Np,symbol:Dp,null:$p,undefined:Mp,void:Lp,never:Wp,any:Fp,unknown:Gp,date:Zp,enum:Bp,literal:Up,nan:jp,template_literal:Hp,file:Vp,success:qp,custom:Kp,function:Yp,transform:Jp,map:Xp,set:Qp,array:eg,object:tg,union:_c,intersection:ng,tuple:rg,record:og,nullable:ig,nonoptional:sg,default:ag,prefault:cg,catch:lg,pipe:ug,readonly:dg,promise:mg,optional:Cc,lazy:fg};function oi(e,t){if("_idmap"in e){let r=e,o=Gr({...t,processors:xc}),i={};for(let c of r._idmap.entries()){let[l,u]=c;X(u,o)}let s={},a={registry:r,uri:t?.uri,defs:i};o.external=a;for(let c of r._idmap.entries()){let[l,u]=c;Zr(o,u),s[l]=Br(o,u)}if(Object.keys(i).length>0){let c=o.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[c]:i}}return{schemas:s}}let n=Gr({...t,processors:xc});return X(e,n),Zr(n,e),Br(n,e)}class pg{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(e){this.ctx.counter=e}get seen(){return this.ctx.seen}constructor(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";this.ctx=Gr({processors:xc,target:t,...e?.metadata&&{metadata:e.metadata},...e?.unrepresentable&&{unrepresentable:e.unrepresentable},...e?.override&&{override:e.override},...e?.io&&{io:e.io}})}process(e,t={path:[],schemaPath:[]}){return X(e,this.ctx,t)}emit(e,t){if(t){if(t.cycles)this.ctx.cycles=t.cycles;if(t.reused)this.ctx.reused=t.reused;if(t.external)this.ctx.external=t.external}Zr(this.ctx,e);let n=Br(this.ctx,e),{"~standard":r,...o}=n;return o}}var qx={};var li={};fn(li,{ZodISODate:()=>si,ZodISODateTime:()=>ii,ZodISODuration:()=>ci,ZodISOTime:()=>ai,date:()=>hg,datetime:()=>gg,duration:()=>bg,time:()=>yg});var ii=g("ZodISODateTime",(e,t)=>{Hm.init(e,t),K.init(e,t)});function gg(e){return Kf(ii,e)}var si=g("ZodISODate",(e,t)=>{Vm.init(e,t),K.init(e,t)});function hg(e){return Yf(si,e)}var ai=g("ZodISOTime",(e,t)=>{qm.init(e,t),K.init(e,t)});function yg(e){return Jf(ai,e)}var ci=g("ZodISODuration",(e,t)=>{Km.init(e,t),K.init(e,t)});function bg(e){return Xf(ci,e)}var Yx=(e,t)=>{Vo.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(n)=>xr(e,n)},flatten:{value:(n)=>Sr(e,n)},addIssue:{value:(n)=>{e.issues.push(n),e.message=JSON.stringify(e.issues,yr,2)}},addIssues:{value:(n)=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,yr,2)}},isEmpty:{get(){return e.issues.length===0}}})},Jx=g("ZodError",Yx),_e=g("ZodError",Yx,{Parent:Error});var wc=_r(_e),Rc=Cr(_e),Ec=wr(_e),Pc=Rr(_e),kc=Ra(_e),Ac=Ea(_e),Tc=Pa(_e),Ic=ka(_e),Oc=Aa(_e),zc=Ta(_e),Nc=Ia(_e),Dc=Oa(_e);var L=g("ZodType",(e,t)=>(D.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:Sc(e,"input"),output:Sc(e,"output")}}),e.toJSONSchema=Tp(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone(I.mergeDefs(t,{checks:[...t.checks??[],...n.map((r)=>typeof r==="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0}),e.with=e.check,e.clone=(n,r)=>he(e,n,r),e.brand=()=>e,e.register=(n,r)=>(n.add(e,r),e),e.parse=(n,r)=>wc(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>Ec(e,n,r),e.parseAsync=async(n,r)=>Rc(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>Pc(e,n,r),e.spa=e.safeParseAsync,e.encode=(n,r)=>kc(e,n,r),e.decode=(n,r)=>Ac(e,n,r),e.encodeAsync=async(n,r)=>Tc(e,n,r),e.decodeAsync=async(n,r)=>Ic(e,n,r),e.safeEncode=(n,r)=>Oc(e,n,r),e.safeDecode=(n,r)=>zc(e,n,r),e.safeEncodeAsync=async(n,r)=>Nc(e,n,r),e.safeDecodeAsync=async(n,r)=>Dc(e,n,r),e.refine=(n,r)=>e.check(ch(n,r)),e.superRefine=(n)=>e.check(lh(n)),e.overwrite=(n)=>e.check(ct(n)),e.optional=()=>di(e),e.exactOptional=()=>Ug(e),e.nullable=()=>mi(e),e.nullish=()=>di(mi(e)),e.nonoptional=(n)=>Yg(e,n),e.array=()=>hi(e),e.or=(n)=>rl([e,n]),e.and=(n)=>Ng(e,n),e.transform=(n)=>fi(e,il(n)),e.default=(n)=>Vg(e,n),e.prefault=(n)=>Kg(e,n),e.catch=(n)=>Qg(e,n),e.pipe=(n)=>fi(e,n),e.readonly=()=>nh(e),e.describe=(n)=>{let r=e.clone();return Ae.add(r,{description:n}),r},Object.defineProperty(e,"description",{get(){return Ae.get(e)?.description},configurable:!0}),e.meta=(...n)=>{if(n.length===0)return Ae.get(e);let r=e.clone();return Ae.add(r,n[0]),r},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=(n)=>n(e),e)),Lc=g("_ZodString",(e,t)=>{Ln.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,o,i)=>Ip(e,r,o,i);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...r)=>e.check(Pr(...r)),e.includes=(...r)=>e.check(Tr(...r)),e.startsWith=(...r)=>e.check(Ir(...r)),e.endsWith=(...r)=>e.check(Or(...r)),e.min=(...r)=>e.check(Zt(...r)),e.max=(...r)=>e.check(Fn(...r)),e.length=(...r)=>e.check(Gn(...r)),e.nonempty=(...r)=>e.check(Zt(1,...r)),e.lowercase=(r)=>e.check(kr(r)),e.uppercase=(r)=>e.check(Ar(r)),e.trim=()=>e.check(Dr()),e.normalize=(...r)=>e.check(Nr(...r)),e.toLowerCase=()=>e.check($r()),e.toUpperCase=()=>e.check(Mr()),e.slugify=()=>e.check(Lr())}),jr=g("ZodString",(e,t)=>{Ln.init(e,t),Lc.init(e,t),e.email=(n)=>e.check(qa(Wc,n)),e.url=(n)=>e.check(ri(pi,n)),e.jwt=(n)=>e.check(fc(el,n)),e.emoji=(n)=>e.check(Qa(Fc,n)),e.guid=(n)=>e.check(ni(ui,n)),e.uuid=(n)=>e.check(Ka(Pt,n)),e.uuidv4=(n)=>e.check(Ya(Pt,n)),e.uuidv6=(n)=>e.check(Ja(Pt,n)),e.uuidv7=(n)=>e.check(Xa(Pt,n)),e.nanoid=(n)=>e.check(ec(Gc,n)),e.guid=(n)=>e.check(ni(ui,n)),e.cuid=(n)=>e.check(tc(Zc,n)),e.cuid2=(n)=>e.check(nc(Bc,n)),e.ulid=(n)=>e.check(rc(Uc,n)),e.base64=(n)=>e.check(uc(Jc,n)),e.base64url=(n)=>e.check(dc(Xc,n)),e.xid=(n)=>e.check(oc(jc,n)),e.ksuid=(n)=>e.check(ic(Hc,n)),e.ipv4=(n)=>e.check(sc(Vc,n)),e.ipv6=(n)=>e.check(ac(qc,n)),e.cidrv4=(n)=>e.check(cc(Kc,n)),e.cidrv6=(n)=>e.check(lc(Yc,n)),e.e164=(n)=>e.check(mc(Qc,n)),e.datetime=(n)=>e.check(gg(n)),e.date=(n)=>e.check(hg(n)),e.time=(n)=>e.check(yg(n)),e.duration=(n)=>e.check(bg(n))});function $c(e){return Hf(jr,e)}var K=g("ZodStringFormat",(e,t)=>{q.init(e,t),Lc.init(e,t)}),Wc=g("ZodEmail",(e,t)=>{Mm.init(e,t),K.init(e,t)});function Xx(e){return qa(Wc,e)}var ui=g("ZodGUID",(e,t)=>{Dm.init(e,t),K.init(e,t)});function Qx(e){return ni(ui,e)}var Pt=g("ZodUUID",(e,t)=>{$m.init(e,t),K.init(e,t)});function e_(e){return Ka(Pt,e)}function t_(e){return Ya(Pt,e)}function n_(e){return Ja(Pt,e)}function r_(e){return Xa(Pt,e)}var pi=g("ZodURL",(e,t)=>{Lm.init(e,t),K.init(e,t)});function o_(e){return ri(pi,e)}function i_(e){return ri(pi,{protocol:/^https?$/,hostname:Ge.domain,...I.normalizeParams(e)})}var Fc=g("ZodEmoji",(e,t)=>{Wm.init(e,t),K.init(e,t)});function s_(e){return Qa(Fc,e)}var Gc=g("ZodNanoID",(e,t)=>{Fm.init(e,t),K.init(e,t)});function a_(e){return ec(Gc,e)}var Zc=g("ZodCUID",(e,t)=>{Gm.init(e,t),K.init(e,t)});function c_(e){return tc(Zc,e)}var Bc=g("ZodCUID2",(e,t)=>{Zm.init(e,t),K.init(e,t)});function l_(e){return nc(Bc,e)}var Uc=g("ZodULID",(e,t)=>{Bm.init(e,t),K.init(e,t)});function u_(e){return rc(Uc,e)}var jc=g("ZodXID",(e,t)=>{Um.init(e,t),K.init(e,t)});function d_(e){return oc(jc,e)}var Hc=g("ZodKSUID",(e,t)=>{jm.init(e,t),K.init(e,t)});function m_(e){return ic(Hc,e)}var Vc=g("ZodIPv4",(e,t)=>{Ym.init(e,t),K.init(e,t)});function f_(e){return sc(Vc,e)}var vg=g("ZodMAC",(e,t)=>{Xm.init(e,t),K.init(e,t)});function p_(e){return qf(vg,e)}var qc=g("ZodIPv6",(e,t)=>{Jm.init(e,t),K.init(e,t)});function g_(e){return ac(qc,e)}var Kc=g("ZodCIDRv4",(e,t)=>{Qm.init(e,t),K.init(e,t)});function h_(e){return cc(Kc,e)}var Yc=g("ZodCIDRv6",(e,t)=>{ef.init(e,t),K.init(e,t)});function y_(e){return lc(Yc,e)}var Jc=g("ZodBase64",(e,t)=>{nf.init(e,t),K.init(e,t)});function b_(e){return uc(Jc,e)}var Xc=g("ZodBase64URL",(e,t)=>{rf.init(e,t),K.init(e,t)});function v_(e){return dc(Xc,e)}var Qc=g("ZodE164",(e,t)=>{of.init(e,t),K.init(e,t)});function S_(e){return mc(Qc,e)}var el=g("ZodJWT",(e,t)=>{sf.init(e,t),K.init(e,t)});function x_(e){return fc(el,e)}var Hr=g("ZodCustomStringFormat",(e,t)=>{af.init(e,t),K.init(e,t)});function __(e,t,n={}){return Wr(Hr,e,t,n)}function C_(e){return Wr(Hr,"hostname",Ge.hostname,e)}function w_(e){return Wr(Hr,"hex",Ge.hex,e)}function R_(e,t){let n=t?.enc??"hex",r=`${e}_${n}`,o=Ge[r];if(!o)throw Error(`Unrecognized hash format: ${r}`);return Wr(Hr,r,o,t)}var Vr=g("ZodNumber",(e,t)=>{Za.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,o,i)=>Op(e,r,o,i),e.gt=(r,o)=>e.check(wt(r,o)),e.gte=(r,o)=>e.check(xe(r,o)),e.min=(r,o)=>e.check(xe(r,o)),e.lt=(r,o)=>e.check(Ct(r,o)),e.lte=(r,o)=>e.check(Ze(r,o)),e.max=(r,o)=>e.check(Ze(r,o)),e.int=(r)=>e.check(Mc(r)),e.safe=(r)=>e.check(Mc(r)),e.positive=(r)=>e.check(wt(0,r)),e.nonnegative=(r)=>e.check(xe(0,r)),e.negative=(r)=>e.check(Ct(0,r)),e.nonpositive=(r)=>e.check(Ze(0,r)),e.multipleOf=(r,o)=>e.check(un(r,o)),e.step=(r,o)=>e.check(un(r,o)),e.finite=()=>e;let n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??0.5),e.isFinite=!0,e.format=n.format??null});function Sg(e){return Qf(Vr,e)}var Bn=g("ZodNumberFormat",(e,t)=>{cf.init(e,t),Vr.init(e,t)});function Mc(e){return tp(Bn,e)}function E_(e){return np(Bn,e)}function P_(e){return rp(Bn,e)}function k_(e){return op(Bn,e)}function A_(e){return ip(Bn,e)}var qr=g("ZodBoolean",(e,t)=>{Jo.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>zp(e,n,r,o)});function xg(e){return sp(qr,e)}var Kr=g("ZodBigInt",(e,t)=>{Ba.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,o,i)=>Np(e,r,o,i),e.gte=(r,o)=>e.check(xe(r,o)),e.min=(r,o)=>e.check(xe(r,o)),e.gt=(r,o)=>e.check(wt(r,o)),e.gte=(r,o)=>e.check(xe(r,o)),e.min=(r,o)=>e.check(xe(r,o)),e.lt=(r,o)=>e.check(Ct(r,o)),e.lte=(r,o)=>e.check(Ze(r,o)),e.max=(r,o)=>e.check(Ze(r,o)),e.positive=(r)=>e.check(wt(BigInt(0),r)),e.negative=(r)=>e.check(Ct(BigInt(0),r)),e.nonpositive=(r)=>e.check(Ze(BigInt(0),r)),e.nonnegative=(r)=>e.check(xe(BigInt(0),r)),e.multipleOf=(r,o)=>e.check(un(r,o));let n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});function T_(e){return cp(Kr,e)}var tl=g("ZodBigIntFormat",(e,t)=>{lf.init(e,t),Kr.init(e,t)});function I_(e){return up(tl,e)}function O_(e){return dp(tl,e)}var _g=g("ZodSymbol",(e,t)=>{uf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Dp(e,n,r,o)});function z_(e){return mp(_g,e)}var Cg=g("ZodUndefined",(e,t)=>{df.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Mp(e,n,r,o)});function N_(e){return fp(Cg,e)}var wg=g("ZodNull",(e,t)=>{mf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>$p(e,n,r,o)});function Rg(e){return pp(wg,e)}var Eg=g("ZodAny",(e,t)=>{ff.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Fp(e,n,r,o)});function D_(){return gp(Eg)}var Pg=g("ZodUnknown",(e,t)=>{pf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Gp(e,n,r,o)});function Zn(){return hp(Pg)}var kg=g("ZodNever",(e,t)=>{gf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Wp(e,n,r,o)});function nl(e){return yp(kg,e)}var Ag=g("ZodVoid",(e,t)=>{hf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Lp(e,n,r,o)});function $_(e){return bp(Ag,e)}var gi=g("ZodDate",(e,t)=>{yf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,o,i)=>Zp(e,r,o,i),e.min=(r,o)=>e.check(xe(r,o)),e.max=(r,o)=>e.check(Ze(r,o));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});function M_(e){return vp(gi,e)}var Tg=g("ZodArray",(e,t)=>{bf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>eg(e,n,r,o),e.element=t.element,e.min=(n,r)=>e.check(Zt(n,r)),e.nonempty=(n)=>e.check(Zt(1,n)),e.max=(n,r)=>e.check(Fn(n,r)),e.length=(n,r)=>e.check(Gn(n,r)),e.unwrap=()=>e.element});function hi(e,t){return _p(Tg,e,t)}function L_(e){let t=e._zod.def.shape;return ol(Object.keys(t))}var yi=g("ZodObject",(e,t)=>{vf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>tg(e,n,r,o),I.defineLazy(e,"shape",()=>t.shape),e.keyof=()=>ol(Object.keys(e._zod.def.shape)),e.catchall=(n)=>e.clone({...e._zod.def,catchall:n}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Zn()}),e.loose=()=>e.clone({...e._zod.def,catchall:Zn()}),e.strict=()=>e.clone({...e._zod.def,catchall:nl()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=(n)=>I.extend(e,n),e.safeExtend=(n)=>I.safeExtend(e,n),e.merge=(n)=>I.merge(e,n),e.pick=(n)=>I.pick(e,n),e.omit=(n)=>I.omit(e,n),e.partial=(...n)=>I.partial(sl,e,n[0]),e.required=(...n)=>I.required(al,e,n[0])});function W_(e,t){let n={type:"object",shape:e??{},...I.normalizeParams(t)};return new yi(n)}function F_(e,t){return new yi({type:"object",shape:e,catchall:nl(),...I.normalizeParams(t)})}function G_(e,t){return new yi({type:"object",shape:e,catchall:Zn(),...I.normalizeParams(t)})}var bi=g("ZodUnion",(e,t)=>{Xo.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>_c(e,n,r,o),e.options=t.options});function rl(e,t){return new bi({type:"union",options:e,...I.normalizeParams(t)})}var Ig=g("ZodXor",(e,t)=>{bi.init(e,t),Sf.init(e,t),e._zod.processJSONSchema=(n,r,o)=>_c(e,n,r,o),e.options=t.options});function Z_(e,t){return new Ig({type:"union",options:e,inclusive:!1,...I.normalizeParams(t)})}var Og=g("ZodDiscriminatedUnion",(e,t)=>{bi.init(e,t),xf.init(e,t)});function B_(e,t,n){return new Og({type:"union",options:t,discriminator:e,...I.normalizeParams(n)})}var zg=g("ZodIntersection",(e,t)=>{_f.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ng(e,n,r,o)});function Ng(e,t){return new zg({type:"intersection",left:e,right:t})}var Dg=g("ZodTuple",(e,t)=>{Ua.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>rg(e,n,r,o),e.rest=(n)=>e.clone({...e._zod.def,rest:n})});function $g(e,t,n){let r=t instanceof D,o=r?n:t;return new Dg({type:"tuple",items:e,rest:r?t:null,...I.normalizeParams(o)})}var vi=g("ZodRecord",(e,t)=>{Cf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>og(e,n,r,o),e.keyType=t.keyType,e.valueType=t.valueType});function Mg(e,t,n){return new vi({type:"record",keyType:e,valueType:t,...I.normalizeParams(n)})}function U_(e,t,n){let r=he(e);return r._zod.values=void 0,new vi({type:"record",keyType:r,valueType:t,...I.normalizeParams(n)})}function j_(e,t,n){return new vi({type:"record",keyType:e,valueType:t,mode:"loose",...I.normalizeParams(n)})}var Lg=g("ZodMap",(e,t)=>{wf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Xp(e,n,r,o),e.keyType=t.keyType,e.valueType=t.valueType,e.min=(...n)=>e.check(Rt(...n)),e.nonempty=(n)=>e.check(Rt(1,n)),e.max=(...n)=>e.check(dn(...n)),e.size=(...n)=>e.check(Wn(...n))});function H_(e,t,n){return new Lg({type:"map",keyType:e,valueType:t,...I.normalizeParams(n)})}var Wg=g("ZodSet",(e,t)=>{Rf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Qp(e,n,r,o),e.min=(...n)=>e.check(Rt(...n)),e.nonempty=(n)=>e.check(Rt(1,n)),e.max=(...n)=>e.check(dn(...n)),e.size=(...n)=>e.check(Wn(...n))});function V_(e,t){return new Wg({type:"set",valueType:e,...I.normalizeParams(t)})}var Ur=g("ZodEnum",(e,t)=>{Ef.init(e,t),L.init(e,t),e._zod.processJSONSchema=(r,o,i)=>Bp(e,r,o,i),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(r,o)=>{let i={};for(let s of r)if(n.has(s))i[s]=t.entries[s];else throw Error(`Key ${s} not found in enum`);return new Ur({...t,checks:[],...I.normalizeParams(o),entries:i})},e.exclude=(r,o)=>{let i={...t.entries};for(let s of r)if(n.has(s))delete i[s];else throw Error(`Key ${s} not found in enum`);return new Ur({...t,checks:[],...I.normalizeParams(o),entries:i})}});function ol(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map((r)=>[r,r])):e;return new Ur({type:"enum",entries:n,...I.normalizeParams(t)})}function q_(e,t){return new Ur({type:"enum",entries:e,...I.normalizeParams(t)})}var Fg=g("ZodLiteral",(e,t)=>{Pf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Up(e,n,r,o),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function K_(e,t){return new Fg({type:"literal",values:Array.isArray(e)?e:[e],...I.normalizeParams(t)})}var Gg=g("ZodFile",(e,t)=>{kf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Vp(e,n,r,o),e.min=(n,r)=>e.check(Rt(n,r)),e.max=(n,r)=>e.check(dn(n,r)),e.mime=(n,r)=>e.check(zr(Array.isArray(n)?n:[n],r))});function Y_(e){return Cp(Gg,e)}var Zg=g("ZodTransform",(e,t)=>{Af.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Jp(e,n,r,o),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Dn(e.constructor.name);n.addIssue=(i)=>{if(typeof i==="string")n.issues.push(I.issue(i,n.value,t));else{let s=i;if(s.fatal)s.continue=!1;s.code??(s.code="custom"),s.input??(s.input=n.value),s.inst??(s.inst=e),n.issues.push(I.issue(s))}};let o=t.transform(n.value,n);if(o instanceof Promise)return o.then((i)=>(n.value=i,n));return n.value=o,n}});function il(e){return new Zg({type:"transform",transform:e})}var sl=g("ZodOptional",(e,t)=>{ja.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Cc(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function di(e){return new sl({type:"optional",innerType:e})}var Bg=g("ZodExactOptional",(e,t)=>{Tf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Cc(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function Ug(e){return new Bg({type:"optional",innerType:e})}var jg=g("ZodNullable",(e,t)=>{If.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ig(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function mi(e){return new jg({type:"nullable",innerType:e})}function J_(e){return di(mi(e))}var Hg=g("ZodDefault",(e,t)=>{Of.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ag(e,n,r,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Vg(e,t){return new Hg({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():I.shallowClone(t)}})}var qg=g("ZodPrefault",(e,t)=>{zf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>cg(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function Kg(e,t){return new qg({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():I.shallowClone(t)}})}var al=g("ZodNonOptional",(e,t)=>{Nf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>sg(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function Yg(e,t){return new al({type:"nonoptional",innerType:e,...I.normalizeParams(t)})}var Jg=g("ZodSuccess",(e,t)=>{Df.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>qp(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function X_(e){return new Jg({type:"success",innerType:e})}var Xg=g("ZodCatch",(e,t)=>{$f.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>lg(e,n,r,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Qg(e,t){return new Xg({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}var eh=g("ZodNaN",(e,t)=>{Mf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>jp(e,n,r,o)});function Q_(e){return xp(eh,e)}var cl=g("ZodPipe",(e,t)=>{Lf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ug(e,n,r,o),e.in=t.in,e.out=t.out});function fi(e,t){return new cl({type:"pipe",in:e,out:t})}var ll=g("ZodCodec",(e,t)=>{cl.init(e,t),Qo.init(e,t)});function eC(e,t,n){return new ll({type:"pipe",in:e,out:t,transform:n.decode,reverseTransform:n.encode})}var th=g("ZodReadonly",(e,t)=>{Wf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>dg(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function nh(e){return new th({type:"readonly",innerType:e})}var rh=g("ZodTemplateLiteral",(e,t)=>{Ff.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Hp(e,n,r,o)});function tC(e,t){return new rh({type:"template_literal",parts:e,...I.normalizeParams(t)})}var oh=g("ZodLazy",(e,t)=>{Bf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>fg(e,n,r,o),e.unwrap=()=>e._zod.def.getter()});function ih(e){return new oh({type:"lazy",getter:e})}var sh=g("ZodPromise",(e,t)=>{Zf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>mg(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function nC(e){return new sh({type:"promise",innerType:e})}var ah=g("ZodFunction",(e,t)=>{Gf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Yp(e,n,r,o)});function rC(e){return new ah({type:"function",input:Array.isArray(e?.input)?$g(e?.input):e?.input??hi(Zn()),output:e?.output??Zn()})}var Si=g("ZodCustom",(e,t)=>{Uf.init(e,t),L.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Kp(e,n,r,o)});function oC(e){let t=new J({check:"custom"});return t._zod.check=e,t}function iC(e,t){return wp(Si,e??(()=>!0),t)}function ch(e,t={}){return Rp(Si,e,t)}function lh(e){return Ep(e)}var sC=Pp,aC=kp;function cC(e,t={}){let n=new Si({type:"custom",check:"custom",fn:(r)=>r instanceof e,abort:!0,...I.normalizeParams(t)});return n._zod.bag.Class=e,n._zod.check=(r)=>{if(!(r.value instanceof e))r.issues.push({code:"invalid_type",expected:e.name,input:r.value,inst:n,path:[...n._zod.def.path??[]]})},n}var lC=(...e)=>Ap({Codec:ll,Boolean:qr,String:jr},...e);function uC(e){let t=ih(()=>rl([$c(e),Sg(),xg(),Rg(),hi(t),Mg($c(),t)]));return t}function dC(e,t){return fi(il(e),t)}var mC={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};function fC(e){se({customError:e})}function pC(){return se().customError}var ul;(function(e){})(ul||(ul={}));var t$=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(o){return e[o]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(o)=>{switch(o.code){case"invalid_type":{let i=r[o.expected]??o.expected,s=Ld(o.input),a=r[s]??s;return`Invalid input: expected ${i}, received ${a}`}case"invalid_value":if(o.values.length===1)return`Invalid input: expected ${Sa(o.values[0])}`;return`Invalid option: expected one of ${ya(o.values,"|")}`;case"too_big":{let i=o.inclusive?"<=":"<",s=t(o.origin);if(s)return`Too big: expected ${o.origin??"value"} to have ${i}${o.maximum.toString()} ${s.unit??"elements"}`;return`Too big: expected ${o.origin??"value"} to be ${i}${o.maximum.toString()}`}case"too_small":{let i=o.inclusive?">=":">",s=t(o.origin);if(s)return`Too small: expected ${o.origin} to have ${i}${o.minimum.toString()} ${s.unit}`;return`Too small: expected ${o.origin} to be ${i}${o.minimum.toString()}`}case"invalid_format":{let i=o;if(i.format==="starts_with")return`Invalid string: must start with "${i.prefix}"`;if(i.format==="ends_with")return`Invalid string: must end with "${i.suffix}"`;if(i.format==="includes")return`Invalid string: must include "${i.includes}"`;if(i.format==="regex")return`Invalid string: must match pattern ${i.pattern}`;return`Invalid ${n[i.format]??o.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${o.divisor}`;case"unrecognized_keys":return`Unrecognized key${o.keys.length>1?"s":""}: ${ya(o.keys,", ")}`;case"invalid_key":return`Invalid key in ${o.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${o.origin}`;default:return"Invalid input"}}};function uh(){return{localeError:t$()}}var dh=()=>{throw Error("JSON Schema conversion is not bundled into this plugin artifact")};var dl={};fn(dl,{bigint:()=>i$,boolean:()=>o$,date:()=>s$,number:()=>r$,string:()=>n$});function n$(e){return Vf(jr,e)}function r$(e){return ep(Vr,e)}function o$(e){return ap(qr,e)}function i$(e){return lp(Kr,e)}function s$(e){return Sp(gi,e)}se(uh());var a$=ml;var gC=Object.freeze(["hard_stop","use_alternative","scope_down","manual_only","stop_and_explain"]);var xi=64,hC="Rule config exceeds CC Safety Net's safe source limit.";var _U=Object.freeze({maxSources:64,concurrency:4,maxRequests:131,maxResponseBytes:67108864});var fh=[{id:"secret.basename.env",category:"Basename",label:".env",description:"Blocks exact .env files.",basename:".env"},{id:"secret.basename.npmrc",category:"Basename",label:".npmrc",description:"Blocks npm credential config files.",basename:".npmrc"},{id:"secret.basename.pypirc",category:"Basename",label:".pypirc",description:"Blocks Python package index credential files.",basename:".pypirc"},{id:"secret.basename.netrc",category:"Basename",label:".netrc",description:"Blocks machine login credential files.",basename:".netrc"},{id:"secret.basename.git-credentials",category:"Basename",label:".git-credentials",description:"Blocks Git credential storage files.",basename:".git-credentials"},{id:"secret.basename.id-rsa",category:"Basename",label:"id_rsa",description:"Blocks RSA private key basenames.",basename:"id_rsa"},{id:"secret.basename.id-ed25519",category:"Basename",label:"id_ed25519",description:"Blocks Ed25519 private key basenames.",basename:"id_ed25519"},{id:"secret.basename.id-ecdsa",category:"Basename",label:"id_ecdsa",description:"Blocks ECDSA private key basenames.",basename:"id_ecdsa"},{id:"secret.basename.credentials",category:"Basename",label:"credentials",description:"Blocks generic credentials file basenames.",basename:"credentials"}],fl={id:"secret.pattern.env-variant",category:"Pattern",label:".env.*",description:"Blocks environment-specific .env variants."},c$=[".bak",".backup",".copy",".disabled",".old",".orig",".save",".tmp"],l$=[{idSlug:"kube-config",label:"~/.kube/config",directoryParts:[".kube"],basename:"config"},{idSlug:"docker-config",label:"~/.docker/config.json",directoryParts:[".docker"],basename:"config.json"}],ph=[{id:"secret.home.ssh",category:"Home path",label:"~/.ssh",description:"Blocks home SSH configuration and key paths.",suffixParts:[".ssh"]},{id:"secret.home.aws",category:"Home path",label:"~/.aws",description:"Blocks home AWS credential and config paths.",suffixParts:[".aws"]},{id:"secret.home.gcp",category:"Home path",label:"~/.gcp",description:"Blocks home GCP credential paths.",suffixParts:[".gcp"]},{id:"secret.home.gcloud-config",category:"Home path",label:"~/.config/gcloud",description:"Blocks home Google Cloud SDK credential paths.",suffixParts:[".config","gcloud"]},{id:"secret.home.kube-config",category:"Home path",label:"~/.kube/config",description:"Blocks home Kubernetes config files.",suffixParts:[".kube","config"]},{id:"secret.home.docker-config",category:"Home path",label:"~/.docker/config.json",description:"Blocks home Docker credential config files.",suffixParts:[".docker","config.json"]},...l$.flatMap((e)=>c$.map((t)=>({id:["secret.home",e.idSlug,t.slice(1)].join("."),category:"Home path",label:[e.label,t].join(""),description:["Blocks home ",e.label,t," credential backup files."].join(""),suffixParts:[...e.directoryParts,[e.basename,t].join("")]}))),{id:"secret.home.gh-hosts",category:"Home path",label:"~/.config/gh/hosts.yml",description:"Blocks GitHub CLI host credential files.",suffixParts:[".config","gh","hosts.yml"]}];var pl=[{id:"secret.cli.claude-code",category:"Coding CLI credential",label:"Claude Code credentials",paths:["~/.claude/.credentials.json"]},{id:"secret.cli.claude-code.config",category:"Coding CLI config",label:"Claude Code config",paths:["~/.claude/settings.json","~/.claude/settings.local.json","~/.claude.json","<project>/.claude/settings.local.json","<project>/.mcp.json"]},{id:"secret.cli.antigravity",category:"Coding CLI config",label:"Antigravity CLI hook config",paths:["~/.gemini/config/hooks.json","~/.gemini/config/mcp_config.json"]},{id:"secret.cli.codex",category:"Coding CLI credential",label:"Codex credentials",paths:["~/.codex/auth.json","~/.codex/.credentials.json","~/.codex/secrets","~/.codex/.sandbox-secrets"]},{id:"secret.cli.codex.config",category:"Coding CLI config",label:"Codex config",paths:["~/.codex/config.toml","~/.codex/<name>.config.toml"]},{id:"secret.cli.gemini",category:"Coding CLI credential",label:"Gemini CLI credentials",paths:["~/.gemini/oauth_creds.json","~/.gemini/mcp-oauth-tokens.json","~/.gemini/a2a-oauth-tokens.json","~/.gemini/gemini-credentials.json"]},{id:"secret.cli.gemini.config",category:"Coding CLI config",label:"Gemini CLI config",paths:["~/.gemini/settings.json","~/.gemini/google_accounts.json","<project>/.gemini/settings.json","/Library/Application Support/GeminiCli/settings.json","/etc/gemini-cli/settings.json"]},{id:"secret.cli.copilot-cli",category:"Coding CLI credential",label:"GitHub Copilot CLI credentials",paths:["~/.copilot/config.json","~/.copilot/mcp-oauth-config","~/.copilot/mcp-secrets"]},{id:"secret.cli.copilot-cli.config",category:"Coding CLI config",label:"GitHub Copilot CLI config",paths:["~/.copilot/mcp-config.json"]},{id:"secret.cli.kimi-code",category:"Coding CLI credential",label:"Kimi Code credentials",paths:["~/.kimi-code/server.token","~/.kimi-code/credentials","~/.kimi/credentials","~/.kimi/mcp-oauth"]},{id:"secret.cli.kimi-code.config",category:"Coding CLI config",label:"Kimi Code config",paths:["~/.kimi-code/config.toml","~/.kimi-code/mcp.json","~/.kimi/config.toml","~/.kimi/config.json","~/.kimi/config.json.bak","~/.kimi/mcp.json","<project>/.kimi-code/mcp.json"]},{id:"secret.cli.opencode",category:"Coding CLI credential",label:"OpenCode credentials",paths:["~/.local/share/opencode/auth.json","~/.local/share/opencode/mcp-auth.json","~/.local/share/opencode/opencode.db"]},{id:"secret.cli.opencode.config",category:"Coding CLI config",label:"OpenCode config",paths:["~/.config/opencode/opencode.json","~/.config/opencode/opencode.jsonc","/Library/Application Support/opencode/opencode.json","/etc/opencode/opencode.json","<project>/opencode.json","<project>/opencode.jsonc"]},{id:"secret.cli.pi",category:"Coding CLI credential",label:"Pi credentials",paths:["~/.pi/agent/auth.json"]},{id:"secret.cli.pi.config",category:"Coding CLI config",label:"Pi config",paths:["~/.pi/agent/models.json"]},{id:"secret.cli.amp",category:"Coding CLI credential",label:"Amp Code credentials",paths:["~/.local/share/amp/secrets.json","~/.amp/oauth"]},{id:"secret.cli.amp.config",category:"Coding CLI config",label:"Amp Code config",paths:["~/.config/amp/settings.json","~/.config/amp/settings.jsonc","<project>/.amp/settings.json","<project>/.amp/settings.jsonc"]},{id:"secret.cli.cursor",category:"Coding CLI credential",label:"Cursor CLI credentials",paths:["~/.cursor/auth.json","~/.config/cursor/auth.json","~/.cursor/projects/<name>/mcp-auth.json"]},{id:"secret.cli.cursor.config",category:"Coding CLI config",label:"Cursor CLI config",paths:["~/.cursor/mcp.json","<project>/.cursor/mcp.json"]},{id:"secret.cli.grok-build",category:"Coding CLI credential",label:"Grok Build credentials",paths:["~/.grok/auth.json","~/.grok/mcp_credentials.json"]},{id:"secret.cli.grok-build.config",category:"Coding CLI config",label:"Grok Build config",paths:["~/.grok/config.toml","~/.grok/managed_config.toml","~/.grok/requirements.toml","<project>/.grok/config.toml","/etc/grok/managed_config.toml","/etc/grok/requirements.toml"]}],yC=[{prefix:"id_rsa",slug:"id-rsa",label:"id_rsa"},{prefix:"id_dsa",slug:"id-dsa",label:"id_dsa"},{prefix:"id_ed25519",slug:"id-ed25519",label:"id_ed25519"},{prefix:"id_ecdsa",slug:"id-ecdsa",label:"id_ecdsa"},{prefix:"credentials",slug:"credentials",label:"credentials"}],u$=[".bak",".backup",".copy",".disabled",".key",".old",".orig",".pem",".save",".tmp"],gh=yC.map((e)=>({id:`secret.variant.${e.slug}.separator`,category:"Variant",label:`${e.label}-* / ${e.label}_*`,description:`Blocks ${e.label} variants with dash or underscore suffixes.`,prefix:e.prefix})),hh=yC.flatMap((e)=>u$.map((t)=>({id:`secret.variant.${e.slug}.${t.slice(1)}`,category:"Variant",label:`${e.label}${t}`,description:`Blocks ${e.label}${t} private credential variants.`,prefix:e.prefix,suffix:t}))),_i={id:"secret.pattern.ssh-key-basename",category:"Pattern",label:"*_(rsa|dsa|ed25519|ecdsa)",description:"Blocks extensionless SSH private key-like basenames.",pattern:/^.*_(rsa|dsa|ed25519|ecdsa)$/},yh=["agilekeychain","asc","bek","cscfg","fve","gnucash","jks","keychain","kwallet","mdf","ovpn","p12","pcap","pem","pfx","pkcs12","psafe3","rdp","sdf","tblk","tpm"].map((e)=>({id:`secret.ext.${e}`,category:"Extension",label:`.${e}`,description:`Blocks files with the .${e} extension.`,extension:e})),bh=[{id:"secret.ext-pattern.key",category:"Extension pattern",label:".key / .keypair",description:"Blocks key and keypair extension patterns.",pattern:/^key(pair)?$/},{id:"secret.ext-pattern.keystore",category:"Extension pattern",label:".keystore / .keyring",description:"Blocks keystore and keyring extension patterns.",pattern:/^key(store|ring)$/},{id:"secret.ext-pattern.kdbx",category:"Extension pattern",label:".kdb / .kdbx",description:"Blocks KeePass database extension patterns.",pattern:/^kdbx?$/}],bC=[...fh,fl,...ph,...gh,...hh,_i,...yh,...bh,...pl].map((e)=>({id:e.id,category:e.category,label:e.label,...e.category==="Coding CLI config"?{defaultOff:!0}:{},..."paths"in e?{paths:e.paths}:{description:e.description}})),vC=new Set(pl.flatMap((e)=>e.category==="Coding CLI config"?[e.id]:[])),d$=bC.map((e)=>e.id),gl=new Set(d$);var $U=m$(import.meta.url),SC,f$=Array(xi+1).fill("over-limit"),xC=/^[^/]+\/[^/]+$/,p$=/^sha256:[a-f0-9]{64}$/,hl=`must be an integer between ${_l} and ${Cl}`,g$=["version","rules","overrides","transparent_wrappers"],h$=["version","safety","workflow","destructive_command_protection","secret_protection","audit"];function _C(e){if(!Je(e)||!Array.isArray(e.rules)||e.rules.length<=xi)return e;return{$schema:e.$schema,version:e.version,rules:f$,overrides:e.overrides,transparent_wrappers:e.transparent_wrappers}}function y$(){let e=mh,t=(_)=>{let v=e.superRefine(_);return v._zod.def.when=()=>!0,v},n=e.enum(gC),r=e.union([e.literal("off"),e.looseObject({reason:e.string({error:"required non-empty string"}).min(1,"required non-empty string").max(tr,`must be at most ${tr} characters`).describe("Replacement block reason"),intent:n.optional()})],{error:'must be "off" or an object'}).describe("Disable a rule or replace its block reason and intent."),o=e.string({error:"must be a rulebook source string"}).min(1,"must be a non-empty rulebook source string"),i=e.string({error:"must be a command string"}).regex(vn,"must match command pattern").describe("Command name such as 'git', 'docker', or 'rtk'."),s=e.looseObject({$schema:e.unknown().optional().describe("JSON Schema reference for IDE support"),version:e.literal(1).describe("Schema version (must be 1)"),rules:e.array(o,{error:"must be an array of rulebook source strings"}).max(xi,hC).default([]).describe("Rulebook source strings such as project-rules or owner/repo#main/team-rules"),overrides:e.record(e.string().meta({pattern:xC.source}),r).default({}).describe("Rule overrides by id"),transparent_wrappers:e.array(i,{error:"must be an array of command strings"}).default([]).describe("Commands that transparently execute a visible protected child command")}),a=(_,v)=>{if(!Je(_))return;if(Array.isArray(_.rules)&&_.rules.length<=xi){let k=new Set;_.rules.forEach((z,M)=>{if(typeof z!=="string"||z==="")return;if(z.trim()===""){v.addIssue({code:"custom",message:"must be a non-empty rulebook source string",path:["rules",M]});return}let W=Qr(z);if(W){v.addIssue({code:"custom",message:W,path:["rules",M]});return}if(k.has(z)){v.addIssue({code:"custom",message:`duplicate rulebook source "${z}"`,path:["rules",M]});return}k.add(z)})}if(Je(_.overrides))for(let k of Object.keys(_.overrides)){if(xC.test(k))continue;v.addIssue({code:"custom",message:"must use <rulebook-name>/<rule-name>",path:["overrides",k]})}if(!Array.isArray(_.transparent_wrappers))return;let T=new Set;_.transparent_wrappers.forEach((k,z)=>{if(typeof k!=="string"||!vn.test(k))return;if(T.has(k)){v.addIssue({code:"custom",message:`duplicate command "${k}"`,path:["transparent_wrappers",z]});return}if(Iv(k)){v.addIssue({code:"custom",message:`reserved command "${k}" cannot be a wrapper`,path:["transparent_wrappers",z]});return}T.add(k)})},c=e.preprocess(_C,s.check(e.superRefine(a))),l=e.preprocess(_C,s.check(t(a))),u=e.strictObject({fail_closed:e.boolean().optional(),paranoid_rm:e.boolean().optional(),paranoid_interpreters:e.boolean().optional()}),d=(_,v)=>e.intersection(e.record(e.string().refine((T)=>_.has(T),{error:(T)=>`unknown ${v} rule id "${String(T.input)}"`}),e.unknown()),e.record(e.string(),e.enum(["on","off"]))),f=(_)=>e.array(e.string({error:"must be a non-empty path string"}),{error:"must be an array of paths"}).check(t((v,T)=>{if(!Array.isArray(v))return;let k=pn();v.forEach((z,M)=>{if(typeof z!=="string")return;let W=_(z,k);if(W)T.addIssue({code:"custom",message:W,path:[M]})})})),m=e.strictObject({version:e.literal(1),safety:e.strictObject({level:e.enum(["standard","strict","paranoid"]).optional(),overrides:u.optional()}).optional(),workflow:e.strictObject({worktree_mode:e.boolean().optional()}).optional(),destructive_command_protection:e.strictObject({enabled:e.boolean().optional(),overrides:d(Qi,"destructive command").optional(),allow_paths:f(Gs).optional()}).optional(),secret_protection:e.strictObject({enabled:e.boolean().optional(),overrides:d(gl,"secret protection").optional(),deny_paths:f(Zs).optional(),allow_paths:f(Bs).optional()}).optional(),audit:e.strictObject({retention_days:e.number({error:hl}).int(hl).min(_l,hl).max(Cl,hl).optional().describe("Days of audit log history to keep before the sweep deletes it")}).optional()}),p=(_)=>{let v=(M,W)=>_==="legacy"?M:W,T=v("must match pattern (letters, numbers, hyphens, underscores)","must match command pattern"),k=`required non-empty string up to ${tr} characters`,z=e.looseObject({name:e.string({error:"required string"}).regex(dt,v("must match pattern (letters, numbers, hyphens, underscores; max 64 chars)","must match rule name pattern")),command:e.string({error:v("required string","required string matching command pattern")}).regex(vn,v(T,"required string matching command pattern")),subcommand:e.string({error:v("must be a string if provided","must match command pattern")}).regex(vn,T).optional(),block_args:e.array(e.string({error:v("must be a string","must be a non-empty string")}).refine((M)=>M!=="",{error:v("must not be empty","must be a non-empty string")}),{error:v("required array","required non-empty array")}).refine((M)=>M.length>0,{error:v("must have at least one element","required non-empty array")}),reason:e.string({error:v("required string",k)}).refine((M)=>M!=="",{error:v("must not be empty",k)}).refine((M)=>M.length<=tr,{error:v(`must be at most ${tr} characters`,k)}),intent:n.optional()},{error:"must be an object"});return e.array(z,{error:v("must be an array","required array")}).check(t((M,W)=>{if(!Array.isArray(M))return;let U=new Set;M.forEach((ge,Be)=>{let A=Je(ge)?ge.name:void 0;if(typeof A!=="string")return;if(U.has(A.toLowerCase())){W.addIssue({code:"custom",message:`duplicate rule name "${A}"`,path:[Be,"name"]});return}U.add(A.toLowerCase())})}))},h=e.looseObject({version:e.literal(1),rules:p("legacy").optional()}),b="required string matching rule name pattern",y=e.looseObject({command:e.string({error:"required non-empty string"}).refine((_)=>_.trim()!=="",{error:"required non-empty string"}),expect:e.enum(["blocked","allowed"]),rule:e.string({error:"must be a string if provided"}).optional()},{error:"must be an object"}).check(t((_,v)=>{if(!Je(_))return;if(_.expect!=="blocked"||typeof _.rule==="string")return;v.addIssue({code:"custom",message:"required string for blocked fixtures",path:["rule"]})})),R=e.looseObject({name:e.string({error:"required string matching rule name pattern"}).regex(dt,"required string matching rule name pattern"),version:e.string({error:"required non-empty string"}).refine((_)=>_!=="",{error:"required non-empty string"}),allowed_commands:e.array(e.string({error:"must match command pattern"}).regex(vn,"must match command pattern"),{error:"required array"}).check(t((_,v)=>{if(!Array.isArray(_))return;let T=new Set;_.forEach((k,z)=>{if(typeof k!=="string"||!vn.test(k))return;if(T.has(k)){v.addIssue({code:"custom",message:`duplicate command "${k}"`,path:[z]});return}T.add(k)})})),rules:p("rulebook"),tests:e.array(y,{error:"must be an array if provided"}).optional()}).check(t((_,v)=>{if(!Je(_))return;let T=new Set(vh(_));if(Array.isArray(_.tests)){let z=new Set(_.tests.flatMap((M)=>Je(M)&&M.expect==="blocked"&&typeof M.rule==="string"?[M.rule]:[]));for(let M of z){if(T.has(M))continue;v.addIssue({code:"custom",message:`blocked fixture references unknown rule "${M}"`,path:["tests"]})}}if(!Array.isArray(_.allowed_commands)||!Array.isArray(_.rules))return;let k=new Set(_.allowed_commands.filter((z)=>typeof z==="string"));_.rules.forEach((z,M)=>{let W=Je(z)?z.command:void 0;if(typeof W!=="string"||k.has(W))return;v.addIssue({code:"custom",message:`"${W}" must be listed in allowed_commands`,path:["rules",M,"command"]})})})),w=e.string({error:"required string"}).refine((_)=>_.trim()!=="",{error:"required string"}),E=e.looseObject({spec:w,name:w,version:w,digest:e.string({error:"required sha256 digest"}).regex(p$,"required sha256 digest")},{error:"must be an object"}),P=e.looseObject({rulebooks:e.array(e.intersection(E,e.discriminatedUnion("kind",[e.object({kind:e.literal("local-directory"),path:w}),e.object({kind:e.literal("github"),owner:w,repo:w,ref:w,commit:w,path:w,display_ref:e.unknown().optional()})],{error:(_)=>{if(!Je(_.input))return"must be an object";let v=_.input.kind;return typeof v==="string"?`unknown kind "${v}"`:"required string"}})))});return{RulesConfigSchema:c,RulesConfigDiagnosticSchema:l,RuleOverrideSchema:r,UserPolicySchema:m,LegacyConfigSchema:h,RulebookSchema:R,RulesLockfileSchema:P}}function Ci(){return SC??=y$(),SC}function CC(){return Ci().RulesConfigSchema}function b$(){return Ci().UserPolicySchema}function wC(){return Ci().RulebookSchema}function RC(){return Ci().RulesLockfileSchema}function vh(e){let t=Je(e)?e.rules:void 0;return(Array.isArray(t)?t:[]).flatMap((n)=>{let r=Je(n)?n.name:void 0;return typeof r==="string"?[r]:[]})}function EC(e){let t=Ci().RulesConfigDiagnosticSchema.safeParse(e);if(t.success)return{errors:[],sources:new Set(t.data.rules)};return{errors:Yr(AC(t.error.issues,g$)),sources:_$(e,t.error.issues)}}function PC(e){let t=b$().safeParse(e);if(t.success)return[];return Yr(AC(t.error.issues,h$)," ")}function Yr(e,t=": ",n=" "){return[...new Set(e.flatMap((r)=>kC(r,t,n,[])))]}function kC(e,t,n,r){let o=[...r,...e.path],i=x$(o);if(e.code==="unrecognized_keys")return e.keys.map((s)=>`${i?`${i}.`:""}unknown field "${s}"`);if(e.code==="invalid_key")return e.issues.map((s)=>s.message);if(e.code==="invalid_union"){let s=e.errors.flat().filter((a)=>a.path.length>0);if(s.length>0)return s.flatMap((a)=>kC(a,t,n,o))}if(o.length===0)return[e.code==="invalid_type"?"Config must be an object":e.message];if(o.length===1&&(e.code==="too_big"||e.code==="too_small")&&e.origin==="array")return[e.message];return[`${i}${o.length===1?n:t}${v$(e)}`]}function v$(e){if(e.code==="invalid_value")return`must be ${S$(e.values)}`;if(e.code!=="invalid_type"||!e.message.startsWith("Invalid input:"))return e.message;if(e.expected==="object"||e.expected==="record")return"must be an object if provided";return e.expected==="boolean"?"must be a boolean":e.message}function S$(e){if(e.length>3)return`one of ${e.join(", ")}`;let t=e.map((n)=>typeof n==="string"?`"${n}"`:String(n));if(t.length<2)return`${t[0]}`;return`${t.slice(0,-1).join(", ")}${t.length>2?",":""} or ${t.at(-1)}`}function x$(e){return e.map((t,n)=>{if(typeof t==="number")return`[${t}]`;return n===0?String(t):`.${String(t)}`}).join("")}function AC(e,t){let n=e.map((i)=>i.path[1]),r=[...new Set(n.filter((i)=>typeof i==="string"))],o=(i,s)=>[i.path.length===0?-1:t.indexOf(String(i.path[0])),typeof s==="number"?s:r.indexOf(String(s)),i.code==="custom"?0:1];return e.map((i,s)=>({issue:i,rank:o(i,n[s])})).sort((i,s)=>i.rank[0]-s.rank[0]||i.rank[1]-s.rank[1]||i.rank[2]-s.rank[2]).map((i)=>i.issue)}function _$(e,t){let n=Je(e)?e.rules:void 0;if(!Array.isArray(n))return new Set;if(t.some((o)=>o.path.length===1&&o.path[0]==="rules"))return new Set;let r=new Set(t.filter((o)=>o.path[0]==="rules"&&typeof o.path[1]==="number").map((o)=>o.path[1]));return new Set(n.filter((o,i)=>typeof o==="string"&&!r.has(i)))}function Je(e){return!!e&&typeof e==="object"&&!Array.isArray(e)}function C$(e){return EC(e)}function Sh(e){try{let t=gn(w$(e));if(t===null)return{config:null,errors:[]};if(!t.trim())return{config:null,errors:["Config file is empty"]};let n=JSON.parse(t),r=C$(n);if(r.errors.length>0)return{config:null,errors:r.errors};let o=CC().parse(n);return{config:{version:1,rules:o.rules??[],overrides:o.overrides??{},transparent_wrappers:o.transparent_wrappers??[]},errors:[]}}catch(t){if(t instanceof ae)return{config:null,errors:[t.message]};let n=t instanceof Error?t.message:String(t);return{config:null,errors:[t instanceof SyntaxError?"Invalid JSON":n]}}}function w$(e){return typeof e==="string"?Di(e):e}var A$=new Set(["standard","strict","paranoid"]),T$={version:1,safety:{level:"standard",overrides:{}},workflow:{worktree_mode:!1},destructive_command_protection:{enabled:!0,overrides:{},allow_paths:[]},secret_protection:{enabled:!0,overrides:{},deny_paths:[],allow_paths:[]},audit:{retention_days:Ii}};function xh(e){return k$(P$(hn(e)),Li)}function zC(e={}){let t=D$(xh(e));return{...t.policy,errors:t.errors,...t.fallback?{fallback:t.fallback}:{}}}function TC(e){if(!kt(e))return N$();let t=kt(e.safety)?e.safety:{},n=kt(t.overrides)?t.overrides:{},r=kt(e.workflow)?e.workflow:{},o=kt(e.destructive_command_protection)?e.destructive_command_protection:{},i=kt(e.secret_protection)?e.secret_protection:{};return{version:1,safety:{level:A$.has(t.level)?t.level:"standard",overrides:{...typeof n.fail_closed==="boolean"?{fail_closed:n.fail_closed}:{},...typeof n.paranoid_rm==="boolean"?{paranoid_rm:n.paranoid_rm}:{},...typeof n.paranoid_interpreters==="boolean"?{paranoid_interpreters:n.paranoid_interpreters}:{}}},workflow:{worktree_mode:typeof r.worktree_mode==="boolean"?r.worktree_mode:!1},destructive_command_protection:{enabled:typeof o.enabled==="boolean"?o.enabled:!0,overrides:IC(o.overrides,Qi),allow_paths:O$(o.allow_paths)},secret_protection:{enabled:typeof i.enabled==="boolean"?i.enabled:!0,overrides:IC(i.overrides,gl),deny_paths:I$(i.deny_paths),allow_paths:z$(i.allow_paths)},audit:{retention_days:Oi(kt(e.audit)?e.audit.retention_days:void 0)}}}function IC(e,t){if(!kt(e))return{};return Object.fromEntries(Object.entries(e).flatMap(([n,r])=>t.has(n)&&(r==="on"||r==="off")?[[n,r]]:[]))}function I$(e){if(!Array.isArray(e))return[];let t=pn();return e.filter((n)=>Zs(n,t)===null)}function O$(e){if(!Array.isArray(e))return[];let t=pn();return e.filter((n)=>Gs(n,t)===null)}function z$(e){if(!Array.isArray(e))return[];let t=pn();return e.filter((n)=>Bs(n,t)===null)}function kt(e){return!!e&&typeof e==="object"&&!Array.isArray(e)}function N$(){return structuredClone(T$)}function D$(e){let t=$$();if(!R$(e)){let n=globalThis.__CC_SAFETY_NET_EMBEDDED_POLICY__;if(!kt(n))return{policy:t,errors:[]};return{policy:OC(TC(n)),errors:[]}}try{let n=E$(e,"utf-8");if(!n.trim())return{policy:t,errors:[`${e}: Config file is empty`],fallback:"defaults"};let r=JSON.parse(n),o=PC(r),i=OC(TC(r));if(o.length>0)return{policy:i,errors:o.map((s)=>`${e}: ${s}`),fallback:kt(r)?"salvaged":"defaults"};return{policy:i,errors:[]}}catch(n){let r=n instanceof Error?n.message:String(n);return{policy:t,errors:[`${e}: ${n instanceof SyntaxError?"Invalid JSON":r}`],fallback:"defaults"}}}function NC(e){let t=Object.entries(e),n=new Set(t.flatMap(([r,o])=>o==="on"?[r]:[]));return[...new Set([...[...vC].filter((r)=>!n.has(r)),...t.flatMap(([r,o])=>o==="off"?[r]:[])])]}function $$(){return{safety:{},worktreeMode:!1,destructiveCommandProtectionEnabled:!0,destructiveCommandRuleOverrides:{},destructiveCommandAllowPaths:[],secretProtection:{enabled:!0,disabledRules:NC({}),denyPaths:[],allowPaths:[]}}}function OC(e){return{safety:M$(e.safety),worktreeMode:e.workflow.worktree_mode,destructiveCommandProtectionEnabled:e.destructive_command_protection.enabled,destructiveCommandRuleOverrides:e.destructive_command_protection.overrides,destructiveCommandAllowPaths:e.destructive_command_protection.allow_paths,secretProtection:{enabled:e.secret_protection.enabled,disabledRules:NC(e.secret_protection.overrides),denyPaths:e.secret_protection.deny_paths,allowPaths:e.secret_protection.allow_paths}}}function M$(e){let t={...e.overrides.fail_closed!==void 0?{failClosed:e.overrides.fail_closed}:{},...e.overrides.paranoid_rm!==void 0?{paranoidRm:e.overrides.paranoid_rm}:{},...e.overrides.paranoid_interpreters!==void 0?{paranoidInterpreters:e.overrides.paranoid_interpreters}:{}};return{level:e.level,...Object.keys(t).length>0?{overrides:t}:{}}}var LC="This path contains the protected policy config and you must not modify or delete it.",W$=new Set(["[","cat","file","grep","head","jq","less","ls","more","rg","sed","stat","tail","test","wc"]);function WC(e){let t=yn(It()),n=j$(e.invocation.context.executionCwd,t);if(e.invocation.route.kind==="patch")return DC(e.paths,!1,e.invocation.context.executionCwd,n,t);let r=De(e,"input-candidate");if(e.invocation.route.kind==="command")return r?$C(r.shell,e.invocation.context.executionCwd,n,t):null;if(e.invocation.route.kind==="unknown"&&r){let o=$C(r.shell,e.invocation.context.executionCwd,n,t);if(o)return o}return DC(e.paths,e.invocation.route.kind==="grep"||e.invocation.route.kind==="glob"||Ns(e.invocation.toolName),e.invocation.context.executionCwd,n,t)}function DC(e,t,n,r,o){if(t)return null;let i=e.find((s)=>wi(s,n,r,o));return i?{target:i}:null}function $C(e,t,n,r){let o=$s(e,t,r,{findSegmentTarget:(i,s)=>F$(i,s,n,r)?.target??null,isRedirectionTarget:(i,s)=>wi(i,s.cwd,n,r),findMalformedTarget:(i)=>U$(i,t,n,r)?.target??null,normalizeCwd:ve});return o?{target:o}:null}function F$(e,t,n,r){if(xo(e))return null;let o=r.environment,i=Jt([...e],o),s=G(i[0]??"").toLowerCase(),a=i.slice(1);if(s==="rm"&&G$(a)){let c=Z$(a).find((l)=>MC($e(l,t.variables),t.cwd,n,r));if(c)return{target:c}}if(s==="find"){if(Js(i,1)||Fu(i,o)){let l=(Ys(j(i))??j(["."])).find((u)=>{let d=$e(u.text,t.variables);return wi(d,t.cwd,n,r)||MC(d,t.cwd,n,r)})?.text;if(l)return{target:l}}}if(s==="mv"){let c=Ms(a).sources.find((l)=>H$($e(l,t.variables),t.cwd,n,r));if(c)return{target:c}}if(B$(e,o))return null;for(let c of[...e,...i])for(let l of FC(c))if(wi($e(l,t.variables),t.cwd,n,r))return{target:l};return null}function G$(e){return e.some((t)=>t==="--recursive"||t.startsWith("-")&&!t.startsWith("--")&&/[rR]/.test(t.slice(1)))}function Z$(e){let t=e.indexOf("--");if(t!==-1)return[...e.slice(0,t).filter((n)=>!n.startsWith("-")),...e.slice(t+1)];return e.filter((n)=>!n.startsWith("-"))}function B$(e,t){let n=Jt([...e],t);if(n.length===0)return!1;let r=G(n[0]??"").toLowerCase();if(!W$.has(r))return!1;if(r!=="sed")return!0;return!n.slice(1).some((o)=>o.startsWith("-i")||o==="--in-place"||o.startsWith("--in-place="))}function U$(e,t,n,r){for(let o of e.split(/\s+/))for(let i of FC(o))if(wi(i,t,n,r))return{target:i};return null}function FC(e){let t=e.trim().replace(/^['"]|['"]$/g,""),n=t.indexOf("=");return n===-1||n===t.length-1?[t]:[t,t.slice(n+1)]}function j$(e,t){let n=ve(xh(),e,t),r=_h(n),o=new Set;for(let i=r;;i=_h(i))if(o.add(Jr(i)),_h(i)===i)break;return{file:Jr(n),directoryAndAncestors:o}}function wi(e,t,n,r){let o=iv(e,t,r,(i)=>Jr(i)===L$(n.file));return o!==null&&Jr(o)===n.file}function MC(e,t,n,r){return n.directoryAndAncestors.has(Jr(ve(e,t,r)))}function H$(e,t,n,r){let o=Jr(ve(e,t,r));return o===n.file||n.directoryAndAncestors.has(o)}function Jr(e){return process.platform==="win32"?e.toLowerCase():e}import{homedir as wh}from"os";import{isAbsolute as yl,posix as V$,resolve as vl,win32 as q$}from"path";import{fileURLToPath as K$}from"url";var JC="Access to a sensitive path is not allowed.",XC=new Set(["echo","printf"]),Y$=new Set(["find"]),J$=new Set(["-exec","-execdir"]),X$=new Set([";","+"]),Q$=new Set(["-delete","-exec","-execdir","-fls","-fprint","-fprint0","-fprintf","-ok","-okdir"]),e0=new Set(["-name","-iname","-path","-ipath","-wholename","-iwholename","-samefile"]),t0=new Set(["python","python2","python3","node","deno","bun","ruby","perl","php","rscript","osascript","bash","sh","zsh","dash","ksh"]),n0=new Set(["node","bun"]),r0=new Set(["bun","child_process","deno","dotenv","fs","subprocess"]),o0=new Set(["append","awk","base64","cat","chmod","chown","connect","copy","cp","database","dd","eval","exec","fetch","file","function","grep","head","include","load","move","mv","open","popen","read","remove","rename","require","rg","rm","sed","shell","source","spawn","strings","system","tail","tar","truncate","unlink","write","xxd","zip"]),QC=new Set(["-c","-e","-r","-E","--eval","--exec"]),i0=new Set(["src/cli/cc-safety-net.ts","dist/bin/cc-safety-net.js"]),GC=new Set(["cc-safety-net","ccsn"]),s0=new Set(["bunx","npx","pnpx"]),a0=new Set(["bun","node"]),c0=new Map([["c",new Set(["bash","sh","zsh","dash","ksh","python"])],["e",new Set(["node","deno","bun","ruby","perl","rscript","osascript"])],["E",new Set(["perl"])],["r",new Set(["php"])]]),l0=new Set(["grep","rg"]),ZC="f",BC="file",u0="files",d0=new Set(["e","f"]),m0=new Set(["regexp","file"]),f0=new Set(["e","f","A","B","C","m"]),p0=new Set(["regexp","file","after-context","before-context","context","max-count"]),g0=new Set(["|","|&"]),Ch="__CC_SAFETY_NET_PIPE_INPUT__",ew=new Set(["bash","sh","zsh","dash","ksh"]),h0=new Map([["bash",new Set(["-O"])],["sh",new Set(["-O"])],["zsh",new Set(["-o"])],["dash",new Set(["-o"])],["ksh",new Set(["-o"])],["python",new Set(["-W","-X"])],["node",new Set(["-r","--require","--loader","--import","--input-type"])]]);function UC(e,t,n,r,o){let i=to();for(let s of e){if(rM(s,t,n?.denyPaths??[],r,i))return{target:s,ruleId:"secret.deny-path"};if(o&&!o.has(s))continue;let a=tM(s,t,n,i);if(a){if(!a.startsWith("secret.cli.")&&oM(s,t,n?.allowPaths??[],r,i))continue;return{target:s,ruleId:a}}}return null}function tw(e,t,n={}){let r=jC(e),o=UC(r,e.invocation.context.executionCwd,t,e.invocation.context.configCwd),i=o?.ruleId!=="secret.deny-path"&&n.strict===!1?jC(e,{refineJavaScriptInlineData:!0}):r,s=i.length===r.length?o:UC(r,e.invocation.context.executionCwd,t,e.invocation.context.configCwd,new Set(i));if(s?.ruleId!=="secret.deny-path"&&n.strict===!1&&y0(e))return null;return s}function y0(e){if(e.invocation.route.kind!=="command")return!1;let t=De(e,"input-candidate")??De(e,"declared-command");if(!t)return!1;if(t.program.nodes.some((s)=>s.kind==="command"&&s.nested.length>0))return!1;let n=[];for(let s of t.shell.entries){if(s.kind==="operator"&&s.boundary)return!1;if(s.kind==="redirection")return!1;if(s.kind!=="operator")n.push(ht(s.text))}let r=Xr(n);if(r.length===0)return!1;let o=jn(r[0]??"").toLowerCase(),i=r.slice(1);if(o==="ls"||o==="stat")return!0;if(o==="test")return i.length===2&&(i[0]==="-e"||i[0]==="-f");if(o!=="find")return!1;return!i.some((s)=>Q$.has(s))}function jC(e,t={}){if(e.invocation.route.kind==="command"){let r=De(e,"input-candidate");return r?Pi(r.shell,e.store,t):[]}if(e.invocation.route.kind!=="unknown")return[...e.paths];let n=De(e,"input-candidate");return[...n?Pi(n.shell,e.store,t):[],...e.paths]}function Pi(e,t,n){if(e.status==="structural-limit")throw new gt;if(e.status==="unclosed-quote")return[];if(e.status==="invalid")throw Error("Unable to parse command for secret protection");let r=[...e.assignmentFallbacks,...M0(ht(e.source),t,n)],o=[],i=null;for(let s of e.entries){if(s.kind==="operator"){if(!s.boundary)continue;if(o.length>0){if(r.push(...bl(o,t,n)),i!==null)r.push(...VC(i,o,t,n));i=g0.has(s.operator)?o:null,o=[]}else i=null;continue}if(s.kind==="redirection"){let a=s.target?ht(s.target):void 0;if(a&&s.targetOrder==="legacy-segment")o.push(a);else if(a)r.push(a);continue}o.push(ht(s.text))}if(o.length>0){if(r.push(...bl(o,t,n)),i!==null)r.push(...VC(i,o,t,n))}return r}function bl(e,t,n){let r=P0(e),o=Xr(e);if(o.length===0)return r;let i=o[0]??"",s=jn(i).toLowerCase(),a=o.slice(1),c=v0(i,s,a);if(c)return[...r,...c];if(XC.has(s))return r;if(l0.has(s))return[...r,...j0(a)];if(Y$.has(s))return[...r,...k0(a,t,n)];if(Me.has(s))return[...r,...a.flatMap((l)=>qC("awk",l)),...a.flatMap((l)=>T0(l,t,n)),...a.flatMap(I0)];if(ow(s)){if(ew.has(s)){let l=nv(s,a);if(l!==null&&t.getShellSyntax(l).status==="structural-limit")throw new gt}return[...r,...A0(s,a,n)]}return[...r,...a.flatMap((l)=>qC(s,l))]}function b0(e,t){if(GC.has(e))return t[0]==="explain"?0:null;if(s0.has(e)){let n=t[0]==="-y"||t[0]==="--yes"?1:0;return GC.has(t[n]??"")&&t[n+1]==="explain"?n+1:null}if(a0.has(e)){if(HC(t[0])&&t[1]==="explain")return 1;if(e==="bun"&&t[0]==="run"&&HC(t[1])&&t[2]==="explain")return 2}return null}function v0(e,t,n){let r=b0(t,n);if(r===null)return null;let o=[e,...n.slice(0,r)],i=n.slice(r+1);for(let s=0;s<i.length;s++){let a=i[s];if(a==="--json"||a==="--help"||a==="-h")continue;if(a==="--cwd"){let c=i[s+1];if(c&&!c.startsWith("--"))o.push(c);s++;continue}return o}return o}function HC(e){let t=e?.replaceAll("\\","/");return[...i0].some((n)=>t===n||t?.endsWith(`/${n}`))}function VC(e,t,n,r){if(w0(t,n,r))return S0(e);let o=R0(t);if(o===null)return[];return x0(e).flatMap((i)=>ew.has(o)?Pi(n.getShellSyntax(i),n,r):sw(i))}function S0(e){let t=Xr(e);if(t.length===0)return[];let n=jn(t[0]??"").toLowerCase();if(!XC.has(n))return[];return t.slice(1)}function x0(e){let t=Xr(e);if(t.length===0)return[];let n=jn(t[0]??"").toLowerCase(),r=t.slice(1);if(n==="echo"){let o=r.findIndex((i)=>!/^-[neE]+$/.test(i));return[(o===-1?[]:r.slice(o)).join(" ")]}if(n==="printf")return _0(r);return[]}function _0(e){let t=e[0];if(t===void 0)return[];let n=(t.match(/%%|%[bqs]/g)??[]).filter((o)=>o!=="%%").length;if(n===0||e.length===1)return[nw(t)];let r=e.slice(1);return Array.from({length:Math.ceil(r.length/n)},(o,i)=>C0(t,r.slice(i*n,(i+1)*n)))}function C0(e,t){let n=0;return nw(e.replace(/%%|%[bqs]/g,(r)=>{if(r==="%%")return"%";let o=t[n]??"";return n++,o}))}function nw(e){return e.replace(/\\n/g,`
|
|
99
|
-
`).replace(/\\t/g,"\t").replace(/\\r/g,"\r")}function
|
|
100
|
-
`||s==="\r"))return null;if(s!==r)continue;n=i,o=!0;break}if(!o)return null}return t.join("")}function z0(e,t){for(let n=t-1;n>=0;n--){let r=e[n];if(!r||/\s/.test(r))continue;return/[\w$\])]/.test(r)}return!1}function N0(e){for(let t of e.matchAll(/[A-Za-z_$][A-Za-z0-9_$]*/g)){let n=t[0],r=t.index;if(r0.has(n.toLowerCase()))return!0;let o=n.replace(/([a-z0-9])([A-Z])/g,"$1 $2").split(/[_$\s]+/).map((i)=>i.toLowerCase());if(!o.some((i)=>o0.has(i)))continue;if(o.length>1)return!0;if(D0(e,r)===".")return!0;if($0(e,r+n.length)==="(")return!0}return!1}function D0(e,t){for(let n=t-1;n>=0;n--)if(!/\s/.test(e[n]??""))return e[n];return}function $0(e,t){for(let n=t;n<e.length;n++)if(!/\s/.test(e[n]??""))return e[n];return}function M0(e,t,n){return Z0(e).flatMap((r)=>{let o=t.getShellSyntax(r);if(o.status==="invalid")return[];return[...Pi(o,t,n),...L0(o)?W0(o):[]]})}function L0(e){let t=e.entries;for(let n=0;n<t.length;n++){let r=t[n];if(r?.kind!=="word"||jn(ht(r.text)).toLowerCase()!=="base64")continue;for(let o=n+1;o<t.length;o++){let i=t[o];if(i?.kind==="operator")break;if(i?.kind!=="word")continue;let s=ht(i.text);if(s==="--decode"||!s.startsWith("--")&&s.startsWith("-")&&/[dD]/.test(s))return!0}}return!1}function W0(e){return e.entries.flatMap((t)=>t.kind==="word"?[ht(t.text)]:t.kind==="redirection"&&t.target?[ht(t.target)]:[]).flatMap(aw)}function aw(e){let t=G0(e);if(t===null)return[];let n=Buffer.from(t,"base64").toString("utf8");if(n===""||F0(n))return[];return Buffer.from(n,"utf8").toString("base64").replace(/=+$/g,"")===t.replace(/=+$/g,"")?[n]:[]}function F0(e){return Array.from(e).some((t)=>{let n=t.charCodeAt(0);return n<32||n===127})}function G0(e){if(e.length<8||!/^[A-Za-z0-9+/_-]+={0,2}$/.test(e))return null;if(/=/.test(e.replace(/=+$/g,"")))return null;let t=e.replace(/=+$/g,"");if(t.length%4===1)return null;return`${t.replace(/-/g,"+").replace(/_/g,"/")}${"=".repeat((4-t.length%4)%4)}`}function Z0(e){let t=[],n={inSingle:!1,inDouble:!1,escaped:!1};for(let r=0;r<e.length;r++){let o=e[r];if(!o)break;if(ho(o,n))continue;if(cw(e,r,n)){let i=B0(e,r+1);if(i!==null)t.push(i.body),r=i.endIndex;continue}if(!n.inSingle&&o==="`"){let i=U0(e,r);if(i!==null)t.push(i.body),r=i.endIndex}}return t}function B0(e,t){let n={inSingle:!1,inDouble:!1,escaped:!1},r=1;for(let o=t+1;o<e.length;o++){let i=e[o];if(!i)break;if(ho(i,n))continue;if(cw(e,o,n)){r++,o++;continue}if(!n.inSingle&&!n.inDouble&&i===")"){if(r--,r===0)return{body:e.slice(t+1,o),endIndex:o}}}return null}function U0(e,t){let n=!1;for(let r=t+1;r<e.length;r++){let o=e[r];if(!o)break;if(n){n=!1;continue}if(o==="\\"){n=!0;continue}if(o==="`")return{body:e.slice(t+1,r),endIndex:r}}return null}function cw(e,t,n){return!n.inSingle&&e[t]==="$"&&e[t+1]==="("&&e[t+2]!=="("}function j0(e){let t=[],n=[],r=!1,o=!1,i=!1;for(let c=0;c<e.length;c++){let l=e[c];if(l===void 0)break;if(!i&&l==="--"){i=!0;continue}if(i){n.push(l);continue}let u=/^--([^=]+)(?:=(.*))?$/.exec(l);if(u!==null){let d=u[1]??"",f=u[2];if(d===u0)o=!0;if(m0.has(d))r=!0;if(f!==void 0){if(d===BC)t.push(f);continue}if(p0.has(d)){let m=e[c+1];if(d===BC&&m!==void 0)t.push(m);c++}continue}if(l.startsWith("-")&&l.length>1){let d=l.slice(1),f="",m="";for(let p=0;p<d.length;p++){let h=d[p]??"";if(d0.has(h))r=!0;if(f0.has(h)){f=h,m=d.slice(p+1);break}}if(f!=="")if(m.length>0){if(f===ZC)t.push(m)}else{let p=e[c+1];if(f===ZC&&p!==void 0)t.push(p);c++}continue}n.push(l)}let a=!r&&!o?n.slice(1):n;return[...t,...a]}function Xr(e){let t=e.findIndex((n)=>!lw(n)&&!/^[A-Za-z_][A-Za-z0-9_]*=.*/.test(n));return t===-1?[]:[...e.slice(t)]}function lw(e){return e==="env"||e==="command"||e==="builtin"||e==="sudo"}var H0=new Set(["id_rsa.pub","id_ed25519.pub","id_ecdsa.pub"]),V0=".env.",q0=new Set([".env.example",".env.sample",".env.template",".env.defaults"]),K0=[".env.example.",".env.sample."];function Y0(e){let t;try{t=new URL(e.trim())}catch{return!1}return t.protocol!=="file:"&&t.host!==""}function J0(e){return e.length>0&&!/\s/.test(e)}function X0(e,t,n){try{let r=ki(e,t,n);return r!==""&&Ue.entryKind(r)!=="missing"}catch(r){if(r instanceof be)throw r;return!1}}var Q0=new Set(["node_modules","__pycache__"]),eM=[["vendor","bundle"],["vendor","cache"]];function tM(e,t,n,r){if(Y0(e))return null;let o=At(e,t,r);if(!o)return null;let i=ne(o.split("/").pop()??""),s=ne(o),a=()=>J0(i)||X0(e,t,r);if(q0.has(i)||K0.some((d)=>i.startsWith(d)))return null;let c=ne(aM(e,t,r));for(let d of ph){let f=`~/${d.suffixParts.join("/")}`;if((YC(s,f)||YC(c,f))&&Bt(d.id,n))return d.id}let l=nM(o,t,n,r);if(l)return l;if(H0.has(i))return null;for(let d of fh)if(i===d.basename&&Bt(d.id,n))return d.id;if(i.startsWith(V0)&&Bt(fl.id,n)&&a())return fl.id;for(let d of gh)if(i.length>d.prefix.length&&i.startsWith(d.prefix)){let f=i.slice(d.prefix.length)[0];if((f==="-"||f==="_")&&Bt(d.id,n)&&a())return d.id}for(let d of hh)if(i.length>d.prefix.length&&i.startsWith(d.prefix)){if(i.slice(d.prefix.length)===d.suffix&&Bt(d.id,n))return d.id}if(iM(s))return null;if(!i.includes(".")&&_i.pattern.test(i)&&Bt(_i.id,n))return _i.id;let u=sM(i,n);if(u)return u;return null}function nM(e,t,n,r){return pl.find((o)=>{if(!Bt(o.id,n))return!1;switch(o.id){case"secret.cli.claude-code":return Q(e,te(process.env.CLAUDE_CONFIG_DIR,"~/.claude",t,r),[".credentials.json"]);case"secret.cli.claude-code.config":{let i=ne(e).split("/");return Q(e,te(process.env.CLAUDE_CONFIG_DIR,"~/.claude",t,r),["settings.json","settings.local.json"])||Ei(e,"~/.claude.json",t,r)||i.at(-1)==="settings.local.json"&&i.at(-2)===".claude"||i.at(-1)===".mcp.json"}case"secret.cli.antigravity":return Q(e,At("~/.gemini/config",t,r),["hooks.json","mcp_config.json"]);case"secret.cli.codex":{let i=te(process.env.CODEX_HOME,"~/.codex",t,r);return Q(e,i,["auth.json",".credentials.json"])||Ri(e,i,["secrets",".sandbox-secrets"])}case"secret.cli.codex.config":{let i=te(process.env.CODEX_HOME,"~/.codex",t,r),s=ne(e).split("/").at(-1)??"";return Q(e,i,["config.toml"])||s.endsWith(".config.toml")&&Q(e,i,[s])}case"secret.cli.gemini":return Q(e,ye(te(process.env.GEMINI_CLI_HOME,"~",t,r),".gemini"),["oauth_creds.json","mcp-oauth-tokens.json","a2a-oauth-tokens.json","gemini-credentials.json"]);case"secret.cli.gemini.config":{let i=ne(e).split("/"),s=process.env.ProgramData?[ye(te(process.env.ProgramData,"",t,r),"gemini-cli")]:[];return Q(e,ye(te(process.env.GEMINI_CLI_HOME,"~",t,r),".gemini"),["settings.json","google_accounts.json"])||i.at(-1)==="settings.json"&&i.at(-2)===".gemini"||(process.env.GEMINI_CLI_SYSTEM_SETTINGS_PATH?.trim()?Ei(e,process.env.GEMINI_CLI_SYSTEM_SETTINGS_PATH,t,r):!1)||["/Library/Application Support/GeminiCli","/etc/gemini-cli",...s].some((a)=>Q(e,At(a,t,r),["settings.json"]))}case"secret.cli.copilot-cli":{let i=te(process.env.COPILOT_HOME,"~/.copilot",t,r);return Q(e,i,["config.json"])||Ri(e,i,["mcp-oauth-config","mcp-secrets"])}case"secret.cli.copilot-cli.config":return Q(e,te(process.env.COPILOT_HOME,"~/.copilot",t,r),["mcp-config.json"]);case"secret.cli.kimi-code":{let i=te(process.env.KIMI_CODE_HOME,"~/.kimi-code",t,r),s=te(process.env.KIMI_SHARE_DIR,"~/.kimi",t,r);return Q(e,i,["server.token"])||Ri(e,i,["credentials"])||Ri(e,s,["credentials","mcp-oauth"])}case"secret.cli.kimi-code.config":{let i=["config.toml","mcp.json"],s=ne(e).split("/");return s.at(-1)==="mcp.json"&&s.at(-2)===".kimi-code"||Q(e,te(process.env.KIMI_CODE_HOME,"~/.kimi-code",t,r),i)||Q(e,te(process.env.KIMI_SHARE_DIR,"~/.kimi",t,r),[...i,"config.json","config.json.bak"])}case"secret.cli.opencode":{let i=ye(te(process.env.XDG_DATA_HOME,"~/.local/share",t,r),"opencode"),s=ne(e).split("/").at(-1)??"",a=process.env.OPENCODE_DB?.trim(),c=a&&a!==":memory:"?[a,`${a}-wal`,`${a}-shm`]:[];return Q(e,i,["auth.json","mcp-auth.json"])||/^opencode(-.+)?\.db(-wal|-shm)?$/.test(s)&&Q(e,i,[s])||c.some((l)=>Ei(e,l,t,r))}case"secret.cli.opencode.config":{let i=process.env.OPENCODE_CONFIG_DIR?te(process.env.OPENCODE_CONFIG_DIR,"~/.config/opencode",t,r):ye(te(process.env.XDG_CONFIG_HOME,"~/.config",t,r),"opencode"),s=process.env.ProgramData?[ye(te(process.env.ProgramData,"",t,r),"opencode")]:[],a=["opencode.json","opencode.jsonc"];return a.includes(ne(e).split("/").at(-1)??"")||Q(e,i,a)||(process.env.OPENCODE_CONFIG?.trim()?Ei(e,process.env.OPENCODE_CONFIG,t,r):!1)||["/Library/Application Support/opencode","/etc/opencode",...s].some((c)=>Q(e,At(c,t,r),a))}case"secret.cli.pi":return Q(e,te(process.env.PI_CODING_AGENT_DIR,"~/.pi/agent",t,r),["auth.json"]);case"secret.cli.pi.config":return Q(e,te(process.env.PI_CODING_AGENT_DIR,"~/.pi/agent",t,r),["models.json"]);case"secret.cli.amp":{let i=At("~",t,r);return[ye(te(process.env.XDG_DATA_HOME,"~/.local/share",t,r),"amp"),ye(i,".local","share","amp")].some((a)=>Q(e,a,["secrets.json"]))||Ri(e,ye(i,".amp"),["oauth"])}case"secret.cli.amp.config":{let i=["settings.json","settings.jsonc"],s=[ye(te(process.env.XDG_CONFIG_HOME,"~/.config",t,r),"amp"),ye(At("~",t,r),".config","amp")],a=ne(e).split("/");return s.some((c)=>Q(e,c,i))||a.at(-2)===".amp"&&i.includes(a.at(-1)??"")||(process.env.AMP_SETTINGS_FILE?.trim()?Ei(e,process.env.AMP_SETTINGS_FILE,t,r):!1)}case"secret.cli.cursor":{let i=ye(te(process.env.XDG_CONFIG_HOME,"~/.config",t,r),"cursor"),s=ye(te(process.env.CURSOR_DATA_DIR,"~/.cursor",t,r),"projects");return Q(e,At("~/.cursor",t,r),["auth.json"])||Q(e,i,["auth.json"])||ne(e).split("/").at(-1)==="mcp-auth.json"&&Un(ne(e),ne(s))}case"secret.cli.cursor.config":{let i=ne(e).split("/");return i.at(-1)==="mcp.json"&&i.at(-2)===".cursor"}case"secret.cli.grok-build":return Q(e,te(process.env.GROK_HOME,"~/.grok",t,r),["auth.json","mcp_credentials.json"]);case"secret.cli.grok-build.config":{let i=ne(e).split("/");return i.at(-1)==="config.toml"&&i.at(-2)===".grok"||Q(e,te(process.env.GROK_HOME,"~/.grok",t,r),["config.toml","managed_config.toml","requirements.toml"])||Q(e,At("/etc/grok",t,r),["managed_config.toml","requirements.toml"])}default:return!1}})?.id??null}function te(e,t,n,r){return At(e?.trim()?e:t,n,r)}function Q(e,t,n){return n.some((r)=>uw(e,ye(t,r)))}function Ri(e,t,n){return n.some((r)=>Un(ne(e),ne(ye(t,r))))}function Ei(e,t,n,r){return uw(e,At(t,n,r))}function uw(e,t){return ne(e)===ne(t)}function ye(e,...t){return lt([e,...t].filter(Boolean).join("/"))}function rM(e,t,n,r,o){if(n.length===0)return!1;let i=ne(ki(e,t,o));return n.some((s)=>Un(i,ne(ki(s,r,o))))}function oM(e,t,n,r,o){if(n.length===0)return!1;let i=ne(ki(e,t,o));if(!i)return!1;let s=process.env.HOME??wh(),a=s?lt(Y(Te(s),Ue,o)):"",c=ne(a),l=process.env.CC_SAFETY_NET_HOME,u=ne(l?lt(Y(vl(Te(l)),Ue,o)):a&<(Y(`${a}/.cc-safety-net`,Ue,o)));if(u&&Un(i,u))return!1;return n.some((d)=>{let f=ne(ki(d,r,o));if(!f)return!1;if(c&&(c===f||c.startsWith(f.endsWith("/")?f:`${f}/`)))return!1;return Un(i,f)})}function iM(e){let t=e.split("/");return t.some((n)=>Q0.has(n))||eM.some(([n,r])=>t.some((o,i)=>o===n&&t[i+1]===r))}function sM(e,t){let n=e.lastIndexOf("."),r=n>0&&n<e.length-1?e.slice(n+1):"";if(r==="")return null;for(let o of yh)if(r===o.extension&&Bt(o.id,t))return o.id;for(let o of bh)if(o.pattern.test(r)&&Bt(o.id,t))return o.id;return null}function ne(e){return e.toLowerCase()}function Bt(e,t){return!t?.disabledRules?.includes(e)}function At(e,t,n){let{home:r,normalized:o}=Rh(e,n);if(!o)return"";if(!r)return o;let i=Eh(o,r),s=yl(i)?i:lt(vl(t,i)),a=lt(Y(s,Ue,n));if(!Un(a,r)){if(yl(i))return a;return a===s?o:a}let c=a.slice(r.length);return c?`~${c}`:"~"}function YC(e,t){return e===t||e.startsWith(`${t}/`)}function aM(e,t,n){let{home:r,normalized:o}=Rh(e,n);if(!o||!r)return"";let i=Eh(o,r),s=V$.normalize(yl(i)?i:lt(vl(t,i))),a=lt(Te(process.env.HOME??wh())),c=(d)=>process.platform==="win32"?d.toLowerCase():d,l=[r,a].find((d)=>d!==""&&Un(c(s),c(d)));if(l===void 0)return"";let u=s.slice(l.length);return u?`~${u}`:"~"}function ki(e,t,n){let{home:r,normalized:o}=Rh(e,n);if(!o)return"";let i=r?Eh(o,r):o;return lt(Y(yl(i)?i:vl(t,i),Ue,n))}function Rh(e,t){let n=process.env.HOME??wh(),r=n?lt(Y(Te(n),Ue,t)):"",o=lt(Te(cM(ht(e))));return{home:r,normalized:o}}function cM(e){if(!e.trim().toLowerCase().startsWith("file:"))return e;try{return K$(e)}catch{return e}}function Eh(e,t){if(e==="~")return t;if(e.startsWith("~/"))return ye(t,e.slice(2));return e}function lM(e){if(process.platform==="win32")return!0;return q$.parse(e).root.length>1}function lt(e){let t=e.trim(),n=(lM(t)?t.replace(/\\/g,"/"):t).replace(/\/{2,}/g,"/").replace(/^\.\//,"");if(n==="/")return n;return n.replace(/\/+$/g,"")}function Un(e,t){return e===t||e.startsWith(t.endsWith("/")?t:`${t}/`)}function jn(e){return e.split(/[\\/]/).pop()?.replace(/\.exe$/i,"")??e}import{dirname as Sl}from"path";var dw="Rulebook exceeds CC Safety Net's safe validation limits.",mw="Additional rulebook validation errors were omitted.",ut=Object.freeze({maxAllowedCommands:1024,maxRules:1024,maxTests:2048,maxBlockArgsPerRule:1024,maxTotalBlockArgs:16384,maxStringCodeUnits:1048576,maxAggregateStringCodeUnits:4194304,maxFixtureCommandCodeUnits:131072,maxValidationErrors:64});function fw(e){if(Ph(e.allowed_commands,ut.maxAllowedCommands)||Ph(e.rules,ut.maxRules)||Ph(e.tests,ut.maxTests))return!1;let{maxAggregateStringCodeUnits:t,maxTotalBlockArgs:n}=ut,r=(o,i=!1)=>{if(typeof o!=="string")return!0;if(o.length>ut.maxStringCodeUnits||i&&o.length>ut.maxFixtureCommandCodeUnits||o.length>t)return!1;return t-=o.length,!0};if(!r(e.name)||!r(e.version)||!r(e.description)||!r(e.author)||!r(e.migrated_from))return!1;if(Array.isArray(e.allowed_commands)){for(let o of e.allowed_commands)if(!r(o))return!1}if(Array.isArray(e.rules))for(let o of e.rules){if(!o||typeof o!=="object")continue;let i=o;if(!r(i.name)||!r(i.command)||!r(i.subcommand)||!r(i.reason)||!r(i.intent))return!1;if(!Array.isArray(i.block_args))continue;if(i.block_args.length>ut.maxBlockArgsPerRule||i.block_args.length>n)return!1;n-=i.block_args.length;for(let s of i.block_args)if(!r(s))return!1}if(Array.isArray(e.tests))for(let o of e.tests){if(!o||typeof o!=="object")continue;let i=o;if(!r(i.command,!0)||!r(i.expect)||!r(i.rule))return!1}return!0}function Ph(e,t){return Array.isArray(e)&&e.length>t}function uM(e){if(!dM(e))return{errors:["Rulebook must be an object"],ruleNames:new Set};if(!fw(e))return{errors:[dw],ruleNames:new Set};let t=wC().safeParse(e),n=[...e.rulebook_version===1?[]:["rulebook_version must be 1"],...t.success?[]:Yr(t.error.issues,": ",": ")];return{errors:n.length>ut.maxValidationErrors?[...n.slice(0,ut.maxValidationErrors),mw]:n,ruleNames:new Set(vh(e).map((r)=>r.toLowerCase()))}}function kh(e){let t=uM(e);if(t.errors.length>0)throw Error(t.errors.join("; "));return e}function dM(e){return!!e&&typeof e==="object"&&!Array.isArray(e)}function Ah(e){if(Mi(e.spec))return pM(e);return fM(e)}function fM(e){if(!dt.test(e.spec))return`Local rulebook sources must be bare names matching ${dt}: ${e.spec}`;if(e.kind!=="local-directory")return`lock entry for ${e.spec} must use local-directory kind`;if(e.path===e.spec&&e.name===e.spec)return null;return`lock entry for ${e.spec} does not match local source identity`}function pM(e){let t=Qr(e.spec);if(t)return t;let n=$i(e.spec);if(e.kind!=="github")return`lock entry for ${e.spec} must use github kind`;if(e.owner===n.owner&&e.repo===n.repo&&e.ref===n.ref&&e.path===n.path&&e.name===n.name)return null;return`lock entry for ${e.spec} does not match GitHub source identity`}function pw(e){let t=typeof e==="string"?e:e.path;try{let n=gn(typeof e==="string"?Di(e):e);if(n===null)return{lock:null,errors:[]};let r=JSON.parse(n);if(!r||typeof r!=="object")return{lock:null,errors:[`malformed lockfile ${t}: must be an object`]};let o=r;if(o.version!==1||!Array.isArray(o.rulebooks))return{lock:null,errors:[`malformed lockfile ${t}`]};let i=RC().safeParse(o),s=o.rulebooks.flatMap((c,l)=>{let u=i.success?[]:i.error.issues.filter((f)=>f.path[1]===l);if(u.length>0)return Yr(u).map((f)=>`${t}: ${f}`);let d=Ah(c);return d?[`${t}: rulebooks[${l}]: ${d}`]:[]});if(!i.success||s.length>0)return{lock:null,errors:[`malformed lockfile ${t}`,...s]};return{lock:{version:1,rulebooks:i.data.rulebooks.map((c)=>{if(c.kind==="local-directory")return{spec:c.spec,kind:c.kind,path:c.path,name:c.name,version:c.version,digest:c.digest};let l={spec:c.spec,kind:c.kind,owner:c.owner,repo:c.repo,ref:c.ref,commit:c.commit,path:c.path,name:c.name,version:c.version,digest:c.digest};return typeof c.display_ref==="string"&&c.display_ref!==""?{...l,display_ref:c.display_ref}:l})},errors:[]}}catch(n){if(n instanceof ae)return{lock:null,errors:[n.message]};return{lock:null,errors:["malformed lockfile"]}}}import{createHash as gM}from"crypto";var r2=Object.freeze({timeoutMs:15000,metadataBytes:524288,commitBytes:262144,treeBytes:16777216,rawBytes:4194304});function gw(e){return`sha256:${gM("sha256").update(e).digest("hex")}`}function Sw(e={}){let t=Vh(e),n=!1;try{n=Wh(t.userConfigTarget,t.projectConfigTarget)}catch(f){if(f instanceof ae)return vM(t,f.message);throw f}let r=Sh(t.userConfigTarget),o=n?{config:null,errors:[]}:Sh(t.projectConfigTarget),i=vw(t.userConfigPath,r.errors),s=vw(t.projectConfigPath,o.errors),a=new Set,c=r.config?hw(r.config,t.userLockPath,Sl(t.userConfigPath),e,"user",t.userScope,a):Ai(),l=o.config?hw(o.config,t.projectLockPath,Sl(t.projectConfigPath),e,"project",t.projectScope,a):Ai(),u=r.config?.overrides??{},d=o.config?.overrides??{};return{rules:[...yw(c.rules,u),...yw(l.rules,d)],transparent_wrappers:yM(r.config,o.config),rulebooks:[...c.rulebooks,...l.rulebooks],errors:[...i,...s,...c.errors,...l.errors],warnings:[...c.warnings,...l.warnings,...c.canValidateOverrides?bw(u,c.knownRuleIds,t.userConfigPath):[],...c.canValidateOverrides?bM(d,c.knownRuleIds,t.projectConfigPath):[],...l.canValidateOverrides?bw(d,l.knownRuleIds,t.projectConfigPath):[]],userConfig:r.config??void 0,projectConfig:o.config??void 0,...t}}function hw(e,t,n,r,o,i=Ut(Sl(Sl(n)),o==="user"?"user policy":"project policy"),s=new Set){let a;try{a=Ot(i,t)}catch(b){if(b instanceof ae)return{...Ai(),errors:[b.message],canValidateOverrides:!1};throw b}let c=pw(a);if(c.errors.length>0)return{...Ai(),errors:c.errors,canValidateOverrides:!1};let l=c.lock;if(!l&&e.rules.length>0)return{...Ai(),errors:[`missing lockfile ${t}; run ${Vt}`],canValidateOverrides:!1};let u=l?.rulebooks??[],d=new Map(u.map((b)=>[b.spec,b])),f=[],m=[],p=e.rules.flatMap((b)=>{let y=d.get(b);if(!y)return f.push(`missing lock entry for ${b}; run ${Vt}`),[];let R=hM(y,n,r,i);if(R.errors.length>0||!R.rulebook)return f.push(...R.errors),[];let w=R.rulebook;if(s.has(w.name))return m.push(`duplicate active rulebook name "${w.name}" for ${b}; keeping the first and ignoring this one, so its rules are not active; rename one of them, then run ${Vt}`),[];return s.add(w.name),[{rules:w.rules.map((E)=>({...E,name:`${w.name}/${E.name}`})),rulebook:{source:o,spec:y.spec,name:w.name,version:w.version,rules:w.rules.map((E)=>`${w.name}/${E.name}`)}}]}),h=p.flatMap((b)=>b.rules);return{rules:h,rulebooks:p.map((b)=>b.rulebook),entries:u,knownRuleIds:new Set(h.map((b)=>b.name)),errors:f,warnings:m,canValidateOverrides:f.length===0}}function hM(e,t,n,r){let o=Al(e,Tl(t,n)),i;try{i=gn(Ot(r,o))}catch(a){if(a instanceof ae)return{rulebook:null,errors:[a.message]};throw a}if(i===null)return{rulebook:null,errors:[`missing cache entry for ${e.spec}; run ${Vt}`]};if(gw(i)!==e.digest)return{rulebook:null,errors:[`cache digest mismatch for ${e.spec}; run ${Vt}`]};let s;try{s=JSON.parse(i)}catch{return{rulebook:null,errors:[`invalid cached rulebook for ${e.spec}`]}}try{kh(s)}catch(a){return{rulebook:null,errors:[`invalid cached rulebook for ${e.spec}: ${a instanceof Error?a.message:"invalid rulebook"}`]}}return{rulebook:s,errors:[]}}function yM(e,t){return[...new Set([...e?.transparent_wrappers??[],...t?.transparent_wrappers??[]])]}function yw(e,t){return e.flatMap((n)=>{let r=t[n.name];if(r==="off")return[];if(r&&typeof r==="object")return[{...n,intent:r.intent??n.intent,reason:r.reason}];return[n]})}function bw(e,t,n){return Object.keys(e).filter((r)=>!t.has(r)).map((r)=>`unknown override key "${r}" in ${n}; only that override is ignored and other overrides and rules keep their configured state; correct or remove it in that file`)}function bM(e,t,n){return Object.keys(e).filter((r)=>t.has(r)).map((r)=>`project override cannot target user-scoped rule "${r}" in ${n}; only that override is ignored and the rule keeps its user-configured state; remove it from that file`)}function vw(e,t){return t.map((n)=>n.startsWith("Unable to access ")?n:`${e}: ${n}`)}function vM(e,t){return{rules:[],transparent_wrappers:[],rulebooks:[],errors:[t],warnings:[],userConfigPath:e.userConfigPath,projectConfigPath:e.projectConfigPath,userLockPath:e.userLockPath,projectLockPath:e.projectLockPath}}function Ai(){return{rules:[],rulebooks:[],entries:[],knownRuleIds:new Set,errors:[],warnings:[],canValidateOverrides:!0}}function xw(e={}){let t=Sw(e),n=zC(e),r={rules:t.rules,transparentWrappers:t.transparent_wrappers,safety:n.safety,worktreeMode:n.worktreeMode,destructiveCommandProtectionEnabled:n.destructiveCommandProtectionEnabled,destructiveCommandRuleOverrides:n.destructiveCommandRuleOverrides,destructiveCommandAllowPaths:n.destructiveCommandAllowPaths,secretProtection:{enabled:n.secretProtection.enabled??!0,disabledRules:n.secretProtection.disabledRules??[],denyPaths:n.secretProtection.denyPaths,allowPaths:n.secretProtection.allowPaths??[]}},o={...t.userConfig?.overrides??{},...t.projectConfig?.overrides??{}},i=Object.freeze(Object.fromEntries(r.rules.map((s)=>{let a=t.rulebooks.find((l)=>l.rules.includes(s.name)),c=o[s.name];return[s.name,Object.freeze({id:s.name,...a?{rulebook:Object.freeze({name:a.name,version:a.version}),...CM(a.spec)?{source:a.spec}:{}}:{},...c&&typeof c==="object"?{override:Object.freeze({type:"reason",reason:c.reason})}:{}})]})));return wM(r,SM(t,n),i)}function SM(e,t){let n=_M(t);if(e.errors.length===0&&e.warnings.length===0&&!n)return;return{diagnostics:[...e.errors,...e.warnings,...t.errors],reason:RM(e.errors.length>0?xM(e.errors):void 0,e.warnings.length>0?Th(e.warnings.join("; ")):void 0,n)}}function xM(e){return`${Th(e.join("; "))} Those rule sources are not active; every other rule and all built-in protections still apply`}function _M(e){if(e.errors.length===0)return;let t=e.fallback==="salvaged"?"the salvaged policy with protective defaults":"built-in protective defaults";return`invalid policy config: ${e.errors.join("; ")}. Enforcing ${t}; the invalid values are not active. Fix the policy file manually`}function CM(e){return/^(?:[A-Za-z0-9_.-]+$|https:\/\/github\.com\/|github:|gh:|[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+(?:#|$))/.test(e)}function wM(e,t,n=Object.freeze({})){let r=_w(structuredClone(e));if(!t)return Object.freeze({state:"ready",policy:r,diagnostics:Object.freeze([]),ruleMetadata:n});return Object.freeze({state:"degraded",policy:r,diagnostics:Object.freeze([...t.diagnostics]),reason:t.reason,ruleMetadata:n})}function _w(e){if(typeof e!=="object"||e===null)return e;for(let t of Object.values(e))_w(t);return Object.freeze(e)}function RM(...e){return Th(e.filter((t)=>!!t).join("; "))}function Th(e){return/[.!?]$/.test(e)?e:`${e}.`}class mn extends Error{stage;evaluation;name="GuardEvaluationError";constructor(e,t,n){super(`CC Safety Net ${e} dependency failed`,{cause:n});this.stage=e;this.evaluation=t}}var EM={findPolicyMutation:WC,findGitMetadataMutation:lv,resolveGitMetadata:Eu,loadPolicySnapshot:xw,findSensitiveTarget:tw,analyzeCommand:yx,getModes:Ed};function Cw(e,t={}){let n={...EM,...t.dependencies},r=AM(e),o=Ti(e)?e.command:r,i=Hn("policy-protection",o,()=>Ds(e,t.factParserDependencies)),s=De(i,"declared-command");if(Ti(e)&&e.command?.trim()&&s?.program.status==="limited")return{stage:"command-analysis",decision:{kind:"deny",reason:Nt,intent:"stop_and_explain",evidence:[{kind:"command",command:e.command,segment:e.command}]}};if(De(i,"input-candidate")?.program.status==="limited")return{stage:"command-validation",decision:{kind:"deny",reason:ly,intent:"stop_and_explain",evidence:[]}};let a=Hn("policy-protection",o,()=>n.resolveGitMetadata([e.context.executionCwd,e.context.configCwd])),c=Hn("policy-protection",o,()=>n.findPolicyMutation(i));if(c){let b=o??c.target;return{stage:"policy-protection",decision:{kind:"deny",reason:LC,intent:"hard_stop",evidence:[{kind:"command",command:b,segment:c.target}]}}}let l=Hn("policy-protection",o,()=>n.findGitMetadataMutation(i,a));if(l){let b=o??l.target;return{stage:"policy-protection",decision:{kind:"deny",reason:Ve,intent:"hard_stop",evidence:[{kind:"command",command:b,segment:l.target}]}}}let u=Hn("config-load",o,()=>n.loadPolicySnapshot({...t.policyOptions,cwd:e.context.configCwd})),d=u.policy,f=n.getModes(d),m={level:f.effectiveLevel,...PM(u)},p=d.secretProtection.enabled===!1?null:Hn("secret-protection",o,()=>n.findSensitiveTarget(i,d.secretProtection,{strict:Ti(e)?f.strict:void 0}));if(p){let b=o??p.target;return{stage:"secret-protection",...m,decision:{kind:"deny",reason:JC,intent:"hard_stop",ruleId:p.ruleId,evidence:[{kind:"command",command:b,segment:p.target}]}}}if(!Ti(e))return{stage:"non-command",...m,decision:{kind:"allow"}};if(!e.command||e.command.trim()==="")return{...Ih("command-validation",o),...m};let h=Hn("command-analysis",o,()=>n.analyzeCommand(e.command,{cwd:e.context.executionCwd,shell:e.route.shell,policySnapshot:u,environment:It(),protectedGitMetadata:a,effectiveCapabilities:f.capabilities,strict:f.strict,paranoidRm:f.paranoidRm,paranoidInterpreters:f.paranoidInterpreters,worktreeMode:f.worktreeMode},kM(i),i.store));if(h)return{stage:"command-analysis",...m,decision:h};return{stage:"command-analysis",...m,decision:{kind:"allow"}}}function PM(e){if(e.state==="ready")return{};return{configFallback:{reason:e.reason}}}function kM(e){return De(e,"declared-command")?.program}function AM(e){try{return So(e.input)}catch(t){let n=Ti(e)?e.command:void 0;throw new mn("policy-protection",Ih("policy-protection",t instanceof Wt?void 0:n,t),t)}}function Hn(e,t,n){try{return n()}catch(r){throw new mn(e,Ih(e,r instanceof Wt?void 0:t,r),r)}}function Ih(e,t,n){let r=n instanceof be||n instanceof gt;return{stage:e,decision:{kind:"deny",reason:r?uy:Fi,intent:"stop_and_explain",evidence:t?[{kind:"command",command:t,segment:t}]:[]}}}function Ti(e){return e.route.kind==="command"}function Rw(e,t){try{let n=Cw(e,t.guard);return ww(e,n,t),n}catch(n){if(!(n instanceof mn))throw n;throw ww(e,n.evaluation,t,!(n.cause instanceof Wt),{stage:n.stage,errorCode:TM(n.cause)}),n}}function ww(e,t,n,r=!0,o){oy(ry(e,t,n.guard?.auditAllowed??!1,r,o),n.audit.getSessionId,{agent:n.audit.agent,shape:n.audit.shape,homeDir:n.audit.homeDir})}function TM(e){if(e instanceof be)return"path-canonicalization-limit";if(e instanceof Wt)return"tool-input-limit";if(e instanceof gt)return"structural-shell-syntax-limit";return"unexpected-error"}var Pw=OM();function OM(e={}){return(t,n)=>zM(t,n,e)}function zM(e,t,n){let r=NM(e,t),o=()=>MM(e);if("malformed"in r)return iy(r.denial,o,{agent:"amp",toolName:r.denial.toolName,cwd:r.cwd}),kw(r.denial);try{let i=Rw(r,{guard:{auditAllowed:wd(),dependencies:n.guardDependencies},audit:{agent:"amp",getSessionId:o}});return Ew(i,!0)}catch(i){if(!(i instanceof mn))throw i;if(on(me.debug))console.error(`CC Safety Net debug: amp tool.call analysis failed: ${hy(i.cause)}`);return Ew(i.evaluation,r.route.kind==="command")}}function NM(e,t){if(!e||typeof e!=="object")return Vn(null);let n=e;if(typeof n.tool!=="string"||n.tool.trim()==="")return Vn(null);if(!n.input||typeof n.input!=="object")return Vn(null,n.tool);let r=DM(t);if(!r)return Vn(null,n.tool);let o=$M(t,e);if(!o.ok)return Vn(r,n.tool);if(!o.command)return Wo(n.tool,n.input,{kind:_u(n.tool)},{configCwd:r,executionCwd:r},null);if(typeof o.command.command!=="string"||o.command.command.trim()==="")return Vn(r,n.tool);let i=typeof o.command.dir==="string"?ay(o.command.dir,r):r;if(!i)return Vn(r,n.tool,o.command.command,o.command.dir);return Wo(n.tool,n.input,{kind:"command",shell:"posix"},{configCwd:r,executionCwd:i},o.command.command)}function DM(e){let t=e.system.workspaceRoot;if(!t)return;try{let n=e.helpers.filePathFromURI(t);if(typeof n!=="string"||n.trim()==="")return;return Ml(".",[n])}catch{return}}function $M(e,t){try{return{ok:!0,command:e.helpers.shellCommandFromToolCall(t)}}catch{return{ok:!1}}}function MM(e){if(!e||typeof e!=="object")return;let t=e.thread?.id;return typeof t==="string"&&t.trim()!==""?t:void 0}function Vn(e,t,n,r){return{malformed:!0,denial:py({command:n,segment:r,toolName:t}),cwd:e}}function Ew(e,t){let n=fy(e,{includeEvidence:t});return n?kw(n):{action:"allow"}}function kw(e){return{action:"reject-and-continue",message:gy(e)}}function LM(e){e.on("tool.call",(t)=>Pw(t,e))}export{LM as default};
|
|
98
|
+
`)}f.write("payload.value = newResult;"),f.write("return payload;");let R=f.compile();return(A,x)=>R(m,A,x)},i,s=zn,a=!Fo.jitless,l=a&&Id.value,u=t.catchall,d;e._zod.parse=(m,f)=>{d??(d=r.value);let p=m.value;if(!s(p))return m.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),m;if(a&&l&&f?.async===!1&&f.jitless!==!0){if(!i)i=o(t.shape);if(m=i(m,f),!u)return m;return ex([],p,m,f,d,e)}return n(m,f)}});function GS(e,t,n,r){for(let i of e)if(i.issues.length===0)return t.value=i.value,t;let o=e.filter((i)=>!rn(i));if(o.length===1)return t.value=o[0].value,o[0];return t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((i)=>i.issues.map((s)=>Te(s,r,le())))}),t}var Xo=g("$ZodUnion",(e,t)=>{D.init(e,t),W(e._zod,"optin",()=>t.options.some((o)=>o._zod.optin==="optional")?"optional":void 0),W(e._zod,"optout",()=>t.options.some((o)=>o._zod.optout==="optional")?"optional":void 0),W(e._zod,"values",()=>{if(t.options.every((o)=>o._zod.values))return new Set(t.options.flatMap((o)=>Array.from(o._zod.values)));return}),W(e._zod,"pattern",()=>{if(t.options.every((o)=>o._zod.pattern)){let o=t.options.map((i)=>i._zod.pattern);return new RegExp(`^(${o.map((i)=>jo(i.source)).join("|")})$`)}return});let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(o,i)=>{if(n)return r(o,i);let s=!1,a=[];for(let c of t.options){let l=c._zod.run({value:o.value,issues:[]},i);if(l instanceof Promise)a.push(l),s=!0;else{if(l.issues.length===0)return l;a.push(l)}}if(!s)return GS(a,o,e,i);return Promise.all(a).then((c)=>GS(c,o,e,i))}});function ZS(e,t,n,r){let o=e.filter((i)=>i.issues.length===0);if(o.length===1)return t.value=o[0].value,t;if(o.length===0)t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((i)=>i.issues.map((s)=>Te(s,r,le())))});else t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:[],inclusive:!1});return t}var vf=g("$ZodXor",(e,t)=>{Xo.init(e,t),t.inclusive=!1;let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(o,i)=>{if(n)return r(o,i);let s=!1,a=[];for(let c of t.options){let l=c._zod.run({value:o.value,issues:[]},i);if(l instanceof Promise)a.push(l),s=!0;else a.push(l)}if(!s)return ZS(a,o,e,i);return Promise.all(a).then((c)=>ZS(c,o,e,i))}}),_f=g("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,Xo.init(e,t);let n=e._zod.parse;W(e._zod,"propValues",()=>{let o={};for(let i of t.options){let s=i._zod.propValues;if(!s||Object.keys(s).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(let[a,c]of Object.entries(s)){if(!o[a])o[a]=new Set;for(let l of c)o[a].add(l)}}return o});let r=yr(()=>{let o=t.options,i=new Map;for(let s of o){let a=s._zod.propValues?.[t.discriminator];if(!a||a.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(s)}"`);for(let c of a){if(i.has(c))throw Error(`Duplicate discriminator value "${String(c)}"`);i.set(c,s)}}return i});e._zod.parse=(o,i)=>{let s=o.value;if(!zn(s))return o.issues.push({code:"invalid_type",expected:"object",input:s,inst:e}),o;let a=r.value.get(s?.[t.discriminator]);if(a)return a._zod.run(o,i);if(t.unionFallback)return n(o,i);return o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:s,path:[t.discriminator],inst:e}),o}}),Sf=g("$ZodIntersection",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value,i=t.left._zod.run({value:o,issues:[]},r),s=t.right._zod.run({value:o,issues:[]},r);if(i instanceof Promise||s instanceof Promise)return Promise.all([i,s]).then(([c,l])=>jS(n,c,l));return jS(n,i,s)}});function zm(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(nn(e)&&nn(t)){let n=Object.keys(t),r=Object.keys(e).filter((i)=>n.indexOf(i)!==-1),o={...e,...t};for(let i of r){let s=zm(e[i],t[i]);if(!s.valid)return{valid:!1,mergeErrorPath:[i,...s.mergeErrorPath]};o[i]=s.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let o=e[r],i=t[r],s=zm(o,i);if(!s.valid)return{valid:!1,mergeErrorPath:[r,...s.mergeErrorPath]};n.push(s.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function jS(e,t,n){let r=new Map,o;for(let a of t.issues)if(a.code==="unrecognized_keys"){o??(o=a);for(let c of a.keys){if(!r.has(c))r.set(c,{});r.get(c).l=!0}}else e.issues.push(a);for(let a of n.issues)if(a.code==="unrecognized_keys")for(let c of a.keys){if(!r.has(c))r.set(c,{});r.get(c).r=!0}else e.issues.push(a);let i=[...r].filter(([,a])=>a.l&&a.r).map(([a])=>a);if(i.length&&o)e.issues.push({...o,keys:i});if(rn(e))return e;let s=zm(t.value,n.value);if(!s.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}var Ga=g("$ZodTuple",(e,t)=>{D.init(e,t);let n=t.items;e._zod.parse=(r,o)=>{let i=r.value;if(!Array.isArray(i))return r.issues.push({input:i,inst:e,expected:"tuple",code:"invalid_type"}),r;r.value=[];let s=[],a=[...n].reverse().findIndex((u)=>u._zod.optin!=="optional"),c=a===-1?0:n.length-a;if(!t.rest){let u=i.length>n.length,d=i.length<c-1;if(u||d)return r.issues.push({...u?{code:"too_big",maximum:n.length,inclusive:!0}:{code:"too_small",minimum:n.length},input:i,inst:e,origin:"array"}),r}let l=-1;for(let u of n){if(l++,l>=i.length){if(l>=c)continue}let d=u._zod.run({value:i[l],issues:[]},o);if(d instanceof Promise)s.push(d.then((m)=>Na(m,r,l)));else Na(d,r,l)}if(t.rest){let u=i.slice(n.length);for(let d of u){l++;let m=t.rest._zod.run({value:d,issues:[]},o);if(m instanceof Promise)s.push(m.then((f)=>Na(f,r,l)));else Na(m,r,l)}}if(s.length)return Promise.all(s).then(()=>r);return r}});function Na(e,t,n){if(e.issues.length)t.issues.push(...Ze(n,e.issues));t.value[n]=e.value}var xf=g("$ZodRecord",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(!nn(o))return n.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),n;let i=[],s=t.keyType._zod.values;if(s){n.value={};let a=new Set;for(let l of s)if(typeof l==="string"||typeof l==="number"||typeof l==="symbol"){a.add(typeof l==="number"?l.toString():l);let u=t.valueType._zod.run({value:o[l],issues:[]},r);if(u instanceof Promise)i.push(u.then((d)=>{if(d.issues.length)n.issues.push(...Ze(l,d.issues));n.value[l]=d.value}));else{if(u.issues.length)n.issues.push(...Ze(l,u.issues));n.value[l]=u.value}}let c;for(let l in o)if(!a.has(l))c=c??[],c.push(l);if(c&&c.length>0)n.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:c})}else{n.value={};for(let a of Reflect.ownKeys(o)){if(a==="__proto__")continue;let c=t.keyType._zod.run({value:a,issues:[]},r);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof a==="string"&&Ko.test(a)&&c.issues.length&&c.issues.some((d)=>d.code==="invalid_type"&&d.expected==="number")){let d=t.keyType._zod.run({value:Number(a),issues:[]},r);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(d.issues.length===0)c=d}if(c.issues.length){if(t.mode==="loose")n.value[a]=o[a];else n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map((d)=>Te(d,r,le())),input:a,path:[a],inst:e});continue}let u=t.valueType._zod.run({value:o[a],issues:[]},r);if(u instanceof Promise)i.push(u.then((d)=>{if(d.issues.length)n.issues.push(...Ze(a,d.issues));n.value[c.value]=d.value}));else{if(u.issues.length)n.issues.push(...Ze(a,u.issues));n.value[c.value]=u.value}}}if(i.length)return Promise.all(i).then(()=>n);return n}}),Cf=g("$ZodMap",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(!(o instanceof Map))return n.issues.push({expected:"map",code:"invalid_type",input:o,inst:e}),n;let i=[];n.value=new Map;for(let[s,a]of o){let c=t.keyType._zod.run({value:s,issues:[]},r),l=t.valueType._zod.run({value:a,issues:[]},r);if(c instanceof Promise||l instanceof Promise)i.push(Promise.all([c,l]).then(([u,d])=>{US(u,d,n,s,o,e,r)}));else US(c,l,n,s,o,e,r)}if(i.length)return Promise.all(i).then(()=>n);return n}});function US(e,t,n,r,o,i,s){if(e.issues.length)if(Uo.has(typeof r))n.issues.push(...Ze(r,e.issues));else n.issues.push({code:"invalid_key",origin:"map",input:o,inst:i,issues:e.issues.map((a)=>Te(a,s,le()))});if(t.issues.length)if(Uo.has(typeof r))n.issues.push(...Ze(r,t.issues));else n.issues.push({origin:"map",code:"invalid_element",input:o,inst:i,key:r,issues:t.issues.map((a)=>Te(a,s,le()))});n.value.set(e.value,t.value)}var Ef=g("$ZodSet",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(!(o instanceof Set))return n.issues.push({input:o,inst:e,expected:"set",code:"invalid_type"}),n;let i=[];n.value=new Set;for(let s of o){let a=t.valueType._zod.run({value:s,issues:[]},r);if(a instanceof Promise)i.push(a.then((c)=>BS(c,n)));else BS(a,n)}if(i.length)return Promise.all(i).then(()=>n);return n}});function BS(e,t){if(e.issues.length)t.issues.push(...e.issues);t.value.add(e.value)}var wf=g("$ZodEnum",(e,t)=>{D.init(e,t);let n=Zo(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter((o)=>Uo.has(typeof o)).map((o)=>typeof o==="string"?Xe(o):o.toString()).join("|")})$`),e._zod.parse=(o,i)=>{let s=o.value;if(r.has(s))return o;return o.issues.push({code:"invalid_value",values:n,input:s,inst:e}),o}}),Rf=g("$ZodLiteral",(e,t)=>{if(D.init(e,t),t.values.length===0)throw Error("Cannot create literal schema with no valid values");let n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map((r)=>typeof r==="string"?Xe(r):r?Xe(r.toString()):String(r)).join("|")})$`),e._zod.parse=(r,o)=>{let i=r.value;if(n.has(i))return r;return r.issues.push({code:"invalid_value",values:t.values,input:i,inst:e}),r}}),Pf=g("$ZodFile",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{let o=n.value;if(o instanceof File)return n;return n.issues.push({expected:"file",code:"invalid_type",input:o,inst:e}),n}}),Af=g("$ZodTransform",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new On(e.constructor.name);let o=t.transform(n.value,n);if(r.async)return(o instanceof Promise?o:Promise.resolve(o)).then((s)=>(n.value=s,n));if(o instanceof Promise)throw new Ct;return n.value=o,n}});function VS(e,t){if(e.issues.length&&t===void 0)return{issues:[],value:void 0};return e}var Za=g("$ZodOptional",(e,t)=>{D.init(e,t),e._zod.optin="optional",e._zod.optout="optional",W(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),W(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${jo(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){let o=t.innerType._zod.run(n,r);if(o instanceof Promise)return o.then((i)=>VS(i,n.value));return VS(o,n.value)}if(n.value===void 0)return n;return t.innerType._zod.run(n,r)}}),kf=g("$ZodExactOptional",(e,t)=>{Za.init(e,t),W(e._zod,"values",()=>t.innerType._zod.values),W(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,r)=>t.innerType._zod.run(n,r)}),Tf=g("$ZodNullable",(e,t)=>{D.init(e,t),W(e._zod,"optin",()=>t.innerType._zod.optin),W(e._zod,"optout",()=>t.innerType._zod.optout),W(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${jo(n.source)}|null)$`):void 0}),W(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(n,r)=>{if(n.value===null)return n;return t.innerType._zod.run(n,r)}}),If=g("$ZodDefault",(e,t)=>{D.init(e,t),e._zod.optin="optional",W(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)return n.value=t.defaultValue,n;let o=t.innerType._zod.run(n,r);if(o instanceof Promise)return o.then((i)=>HS(i,t));return HS(o,t)}});function HS(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var Of=g("$ZodPrefault",(e,t)=>{D.init(e,t),e._zod.optin="optional",W(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)n.value=t.defaultValue;return t.innerType._zod.run(n,r)}}),zf=g("$ZodNonOptional",(e,t)=>{D.init(e,t),W(e._zod,"values",()=>{let n=t.innerType._zod.values;return n?new Set([...n].filter((r)=>r!==void 0)):void 0}),e._zod.parse=(n,r)=>{let o=t.innerType._zod.run(n,r);if(o instanceof Promise)return o.then((i)=>KS(i,e));return KS(o,e)}});function KS(e,t){if(!e.issues.length&&e.value===void 0)e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t});return e}var Nf=g("$ZodSuccess",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new On("ZodSuccess");let o=t.innerType._zod.run(n,r);if(o instanceof Promise)return o.then((i)=>(n.value=i.issues.length===0,n));return n.value=o.issues.length===0,n}}),Df=g("$ZodCatch",(e,t)=>{D.init(e,t),W(e._zod,"optin",()=>t.innerType._zod.optin),W(e._zod,"optout",()=>t.innerType._zod.optout),W(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);let o=t.innerType._zod.run(n,r);if(o instanceof Promise)return o.then((i)=>{if(n.value=i.value,i.issues.length)n.value=t.catchValue({...n,error:{issues:i.issues.map((s)=>Te(s,r,le()))},input:n.value}),n.issues=[];return n});if(n.value=o.value,o.issues.length)n.value=t.catchValue({...n,error:{issues:o.issues.map((i)=>Te(i,r,le()))},input:n.value}),n.issues=[];return n}}),Mf=g("$ZodNaN",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>{if(typeof n.value!=="number"||!Number.isNaN(n.value))return n.issues.push({input:n.value,inst:e,expected:"nan",code:"invalid_type"}),n;return n}}),$f=g("$ZodPipe",(e,t)=>{D.init(e,t),W(e._zod,"values",()=>t.in._zod.values),W(e._zod,"optin",()=>t.in._zod.optin),W(e._zod,"optout",()=>t.out._zod.optout),W(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if(r.direction==="backward"){let i=t.out._zod.run(n,r);if(i instanceof Promise)return i.then((s)=>Da(s,t.in,r));return Da(i,t.in,r)}let o=t.in._zod.run(n,r);if(o instanceof Promise)return o.then((i)=>Da(i,t.out,r));return Da(o,t.out,r)}});function Da(e,t,n){if(e.issues.length)return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues},n)}var Qo=g("$ZodCodec",(e,t)=>{D.init(e,t),W(e._zod,"values",()=>t.in._zod.values),W(e._zod,"optin",()=>t.in._zod.optin),W(e._zod,"optout",()=>t.out._zod.optout),W(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if((r.direction||"forward")==="forward"){let i=t.in._zod.run(n,r);if(i instanceof Promise)return i.then((s)=>Ma(s,t,r));return Ma(i,t,r)}else{let i=t.out._zod.run(n,r);if(i instanceof Promise)return i.then((s)=>Ma(s,t,r));return Ma(i,t,r)}}});function Ma(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||"forward")==="forward"){let o=t.transform(e.value,e);if(o instanceof Promise)return o.then((i)=>$a(e,i,t.out,n));return $a(e,o,t.out,n)}else{let o=t.reverseTransform(e.value,e);if(o instanceof Promise)return o.then((i)=>$a(e,i,t.in,n));return $a(e,o,t.in,n)}}function $a(e,t,n,r){if(e.issues.length)return e.aborted=!0,e;return n._zod.run({value:t,issues:e.issues},r)}var Lf=g("$ZodReadonly",(e,t)=>{D.init(e,t),W(e._zod,"propValues",()=>t.innerType._zod.propValues),W(e._zod,"values",()=>t.innerType._zod.values),W(e._zod,"optin",()=>t.innerType?._zod?.optin),W(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);let o=t.innerType._zod.run(n,r);if(o instanceof Promise)return o.then(qS);return qS(o)}});function qS(e){return e.value=Object.freeze(e.value),e}var Wf=g("$ZodTemplateLiteral",(e,t)=>{D.init(e,t);let n=[];for(let r of t.parts)if(typeof r==="object"&&r!==null){if(!r._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...r._zod.traits].shift()}`);let o=r._zod.pattern instanceof RegExp?r._zod.pattern.source:r._zod.pattern;if(!o)throw Error(`Invalid template literal part: ${r._zod.traits}`);let i=o.startsWith("^")?1:0,s=o.endsWith("$")?o.length-1:o.length;n.push(o.slice(i,s))}else if(r===null||zd.has(typeof r))n.push(Xe(`${r}`));else throw Error(`Invalid template literal part: ${r}`);e._zod.pattern=new RegExp(`^${n.join("")}$`),e._zod.parse=(r,o)=>{if(typeof r.value!=="string")return r.issues.push({input:r.value,inst:e,expected:"string",code:"invalid_type"}),r;if(e._zod.pattern.lastIndex=0,!e._zod.pattern.test(r.value))return r.issues.push({input:r.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),r;return r}}),Ff=g("$ZodFunction",(e,t)=>(D.init(e,t),e._def=t,e._zod.def=t,e.implement=(n)=>{if(typeof n!=="function")throw Error("implement() must be called with a function");return function(...r){let o=e._def.input?_a(e._def.input,r):r,i=Reflect.apply(n,this,o);if(e._def.output)return _a(e._def.output,i);return i}},e.implementAsync=(n)=>{if(typeof n!=="function")throw Error("implementAsync() must be called with a function");return async function(...r){let o=e._def.input?await Sa(e._def.input,r):r,i=await Reflect.apply(n,this,o);if(e._def.output)return await Sa(e._def.output,i);return i}},e._zod.parse=(n,r)=>{if(typeof n.value!=="function")return n.issues.push({code:"invalid_type",expected:"function",input:n.value,inst:e}),n;if(e._def.output&&e._def.output._zod.def.type==="promise")n.value=e.implementAsync(n.value);else n.value=e.implement(n.value);return n},e.input=(...n)=>{let r=e.constructor;if(Array.isArray(n[0]))return new r({type:"function",input:new Ga({type:"tuple",items:n[0],rest:n[1]}),output:e._def.output});return new r({type:"function",input:n[0],output:e._def.output})},e.output=(n)=>new e.constructor({type:"function",input:e._def.input,output:n}),e)),Gf=g("$ZodPromise",(e,t)=>{D.init(e,t),e._zod.parse=(n,r)=>Promise.resolve(n.value).then((o)=>t.innerType._zod.run({value:o,issues:[]},r))}),Zf=g("$ZodLazy",(e,t)=>{D.init(e,t),W(e._zod,"innerType",()=>t.getter()),W(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),W(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),W(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),W(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,r)=>e._zod.innerType._zod.run(n,r)}),jf=g("$ZodCustom",(e,t)=>{Q.init(e,t),D.init(e,t),e._zod.parse=(n,r)=>n,e._zod.check=(n)=>{let r=n.value,o=t.fn(r);if(o instanceof Promise)return o.then((i)=>YS(i,n,r,e));YS(o,n,r,e);return}});function YS(e,t,n,r){if(!e){let o={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};if(r._zod.def.params)o.params=r._zod.def.params;t.issues.push(br(o))}}var ei={};var nx,ja=Symbol("ZodOutput"),Ua=Symbol("ZodInput");class Uf{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];if(this._map.set(e,n),n&&typeof n==="object"&&"id"in n)this._idmap.set(n.id,e);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);if(t&&typeof t==="object"&&"id"in t)this._idmap.delete(t.id);return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function ti(){return new Uf}(nx=globalThis).__zod_globalRegistry??(nx.__zod_globalRegistry=ti());var Oe=globalThis.__zod_globalRegistry;function Bf(e,t){return new e({type:"string",..._(t)})}function Vf(e,t){return new e({type:"string",coerce:!0,..._(t)})}function Ba(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,..._(t)})}function ni(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,..._(t)})}function Va(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,..._(t)})}function Ha(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",..._(t)})}function Ka(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",..._(t)})}function qa(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",..._(t)})}function ri(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,..._(t)})}function Ya(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,..._(t)})}function Ja(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,..._(t)})}function Xa(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,..._(t)})}function Qa(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,..._(t)})}function ec(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,..._(t)})}function tc(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,..._(t)})}function nc(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,..._(t)})}function rc(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,..._(t)})}function oc(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,..._(t)})}function Hf(e,t){return new e({type:"string",format:"mac",check:"string_format",abort:!1,..._(t)})}function ic(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,..._(t)})}function sc(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,..._(t)})}function ac(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,..._(t)})}function cc(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,..._(t)})}function lc(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,..._(t)})}function uc(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,..._(t)})}var dc={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function Kf(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,..._(t)})}function qf(e,t){return new e({type:"string",format:"date",check:"string_format",..._(t)})}function Yf(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,..._(t)})}function Jf(e,t){return new e({type:"string",format:"duration",check:"string_format",..._(t)})}function Xf(e,t){return new e({type:"number",checks:[],..._(t)})}function Qf(e,t){return new e({type:"number",coerce:!0,checks:[],..._(t)})}function ep(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",..._(t)})}function tp(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float32",..._(t)})}function np(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float64",..._(t)})}function rp(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"int32",..._(t)})}function op(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"uint32",..._(t)})}function ip(e,t){return new e({type:"boolean",..._(t)})}function sp(e,t){return new e({type:"boolean",coerce:!0,..._(t)})}function ap(e,t){return new e({type:"bigint",..._(t)})}function cp(e,t){return new e({type:"bigint",coerce:!0,..._(t)})}function lp(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"int64",..._(t)})}function up(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",..._(t)})}function dp(e,t){return new e({type:"symbol",..._(t)})}function mp(e,t){return new e({type:"undefined",..._(t)})}function fp(e,t){return new e({type:"null",..._(t)})}function pp(e){return new e({type:"any"})}function gp(e){return new e({type:"unknown"})}function hp(e,t){return new e({type:"never",..._(t)})}function yp(e,t){return new e({type:"void",..._(t)})}function bp(e,t){return new e({type:"date",..._(t)})}function vp(e,t){return new e({type:"date",coerce:!0,..._(t)})}function _p(e,t){return new e({type:"nan",..._(t)})}function Et(e,t){return new Ia({check:"less_than",..._(t),value:e,inclusive:!1})}function Ue(e,t){return new Ia({check:"less_than",..._(t),value:e,inclusive:!0})}function wt(e,t){return new Oa({check:"greater_than",..._(t),value:e,inclusive:!1})}function Ee(e,t){return new Oa({check:"greater_than",..._(t),value:e,inclusive:!0})}function mc(e){return wt(0,e)}function fc(e){return Et(0,e)}function pc(e){return Ue(0,e)}function gc(e){return Ee(0,e)}function on(e,t){return new pm({check:"multiple_of",..._(t),value:e})}function sn(e,t){return new ym({check:"max_size",..._(t),maximum:e})}function Rt(e,t){return new bm({check:"min_size",..._(t),minimum:e})}function Mn(e,t){return new vm({check:"size_equals",..._(t),size:e})}function $n(e,t){return new _m({check:"max_length",..._(t),maximum:e})}function Ft(e,t){return new Sm({check:"min_length",..._(t),minimum:e})}function Ln(e,t){return new xm({check:"length_equals",..._(t),length:e})}function Rr(e,t){return new Cm({check:"string_format",format:"regex",..._(t),pattern:e})}function Pr(e){return new Em({check:"string_format",format:"lowercase",..._(e)})}function Ar(e){return new wm({check:"string_format",format:"uppercase",..._(e)})}function kr(e,t){return new Rm({check:"string_format",format:"includes",..._(t),includes:e})}function Tr(e,t){return new Pm({check:"string_format",format:"starts_with",..._(t),prefix:e})}function Ir(e,t){return new Am({check:"string_format",format:"ends_with",..._(t),suffix:e})}function hc(e,t,n){return new km({check:"property",property:e,schema:t,..._(n)})}function Or(e,t){return new Tm({check:"mime_type",mime:e,..._(t)})}function ut(e){return new Im({check:"overwrite",tx:e})}function zr(e){return ut((t)=>t.normalize(e))}function Nr(){return ut((e)=>e.trim())}function Dr(){return ut((e)=>e.toLowerCase())}function Mr(){return ut((e)=>e.toUpperCase())}function $r(){return ut((e)=>Td(e))}function Sp(e,t,n){return new e({type:"array",element:t,..._(n)})}function JD(e,t,n){return new e({type:"union",options:t,..._(n)})}function XD(e,t,n){return new e({type:"union",options:t,inclusive:!1,..._(n)})}function QD(e,t,n,r){return new e({type:"union",options:n,discriminator:t,..._(r)})}function e0(e,t,n){return new e({type:"intersection",left:t,right:n})}function t0(e,t,n,r){let o=n instanceof D;return new e({type:"tuple",items:t,rest:o?n:null,..._(o?r:n)})}function n0(e,t,n,r){return new e({type:"record",keyType:t,valueType:n,..._(r)})}function r0(e,t,n,r){return new e({type:"map",keyType:t,valueType:n,..._(r)})}function o0(e,t,n){return new e({type:"set",valueType:t,..._(n)})}function i0(e,t,n){let r=Array.isArray(t)?Object.fromEntries(t.map((o)=>[o,o])):t;return new e({type:"enum",entries:r,..._(n)})}function s0(e,t,n){return new e({type:"enum",entries:t,..._(n)})}function a0(e,t,n){return new e({type:"literal",values:Array.isArray(t)?t:[t],..._(n)})}function xp(e,t){return new e({type:"file",..._(t)})}function c0(e,t){return new e({type:"transform",transform:t})}function l0(e,t){return new e({type:"optional",innerType:t})}function u0(e,t){return new e({type:"nullable",innerType:t})}function d0(e,t,n){return new e({type:"default",innerType:t,get defaultValue(){return typeof n==="function"?n():Od(n)}})}function m0(e,t,n){return new e({type:"nonoptional",innerType:t,..._(n)})}function f0(e,t){return new e({type:"success",innerType:t})}function p0(e,t,n){return new e({type:"catch",innerType:t,catchValue:typeof n==="function"?n:()=>n})}function g0(e,t,n){return new e({type:"pipe",in:t,out:n})}function h0(e,t){return new e({type:"readonly",innerType:t})}function y0(e,t,n){return new e({type:"template_literal",parts:t,..._(n)})}function b0(e,t){return new e({type:"lazy",getter:t})}function v0(e,t){return new e({type:"promise",innerType:t})}function Cp(e,t,n){let r=_(n);return r.abort??(r.abort=!0),new e({type:"custom",check:"custom",fn:t,...r})}function Ep(e,t,n){return new e({type:"custom",check:"custom",fn:t,..._(n)})}function wp(e){let t=rx((n)=>(n.addIssue=(r)=>{if(typeof r==="string")n.issues.push(br(r,n.value,t._zod.def));else{let o=r;if(o.fatal)o.continue=!1;o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),n.issues.push(br(o))}},e(n.value,n)));return t}function rx(e,t){let n=new Q({check:"custom",..._(t)});return n._zod.check=e,n}function Rp(e){let t=new Q({check:"describe"});return t._zod.onattach=[(n)=>{let r=Oe.get(n)??{};Oe.add(n,{...r,description:e})}],t._zod.check=()=>{},t}function Pp(e){let t=new Q({check:"meta"});return t._zod.onattach=[(n)=>{let r=Oe.get(n)??{};Oe.add(n,{...r,...e})}],t._zod.check=()=>{},t}function Ap(e,t){let n=_(t),r=n.truthy??["true","1","yes","on","y","enabled"],o=n.falsy??["false","0","no","off","n","disabled"];if(n.case!=="sensitive")r=r.map((f)=>typeof f==="string"?f.toLowerCase():f),o=o.map((f)=>typeof f==="string"?f.toLowerCase():f);let i=new Set(r),s=new Set(o),a=e.Codec??Qo,c=e.Boolean??Jo,u=new(e.String??Dn)({type:"string",error:n.error}),d=new c({type:"boolean",error:n.error}),m=new a({type:"pipe",in:u,out:d,transform:(f,p)=>{let h=f;if(n.case!=="sensitive")h=h.toLowerCase();if(i.has(h))return!0;else if(s.has(h))return!1;else return p.issues.push({code:"invalid_value",expected:"stringbool",values:[...i,...s],input:p.value,inst:m,continue:!1}),{}},reverseTransform:(f,p)=>{if(f===!0)return r[0]||"true";else return o[0]||"false"},error:n.error});return m}function Lr(e,t,n,r={}){let o=_(r),i={..._(r),check:"string_format",type:"string",format:t,fn:typeof n==="function"?n:(a)=>n.test(a),...o};if(n instanceof RegExp)i.pattern=n;return new e(i)}var Wr=()=>{throw Error("JSON Schema conversion is not bundled into this plugin artifact")},kp=()=>Wr,yc=()=>Wr,Fr=Wr,ee=Wr,Gr=Wr,Zr=Wr;var _0={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Tp=(e,t,n,r)=>{let o=n;o.type="string";let{minimum:i,maximum:s,format:a,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof i==="number")o.minLength=i;if(typeof s==="number")o.maxLength=s;if(a){if(o.format=_0[a]??a,o.format==="")delete o.format;if(a==="time")delete o.format}if(l)o.contentEncoding=l;if(c&&c.size>0){let u=[...c];if(u.length===1)o.pattern=u[0].source;else if(u.length>1)o.allOf=[...u.map((d)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))]}},Ip=(e,t,n,r)=>{let o=n,{minimum:i,maximum:s,format:a,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;if(typeof a==="string"&&a.includes("int"))o.type="integer";else o.type="number";if(typeof u==="number")if(t.target==="draft-04"||t.target==="openapi-3.0")o.minimum=u,o.exclusiveMinimum=!0;else o.exclusiveMinimum=u;if(typeof i==="number"){if(o.minimum=i,typeof u==="number"&&t.target!=="draft-04")if(u>=i)delete o.minimum;else delete o.exclusiveMinimum}if(typeof l==="number")if(t.target==="draft-04"||t.target==="openapi-3.0")o.maximum=l,o.exclusiveMaximum=!0;else o.exclusiveMaximum=l;if(typeof s==="number"){if(o.maximum=s,typeof l==="number"&&t.target!=="draft-04")if(l<=s)delete o.maximum;else delete o.exclusiveMaximum}if(typeof c==="number")o.multipleOf=c},Op=(e,t,n,r)=>{n.type="boolean"},zp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},Np=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},Dp=(e,t,n,r)=>{if(t.target==="openapi-3.0")n.type="string",n.nullable=!0,n.enum=[null];else n.type="null"},Mp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},$p=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},Lp=(e,t,n,r)=>{n.not={}},Wp=(e,t,n,r)=>{},Fp=(e,t,n,r)=>{},Gp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},Zp=(e,t,n,r)=>{let o=e._zod.def,i=Zo(o.entries);if(i.every((s)=>typeof s==="number"))n.type="number";if(i.every((s)=>typeof s==="string"))n.type="string";n.enum=i},jp=(e,t,n,r)=>{let o=e._zod.def,i=[];for(let s of o.values)if(s===void 0){if(t.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof s==="bigint")if(t.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else i.push(Number(s));else i.push(s);if(i.length===0);else if(i.length===1){let s=i[0];if(n.type=s===null?"null":typeof s,t.target==="draft-04"||t.target==="openapi-3.0")n.enum=[s];else n.const=s}else{if(i.every((s)=>typeof s==="number"))n.type="number";if(i.every((s)=>typeof s==="string"))n.type="string";if(i.every((s)=>typeof s==="boolean"))n.type="boolean";if(i.every((s)=>s===null))n.type="null";n.enum=i}},Up=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Bp=(e,t,n,r)=>{let o=n,i=e._zod.pattern;if(!i)throw Error("Pattern not found in template literal");o.type="string",o.pattern=i.source},Vp=(e,t,n,r)=>{let o=n,i={type:"string",format:"binary",contentEncoding:"binary"},{minimum:s,maximum:a,mime:c}=e._zod.bag;if(s!==void 0)i.minLength=s;if(a!==void 0)i.maxLength=a;if(c)if(c.length===1)i.contentMediaType=c[0],Object.assign(o,i);else Object.assign(o,i),o.anyOf=c.map((l)=>({contentMediaType:l}));else Object.assign(o,i)},Hp=(e,t,n,r)=>{n.type="boolean"},Kp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},qp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},Yp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},Jp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},Xp=(e,t,n,r)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},Qp=(e,t,n,r)=>{let o=n,i=e._zod.def,{minimum:s,maximum:a}=e._zod.bag;if(typeof s==="number")o.minItems=s;if(typeof a==="number")o.maxItems=a;o.type="array",o.items=ee(i.element,t,{...r,path:[...r.path,"items"]})},eg=(e,t,n,r)=>{let o=n,i=e._zod.def;o.type="object",o.properties={};let s=i.shape;for(let l in s)o.properties[l]=ee(s[l],t,{...r,path:[...r.path,"properties",l]});let a=new Set(Object.keys(s)),c=new Set([...a].filter((l)=>{let u=i.shape[l]._zod;if(t.io==="input")return u.optin===void 0;else return u.optout===void 0}));if(c.size>0)o.required=Array.from(c);if(i.catchall?._zod.def.type==="never")o.additionalProperties=!1;else if(!i.catchall){if(t.io==="output")o.additionalProperties=!1}else if(i.catchall)o.additionalProperties=ee(i.catchall,t,{...r,path:[...r.path,"additionalProperties"]})},vc=(e,t,n,r)=>{let o=e._zod.def,i=o.inclusive===!1,s=o.options.map((a,c)=>ee(a,t,{...r,path:[...r.path,i?"oneOf":"anyOf",c]}));if(i)n.oneOf=s;else n.anyOf=s},tg=(e,t,n,r)=>{let o=e._zod.def,i=ee(o.left,t,{...r,path:[...r.path,"allOf",0]}),s=ee(o.right,t,{...r,path:[...r.path,"allOf",1]}),a=(l)=>("allOf"in l)&&Object.keys(l).length===1,c=[...a(i)?i.allOf:[i],...a(s)?s.allOf:[s]];n.allOf=c},ng=(e,t,n,r)=>{let o=n,i=e._zod.def;o.type="array";let s=t.target==="draft-2020-12"?"prefixItems":"items",a=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",c=i.items.map((m,f)=>ee(m,t,{...r,path:[...r.path,s,f]})),l=i.rest?ee(i.rest,t,{...r,path:[...r.path,a,...t.target==="openapi-3.0"?[i.items.length]:[]]}):null;if(t.target==="draft-2020-12"){if(o.prefixItems=c,l)o.items=l}else if(t.target==="openapi-3.0"){if(o.items={anyOf:c},l)o.items.anyOf.push(l);if(o.minItems=c.length,!l)o.maxItems=c.length}else if(o.items=c,l)o.additionalItems=l;let{minimum:u,maximum:d}=e._zod.bag;if(typeof u==="number")o.minItems=u;if(typeof d==="number")o.maxItems=d},rg=(e,t,n,r)=>{let o=n,i=e._zod.def;o.type="object";let s=i.keyType,c=s._zod.bag?.patterns;if(i.mode==="loose"&&c&&c.size>0){let u=ee(i.valueType,t,{...r,path:[...r.path,"patternProperties","*"]});o.patternProperties={};for(let d of c)o.patternProperties[d.source]=u}else{if(t.target==="draft-07"||t.target==="draft-2020-12")o.propertyNames=ee(i.keyType,t,{...r,path:[...r.path,"propertyNames"]});o.additionalProperties=ee(i.valueType,t,{...r,path:[...r.path,"additionalProperties"]})}let l=s._zod.values;if(l){let u=[...l].filter((d)=>typeof d==="string"||typeof d==="number");if(u.length>0)o.required=u}},og=(e,t,n,r)=>{let o=e._zod.def,i=ee(o.innerType,t,r),s=t.seen.get(e);if(t.target==="openapi-3.0")s.ref=o.innerType,n.nullable=!0;else n.anyOf=[i,{type:"null"}]},ig=(e,t,n,r)=>{let o=e._zod.def;ee(o.innerType,t,r);let i=t.seen.get(e);i.ref=o.innerType},sg=(e,t,n,r)=>{let o=e._zod.def;ee(o.innerType,t,r);let i=t.seen.get(e);i.ref=o.innerType,n.default=JSON.parse(JSON.stringify(o.defaultValue))},ag=(e,t,n,r)=>{let o=e._zod.def;ee(o.innerType,t,r);let i=t.seen.get(e);if(i.ref=o.innerType,t.io==="input")n._prefault=JSON.parse(JSON.stringify(o.defaultValue))},cg=(e,t,n,r)=>{let o=e._zod.def;ee(o.innerType,t,r);let i=t.seen.get(e);i.ref=o.innerType;let s;try{s=o.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}n.default=s},lg=(e,t,n,r)=>{let o=e._zod.def,i=t.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;ee(i,t,r);let s=t.seen.get(e);s.ref=i},ug=(e,t,n,r)=>{let o=e._zod.def;ee(o.innerType,t,r);let i=t.seen.get(e);i.ref=o.innerType,n.readOnly=!0},dg=(e,t,n,r)=>{let o=e._zod.def;ee(o.innerType,t,r);let i=t.seen.get(e);i.ref=o.innerType},_c=(e,t,n,r)=>{let o=e._zod.def;ee(o.innerType,t,r);let i=t.seen.get(e);i.ref=o.innerType},mg=(e,t,n,r)=>{let o=e._zod.innerType;ee(o,t,r);let i=t.seen.get(e);i.ref=o},bc={string:Tp,number:Ip,boolean:Op,bigint:zp,symbol:Np,null:Dp,undefined:Mp,void:$p,never:Lp,any:Wp,unknown:Fp,date:Gp,enum:Zp,literal:jp,nan:Up,template_literal:Bp,file:Vp,success:Hp,custom:Kp,function:qp,transform:Yp,map:Jp,set:Xp,array:Qp,object:eg,union:vc,intersection:tg,tuple:ng,record:rg,nullable:og,nonoptional:ig,default:sg,prefault:ag,catch:cg,pipe:lg,readonly:ug,promise:dg,optional:_c,lazy:mg};function oi(e,t){if("_idmap"in e){let r=e,o=Fr({...t,processors:bc}),i={};for(let c of r._idmap.entries()){let[l,u]=c;ee(u,o)}let s={},a={registry:r,uri:t?.uri,defs:i};o.external=a;for(let c of r._idmap.entries()){let[l,u]=c;Gr(o,u),s[l]=Zr(o,u)}if(Object.keys(i).length>0){let c=o.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[c]:i}}return{schemas:s}}let n=Fr({...t,processors:bc});return ee(e,n),Gr(n,e),Zr(n,e)}class fg{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(e){this.ctx.counter=e}get seen(){return this.ctx.seen}constructor(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";this.ctx=Fr({processors:bc,target:t,...e?.metadata&&{metadata:e.metadata},...e?.unrepresentable&&{unrepresentable:e.unrepresentable},...e?.override&&{override:e.override},...e?.io&&{io:e.io}})}process(e,t={path:[],schemaPath:[]}){return ee(e,this.ctx,t)}emit(e,t){if(t){if(t.cycles)this.ctx.cycles=t.cycles;if(t.reused)this.ctx.reused=t.reused;if(t.external)this.ctx.external=t.external}Gr(this.ctx,e);let n=Zr(this.ctx,e),{"~standard":r,...o}=n;return o}}var ox={};var li={};ln(li,{ZodISODate:()=>si,ZodISODateTime:()=>ii,ZodISODuration:()=>ci,ZodISOTime:()=>ai,date:()=>gg,datetime:()=>pg,duration:()=>yg,time:()=>hg});var ii=g("ZodISODateTime",(e,t)=>{Bm.init(e,t),Y.init(e,t)});function pg(e){return Kf(ii,e)}var si=g("ZodISODate",(e,t)=>{Vm.init(e,t),Y.init(e,t)});function gg(e){return qf(si,e)}var ai=g("ZodISOTime",(e,t)=>{Hm.init(e,t),Y.init(e,t)});function hg(e){return Yf(ai,e)}var ci=g("ZodISODuration",(e,t)=>{Km.init(e,t),Y.init(e,t)});function yg(e){return Jf(ci,e)}var sx=(e,t)=>{Ho.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(n)=>_r(e,n)},flatten:{value:(n)=>vr(e,n)},addIssue:{value:(n)=>{e.issues.push(n),e.message=JSON.stringify(e.issues,hr,2)}},addIssues:{value:(n)=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,hr,2)}},isEmpty:{get(){return e.issues.length===0}}})},ax=g("ZodError",sx),we=g("ZodError",sx,{Parent:Error});var Sc=Sr(we),xc=xr(we),Cc=Cr(we),Ec=Er(we),wc=xa(we),Rc=Ca(we),Pc=Ea(we),Ac=wa(we),kc=Ra(we),Tc=Pa(we),Ic=Aa(we),Oc=ka(we);var M=g("ZodType",(e,t)=>(D.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:yc(e,"input"),output:yc(e,"output")}}),e.toJSONSchema=kp(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone(I.mergeDefs(t,{checks:[...t.checks??[],...n.map((r)=>typeof r==="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0}),e.with=e.check,e.clone=(n,r)=>ve(e,n,r),e.brand=()=>e,e.register=(n,r)=>(n.add(e,r),e),e.parse=(n,r)=>Sc(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>Cc(e,n,r),e.parseAsync=async(n,r)=>xc(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>Ec(e,n,r),e.spa=e.safeParseAsync,e.encode=(n,r)=>wc(e,n,r),e.decode=(n,r)=>Rc(e,n,r),e.encodeAsync=async(n,r)=>Pc(e,n,r),e.decodeAsync=async(n,r)=>Ac(e,n,r),e.safeEncode=(n,r)=>kc(e,n,r),e.safeDecode=(n,r)=>Tc(e,n,r),e.safeEncodeAsync=async(n,r)=>Ic(e,n,r),e.safeDecodeAsync=async(n,r)=>Oc(e,n,r),e.refine=(n,r)=>e.check(ah(n,r)),e.superRefine=(n)=>e.check(ch(n)),e.overwrite=(n)=>e.check(ut(n)),e.optional=()=>di(e),e.exactOptional=()=>jg(e),e.nullable=()=>mi(e),e.nullish=()=>di(mi(e)),e.nonoptional=(n)=>qg(e,n),e.array=()=>hi(e),e.or=(n)=>el([e,n]),e.and=(n)=>zg(e,n),e.transform=(n)=>fi(e,nl(n)),e.default=(n)=>Vg(e,n),e.prefault=(n)=>Kg(e,n),e.catch=(n)=>Xg(e,n),e.pipe=(n)=>fi(e,n),e.readonly=()=>th(e),e.describe=(n)=>{let r=e.clone();return Oe.add(r,{description:n}),r},Object.defineProperty(e,"description",{get(){return Oe.get(e)?.description},configurable:!0}),e.meta=(...n)=>{if(n.length===0)return Oe.get(e);let r=e.clone();return Oe.add(r,n[0]),r},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=(n)=>n(e),e)),Dc=g("_ZodString",(e,t)=>{Dn.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,o,i)=>Tp(e,r,o,i);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...r)=>e.check(Rr(...r)),e.includes=(...r)=>e.check(kr(...r)),e.startsWith=(...r)=>e.check(Tr(...r)),e.endsWith=(...r)=>e.check(Ir(...r)),e.min=(...r)=>e.check(Ft(...r)),e.max=(...r)=>e.check($n(...r)),e.length=(...r)=>e.check(Ln(...r)),e.nonempty=(...r)=>e.check(Ft(1,...r)),e.lowercase=(r)=>e.check(Pr(r)),e.uppercase=(r)=>e.check(Ar(r)),e.trim=()=>e.check(Nr()),e.normalize=(...r)=>e.check(zr(...r)),e.toLowerCase=()=>e.check(Dr()),e.toUpperCase=()=>e.check(Mr()),e.slugify=()=>e.check($r())}),Ur=g("ZodString",(e,t)=>{Dn.init(e,t),Dc.init(e,t),e.email=(n)=>e.check(Ba(Mc,n)),e.url=(n)=>e.check(ri(pi,n)),e.jwt=(n)=>e.check(uc(Jc,n)),e.emoji=(n)=>e.check(Ya($c,n)),e.guid=(n)=>e.check(ni(ui,n)),e.uuid=(n)=>e.check(Va(At,n)),e.uuidv4=(n)=>e.check(Ha(At,n)),e.uuidv6=(n)=>e.check(Ka(At,n)),e.uuidv7=(n)=>e.check(qa(At,n)),e.nanoid=(n)=>e.check(Ja(Lc,n)),e.guid=(n)=>e.check(ni(ui,n)),e.cuid=(n)=>e.check(Xa(Wc,n)),e.cuid2=(n)=>e.check(Qa(Fc,n)),e.ulid=(n)=>e.check(ec(Gc,n)),e.base64=(n)=>e.check(ac(Kc,n)),e.base64url=(n)=>e.check(cc(qc,n)),e.xid=(n)=>e.check(tc(Zc,n)),e.ksuid=(n)=>e.check(nc(jc,n)),e.ipv4=(n)=>e.check(rc(Uc,n)),e.ipv6=(n)=>e.check(oc(Bc,n)),e.cidrv4=(n)=>e.check(ic(Vc,n)),e.cidrv6=(n)=>e.check(sc(Hc,n)),e.e164=(n)=>e.check(lc(Yc,n)),e.datetime=(n)=>e.check(pg(n)),e.date=(n)=>e.check(gg(n)),e.time=(n)=>e.check(hg(n)),e.duration=(n)=>e.check(yg(n))});function zc(e){return Bf(Ur,e)}var Y=g("ZodStringFormat",(e,t)=>{q.init(e,t),Dc.init(e,t)}),Mc=g("ZodEmail",(e,t)=>{Mm.init(e,t),Y.init(e,t)});function cx(e){return Ba(Mc,e)}var ui=g("ZodGUID",(e,t)=>{Nm.init(e,t),Y.init(e,t)});function lx(e){return ni(ui,e)}var At=g("ZodUUID",(e,t)=>{Dm.init(e,t),Y.init(e,t)});function ux(e){return Va(At,e)}function dx(e){return Ha(At,e)}function mx(e){return Ka(At,e)}function fx(e){return qa(At,e)}var pi=g("ZodURL",(e,t)=>{$m.init(e,t),Y.init(e,t)});function px(e){return ri(pi,e)}function gx(e){return ri(pi,{protocol:/^https?$/,hostname:je.domain,...I.normalizeParams(e)})}var $c=g("ZodEmoji",(e,t)=>{Lm.init(e,t),Y.init(e,t)});function hx(e){return Ya($c,e)}var Lc=g("ZodNanoID",(e,t)=>{Wm.init(e,t),Y.init(e,t)});function yx(e){return Ja(Lc,e)}var Wc=g("ZodCUID",(e,t)=>{Fm.init(e,t),Y.init(e,t)});function bx(e){return Xa(Wc,e)}var Fc=g("ZodCUID2",(e,t)=>{Gm.init(e,t),Y.init(e,t)});function vx(e){return Qa(Fc,e)}var Gc=g("ZodULID",(e,t)=>{Zm.init(e,t),Y.init(e,t)});function _x(e){return ec(Gc,e)}var Zc=g("ZodXID",(e,t)=>{jm.init(e,t),Y.init(e,t)});function Sx(e){return tc(Zc,e)}var jc=g("ZodKSUID",(e,t)=>{Um.init(e,t),Y.init(e,t)});function xx(e){return nc(jc,e)}var Uc=g("ZodIPv4",(e,t)=>{qm.init(e,t),Y.init(e,t)});function Cx(e){return rc(Uc,e)}var bg=g("ZodMAC",(e,t)=>{Jm.init(e,t),Y.init(e,t)});function Ex(e){return Hf(bg,e)}var Bc=g("ZodIPv6",(e,t)=>{Ym.init(e,t),Y.init(e,t)});function wx(e){return oc(Bc,e)}var Vc=g("ZodCIDRv4",(e,t)=>{Xm.init(e,t),Y.init(e,t)});function Rx(e){return ic(Vc,e)}var Hc=g("ZodCIDRv6",(e,t)=>{Qm.init(e,t),Y.init(e,t)});function Px(e){return sc(Hc,e)}var Kc=g("ZodBase64",(e,t)=>{tf.init(e,t),Y.init(e,t)});function Ax(e){return ac(Kc,e)}var qc=g("ZodBase64URL",(e,t)=>{nf.init(e,t),Y.init(e,t)});function kx(e){return cc(qc,e)}var Yc=g("ZodE164",(e,t)=>{rf.init(e,t),Y.init(e,t)});function Tx(e){return lc(Yc,e)}var Jc=g("ZodJWT",(e,t)=>{of.init(e,t),Y.init(e,t)});function Ix(e){return uc(Jc,e)}var Br=g("ZodCustomStringFormat",(e,t)=>{sf.init(e,t),Y.init(e,t)});function Ox(e,t,n={}){return Lr(Br,e,t,n)}function zx(e){return Lr(Br,"hostname",je.hostname,e)}function Nx(e){return Lr(Br,"hex",je.hex,e)}function Dx(e,t){let n=t?.enc??"hex",r=`${e}_${n}`,o=je[r];if(!o)throw Error(`Unrecognized hash format: ${r}`);return Lr(Br,r,o,t)}var Vr=g("ZodNumber",(e,t)=>{Wa.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,o,i)=>Ip(e,r,o,i),e.gt=(r,o)=>e.check(wt(r,o)),e.gte=(r,o)=>e.check(Ee(r,o)),e.min=(r,o)=>e.check(Ee(r,o)),e.lt=(r,o)=>e.check(Et(r,o)),e.lte=(r,o)=>e.check(Ue(r,o)),e.max=(r,o)=>e.check(Ue(r,o)),e.int=(r)=>e.check(Nc(r)),e.safe=(r)=>e.check(Nc(r)),e.positive=(r)=>e.check(wt(0,r)),e.nonnegative=(r)=>e.check(Ee(0,r)),e.negative=(r)=>e.check(Et(0,r)),e.nonpositive=(r)=>e.check(Ue(0,r)),e.multipleOf=(r,o)=>e.check(on(r,o)),e.step=(r,o)=>e.check(on(r,o)),e.finite=()=>e;let n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??0.5),e.isFinite=!0,e.format=n.format??null});function vg(e){return Xf(Vr,e)}var Fn=g("ZodNumberFormat",(e,t)=>{af.init(e,t),Vr.init(e,t)});function Nc(e){return ep(Fn,e)}function Mx(e){return tp(Fn,e)}function $x(e){return np(Fn,e)}function Lx(e){return rp(Fn,e)}function Wx(e){return op(Fn,e)}var Hr=g("ZodBoolean",(e,t)=>{Jo.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Op(e,n,r,o)});function _g(e){return ip(Hr,e)}var Kr=g("ZodBigInt",(e,t)=>{Fa.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,o,i)=>zp(e,r,o,i),e.gte=(r,o)=>e.check(Ee(r,o)),e.min=(r,o)=>e.check(Ee(r,o)),e.gt=(r,o)=>e.check(wt(r,o)),e.gte=(r,o)=>e.check(Ee(r,o)),e.min=(r,o)=>e.check(Ee(r,o)),e.lt=(r,o)=>e.check(Et(r,o)),e.lte=(r,o)=>e.check(Ue(r,o)),e.max=(r,o)=>e.check(Ue(r,o)),e.positive=(r)=>e.check(wt(BigInt(0),r)),e.negative=(r)=>e.check(Et(BigInt(0),r)),e.nonpositive=(r)=>e.check(Ue(BigInt(0),r)),e.nonnegative=(r)=>e.check(Ee(BigInt(0),r)),e.multipleOf=(r,o)=>e.check(on(r,o));let n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});function Fx(e){return ap(Kr,e)}var Xc=g("ZodBigIntFormat",(e,t)=>{cf.init(e,t),Kr.init(e,t)});function Gx(e){return lp(Xc,e)}function Zx(e){return up(Xc,e)}var Sg=g("ZodSymbol",(e,t)=>{lf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Np(e,n,r,o)});function jx(e){return dp(Sg,e)}var xg=g("ZodUndefined",(e,t)=>{uf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Mp(e,n,r,o)});function Ux(e){return mp(xg,e)}var Cg=g("ZodNull",(e,t)=>{df.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Dp(e,n,r,o)});function Eg(e){return fp(Cg,e)}var wg=g("ZodAny",(e,t)=>{mf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Wp(e,n,r,o)});function Bx(){return pp(wg)}var Rg=g("ZodUnknown",(e,t)=>{ff.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Fp(e,n,r,o)});function Wn(){return gp(Rg)}var Pg=g("ZodNever",(e,t)=>{pf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Lp(e,n,r,o)});function Qc(e){return hp(Pg,e)}var Ag=g("ZodVoid",(e,t)=>{gf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>$p(e,n,r,o)});function Vx(e){return yp(Ag,e)}var gi=g("ZodDate",(e,t)=>{hf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,o,i)=>Gp(e,r,o,i),e.min=(r,o)=>e.check(Ee(r,o)),e.max=(r,o)=>e.check(Ue(r,o));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});function Hx(e){return bp(gi,e)}var kg=g("ZodArray",(e,t)=>{yf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Qp(e,n,r,o),e.element=t.element,e.min=(n,r)=>e.check(Ft(n,r)),e.nonempty=(n)=>e.check(Ft(1,n)),e.max=(n,r)=>e.check($n(n,r)),e.length=(n,r)=>e.check(Ln(n,r)),e.unwrap=()=>e.element});function hi(e,t){return Sp(kg,e,t)}function Kx(e){let t=e._zod.def.shape;return tl(Object.keys(t))}var yi=g("ZodObject",(e,t)=>{bf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>eg(e,n,r,o),I.defineLazy(e,"shape",()=>t.shape),e.keyof=()=>tl(Object.keys(e._zod.def.shape)),e.catchall=(n)=>e.clone({...e._zod.def,catchall:n}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Wn()}),e.loose=()=>e.clone({...e._zod.def,catchall:Wn()}),e.strict=()=>e.clone({...e._zod.def,catchall:Qc()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=(n)=>I.extend(e,n),e.safeExtend=(n)=>I.safeExtend(e,n),e.merge=(n)=>I.merge(e,n),e.pick=(n)=>I.pick(e,n),e.omit=(n)=>I.omit(e,n),e.partial=(...n)=>I.partial(rl,e,n[0]),e.required=(...n)=>I.required(ol,e,n[0])});function qx(e,t){let n={type:"object",shape:e??{},...I.normalizeParams(t)};return new yi(n)}function Yx(e,t){return new yi({type:"object",shape:e,catchall:Qc(),...I.normalizeParams(t)})}function Jx(e,t){return new yi({type:"object",shape:e,catchall:Wn(),...I.normalizeParams(t)})}var bi=g("ZodUnion",(e,t)=>{Xo.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>vc(e,n,r,o),e.options=t.options});function el(e,t){return new bi({type:"union",options:e,...I.normalizeParams(t)})}var Tg=g("ZodXor",(e,t)=>{bi.init(e,t),vf.init(e,t),e._zod.processJSONSchema=(n,r,o)=>vc(e,n,r,o),e.options=t.options});function Xx(e,t){return new Tg({type:"union",options:e,inclusive:!1,...I.normalizeParams(t)})}var Ig=g("ZodDiscriminatedUnion",(e,t)=>{bi.init(e,t),_f.init(e,t)});function Qx(e,t,n){return new Ig({type:"union",options:t,discriminator:e,...I.normalizeParams(n)})}var Og=g("ZodIntersection",(e,t)=>{Sf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>tg(e,n,r,o)});function zg(e,t){return new Og({type:"intersection",left:e,right:t})}var Ng=g("ZodTuple",(e,t)=>{Ga.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ng(e,n,r,o),e.rest=(n)=>e.clone({...e._zod.def,rest:n})});function Dg(e,t,n){let r=t instanceof D,o=r?n:t;return new Ng({type:"tuple",items:e,rest:r?t:null,...I.normalizeParams(o)})}var vi=g("ZodRecord",(e,t)=>{xf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>rg(e,n,r,o),e.keyType=t.keyType,e.valueType=t.valueType});function Mg(e,t,n){return new vi({type:"record",keyType:e,valueType:t,...I.normalizeParams(n)})}function eC(e,t,n){let r=ve(e);return r._zod.values=void 0,new vi({type:"record",keyType:r,valueType:t,...I.normalizeParams(n)})}function tC(e,t,n){return new vi({type:"record",keyType:e,valueType:t,mode:"loose",...I.normalizeParams(n)})}var $g=g("ZodMap",(e,t)=>{Cf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Jp(e,n,r,o),e.keyType=t.keyType,e.valueType=t.valueType,e.min=(...n)=>e.check(Rt(...n)),e.nonempty=(n)=>e.check(Rt(1,n)),e.max=(...n)=>e.check(sn(...n)),e.size=(...n)=>e.check(Mn(...n))});function nC(e,t,n){return new $g({type:"map",keyType:e,valueType:t,...I.normalizeParams(n)})}var Lg=g("ZodSet",(e,t)=>{Ef.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Xp(e,n,r,o),e.min=(...n)=>e.check(Rt(...n)),e.nonempty=(n)=>e.check(Rt(1,n)),e.max=(...n)=>e.check(sn(...n)),e.size=(...n)=>e.check(Mn(...n))});function rC(e,t){return new Lg({type:"set",valueType:e,...I.normalizeParams(t)})}var jr=g("ZodEnum",(e,t)=>{wf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(r,o,i)=>Zp(e,r,o,i),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(r,o)=>{let i={};for(let s of r)if(n.has(s))i[s]=t.entries[s];else throw Error(`Key ${s} not found in enum`);return new jr({...t,checks:[],...I.normalizeParams(o),entries:i})},e.exclude=(r,o)=>{let i={...t.entries};for(let s of r)if(n.has(s))delete i[s];else throw Error(`Key ${s} not found in enum`);return new jr({...t,checks:[],...I.normalizeParams(o),entries:i})}});function tl(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map((r)=>[r,r])):e;return new jr({type:"enum",entries:n,...I.normalizeParams(t)})}function oC(e,t){return new jr({type:"enum",entries:e,...I.normalizeParams(t)})}var Wg=g("ZodLiteral",(e,t)=>{Rf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>jp(e,n,r,o),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function iC(e,t){return new Wg({type:"literal",values:Array.isArray(e)?e:[e],...I.normalizeParams(t)})}var Fg=g("ZodFile",(e,t)=>{Pf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Vp(e,n,r,o),e.min=(n,r)=>e.check(Rt(n,r)),e.max=(n,r)=>e.check(sn(n,r)),e.mime=(n,r)=>e.check(Or(Array.isArray(n)?n:[n],r))});function sC(e){return xp(Fg,e)}var Gg=g("ZodTransform",(e,t)=>{Af.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Yp(e,n,r,o),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new On(e.constructor.name);n.addIssue=(i)=>{if(typeof i==="string")n.issues.push(I.issue(i,n.value,t));else{let s=i;if(s.fatal)s.continue=!1;s.code??(s.code="custom"),s.input??(s.input=n.value),s.inst??(s.inst=e),n.issues.push(I.issue(s))}};let o=t.transform(n.value,n);if(o instanceof Promise)return o.then((i)=>(n.value=i,n));return n.value=o,n}});function nl(e){return new Gg({type:"transform",transform:e})}var rl=g("ZodOptional",(e,t)=>{Za.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>_c(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function di(e){return new rl({type:"optional",innerType:e})}var Zg=g("ZodExactOptional",(e,t)=>{kf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>_c(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function jg(e){return new Zg({type:"optional",innerType:e})}var Ug=g("ZodNullable",(e,t)=>{Tf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>og(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function mi(e){return new Ug({type:"nullable",innerType:e})}function aC(e){return di(mi(e))}var Bg=g("ZodDefault",(e,t)=>{If.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>sg(e,n,r,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Vg(e,t){return new Bg({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():I.shallowClone(t)}})}var Hg=g("ZodPrefault",(e,t)=>{Of.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ag(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function Kg(e,t){return new Hg({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():I.shallowClone(t)}})}var ol=g("ZodNonOptional",(e,t)=>{zf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ig(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function qg(e,t){return new ol({type:"nonoptional",innerType:e,...I.normalizeParams(t)})}var Yg=g("ZodSuccess",(e,t)=>{Nf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Hp(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function cC(e){return new Yg({type:"success",innerType:e})}var Jg=g("ZodCatch",(e,t)=>{Df.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>cg(e,n,r,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Xg(e,t){return new Jg({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}var Qg=g("ZodNaN",(e,t)=>{Mf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Up(e,n,r,o)});function lC(e){return _p(Qg,e)}var il=g("ZodPipe",(e,t)=>{$f.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>lg(e,n,r,o),e.in=t.in,e.out=t.out});function fi(e,t){return new il({type:"pipe",in:e,out:t})}var sl=g("ZodCodec",(e,t)=>{il.init(e,t),Qo.init(e,t)});function uC(e,t,n){return new sl({type:"pipe",in:e,out:t,transform:n.decode,reverseTransform:n.encode})}var eh=g("ZodReadonly",(e,t)=>{Lf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>ug(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function th(e){return new eh({type:"readonly",innerType:e})}var nh=g("ZodTemplateLiteral",(e,t)=>{Wf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Bp(e,n,r,o)});function dC(e,t){return new nh({type:"template_literal",parts:e,...I.normalizeParams(t)})}var rh=g("ZodLazy",(e,t)=>{Zf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>mg(e,n,r,o),e.unwrap=()=>e._zod.def.getter()});function oh(e){return new rh({type:"lazy",getter:e})}var ih=g("ZodPromise",(e,t)=>{Gf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>dg(e,n,r,o),e.unwrap=()=>e._zod.def.innerType});function mC(e){return new ih({type:"promise",innerType:e})}var sh=g("ZodFunction",(e,t)=>{Ff.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>qp(e,n,r,o)});function fC(e){return new sh({type:"function",input:Array.isArray(e?.input)?Dg(e?.input):e?.input??hi(Wn()),output:e?.output??Wn()})}var _i=g("ZodCustom",(e,t)=>{jf.init(e,t),M.init(e,t),e._zod.processJSONSchema=(n,r,o)=>Kp(e,n,r,o)});function pC(e){let t=new Q({check:"custom"});return t._zod.check=e,t}function gC(e,t){return Cp(_i,e??(()=>!0),t)}function ah(e,t={}){return Ep(_i,e,t)}function ch(e){return wp(e)}var hC=Rp,yC=Pp;function bC(e,t={}){let n=new _i({type:"custom",check:"custom",fn:(r)=>r instanceof e,abort:!0,...I.normalizeParams(t)});return n._zod.bag.Class=e,n._zod.check=(r)=>{if(!(r.value instanceof e))r.issues.push({code:"invalid_type",expected:e.name,input:r.value,inst:n,path:[...n._zod.def.path??[]]})},n}var vC=(...e)=>Ap({Codec:sl,Boolean:Hr,String:Ur},...e);function _C(e){let t=oh(()=>el([zc(e),vg(),_g(),Eg(),hi(t),Mg(zc(),t)]));return t}function SC(e,t){return fi(nl(e),t)}var xC={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};function CC(e){le({customError:e})}function EC(){return le().customError}var al;(function(e){})(al||(al={}));var E0=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(o){return e[o]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},r={nan:"NaN"};return(o)=>{switch(o.code){case"invalid_type":{let i=r[o.expected]??o.expected,s=$d(o.input),a=r[s]??s;return`Invalid input: expected ${i}, received ${a}`}case"invalid_value":if(o.values.length===1)return`Invalid input: expected ${ya(o.values[0])}`;return`Invalid option: expected one of ${pa(o.values,"|")}`;case"too_big":{let i=o.inclusive?"<=":"<",s=t(o.origin);if(s)return`Too big: expected ${o.origin??"value"} to have ${i}${o.maximum.toString()} ${s.unit??"elements"}`;return`Too big: expected ${o.origin??"value"} to be ${i}${o.maximum.toString()}`}case"too_small":{let i=o.inclusive?">=":">",s=t(o.origin);if(s)return`Too small: expected ${o.origin} to have ${i}${o.minimum.toString()} ${s.unit}`;return`Too small: expected ${o.origin} to be ${i}${o.minimum.toString()}`}case"invalid_format":{let i=o;if(i.format==="starts_with")return`Invalid string: must start with "${i.prefix}"`;if(i.format==="ends_with")return`Invalid string: must end with "${i.suffix}"`;if(i.format==="includes")return`Invalid string: must include "${i.includes}"`;if(i.format==="regex")return`Invalid string: must match pattern ${i.pattern}`;return`Invalid ${n[i.format]??o.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${o.divisor}`;case"unrecognized_keys":return`Unrecognized key${o.keys.length>1?"s":""}: ${pa(o.keys,", ")}`;case"invalid_key":return`Invalid key in ${o.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${o.origin}`;default:return"Invalid input"}}};function lh(){return{localeError:E0()}}var uh=()=>{throw Error("JSON Schema conversion is not bundled into this plugin artifact")};var cl={};ln(cl,{bigint:()=>A0,boolean:()=>P0,date:()=>k0,number:()=>R0,string:()=>w0});function w0(e){return Vf(Ur,e)}function R0(e){return Qf(Vr,e)}function P0(e){return sp(Hr,e)}function A0(e){return cp(Kr,e)}function k0(e){return vp(gi,e)}le(lh());var T0=ll;var wC=Object.freeze(["hard_stop","use_alternative","scope_down","manual_only","stop_and_explain"]);var Si=64,RC="Rule config exceeds CC Safety Net's safe source limit.";var QU=Object.freeze({maxSources:64,concurrency:4,maxRequests:131,maxResponseBytes:67108864});var mh=[{id:"secret.basename.env",category:"Basename",label:".env",description:"Blocks exact .env files.",basename:".env"},{id:"secret.basename.npmrc",category:"Basename",label:".npmrc",description:"Blocks npm credential config files.",basename:".npmrc"},{id:"secret.basename.pypirc",category:"Basename",label:".pypirc",description:"Blocks Python package index credential files.",basename:".pypirc"},{id:"secret.basename.netrc",category:"Basename",label:".netrc",description:"Blocks machine login credential files.",basename:".netrc"},{id:"secret.basename.git-credentials",category:"Basename",label:".git-credentials",description:"Blocks Git credential storage files.",basename:".git-credentials"},{id:"secret.basename.id-rsa",category:"Basename",label:"id_rsa",description:"Blocks RSA private key basenames.",basename:"id_rsa"},{id:"secret.basename.id-ed25519",category:"Basename",label:"id_ed25519",description:"Blocks Ed25519 private key basenames.",basename:"id_ed25519"},{id:"secret.basename.id-ecdsa",category:"Basename",label:"id_ecdsa",description:"Blocks ECDSA private key basenames.",basename:"id_ecdsa"},{id:"secret.basename.credentials",category:"Basename",label:"credentials",description:"Blocks generic credentials file basenames.",basename:"credentials"}],ul={id:"secret.pattern.env-variant",category:"Pattern",label:".env.*",description:"Blocks environment-specific .env variants."},I0=[".bak",".backup",".copy",".disabled",".old",".orig",".save",".tmp"],O0=[{idSlug:"kube-config",label:"~/.kube/config",directoryParts:[".kube"],basename:"config"},{idSlug:"docker-config",label:"~/.docker/config.json",directoryParts:[".docker"],basename:"config.json"}],fh=[{id:"secret.home.ssh",category:"Home path",label:"~/.ssh",description:"Blocks home SSH configuration and key paths.",suffixParts:[".ssh"]},{id:"secret.home.aws",category:"Home path",label:"~/.aws",description:"Blocks home AWS credential and config paths.",suffixParts:[".aws"]},{id:"secret.home.gcp",category:"Home path",label:"~/.gcp",description:"Blocks home GCP credential paths.",suffixParts:[".gcp"]},{id:"secret.home.gcloud-config",category:"Home path",label:"~/.config/gcloud",description:"Blocks home Google Cloud SDK credential paths.",suffixParts:[".config","gcloud"]},{id:"secret.home.kube-config",category:"Home path",label:"~/.kube/config",description:"Blocks home Kubernetes config files.",suffixParts:[".kube","config"]},{id:"secret.home.docker-config",category:"Home path",label:"~/.docker/config.json",description:"Blocks home Docker credential config files.",suffixParts:[".docker","config.json"]},...O0.flatMap((e)=>I0.map((t)=>({id:["secret.home",e.idSlug,t.slice(1)].join("."),category:"Home path",label:[e.label,t].join(""),description:["Blocks home ",e.label,t," credential backup files."].join(""),suffixParts:[...e.directoryParts,[e.basename,t].join("")]}))),{id:"secret.home.gh-hosts",category:"Home path",label:"~/.config/gh/hosts.yml",description:"Blocks GitHub CLI host credential files.",suffixParts:[".config","gh","hosts.yml"]}];var dl=[{id:"secret.cli.claude-code",category:"Coding CLI credential",label:"Claude Code credentials",paths:["~/.claude/.credentials.json"]},{id:"secret.cli.claude-code.config",category:"Coding CLI config",label:"Claude Code config",paths:["~/.claude/settings.json","~/.claude/settings.local.json","~/.claude.json","<project>/.claude/settings.local.json","<project>/.mcp.json"]},{id:"secret.cli.antigravity",category:"Coding CLI config",label:"Antigravity CLI hook config",paths:["~/.gemini/config/hooks.json","~/.gemini/config/mcp_config.json"]},{id:"secret.cli.codex",category:"Coding CLI credential",label:"Codex credentials",paths:["~/.codex/auth.json","~/.codex/.credentials.json","~/.codex/secrets","~/.codex/.sandbox-secrets"]},{id:"secret.cli.codex.config",category:"Coding CLI config",label:"Codex config",paths:["~/.codex/config.toml","~/.codex/<name>.config.toml"]},{id:"secret.cli.gemini",category:"Coding CLI credential",label:"Gemini CLI credentials",paths:["~/.gemini/oauth_creds.json","~/.gemini/mcp-oauth-tokens.json","~/.gemini/a2a-oauth-tokens.json","~/.gemini/gemini-credentials.json"]},{id:"secret.cli.gemini.config",category:"Coding CLI config",label:"Gemini CLI config",paths:["~/.gemini/settings.json","~/.gemini/google_accounts.json","<project>/.gemini/settings.json","/Library/Application Support/GeminiCli/settings.json","/etc/gemini-cli/settings.json"]},{id:"secret.cli.copilot-cli",category:"Coding CLI credential",label:"GitHub Copilot CLI credentials",paths:["~/.copilot/config.json","~/.copilot/mcp-oauth-config","~/.copilot/mcp-secrets"]},{id:"secret.cli.copilot-cli.config",category:"Coding CLI config",label:"GitHub Copilot CLI config",paths:["~/.copilot/mcp-config.json"]},{id:"secret.cli.kimi-code",category:"Coding CLI credential",label:"Kimi Code credentials",paths:["~/.kimi-code/server.token","~/.kimi-code/credentials","~/.kimi/credentials","~/.kimi/mcp-oauth"]},{id:"secret.cli.kimi-code.config",category:"Coding CLI config",label:"Kimi Code config",paths:["~/.kimi-code/config.toml","~/.kimi-code/mcp.json","~/.kimi/config.toml","~/.kimi/config.json","~/.kimi/config.json.bak","~/.kimi/mcp.json","<project>/.kimi-code/mcp.json"]},{id:"secret.cli.opencode",category:"Coding CLI credential",label:"OpenCode credentials",paths:["~/.local/share/opencode/auth.json","~/.local/share/opencode/mcp-auth.json","~/.local/share/opencode/opencode.db"]},{id:"secret.cli.opencode.config",category:"Coding CLI config",label:"OpenCode config",paths:["~/.config/opencode/opencode.json","~/.config/opencode/opencode.jsonc","/Library/Application Support/opencode/opencode.json","/etc/opencode/opencode.json","<project>/opencode.json","<project>/opencode.jsonc"]},{id:"secret.cli.pi",category:"Coding CLI credential",label:"Pi credentials",paths:["~/.pi/agent/auth.json"]},{id:"secret.cli.pi.config",category:"Coding CLI config",label:"Pi config",paths:["~/.pi/agent/models.json"]},{id:"secret.cli.amp",category:"Coding CLI credential",label:"Amp Code credentials",paths:["~/.local/share/amp/secrets.json","~/.amp/oauth"]},{id:"secret.cli.amp.config",category:"Coding CLI config",label:"Amp Code config",paths:["~/.config/amp/settings.json","~/.config/amp/settings.jsonc","<project>/.amp/settings.json","<project>/.amp/settings.jsonc"]},{id:"secret.cli.cursor",category:"Coding CLI credential",label:"Cursor CLI credentials",paths:["~/.cursor/auth.json","~/.config/cursor/auth.json","~/.cursor/projects/<name>/mcp-auth.json"]},{id:"secret.cli.cursor.config",category:"Coding CLI config",label:"Cursor CLI config",paths:["~/.cursor/mcp.json","<project>/.cursor/mcp.json"]},{id:"secret.cli.grok-build",category:"Coding CLI credential",label:"Grok Build credentials",paths:["~/.grok/auth.json","~/.grok/mcp_credentials.json"]},{id:"secret.cli.grok-build.config",category:"Coding CLI config",label:"Grok Build config",paths:["~/.grok/config.toml","~/.grok/managed_config.toml","~/.grok/requirements.toml","<project>/.grok/config.toml","/etc/grok/managed_config.toml","/etc/grok/requirements.toml"]}],PC=[{prefix:"id_rsa",slug:"id-rsa",label:"id_rsa"},{prefix:"id_dsa",slug:"id-dsa",label:"id_dsa"},{prefix:"id_ed25519",slug:"id-ed25519",label:"id_ed25519"},{prefix:"id_ecdsa",slug:"id-ecdsa",label:"id_ecdsa"},{prefix:"credentials",slug:"credentials",label:"credentials"}],z0=[".bak",".backup",".copy",".disabled",".key",".old",".orig",".pem",".save",".tmp"],ph=PC.map((e)=>({id:`secret.variant.${e.slug}.separator`,category:"Variant",label:`${e.label}-* / ${e.label}_*`,description:`Blocks ${e.label} variants with dash or underscore suffixes.`,prefix:e.prefix})),gh=PC.flatMap((e)=>z0.map((t)=>({id:`secret.variant.${e.slug}.${t.slice(1)}`,category:"Variant",label:`${e.label}${t}`,description:`Blocks ${e.label}${t} private credential variants.`,prefix:e.prefix,suffix:t}))),xi={id:"secret.pattern.ssh-key-basename",category:"Pattern",label:"*_(rsa|dsa|ed25519|ecdsa)",description:"Blocks extensionless SSH private key-like basenames.",pattern:/^.*_(rsa|dsa|ed25519|ecdsa)$/},hh=["agilekeychain","asc","bek","cscfg","fve","gnucash","jks","keychain","kwallet","mdf","ovpn","p12","pcap","pem","pfx","pkcs12","psafe3","rdp","sdf","tblk","tpm"].map((e)=>({id:`secret.ext.${e}`,category:"Extension",label:`.${e}`,description:`Blocks files with the .${e} extension.`,extension:e})),yh=[{id:"secret.ext-pattern.key",category:"Extension pattern",label:".key / .keypair",description:"Blocks key and keypair extension patterns.",pattern:/^key(pair)?$/},{id:"secret.ext-pattern.keystore",category:"Extension pattern",label:".keystore / .keyring",description:"Blocks keystore and keyring extension patterns.",pattern:/^key(store|ring)$/},{id:"secret.ext-pattern.kdbx",category:"Extension pattern",label:".kdb / .kdbx",description:"Blocks KeePass database extension patterns.",pattern:/^kdbx?$/}],AC=[...mh,ul,...fh,...ph,...gh,xi,...hh,...yh,...dl].map((e)=>({id:e.id,category:e.category,label:e.label,...e.category==="Coding CLI config"?{defaultOff:!0}:{},..."paths"in e?{paths:e.paths}:{description:e.description}})),ml=new Set(dl.flatMap((e)=>e.category==="Coding CLI config"?[e.id]:[])),N0=AC.map((e)=>e.id),Ci=new Set(N0);var fB=D0(import.meta.url),kC,M0=Array(Si+1).fill("over-limit"),TC=/^[^/]+\/[^/]+$/,fl=`must be an integer between ${xl} and ${Cl}`,$0=["version","rules","overrides","transparent_wrappers"],L0=["version","safety","workflow","destructive_command_protection","secret_protection","audit"];function IC(e){if(!dt(e)||!Array.isArray(e.rules)||e.rules.length<=Si)return e;return{$schema:e.$schema,version:e.version,rules:M0,overrides:e.overrides,transparent_wrappers:e.transparent_wrappers}}function W0(){let e=dh,t=(w)=>{let T=e.superRefine(w);return T._zod.def.when=()=>!0,T},n=e.enum(wC),r=e.union([e.literal("off"),e.looseObject({reason:e.string({error:"required non-empty string"}).min(1,"required non-empty string").max(Qn,`must be at most ${Qn} characters`).describe("Replacement block reason"),intent:n.optional()})],{error:'must be "off" or an object'}).describe("Disable a rule or replace its block reason and intent."),o=e.string({error:"must be a rulebook source string"}).min(1,"must be a non-empty rulebook source string"),i=e.string({error:"must be a command string"}).regex(hn,"must match command pattern").describe("Command name such as 'git', 'docker', or 'rtk'."),s=e.looseObject({$schema:e.unknown().optional().describe("JSON Schema reference for IDE support"),version:e.literal(1).describe("Schema version (must be 1)"),rules:e.array(o,{error:"must be an array of rulebook source strings"}).max(Si,RC).default([]).describe("Rulebook source strings such as project-rules or owner/repo#main/team-rules"),overrides:e.record(e.string().meta({pattern:TC.source}),r).default({}).describe("Rule overrides by id"),transparent_wrappers:e.array(i,{error:"must be an array of command strings"}).default([]).describe("Commands that transparently execute a visible protected child command")}),a=(w,T)=>{if(!dt(w))return;if(Array.isArray(w.rules)&&w.rules.length<=Si){let C=new Set;w.rules.forEach((E,O)=>{if(typeof E!=="string"||E==="")return;if(E.trim()===""){T.addIssue({code:"custom",message:"must be a non-empty rulebook source string",path:["rules",O]});return}let Z=Vh(E);if(Z){T.addIssue({code:"custom",message:Z,path:["rules",O]});return}if(C.has(E)){T.addIssue({code:"custom",message:`duplicate rulebook source "${E}"`,path:["rules",O]});return}C.add(E)})}if(dt(w.overrides))for(let C of Object.keys(w.overrides)){if(TC.test(C))continue;T.addIssue({code:"custom",message:"must use <rulebook-name>/<rule-name>",path:["overrides",C]})}if(!Array.isArray(w.transparent_wrappers))return;let V=new Set;w.transparent_wrappers.forEach((C,E)=>{if(typeof C!=="string"||!hn.test(C))return;if(V.has(C)){T.addIssue({code:"custom",message:`duplicate command "${C}"`,path:["transparent_wrappers",E]});return}if(Mv(C)){T.addIssue({code:"custom",message:`reserved command "${C}" cannot be a wrapper`,path:["transparent_wrappers",E]});return}V.add(C)})},c=e.preprocess(IC,s.check(e.superRefine(a))),l=e.preprocess(IC,s.check(t(a))),u=e.strictObject({fail_closed:e.boolean().optional(),paranoid_rm:e.boolean().optional(),paranoid_interpreters:e.boolean().optional()}),d=(w,T)=>e.intersection(e.record(e.string().refine((V)=>w.has(V),{error:(V)=>`unknown ${T} rule id "${String(V.input)}"`}),e.unknown()),e.record(e.string(),e.enum(["on","off"]))),m=(w)=>e.array(e.string({error:"must be a non-empty path string"}),{error:"must be an array of paths"}).check(t((T,V)=>{if(!Array.isArray(T))return;let C=un();T.forEach((E,O)=>{if(typeof E!=="string")return;let Z=w(E,C);if(Z)V.addIssue({code:"custom",message:Z,path:[O]})})})),f=e.strictObject({version:e.literal(1),safety:e.strictObject({level:e.enum(["standard","strict","paranoid"]).optional(),overrides:u.optional()}).optional(),workflow:e.strictObject({worktree_mode:e.boolean().optional()}).optional(),destructive_command_protection:e.strictObject({enabled:e.boolean().optional(),overrides:d(ao,"destructive command").optional(),allow_paths:m(Ds).optional()}).optional(),secret_protection:e.strictObject({enabled:e.boolean().optional(),overrides:d(Ci,"secret protection").optional(),deny_paths:m(Ms).optional(),allow_paths:m($s).optional()}).optional(),audit:e.strictObject({retention_days:e.number({error:fl}).int(fl).min(xl,fl).max(Cl,fl).optional().describe("Days of audit log history to keep before the sweep deletes it")}).optional()}),p=(w,T)=>{if(!Array.isArray(w))return;let V=new Set;w.forEach((C,E)=>{let O=dt(C)?C.name:void 0;if(typeof O!=="string")return;if(V.has(O.toLowerCase())){T.addIssue({code:"custom",message:`duplicate rule name "${O}"`,path:[E,"name"]});return}V.add(O.toLowerCase())})},h=(w)=>{let T=(E,O)=>w==="legacy"?E:O,V=T("must match pattern (letters, numbers, hyphens, underscores)","must match command pattern"),C=`required non-empty string up to ${Qn} characters`;return e.looseObject({name:e.string({error:"required string"}).regex(mn,T("must match pattern (letters, numbers, hyphens, underscores; max 64 chars)","must match rule name pattern")),command:e.string({error:T("required string","required string matching command pattern")}).regex(hn,T(V,"required string matching command pattern")),subcommand:e.string({error:T("must be a string if provided","must match command pattern")}).regex(hn,V).optional(),block_args:e.array(e.string({error:T("must be a string","must be a non-empty string")}).refine((E)=>E!=="",{error:T("must not be empty","must be a non-empty string")}),{error:T("required array","required non-empty array")}).refine((E)=>E.length>0,{error:T("must have at least one element","required non-empty array")}),reason:e.string({error:T("required string",C)}).refine((E)=>E!=="",{error:T("must not be empty",C)}).refine((E)=>E.length<=Qn,{error:T(`must be at most ${Qn} characters`,C)}),intent:n.optional()},{error:"must be an object"})},y=(w)=>e.array(h(w),{error:w==="legacy"?"must be an array":"required array"}).check(t(p)),b=e.looseObject({version:e.literal(1),rules:y("legacy").optional()}),R="required string matching rule name pattern",A=e.looseObject({command:e.string({error:"required non-empty string"}).refine((w)=>w.trim()!=="",{error:"required non-empty string"}),expect:e.enum(["blocked","allowed"]),rule:e.string({error:"must be a string if provided"}).optional()},{error:"must be an object"}).check(t((w,T)=>{if(!dt(w))return;if(w.expect!=="blocked"||typeof w.rule==="string")return;T.addIssue({code:"custom",message:"required string for blocked fixtures",path:["rule"]})})),x=(w,T)=>{if(!dt(w))return;let V=new Set(bh(w));if(Array.isArray(w.tests)){let E=new Set(w.tests.flatMap((O)=>dt(O)&&O.expect==="blocked"&&typeof O.rule==="string"?[O.rule]:[]));for(let O of E){if(V.has(O))continue;T.addIssue({code:"custom",message:`blocked fixture references unknown rule "${O}"`,path:["tests"]})}}if(!Array.isArray(w.allowed_commands)||!Array.isArray(w.rules))return;let C=new Set(w.allowed_commands.filter((E)=>typeof E==="string"));w.rules.forEach((E,O)=>{let Z=dt(E)?E.command:void 0;if(typeof Z!=="string"||C.has(Z))return;T.addIssue({code:"custom",message:`"${Z}" must be listed in allowed_commands`,path:["rules",O,"command"]})})},P=(w)=>e.looseObject({name:e.string({error:"required string matching rule name pattern"}).regex(mn,"required string matching rule name pattern"),version:e.string({error:"required non-empty string"}).refine((T)=>T!=="",{error:"required non-empty string"}),allowed_commands:e.array(e.string({error:"must match command pattern"}).regex(hn,"must match command pattern"),{error:"required array"}).check(t((T,V)=>{if(!Array.isArray(T))return;let C=new Set;T.forEach((E,O)=>{if(typeof E!=="string"||!hn.test(E))return;if(C.has(E)){V.addIssue({code:"custom",message:`duplicate command "${E}"`,path:[O]});return}C.add(E)})})),rules:w,tests:e.array(A,{error:"must be an array if provided"}).optional()}).check(t(x)),L=P(y("rulebook")),k=e.string({error:"must be a non-empty string"}).refine((w)=>w!=="",{error:"must be a non-empty string"}),U="must be a non-empty array of unique non-empty strings",ie="required non-empty array of non-empty strings",se=e.array(k,{error:"must be a non-empty array of unique non-empty strings"}).refine((w)=>w.length>0,{error:"must be a non-empty array of unique non-empty strings"}).refine((w)=>new Set(w).size===w.length,{error:"must not contain duplicate values"}),J=e.looseObject({command_path:e.array(k,{error:"required non-empty array of non-empty strings"}).refine((w)=>w.length>0,{error:"required non-empty array of non-empty strings"}),any_args:se.optional(),exclude_args:se.optional()},{error:"required object"}),B=P(e.array(h("rulebook").omit({subcommand:!0,block_args:!0}).extend({match:J,subcommand:e.never({error:"not supported in rulebook_version 2"}).optional(),block_args:e.never({error:"not supported in rulebook_version 2"}).optional()}),{error:"required array"}).check(t(p)));return{RulesConfigSchema:c,RulesConfigDiagnosticSchema:l,RuleOverrideSchema:r,UserPolicySchema:f,LegacyConfigSchema:b,RulebookSchema:L,RulebookV2Schema:B}}function Ei(){return kC??=W0(),kC}function OC(){return Ei().RulesConfigSchema}function F0(){return Ei().UserPolicySchema}function zC(){return Ei().RulebookSchema}function NC(){return Ei().RulebookV2Schema}function bh(e){let t=dt(e)?e.rules:void 0;return(Array.isArray(t)?t:[]).flatMap((n)=>{let r=dt(n)?n.name:void 0;return typeof r==="string"?[r]:[]})}function DC(e){let t=Ei().RulesConfigDiagnosticSchema.safeParse(e);if(t.success)return{errors:[],sources:new Set(t.data.rules)};return{errors:pl(LC(t.error.issues,$0)),sources:U0(e,t.error.issues)}}function MC(e){let t=F0().safeParse(e);if(t.success)return[];return pl(LC(t.error.issues,L0)," ")}function pl(e,t=": ",n=" "){return[...new Set(e.flatMap((r)=>$C(r,t,n,[])))]}function $C(e,t,n,r){let o=[...r,...e.path],i=j0(o);if(e.code==="unrecognized_keys")return e.keys.map((s)=>`${i?`${i}.`:""}unknown field "${s}"`);if(e.code==="invalid_key")return e.issues.map((s)=>s.message);if(e.code==="invalid_union"){let s=e.errors.flat().filter((a)=>a.path.length>0);if(s.length>0)return s.flatMap((a)=>$C(a,t,n,o))}if(o.length===0)return[e.code==="invalid_type"?"Config must be an object":e.message];if(o.length===1&&(e.code==="too_big"||e.code==="too_small")&&e.origin==="array")return[e.message];return[`${i}${o.length===1?n:t}${G0(e)}`]}function G0(e){if(e.code==="invalid_value")return`must be ${Z0(e.values)}`;if(e.code!=="invalid_type"||!e.message.startsWith("Invalid input:"))return e.message;if(e.expected==="object"||e.expected==="record")return"must be an object if provided";return e.expected==="boolean"?"must be a boolean":e.message}function Z0(e){if(e.length>3)return`one of ${e.join(", ")}`;let t=e.map((n)=>typeof n==="string"?`"${n}"`:String(n));if(t.length<2)return`${t[0]}`;return`${t.slice(0,-1).join(", ")}${t.length>2?",":""} or ${t.at(-1)}`}function j0(e){return e.map((t,n)=>{if(typeof t==="number")return`[${t}]`;return n===0?String(t):`.${String(t)}`}).join("")}function LC(e,t){let n=e.map((i)=>i.path[1]),r=[...new Set(n.filter((i)=>typeof i==="string"))],o=(i,s)=>[i.path.length===0?-1:t.indexOf(String(i.path[0])),typeof s==="number"?s:r.indexOf(String(s)),i.code==="custom"?0:1];return e.map((i,s)=>({issue:i,rank:o(i,n[s])})).sort((i,s)=>i.rank[0]-s.rank[0]||i.rank[1]-s.rank[1]||i.rank[2]-s.rank[2]).map((i)=>i.issue)}function U0(e,t){let n=dt(e)?e.rules:void 0;if(!Array.isArray(n))return new Set;if(t.some((o)=>o.path.length===1&&o.path[0]==="rules"))return new Set;let r=new Set(t.filter((o)=>o.path[0]==="rules"&&typeof o.path[1]==="number").map((o)=>o.path[1]));return new Set(n.filter((o,i)=>typeof o==="string"&&!r.has(i)))}function dt(e){return!!e&&typeof e==="object"&&!Array.isArray(e)}var WC={standard:0,strict:1,paranoid:2};function ZC(e,t){return{policy:{version:1,safety:{level:t.safety?.level??e.safety.level,overrides:{...e.safety.overrides,...t.safety?.overrides}},workflow:{worktree_mode:t.workflow?.worktree_mode??e.workflow.worktree_mode},destructive_command_protection:{enabled:t.destructive_command_protection?.enabled??e.destructive_command_protection.enabled,overrides:{...e.destructive_command_protection.overrides,...t.destructive_command_protection?.overrides},allow_paths:vh(e.destructive_command_protection.allow_paths,t.destructive_command_protection?.allow_paths)},secret_protection:{enabled:t.secret_protection?.enabled??e.secret_protection.enabled,overrides:{...e.secret_protection.overrides,...t.secret_protection?.overrides},deny_paths:vh(e.secret_protection.deny_paths,t.secret_protection?.deny_paths),allow_paths:vh(e.secret_protection.allow_paths,t.secret_protection?.allow_paths)},audit:e.audit},weakenings:B0(e,t)}}function vh(e,t){return[...new Set([...e,...t??[]])]}function B0(e,t){let n=t.safety?.level,r=ca[e.safety.level];return[...n&&WC[n]<WC[e.safety.level]?[`project policy lowers level: ${e.safety.level} -> ${n}`]:[],...Wo.flatMap((o)=>t.safety?.overrides?.[o]===!1&&(e.safety.overrides[o]??r[o])?[`project policy disables ${o}`]:[]),...t.workflow?.worktree_mode===!0&&!e.workflow.worktree_mode?["project policy enables worktree mode relaxations"]:[],...t.destructive_command_protection?.enabled===!1&&e.destructive_command_protection.enabled?["project policy disables destructive command protection"]:[],...t.secret_protection?.enabled===!1&&e.secret_protection.enabled?["project policy disables secret protection"]:[],...FC(t.destructive_command_protection?.overrides,(o)=>e.destructive_command_protection.enabled&&e.destructive_command_protection.overrides[o]!=="off"),...FC(t.secret_protection?.overrides,(o)=>e.secret_protection.enabled&&(e.secret_protection.overrides[o]==="on"?!0:e.secret_protection.overrides[o]!=="off"&&!ml.has(o))),...e.destructive_command_protection.enabled?GC(e.destructive_command_protection.allow_paths,t.destructive_command_protection?.allow_paths).map((o)=>`project policy adds destructive allow path: ${o}`):[],...e.secret_protection.enabled?GC(e.secret_protection.allow_paths,t.secret_protection?.allow_paths).map((o)=>`project policy adds secret allow path: ${o}`):[]]}function FC(e,t){return Object.entries(e??{}).flatMap(([n,r])=>r==="off"&&t(n)?[`project policy disables rule ${n}`]:[])}function GC(e,t){return(t??[]).filter((n)=>!e.includes(n))}function V0(e){return DC(e)}function _h(e){try{let t=Mi(H0(e));if(t===null)return{config:null,errors:[]};if(!t.trim())return{config:null,errors:["Config file is empty"]};let n=JSON.parse(t),r=V0(n);if(r.errors.length>0)return{config:null,errors:r.errors};let o=OC().parse(n);return{config:{version:1,rules:o.rules??[],overrides:o.overrides??{},transparent_wrappers:o.transparent_wrappers??[]},errors:[]}}catch(t){if(t instanceof pe)return{config:null,errors:[t.message]};let n=t instanceof Error?t.message:String(t);return{config:null,errors:[t instanceof SyntaxError?"Invalid JSON":n]}}}function H0(e){return typeof e==="string"?Wh(e):e}var xh=new Set(["standard","strict","paranoid"]),HC={version:1,safety:{level:"standard",overrides:{}},workflow:{worktree_mode:!1},destructive_command_protection:{enabled:!0,overrides:{},allow_paths:[]},secret_protection:{enabled:!0,overrides:{},deny_paths:[],allow_paths:[]},audit:{retention_days:Oi}};function Ch(e){return J0(Y0(Vn(e)),pn)}function KC(e={}){let t=tM(Ch(e)),n=Xr(e.cwd),r=QC(n),o=Q0(r.parsed),i=Object.keys(o.policy).length>0?ZC(t.gui??HC,o.policy):void 0,s=[...t.errors,...r.errors,...o.diagnostics],a=(t.fallback==="defaults"&&i?"salvaged":t.fallback)??(t.gui?void 0:r.fallback)??(s.length>0?"salvaged":void 0),c=o.policy.safety?.level?"project":t.levelPresent?"user":"default";return{...i?Sh(i.policy):t.policy,errors:s,...a?{fallback:a}:{},...r.exists?{policyScopes:{levelScope:c,weakenings:i?.weakenings??[]}}:{}}}var X0="project policy audit settings are ignored; audit is user scope only";function Q0(e){if(!ge(e))return{policy:{},diagnostics:[]};let t=ge(e.safety)?e.safety:{},n=ge(e.workflow)?e.workflow:{},r=ge(e.destructive_command_protection)?e.destructive_command_protection:{},o=ge(e.secret_protection)?e.secret_protection:{},i={...xh.has(t.level)?{level:t.level}:{},...ge(t.overrides)?jC({overrides:qC(t.overrides,Wo)}):{}},s={...typeof r.enabled==="boolean"?{enabled:r.enabled}:{},...r.overrides!==void 0?{overrides:gl(r.overrides,ao)}:{},...r.allow_paths!==void 0?{allow_paths:JC(r.allow_paths)}:{}},a={...typeof o.enabled==="boolean"?{enabled:o.enabled}:{},...o.overrides!==void 0?{overrides:gl(o.overrides,Ci)}:{},...o.deny_paths!==void 0?{deny_paths:YC(o.deny_paths)}:{},...o.allow_paths!==void 0?{allow_paths:XC(o.allow_paths)}:{}};return{policy:jC({safety:i,workflow:typeof n.worktree_mode==="boolean"?{worktree_mode:n.worktree_mode}:{},destructive_command_protection:s,secret_protection:a}),diagnostics:e.audit===void 0?[]:[X0]}}function qC(e,t){return Object.fromEntries(t.flatMap((n)=>typeof e[n]==="boolean"?[[n,e[n]]]:[]))}function jC(e){return Object.fromEntries(Object.entries(e).flatMap((t)=>Object.keys(t[1]).length>0?[t]:[]))}function UC(e){if(!ge(e))return eM();let t=ge(e.safety)?e.safety:{},n=ge(t.overrides)?t.overrides:{},r=ge(e.workflow)?e.workflow:{},o=ge(e.destructive_command_protection)?e.destructive_command_protection:{},i=ge(e.secret_protection)?e.secret_protection:{};return{version:1,safety:{level:xh.has(t.level)?t.level:"standard",overrides:qC(n,Wo)},workflow:{worktree_mode:typeof r.worktree_mode==="boolean"?r.worktree_mode:!1},destructive_command_protection:{enabled:typeof o.enabled==="boolean"?o.enabled:!0,overrides:gl(o.overrides,ao),allow_paths:JC(o.allow_paths)},secret_protection:{enabled:typeof i.enabled==="boolean"?i.enabled:!0,overrides:gl(i.overrides,Ci),deny_paths:YC(i.deny_paths),allow_paths:XC(i.allow_paths)},audit:{retention_days:zi(ge(e.audit)?e.audit.retention_days:void 0)}}}function gl(e,t){if(!ge(e))return{};return Object.fromEntries(Object.entries(e).flatMap(([n,r])=>t.has(n)&&(r==="on"||r==="off")?[[n,r]]:[]))}function YC(e){if(!Array.isArray(e))return[];let t=un();return e.filter((n)=>Ms(n,t)===null)}function JC(e){if(!Array.isArray(e))return[];let t=un();return e.filter((n)=>Ds(n,t)===null)}function XC(e){if(!Array.isArray(e))return[];let t=un();return e.filter((n)=>$s(n,t)===null)}function ge(e){return!!e&&typeof e==="object"&&!Array.isArray(e)}function eM(){return structuredClone(HC)}function QC(e){if(!K0(e))return{exists:!1,errors:[]};try{let t=q0(e,"utf-8");if(!t.trim())return{exists:!0,errors:[`${e}: Config file is empty`],fallback:"defaults"};let n=JSON.parse(t),r=MC(n);if(r.length===0)return{exists:!0,parsed:n,errors:[]};return{exists:!0,parsed:n,errors:r.map((o)=>`${e}: ${o}`),fallback:ge(n)?"salvaged":"defaults"}}catch(t){let n=t instanceof Error?t.message:String(t);return{exists:!0,errors:[`${e}: ${t instanceof SyntaxError?"Invalid JSON":n}`],fallback:"defaults"}}}function tM(e){let t=QC(e);if(!t.exists){let r=globalThis.__CC_SAFETY_NET_EMBEDDED_POLICY__;if(!ge(r))return{policy:VC(),errors:[]};let o=UC(r);return{policy:Sh(o),gui:o,errors:[],levelPresent:BC(r)}}if(t.parsed===void 0)return{policy:VC(),errors:t.errors,...t.fallback?{fallback:t.fallback}:{}};let n=UC(t.parsed);return{policy:Sh(n),gui:n,errors:t.errors,...t.fallback?{fallback:t.fallback}:{},levelPresent:BC(t.parsed)}}function BC(e){let t=ge(e)&&ge(e.safety)?e.safety:{};return xh.has(t.level)}function eE(e){let t=Object.entries(e),n=new Set(t.flatMap(([r,o])=>o==="on"?[r]:[]));return[...new Set([...[...ml].filter((r)=>!n.has(r)),...t.flatMap(([r,o])=>o==="off"?[r]:[])])]}function VC(){return{safety:{},worktreeMode:!1,destructiveCommandProtectionEnabled:!0,destructiveCommandRuleOverrides:{},destructiveCommandAllowPaths:[],secretProtection:{enabled:!0,disabledRules:eE({}),denyPaths:[],allowPaths:[]}}}function Sh(e){return{safety:nM(e.safety),worktreeMode:e.workflow.worktree_mode,destructiveCommandProtectionEnabled:e.destructive_command_protection.enabled,destructiveCommandRuleOverrides:e.destructive_command_protection.overrides,destructiveCommandAllowPaths:e.destructive_command_protection.allow_paths,secretProtection:{enabled:e.secret_protection.enabled,disabledRules:eE(e.secret_protection.overrides),denyPaths:e.secret_protection.deny_paths,allowPaths:e.secret_protection.allow_paths}}}function nM(e){let t={...e.overrides.fail_closed!==void 0?{failClosed:e.overrides.fail_closed}:{},...e.overrides.paranoid_rm!==void 0?{paranoidRm:e.overrides.paranoid_rm}:{},...e.overrides.paranoid_interpreters!==void 0?{paranoidInterpreters:e.overrides.paranoid_interpreters}:{}};return{level:e.level,...Object.keys(t).length>0?{overrides:t}:{}}}var oE="This path contains the protected policy config and you must not modify or delete it.",rM=new Set(["[","cat","file","grep","head","jq","less","ls","more","rg","sed","stat","tail","test","wc"]);function iE(e){let t=Ot(Qe()),n=lM(e.invocation.context,t);if(e.invocation.route.kind==="patch")return tE(e.paths,!1,e.invocation.context.executionCwd,n,t);let r=xe(e,"input-candidate");if(e.invocation.route.kind==="command")return r?nE(r.shell,e.invocation.context.executionCwd,n,t):null;if(e.invocation.route.kind==="unknown"&&r){let o=nE(r.shell,e.invocation.context.executionCwd,n,t);if(o)return o}return tE(e.paths,e.invocation.route.kind==="grep"||e.invocation.route.kind==="glob"||Ts(e.invocation.toolName),e.invocation.context.executionCwd,n,t)}function tE(e,t,n,r,o){if(t)return null;let i=e.find((s)=>wi(s,n,r,o));return i?{target:i}:null}function nE(e,t,n,r){let o=sr(e,t,r,{findSegmentTarget:(i,s)=>oM(i,s,n,r)?.target??null,isRedirectionTarget:(i,s)=>wi(i,s.cwd,n,r),findMalformedTarget:(i)=>cM(i,t,n,r)?.target??null,normalizeCwd:ye});return o?{target:o}:null}function oM(e,t,n,r){if(So(e))return null;let o=r.environment,i=Vt([...e],o),s=F(i[0]??"").toLowerCase(),a=i.slice(1);if(s==="rm"&&iM(a)){let c=sM(a).find((l)=>rE(Le(l,t.variables),t.cwd,n,r));if(c)return{target:c}}if(s==="find"){if(Bs(i,1)||$u(i,o)){let l=(Us(j(i))??j(["."])).find((u)=>{let d=Le(u.text,t.variables);return wi(d,t.cwd,n,r)||rE(d,t.cwd,n,r)})?.text;if(l)return{target:l}}}if(s==="mv"){let c=Is(a).sources.find((l)=>uM(Le(l,t.variables),t.cwd,n,r));if(c)return{target:c}}if(aM(e,o))return null;for(let c of[...e,...i])for(let l of sE(c))if(wi(Le(l,t.variables),t.cwd,n,r))return{target:l};return null}function iM(e){return e.some((t)=>t==="--recursive"||t.startsWith("-")&&!t.startsWith("--")&&/[rR]/.test(t.slice(1)))}function sM(e){let t=e.indexOf("--");if(t!==-1)return[...e.slice(0,t).filter((n)=>!n.startsWith("-")),...e.slice(t+1)];return e.filter((n)=>!n.startsWith("-"))}function aM(e,t){let n=Vt([...e],t);if(n.length===0)return!1;let r=F(n[0]??"").toLowerCase();if(!rM.has(r))return!1;if(r!=="sed")return!0;return!n.slice(1).some((o)=>o.startsWith("-i")||o==="--in-place"||o.startsWith("--in-place="))}function cM(e,t,n,r){for(let o of e.split(/\s+/))for(let i of sE(o))if(wi(i,t,n,r))return{target:i};return null}function sE(e){let t=e.trim().replace(/^['"]|['"]$/g,""),n=t.indexOf("=");return n===-1||n===t.length-1?[t]:[t,t.slice(n+1)]}function lM(e,t){let n=(s)=>Ri(ye(s,e.executionCwd,t)),r=n(Ch()),o=[n(Xr(e.executionCwd)),n(Xr(e.configCwd))],i=new Set(o.map((s)=>hl(s)));for(let s=hl(r);;s=hl(s))if(i.add(s),hl(s)===s)break;return{files:new Set([r,...o]),directoriesAndAncestors:i}}function wi(e,t,n,r){let o=uv(e,t,r,(i)=>Ri(i)===pn);return o!==null&&n.files.has(Ri(o))}function rE(e,t,n,r){return n.directoriesAndAncestors.has(Ri(ye(e,t,r)))}function uM(e,t,n,r){let o=Ri(ye(e,t,r));return n.files.has(o)||n.directoriesAndAncestors.has(o)}function Ri(e){return process.platform==="win32"?e.toLowerCase():e}import{homedir as wh}from"os";import{isAbsolute as yl,posix as dM,resolve as vl,win32 as mM}from"path";import{fileURLToPath as fM}from"url";var gE="Access to a sensitive path is not allowed.",hE=new Set(["echo","printf"]),pM=new Set(["find"]),gM=new Set(["-exec","-execdir"]),hM=new Set([";","+"]),yM=new Set(["-delete","-exec","-execdir","-fls","-fprint","-fprint0","-fprintf","-ok","-okdir"]),bM=new Set(["-name","-iname","-path","-ipath","-wholename","-iwholename","-samefile"]),vM=new Set(["python","python2","python3","node","deno","bun","ruby","perl","php","rscript","osascript","bash","sh","zsh","dash","ksh"]),_M=new Set(["node","bun"]),SM=new Set(["bun","child_process","deno","dotenv","fs","subprocess"]),xM=new Set(["append","awk","base64","cat","chmod","chown","connect","copy","cp","database","dd","eval","exec","fetch","file","function","grep","head","include","load","move","mv","open","popen","read","remove","rename","require","rg","rm","sed","shell","source","spawn","strings","system","tail","tar","truncate","unlink","write","xxd","zip"]),yE=new Set(["-c","-e","-r","-E","--eval","--exec"]),CM=new Map([["c",new Set(["bash","sh","zsh","dash","ksh","python"])],["e",new Set(["node","deno","bun","ruby","perl","rscript","osascript"])],["E",new Set(["perl"])],["r",new Set(["php"])]]),EM=new Set(["grep","rg"]),aE="f",cE="file",wM="files",RM=new Set(["e","f"]),PM=new Set(["regexp","file"]),AM=new Set(["e","f","A","B","C","m"]),kM=new Set(["regexp","file","after-context","before-context","context","max-count"]),TM=new Set(["|","|&"]),Eh="__CC_SAFETY_NET_PIPE_INPUT__",bE=new Set(["bash","sh","zsh","dash","ksh"]),IM=new Map([["bash",new Set(["-O"])],["sh",new Set(["-O"])],["zsh",new Set(["-o"])],["dash",new Set(["-o"])],["ksh",new Set(["-o"])],["python",new Set(["-W","-X"])],["node",new Set(["-r","--require","--loader","--import","--input-type"])]]);function lE(e,t,n,r,o){let i=Qr();for(let s of e){if(y$(s,t,n?.denyPaths??[],r,i))return{target:s,ruleId:"secret.deny-path"};if(o&&!o.has(s))continue;let a=g$(s,t,n,i);if(a){if(!a.startsWith("secret.cli.")&&b$(s,t,n?.allowPaths??[],r,i))continue;return{target:s,ruleId:a}}}return null}function vE(e,t,n={}){let r=uE(e),o=lE(r,e.invocation.context.executionCwd,t,e.invocation.context.configCwd),i=o?.ruleId!=="secret.deny-path"&&n.strict===!1?uE(e,{refineJavaScriptInlineData:!0}):r,s=i.length===r.length?o:lE(r,e.invocation.context.executionCwd,t,e.invocation.context.configCwd,new Set(i));if(s?.ruleId!=="secret.deny-path"&&n.strict===!1&&OM(e))return null;return s}function OM(e){if(e.invocation.route.kind!=="command")return!1;let t=xe(e,"input-candidate")??xe(e,"declared-command");if(!t)return!1;if(t.program.nodes.some((s)=>s.kind==="command"&&s.nested.length>0))return!1;let n=[];for(let s of t.shell.entries){if(s.kind==="operator"&&s.boundary)return!1;if(s.kind==="redirection")return!1;if(s.kind!=="operator")n.push(yt(s.text))}let r=qr(n);if(r.length===0)return!1;let o=Zn(r[0]??"").toLowerCase(),i=r.slice(1);if(o==="ls"||o==="stat")return!0;if(o==="test")return i.length===2&&(i[0]==="-e"||i[0]==="-f");if(o!=="find")return!1;return!i.some((s)=>yM.has(s))}function uE(e,t={}){if(e.invocation.route.kind==="command"){let r=xe(e,"input-candidate");return r?ki(r.shell,e.store,t):[]}if(e.invocation.route.kind!=="unknown")return[...e.paths];let n=xe(e,"input-candidate");return[...n?ki(n.shell,e.store,t):[],...e.paths]}function ki(e,t,n){if(e.status==="structural-limit")throw new ht;if(e.status==="unclosed-quote")return[];if(e.status==="invalid")throw Error("Unable to parse command for secret protection");let r=[...e.assignmentFallbacks,...JM(yt(e.source),t,n)],o=[],i=null;for(let s of e.entries){if(s.kind==="operator"){if(!s.boundary)continue;if(o.length>0){if(r.push(...bl(o,t,n)),i!==null)r.push(...dE(i,o,t,n));i=TM.has(s.operator)?o:null,o=[]}else i=null;continue}if(s.kind==="redirection"){let a=s.target?yt(s.target):void 0;if(a&&s.targetOrder==="legacy-segment")o.push(a);else if(a)r.push(a);continue}o.push(yt(s.text))}if(o.length>0){if(r.push(...bl(o,t,n)),i!==null)r.push(...dE(i,o,t,n))}return r}function bl(e,t,n){let r=GM(e),o=qr(e);if(o.length===0)return r;let i=o[0]??"",s=Zn(i).toLowerCase(),a=o.slice(1),c=zM(i,s,a);if(c)return[...r,...c];if(hE.has(s))return r;if(EM.has(s))return[...r,...i$(a)];if(pM.has(s))return[...r,...ZM(a,t,n)];if(We.has(s))return[...r,...a.flatMap((l)=>mE("awk",l)),...a.flatMap((l)=>UM(l,t,n)),...a.flatMap(BM)];if(xE(s)){if(bE.has(s)){let l=av(s,a);if(l!==null&&t.getShellSyntax(l).status==="structural-limit")throw new ht}return[...r,...jM(s,a,n)]}return[...r,...a.flatMap((l)=>mE(s,l))]}function zM(e,t,n){let r=da(t,n);if(r===null||n[r]!=="explain")return null;let o=[e,...n.slice(0,r)],i=n.slice(r+1);for(let s=0;s<i.length;s++){let a=i[s];if(a==="--json"||a==="--help"||a==="-h")continue;if(a==="--cwd"){let c=i[s+1];if(c&&!c.startsWith("--"))o.push(c);s++;continue}return o}return o}function dE(e,t,n,r){if(LM(t,n,r))return NM(e);let o=WM(t);if(o===null)return[];return DM(e).flatMap((i)=>bE.has(o)?ki(n.getShellSyntax(i),n,r):EE(i))}function NM(e){let t=qr(e);if(t.length===0)return[];let n=Zn(t[0]??"").toLowerCase();if(!hE.has(n))return[];return t.slice(1)}function DM(e){let t=qr(e);if(t.length===0)return[];let n=Zn(t[0]??"").toLowerCase(),r=t.slice(1);if(n==="echo"){let o=r.findIndex((i)=>!/^-[neE]+$/.test(i));return[(o===-1?[]:r.slice(o)).join(" ")]}if(n==="printf")return MM(r);return[]}function MM(e){let t=e[0];if(t===void 0)return[];let n=(t.match(/%%|%[bqs]/g)??[]).filter((o)=>o!=="%%").length;if(n===0||e.length===1)return[_E(t)];let r=e.slice(1);return Array.from({length:Math.ceil(r.length/n)},(o,i)=>$M(t,r.slice(i*n,(i+1)*n)))}function $M(e,t){let n=0;return _E(e.replace(/%%|%[bqs]/g,(r)=>{if(r==="%%")return"%";let o=t[n]??"";return n++,o}))}function _E(e){return e.replace(/\\n/g,`
|
|
99
|
+
`).replace(/\\t/g,"\t").replace(/\\r/g,"\r")}function LM(e,t,n){let r=qr(e);if(r.length===0||Zn(r[0]??"").toLowerCase()!=="xargs")return!1;let o=Rn(r),i=r.slice(o.childStart);if(i.length===0)return!1;if(o.replacementToken==="")return!1;let s=o.replacementToken,a=s===null?[...i,Eh]:i.map((c)=>c.split(s).join(Eh));return bl(a,t,n).some((c)=>c.includes(Eh))}function WM(e){let t=qr(e);if(t.length===0)return null;let n=Zn(t[0]??"").toLowerCase();if(!xE(n))return null;return FM(n,t.slice(1))?n:null}function FM(e,t){let n=SE(e);for(let r=0;r<t.length;r++){let o=t[r];if(o===void 0)break;if(yE.has(o)||CE(e,o)||/^--(?:eval|exec)=/.test(o))return!1;if(o==="-")return!0;if(o.startsWith("-")){if(n==="python"&&o==="-m")return!1;if(IM.get(n)?.has(o))r++;continue}return!1}return!0}function SE(e){return/^python\d/.test(e)?"python":e}function GM(e){let t=[];for(let n of e){if(PE(n))continue;let r=/^[A-Za-z_][A-Za-z0-9_]*=(.*)$/.exec(n);if(r===null)break;if(r[1]!==void 0&&r[1]!=="")t.push(r[1])}return t}function mE(e,t){if(t==="--")return[];let n=[],r=t.indexOf("=");if(r>0&&r<t.length-1)n.push(t.slice(r+1));if(t.startsWith("-"))return n;if(e==="tar"&&/\.(?:tar|tgz|tar\.gz|zip)$/i.test(t))return n;if(e==="zip"&&/\.zip$/i.test(t))return n;return n.push(t),n}function ZM(e,t,n){let r=e.findIndex((i)=>i.startsWith("-")||i==="("||i==="!"||i===";"),o=[...e.slice(0,r===-1?e.length:r)];for(let i=0;i<e.length;i++){if(!gM.has(e[i]??""))continue;let s=e.slice(i+1),a=s.findIndex((u)=>hM.has(u)),c=a===-1?s:s.slice(0,a),l=bl(c,t,n);if(o.push(...l.filter((u)=>u!=="{}")),!l.includes("{}"))continue;o.push(...e.slice(0,i).flatMap((u,d,m)=>{if(!bM.has(u))return[];let f=m[d+1];return f===void 0?[]:[f,f.replace(/^\*+\//,"").replace(/\/\*+$/g,"").replace(/^\*+/,"").replace(/\*+$/g,"")]}))}return o}function xE(e){return vM.has(e)||/^python\d/.test(e)}function jM(e,t,n){let r=[];for(let o=0;o<t.length;o++){let i=t[o];if(i===void 0)break;if(yE.has(i)||CE(e,i)){let a=t[o+1];if(a!==void 0)r.push(...fE(e,a,n)),o++;continue}let s=/^--(?:eval|exec)=(.*)$/.exec(i);if(s!==null&&s[1]!==void 0){r.push(...fE(e,s[1],n));continue}if(!i.startsWith("-"))r.push(i)}return r}function CE(e,t){if(!t.startsWith("-")||t.startsWith("--")||t.length<=2)return!1;return CM.get(t[t.length-1]??"")?.has(SE(e))??!1}function UM(e,t,n){if(!e.includes("system"))return[];return zu(e)?.commands.flatMap((r)=>ki(t.getShellSyntax(r),t,n))??[]}function BM(e){return Array.from(e.matchAll(/\bgetline(?:\s+[A-Za-z_][A-Za-z0-9_]*)?\s*<\s*"((?:\\.|[^"\\])*)"/g)).map((t)=>t[1]).filter((t)=>t!==void 0&&t!=="")}function EE(e){let t=Array.from(e.matchAll(/(['"`])((?:\\.|(?!\1).)*)\1/g)).map((r)=>r[2]).filter((r)=>r!==void 0&&r!==""),n=(e.match(/[\w./~@+-]*[./~][\w./~@+-]*/g)??[]).filter((r)=>r!=="process.versions.sqlite"||t.some((o)=>o.includes(r)));return[...t,...t.flatMap(wE),...n]}function fE(e,t,n){let r=EE(t);if(!n.refineJavaScriptInlineData||!_M.has(e)||r.length===0)return r;let o=VM(t);return o!==null&&!KM(o)?[]:r}function VM(e){let t=e.split("");for(let n=0;n<e.length;n++){let r=e[n];if(r!=="'"&&r!=='"'&&r!=="`")continue;if(r==="`"&&HM(e,n))return null;t[n]=" ";let o=!1;for(let i=n+1;i<e.length;i++){let s=e[i];if(t[i]=" ",s==="\\"){if(i++,i<e.length)t[i]=" ";continue}if(r==="`"&&s==="$"&&e[i+1]==="{")return null;if(r!=="`"&&(s===`
|
|
100
|
+
`||s==="\r"))return null;if(s!==r)continue;n=i,o=!0;break}if(!o)return null}return t.join("")}function HM(e,t){for(let n=t-1;n>=0;n--){let r=e[n];if(!r||/\s/.test(r))continue;return/[\w$\])]/.test(r)}return!1}function KM(e){for(let t of e.matchAll(/[A-Za-z_$][A-Za-z0-9_$]*/g)){let n=t[0],r=t.index;if(SM.has(n.toLowerCase()))return!0;let o=n.replace(/([a-z0-9])([A-Z])/g,"$1 $2").split(/[_$\s]+/).map((i)=>i.toLowerCase());if(!o.some((i)=>xM.has(i)))continue;if(o.length>1)return!0;if(qM(e,r)===".")return!0;if(YM(e,r+n.length)==="(")return!0}return!1}function qM(e,t){for(let n=t-1;n>=0;n--)if(!/\s/.test(e[n]??""))return e[n];return}function YM(e,t){for(let n=t;n<e.length;n++)if(!/\s/.test(e[n]??""))return e[n];return}function JM(e,t,n){return n$(e).flatMap((r)=>{let o=t.getShellSyntax(r);if(o.status==="invalid")return[];return[...ki(o,t,n),...XM(o)?QM(o):[]]})}function XM(e){let t=e.entries;for(let n=0;n<t.length;n++){let r=t[n];if(r?.kind!=="word"||Zn(yt(r.text)).toLowerCase()!=="base64")continue;for(let o=n+1;o<t.length;o++){let i=t[o];if(i?.kind==="operator")break;if(i?.kind!=="word")continue;let s=yt(i.text);if(s==="--decode"||!s.startsWith("--")&&s.startsWith("-")&&/[dD]/.test(s))return!0}}return!1}function QM(e){return e.entries.flatMap((t)=>t.kind==="word"?[yt(t.text)]:t.kind==="redirection"&&t.target?[yt(t.target)]:[]).flatMap(wE)}function wE(e){let t=t$(e);if(t===null)return[];let n=Buffer.from(t,"base64").toString("utf8");if(n===""||e$(n))return[];return Buffer.from(n,"utf8").toString("base64").replace(/=+$/g,"")===t.replace(/=+$/g,"")?[n]:[]}function e$(e){return Array.from(e).some((t)=>{let n=t.charCodeAt(0);return n<32||n===127})}function t$(e){if(e.length<8||!/^[A-Za-z0-9+/_-]+={0,2}$/.test(e))return null;if(/=/.test(e.replace(/=+$/g,"")))return null;let t=e.replace(/=+$/g,"");if(t.length%4===1)return null;return`${t.replace(/-/g,"+").replace(/_/g,"/")}${"=".repeat((4-t.length%4)%4)}`}function n$(e){let t=[],n={inSingle:!1,inDouble:!1,escaped:!1};for(let r=0;r<e.length;r++){let o=e[r];if(!o)break;if(go(o,n))continue;if(RE(e,r,n)){let i=r$(e,r+1);if(i!==null)t.push(i.body),r=i.endIndex;continue}if(!n.inSingle&&o==="`"){let i=o$(e,r);if(i!==null)t.push(i.body),r=i.endIndex}}return t}function r$(e,t){let n={inSingle:!1,inDouble:!1,escaped:!1},r=1;for(let o=t+1;o<e.length;o++){let i=e[o];if(!i)break;if(go(i,n))continue;if(RE(e,o,n)){r++,o++;continue}if(!n.inSingle&&!n.inDouble&&i===")"){if(r--,r===0)return{body:e.slice(t+1,o),endIndex:o}}}return null}function o$(e,t){let n=!1;for(let r=t+1;r<e.length;r++){let o=e[r];if(!o)break;if(n){n=!1;continue}if(o==="\\"){n=!0;continue}if(o==="`")return{body:e.slice(t+1,r),endIndex:r}}return null}function RE(e,t,n){return!n.inSingle&&e[t]==="$"&&e[t+1]==="("&&e[t+2]!=="("}function i$(e){let t=[],n=[],r=!1,o=!1,i=!1;for(let c=0;c<e.length;c++){let l=e[c];if(l===void 0)break;if(!i&&l==="--"){i=!0;continue}if(i){n.push(l);continue}let u=/^--([^=]+)(?:=(.*))?$/.exec(l);if(u!==null){let d=u[1]??"",m=u[2];if(d===wM)o=!0;if(PM.has(d))r=!0;if(m!==void 0){if(d===cE)t.push(m);continue}if(kM.has(d)){let f=e[c+1];if(d===cE&&f!==void 0)t.push(f);c++}continue}if(l.startsWith("-")&&l.length>1){let d=l.slice(1),m="",f="";for(let p=0;p<d.length;p++){let h=d[p]??"";if(RM.has(h))r=!0;if(AM.has(h)){m=h,f=d.slice(p+1);break}}if(m!=="")if(f.length>0){if(m===aE)t.push(f)}else{let p=e[c+1];if(m===aE&&p!==void 0)t.push(p);c++}continue}n.push(l)}let a=!r&&!o?n.slice(1):n;return[...t,...a]}function qr(e){let t=e.findIndex((n)=>!PE(n)&&!/^[A-Za-z_][A-Za-z0-9_]*=.*/.test(n));return t===-1?[]:[...e.slice(t)]}function PE(e){return e==="env"||e==="command"||e==="builtin"||e==="sudo"}var s$=new Set(["id_rsa.pub","id_ed25519.pub","id_ecdsa.pub"]),a$=".env.",c$=new Set([".env.example",".env.sample",".env.template",".env.defaults"]),l$=[".env.example.",".env.sample."];function u$(e){let t;try{t=new URL(e.trim())}catch{return!1}return t.protocol!=="file:"&&t.host!==""}function d$(e){return e.length>0&&!/\s/.test(e)}function m$(e,t,n){try{let r=Ti(e,t,n);return r!==""&&Be.entryKind(r)!=="missing"}catch(r){if(r instanceof Se)throw r;return!1}}var f$=new Set(["node_modules","__pycache__"]),p$=[["vendor","bundle"],["vendor","cache"]];function g$(e,t,n,r){if(u$(e))return null;let o=kt(e,t,r);if(!o)return null;let i=oe(o.split("/").pop()??""),s=oe(o),a=()=>d$(i)||m$(e,t,r);if(c$.has(i)||l$.some((d)=>i.startsWith(d)))return null;let c=oe(S$(e,t,r));for(let d of fh){let m=`~/${d.suffixParts.join("/")}`;if((pE(s,m)||pE(c,m))&&Gt(d.id,n))return d.id}let l=h$(o,t,n,r);if(l)return l;if(s$.has(i))return null;for(let d of mh)if(i===d.basename&&Gt(d.id,n))return d.id;if(i.startsWith(a$)&&Gt(ul.id,n)&&a())return ul.id;for(let d of ph)if(i.length>d.prefix.length&&i.startsWith(d.prefix)){let m=i.slice(d.prefix.length)[0];if((m==="-"||m==="_")&&Gt(d.id,n)&&a())return d.id}for(let d of gh)if(i.length>d.prefix.length&&i.startsWith(d.prefix)){if(i.slice(d.prefix.length)===d.suffix&&Gt(d.id,n))return d.id}if(v$(s))return null;if(!i.includes(".")&&xi.pattern.test(i)&&Gt(xi.id,n))return xi.id;let u=_$(i,n);if(u)return u;return null}function h$(e,t,n,r){return dl.find((o)=>{if(!Gt(o.id,n))return!1;switch(o.id){case"secret.cli.claude-code":return te(e,re(process.env.CLAUDE_CONFIG_DIR,"~/.claude",t,r),[".credentials.json"]);case"secret.cli.claude-code.config":{let i=oe(e).split("/");return te(e,re(process.env.CLAUDE_CONFIG_DIR,"~/.claude",t,r),["settings.json","settings.local.json"])||Ai(e,"~/.claude.json",t,r)||i.at(-1)==="settings.local.json"&&i.at(-2)===".claude"||i.at(-1)===".mcp.json"}case"secret.cli.antigravity":return te(e,kt("~/.gemini/config",t,r),["hooks.json","mcp_config.json"]);case"secret.cli.codex":{let i=re(process.env.CODEX_HOME,"~/.codex",t,r);return te(e,i,["auth.json",".credentials.json"])||Pi(e,i,["secrets",".sandbox-secrets"])}case"secret.cli.codex.config":{let i=re(process.env.CODEX_HOME,"~/.codex",t,r),s=oe(e).split("/").at(-1)??"";return te(e,i,["config.toml"])||s.endsWith(".config.toml")&&te(e,i,[s])}case"secret.cli.gemini":return te(e,_e(re(process.env.GEMINI_CLI_HOME,"~",t,r),".gemini"),["oauth_creds.json","mcp-oauth-tokens.json","a2a-oauth-tokens.json","gemini-credentials.json"]);case"secret.cli.gemini.config":{let i=oe(e).split("/"),s=process.env.ProgramData?[_e(re(process.env.ProgramData,"",t,r),"gemini-cli")]:[];return te(e,_e(re(process.env.GEMINI_CLI_HOME,"~",t,r),".gemini"),["settings.json","google_accounts.json"])||i.at(-1)==="settings.json"&&i.at(-2)===".gemini"||(process.env.GEMINI_CLI_SYSTEM_SETTINGS_PATH?.trim()?Ai(e,process.env.GEMINI_CLI_SYSTEM_SETTINGS_PATH,t,r):!1)||["/Library/Application Support/GeminiCli","/etc/gemini-cli",...s].some((a)=>te(e,kt(a,t,r),["settings.json"]))}case"secret.cli.copilot-cli":{let i=re(process.env.COPILOT_HOME,"~/.copilot",t,r);return te(e,i,["config.json"])||Pi(e,i,["mcp-oauth-config","mcp-secrets"])}case"secret.cli.copilot-cli.config":return te(e,re(process.env.COPILOT_HOME,"~/.copilot",t,r),["mcp-config.json"]);case"secret.cli.kimi-code":{let i=re(process.env.KIMI_CODE_HOME,"~/.kimi-code",t,r),s=re(process.env.KIMI_SHARE_DIR,"~/.kimi",t,r);return te(e,i,["server.token"])||Pi(e,i,["credentials"])||Pi(e,s,["credentials","mcp-oauth"])}case"secret.cli.kimi-code.config":{let i=["config.toml","mcp.json"],s=oe(e).split("/");return s.at(-1)==="mcp.json"&&s.at(-2)===".kimi-code"||te(e,re(process.env.KIMI_CODE_HOME,"~/.kimi-code",t,r),i)||te(e,re(process.env.KIMI_SHARE_DIR,"~/.kimi",t,r),[...i,"config.json","config.json.bak"])}case"secret.cli.opencode":{let i=_e(re(process.env.XDG_DATA_HOME,"~/.local/share",t,r),"opencode"),s=oe(e).split("/").at(-1)??"",a=process.env.OPENCODE_DB?.trim(),c=a&&a!==":memory:"?[a,`${a}-wal`,`${a}-shm`]:[];return te(e,i,["auth.json","mcp-auth.json"])||/^opencode(-.+)?\.db(-wal|-shm)?$/.test(s)&&te(e,i,[s])||c.some((l)=>Ai(e,l,t,r))}case"secret.cli.opencode.config":{let i=process.env.OPENCODE_CONFIG_DIR?re(process.env.OPENCODE_CONFIG_DIR,"~/.config/opencode",t,r):_e(re(process.env.XDG_CONFIG_HOME,"~/.config",t,r),"opencode"),s=process.env.ProgramData?[_e(re(process.env.ProgramData,"",t,r),"opencode")]:[],a=["opencode.json","opencode.jsonc"];return a.includes(oe(e).split("/").at(-1)??"")||te(e,i,a)||(process.env.OPENCODE_CONFIG?.trim()?Ai(e,process.env.OPENCODE_CONFIG,t,r):!1)||["/Library/Application Support/opencode","/etc/opencode",...s].some((c)=>te(e,kt(c,t,r),a))}case"secret.cli.pi":return te(e,re(process.env.PI_CODING_AGENT_DIR,"~/.pi/agent",t,r),["auth.json"]);case"secret.cli.pi.config":return te(e,re(process.env.PI_CODING_AGENT_DIR,"~/.pi/agent",t,r),["models.json"]);case"secret.cli.amp":{let i=kt("~",t,r);return[_e(re(process.env.XDG_DATA_HOME,"~/.local/share",t,r),"amp"),_e(i,".local","share","amp")].some((a)=>te(e,a,["secrets.json"]))||Pi(e,_e(i,".amp"),["oauth"])}case"secret.cli.amp.config":{let i=["settings.json","settings.jsonc"],s=[_e(re(process.env.XDG_CONFIG_HOME,"~/.config",t,r),"amp"),_e(kt("~",t,r),".config","amp")],a=oe(e).split("/");return s.some((c)=>te(e,c,i))||a.at(-2)===".amp"&&i.includes(a.at(-1)??"")||(process.env.AMP_SETTINGS_FILE?.trim()?Ai(e,process.env.AMP_SETTINGS_FILE,t,r):!1)}case"secret.cli.cursor":{let i=_e(re(process.env.XDG_CONFIG_HOME,"~/.config",t,r),"cursor"),s=_e(re(process.env.CURSOR_DATA_DIR,"~/.cursor",t,r),"projects");return te(e,kt("~/.cursor",t,r),["auth.json"])||te(e,i,["auth.json"])||oe(e).split("/").at(-1)==="mcp-auth.json"&&Gn(oe(e),oe(s))}case"secret.cli.cursor.config":{let i=oe(e).split("/");return i.at(-1)==="mcp.json"&&i.at(-2)===".cursor"}case"secret.cli.grok-build":return te(e,re(process.env.GROK_HOME,"~/.grok",t,r),["auth.json","mcp_credentials.json"]);case"secret.cli.grok-build.config":{let i=oe(e).split("/");return i.at(-1)==="config.toml"&&i.at(-2)===".grok"||te(e,re(process.env.GROK_HOME,"~/.grok",t,r),["config.toml","managed_config.toml","requirements.toml"])||te(e,kt("/etc/grok",t,r),["managed_config.toml","requirements.toml"])}default:return!1}})?.id??null}function re(e,t,n,r){return kt(e?.trim()?e:t,n,r)}function te(e,t,n){return n.some((r)=>AE(e,_e(t,r)))}function Pi(e,t,n){return n.some((r)=>Gn(oe(e),oe(_e(t,r))))}function Ai(e,t,n,r){return AE(e,kt(t,n,r))}function AE(e,t){return oe(e)===oe(t)}function _e(e,...t){return mt([e,...t].filter(Boolean).join("/"))}function y$(e,t,n,r,o){if(n.length===0)return!1;let i=oe(Ti(e,t,o));return n.some((s)=>Gn(i,oe(Ti(s,r,o))))}function b$(e,t,n,r,o){if(n.length===0)return!1;let i=oe(Ti(e,t,o));if(!i)return!1;let s=process.env.HOME??wh(),a=s?mt(X(ze(s),Be,o)):"",c=oe(a),l=process.env.CC_SAFETY_NET_HOME,u=oe(l?mt(X(vl(ze(l)),Be,o)):a&&mt(X(`${a}/.cc-safety-net`,Be,o)));if(u&&Gn(i,u))return!1;return n.some((d)=>{let m=oe(Ti(d,r,o));if(!m)return!1;if(c&&(c===m||c.startsWith(m.endsWith("/")?m:`${m}/`)))return!1;return Gn(i,m)})}function v$(e){let t=e.split("/");return t.some((n)=>f$.has(n))||p$.some(([n,r])=>t.some((o,i)=>o===n&&t[i+1]===r))}function _$(e,t){let n=e.lastIndexOf("."),r=n>0&&n<e.length-1?e.slice(n+1):"";if(r==="")return null;for(let o of hh)if(r===o.extension&&Gt(o.id,t))return o.id;for(let o of yh)if(o.pattern.test(r)&&Gt(o.id,t))return o.id;return null}function oe(e){return e.toLowerCase()}function Gt(e,t){return!t?.disabledRules?.includes(e)}function kt(e,t,n){let{home:r,normalized:o}=Rh(e,n);if(!o)return"";if(!r)return o;let i=Ph(o,r),s=yl(i)?i:mt(vl(t,i)),a=mt(X(s,Be,n));if(!Gn(a,r)){if(yl(i))return a;return a===s?o:a}let c=a.slice(r.length);return c?`~${c}`:"~"}function pE(e,t){return e===t||e.startsWith(`${t}/`)}function S$(e,t,n){let{home:r,normalized:o}=Rh(e,n);if(!o||!r)return"";let i=Ph(o,r),s=dM.normalize(yl(i)?i:mt(vl(t,i))),a=mt(ze(process.env.HOME??wh())),c=(d)=>process.platform==="win32"?d.toLowerCase():d,l=[r,a].find((d)=>d!==""&&Gn(c(s),c(d)));if(l===void 0)return"";let u=s.slice(l.length);return u?`~${u}`:"~"}function Ti(e,t,n){let{home:r,normalized:o}=Rh(e,n);if(!o)return"";let i=r?Ph(o,r):o;return mt(X(yl(i)?i:vl(t,i),Be,n))}function Rh(e,t){let n=process.env.HOME??wh(),r=n?mt(X(ze(n),Be,t)):"",o=mt(ze(x$(yt(e))));return{home:r,normalized:o}}function x$(e){if(!e.trim().toLowerCase().startsWith("file:"))return e;try{return fM(e)}catch{return e}}function Ph(e,t){if(e==="~")return t;if(e.startsWith("~/"))return _e(t,e.slice(2));return e}function C$(e){if(process.platform==="win32")return!0;return mM.parse(e).root.length>1}function mt(e){let t=e.trim(),n=(C$(t)?t.replace(/\\/g,"/"):t).replace(/\/{2,}/g,"/").replace(/^\.\//,"");if(n==="/")return n;return n.replace(/\/+$/g,"")}function Gn(e,t){return e===t||e.startsWith(t.endsWith("/")?t:`${t}/`)}function Zn(e){return e.split(/[\\/]/).pop()?.replace(/\.exe$/i,"")??e}import{dirname as _l}from"path";var kE="Rulebook exceeds CC Safety Net's safe validation limits.",TE="Additional rulebook validation errors were omitted.",ft=Object.freeze({maxAllowedCommands:1024,maxRules:1024,maxTests:2048,maxBlockArgsPerRule:1024,maxTotalBlockArgs:16384,maxStringCodeUnits:1048576,maxAggregateStringCodeUnits:4194304,maxFixtureCommandCodeUnits:131072,maxValidationErrors:64});function IE(e){if(Ah(e.allowed_commands,ft.maxAllowedCommands)||Ah(e.rules,ft.maxRules)||Ah(e.tests,ft.maxTests))return!1;let{maxAggregateStringCodeUnits:t,maxTotalBlockArgs:n}=ft,r=(o,i=!1)=>{if(typeof o!=="string")return!0;if(o.length>ft.maxStringCodeUnits||i&&o.length>ft.maxFixtureCommandCodeUnits||o.length>t)return!1;return t-=o.length,!0};if(!r(e.name)||!r(e.version)||!r(e.description)||!r(e.author)||!r(e.migrated_from))return!1;if(Array.isArray(e.allowed_commands)){for(let o of e.allowed_commands)if(!r(o))return!1}if(Array.isArray(e.rules))for(let o of e.rules){if(!o||typeof o!=="object")continue;let i=o;if(!r(i.name)||!r(i.command)||!r(i.subcommand)||!r(i.reason)||!r(i.intent))return!1;let s=i.match&&typeof i.match==="object"?i.match:{};for(let a of[i.block_args,s.command_path,s.any_args,s.exclude_args]){if(!Array.isArray(a))continue;if(a.length>ft.maxBlockArgsPerRule||a.length>n)return!1;n-=a.length;for(let c of a)if(!r(c))return!1}}if(Array.isArray(e.tests))for(let o of e.tests){if(!o||typeof o!=="object")continue;let i=o;if(!r(i.command,!0)||!r(i.expect)||!r(i.rule))return!1}return!0}function Ah(e,t){return Array.isArray(e)&&e.length>t}function E$(e){if(!w$(e))return{errors:["Rulebook must be an object"],ruleNames:new Set};if(!IE(e))return{errors:[kE],ruleNames:new Set};let t=(e.rulebook_version===2?NC():zC()).safeParse(e),n=[...e.rulebook_version===1||e.rulebook_version===2?[]:["rulebook_version must be 1 or 2"],...t.success?[]:pl(t.error.issues,": ",": ")];return{errors:n.length>ft.maxValidationErrors?[...n.slice(0,ft.maxValidationErrors),TE]:n,ruleNames:new Set(bh(e).map((r)=>r.toLowerCase()))}}function OE(e){let t=E$(e);if(t.errors.length>0)throw Error(t.errors.join("; "));return e}function w$(e){return!!e&&typeof e==="object"&&!Array.isArray(e)}function LE(e={}){let t=Yh(e),n=!1;try{n=Fh(t.userConfigTarget,t.projectConfigTarget)}catch(m){if(m instanceof pe)return N$(t,m.message);throw m}let r=_h(t.userConfigTarget),o=n?{config:null,errors:[]}:_h(t.projectConfigTarget),i=ME(t.userConfigPath,r.errors),s=ME(t.projectConfigPath,o.errors),a=new Set,c=r.config?zE(r.config,_l(t.userConfigPath),"user",t.userScope,a):$E(),l=o.config?zE(o.config,_l(t.projectConfigPath),"project",t.projectScope,a):$E(),u=r.config?.overrides??{},d=o.config?.overrides??{};return{rules:[...NE(c.rules,u),...NE(l.rules,d)],transparent_wrappers:O$(r.config,o.config),rulebooks:[...c.rulebooks,...l.rulebooks],errors:[...i,...s,...c.errors,...l.errors],warnings:[...c.warnings,...l.warnings,...c.canValidateOverrides?DE(u,c.knownRuleIds,t.userConfigPath):[],...c.canValidateOverrides?z$(d,c.knownRuleIds,t.projectConfigPath):[],...l.canValidateOverrides?DE(d,l.knownRuleIds,t.projectConfigPath):[]],userConfig:r.config??void 0,projectConfig:o.config??void 0,...t}}function zE(e,t,n,r=dn(_l(_l(t)),n==="user"?"user policy":"project policy"),o=new Set){let i=[],s=[],a=e.rules.flatMap((l)=>{let u=P$(l,t,r);if(u.errors.length>0||!u.rulebook)return i.push(...u.errors),[];let d=u.rulebook;if(o.has(d.name))return s.push(`duplicate active rulebook name "${d.name}" for ${l}; keeping the first and ignoring this one, so its rules are not active; rename one of them in its rulebook file and in the rules config that lists it`),[];return o.add(d.name),[{rules:R$(d),rulebook:{source:n,spec:l,name:d.name,version:d.version,rules:d.rules.map((m)=>`${d.name}/${m.name}`)}}]}),c=a.flatMap((l)=>l.rules);return{rules:c,rulebooks:a.map((l)=>l.rulebook),entries:a.map((l)=>({spec:l.rulebook.spec,name:l.rulebook.name,version:l.rulebook.version,ruleCount:l.rulebook.rules.length})),knownRuleIds:new Set(c.map((l)=>l.name)),errors:i,warnings:s,canValidateOverrides:i.length===0}}function R$(e){if(e.rulebook_version===2)return e.rules.map((t)=>({name:`${e.name}/${t.name}`,command:t.command,block_args:[],match:t.match,reason:t.reason,intent:t.intent}));return e.rules.map((t)=>({...t,name:`${e.name}/${t.name}`,match:void 0}))}function P$(e,t,n){let r=A$(e),o=Jh(t,r),i=T$(o,n);if("error"in i)return{rulebook:null,errors:[i.error]};if(i.content===null)return{rulebook:null,errors:[`missing rulebook file ${o} for ${e}; ${k$(e)}`]};let s=I$(i.content);if("problem"in s)return{rulebook:null,errors:[`invalid rulebook ${o}: ${s.problem}; fix that file`]};if(s.rulebook.name!==r)return{rulebook:null,errors:[`rulebook name "${s.rulebook.name}" in ${o} must match source "${e}"; fix that file`]};return{rulebook:s.rulebook,errors:[]}}function A$(e){return $i(e)?Pl(e).name:e}function k$(e){return $i(e)?`run ${qh} to vendor ${e}`:"create that file or remove that source from the rules config"}function T$(e,t){try{return{content:Mi(Jr(t,e))}}catch(n){if(n instanceof pe)return{error:n.message};throw n}}function I$(e){let t;try{t=JSON.parse(e)}catch{return{problem:"Invalid JSON"}}try{return{rulebook:OE(t)}}catch(n){return{problem:n instanceof Error?n.message:"invalid rulebook"}}}function O$(e,t){return[...new Set([...e?.transparent_wrappers??[],...t?.transparent_wrappers??[]])]}function NE(e,t){return e.flatMap((n)=>{let r=t[n.name];if(r==="off")return[];if(r&&typeof r==="object")return[{...n,intent:r.intent??n.intent,reason:r.reason}];return[n]})}function DE(e,t,n){return Object.keys(e).filter((r)=>!t.has(r)).map((r)=>`unknown override key "${r}" in ${n}; only that override is ignored and other overrides and rules keep their configured state; correct or remove it in that file`)}function z$(e,t,n){return Object.keys(e).filter((r)=>t.has(r)).map((r)=>`project override cannot target user-scoped rule "${r}" in ${n}; only that override is ignored and the rule keeps its user-configured state; remove it from that file`)}function ME(e,t){return t.map((n)=>n.startsWith("Unable to access ")?n:`${e}: ${n}`)}function N$(e,t){return{rules:[],transparent_wrappers:[],rulebooks:[],errors:[t],warnings:[],userConfigPath:e.userConfigPath,projectConfigPath:e.projectConfigPath}}function $E(){return{rules:[],rulebooks:[],entries:[],knownRuleIds:new Set,errors:[],warnings:[],canValidateOverrides:!0}}function WE(e={}){let t=LE(e),n=KC(e),r={rules:t.rules,transparentWrappers:t.transparent_wrappers,safety:n.safety,worktreeMode:n.worktreeMode,destructiveCommandProtectionEnabled:n.destructiveCommandProtectionEnabled,destructiveCommandRuleOverrides:n.destructiveCommandRuleOverrides,destructiveCommandAllowPaths:n.destructiveCommandAllowPaths,secretProtection:{enabled:n.secretProtection.enabled??!0,disabledRules:n.secretProtection.disabledRules??[],denyPaths:n.secretProtection.denyPaths,allowPaths:n.secretProtection.allowPaths??[]}},o={...t.userConfig?.overrides??{},...t.projectConfig?.overrides??{}},i=Object.freeze(Object.fromEntries(r.rules.map((s)=>{let a=t.rulebooks.find((l)=>l.rules.includes(s.name)),c=o[s.name];return[s.name,Object.freeze({id:s.name,...a?{rulebook:Object.freeze({name:a.name,version:a.version}),...L$(a.spec)?{source:a.spec}:{}}:{},...c&&typeof c==="object"?{override:Object.freeze({type:"reason",reason:c.reason})}:{}})]})));return W$(r,D$(t,n),i,n.policyScopes)}function D$(e,t){let n=$$(t);if(e.errors.length===0&&e.warnings.length===0&&!n)return;return{diagnostics:[...e.errors,...e.warnings,...t.errors],reason:F$(e.errors.length>0?M$(e.errors):void 0,e.warnings.length>0?Th(e.warnings.join("; ")):void 0,n)}}function M$(e){return`${Th(e.join("; "))} Those rule sources are not active; every other rule and all built-in protections still apply`}function $$(e){if(e.errors.length===0)return;let t=e.fallback==="salvaged"?"the salvaged policy with protective defaults":"built-in protective defaults";return`invalid policy config: ${e.errors.join("; ")}. Enforcing ${t}; the invalid values are not active. Fix the policy file manually`}function L$(e){return/^(?:[A-Za-z0-9_.-]+$|https:\/\/github\.com\/|github:|gh:|[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+(?:#|$))/.test(e)}function W$(e,t,n=Object.freeze({}),r){let o=kh(structuredClone(e)),i=r?{policyScopes:kh(structuredClone(r))}:{};if(!t)return Object.freeze({state:"ready",policy:o,diagnostics:Object.freeze([]),ruleMetadata:n,...i});return Object.freeze({state:"degraded",policy:o,diagnostics:Object.freeze([...t.diagnostics]),reason:t.reason,ruleMetadata:n,...i})}function kh(e){if(typeof e!=="object"||e===null)return e;for(let t of Object.values(e))kh(t);return Object.freeze(e)}function F$(...e){return Th(e.filter((t)=>!!t).join("; "))}function Th(e){return/[.!?]$/.test(e)?e:`${e}.`}class cn extends Error{stage;evaluation;name="GuardEvaluationError";constructor(e,t,n){super(`CC Safety Net ${e} dependency failed`,{cause:n});this.stage=e;this.evaluation=t}}var G$={findPolicyMutation:iE,findGitMetadataMutation:pv,resolveGitMetadata:Cu,loadPolicySnapshot:WE,findSensitiveTarget:vE,analyzeCommand:ES,getModes:Cd};function FE(e,t={}){let n={...G$,...t.dependencies},r=U$(e),o=Ii(e)?e.command:r,i=an("policy-protection",o,()=>_o(e,t.factParserDependencies)),s=xe(i,"declared-command");if(Ii(e)&&e.command?.trim()&&s?.program.status==="limited")return{stage:"command-analysis",decision:{kind:"deny",reason:It,intent:"stop_and_explain",evidence:[{kind:"command",command:e.command,segment:e.command}]}};if(xe(i,"input-candidate")?.program.status==="limited")return{stage:"command-validation",decision:{kind:"deny",reason:fy,intent:"stop_and_explain",evidence:[]}};let a=an("policy-protection",o,()=>n.resolveGitMetadata([e.context.executionCwd,e.context.configCwd])),c=an("policy-protection",o,()=>n.findPolicyMutation(i));if(c){let b=o??c.target;return{stage:"policy-protection",decision:{kind:"deny",reason:oE,intent:"hard_stop",evidence:[{kind:"command",command:b,segment:c.target}]}}}let l=an("policy-protection",o,()=>PS(i));if(l){let b=o??l.target;return{stage:"policy-protection",decision:{kind:"deny",reason:RS,intent:"hard_stop",evidence:[{kind:"command",command:b,segment:l.target}]}}}let u=an("policy-protection",o,()=>n.findGitMetadataMutation(i,a));if(u){let b=o??u.target;return{stage:"policy-protection",decision:{kind:"deny",reason:qe,intent:"hard_stop",evidence:[{kind:"command",command:b,segment:u.target}]}}}let d=an("config-load",o,()=>n.loadPolicySnapshot({...t.policyOptions,cwd:e.context.configCwd})),m=d.policy,f=n.getModes(m),p={level:f.effectiveLevel,...Z$(d)},h=m.secretProtection.enabled===!1?null:an("secret-protection",o,()=>n.findSensitiveTarget(i,m.secretProtection,{strict:Ii(e)?f.strict:void 0}));if(h){let b=o??h.target;return{stage:"secret-protection",...p,decision:{kind:"deny",reason:gE,intent:"hard_stop",ruleId:h.ruleId,evidence:[{kind:"command",command:b,segment:h.target}]}}}if(!Ii(e))return{stage:"non-command",...p,decision:{kind:"allow"}};if(!e.command||e.command.trim()==="")return{...Ih("command-validation",o),...p};let y=an("command-analysis",o,()=>n.analyzeCommand(e.command,{cwd:e.context.executionCwd,shell:e.route.shell,policySnapshot:d,environment:Qe(),protectedGitMetadata:a,effectiveCapabilities:f.capabilities,strict:f.strict,paranoidRm:f.paranoidRm,paranoidInterpreters:f.paranoidInterpreters,worktreeMode:f.worktreeMode},j$(i),i.store));if(y)return{stage:"command-analysis",...p,decision:y};return{stage:"command-analysis",...p,decision:{kind:"allow"}}}function Z$(e){if(e.state==="ready")return{};return{configFallback:{reason:e.reason}}}function j$(e){return xe(e,"declared-command")?.program}function U$(e){try{return vo(e.input)}catch(t){let n=Ii(e)?e.command:void 0;throw new cn("policy-protection",Ih("policy-protection",t instanceof $t?void 0:n,t),t)}}function an(e,t,n){try{return n()}catch(r){throw new cn(e,Ih(e,r instanceof $t?void 0:t,r),r)}}function Ih(e,t,n){let r=n instanceof Se||n instanceof ht;return{stage:e,decision:{kind:"deny",reason:r?py:Wi,intent:"stop_and_explain",evidence:t?[{kind:"command",command:t,segment:t}]:[]}}}function Ii(e){return e.route.kind==="command"}function ZE(e,t){try{let n=FE(e,t.guard);return GE(e,n,t),n}catch(n){if(!(n instanceof cn))throw n;throw GE(e,n.evaluation,t,!(n.cause instanceof $t),{stage:n.stage,errorCode:B$(n.cause)}),n}}function GE(e,t,n,r=!0,o){cy(ay(e,t,n.guard?.auditAllowed??!1,r,o),n.audit.getSessionId,{agent:n.audit.agent,shape:n.audit.shape,homeDir:n.audit.homeDir})}function B$(e){if(e instanceof Se)return"path-canonicalization-limit";if(e instanceof $t)return"tool-input-limit";if(e instanceof ht)return"structural-shell-syntax-limit";return"unexpected-error"}var UE=H$();function H$(e={}){return(t,n)=>K$(t,n,e)}function K$(e,t,n){let r=q$(e,t),o=()=>X$(e);if("malformed"in r)return ly(r.denial,o,{agent:"amp",toolName:r.denial.toolName,cwd:r.cwd}),BE(r.denial);try{let i=ZE(r,{guard:{auditAllowed:Sd(),dependencies:n.guardDependencies},audit:{agent:"amp",getSessionId:o}});return jE(i,!0)}catch(i){if(!(i instanceof cn))throw i;if(Qt(fe.debug))console.error(`CC Safety Net debug: amp tool.call analysis failed: ${_y(i.cause)}`);return jE(i.evaluation,r.route.kind==="command")}}function q$(e,t){if(!e||typeof e!=="object")return Yr(null);let n=e;if(typeof n.tool!=="string"||n.tool.trim()==="")return Yr(null);if(!n.input||typeof n.input!=="object")return Yr(null,n.tool);let r=Y$(t);if(!r)return Yr(null,n.tool);let o=J$(t,e);if(!o.ok)return Yr(r,n.tool);if(!o.command)return gr(n.tool,n.input,{kind:vu(n.tool)},{configCwd:r,executionCwd:r},null);if(typeof o.command.command!=="string"||o.command.command.trim()==="")return Yr(r,n.tool);let i=typeof o.command.dir==="string"?dy(o.command.dir,r):r;if(!i)return{malformed:!0,denial:{reason:"CC Safety Net could not use the requested working directory because it does not exist, is inaccessible, is not a directory, or uses an unsupported path form. Use an existing accessible working directory. If the requested directory is missing, create it from an accessible location before retrying the command.",intent:"use_alternative",command:o.command.command,segment:o.command.dir,toolName:n.tool},cwd:r};return gr(n.tool,n.input,{kind:"command",shell:"posix"},{configCwd:r,executionCwd:i},o.command.command)}function Y$(e){let t=e.system.workspaceRoot;if(!t)return;try{let n=e.helpers.filePathFromURI(t);if(typeof n!=="string"||n.trim()==="")return;return Nl(".",[n])}catch{return}}function J$(e,t){try{return{ok:!0,command:e.helpers.shellCommandFromToolCall(t)}}catch{return{ok:!1}}}function X$(e){if(!e||typeof e!=="object")return;let t=e.thread?.id;return typeof t==="string"&&t.trim()!==""?t:void 0}function Yr(e,t){return{malformed:!0,denial:by({toolName:t}),cwd:e}}function jE(e,t){let n=yy(e,{includeEvidence:t});return n?BE(n):{action:"allow"}}function BE(e){return{action:"reject-and-continue",message:vy(e)}}function Q$(e){e.on("tool.call",(t)=>UE(t,e))}export{Q$ as default};
|