@tomismeta/paperclip-aperture 0.4.7 → 0.4.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -2
- package/dist/manifest.js +1 -1
- package/dist/ui/index.js +1 -0
- package/dist/worker.js +21 -9
- package/package.json +14 -6
package/dist/worker.js
CHANGED
|
@@ -1,11 +1,23 @@
|
|
|
1
|
-
var hy=Object.defineProperty;var yy=(e,t)=>{for(var n in t)hy(e,n,{get:t[n],enumerable:!0})};function Js(e){return Object.freeze({definition:e})}var r={};yy(r,{BRAND:()=>Hy,DIRTY:()=>at,EMPTY_PATH:()=>vy,INVALID:()=>A,NEVER:()=>xS,OK:()=>Z,ParseStatus:()=>z,Schema:()=>C,ZodAny:()=>Ze,ZodArray:()=>qe,ZodBigInt:()=>lt,ZodBoolean:()=>ut,ZodBranded:()=>En,ZodCatch:()=>vt,ZodDate:()=>dt,ZodDefault:()=>It,ZodDiscriminatedUnion:()=>yr,ZodEffects:()=>ge,ZodEnum:()=>St,ZodError:()=>se,ZodFirstPartyTypeKind:()=>w,ZodFunction:()=>br,ZodIntersection:()=>ft,ZodIssueCode:()=>y,ZodLazy:()=>ht,ZodLiteral:()=>yt,ZodMap:()=>Zt,ZodNaN:()=>Xt,ZodNativeEnum:()=>bt,ZodNever:()=>Ie,ZodNull:()=>mt,ZodNullable:()=>xe,ZodNumber:()=>ct,ZodObject:()=>ie,ZodOptional:()=>pe,ZodParsedType:()=>k,ZodPipeline:()=>An,ZodPromise:()=>Je,ZodReadonly:()=>kt,ZodRecord:()=>Sr,ZodSchema:()=>C,ZodSet:()=>Jt,ZodString:()=>Ye,ZodSymbol:()=>Gt,ZodTransformer:()=>ge,ZodTuple:()=>we,ZodType:()=>C,ZodUndefined:()=>pt,ZodUnion:()=>gt,ZodUnknown:()=>je,ZodVoid:()=>Yt,addIssueToContext:()=>I,any:()=>Xy,array:()=>nS,bigint:()=>Wy,boolean:()=>uu,coerce:()=>wS,custom:()=>au,date:()=>Gy,datetimeRegex:()=>iu,defaultErrorMap:()=>Ue,discriminatedUnion:()=>oS,effect:()=>SS,enum:()=>fS,function:()=>pS,getErrorMap:()=>Kt,getParsedType:()=>Ae,instanceof:()=>Ky,intersection:()=>aS,isAborted:()=>fr,isAsync:()=>zt,isDirty:()=>hr,isValid:()=>Ge,late:()=>Vy,lazy:()=>mS,literal:()=>gS,makeIssue:()=>_n,map:()=>uS,nan:()=>zy,nativeEnum:()=>hS,never:()=>eS,null:()=>Jy,nullable:()=>IS,number:()=>lu,object:()=>rS,objectUtil:()=>Xs,oboolean:()=>AS,onumber:()=>ES,optional:()=>bS,ostring:()=>_S,pipeline:()=>kS,preprocess:()=>vS,promise:()=>yS,quotelessJson:()=>Sy,record:()=>lS,set:()=>dS,setErrorMap:()=>Iy,strictObject:()=>sS,string:()=>cu,symbol:()=>Yy,transformer:()=>SS,tuple:()=>cS,undefined:()=>Zy,union:()=>iS,unknown:()=>Qy,util:()=>O,void:()=>tS});var O;(function(e){e.assertEqual=i=>{};function t(i){}e.assertIs=t;function n(i){throw new Error}e.assertNever=n,e.arrayToEnum=i=>{let o={};for(let a of i)o[a]=a;return o},e.getValidEnumValues=i=>{let o=e.objectKeys(i).filter(c=>typeof i[i[c]]!="number"),a={};for(let c of o)a[c]=i[c];return e.objectValues(a)},e.objectValues=i=>e.objectKeys(i).map(function(o){return i[o]}),e.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let o=[];for(let a in i)Object.prototype.hasOwnProperty.call(i,a)&&o.push(a);return o},e.find=(i,o)=>{for(let a of i)if(o(a))return a},e.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function s(i,o=" | "){return i.map(a=>typeof a=="string"?`'${a}'`:a).join(o)}e.joinValues=s,e.jsonStringifyReplacer=(i,o)=>typeof o=="bigint"?o.toString():o})(O||(O={}));var Xs;(function(e){e.mergeShapes=(t,n)=>({...t,...n})})(Xs||(Xs={}));var k=O.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Ae=e=>{switch(typeof e){case"undefined":return k.undefined;case"string":return k.string;case"number":return Number.isNaN(e)?k.nan:k.number;case"boolean":return k.boolean;case"function":return k.function;case"bigint":return k.bigint;case"symbol":return k.symbol;case"object":return Array.isArray(e)?k.array:e===null?k.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?k.promise:typeof Map<"u"&&e instanceof Map?k.map:typeof Set<"u"&&e instanceof Set?k.set:typeof Date<"u"&&e instanceof Date?k.date:k.object;default:return k.unknown}};var y=O.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Sy=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),se=class e extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=s=>{this.issues=[...this.issues,s]},this.addIssues=(s=[])=>{this.issues=[...this.issues,...s]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=t}format(t){let n=t||function(o){return o.message},s={_errors:[]},i=o=>{for(let a of o.issues)if(a.code==="invalid_union")a.unionErrors.map(i);else if(a.code==="invalid_return_type")i(a.returnTypeError);else if(a.code==="invalid_arguments")i(a.argumentsError);else if(a.path.length===0)s._errors.push(n(a));else{let c=s,u=0;for(;u<a.path.length;){let p=a.path[u];u===a.path.length-1?(c[p]=c[p]||{_errors:[]},c[p]._errors.push(n(a))):c[p]=c[p]||{_errors:[]},c=c[p],u++}}};return i(this),s}static assert(t){if(!(t instanceof e))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,O.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=n=>n.message){let n={},s=[];for(let i of this.issues)if(i.path.length>0){let o=i.path[0];n[o]=n[o]||[],n[o].push(t(i))}else s.push(t(i));return{formErrors:s,fieldErrors:n}}get formErrors(){return this.flatten()}};se.create=e=>new se(e);var by=(e,t)=>{let n;switch(e.code){case y.invalid_type:e.received===k.undefined?n="Required":n=`Expected ${e.expected}, received ${e.received}`;break;case y.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,O.jsonStringifyReplacer)}`;break;case y.unrecognized_keys:n=`Unrecognized key(s) in object: ${O.joinValues(e.keys,", ")}`;break;case y.invalid_union:n="Invalid input";break;case y.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${O.joinValues(e.options)}`;break;case y.invalid_enum_value:n=`Invalid enum value. Expected ${O.joinValues(e.options)}, received '${e.received}'`;break;case y.invalid_arguments:n="Invalid function arguments";break;case y.invalid_return_type:n="Invalid function return type";break;case y.invalid_date:n="Invalid date";break;case y.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:O.assertNever(e.validation):e.validation!=="regex"?n=`Invalid ${e.validation}`:n="Invalid";break;case y.too_small:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="bigint"?n=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:n="Invalid input";break;case y.too_big:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?n=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:n="Invalid input";break;case y.custom:n="Invalid input";break;case y.invalid_intersection_types:n="Intersection results could not be merged";break;case y.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case y.not_finite:n="Number must be finite";break;default:n=t.defaultError,O.assertNever(e)}return{message:n}},Ue=by;var eu=Ue;function Iy(e){eu=e}function Kt(){return eu}var _n=e=>{let{data:t,path:n,errorMaps:s,issueData:i}=e,o=[...n,...i.path||[]],a={...i,path:o};if(i.message!==void 0)return{...i,path:o,message:i.message};let c="",u=s.filter(p=>!!p).slice().reverse();for(let p of u)c=p(a,{data:t,defaultError:c}).message;return{...i,path:o,message:c}},vy=[];function I(e,t){let n=Kt(),s=_n({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===Ue?void 0:Ue].filter(i=>!!i)});e.common.issues.push(s)}var z=class e{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,n){let s=[];for(let i of n){if(i.status==="aborted")return A;i.status==="dirty"&&t.dirty(),s.push(i.value)}return{status:t.value,value:s}}static async mergeObjectAsync(t,n){let s=[];for(let i of n){let o=await i.key,a=await i.value;s.push({key:o,value:a})}return e.mergeObjectSync(t,s)}static mergeObjectSync(t,n){let s={};for(let i of n){let{key:o,value:a}=i;if(o.status==="aborted"||a.status==="aborted")return A;o.status==="dirty"&&t.dirty(),a.status==="dirty"&&t.dirty(),o.value!=="__proto__"&&(typeof a.value<"u"||i.alwaysSet)&&(s[o.value]=a.value)}return{status:t.value,value:s}}},A=Object.freeze({status:"aborted"}),at=e=>({status:"dirty",value:e}),Z=e=>({status:"valid",value:e}),fr=e=>e.status==="aborted",hr=e=>e.status==="dirty",Ge=e=>e.status==="valid",zt=e=>typeof Promise<"u"&&e instanceof Promise;var _;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(_||(_={}));var me=class{constructor(t,n,s,i){this._cachedPath=[],this.parent=t,this.data=n,this._path=s,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},tu=(e,t)=>{if(Ge(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let n=new se(e.common.issues);return this._error=n,this._error}}};function T(e){if(!e)return{};let{errorMap:t,invalid_type_error:n,required_error:s,description:i}=e;if(t&&(n||s))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(a,c)=>{let{message:u}=e;return a.code==="invalid_enum_value"?{message:u??c.defaultError}:typeof c.data>"u"?{message:u??s??c.defaultError}:a.code!=="invalid_type"?{message:c.defaultError}:{message:u??n??c.defaultError}},description:i}}var C=class{get description(){return this._def.description}_getType(t){return Ae(t.data)}_getOrReturnCtx(t,n){return n||{common:t.parent.common,data:t.data,parsedType:Ae(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new z,ctx:{common:t.parent.common,data:t.data,parsedType:Ae(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let n=this._parse(t);if(zt(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(t){let n=this._parse(t);return Promise.resolve(n)}parse(t,n){let s=this.safeParse(t,n);if(s.success)return s.data;throw s.error}safeParse(t,n){let s={common:{issues:[],async:n?.async??!1,contextualErrorMap:n?.errorMap},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ae(t)},i=this._parseSync({data:t,path:s.path,parent:s});return tu(s,i)}"~validate"(t){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ae(t)};if(!this["~standard"].async)try{let s=this._parseSync({data:t,path:[],parent:n});return Ge(s)?{value:s.value}:{issues:n.common.issues}}catch(s){s?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:t,path:[],parent:n}).then(s=>Ge(s)?{value:s.value}:{issues:n.common.issues})}async parseAsync(t,n){let s=await this.safeParseAsync(t,n);if(s.success)return s.data;throw s.error}async safeParseAsync(t,n){let s={common:{issues:[],contextualErrorMap:n?.errorMap,async:!0},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ae(t)},i=this._parse({data:t,path:s.path,parent:s}),o=await(zt(i)?i:Promise.resolve(i));return tu(s,o)}refine(t,n){let s=i=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(i):n;return this._refinement((i,o)=>{let a=t(i),c=()=>o.addIssue({code:y.custom,...s(i)});return typeof Promise<"u"&&a instanceof Promise?a.then(u=>u?!0:(c(),!1)):a?!0:(c(),!1)})}refinement(t,n){return this._refinement((s,i)=>t(s)?!0:(i.addIssue(typeof n=="function"?n(s,i):n),!1))}_refinement(t){return new ge({schema:this,typeName:w.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)}}optional(){return pe.create(this,this._def)}nullable(){return xe.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return qe.create(this)}promise(){return Je.create(this,this._def)}or(t){return gt.create([this,t],this._def)}and(t){return ft.create(this,t,this._def)}transform(t){return new ge({...T(this._def),schema:this,typeName:w.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let n=typeof t=="function"?t:()=>t;return new It({...T(this._def),innerType:this,defaultValue:n,typeName:w.ZodDefault})}brand(){return new En({typeName:w.ZodBranded,type:this,...T(this._def)})}catch(t){let n=typeof t=="function"?t:()=>t;return new vt({...T(this._def),innerType:this,catchValue:n,typeName:w.ZodCatch})}describe(t){let n=this.constructor;return new n({...this._def,description:t})}pipe(t){return An.create(this,t)}readonly(){return kt.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},ky=/^c[^\s-]{8,}$/i,_y=/^[0-9a-z]+$/,Ey=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Ay=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,wy=/^[a-z0-9_-]{21}$/i,xy=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Ty=/^[-+]?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)?)??$/,Ry=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Cy="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Qs,Py=/^(?:(?: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])$/,Oy=/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,Ny=/^(([0-9a-fA-F]{1,4}:){7,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}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,Ly=/^(([0-9a-fA-F]{1,4}:){7,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}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,My=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Dy=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,ru="((\\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])))",Uy=new RegExp(`^${ru}$`);function su(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`);let n=e.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${n}`}function Fy(e){return new RegExp(`^${su(e)}$`)}function iu(e){let t=`${ru}T${su(e)}`,n=[];return n.push(e.local?"Z?":"Z"),e.offset&&n.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${n.join("|")})`,new RegExp(`^${t}$`)}function jy(e,t){return!!((t==="v4"||!t)&&Py.test(e)||(t==="v6"||!t)&&Ny.test(e))}function qy(e,t){if(!xy.test(e))return!1;try{let[n]=e.split(".");if(!n)return!1;let s=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),i=JSON.parse(atob(s));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||t&&i.alg!==t)}catch{return!1}}function $y(e,t){return!!((t==="v4"||!t)&&Oy.test(e)||(t==="v6"||!t)&&Ly.test(e))}var Ye=class e extends C{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==k.string){let o=this._getOrReturnCtx(t);return I(o,{code:y.invalid_type,expected:k.string,received:o.parsedType}),A}let s=new z,i;for(let o of this._def.checks)if(o.kind==="min")t.data.length<o.value&&(i=this._getOrReturnCtx(t,i),I(i,{code:y.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),s.dirty());else if(o.kind==="max")t.data.length>o.value&&(i=this._getOrReturnCtx(t,i),I(i,{code:y.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),s.dirty());else if(o.kind==="length"){let a=t.data.length>o.value,c=t.data.length<o.value;(a||c)&&(i=this._getOrReturnCtx(t,i),a?I(i,{code:y.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):c&&I(i,{code:y.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),s.dirty())}else if(o.kind==="email")Ry.test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"email",code:y.invalid_string,message:o.message}),s.dirty());else if(o.kind==="emoji")Qs||(Qs=new RegExp(Cy,"u")),Qs.test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"emoji",code:y.invalid_string,message:o.message}),s.dirty());else if(o.kind==="uuid")Ay.test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"uuid",code:y.invalid_string,message:o.message}),s.dirty());else if(o.kind==="nanoid")wy.test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"nanoid",code:y.invalid_string,message:o.message}),s.dirty());else if(o.kind==="cuid")ky.test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"cuid",code:y.invalid_string,message:o.message}),s.dirty());else if(o.kind==="cuid2")_y.test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"cuid2",code:y.invalid_string,message:o.message}),s.dirty());else if(o.kind==="ulid")Ey.test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"ulid",code:y.invalid_string,message:o.message}),s.dirty());else if(o.kind==="url")try{new URL(t.data)}catch{i=this._getOrReturnCtx(t,i),I(i,{validation:"url",code:y.invalid_string,message:o.message}),s.dirty()}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"regex",code:y.invalid_string,message:o.message}),s.dirty())):o.kind==="trim"?t.data=t.data.trim():o.kind==="includes"?t.data.includes(o.value,o.position)||(i=this._getOrReturnCtx(t,i),I(i,{code:y.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),s.dirty()):o.kind==="toLowerCase"?t.data=t.data.toLowerCase():o.kind==="toUpperCase"?t.data=t.data.toUpperCase():o.kind==="startsWith"?t.data.startsWith(o.value)||(i=this._getOrReturnCtx(t,i),I(i,{code:y.invalid_string,validation:{startsWith:o.value},message:o.message}),s.dirty()):o.kind==="endsWith"?t.data.endsWith(o.value)||(i=this._getOrReturnCtx(t,i),I(i,{code:y.invalid_string,validation:{endsWith:o.value},message:o.message}),s.dirty()):o.kind==="datetime"?iu(o).test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{code:y.invalid_string,validation:"datetime",message:o.message}),s.dirty()):o.kind==="date"?Uy.test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{code:y.invalid_string,validation:"date",message:o.message}),s.dirty()):o.kind==="time"?Fy(o).test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{code:y.invalid_string,validation:"time",message:o.message}),s.dirty()):o.kind==="duration"?Ty.test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"duration",code:y.invalid_string,message:o.message}),s.dirty()):o.kind==="ip"?jy(t.data,o.version)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"ip",code:y.invalid_string,message:o.message}),s.dirty()):o.kind==="jwt"?qy(t.data,o.alg)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"jwt",code:y.invalid_string,message:o.message}),s.dirty()):o.kind==="cidr"?$y(t.data,o.version)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"cidr",code:y.invalid_string,message:o.message}),s.dirty()):o.kind==="base64"?My.test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"base64",code:y.invalid_string,message:o.message}),s.dirty()):o.kind==="base64url"?Dy.test(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{validation:"base64url",code:y.invalid_string,message:o.message}),s.dirty()):O.assertNever(o);return{status:s.value,value:t.data}}_regex(t,n,s){return this.refinement(i=>t.test(i),{validation:n,code:y.invalid_string,..._.errToObj(s)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",..._.errToObj(t)})}url(t){return this._addCheck({kind:"url",..._.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",..._.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",..._.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",..._.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",..._.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",..._.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",..._.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",..._.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",..._.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",..._.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",..._.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",..._.errToObj(t)})}datetime(t){return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof t?.precision>"u"?null:t?.precision,offset:t?.offset??!1,local:t?.local??!1,..._.errToObj(t?.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof t?.precision>"u"?null:t?.precision,..._.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",..._.errToObj(t)})}regex(t,n){return this._addCheck({kind:"regex",regex:t,..._.errToObj(n)})}includes(t,n){return this._addCheck({kind:"includes",value:t,position:n?.position,..._.errToObj(n?.message)})}startsWith(t,n){return this._addCheck({kind:"startsWith",value:t,..._.errToObj(n)})}endsWith(t,n){return this._addCheck({kind:"endsWith",value:t,..._.errToObj(n)})}min(t,n){return this._addCheck({kind:"min",value:t,..._.errToObj(n)})}max(t,n){return this._addCheck({kind:"max",value:t,..._.errToObj(n)})}length(t,n){return this._addCheck({kind:"length",value:t,..._.errToObj(n)})}nonempty(t){return this.min(1,_.errToObj(t))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isCIDR(){return!!this._def.checks.find(t=>t.kind==="cidr")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get isBase64url(){return!!this._def.checks.find(t=>t.kind==="base64url")}get minLength(){let t=null;for(let n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxLength(){let t=null;for(let n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}};Ye.create=e=>new Ye({checks:[],typeName:w.ZodString,coerce:e?.coerce??!1,...T(e)});function By(e,t){let n=(e.toString().split(".")[1]||"").length,s=(t.toString().split(".")[1]||"").length,i=n>s?n:s,o=Number.parseInt(e.toFixed(i).replace(".","")),a=Number.parseInt(t.toFixed(i).replace(".",""));return o%a/10**i}var ct=class e extends C{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==k.number){let o=this._getOrReturnCtx(t);return I(o,{code:y.invalid_type,expected:k.number,received:o.parsedType}),A}let s,i=new z;for(let o of this._def.checks)o.kind==="int"?O.isInteger(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{code:y.invalid_type,expected:"integer",received:"float",message:o.message}),i.dirty()):o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(s=this._getOrReturnCtx(t,s),I(s,{code:y.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(s=this._getOrReturnCtx(t,s),I(s,{code:y.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="multipleOf"?By(t.data,o.value)!==0&&(s=this._getOrReturnCtx(t,s),I(s,{code:y.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):o.kind==="finite"?Number.isFinite(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{code:y.not_finite,message:o.message}),i.dirty()):O.assertNever(o);return{status:i.value,value:t.data}}gte(t,n){return this.setLimit("min",t,!0,_.toString(n))}gt(t,n){return this.setLimit("min",t,!1,_.toString(n))}lte(t,n){return this.setLimit("max",t,!0,_.toString(n))}lt(t,n){return this.setLimit("max",t,!1,_.toString(n))}setLimit(t,n,s,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:s,message:_.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:_.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:_.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:_.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:_.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:_.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:_.toString(n)})}finite(t){return this._addCheck({kind:"finite",message:_.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:_.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:_.toString(t)})}get minValue(){let t=null;for(let n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(let n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}get isInt(){return!!this._def.checks.find(t=>t.kind==="int"||t.kind==="multipleOf"&&O.isInteger(t.value))}get isFinite(){let t=null,n=null;for(let s of this._def.checks){if(s.kind==="finite"||s.kind==="int"||s.kind==="multipleOf")return!0;s.kind==="min"?(n===null||s.value>n)&&(n=s.value):s.kind==="max"&&(t===null||s.value<t)&&(t=s.value)}return Number.isFinite(n)&&Number.isFinite(t)}};ct.create=e=>new ct({checks:[],typeName:w.ZodNumber,coerce:e?.coerce||!1,...T(e)});var lt=class e extends C{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce)try{t.data=BigInt(t.data)}catch{return this._getInvalidInput(t)}if(this._getType(t)!==k.bigint)return this._getInvalidInput(t);let s,i=new z;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(s=this._getOrReturnCtx(t,s),I(s,{code:y.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(s=this._getOrReturnCtx(t,s),I(s,{code:y.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="multipleOf"?t.data%o.value!==BigInt(0)&&(s=this._getOrReturnCtx(t,s),I(s,{code:y.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):O.assertNever(o);return{status:i.value,value:t.data}}_getInvalidInput(t){let n=this._getOrReturnCtx(t);return I(n,{code:y.invalid_type,expected:k.bigint,received:n.parsedType}),A}gte(t,n){return this.setLimit("min",t,!0,_.toString(n))}gt(t,n){return this.setLimit("min",t,!1,_.toString(n))}lte(t,n){return this.setLimit("max",t,!0,_.toString(n))}lt(t,n){return this.setLimit("max",t,!1,_.toString(n))}setLimit(t,n,s,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:s,message:_.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:_.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:_.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:_.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:_.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:_.toString(n)})}get minValue(){let t=null;for(let n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(let n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}};lt.create=e=>new lt({checks:[],typeName:w.ZodBigInt,coerce:e?.coerce??!1,...T(e)});var ut=class extends C{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==k.boolean){let s=this._getOrReturnCtx(t);return I(s,{code:y.invalid_type,expected:k.boolean,received:s.parsedType}),A}return Z(t.data)}};ut.create=e=>new ut({typeName:w.ZodBoolean,coerce:e?.coerce||!1,...T(e)});var dt=class e extends C{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==k.date){let o=this._getOrReturnCtx(t);return I(o,{code:y.invalid_type,expected:k.date,received:o.parsedType}),A}if(Number.isNaN(t.data.getTime())){let o=this._getOrReturnCtx(t);return I(o,{code:y.invalid_date}),A}let s=new z,i;for(let o of this._def.checks)o.kind==="min"?t.data.getTime()<o.value&&(i=this._getOrReturnCtx(t,i),I(i,{code:y.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),s.dirty()):o.kind==="max"?t.data.getTime()>o.value&&(i=this._getOrReturnCtx(t,i),I(i,{code:y.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),s.dirty()):O.assertNever(o);return{status:s.value,value:new Date(t.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(t,n){return this._addCheck({kind:"min",value:t.getTime(),message:_.toString(n)})}max(t,n){return this._addCheck({kind:"max",value:t.getTime(),message:_.toString(n)})}get minDate(){let t=null;for(let n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(let n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t!=null?new Date(t):null}};dt.create=e=>new dt({checks:[],coerce:e?.coerce||!1,typeName:w.ZodDate,...T(e)});var Gt=class extends C{_parse(t){if(this._getType(t)!==k.symbol){let s=this._getOrReturnCtx(t);return I(s,{code:y.invalid_type,expected:k.symbol,received:s.parsedType}),A}return Z(t.data)}};Gt.create=e=>new Gt({typeName:w.ZodSymbol,...T(e)});var pt=class extends C{_parse(t){if(this._getType(t)!==k.undefined){let s=this._getOrReturnCtx(t);return I(s,{code:y.invalid_type,expected:k.undefined,received:s.parsedType}),A}return Z(t.data)}};pt.create=e=>new pt({typeName:w.ZodUndefined,...T(e)});var mt=class extends C{_parse(t){if(this._getType(t)!==k.null){let s=this._getOrReturnCtx(t);return I(s,{code:y.invalid_type,expected:k.null,received:s.parsedType}),A}return Z(t.data)}};mt.create=e=>new mt({typeName:w.ZodNull,...T(e)});var Ze=class extends C{constructor(){super(...arguments),this._any=!0}_parse(t){return Z(t.data)}};Ze.create=e=>new Ze({typeName:w.ZodAny,...T(e)});var je=class extends C{constructor(){super(...arguments),this._unknown=!0}_parse(t){return Z(t.data)}};je.create=e=>new je({typeName:w.ZodUnknown,...T(e)});var Ie=class extends C{_parse(t){let n=this._getOrReturnCtx(t);return I(n,{code:y.invalid_type,expected:k.never,received:n.parsedType}),A}};Ie.create=e=>new Ie({typeName:w.ZodNever,...T(e)});var Yt=class extends C{_parse(t){if(this._getType(t)!==k.undefined){let s=this._getOrReturnCtx(t);return I(s,{code:y.invalid_type,expected:k.void,received:s.parsedType}),A}return Z(t.data)}};Yt.create=e=>new Yt({typeName:w.ZodVoid,...T(e)});var qe=class e extends C{_parse(t){let{ctx:n,status:s}=this._processInputParams(t),i=this._def;if(n.parsedType!==k.array)return I(n,{code:y.invalid_type,expected:k.array,received:n.parsedType}),A;if(i.exactLength!==null){let a=n.data.length>i.exactLength.value,c=n.data.length<i.exactLength.value;(a||c)&&(I(n,{code:a?y.too_big:y.too_small,minimum:c?i.exactLength.value:void 0,maximum:a?i.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:i.exactLength.message}),s.dirty())}if(i.minLength!==null&&n.data.length<i.minLength.value&&(I(n,{code:y.too_small,minimum:i.minLength.value,type:"array",inclusive:!0,exact:!1,message:i.minLength.message}),s.dirty()),i.maxLength!==null&&n.data.length>i.maxLength.value&&(I(n,{code:y.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),s.dirty()),n.common.async)return Promise.all([...n.data].map((a,c)=>i.type._parseAsync(new me(n,a,n.path,c)))).then(a=>z.mergeArray(s,a));let o=[...n.data].map((a,c)=>i.type._parseSync(new me(n,a,n.path,c)));return z.mergeArray(s,o)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:_.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:_.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:_.toString(n)}})}nonempty(t){return this.min(1,t)}};qe.create=(e,t)=>new qe({type:e,minLength:null,maxLength:null,exactLength:null,typeName:w.ZodArray,...T(t)});function Wt(e){if(e instanceof ie){let t={};for(let n in e.shape){let s=e.shape[n];t[n]=pe.create(Wt(s))}return new ie({...e._def,shape:()=>t})}else return e instanceof qe?new qe({...e._def,type:Wt(e.element)}):e instanceof pe?pe.create(Wt(e.unwrap())):e instanceof xe?xe.create(Wt(e.unwrap())):e instanceof we?we.create(e.items.map(t=>Wt(t))):e}var ie=class e extends C{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let t=this._def.shape(),n=O.objectKeys(t);return this._cached={shape:t,keys:n},this._cached}_parse(t){if(this._getType(t)!==k.object){let p=this._getOrReturnCtx(t);return I(p,{code:y.invalid_type,expected:k.object,received:p.parsedType}),A}let{status:s,ctx:i}=this._processInputParams(t),{shape:o,keys:a}=this._getCached(),c=[];if(!(this._def.catchall instanceof Ie&&this._def.unknownKeys==="strip"))for(let p in i.data)a.includes(p)||c.push(p);let u=[];for(let p of a){let m=o[p],h=i.data[p];u.push({key:{status:"valid",value:p},value:m._parse(new me(i,h,i.path,p)),alwaysSet:p in i.data})}if(this._def.catchall instanceof Ie){let p=this._def.unknownKeys;if(p==="passthrough")for(let m of c)u.push({key:{status:"valid",value:m},value:{status:"valid",value:i.data[m]}});else if(p==="strict")c.length>0&&(I(i,{code:y.unrecognized_keys,keys:c}),s.dirty());else if(p!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let p=this._def.catchall;for(let m of c){let h=i.data[m];u.push({key:{status:"valid",value:m},value:p._parse(new me(i,h,i.path,m)),alwaysSet:m in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let p=[];for(let m of u){let h=await m.key,f=await m.value;p.push({key:h,value:f,alwaysSet:m.alwaysSet})}return p}).then(p=>z.mergeObjectSync(s,p)):z.mergeObjectSync(s,u)}get shape(){return this._def.shape()}strict(t){return _.errToObj,new e({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(n,s)=>{let i=this._def.errorMap?.(n,s).message??s.defaultError;return n.code==="unrecognized_keys"?{message:_.errToObj(t).message??i}:{message:i}}}:{}})}strip(){return new e({...this._def,unknownKeys:"strip"})}passthrough(){return new e({...this._def,unknownKeys:"passthrough"})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:w.ZodObject})}setKey(t,n){return this.augment({[t]:n})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let n={};for(let s of O.objectKeys(t))t[s]&&this.shape[s]&&(n[s]=this.shape[s]);return new e({...this._def,shape:()=>n})}omit(t){let n={};for(let s of O.objectKeys(this.shape))t[s]||(n[s]=this.shape[s]);return new e({...this._def,shape:()=>n})}deepPartial(){return Wt(this)}partial(t){let n={};for(let s of O.objectKeys(this.shape)){let i=this.shape[s];t&&!t[s]?n[s]=i:n[s]=i.optional()}return new e({...this._def,shape:()=>n})}required(t){let n={};for(let s of O.objectKeys(this.shape))if(t&&!t[s])n[s]=this.shape[s];else{let o=this.shape[s];for(;o instanceof pe;)o=o._def.innerType;n[s]=o}return new e({...this._def,shape:()=>n})}keyof(){return ou(O.objectKeys(this.shape))}};ie.create=(e,t)=>new ie({shape:()=>e,unknownKeys:"strip",catchall:Ie.create(),typeName:w.ZodObject,...T(t)});ie.strictCreate=(e,t)=>new ie({shape:()=>e,unknownKeys:"strict",catchall:Ie.create(),typeName:w.ZodObject,...T(t)});ie.lazycreate=(e,t)=>new ie({shape:e,unknownKeys:"strip",catchall:Ie.create(),typeName:w.ZodObject,...T(t)});var gt=class extends C{_parse(t){let{ctx:n}=this._processInputParams(t),s=this._def.options;function i(o){for(let c of o)if(c.result.status==="valid")return c.result;for(let c of o)if(c.result.status==="dirty")return n.common.issues.push(...c.ctx.common.issues),c.result;let a=o.map(c=>new se(c.ctx.common.issues));return I(n,{code:y.invalid_union,unionErrors:a}),A}if(n.common.async)return Promise.all(s.map(async o=>{let a={...n,common:{...n.common,issues:[]},parent:null};return{result:await o._parseAsync({data:n.data,path:n.path,parent:a}),ctx:a}})).then(i);{let o,a=[];for(let u of s){let p={...n,common:{...n.common,issues:[]},parent:null},m=u._parseSync({data:n.data,path:n.path,parent:p});if(m.status==="valid")return m;m.status==="dirty"&&!o&&(o={result:m,ctx:p}),p.common.issues.length&&a.push(p.common.issues)}if(o)return n.common.issues.push(...o.ctx.common.issues),o.result;let c=a.map(u=>new se(u));return I(n,{code:y.invalid_union,unionErrors:c}),A}}get options(){return this._def.options}};gt.create=(e,t)=>new gt({options:e,typeName:w.ZodUnion,...T(t)});var Fe=e=>e instanceof ht?Fe(e.schema):e instanceof ge?Fe(e.innerType()):e instanceof yt?[e.value]:e instanceof St?e.options:e instanceof bt?O.objectValues(e.enum):e instanceof It?Fe(e._def.innerType):e instanceof pt?[void 0]:e instanceof mt?[null]:e instanceof pe?[void 0,...Fe(e.unwrap())]:e instanceof xe?[null,...Fe(e.unwrap())]:e instanceof En||e instanceof kt?Fe(e.unwrap()):e instanceof vt?Fe(e._def.innerType):[],yr=class e extends C{_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==k.object)return I(n,{code:y.invalid_type,expected:k.object,received:n.parsedType}),A;let s=this.discriminator,i=n.data[s],o=this.optionsMap.get(i);return o?n.common.async?o._parseAsync({data:n.data,path:n.path,parent:n}):o._parseSync({data:n.data,path:n.path,parent:n}):(I(n,{code:y.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[s]}),A)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,s){let i=new Map;for(let o of n){let a=Fe(o.shape[t]);if(!a.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let c of a){if(i.has(c))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(c)}`);i.set(c,o)}}return new e({typeName:w.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:i,...T(s)})}};function ei(e,t){let n=Ae(e),s=Ae(t);if(e===t)return{valid:!0,data:e};if(n===k.object&&s===k.object){let i=O.objectKeys(t),o=O.objectKeys(e).filter(c=>i.indexOf(c)!==-1),a={...e,...t};for(let c of o){let u=ei(e[c],t[c]);if(!u.valid)return{valid:!1};a[c]=u.data}return{valid:!0,data:a}}else if(n===k.array&&s===k.array){if(e.length!==t.length)return{valid:!1};let i=[];for(let o=0;o<e.length;o++){let a=e[o],c=t[o],u=ei(a,c);if(!u.valid)return{valid:!1};i.push(u.data)}return{valid:!0,data:i}}else return n===k.date&&s===k.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}var ft=class extends C{_parse(t){let{status:n,ctx:s}=this._processInputParams(t),i=(o,a)=>{if(fr(o)||fr(a))return A;let c=ei(o.value,a.value);return c.valid?((hr(o)||hr(a))&&n.dirty(),{status:n.value,value:c.data}):(I(s,{code:y.invalid_intersection_types}),A)};return s.common.async?Promise.all([this._def.left._parseAsync({data:s.data,path:s.path,parent:s}),this._def.right._parseAsync({data:s.data,path:s.path,parent:s})]).then(([o,a])=>i(o,a)):i(this._def.left._parseSync({data:s.data,path:s.path,parent:s}),this._def.right._parseSync({data:s.data,path:s.path,parent:s}))}};ft.create=(e,t,n)=>new ft({left:e,right:t,typeName:w.ZodIntersection,...T(n)});var we=class e extends C{_parse(t){let{status:n,ctx:s}=this._processInputParams(t);if(s.parsedType!==k.array)return I(s,{code:y.invalid_type,expected:k.array,received:s.parsedType}),A;if(s.data.length<this._def.items.length)return I(s,{code:y.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),A;!this._def.rest&&s.data.length>this._def.items.length&&(I(s,{code:y.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());let o=[...s.data].map((a,c)=>{let u=this._def.items[c]||this._def.rest;return u?u._parse(new me(s,a,s.path,c)):null}).filter(a=>!!a);return s.common.async?Promise.all(o).then(a=>z.mergeArray(n,a)):z.mergeArray(n,o)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};we.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new we({items:e,typeName:w.ZodTuple,rest:null,...T(t)})};var Sr=class e extends C{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:n,ctx:s}=this._processInputParams(t);if(s.parsedType!==k.object)return I(s,{code:y.invalid_type,expected:k.object,received:s.parsedType}),A;let i=[],o=this._def.keyType,a=this._def.valueType;for(let c in s.data)i.push({key:o._parse(new me(s,c,s.path,c)),value:a._parse(new me(s,s.data[c],s.path,c)),alwaysSet:c in s.data});return s.common.async?z.mergeObjectAsync(n,i):z.mergeObjectSync(n,i)}get element(){return this._def.valueType}static create(t,n,s){return n instanceof C?new e({keyType:t,valueType:n,typeName:w.ZodRecord,...T(s)}):new e({keyType:Ye.create(),valueType:t,typeName:w.ZodRecord,...T(n)})}},Zt=class extends C{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:n,ctx:s}=this._processInputParams(t);if(s.parsedType!==k.map)return I(s,{code:y.invalid_type,expected:k.map,received:s.parsedType}),A;let i=this._def.keyType,o=this._def.valueType,a=[...s.data.entries()].map(([c,u],p)=>({key:i._parse(new me(s,c,s.path,[p,"key"])),value:o._parse(new me(s,u,s.path,[p,"value"]))}));if(s.common.async){let c=new Map;return Promise.resolve().then(async()=>{for(let u of a){let p=await u.key,m=await u.value;if(p.status==="aborted"||m.status==="aborted")return A;(p.status==="dirty"||m.status==="dirty")&&n.dirty(),c.set(p.value,m.value)}return{status:n.value,value:c}})}else{let c=new Map;for(let u of a){let p=u.key,m=u.value;if(p.status==="aborted"||m.status==="aborted")return A;(p.status==="dirty"||m.status==="dirty")&&n.dirty(),c.set(p.value,m.value)}return{status:n.value,value:c}}}};Zt.create=(e,t,n)=>new Zt({valueType:t,keyType:e,typeName:w.ZodMap,...T(n)});var Jt=class e extends C{_parse(t){let{status:n,ctx:s}=this._processInputParams(t);if(s.parsedType!==k.set)return I(s,{code:y.invalid_type,expected:k.set,received:s.parsedType}),A;let i=this._def;i.minSize!==null&&s.data.size<i.minSize.value&&(I(s,{code:y.too_small,minimum:i.minSize.value,type:"set",inclusive:!0,exact:!1,message:i.minSize.message}),n.dirty()),i.maxSize!==null&&s.data.size>i.maxSize.value&&(I(s,{code:y.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),n.dirty());let o=this._def.valueType;function a(u){let p=new Set;for(let m of u){if(m.status==="aborted")return A;m.status==="dirty"&&n.dirty(),p.add(m.value)}return{status:n.value,value:p}}let c=[...s.data.values()].map((u,p)=>o._parse(new me(s,u,s.path,p)));return s.common.async?Promise.all(c).then(u=>a(u)):a(c)}min(t,n){return new e({...this._def,minSize:{value:t,message:_.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:_.toString(n)}})}size(t,n){return this.min(t,n).max(t,n)}nonempty(t){return this.min(1,t)}};Jt.create=(e,t)=>new Jt({valueType:e,minSize:null,maxSize:null,typeName:w.ZodSet,...T(t)});var br=class e extends C{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==k.function)return I(n,{code:y.invalid_type,expected:k.function,received:n.parsedType}),A;function s(c,u){return _n({data:c,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Kt(),Ue].filter(p=>!!p),issueData:{code:y.invalid_arguments,argumentsError:u}})}function i(c,u){return _n({data:c,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Kt(),Ue].filter(p=>!!p),issueData:{code:y.invalid_return_type,returnTypeError:u}})}let o={errorMap:n.common.contextualErrorMap},a=n.data;if(this._def.returns instanceof Je){let c=this;return Z(async function(...u){let p=new se([]),m=await c._def.args.parseAsync(u,o).catch(b=>{throw p.addIssue(s(u,b)),p}),h=await Reflect.apply(a,this,m);return await c._def.returns._def.type.parseAsync(h,o).catch(b=>{throw p.addIssue(i(h,b)),p})})}else{let c=this;return Z(function(...u){let p=c._def.args.safeParse(u,o);if(!p.success)throw new se([s(u,p.error)]);let m=Reflect.apply(a,this,p.data),h=c._def.returns.safeParse(m,o);if(!h.success)throw new se([i(m,h.error)]);return h.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:we.create(t).rest(je.create())})}returns(t){return new e({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,n,s){return new e({args:t||we.create([]).rest(je.create()),returns:n||je.create(),typeName:w.ZodFunction,...T(s)})}},ht=class extends C{get schema(){return this._def.getter()}_parse(t){let{ctx:n}=this._processInputParams(t);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};ht.create=(e,t)=>new ht({getter:e,typeName:w.ZodLazy,...T(t)});var yt=class extends C{_parse(t){if(t.data!==this._def.value){let n=this._getOrReturnCtx(t);return I(n,{received:n.data,code:y.invalid_literal,expected:this._def.value}),A}return{status:"valid",value:t.data}}get value(){return this._def.value}};yt.create=(e,t)=>new yt({value:e,typeName:w.ZodLiteral,...T(t)});function ou(e,t){return new St({values:e,typeName:w.ZodEnum,...T(t)})}var St=class e extends C{_parse(t){if(typeof t.data!="string"){let n=this._getOrReturnCtx(t),s=this._def.values;return I(n,{expected:O.joinValues(s),received:n.parsedType,code:y.invalid_type}),A}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(t.data)){let n=this._getOrReturnCtx(t),s=this._def.values;return I(n,{received:n.data,code:y.invalid_enum_value,options:s}),A}return Z(t.data)}get options(){return this._def.values}get enum(){let t={};for(let n of this._def.values)t[n]=n;return t}get Values(){let t={};for(let n of this._def.values)t[n]=n;return t}get Enum(){let t={};for(let n of this._def.values)t[n]=n;return t}extract(t,n=this._def){return e.create(t,{...this._def,...n})}exclude(t,n=this._def){return e.create(this.options.filter(s=>!t.includes(s)),{...this._def,...n})}};St.create=ou;var bt=class extends C{_parse(t){let n=O.getValidEnumValues(this._def.values),s=this._getOrReturnCtx(t);if(s.parsedType!==k.string&&s.parsedType!==k.number){let i=O.objectValues(n);return I(s,{expected:O.joinValues(i),received:s.parsedType,code:y.invalid_type}),A}if(this._cache||(this._cache=new Set(O.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let i=O.objectValues(n);return I(s,{received:s.data,code:y.invalid_enum_value,options:i}),A}return Z(t.data)}get enum(){return this._def.values}};bt.create=(e,t)=>new bt({values:e,typeName:w.ZodNativeEnum,...T(t)});var Je=class extends C{unwrap(){return this._def.type}_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==k.promise&&n.common.async===!1)return I(n,{code:y.invalid_type,expected:k.promise,received:n.parsedType}),A;let s=n.parsedType===k.promise?n.data:Promise.resolve(n.data);return Z(s.then(i=>this._def.type.parseAsync(i,{path:n.path,errorMap:n.common.contextualErrorMap})))}};Je.create=(e,t)=>new Je({type:e,typeName:w.ZodPromise,...T(t)});var ge=class extends C{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===w.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){let{status:n,ctx:s}=this._processInputParams(t),i=this._def.effect||null,o={addIssue:a=>{I(s,a),a.fatal?n.abort():n.dirty()},get path(){return s.path}};if(o.addIssue=o.addIssue.bind(o),i.type==="preprocess"){let a=i.transform(s.data,o);if(s.common.async)return Promise.resolve(a).then(async c=>{if(n.value==="aborted")return A;let u=await this._def.schema._parseAsync({data:c,path:s.path,parent:s});return u.status==="aborted"?A:u.status==="dirty"?at(u.value):n.value==="dirty"?at(u.value):u});{if(n.value==="aborted")return A;let c=this._def.schema._parseSync({data:a,path:s.path,parent:s});return c.status==="aborted"?A:c.status==="dirty"?at(c.value):n.value==="dirty"?at(c.value):c}}if(i.type==="refinement"){let a=c=>{let u=i.refinement(c,o);if(s.common.async)return Promise.resolve(u);if(u instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return c};if(s.common.async===!1){let c=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});return c.status==="aborted"?A:(c.status==="dirty"&&n.dirty(),a(c.value),{status:n.value,value:c.value})}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(c=>c.status==="aborted"?A:(c.status==="dirty"&&n.dirty(),a(c.value).then(()=>({status:n.value,value:c.value}))))}if(i.type==="transform")if(s.common.async===!1){let a=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});if(!Ge(a))return A;let c=i.transform(a.value,o);if(c instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:c}}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(a=>Ge(a)?Promise.resolve(i.transform(a.value,o)).then(c=>({status:n.value,value:c})):A);O.assertNever(i)}};ge.create=(e,t,n)=>new ge({schema:e,typeName:w.ZodEffects,effect:t,...T(n)});ge.createWithPreprocess=(e,t,n)=>new ge({schema:t,effect:{type:"preprocess",transform:e},typeName:w.ZodEffects,...T(n)});var pe=class extends C{_parse(t){return this._getType(t)===k.undefined?Z(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};pe.create=(e,t)=>new pe({innerType:e,typeName:w.ZodOptional,...T(t)});var xe=class extends C{_parse(t){return this._getType(t)===k.null?Z(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};xe.create=(e,t)=>new xe({innerType:e,typeName:w.ZodNullable,...T(t)});var It=class extends C{_parse(t){let{ctx:n}=this._processInputParams(t),s=n.data;return n.parsedType===k.undefined&&(s=this._def.defaultValue()),this._def.innerType._parse({data:s,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};It.create=(e,t)=>new It({innerType:e,typeName:w.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...T(t)});var vt=class extends C{_parse(t){let{ctx:n}=this._processInputParams(t),s={...n,common:{...n.common,issues:[]}},i=this._def.innerType._parse({data:s.data,path:s.path,parent:{...s}});return zt(i)?i.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new se(s.common.issues)},input:s.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new se(s.common.issues)},input:s.data})}}removeCatch(){return this._def.innerType}};vt.create=(e,t)=>new vt({innerType:e,typeName:w.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...T(t)});var Xt=class extends C{_parse(t){if(this._getType(t)!==k.nan){let s=this._getOrReturnCtx(t);return I(s,{code:y.invalid_type,expected:k.nan,received:s.parsedType}),A}return{status:"valid",value:t.data}}};Xt.create=e=>new Xt({typeName:w.ZodNaN,...T(e)});var Hy=Symbol("zod_brand"),En=class extends C{_parse(t){let{ctx:n}=this._processInputParams(t),s=n.data;return this._def.type._parse({data:s,path:n.path,parent:n})}unwrap(){return this._def.type}},An=class e extends C{_parse(t){let{status:n,ctx:s}=this._processInputParams(t);if(s.common.async)return(async()=>{let o=await this._def.in._parseAsync({data:s.data,path:s.path,parent:s});return o.status==="aborted"?A:o.status==="dirty"?(n.dirty(),at(o.value)):this._def.out._parseAsync({data:o.value,path:s.path,parent:s})})();{let i=this._def.in._parseSync({data:s.data,path:s.path,parent:s});return i.status==="aborted"?A:i.status==="dirty"?(n.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:s.path,parent:s})}}static create(t,n){return new e({in:t,out:n,typeName:w.ZodPipeline})}},kt=class extends C{_parse(t){let n=this._def.innerType._parse(t),s=i=>(Ge(i)&&(i.value=Object.freeze(i.value)),i);return zt(n)?n.then(i=>s(i)):s(n)}unwrap(){return this._def.innerType}};kt.create=(e,t)=>new kt({innerType:e,typeName:w.ZodReadonly,...T(t)});function nu(e,t){let n=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof n=="string"?{message:n}:n}function au(e,t={},n){return e?Ze.create().superRefine((s,i)=>{let o=e(s);if(o instanceof Promise)return o.then(a=>{if(!a){let c=nu(t,s),u=c.fatal??n??!0;i.addIssue({code:"custom",...c,fatal:u})}});if(!o){let a=nu(t,s),c=a.fatal??n??!0;i.addIssue({code:"custom",...a,fatal:c})}}):Ze.create()}var Vy={object:ie.lazycreate},w;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(w||(w={}));var Ky=(e,t={message:`Input not instance of ${e.name}`})=>au(n=>n instanceof e,t),cu=Ye.create,lu=ct.create,zy=Xt.create,Wy=lt.create,uu=ut.create,Gy=dt.create,Yy=Gt.create,Zy=pt.create,Jy=mt.create,Xy=Ze.create,Qy=je.create,eS=Ie.create,tS=Yt.create,nS=qe.create,rS=ie.create,sS=ie.strictCreate,iS=gt.create,oS=yr.create,aS=ft.create,cS=we.create,lS=Sr.create,uS=Zt.create,dS=Jt.create,pS=br.create,mS=ht.create,gS=yt.create,fS=St.create,hS=bt.create,yS=Je.create,SS=ge.create,bS=pe.create,IS=xe.create,vS=ge.createWithPreprocess,kS=An.create,_S=()=>cu().optional(),ES=()=>lu().optional(),AS=()=>uu().optional(),wS={string:(e=>Ye.create({...e,coerce:!0})),number:(e=>ct.create({...e,coerce:!0})),boolean:(e=>ut.create({...e,coerce:!0})),bigint:(e=>lt.create({...e,coerce:!0})),date:(e=>dt.create({...e,coerce:!0}))};var xS=A;var ti=["active","paused","archived"];var ni=["local_trusted","authenticated"],ri=["private","public"],si=["loopback","lan","tailnet","custom"],ii=["auto","explicit"],oi=["active","paused","idle","running","error","pending_approval","terminated"],wn=["process","http","acpx_local","claude_local","codex_local","cursor_cloud","gemini_local","opencode_local","pi_local","cursor","openclaw_gateway"],ai=["ceo","cto","cmo","cfo","security","engineer","designer","pm","qa","devops","researcher","general"];var ci=["cheap"],li=["bot","cpu","brain","zap","rocket","code","terminal","shield","eye","search","wrench","hammer","lightbulb","sparkles","star","heart","flame","bug","cog","database","globe","lock","mail","message-square","file-code","git-branch","package","puzzle","target","wand","atom","circuit-board","radar","swords","telescope","microscope","crown","gem","hexagon","pentagon","fingerprint"],ui=["folder","rocket","code","terminal","database","globe","package","boxes","box","layers","briefcase","compass","target","flame","zap","star","bug","wrench","hammer","lightbulb","sparkles","shield","lock","search","cog","brain","cpu","git-branch","file-code","puzzle","gem","atom","heart","mail","message-square","crown","radar","telescope","hexagon"],xn=["backlog","todo","in_progress","in_review","done","blocked","cancelled"],du=["backlog","todo","in_progress","in_review","blocked","done"],di=du.join(","),Te=["critical","high","medium","low"],Ir=["standard","planning"],pu=1024,pi=["user","agent","system"],mi=["message","system_notice"],gi=["neutral","info","success","warning","danger"],fi=["text","code","key_value","issue_link","agent_link","run_link"];function hi(e){return typeof e!="number"||!Number.isFinite(e)?0:Math.min(pu,Math.max(0,Math.floor(e)))}var yi=["suggest_tasks","ask_user_questions","request_confirmation","request_checkbox_confirmation"],Qt=200,Si=["pending","accepted","rejected","answered","cancelled","expired","failed"],bi=["none","wake_assignee","wake_assignee_on_accept"];var Ii=["default","plugin_operation"],vi=["missing_disposition","stranded_assigned_issue","workspace_validation","active_run_watchdog","issue_graph_liveness"],ki=["active","escalated","resolved","cancelled"],_i=["agent","user","board","system"],Ei=["restored","delegated","false_positive","blocked","escalated","cancelled"];var Ai=["pause","resume","cancel","restore"];var wi=["manual","after_active_runs_finish"],mu="continuation-summary",gu=[mu],lT=new Set(gu);var xi=["open","resolved"],Ti=["active","stale","orphaned"],Ri=["exact","duplicate","fuzzy","ambiguous","missing"],Ci=["normal","auto"],vr=["review","approval"],kr=["assignee","board"],_r=["external_service"],Er=["wake_owner","create_recovery_issue","escalate_to_board"],Pi=["idle","pending","changes_requested","completed"],Oi=["scheduled","triggered","cleared"],Ni=["manual","triggered","done","cancelled","invalid_status","invalid_assignee","dispatch_skipped","timeout_exceeded","max_attempts_exhausted"],Li=["approved","changes_requested"],Mi=["company","team","agent","task"],Di=["planned","active","achieved","cancelled"],Ui=["backlog","planned","in_progress","completed","cancelled"],Fi=["local","ssh","sandbox","plugin"],ji=["active","archived"],qi=["active","released","expired","failed","retained"];var $i=["pending","success","failed"],en=["active","paused","archived"],tn=["coalesce_if_active","always_enqueue","skip_if_active"],nn=["skip_missed","enqueue_missed_with_cap"],Tn=["schedule","webhook","api"],_t=["bearer","hmac_sha256","github_hmac","none"],Bi=["text","textarea","number","boolean","select"];var Hi=["hire_agent","approve_ceo_strategy","budget_override_required","request_board_approval"];var Et=["local_encrypted","aws_secrets_manager","gcp_secret_manager","vault"],Ar=["ready","warning","coming_soon","disabled"];var fu=["active","disabled","archived","deleted"],hu=["paperclip_managed","external_reference"];var yu=["agent","project","environment","routine","plugin","issue","run","system"];var Vi=["local_disk","s3"],Ki=["metered_api","subscription_included","subscription_overage","credits","fixed","unknown"],zi=["inference_charge","platform_fee","credit_purchase","credit_refund","credit_expiry","byok_fee","gateway_overhead","log_storage_charge","logpush_charge","provisioned_capacity_charge","training_charge","custom_model_import_charge","custom_model_storage_charge","manual_adjustment"],Wi=["debit","credit"],Gi=["input_token","output_token","cached_input_token","request","credit_usd","credit_unit","model_unit_minute","model_unit_hour","gb_month","train_token","unknown"],Yi=["company","agent","project"],Zi=["billed_cents"],Ji=["calendar_month_utc","lifetime"];var Xi=["keep_paused","raise_budget_and_resume"];var rn=["owner","admin","operator","viewer"];var Qi=["human","agent","both"],wr=["human","agent"],eo=["pending_approval","approved","rejected"],xr=["agents:create","environments:manage","users:invite","users:manage_permissions","tasks:assign","tasks:assign_scope","tasks:manage_active_checkouts","joins:approve"];var Tr=["installed","ready","disabled","error","upgrade_pending","uninstalled"],Rr=["connector","workspace","automation","ui"],Cr=["companies.read","projects.read","project.workspaces.read","execution.workspaces.read","issues.read","issue.relations.read","issue.subtree.read","issue.comments.read","issue.documents.read","agents.read","goals.read","goals.create","goals.update","activity.read","costs.read","issues.orchestration.read","access.members.read","access.invites.read","authorization.grants.read","authorization.policies.read","authorization.audit.read","database.namespace.read","issues.create","issues.update","issue.relations.write","issues.checkout","issues.wakeup","issue.comments.create","issue.interactions.create","issue.documents.write","projects.managed","routines.managed","skills.managed","agents.pause","agents.resume","agents.invoke","agents.managed","access.members.write","access.invites.write","authorization.grants.write","authorization.policies.write","agent.sessions.create","agent.sessions.list","agent.sessions.send","agent.sessions.close","activity.log.write","metrics.write","telemetry.track","database.namespace.migrate","database.namespace.write","plugin.state.read","plugin.state.write","events.subscribe","events.emit","jobs.schedule","webhooks.receive","api.routes.register","http.outbound","secrets.read-ref","environment.drivers.register","local.folders","agent.tools.register","instance.settings.register","ui.sidebar.register","ui.page.register","ui.detailTab.register","ui.dashboardWidget.register","ui.commentAnnotation.register","ui.action.register"];var to=["companies","projects","goals","agents","issues","issue_documents","issue_relations","issue_comments","heartbeat_runs","cost_events","approvals","issue_approvals","budget_incidents"],no=["GET","POST","PATCH","DELETE"],ro=["board","agent","board-or-agent","webhook"],so=["none","required-for-agent-in-progress","always-for-agent"],Pr=["page","detailTab","taskDetailView","dashboardWidget","sidebar","routeSidebar","sidebarPanel","projectSidebarItem","globalToolbarButton","toolbarButton","contextMenuItem","commentAnnotation","commentContextMenuItem","settingsPage","companySettingsPage"],Su=["dashboard","onboarding","companies","company","settings","plugins","org","agents","projects","issues","goals","approvals","costs","activity","inbox","design-guide","tests"],Or=["general","environments","access","members","invites","secrets","instance"],io=["page","detailTab","taskDetailView","dashboardWidget","sidebar","sidebarPanel","projectSidebarItem","globalToolbarButton","toolbarButton","contextMenuItem","commentAnnotation","commentContextMenuItem","settingsPage"],oo=["navigate","openModal","openDrawer","openPopover","performAction","deepLink"],ao=["inline","compact","default","wide","full"],co=["hostInline","hostOverlay","hostRoute","external","iframe"],Rn=["project","issue","agent","goal","run","comment","execution_workspace","project_workspace"],sn=["instance","company","project","project_workspace","agent","issue","goal","run"];var lo=r.string().trim().min(1).default("process").describe(`Known built-in adapters: ${wn.join(", ")}. External adapters may register additional non-empty string types at runtime.`),uo=r.string().trim().min(1).optional();var Nr=["standard","low_trust_review"];var Cn="low_trust_review";var Lr="quarantine";function on(e){let t=e?.trim();return t||void 0}function po(e){let t=on(e)?.toLowerCase();return t==="127.0.0.1"||t==="localhost"||t==="::1"}function mo(e){let t=on(e)?.toLowerCase();return t==="0.0.0.0"||t==="::"}function bu(e,t){let n=on(e),s=on(t?.tailnetBindHost);return!n||po(n)?"loopback":mo(n)?"lan":s&&n===s?"tailnet":"custom"}function go(e){let t=e.bind??bu(e.host),n=on(e.customBindHost),s=[];if(e.deploymentMode==="local_trusted"&&t!=="loopback"&&s.push("local_trusted requires server.bind=loopback"),t==="custom"&&!n){let i=on(e.host);(!i||po(i)||mo(i))&&s.push("server.customBindHost is required when server.bind=custom")}return e.deploymentMode==="authenticated"&&e.deploymentExposure==="public"&&t==="tailnet"&&s.push("server.bind=tailnet is only supported for authenticated/private deployments"),s}var Mr=[3,7,14],Dr=[1,2,4],Ur=[1,3,6],Fr=24,Pn=1,On=720,At={dailyDays:7,weeklyWeeks:4,monthlyMonths:1};var jr=["all","issues","comments","documents","artifacts","agents","projects"];var qr=["joined","left"];var Iu=r.string().uuid(),vu=r.object({orderedIds:r.array(Iu),updatedAt:r.coerce.date().nullable()}),ku=r.object({orderedIds:r.array(Iu)});var ho=r.enum(qr),_u=r.object({state:ho});var yo=r.enum(["active","idle","in_review","archived","cleanup_failed"]),Eu=r.object({environmentId:r.string().uuid().optional().nullable(),provisionCommand:r.string().optional().nullable(),teardownCommand:r.string().optional().nullable(),cleanupCommand:r.string().optional().nullable(),workspaceRuntime:r.record(r.string(),r.unknown()).optional().nullable(),desiredState:r.enum(["running","stopped","manual"]).optional().nullable(),serviceStates:r.record(r.enum(["running","stopped","manual"])).optional().nullable()}).strict(),CS=r.object({workspaceCommandId:r.string().min(1).optional().nullable(),runtimeServiceId:r.string().uuid().optional().nullable(),serviceIndex:r.number().int().nonnegative().optional().nullable()}).strict(),So=r.enum(["ready","ready_with_warnings","blocked"]),bo=r.enum(["archive_record","stop_runtime_services","cleanup_command","teardown_command","git_worktree_remove","git_branch_delete","remove_local_directory"]),Io=r.object({kind:bo,label:r.string(),description:r.string(),command:r.string().nullable()}).strict(),vo=r.object({id:r.string().uuid(),identifier:r.string().nullable(),title:r.string(),status:r.string(),isTerminal:r.boolean()}).strict(),ko=r.object({repoRoot:r.string().nullable(),workspacePath:r.string().nullable(),branchName:r.string().nullable(),baseRef:r.string().nullable(),hasDirtyTrackedFiles:r.boolean(),hasUntrackedFiles:r.boolean(),dirtyEntryCount:r.number().int().nonnegative(),untrackedEntryCount:r.number().int().nonnegative(),aheadCount:r.number().int().nonnegative().nullable(),behindCount:r.number().int().nonnegative().nullable(),isMergedIntoBase:r.boolean().nullable(),createdByRuntime:r.boolean()}).strict(),PS=r.object({id:r.string(),companyId:r.string().uuid(),projectId:r.string().uuid().nullable(),projectWorkspaceId:r.string().uuid().nullable(),executionWorkspaceId:r.string().uuid().nullable(),issueId:r.string().uuid().nullable(),scopeType:r.enum(["project_workspace","execution_workspace","run","agent"]),scopeId:r.string().nullable(),serviceName:r.string(),status:r.enum(["starting","running","stopped","failed"]),lifecycle:r.enum(["shared","ephemeral"]),reuseKey:r.string().nullable(),command:r.string().nullable(),cwd:r.string().nullable(),port:r.number().int().nullable(),url:r.string().nullable(),provider:r.enum(["local_process","adapter_managed"]),providerRef:r.string().nullable(),ownerAgentId:r.string().uuid().nullable(),startedByRunId:r.string().uuid().nullable(),lastUsedAt:r.coerce.date(),startedAt:r.coerce.date(),stoppedAt:r.coerce.date().nullable(),stopPolicy:r.record(r.string(),r.unknown()).nullable(),healthStatus:r.enum(["unknown","healthy","unhealthy"]),configIndex:r.number().int().nonnegative().nullable().optional(),createdAt:r.coerce.date(),updatedAt:r.coerce.date()}).strict(),Au=r.object({workspaceId:r.string().uuid(),state:So,blockingReasons:r.array(r.string()),warnings:r.array(r.string()),linkedIssues:r.array(vo),plannedActions:r.array(Io),isDestructiveCloseAllowed:r.boolean(),isSharedWorkspace:r.boolean(),isProjectPrimaryWorkspace:r.boolean(),git:ko.nullable(),runtimeServices:r.array(PS)}).strict(),wu=r.object({name:r.string().min(1).optional(),cwd:r.string().optional().nullable(),repoUrl:r.string().optional().nullable(),baseRef:r.string().optional().nullable(),branchName:r.string().optional().nullable(),providerRef:r.string().optional().nullable(),status:yo.optional(),cleanupEligibleAt:r.string().datetime().optional().nullable(),cleanupReason:r.string().optional().nullable(),config:Eu.optional().nullable(),metadata:r.record(r.string(),r.unknown()).optional().nullable()}).strict();var _o=["issue_comment","issue_document_revision"],Eo=["up","down"],Ao=["allowed","not_allowed","prompt"],wo="prompt",xo=["local_only","pending","sent","failed"];var To=r.enum(_o),xu=r.enum(xo),Ro=r.enum(Eo),Co=r.enum(Ao),Tu=r.object({targetType:To,targetId:r.string().uuid(),vote:Ro,reason:r.string().trim().max(1e3).optional(),allowSharing:r.boolean().optional()});function Po(e,t){return r.number().refine(n=>e.includes(n),{message:`${t} must be one of: ${e.join(", ")}`})}var OS=r.object({dailyDays:Po(Mr,"dailyDays").default(At.dailyDays),weeklyWeeks:Po(Dr,"weeklyWeeks").default(At.weeklyWeeks),monthlyMonths:Po(Ur,"monthlyMonths").default(At.monthlyMonths)}),Oo=r.object({censorUsernameInLogs:r.boolean().default(!1),keyboardShortcuts:r.boolean().default(!1),feedbackDataSharingPreference:Co.default(wo),backupRetention:OS.default(At)}).strict(),Ru=Oo.partial(),No=r.object({enableEnvironments:r.boolean().default(!1),enableIsolatedWorkspaces:r.boolean().default(!1),enableStreamlinedLeftNavigation:r.boolean().default(!1),enableIssuePlanDecompositions:r.boolean().default(!1),enableCloudSync:r.boolean().default(!1),autoRestartDevServerWhenIdle:r.boolean().default(!1),enableIssueGraphLivenessAutoRecovery:r.boolean().default(!1),issueGraphLivenessAutoRecoveryLookbackHours:r.number().int().min(Pn).max(On).default(Fr)}).strict(),Cu=No.partial(),Pu=r.object({lookbackHours:r.number().int().min(Pn).max(On).optional()}).strict();var Ou=r.object({scopeType:r.enum(Yi),scopeId:r.string().uuid(),metric:r.enum(Zi).optional().default("billed_cents"),windowKind:r.enum(Ji).optional().default("calendar_month_utc"),amount:r.number().int().nonnegative(),warnPercent:r.number().int().min(1).max(99).optional().default(80),hardStopEnabled:r.boolean().optional().default(!0),notifyEnabled:r.boolean().optional().default(!0),isActive:r.boolean().optional().default(!0)}),Nu=r.object({action:r.enum(Xi),amount:r.number().int().nonnegative().optional(),decisionNote:r.string().optional().nullable()}).superRefine((e,t)=>{e.action==="raise_budget_and_resume"&&typeof e.amount!="number"&&t.addIssue({code:r.ZodIssueCode.custom,message:"amount is required when raising a budget",path:["amount"]})});var Lu=r.string().uuid().nullable().optional(),Mu=r.string().regex(/^#[0-9a-fA-F]{6}$/).nullable().optional(),NS=r.string().min(1).nullable().optional(),Du=r.number().int().min(1).max(1073741824),Lo=r.object({name:r.string().min(1),description:r.string().optional().nullable(),budgetMonthlyCents:r.number().int().nonnegative().optional().default(0),attachmentMaxBytes:Du.optional()}),Uu=Lo.partial().extend({status:r.enum(ti).optional(),spentMonthlyCents:r.number().int().nonnegative().optional(),requireBoardApprovalForNewAgents:r.boolean().optional(),feedbackDataSharingEnabled:r.boolean().optional(),feedbackDataSharingConsentAt:r.coerce.date().nullable().optional(),feedbackDataSharingConsentByUserId:r.string().min(1).nullable().optional(),feedbackDataSharingTermsVersion:NS,brandColor:Mu,logoAssetId:Lu,attachmentMaxBytes:Du.optional()}),Fu=r.object({name:r.string().min(1).optional(),description:r.string().nullable().optional(),brandColor:Mu,logoAssetId:Lu}).strict().refine(e=>e.name!==void 0||e.description!==void 0||e.brandColor!==void 0||e.logoAssetId!==void 0,"At least one branding field must be provided");var Nn=r.enum(Fi),Br=r.enum(ji),ju=r.enum(qi),qu=r.enum($i),LS={name:r.string().min(1),description:r.string().optional().nullable(),driver:Nn,status:Br.optional().default("active"),config:r.record(r.string(),r.unknown()).optional().default({}),metadata:r.record(r.string(),r.unknown()).optional().nullable()},$u=r.object(LS).strict(),Bu=r.object({name:r.string().min(1).optional(),description:r.string().optional().nullable(),driver:Nn.optional(),status:Br.optional(),config:r.record(r.string(),r.unknown()).optional(),metadata:r.record(r.string(),r.unknown()).optional().nullable()}).strict(),Hu=r.object({name:r.string().min(1).optional(),description:r.string().optional().nullable(),driver:Nn,config:r.record(r.string(),r.unknown()).optional().default({}),metadata:r.record(r.string(),r.unknown()).optional().nullable()}).strict();var Mo=r.enum(["local_path","github","url","catalog","skills_sh"]),Hr=r.enum(["markdown_only","assets","scripts_executables"]),Vr=r.enum(["compatible","unknown","invalid"]),Kr=r.enum(["paperclip","github","local","url","catalog","skills_sh"]),Do=r.object({path:r.string().min(1),kind:r.enum(["skill","markdown","reference","script","asset","other"])}),wt=r.object({id:r.string().uuid(),companyId:r.string().uuid(),key:r.string().min(1),slug:r.string().min(1),name:r.string().min(1),description:r.string().nullable(),markdown:r.string(),sourceType:Mo,sourceLocator:r.string().nullable(),sourceRef:r.string().nullable(),trustLevel:Hr,compatibility:Vr,fileInventory:r.array(Do).default([]),metadata:r.record(r.string(),r.unknown()).nullable(),createdAt:r.coerce.date(),updatedAt:r.coerce.date()}),Vu=wt.extend({attachedAgentCount:r.number().int().nonnegative(),editable:r.boolean(),editableReason:r.string().nullable(),sourceLabel:r.string().nullable(),sourceBadge:Kr,catalogKind:r.enum(["bundled","optional"]).nullable(),originHash:r.string().nullable(),packageName:r.string().nullable(),packageVersion:r.string().nullable()}),Uo=r.object({id:r.string().uuid(),name:r.string().min(1),urlKey:r.string().min(1),adapterType:r.string().min(1),desired:r.boolean(),actualState:r.string().nullable().describe("Runtime adapter skill state when explicitly fetched; company skill detail reads return null without probing agent runtimes.")}),Ku=wt.extend({attachedAgentCount:r.number().int().nonnegative(),usedByAgents:r.array(Uo).default([]),editable:r.boolean(),editableReason:r.string().nullable(),sourceLabel:r.string().nullable(),sourceBadge:Kr}),zu=r.object({supported:r.boolean(),reason:r.string().nullable(),trackingRef:r.string().nullable(),currentRef:r.string().nullable(),latestRef:r.string().nullable(),hasUpdate:r.boolean(),installedHash:r.string().nullable(),originHash:r.string().nullable(),userModifiedAt:r.string().nullable(),updateHoldReason:r.enum(["local_modifications","audit_hard_stop","origin_unavailable","compatibility_invalid","operator_hold"]).nullable(),auditVerdict:r.enum(["pass","warning","fail"]).nullable(),auditCodes:r.array(r.string())}),Fo=r.object({code:r.string().min(1),severity:r.enum(["warning","error"]),message:r.string().min(1),path:r.string().nullable()}),Wu=r.object({skillId:r.string().uuid(),installedHash:r.string().nullable(),originHash:r.string().nullable(),verdict:r.enum(["pass","warning","fail"]),codes:r.array(r.string()),findings:r.array(Fo),scannedAt:r.string().min(1),scanVersion:r.string().min(1)}),Gu=r.object({force:r.boolean().optional()}).default({}),Yu=r.object({force:r.boolean().optional()}).default({}),Zu=r.object({source:r.string().min(1)}),Ju=r.object({projectIds:r.array(r.string().uuid()).optional(),workspaceIds:r.array(r.string().uuid()).optional()}),jo=r.object({projectId:r.string().uuid(),projectName:r.string().min(1),workspaceId:r.string().uuid().nullable(),workspaceName:r.string().nullable(),path:r.string().nullable(),reason:r.string().min(1)}),qo=r.object({slug:r.string().min(1),key:r.string().min(1),projectId:r.string().uuid(),projectName:r.string().min(1),workspaceId:r.string().uuid(),workspaceName:r.string().min(1),path:r.string().min(1),existingSkillId:r.string().uuid(),existingSkillKey:r.string().min(1),existingSourceLocator:r.string().nullable(),reason:r.string().min(1)}),Xu=r.object({scannedProjects:r.number().int().nonnegative(),scannedWorkspaces:r.number().int().nonnegative(),discovered:r.number().int().nonnegative(),imported:r.array(wt),updated:r.array(wt),skipped:r.array(jo),conflicts:r.array(qo),warnings:r.array(r.string())}),Qu=r.object({name:r.string().min(1),slug:r.string().min(1).nullable().optional(),description:r.string().nullable().optional(),markdown:r.string().nullable().optional()}),ed=r.object({skillId:r.string().uuid(),path:r.string().min(1),kind:r.enum(["skill","markdown","reference","script","asset","other"]),content:r.string(),language:r.string().nullable(),markdown:r.boolean(),editable:r.boolean()}),td=r.object({path:r.string().min(1),content:r.string()}),zr=r.enum(["bundled","optional"]),$o=r.object({path:r.string().min(1),kind:r.enum(["skill","markdown","reference","script","asset","other"]),sizeBytes:r.number().int().nonnegative(),sha256:r.string().min(1)}),Bo=r.object({type:r.literal("github"),hostname:r.string().min(1),owner:r.string().min(1),repo:r.string().min(1),ref:r.string().min(1),commit:r.string().regex(/^[0-9a-f]{40}$/i),path:r.string(),url:r.string().url()}),Ho=Bo,Vo=r.object({id:r.string().min(1),key:r.string().min(1),kind:zr,category:r.string().min(1),slug:r.string().min(1),name:r.string().min(1),description:r.string(),path:r.string().min(1),entrypoint:r.literal("SKILL.md"),trustLevel:Hr,compatibility:Vr,defaultInstall:r.boolean(),recommendedForRoles:r.array(r.string()),requires:r.array(r.string()),tags:r.array(r.string()),files:r.array($o),contentHash:r.string().min(1),source:Ho.optional(),packageName:r.string().min(1).optional(),packageVersion:r.string().min(1).optional()}),nd=r.object({kind:zr.optional(),category:r.string().min(1).optional(),q:r.string().min(1).optional()}),rd=r.object({catalogSkillId:r.string().min(1),path:r.string().min(1),kind:r.enum(["skill","markdown","reference","script","asset","other"]),content:r.string(),language:r.string().nullable(),markdown:r.boolean()}),sd=r.object({catalogSkillId:r.string().min(1),slug:r.string().min(1).nullable().optional(),force:r.boolean().optional()}),id=r.object({action:r.enum(["created","updated","unchanged"]),skill:wt,catalogSkill:Vo,warnings:r.array(r.string())});function MS(e){return e.replace(/\\r\\n/g,`
|
|
1
|
+
var uw=Object.defineProperty;var dw=(e,t)=>{for(var n in t)uw(e,n,{get:t[n],enumerable:!0})};function Ko(e){return Object.freeze({definition:e})}var r={};dw(r,{BRAND:()=>Fw,DIRTY:()=>Ut,EMPTY_PATH:()=>gw,INVALID:()=>I,NEVER:()=>kI,OK:()=>se,ParseStatus:()=>W,Schema:()=>O,ZodAny:()=>ht,ZodArray:()=>lt,ZodBigInt:()=>zt,ZodBoolean:()=>qt,ZodBranded:()=>gr,ZodCatch:()=>Qt,ZodDate:()=>Bt,ZodDefault:()=>Xt,ZodDiscriminatedUnion:()=>ws,ZodEffects:()=>Oe,ZodEnum:()=>Yt,ZodError:()=>me,ZodFirstPartyTypeKind:()=>T,ZodFunction:()=>Ts,ZodIntersection:()=>Wt,ZodIssueCode:()=>b,ZodLazy:()=>Zt,ZodLiteral:()=>Gt,ZodMap:()=>Nn,ZodNaN:()=>Mn,ZodNativeEnum:()=>Jt,ZodNever:()=>De,ZodNull:()=>Kt,ZodNullable:()=>Ve,ZodNumber:()=>jt,ZodObject:()=>fe,ZodOptional:()=>Re,ZodParsedType:()=>E,ZodPipeline:()=>hr,ZodPromise:()=>yt,ZodReadonly:()=>en,ZodRecord:()=>Is,ZodSchema:()=>O,ZodSet:()=>Pn,ZodString:()=>gt,ZodSymbol:()=>On,ZodTransformer:()=>Oe,ZodTuple:()=>Be,ZodType:()=>O,ZodUndefined:()=>Vt,ZodUnion:()=>Ht,ZodUnknown:()=>ct,ZodVoid:()=>Ln,addIssueToContext:()=>k,any:()=>Hw,array:()=>Yw,bigint:()=>zw,boolean:()=>Km,coerce:()=>_I,custom:()=>qm,date:()=>qw,datetimeRegex:()=>jm,defaultErrorMap:()=>ot,discriminatedUnion:()=>eI,effect:()=>pI,enum:()=>lI,function:()=>oI,getErrorMap:()=>xn,getParsedType:()=>qe,instanceof:()=>Uw,intersection:()=>tI,isAborted:()=>Es,isAsync:()=>Rn,isDirty:()=>As,isValid:()=>ft,late:()=>$w,lazy:()=>aI,literal:()=>cI,makeIssue:()=>fr,map:()=>sI,nan:()=>jw,nativeEnum:()=>uI,never:()=>Zw,null:()=>Kw,nullable:()=>fI,number:()=>Vm,object:()=>Jw,objectUtil:()=>Ho,oboolean:()=>bI,onumber:()=>SI,optional:()=>mI,ostring:()=>yI,pipeline:()=>hI,preprocess:()=>gI,promise:()=>dI,quotelessJson:()=>pw,record:()=>rI,set:()=>iI,setErrorMap:()=>fw,strictObject:()=>Xw,string:()=>Bm,symbol:()=>Bw,transformer:()=>pI,tuple:()=>nI,undefined:()=>Vw,union:()=>Qw,unknown:()=>Ww,util:()=>P,void:()=>Gw});var P;(function(e){e.assertEqual=i=>{};function t(i){}e.assertIs=t;function n(i){throw new Error}e.assertNever=n,e.arrayToEnum=i=>{let o={};for(let a of i)o[a]=a;return o},e.getValidEnumValues=i=>{let o=e.objectKeys(i).filter(c=>typeof i[i[c]]!="number"),a={};for(let c of o)a[c]=i[c];return e.objectValues(a)},e.objectValues=i=>e.objectKeys(i).map(function(o){return i[o]}),e.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let o=[];for(let a in i)Object.prototype.hasOwnProperty.call(i,a)&&o.push(a);return o},e.find=(i,o)=>{for(let a of i)if(o(a))return a},e.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function s(i,o=" | "){return i.map(a=>typeof a=="string"?`'${a}'`:a).join(o)}e.joinValues=s,e.jsonStringifyReplacer=(i,o)=>typeof o=="bigint"?o.toString():o})(P||(P={}));var Ho;(function(e){e.mergeShapes=(t,n)=>({...t,...n})})(Ho||(Ho={}));var E=P.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),qe=e=>{switch(typeof e){case"undefined":return E.undefined;case"string":return E.string;case"number":return Number.isNaN(e)?E.nan:E.number;case"boolean":return E.boolean;case"function":return E.function;case"bigint":return E.bigint;case"symbol":return E.symbol;case"object":return Array.isArray(e)?E.array:e===null?E.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?E.promise:typeof Map<"u"&&e instanceof Map?E.map:typeof Set<"u"&&e instanceof Set?E.set:typeof Date<"u"&&e instanceof Date?E.date:E.object;default:return E.unknown}};var b=P.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),pw=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),me=class e extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=s=>{this.issues=[...this.issues,s]},this.addIssues=(s=[])=>{this.issues=[...this.issues,...s]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=t}format(t){let n=t||function(o){return o.message},s={_errors:[]},i=o=>{for(let a of o.issues)if(a.code==="invalid_union")a.unionErrors.map(i);else if(a.code==="invalid_return_type")i(a.returnTypeError);else if(a.code==="invalid_arguments")i(a.argumentsError);else if(a.path.length===0)s._errors.push(n(a));else{let c=s,l=0;for(;l<a.path.length;){let d=a.path[l];l===a.path.length-1?(c[d]=c[d]||{_errors:[]},c[d]._errors.push(n(a))):c[d]=c[d]||{_errors:[]},c=c[d],l++}}};return i(this),s}static assert(t){if(!(t instanceof e))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,P.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=n=>n.message){let n={},s=[];for(let i of this.issues)if(i.path.length>0){let o=i.path[0];n[o]=n[o]||[],n[o].push(t(i))}else s.push(t(i));return{formErrors:s,fieldErrors:n}}get formErrors(){return this.flatten()}};me.create=e=>new me(e);var mw=(e,t)=>{let n;switch(e.code){case b.invalid_type:e.received===E.undefined?n="Required":n=`Expected ${e.expected}, received ${e.received}`;break;case b.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,P.jsonStringifyReplacer)}`;break;case b.unrecognized_keys:n=`Unrecognized key(s) in object: ${P.joinValues(e.keys,", ")}`;break;case b.invalid_union:n="Invalid input";break;case b.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${P.joinValues(e.options)}`;break;case b.invalid_enum_value:n=`Invalid enum value. Expected ${P.joinValues(e.options)}, received '${e.received}'`;break;case b.invalid_arguments:n="Invalid function arguments";break;case b.invalid_return_type:n="Invalid function return type";break;case b.invalid_date:n="Invalid date";break;case b.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:P.assertNever(e.validation):e.validation!=="regex"?n=`Invalid ${e.validation}`:n="Invalid";break;case b.too_small:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="bigint"?n=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:n="Invalid input";break;case b.too_big:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?n=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:n="Invalid input";break;case b.custom:n="Invalid input";break;case b.invalid_intersection_types:n="Intersection results could not be merged";break;case b.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case b.not_finite:n="Number must be finite";break;default:n=t.defaultError,P.assertNever(e)}return{message:n}},ot=mw;var Mm=ot;function fw(e){Mm=e}function xn(){return Mm}var fr=e=>{let{data:t,path:n,errorMaps:s,issueData:i}=e,o=[...n,...i.path||[]],a={...i,path:o};if(i.message!==void 0)return{...i,path:o,message:i.message};let c="",l=s.filter(d=>!!d).slice().reverse();for(let d of l)c=d(a,{data:t,defaultError:c}).message;return{...i,path:o,message:c}},gw=[];function k(e,t){let n=xn(),s=fr({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===ot?void 0:ot].filter(i=>!!i)});e.common.issues.push(s)}var W=class e{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,n){let s=[];for(let i of n){if(i.status==="aborted")return I;i.status==="dirty"&&t.dirty(),s.push(i.value)}return{status:t.value,value:s}}static async mergeObjectAsync(t,n){let s=[];for(let i of n){let o=await i.key,a=await i.value;s.push({key:o,value:a})}return e.mergeObjectSync(t,s)}static mergeObjectSync(t,n){let s={};for(let i of n){let{key:o,value:a}=i;if(o.status==="aborted"||a.status==="aborted")return I;o.status==="dirty"&&t.dirty(),a.status==="dirty"&&t.dirty(),o.value!=="__proto__"&&(typeof a.value<"u"||i.alwaysSet)&&(s[o.value]=a.value)}return{status:t.value,value:s}}},I=Object.freeze({status:"aborted"}),Ut=e=>({status:"dirty",value:e}),se=e=>({status:"valid",value:e}),Es=e=>e.status==="aborted",As=e=>e.status==="dirty",ft=e=>e.status==="valid",Rn=e=>typeof Promise<"u"&&e instanceof Promise;var A;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(A||(A={}));var Ce=class{constructor(t,n,s,i){this._cachedPath=[],this.parent=t,this.data=n,this._path=s,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Dm=(e,t)=>{if(ft(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let n=new me(e.common.issues);return this._error=n,this._error}}};function R(e){if(!e)return{};let{errorMap:t,invalid_type_error:n,required_error:s,description:i}=e;if(t&&(n||s))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(a,c)=>{let{message:l}=e;return a.code==="invalid_enum_value"?{message:l??c.defaultError}:typeof c.data>"u"?{message:l??s??c.defaultError}:a.code!=="invalid_type"?{message:c.defaultError}:{message:l??n??c.defaultError}},description:i}}var O=class{get description(){return this._def.description}_getType(t){return qe(t.data)}_getOrReturnCtx(t,n){return n||{common:t.parent.common,data:t.data,parsedType:qe(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new W,ctx:{common:t.parent.common,data:t.data,parsedType:qe(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let n=this._parse(t);if(Rn(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(t){let n=this._parse(t);return Promise.resolve(n)}parse(t,n){let s=this.safeParse(t,n);if(s.success)return s.data;throw s.error}safeParse(t,n){let s={common:{issues:[],async:n?.async??!1,contextualErrorMap:n?.errorMap},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:qe(t)},i=this._parseSync({data:t,path:s.path,parent:s});return Dm(s,i)}"~validate"(t){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:qe(t)};if(!this["~standard"].async)try{let s=this._parseSync({data:t,path:[],parent:n});return ft(s)?{value:s.value}:{issues:n.common.issues}}catch(s){s?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:t,path:[],parent:n}).then(s=>ft(s)?{value:s.value}:{issues:n.common.issues})}async parseAsync(t,n){let s=await this.safeParseAsync(t,n);if(s.success)return s.data;throw s.error}async safeParseAsync(t,n){let s={common:{issues:[],contextualErrorMap:n?.errorMap,async:!0},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:qe(t)},i=this._parse({data:t,path:s.path,parent:s}),o=await(Rn(i)?i:Promise.resolve(i));return Dm(s,o)}refine(t,n){let s=i=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(i):n;return this._refinement((i,o)=>{let a=t(i),c=()=>o.addIssue({code:b.custom,...s(i)});return typeof Promise<"u"&&a instanceof Promise?a.then(l=>l?!0:(c(),!1)):a?!0:(c(),!1)})}refinement(t,n){return this._refinement((s,i)=>t(s)?!0:(i.addIssue(typeof n=="function"?n(s,i):n),!1))}_refinement(t){return new Oe({schema:this,typeName:T.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)}}optional(){return Re.create(this,this._def)}nullable(){return Ve.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return lt.create(this)}promise(){return yt.create(this,this._def)}or(t){return Ht.create([this,t],this._def)}and(t){return Wt.create(this,t,this._def)}transform(t){return new Oe({...R(this._def),schema:this,typeName:T.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let n=typeof t=="function"?t:()=>t;return new Xt({...R(this._def),innerType:this,defaultValue:n,typeName:T.ZodDefault})}brand(){return new gr({typeName:T.ZodBranded,type:this,...R(this._def)})}catch(t){let n=typeof t=="function"?t:()=>t;return new Qt({...R(this._def),innerType:this,catchValue:n,typeName:T.ZodCatch})}describe(t){let n=this.constructor;return new n({...this._def,description:t})}pipe(t){return hr.create(this,t)}readonly(){return en.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},hw=/^c[^\s-]{8,}$/i,yw=/^[0-9a-z]+$/,Sw=/^[0-9A-HJKMNP-TV-Z]{26}$/i,bw=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,_w=/^[a-z0-9_-]{21}$/i,kw=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,vw=/^[-+]?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)?)??$/,Ew=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Aw="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Wo,ww=/^(?:(?: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])$/,Iw=/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,Tw=/^(([0-9a-fA-F]{1,4}:){7,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}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,xw=/^(([0-9a-fA-F]{1,4}:){7,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}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Rw=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Cw=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,$m="((\\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])))",Ow=new RegExp(`^${$m}$`);function Um(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`);let n=e.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${n}`}function Lw(e){return new RegExp(`^${Um(e)}$`)}function jm(e){let t=`${$m}T${Um(e)}`,n=[];return n.push(e.local?"Z?":"Z"),e.offset&&n.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${n.join("|")})`,new RegExp(`^${t}$`)}function Nw(e,t){return!!((t==="v4"||!t)&&ww.test(e)||(t==="v6"||!t)&&Tw.test(e))}function Pw(e,t){if(!kw.test(e))return!1;try{let[n]=e.split(".");if(!n)return!1;let s=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),i=JSON.parse(atob(s));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||t&&i.alg!==t)}catch{return!1}}function Mw(e,t){return!!((t==="v4"||!t)&&Iw.test(e)||(t==="v6"||!t)&&xw.test(e))}var gt=class e extends O{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==E.string){let o=this._getOrReturnCtx(t);return k(o,{code:b.invalid_type,expected:E.string,received:o.parsedType}),I}let s=new W,i;for(let o of this._def.checks)if(o.kind==="min")t.data.length<o.value&&(i=this._getOrReturnCtx(t,i),k(i,{code:b.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),s.dirty());else if(o.kind==="max")t.data.length>o.value&&(i=this._getOrReturnCtx(t,i),k(i,{code:b.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),s.dirty());else if(o.kind==="length"){let a=t.data.length>o.value,c=t.data.length<o.value;(a||c)&&(i=this._getOrReturnCtx(t,i),a?k(i,{code:b.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):c&&k(i,{code:b.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),s.dirty())}else if(o.kind==="email")Ew.test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"email",code:b.invalid_string,message:o.message}),s.dirty());else if(o.kind==="emoji")Wo||(Wo=new RegExp(Aw,"u")),Wo.test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"emoji",code:b.invalid_string,message:o.message}),s.dirty());else if(o.kind==="uuid")bw.test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"uuid",code:b.invalid_string,message:o.message}),s.dirty());else if(o.kind==="nanoid")_w.test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"nanoid",code:b.invalid_string,message:o.message}),s.dirty());else if(o.kind==="cuid")hw.test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"cuid",code:b.invalid_string,message:o.message}),s.dirty());else if(o.kind==="cuid2")yw.test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"cuid2",code:b.invalid_string,message:o.message}),s.dirty());else if(o.kind==="ulid")Sw.test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"ulid",code:b.invalid_string,message:o.message}),s.dirty());else if(o.kind==="url")try{new URL(t.data)}catch{i=this._getOrReturnCtx(t,i),k(i,{validation:"url",code:b.invalid_string,message:o.message}),s.dirty()}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"regex",code:b.invalid_string,message:o.message}),s.dirty())):o.kind==="trim"?t.data=t.data.trim():o.kind==="includes"?t.data.includes(o.value,o.position)||(i=this._getOrReturnCtx(t,i),k(i,{code:b.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),s.dirty()):o.kind==="toLowerCase"?t.data=t.data.toLowerCase():o.kind==="toUpperCase"?t.data=t.data.toUpperCase():o.kind==="startsWith"?t.data.startsWith(o.value)||(i=this._getOrReturnCtx(t,i),k(i,{code:b.invalid_string,validation:{startsWith:o.value},message:o.message}),s.dirty()):o.kind==="endsWith"?t.data.endsWith(o.value)||(i=this._getOrReturnCtx(t,i),k(i,{code:b.invalid_string,validation:{endsWith:o.value},message:o.message}),s.dirty()):o.kind==="datetime"?jm(o).test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{code:b.invalid_string,validation:"datetime",message:o.message}),s.dirty()):o.kind==="date"?Ow.test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{code:b.invalid_string,validation:"date",message:o.message}),s.dirty()):o.kind==="time"?Lw(o).test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{code:b.invalid_string,validation:"time",message:o.message}),s.dirty()):o.kind==="duration"?vw.test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"duration",code:b.invalid_string,message:o.message}),s.dirty()):o.kind==="ip"?Nw(t.data,o.version)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"ip",code:b.invalid_string,message:o.message}),s.dirty()):o.kind==="jwt"?Pw(t.data,o.alg)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"jwt",code:b.invalid_string,message:o.message}),s.dirty()):o.kind==="cidr"?Mw(t.data,o.version)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"cidr",code:b.invalid_string,message:o.message}),s.dirty()):o.kind==="base64"?Rw.test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"base64",code:b.invalid_string,message:o.message}),s.dirty()):o.kind==="base64url"?Cw.test(t.data)||(i=this._getOrReturnCtx(t,i),k(i,{validation:"base64url",code:b.invalid_string,message:o.message}),s.dirty()):P.assertNever(o);return{status:s.value,value:t.data}}_regex(t,n,s){return this.refinement(i=>t.test(i),{validation:n,code:b.invalid_string,...A.errToObj(s)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...A.errToObj(t)})}url(t){return this._addCheck({kind:"url",...A.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...A.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...A.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...A.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...A.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...A.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...A.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...A.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...A.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...A.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...A.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...A.errToObj(t)})}datetime(t){return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof t?.precision>"u"?null:t?.precision,offset:t?.offset??!1,local:t?.local??!1,...A.errToObj(t?.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof t?.precision>"u"?null:t?.precision,...A.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...A.errToObj(t)})}regex(t,n){return this._addCheck({kind:"regex",regex:t,...A.errToObj(n)})}includes(t,n){return this._addCheck({kind:"includes",value:t,position:n?.position,...A.errToObj(n?.message)})}startsWith(t,n){return this._addCheck({kind:"startsWith",value:t,...A.errToObj(n)})}endsWith(t,n){return this._addCheck({kind:"endsWith",value:t,...A.errToObj(n)})}min(t,n){return this._addCheck({kind:"min",value:t,...A.errToObj(n)})}max(t,n){return this._addCheck({kind:"max",value:t,...A.errToObj(n)})}length(t,n){return this._addCheck({kind:"length",value:t,...A.errToObj(n)})}nonempty(t){return this.min(1,A.errToObj(t))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isCIDR(){return!!this._def.checks.find(t=>t.kind==="cidr")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get isBase64url(){return!!this._def.checks.find(t=>t.kind==="base64url")}get minLength(){let t=null;for(let n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxLength(){let t=null;for(let n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}};gt.create=e=>new gt({checks:[],typeName:T.ZodString,coerce:e?.coerce??!1,...R(e)});function Dw(e,t){let n=(e.toString().split(".")[1]||"").length,s=(t.toString().split(".")[1]||"").length,i=n>s?n:s,o=Number.parseInt(e.toFixed(i).replace(".","")),a=Number.parseInt(t.toFixed(i).replace(".",""));return o%a/10**i}var jt=class e extends O{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==E.number){let o=this._getOrReturnCtx(t);return k(o,{code:b.invalid_type,expected:E.number,received:o.parsedType}),I}let s,i=new W;for(let o of this._def.checks)o.kind==="int"?P.isInteger(t.data)||(s=this._getOrReturnCtx(t,s),k(s,{code:b.invalid_type,expected:"integer",received:"float",message:o.message}),i.dirty()):o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(s=this._getOrReturnCtx(t,s),k(s,{code:b.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(s=this._getOrReturnCtx(t,s),k(s,{code:b.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),i.dirty()):o.kind==="multipleOf"?Dw(t.data,o.value)!==0&&(s=this._getOrReturnCtx(t,s),k(s,{code:b.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):o.kind==="finite"?Number.isFinite(t.data)||(s=this._getOrReturnCtx(t,s),k(s,{code:b.not_finite,message:o.message}),i.dirty()):P.assertNever(o);return{status:i.value,value:t.data}}gte(t,n){return this.setLimit("min",t,!0,A.toString(n))}gt(t,n){return this.setLimit("min",t,!1,A.toString(n))}lte(t,n){return this.setLimit("max",t,!0,A.toString(n))}lt(t,n){return this.setLimit("max",t,!1,A.toString(n))}setLimit(t,n,s,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:s,message:A.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:A.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:A.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:A.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:A.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:A.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:A.toString(n)})}finite(t){return this._addCheck({kind:"finite",message:A.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:A.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:A.toString(t)})}get minValue(){let t=null;for(let n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(let n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}get isInt(){return!!this._def.checks.find(t=>t.kind==="int"||t.kind==="multipleOf"&&P.isInteger(t.value))}get isFinite(){let t=null,n=null;for(let s of this._def.checks){if(s.kind==="finite"||s.kind==="int"||s.kind==="multipleOf")return!0;s.kind==="min"?(n===null||s.value>n)&&(n=s.value):s.kind==="max"&&(t===null||s.value<t)&&(t=s.value)}return Number.isFinite(n)&&Number.isFinite(t)}};jt.create=e=>new jt({checks:[],typeName:T.ZodNumber,coerce:e?.coerce||!1,...R(e)});var zt=class e extends O{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce)try{t.data=BigInt(t.data)}catch{return this._getInvalidInput(t)}if(this._getType(t)!==E.bigint)return this._getInvalidInput(t);let s,i=new W;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(s=this._getOrReturnCtx(t,s),k(s,{code:b.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(s=this._getOrReturnCtx(t,s),k(s,{code:b.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),i.dirty()):o.kind==="multipleOf"?t.data%o.value!==BigInt(0)&&(s=this._getOrReturnCtx(t,s),k(s,{code:b.not_multiple_of,multipleOf:o.value,message:o.message}),i.dirty()):P.assertNever(o);return{status:i.value,value:t.data}}_getInvalidInput(t){let n=this._getOrReturnCtx(t);return k(n,{code:b.invalid_type,expected:E.bigint,received:n.parsedType}),I}gte(t,n){return this.setLimit("min",t,!0,A.toString(n))}gt(t,n){return this.setLimit("min",t,!1,A.toString(n))}lte(t,n){return this.setLimit("max",t,!0,A.toString(n))}lt(t,n){return this.setLimit("max",t,!1,A.toString(n))}setLimit(t,n,s,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:s,message:A.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:A.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:A.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:A.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:A.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:A.toString(n)})}get minValue(){let t=null;for(let n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(let n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}};zt.create=e=>new zt({checks:[],typeName:T.ZodBigInt,coerce:e?.coerce??!1,...R(e)});var qt=class extends O{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==E.boolean){let s=this._getOrReturnCtx(t);return k(s,{code:b.invalid_type,expected:E.boolean,received:s.parsedType}),I}return se(t.data)}};qt.create=e=>new qt({typeName:T.ZodBoolean,coerce:e?.coerce||!1,...R(e)});var Bt=class e extends O{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==E.date){let o=this._getOrReturnCtx(t);return k(o,{code:b.invalid_type,expected:E.date,received:o.parsedType}),I}if(Number.isNaN(t.data.getTime())){let o=this._getOrReturnCtx(t);return k(o,{code:b.invalid_date}),I}let s=new W,i;for(let o of this._def.checks)o.kind==="min"?t.data.getTime()<o.value&&(i=this._getOrReturnCtx(t,i),k(i,{code:b.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),s.dirty()):o.kind==="max"?t.data.getTime()>o.value&&(i=this._getOrReturnCtx(t,i),k(i,{code:b.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),s.dirty()):P.assertNever(o);return{status:s.value,value:new Date(t.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(t,n){return this._addCheck({kind:"min",value:t.getTime(),message:A.toString(n)})}max(t,n){return this._addCheck({kind:"max",value:t.getTime(),message:A.toString(n)})}get minDate(){let t=null;for(let n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(let n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t!=null?new Date(t):null}};Bt.create=e=>new Bt({checks:[],coerce:e?.coerce||!1,typeName:T.ZodDate,...R(e)});var On=class extends O{_parse(t){if(this._getType(t)!==E.symbol){let s=this._getOrReturnCtx(t);return k(s,{code:b.invalid_type,expected:E.symbol,received:s.parsedType}),I}return se(t.data)}};On.create=e=>new On({typeName:T.ZodSymbol,...R(e)});var Vt=class extends O{_parse(t){if(this._getType(t)!==E.undefined){let s=this._getOrReturnCtx(t);return k(s,{code:b.invalid_type,expected:E.undefined,received:s.parsedType}),I}return se(t.data)}};Vt.create=e=>new Vt({typeName:T.ZodUndefined,...R(e)});var Kt=class extends O{_parse(t){if(this._getType(t)!==E.null){let s=this._getOrReturnCtx(t);return k(s,{code:b.invalid_type,expected:E.null,received:s.parsedType}),I}return se(t.data)}};Kt.create=e=>new Kt({typeName:T.ZodNull,...R(e)});var ht=class extends O{constructor(){super(...arguments),this._any=!0}_parse(t){return se(t.data)}};ht.create=e=>new ht({typeName:T.ZodAny,...R(e)});var ct=class extends O{constructor(){super(...arguments),this._unknown=!0}_parse(t){return se(t.data)}};ct.create=e=>new ct({typeName:T.ZodUnknown,...R(e)});var De=class extends O{_parse(t){let n=this._getOrReturnCtx(t);return k(n,{code:b.invalid_type,expected:E.never,received:n.parsedType}),I}};De.create=e=>new De({typeName:T.ZodNever,...R(e)});var Ln=class extends O{_parse(t){if(this._getType(t)!==E.undefined){let s=this._getOrReturnCtx(t);return k(s,{code:b.invalid_type,expected:E.void,received:s.parsedType}),I}return se(t.data)}};Ln.create=e=>new Ln({typeName:T.ZodVoid,...R(e)});var lt=class e extends O{_parse(t){let{ctx:n,status:s}=this._processInputParams(t),i=this._def;if(n.parsedType!==E.array)return k(n,{code:b.invalid_type,expected:E.array,received:n.parsedType}),I;if(i.exactLength!==null){let a=n.data.length>i.exactLength.value,c=n.data.length<i.exactLength.value;(a||c)&&(k(n,{code:a?b.too_big:b.too_small,minimum:c?i.exactLength.value:void 0,maximum:a?i.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:i.exactLength.message}),s.dirty())}if(i.minLength!==null&&n.data.length<i.minLength.value&&(k(n,{code:b.too_small,minimum:i.minLength.value,type:"array",inclusive:!0,exact:!1,message:i.minLength.message}),s.dirty()),i.maxLength!==null&&n.data.length>i.maxLength.value&&(k(n,{code:b.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),s.dirty()),n.common.async)return Promise.all([...n.data].map((a,c)=>i.type._parseAsync(new Ce(n,a,n.path,c)))).then(a=>W.mergeArray(s,a));let o=[...n.data].map((a,c)=>i.type._parseSync(new Ce(n,a,n.path,c)));return W.mergeArray(s,o)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:A.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:A.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:A.toString(n)}})}nonempty(t){return this.min(1,t)}};lt.create=(e,t)=>new lt({type:e,minLength:null,maxLength:null,exactLength:null,typeName:T.ZodArray,...R(t)});function Cn(e){if(e instanceof fe){let t={};for(let n in e.shape){let s=e.shape[n];t[n]=Re.create(Cn(s))}return new fe({...e._def,shape:()=>t})}else return e instanceof lt?new lt({...e._def,type:Cn(e.element)}):e instanceof Re?Re.create(Cn(e.unwrap())):e instanceof Ve?Ve.create(Cn(e.unwrap())):e instanceof Be?Be.create(e.items.map(t=>Cn(t))):e}var fe=class e extends O{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let t=this._def.shape(),n=P.objectKeys(t);return this._cached={shape:t,keys:n},this._cached}_parse(t){if(this._getType(t)!==E.object){let d=this._getOrReturnCtx(t);return k(d,{code:b.invalid_type,expected:E.object,received:d.parsedType}),I}let{status:s,ctx:i}=this._processInputParams(t),{shape:o,keys:a}=this._getCached(),c=[];if(!(this._def.catchall instanceof De&&this._def.unknownKeys==="strip"))for(let d in i.data)a.includes(d)||c.push(d);let l=[];for(let d of a){let m=o[d],g=i.data[d];l.push({key:{status:"valid",value:d},value:m._parse(new Ce(i,g,i.path,d)),alwaysSet:d in i.data})}if(this._def.catchall instanceof De){let d=this._def.unknownKeys;if(d==="passthrough")for(let m of c)l.push({key:{status:"valid",value:m},value:{status:"valid",value:i.data[m]}});else if(d==="strict")c.length>0&&(k(i,{code:b.unrecognized_keys,keys:c}),s.dirty());else if(d!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let d=this._def.catchall;for(let m of c){let g=i.data[m];l.push({key:{status:"valid",value:m},value:d._parse(new Ce(i,g,i.path,m)),alwaysSet:m in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let d=[];for(let m of l){let g=await m.key,h=await m.value;d.push({key:g,value:h,alwaysSet:m.alwaysSet})}return d}).then(d=>W.mergeObjectSync(s,d)):W.mergeObjectSync(s,l)}get shape(){return this._def.shape()}strict(t){return A.errToObj,new e({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(n,s)=>{let i=this._def.errorMap?.(n,s).message??s.defaultError;return n.code==="unrecognized_keys"?{message:A.errToObj(t).message??i}:{message:i}}}:{}})}strip(){return new e({...this._def,unknownKeys:"strip"})}passthrough(){return new e({...this._def,unknownKeys:"passthrough"})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:T.ZodObject})}setKey(t,n){return this.augment({[t]:n})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let n={};for(let s of P.objectKeys(t))t[s]&&this.shape[s]&&(n[s]=this.shape[s]);return new e({...this._def,shape:()=>n})}omit(t){let n={};for(let s of P.objectKeys(this.shape))t[s]||(n[s]=this.shape[s]);return new e({...this._def,shape:()=>n})}deepPartial(){return Cn(this)}partial(t){let n={};for(let s of P.objectKeys(this.shape)){let i=this.shape[s];t&&!t[s]?n[s]=i:n[s]=i.optional()}return new e({...this._def,shape:()=>n})}required(t){let n={};for(let s of P.objectKeys(this.shape))if(t&&!t[s])n[s]=this.shape[s];else{let o=this.shape[s];for(;o instanceof Re;)o=o._def.innerType;n[s]=o}return new e({...this._def,shape:()=>n})}keyof(){return zm(P.objectKeys(this.shape))}};fe.create=(e,t)=>new fe({shape:()=>e,unknownKeys:"strip",catchall:De.create(),typeName:T.ZodObject,...R(t)});fe.strictCreate=(e,t)=>new fe({shape:()=>e,unknownKeys:"strict",catchall:De.create(),typeName:T.ZodObject,...R(t)});fe.lazycreate=(e,t)=>new fe({shape:e,unknownKeys:"strip",catchall:De.create(),typeName:T.ZodObject,...R(t)});var Ht=class extends O{_parse(t){let{ctx:n}=this._processInputParams(t),s=this._def.options;function i(o){for(let c of o)if(c.result.status==="valid")return c.result;for(let c of o)if(c.result.status==="dirty")return n.common.issues.push(...c.ctx.common.issues),c.result;let a=o.map(c=>new me(c.ctx.common.issues));return k(n,{code:b.invalid_union,unionErrors:a}),I}if(n.common.async)return Promise.all(s.map(async o=>{let a={...n,common:{...n.common,issues:[]},parent:null};return{result:await o._parseAsync({data:n.data,path:n.path,parent:a}),ctx:a}})).then(i);{let o,a=[];for(let l of s){let d={...n,common:{...n.common,issues:[]},parent:null},m=l._parseSync({data:n.data,path:n.path,parent:d});if(m.status==="valid")return m;m.status==="dirty"&&!o&&(o={result:m,ctx:d}),d.common.issues.length&&a.push(d.common.issues)}if(o)return n.common.issues.push(...o.ctx.common.issues),o.result;let c=a.map(l=>new me(l));return k(n,{code:b.invalid_union,unionErrors:c}),I}}get options(){return this._def.options}};Ht.create=(e,t)=>new Ht({options:e,typeName:T.ZodUnion,...R(t)});var at=e=>e instanceof Zt?at(e.schema):e instanceof Oe?at(e.innerType()):e instanceof Gt?[e.value]:e instanceof Yt?e.options:e instanceof Jt?P.objectValues(e.enum):e instanceof Xt?at(e._def.innerType):e instanceof Vt?[void 0]:e instanceof Kt?[null]:e instanceof Re?[void 0,...at(e.unwrap())]:e instanceof Ve?[null,...at(e.unwrap())]:e instanceof gr||e instanceof en?at(e.unwrap()):e instanceof Qt?at(e._def.innerType):[],ws=class e extends O{_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==E.object)return k(n,{code:b.invalid_type,expected:E.object,received:n.parsedType}),I;let s=this.discriminator,i=n.data[s],o=this.optionsMap.get(i);return o?n.common.async?o._parseAsync({data:n.data,path:n.path,parent:n}):o._parseSync({data:n.data,path:n.path,parent:n}):(k(n,{code:b.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[s]}),I)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,s){let i=new Map;for(let o of n){let a=at(o.shape[t]);if(!a.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let c of a){if(i.has(c))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(c)}`);i.set(c,o)}}return new e({typeName:T.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:i,...R(s)})}};function Zo(e,t){let n=qe(e),s=qe(t);if(e===t)return{valid:!0,data:e};if(n===E.object&&s===E.object){let i=P.objectKeys(t),o=P.objectKeys(e).filter(c=>i.indexOf(c)!==-1),a={...e,...t};for(let c of o){let l=Zo(e[c],t[c]);if(!l.valid)return{valid:!1};a[c]=l.data}return{valid:!0,data:a}}else if(n===E.array&&s===E.array){if(e.length!==t.length)return{valid:!1};let i=[];for(let o=0;o<e.length;o++){let a=e[o],c=t[o],l=Zo(a,c);if(!l.valid)return{valid:!1};i.push(l.data)}return{valid:!0,data:i}}else return n===E.date&&s===E.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}var Wt=class extends O{_parse(t){let{status:n,ctx:s}=this._processInputParams(t),i=(o,a)=>{if(Es(o)||Es(a))return I;let c=Zo(o.value,a.value);return c.valid?((As(o)||As(a))&&n.dirty(),{status:n.value,value:c.data}):(k(s,{code:b.invalid_intersection_types}),I)};return s.common.async?Promise.all([this._def.left._parseAsync({data:s.data,path:s.path,parent:s}),this._def.right._parseAsync({data:s.data,path:s.path,parent:s})]).then(([o,a])=>i(o,a)):i(this._def.left._parseSync({data:s.data,path:s.path,parent:s}),this._def.right._parseSync({data:s.data,path:s.path,parent:s}))}};Wt.create=(e,t,n)=>new Wt({left:e,right:t,typeName:T.ZodIntersection,...R(n)});var Be=class e extends O{_parse(t){let{status:n,ctx:s}=this._processInputParams(t);if(s.parsedType!==E.array)return k(s,{code:b.invalid_type,expected:E.array,received:s.parsedType}),I;if(s.data.length<this._def.items.length)return k(s,{code:b.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),I;!this._def.rest&&s.data.length>this._def.items.length&&(k(s,{code:b.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());let o=[...s.data].map((a,c)=>{let l=this._def.items[c]||this._def.rest;return l?l._parse(new Ce(s,a,s.path,c)):null}).filter(a=>!!a);return s.common.async?Promise.all(o).then(a=>W.mergeArray(n,a)):W.mergeArray(n,o)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};Be.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Be({items:e,typeName:T.ZodTuple,rest:null,...R(t)})};var Is=class e extends O{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:n,ctx:s}=this._processInputParams(t);if(s.parsedType!==E.object)return k(s,{code:b.invalid_type,expected:E.object,received:s.parsedType}),I;let i=[],o=this._def.keyType,a=this._def.valueType;for(let c in s.data)i.push({key:o._parse(new Ce(s,c,s.path,c)),value:a._parse(new Ce(s,s.data[c],s.path,c)),alwaysSet:c in s.data});return s.common.async?W.mergeObjectAsync(n,i):W.mergeObjectSync(n,i)}get element(){return this._def.valueType}static create(t,n,s){return n instanceof O?new e({keyType:t,valueType:n,typeName:T.ZodRecord,...R(s)}):new e({keyType:gt.create(),valueType:t,typeName:T.ZodRecord,...R(n)})}},Nn=class extends O{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:n,ctx:s}=this._processInputParams(t);if(s.parsedType!==E.map)return k(s,{code:b.invalid_type,expected:E.map,received:s.parsedType}),I;let i=this._def.keyType,o=this._def.valueType,a=[...s.data.entries()].map(([c,l],d)=>({key:i._parse(new Ce(s,c,s.path,[d,"key"])),value:o._parse(new Ce(s,l,s.path,[d,"value"]))}));if(s.common.async){let c=new Map;return Promise.resolve().then(async()=>{for(let l of a){let d=await l.key,m=await l.value;if(d.status==="aborted"||m.status==="aborted")return I;(d.status==="dirty"||m.status==="dirty")&&n.dirty(),c.set(d.value,m.value)}return{status:n.value,value:c}})}else{let c=new Map;for(let l of a){let d=l.key,m=l.value;if(d.status==="aborted"||m.status==="aborted")return I;(d.status==="dirty"||m.status==="dirty")&&n.dirty(),c.set(d.value,m.value)}return{status:n.value,value:c}}}};Nn.create=(e,t,n)=>new Nn({valueType:t,keyType:e,typeName:T.ZodMap,...R(n)});var Pn=class e extends O{_parse(t){let{status:n,ctx:s}=this._processInputParams(t);if(s.parsedType!==E.set)return k(s,{code:b.invalid_type,expected:E.set,received:s.parsedType}),I;let i=this._def;i.minSize!==null&&s.data.size<i.minSize.value&&(k(s,{code:b.too_small,minimum:i.minSize.value,type:"set",inclusive:!0,exact:!1,message:i.minSize.message}),n.dirty()),i.maxSize!==null&&s.data.size>i.maxSize.value&&(k(s,{code:b.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),n.dirty());let o=this._def.valueType;function a(l){let d=new Set;for(let m of l){if(m.status==="aborted")return I;m.status==="dirty"&&n.dirty(),d.add(m.value)}return{status:n.value,value:d}}let c=[...s.data.values()].map((l,d)=>o._parse(new Ce(s,l,s.path,d)));return s.common.async?Promise.all(c).then(l=>a(l)):a(c)}min(t,n){return new e({...this._def,minSize:{value:t,message:A.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:A.toString(n)}})}size(t,n){return this.min(t,n).max(t,n)}nonempty(t){return this.min(1,t)}};Pn.create=(e,t)=>new Pn({valueType:e,minSize:null,maxSize:null,typeName:T.ZodSet,...R(t)});var Ts=class e extends O{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==E.function)return k(n,{code:b.invalid_type,expected:E.function,received:n.parsedType}),I;function s(c,l){return fr({data:c,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,xn(),ot].filter(d=>!!d),issueData:{code:b.invalid_arguments,argumentsError:l}})}function i(c,l){return fr({data:c,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,xn(),ot].filter(d=>!!d),issueData:{code:b.invalid_return_type,returnTypeError:l}})}let o={errorMap:n.common.contextualErrorMap},a=n.data;if(this._def.returns instanceof yt){let c=this;return se(async function(...l){let d=new me([]),m=await c._def.args.parseAsync(l,o).catch(y=>{throw d.addIssue(s(l,y)),d}),g=await Reflect.apply(a,this,m);return await c._def.returns._def.type.parseAsync(g,o).catch(y=>{throw d.addIssue(i(g,y)),d})})}else{let c=this;return se(function(...l){let d=c._def.args.safeParse(l,o);if(!d.success)throw new me([s(l,d.error)]);let m=Reflect.apply(a,this,d.data),g=c._def.returns.safeParse(m,o);if(!g.success)throw new me([i(m,g.error)]);return g.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:Be.create(t).rest(ct.create())})}returns(t){return new e({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,n,s){return new e({args:t||Be.create([]).rest(ct.create()),returns:n||ct.create(),typeName:T.ZodFunction,...R(s)})}},Zt=class extends O{get schema(){return this._def.getter()}_parse(t){let{ctx:n}=this._processInputParams(t);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};Zt.create=(e,t)=>new Zt({getter:e,typeName:T.ZodLazy,...R(t)});var Gt=class extends O{_parse(t){if(t.data!==this._def.value){let n=this._getOrReturnCtx(t);return k(n,{received:n.data,code:b.invalid_literal,expected:this._def.value}),I}return{status:"valid",value:t.data}}get value(){return this._def.value}};Gt.create=(e,t)=>new Gt({value:e,typeName:T.ZodLiteral,...R(t)});function zm(e,t){return new Yt({values:e,typeName:T.ZodEnum,...R(t)})}var Yt=class e extends O{_parse(t){if(typeof t.data!="string"){let n=this._getOrReturnCtx(t),s=this._def.values;return k(n,{expected:P.joinValues(s),received:n.parsedType,code:b.invalid_type}),I}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(t.data)){let n=this._getOrReturnCtx(t),s=this._def.values;return k(n,{received:n.data,code:b.invalid_enum_value,options:s}),I}return se(t.data)}get options(){return this._def.values}get enum(){let t={};for(let n of this._def.values)t[n]=n;return t}get Values(){let t={};for(let n of this._def.values)t[n]=n;return t}get Enum(){let t={};for(let n of this._def.values)t[n]=n;return t}extract(t,n=this._def){return e.create(t,{...this._def,...n})}exclude(t,n=this._def){return e.create(this.options.filter(s=>!t.includes(s)),{...this._def,...n})}};Yt.create=zm;var Jt=class extends O{_parse(t){let n=P.getValidEnumValues(this._def.values),s=this._getOrReturnCtx(t);if(s.parsedType!==E.string&&s.parsedType!==E.number){let i=P.objectValues(n);return k(s,{expected:P.joinValues(i),received:s.parsedType,code:b.invalid_type}),I}if(this._cache||(this._cache=new Set(P.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let i=P.objectValues(n);return k(s,{received:s.data,code:b.invalid_enum_value,options:i}),I}return se(t.data)}get enum(){return this._def.values}};Jt.create=(e,t)=>new Jt({values:e,typeName:T.ZodNativeEnum,...R(t)});var yt=class extends O{unwrap(){return this._def.type}_parse(t){let{ctx:n}=this._processInputParams(t);if(n.parsedType!==E.promise&&n.common.async===!1)return k(n,{code:b.invalid_type,expected:E.promise,received:n.parsedType}),I;let s=n.parsedType===E.promise?n.data:Promise.resolve(n.data);return se(s.then(i=>this._def.type.parseAsync(i,{path:n.path,errorMap:n.common.contextualErrorMap})))}};yt.create=(e,t)=>new yt({type:e,typeName:T.ZodPromise,...R(t)});var Oe=class extends O{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===T.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){let{status:n,ctx:s}=this._processInputParams(t),i=this._def.effect||null,o={addIssue:a=>{k(s,a),a.fatal?n.abort():n.dirty()},get path(){return s.path}};if(o.addIssue=o.addIssue.bind(o),i.type==="preprocess"){let a=i.transform(s.data,o);if(s.common.async)return Promise.resolve(a).then(async c=>{if(n.value==="aborted")return I;let l=await this._def.schema._parseAsync({data:c,path:s.path,parent:s});return l.status==="aborted"?I:l.status==="dirty"?Ut(l.value):n.value==="dirty"?Ut(l.value):l});{if(n.value==="aborted")return I;let c=this._def.schema._parseSync({data:a,path:s.path,parent:s});return c.status==="aborted"?I:c.status==="dirty"?Ut(c.value):n.value==="dirty"?Ut(c.value):c}}if(i.type==="refinement"){let a=c=>{let l=i.refinement(c,o);if(s.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return c};if(s.common.async===!1){let c=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});return c.status==="aborted"?I:(c.status==="dirty"&&n.dirty(),a(c.value),{status:n.value,value:c.value})}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(c=>c.status==="aborted"?I:(c.status==="dirty"&&n.dirty(),a(c.value).then(()=>({status:n.value,value:c.value}))))}if(i.type==="transform")if(s.common.async===!1){let a=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});if(!ft(a))return I;let c=i.transform(a.value,o);if(c instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:c}}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(a=>ft(a)?Promise.resolve(i.transform(a.value,o)).then(c=>({status:n.value,value:c})):I);P.assertNever(i)}};Oe.create=(e,t,n)=>new Oe({schema:e,typeName:T.ZodEffects,effect:t,...R(n)});Oe.createWithPreprocess=(e,t,n)=>new Oe({schema:t,effect:{type:"preprocess",transform:e},typeName:T.ZodEffects,...R(n)});var Re=class extends O{_parse(t){return this._getType(t)===E.undefined?se(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};Re.create=(e,t)=>new Re({innerType:e,typeName:T.ZodOptional,...R(t)});var Ve=class extends O{_parse(t){return this._getType(t)===E.null?se(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};Ve.create=(e,t)=>new Ve({innerType:e,typeName:T.ZodNullable,...R(t)});var Xt=class extends O{_parse(t){let{ctx:n}=this._processInputParams(t),s=n.data;return n.parsedType===E.undefined&&(s=this._def.defaultValue()),this._def.innerType._parse({data:s,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};Xt.create=(e,t)=>new Xt({innerType:e,typeName:T.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...R(t)});var Qt=class extends O{_parse(t){let{ctx:n}=this._processInputParams(t),s={...n,common:{...n.common,issues:[]}},i=this._def.innerType._parse({data:s.data,path:s.path,parent:{...s}});return Rn(i)?i.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new me(s.common.issues)},input:s.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new me(s.common.issues)},input:s.data})}}removeCatch(){return this._def.innerType}};Qt.create=(e,t)=>new Qt({innerType:e,typeName:T.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...R(t)});var Mn=class extends O{_parse(t){if(this._getType(t)!==E.nan){let s=this._getOrReturnCtx(t);return k(s,{code:b.invalid_type,expected:E.nan,received:s.parsedType}),I}return{status:"valid",value:t.data}}};Mn.create=e=>new Mn({typeName:T.ZodNaN,...R(e)});var Fw=Symbol("zod_brand"),gr=class extends O{_parse(t){let{ctx:n}=this._processInputParams(t),s=n.data;return this._def.type._parse({data:s,path:n.path,parent:n})}unwrap(){return this._def.type}},hr=class e extends O{_parse(t){let{status:n,ctx:s}=this._processInputParams(t);if(s.common.async)return(async()=>{let o=await this._def.in._parseAsync({data:s.data,path:s.path,parent:s});return o.status==="aborted"?I:o.status==="dirty"?(n.dirty(),Ut(o.value)):this._def.out._parseAsync({data:o.value,path:s.path,parent:s})})();{let i=this._def.in._parseSync({data:s.data,path:s.path,parent:s});return i.status==="aborted"?I:i.status==="dirty"?(n.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:s.path,parent:s})}}static create(t,n){return new e({in:t,out:n,typeName:T.ZodPipeline})}},en=class extends O{_parse(t){let n=this._def.innerType._parse(t),s=i=>(ft(i)&&(i.value=Object.freeze(i.value)),i);return Rn(n)?n.then(i=>s(i)):s(n)}unwrap(){return this._def.innerType}};en.create=(e,t)=>new en({innerType:e,typeName:T.ZodReadonly,...R(t)});function Fm(e,t){let n=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof n=="string"?{message:n}:n}function qm(e,t={},n){return e?ht.create().superRefine((s,i)=>{let o=e(s);if(o instanceof Promise)return o.then(a=>{if(!a){let c=Fm(t,s),l=c.fatal??n??!0;i.addIssue({code:"custom",...c,fatal:l})}});if(!o){let a=Fm(t,s),c=a.fatal??n??!0;i.addIssue({code:"custom",...a,fatal:c})}}):ht.create()}var $w={object:fe.lazycreate},T;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(T||(T={}));var Uw=(e,t={message:`Input not instance of ${e.name}`})=>qm(n=>n instanceof e,t),Bm=gt.create,Vm=jt.create,jw=Mn.create,zw=zt.create,Km=qt.create,qw=Bt.create,Bw=On.create,Vw=Vt.create,Kw=Kt.create,Hw=ht.create,Ww=ct.create,Zw=De.create,Gw=Ln.create,Yw=lt.create,Jw=fe.create,Xw=fe.strictCreate,Qw=Ht.create,eI=ws.create,tI=Wt.create,nI=Be.create,rI=Is.create,sI=Nn.create,iI=Pn.create,oI=Ts.create,aI=Zt.create,cI=Gt.create,lI=Yt.create,uI=Jt.create,dI=yt.create,pI=Oe.create,mI=Re.create,fI=Ve.create,gI=Oe.createWithPreprocess,hI=hr.create,yI=()=>Bm().optional(),SI=()=>Vm().optional(),bI=()=>Km().optional(),_I={string:(e=>gt.create({...e,coerce:!0})),number:(e=>jt.create({...e,coerce:!0})),boolean:(e=>qt.create({...e,coerce:!0})),bigint:(e=>zt.create({...e,coerce:!0})),date:(e=>Bt.create({...e,coerce:!0}))};var kI=I;var Go=["active","paused","archived"];var Yo=["local_trusted","authenticated"],Jo=["private","public"],Xo=["loopback","lan","tailnet","custom"],Qo=["auto","explicit"],ea=["active","paused","idle","running","error","pending_approval","terminated"],yr=["process","http","acpx_local","claude_local","codex_local","cursor_cloud","gemini_local","hermes_gateway","hermes_local","opencode_local","pi_local","cursor","openclaw_gateway"],ta=["ceo","cto","cmo","cfo","security","engineer","designer","pm","qa","devops","researcher","general"];var na=["cheap"],ra=["bot","cpu","brain","zap","rocket","code","terminal","shield","eye","search","wrench","hammer","lightbulb","sparkles","star","heart","flame","bug","cog","database","globe","lock","mail","message-square","file-code","git-branch","package","puzzle","target","wand","atom","circuit-board","radar","swords","telescope","microscope","crown","gem","hexagon","pentagon","fingerprint"],sa=["folder","rocket","code","terminal","database","globe","package","boxes","box","layers","briefcase","compass","target","flame","zap","star","bug","wrench","hammer","lightbulb","sparkles","shield","lock","search","cog","brain","cpu","git-branch","file-code","puzzle","gem","atom","heart","mail","message-square","crown","radar","telescope","hexagon"],Sr=["backlog","todo","in_progress","in_review","done","blocked","cancelled"],Hm=["backlog","todo","in_progress","in_review","blocked","done"],ia=Hm.join(","),Ke=["critical","high","medium","low"],xs=["standard","ask","planning"],Wm=1024,oa=["user","agent","system"],aa=["message","system_notice"],ca=["neutral","info","success","warning","danger"],la=["text","code","key_value","issue_link","agent_link","run_link"];function ua(e){return typeof e!="number"||!Number.isFinite(e)?0:Math.min(Wm,Math.max(0,Math.floor(e)))}var da=["suggest_tasks","ask_user_questions","request_confirmation","request_checkbox_confirmation"],Dn=200,pa=["pending","accepted","rejected","answered","cancelled","expired","failed"],ma=["none","wake_assignee","wake_assignee_on_accept"];var fa=["product_bug","platform_bug"],ga=["default","plugin_operation"],ha=["missing_disposition","stranded_assigned_issue","workspace_validation","configuration_validation","active_run_watchdog","issue_graph_liveness"],ya=["active","escalated","resolved","cancelled"],Sa=["agent","user","board","system"],ba=["restored","delegated","false_positive","blocked","escalated","cancelled"];var _a=["pause","resume","cancel","restore"];var ka=["manual","after_active_runs_finish"],Zm="continuation-summary",Gm="pipeline-case-body";var Ym=[Zm,Gm],xZ=new Set(Ym);var va=["open","resolved"],Ea=["active","stale","orphaned"],Aa=["exact","duplicate","fuzzy","ambiguous","missing"],wa=["unknown","open","waiting","running","succeeded","failed","blocked","closed","archived","auth_required","unreachable"],Ia=["neutral","info","success","warning","danger","muted"],Ta=["unknown","fresh","stale","auth_required","unreachable"],xa=["title","description","comment","document","property","plugin"],Ra=["exact","likely","possible"],Ca=["normal","auto"],Rs=["review","approval"],Cs=["assignee","board"],Os=["external_service"],Ls=["wake_owner","create_recovery_issue","escalate_to_board"],Oa=["idle","pending","changes_requested","completed"],La=["scheduled","triggered","cleared"],Na=["manual","triggered","done","cancelled","invalid_status","invalid_assignee","dispatch_skipped","timeout_exceeded","max_attempts_exhausted"],Pa=["approved","changes_requested"],Ma=["company","team","agent","task"],Da=["planned","active","achieved","cancelled"],Fa=["backlog","planned","in_progress","completed","cancelled"],$a=["local","ssh","sandbox","plugin"],Ua=["active","archived"],ja=["active","released","expired","failed","retained","pending_cleanup"];var za=["pending","success","failed"],qa=["snapshot","image","provider_template","unknown"],Ba=["active","superseded","revoked","failed"],Va=["starting","waiting_for_user","capturing","promoted","cancelled","timed_out","failed"],Ka=["ssh","browser_terminal","unknown"],Fn=["active","paused","archived"],$n=["coalesce_if_active","always_enqueue","skip_if_active"],Un=["skip_missed","enqueue_missed_with_cap"],br=["schedule","webhook","api"],tn=["bearer","hmac_sha256","github_hmac","none"],Ha=["text","textarea","number","boolean","select","date"];var Wa=["hire_agent","approve_ceo_strategy","budget_override_required","request_board_approval"];var St=["local_encrypted","aws_secrets_manager","gcp_secret_manager","vault"],Ns=["ready","warning","coming_soon","disabled"];var Ps=["active","disabled","archived","deleted"];var Za=["paperclip_managed","external_reference"];var Jm=["agent","project","environment","routine","plugin","issue","run","system"];var Ga=["local_disk","s3"],Ya=["metered_api","subscription_included","subscription_overage","credits","fixed","unknown"],Ja=["inference_charge","platform_fee","credit_purchase","credit_refund","credit_expiry","byok_fee","gateway_overhead","log_storage_charge","logpush_charge","provisioned_capacity_charge","training_charge","custom_model_import_charge","custom_model_storage_charge","manual_adjustment"],Xa=["debit","credit"],Qa=["input_token","output_token","cached_input_token","request","credit_usd","credit_unit","model_unit_minute","model_unit_hour","gb_month","train_token","unknown"],ec=["company","agent","project"],tc=["billed_cents"],nc=["calendar_month_utc","lifetime"];var rc=["keep_paused","raise_budget_and_resume"];var jn=["owner","admin","operator","viewer"];var sc=["human","agent","both"],Ms=["human","agent"],ic=["pending_approval","approved","rejected"],Ds=["agents:create","skills:create","environments:manage","users:invite","users:manage_permissions","tasks:assign","tasks:assign_scope","tasks:manage_active_checkouts","pipelines:write","joins:approve"];var Fs=["installed","ready","disabled","error","upgrade_pending","uninstalled"],$s=["connector","workspace","automation","ui"],Us=["companies.read","projects.read","project.workspaces.read","execution.workspaces.read","issues.read","issue.relations.read","issue.subtree.read","issue.comments.read","issue.documents.read","agents.read","goals.read","goals.create","goals.update","activity.read","costs.read","issues.orchestration.read","access.members.read","access.invites.read","authorization.grants.read","authorization.policies.read","authorization.audit.read","database.namespace.read","issues.create","issues.update","issue.relations.write","issues.checkout","issues.wakeup","issue.comments.create","issue.interactions.create","issue.documents.write","projects.managed","routines.managed","skills.managed","agents.pause","agents.resume","agents.invoke","agents.managed","access.members.write","access.invites.write","authorization.grants.write","authorization.policies.write","agent.sessions.create","agent.sessions.list","agent.sessions.send","agent.sessions.close","activity.log.write","metrics.write","telemetry.track","database.namespace.migrate","database.namespace.write","external.objects.detect","external.objects.read","external.objects.write","external.objects.refresh","plugin.state.read","plugin.state.write","events.subscribe","events.emit","jobs.schedule","webhooks.receive","api.routes.register","http.outbound","secrets.read-ref","environment.drivers.register","local.folders","agent.tools.register","instance.settings.register","ui.sidebar.register","ui.page.register","ui.detailTab.register","ui.dashboardWidget.register","ui.commentAnnotation.register","ui.action.register"];var oc=["companies","projects","goals","agents","issues","issue_documents","issue_relations","issue_comments","heartbeat_runs","cost_events","approvals","issue_approvals","budget_incidents"],ac=["GET","POST","PATCH","DELETE"],cc=["board","agent","board-or-agent","webhook"],lc=["none","required-for-agent-in-progress","always-for-agent"],js=["page","detailTab","taskDetailView","dashboardWidget","sidebar","routeSidebar","sidebarPanel","projectSidebarItem","globalToolbarButton","toolbarButton","contextMenuItem","commentAnnotation","commentContextMenuItem","settingsPage","companySettingsPage"],uc=50,dc=100;var Xm=["dashboard","onboarding","companies","company","settings","plugins","org","agents","projects","issues","goals","approvals","costs","activity","inbox","workspaces","design-guide","tests"],zs=["general","environments","access","members","invites","secrets","instance"],pc=["page","detailTab","taskDetailView","dashboardWidget","sidebar","sidebarPanel","projectSidebarItem","globalToolbarButton","toolbarButton","contextMenuItem","commentAnnotation","commentContextMenuItem","settingsPage"],mc=["navigate","openModal","openDrawer","openPopover","performAction","deepLink"],fc=["inline","compact","default","wide","full"],gc=["hostInline","hostOverlay","hostRoute","external","iframe"],_r=["project","issue","agent","goal","run","comment","execution_workspace","project_workspace"],zn=["instance","company","project","project_workspace","agent","issue","goal","run"];var hc=r.string().trim().min(1).default("process").describe(`Known built-in adapters: ${yr.join(", ")}. External adapters may register additional non-empty string types at runtime.`),yc=r.string().trim().min(1).optional();var qs=["standard","low_trust_review"];var kr="low_trust_review";var Bs="quarantine";function qn(e){let t=e?.trim();return t||void 0}function Sc(e){let t=qn(e)?.toLowerCase();return t==="127.0.0.1"||t==="localhost"||t==="::1"}function bc(e){let t=qn(e)?.toLowerCase();return t==="0.0.0.0"||t==="::"}function Qm(e,t){let n=qn(e),s=qn(t?.tailnetBindHost);return!n||Sc(n)?"loopback":bc(n)?"lan":s&&n===s?"tailnet":"custom"}function _c(e){let t=e.bind??Qm(e.host),n=qn(e.customBindHost),s=[];if(e.deploymentMode==="local_trusted"&&t!=="loopback"&&s.push("local_trusted requires server.bind=loopback"),t==="custom"&&!n){let i=qn(e.host);(!i||Sc(i)||bc(i))&&s.push("server.customBindHost is required when server.bind=custom")}return e.deploymentMode==="authenticated"&&e.deploymentExposure==="public"&&t==="tailnet"&&s.push("server.bind=tailnet is only supported for authenticated/private deployments"),s}var Vs=[3,7,14],Ks=[1,2,4],Hs=[1,3,6],Ws=24,vr=1,Er=720,nn={dailyDays:7,weeklyWeeks:4,monthlyMonths:1};var Zs=["all","issues","comments","documents","artifacts","agents","projects"];var Gs=["joined","left"];var ef=r.string().uuid(),tf=r.object({orderedIds:r.array(ef),updatedAt:r.coerce.date().nullable()}),nf=r.object({orderedIds:r.array(ef)});var vc=r.enum(Gs),rf=r.object({state:vc.optional(),starred:r.boolean().optional()}).refine(e=>e.state!==void 0||e.starred!==void 0,{message:"state or starred is required"}).refine(e=>!(e.state==="left"&&e.starred===!0),{message:"starred resources must be joined",path:["starred"]});var Ys=r.enum(["active","idle","in_review","archived","cleanup_failed"]),II=r.preprocess(e=>{if(e==null)return;let n=(Array.isArray(e)?e:[e]).flatMap(s=>typeof s!="string"?[]:s.split(",").map(i=>i.trim()).filter(Boolean));return n.length>0?n:void 0},r.array(Ys).optional()),sf=r.object({projectId:r.string().uuid().optional(),status:II,limit:r.coerce.number().int().min(1).max(dc).optional().default(uc),offset:r.coerce.number().int().min(0).optional().default(0)}).strict(),of=r.object({environmentId:r.string().uuid().optional().nullable(),provisionCommand:r.string().optional().nullable(),teardownCommand:r.string().optional().nullable(),cleanupCommand:r.string().optional().nullable(),workspaceRuntime:r.record(r.string(),r.unknown()).optional().nullable(),desiredState:r.enum(["running","stopped","manual"]).optional().nullable(),serviceStates:r.record(r.enum(["running","stopped","manual"])).optional().nullable()}).strict(),TI=r.object({workspaceCommandId:r.string().min(1).optional().nullable(),runtimeServiceId:r.string().uuid().optional().nullable(),serviceIndex:r.number().int().nonnegative().optional().nullable()}).strict(),Ec=r.enum(["ready","ready_with_warnings","blocked"]),Ac=r.enum(["archive_record","stop_runtime_services","cleanup_command","teardown_command","git_worktree_remove","git_branch_delete","remove_local_directory"]),wc=r.object({kind:Ac,label:r.string(),description:r.string(),command:r.string().nullable()}).strict(),Ic=r.object({id:r.string().uuid(),identifier:r.string().nullable(),title:r.string(),status:r.string(),isTerminal:r.boolean()}).strict(),Tc=r.object({repoRoot:r.string().nullable(),workspacePath:r.string().nullable(),branchName:r.string().nullable(),baseRef:r.string().nullable(),hasDirtyTrackedFiles:r.boolean(),hasUntrackedFiles:r.boolean(),dirtyEntryCount:r.number().int().nonnegative(),untrackedEntryCount:r.number().int().nonnegative(),aheadCount:r.number().int().nonnegative().nullable(),behindCount:r.number().int().nonnegative().nullable(),isMergedIntoBase:r.boolean().nullable(),createdByRuntime:r.boolean()}).strict(),xI=r.object({id:r.string(),companyId:r.string().uuid(),projectId:r.string().uuid().nullable(),projectWorkspaceId:r.string().uuid().nullable(),executionWorkspaceId:r.string().uuid().nullable(),issueId:r.string().uuid().nullable(),scopeType:r.enum(["project_workspace","execution_workspace","run","agent"]),scopeId:r.string().nullable(),serviceName:r.string(),status:r.enum(["starting","running","stopped","failed"]),lifecycle:r.enum(["shared","ephemeral"]),reuseKey:r.string().nullable(),command:r.string().nullable(),cwd:r.string().nullable(),port:r.number().int().nullable(),url:r.string().nullable(),provider:r.enum(["local_process","adapter_managed"]),providerRef:r.string().nullable(),ownerAgentId:r.string().uuid().nullable(),startedByRunId:r.string().uuid().nullable(),lastUsedAt:r.coerce.date(),startedAt:r.coerce.date(),stoppedAt:r.coerce.date().nullable(),stopPolicy:r.record(r.string(),r.unknown()).nullable(),healthStatus:r.enum(["unknown","healthy","unhealthy"]),configIndex:r.number().int().nonnegative().nullable().optional(),createdAt:r.coerce.date(),updatedAt:r.coerce.date()}).strict(),af=r.object({workspaceId:r.string().uuid(),state:Ec,blockingReasons:r.array(r.string()),warnings:r.array(r.string()),linkedIssues:r.array(Ic),plannedActions:r.array(wc),isDestructiveCloseAllowed:r.boolean(),isSharedWorkspace:r.boolean(),isProjectPrimaryWorkspace:r.boolean(),git:Tc.nullable(),runtimeServices:r.array(xI)}).strict(),cf=r.object({name:r.string().min(1).optional(),cwd:r.string().optional().nullable(),repoUrl:r.string().optional().nullable(),baseRef:r.string().optional().nullable(),branchName:r.string().optional().nullable(),providerRef:r.string().optional().nullable(),status:Ys.optional(),cleanupEligibleAt:r.string().datetime().optional().nullable(),cleanupReason:r.string().optional().nullable(),config:of.optional().nullable(),metadata:r.record(r.string(),r.unknown()).optional().nullable()}).strict();var xc=["issue_comment","issue_document_revision"],Rc=["up","down"],Cc=["allowed","not_allowed","prompt"],Oc="prompt",Lc=["local_only","pending","sent","failed"];var Nc=r.enum(xc),lf=r.enum(Lc),Pc=r.enum(Rc),Mc=r.enum(Cc),uf=r.object({targetType:Nc,targetId:r.string().uuid(),vote:Pc,reason:r.string().trim().max(1e3).optional(),allowSharing:r.boolean().optional()});function Dc(e,t){return r.number().refine(n=>e.includes(n),{message:`${t} must be one of: ${e.join(", ")}`})}var RI=r.object({dailyDays:Dc(Vs,"dailyDays").default(nn.dailyDays),weeklyWeeks:Dc(Ks,"weeklyWeeks").default(nn.weeklyWeeks),monthlyMonths:Dc(Hs,"monthlyMonths").default(nn.monthlyMonths)}),Js=r.object({censorUsernameInLogs:r.boolean().default(!1),keyboardShortcuts:r.boolean().default(!1),feedbackDataSharingPreference:Mc.default(Oc),backupRetention:RI.default(nn),executionMode:r.enum(["kubernetes","any"]).optional()}).strict(),df=Js.partial(),Xs=r.object({enableEnvironments:r.boolean().default(!1),enableIsolatedWorkspaces:r.boolean().default(!1),enableStreamlinedLeftNavigation:r.boolean().default(!0),enablePipelines:r.boolean().default(!1),enableConferenceRoomChat:r.boolean().default(!1),enableTaskWatchdogs:r.boolean().default(!1),enableIssuePlanDecompositions:r.boolean().default(!1),enableExperimentalFileViewer:r.boolean().default(!1),enableCloudSync:r.boolean().default(!1),enableExternalObjects:r.boolean().default(!1),enableServerInfoDebugView:r.boolean().default(!1),autoRestartDevServerWhenIdle:r.boolean().default(!1),enableIssueGraphLivenessAutoRecovery:r.boolean().default(!1),enableWorkspaceBranchReconcileForward:r.boolean().default(!1),issueGraphLivenessAutoRecoveryLookbackHours:r.number().int().min(vr).max(Er).default(Ws)}).strict(),pf=Xs.partial(),mf=r.object({defaultEnvironmentId:r.string().uuid().nullable().optional()}).strict(),ff=r.object({lookbackHours:r.number().int().min(vr).max(Er).optional()}).strict(),gf=r.object({id:r.string().uuid(),defaultEnvironmentId:r.string().uuid().nullable(),general:Js,experimental:Xs,createdAt:r.union([r.date(),r.string().datetime()]),updatedAt:r.union([r.date(),r.string().datetime()])}).strict();var hf=r.object({scopeType:r.enum(ec),scopeId:r.string().uuid(),metric:r.enum(tc).optional().default("billed_cents"),windowKind:r.enum(nc).optional().default("calendar_month_utc"),amount:r.number().int().nonnegative(),warnPercent:r.number().int().min(1).max(99).optional().default(80),hardStopEnabled:r.boolean().optional().default(!0),notifyEnabled:r.boolean().optional().default(!0),isActive:r.boolean().optional().default(!0)}),yf=r.object({action:r.enum(rc),amount:r.number().int().nonnegative().optional(),decisionNote:r.string().optional().nullable()}).superRefine((e,t)=>{e.action==="raise_budget_and_resume"&&typeof e.amount!="number"&&t.addIssue({code:r.ZodIssueCode.custom,message:"amount is required when raising a budget",path:["amount"]})});var Sf=r.string().uuid().nullable().optional(),bf=r.string().regex(/^#[0-9a-fA-F]{6}$/).nullable().optional(),CI=r.string().min(1).nullable().optional(),_f=r.number().int().min(1).max(1073741824),Fc=r.object({name:r.string().min(1),description:r.string().optional().nullable(),budgetMonthlyCents:r.number().int().nonnegative().optional().default(0),attachmentMaxBytes:_f.optional(),defaultResponsibleUserId:r.string().min(1).nullable().optional()}),kf=Fc.partial().extend({status:r.enum(Go).optional(),spentMonthlyCents:r.number().int().nonnegative().optional(),requireBoardApprovalForNewAgents:r.boolean().optional(),feedbackDataSharingEnabled:r.boolean().optional(),feedbackDataSharingConsentAt:r.coerce.date().nullable().optional(),feedbackDataSharingConsentByUserId:r.string().min(1).nullable().optional(),feedbackDataSharingTermsVersion:CI,brandColor:bf,logoAssetId:Sf,attachmentMaxBytes:_f.optional()}),vf=r.object({name:r.string().min(1).optional(),description:r.string().nullable().optional(),brandColor:bf,logoAssetId:Sf}).strict().refine(e=>e.name!==void 0||e.description!==void 0||e.brandColor!==void 0||e.logoAssetId!==void 0,"At least one branding field must be provided");var Bn=r.string().trim().min(1).max(120).regex(/^[a-zA-Z0-9_.-]+$/),ei=r.union([r.literal("latest"),r.number().int().positive()]),OI=r.enum(["active","disabled","archived"]),$c=r.object({type:r.literal("plain"),value:r.string()}),Uc=r.object({type:r.literal("secret_ref"),secretId:r.string().uuid(),version:ei.optional()}),jc=r.object({type:r.literal("user_secret_ref"),key:Bn,version:ei.optional(),required:r.boolean().optional().default(!0),allowMissingOverride:r.boolean().optional().default(!1)}),zc=r.union([r.string(),$c,Uc,jc]),be=r.record(r.string(),zc),Ef=r.object({name:r.string().min(1),key:Bn.optional(),provider:r.enum(St).optional(),providerConfigId:r.string().uuid().optional().nullable(),managedMode:r.enum(Za).optional(),value:r.string().min(1).optional().nullable(),description:r.string().optional().nullable(),externalRef:r.string().optional().nullable(),providerMetadata:r.record(r.string(),r.unknown()).optional().nullable(),providerVersionRef:r.string().optional().nullable()}).superRefine((e,t)=>{if((e.managedMode??"paperclip_managed")==="external_reference"){e.externalRef?.trim()||t.addIssue({code:r.ZodIssueCode.custom,path:["externalRef"],message:"External reference secrets require externalRef"});return}e.externalRef?.trim()&&t.addIssue({code:r.ZodIssueCode.custom,path:["externalRef"],message:"Managed secrets cannot set externalRef"}),e.value?.trim()||t.addIssue({code:r.ZodIssueCode.custom,path:["value"],message:"Managed secrets require value"})});function Af(e,t){!e.value?.trim()&&!e.externalRef?.trim()&&e.providerVersionRef==null&&e.providerConfigId==null&&t.addIssue({code:r.ZodIssueCode.custom,path:["value"],message:"Secret rotation requires value, externalRef, providerVersionRef, or providerConfigId"})}var wf=r.object({value:r.string().min(1).optional().nullable(),externalRef:r.string().optional().nullable(),providerVersionRef:r.string().optional().nullable(),providerConfigId:r.string().uuid().optional().nullable()}).superRefine(Af),If=r.object({name:r.string().min(1).optional(),key:Bn.optional(),status:r.enum(Ps).optional(),providerConfigId:r.string().uuid().optional().nullable(),description:r.string().optional().nullable(),externalRef:r.string().optional().nullable(),providerMetadata:r.record(r.string(),r.unknown()).optional().nullable()}),ti=r.object({targetType:r.enum(Jm),targetId:r.string().min(1),configPath:r.string().min(1)}),Tf=ti.extend({secretId:r.string().uuid(),versionSelector:ei.default("latest"),required:r.boolean().default(!0),label:r.string().optional().nullable()}),xf=r.object({key:Bn,name:r.string().trim().min(1).max(160),description:r.string().trim().max(500).optional().nullable(),status:OI.optional(),provider:r.enum(St).optional(),providerConfigId:r.string().uuid().optional().nullable(),managedMode:r.enum(Za).optional(),providerMetadata:r.record(r.string(),r.unknown()).optional().nullable(),usageGuidance:r.string().trim().max(1e3).optional().nullable()}),Rf=r.object({name:r.string().trim().min(1).max(160).optional(),description:r.string().trim().max(500).optional().nullable(),status:r.enum(Ps).optional(),providerConfigId:r.string().uuid().optional().nullable(),providerMetadata:r.record(r.string(),r.unknown()).optional().nullable(),usageGuidance:r.string().trim().max(1e3).optional().nullable()}),Cf=r.object({definitionKey:Bn.optional(),definitionId:r.string().uuid().optional(),value:r.string().min(1).optional().nullable(),externalRef:r.string().optional().nullable(),providerVersionRef:r.string().optional().nullable(),providerConfigId:r.string().uuid().optional().nullable()}).superRefine((e,t)=>{!e.definitionKey&&!e.definitionId&&t.addIssue({code:r.ZodIssueCode.custom,path:["definitionId"],message:"User secret value requires definitionId or definitionKey"}),!e.value?.trim()&&!e.externalRef?.trim()&&t.addIssue({code:r.ZodIssueCode.custom,path:["value"],message:"User secret value requires value or externalRef"})}),Of=r.object({status:r.enum(Ps).optional(),value:r.string().min(1).optional().nullable(),externalRef:r.string().min(1).optional().nullable(),providerVersionRef:r.string().min(1).optional().nullable(),providerConfigId:r.string().uuid().optional().nullable()}),Lf=r.object({value:r.string().min(1).optional().nullable(),externalRef:r.string().min(1).optional().nullable(),providerVersionRef:r.string().min(1).optional().nullable(),providerConfigId:r.string().uuid().optional().nullable()}).superRefine(Af),Nf=ti.extend({definitionKey:Bn,envKey:r.string().trim().min(1),versionSelector:ei.default("latest"),required:r.boolean().default(!0),allowMissingOverride:r.boolean().default(!1),label:r.string().optional().nullable()}),LI=r.string().trim().min(1).max(160),He=LI.optional().nullable(),NI=/^(access[-_]?key([-_]?id)?|secret[-_]?access[-_]?key|secret[-_]?key|token|password|passwd|credential|credentials|private[-_]?key|pem|jwt|session[-_]?token|service[-_]?account([-_]?json)?|client[-_]?secret|secret[-_]?id|unseal[-_]?key|recovery[-_]?key|key[-_]?file([-_]?path)?|token[-_]?file([-_]?path)?)$/i;function qc(e,t){if(!(!e||typeof e!="object"||Array.isArray(e)))for(let n of Object.keys(e))NI.test(n)&&t.addIssue({code:r.ZodIssueCode.custom,path:["config",n],message:`Provider vault config cannot persist sensitive field: ${n}`})}var Bc=r.object({backupReminderAcknowledged:r.boolean().optional()}).strict(),Vc=r.object({region:r.string().trim().regex(/^[a-z]{2}(?:-gov)?-[a-z]+-\d+$/,"Invalid AWS region"),namespace:He,secretNamePrefix:He,kmsKeyId:r.string().trim().min(1).max(512).optional().nullable(),ownerTag:He,environmentTag:He}).strict(),Kc=r.object({projectId:r.string().trim().min(1).max(128).regex(/^[a-z][a-z0-9-]{4,127}$/).optional().nullable(),location:He,namespace:He,secretNamePrefix:He}).strict(),Pf=r.preprocess(e=>typeof e=="string"?e.trim():e,r.string().url().superRefine((e,t)=>{let n;try{n=new URL(e)}catch{return}let s=n.pathname!==""&&n.pathname!=="/";(n.protocol!=="http:"&&n.protocol!=="https:"||n.username||n.password||n.search||n.hash||s)&&t.addIssue({code:r.ZodIssueCode.custom,message:"Vault address must be an origin-only HTTP(S) URL without credentials, path, query, or fragment"})}).transform(e=>new URL(e).origin));function PI(e,t){if(e==null)return;let n=Pf.safeParse(e);if(!n.success)for(let s of n.error.issues)t.addIssue({...s,path:["config","address",...s.path]})}var Hc=r.object({address:Pf.optional().nullable(),namespace:He,mountPath:He,secretPathPrefix:He}).strict(),ni=r.discriminatedUnion("provider",[r.object({provider:r.literal("local_encrypted"),config:Bc}),r.object({provider:r.literal("aws_secrets_manager"),config:Vc}),r.object({provider:r.literal("gcp_secret_manager"),config:Kc}),r.object({provider:r.literal("vault"),config:Hc})]),Mf=r.object({provider:r.enum(St),displayName:r.string().trim().min(1).max(120),status:r.enum(Ns).optional(),isDefault:r.boolean().optional(),config:r.record(r.string(),r.unknown()).default({})}).superRefine((e,t)=>{qc(e.config,t);let n=ni.safeParse({provider:e.provider,config:e.config});if(!n.success)for(let i of n.error.issues)t.addIssue({...i,path:i.path[0]==="config"?i.path:["config",...i.path]});let s=e.status??(["gcp_secret_manager","vault"].includes(e.provider)?"coming_soon":"ready");(e.provider==="gcp_secret_manager"||e.provider==="vault")&&s!=="coming_soon"&&s!=="disabled"&&t.addIssue({code:r.ZodIssueCode.custom,path:["status"],message:`${e.provider} provider vaults are locked while coming soon`}),(s==="coming_soon"||s==="disabled")&&e.isDefault&&t.addIssue({code:r.ZodIssueCode.custom,path:["isDefault"],message:"Only ready or warning provider vaults can be default"})}),Df=r.object({displayName:r.string().trim().min(1).max(120).optional(),status:r.enum(Ns).optional(),isDefault:r.boolean().optional(),config:r.record(r.string(),r.unknown()).optional()}).superRefine((e,t)=>{e.config!==void 0&&(qc(e.config,t),PI(e.config.address,t)),(e.status==="coming_soon"||e.status==="disabled")&&e.isDefault&&t.addIssue({code:r.ZodIssueCode.custom,path:["isDefault"],message:"Only ready or warning provider vaults can be default"})}),Ff=r.object({providerConfigId:r.string().uuid(),query:r.string().trim().max(200).optional().nullable(),nextToken:r.string().trim().min(1).max(4096).optional().nullable(),pageSize:r.number().int().min(1).max(100).optional()}),$f=r.object({provider:r.enum(St),config:r.record(r.unknown()).default({}),query:r.string().trim().max(200).optional().nullable(),nextToken:r.string().trim().min(1).max(4096).optional().nullable(),pageSize:r.number().int().min(1).max(100).optional()}).superRefine((e,t)=>{qc(e.config,t);let n=ni.safeParse({provider:e.provider,config:e.config});if(!n.success)for(let s of n.error.issues)t.addIssue({...s,path:s.path[0]==="config"?s.path:["config",...s.path]})}),Wc=r.object({externalRef:r.string().trim().min(1).max(2048),name:r.string().trim().min(1).max(160).optional().nullable(),key:r.string().trim().min(1).max(120).regex(/^[a-zA-Z0-9_.-]+$/).optional().nullable(),description:r.string().trim().max(500).optional().nullable(),providerVersionRef:r.string().trim().min(1).max(512).optional().nullable(),providerMetadata:r.record(r.string(),r.unknown()).optional().nullable()}),Uf=r.object({providerConfigId:r.string().uuid(),secrets:r.array(Wc).min(1).max(100)});var Ar=r.enum($a),ri=r.enum(Ua),jf=r.enum(ja),zf=r.enum(za),MI={name:r.string().min(1),description:r.string().optional().nullable(),driver:Ar,status:ri.optional().default("active"),config:r.record(r.string(),r.unknown()).optional().default({}),envVars:be.optional().default({}),metadata:r.record(r.string(),r.unknown()).optional().nullable()},qf=r.object(MI).strict(),Bf=r.object({name:r.string().min(1).optional(),description:r.string().optional().nullable(),driver:Ar.optional(),status:ri.optional(),config:r.record(r.string(),r.unknown()).optional(),envVars:be.optional(),metadata:r.record(r.string(),r.unknown()).optional().nullable()}).strict(),Vf=r.object({name:r.string().min(1).optional(),description:r.string().optional().nullable(),driver:Ar,config:r.record(r.string(),r.unknown()).optional().default({}),envVars:be.optional().default({}),metadata:r.record(r.string(),r.unknown()).optional().nullable()}).strict();var ut=r.union([r.date(),r.string().datetime()]),Kf=r.string().min(1).max(200),Hf=r.record(r.string(),r.unknown()).optional().nullable(),Zc=r.enum(qa),Gc=r.enum(Ba),Yc=r.enum(Va),Jc=r.enum(Ka),Xc=r.object({type:Jc,username:r.string().min(1).max(200).optional().nullable(),hostRedacted:r.literal(!0).optional().default(!0),portRedacted:r.literal(!0).optional().default(!0),label:r.string().min(1).max(200).optional().nullable(),instructions:r.string().min(1).max(1e3).optional().nullable()}).strict(),Wf=r.object({id:r.string().uuid(),environmentId:r.string().uuid(),provider:Kf,templateKind:Zc,templateRef:r.string().min(1).nullable(),sourceTemplateRef:r.string().min(1).nullable(),sourceEnvironmentConfigFingerprint:r.string().min(1).nullable(),status:Gc,createdByUserId:r.string().min(1).nullable(),createdByAgentId:r.string().uuid().nullable(),capturedAt:ut.nullable(),lastUsedAt:ut.nullable(),supersededByTemplateId:r.string().uuid().nullable(),metadata:Hf,createdAt:ut,updatedAt:ut}).strict(),Zf=r.object({id:r.string().uuid(),environmentId:r.string().uuid(),templateId:r.string().uuid().nullable(),promotedTemplateId:r.string().uuid().nullable(),provider:Kf,providerLeaseId:r.string().min(1).nullable(),environmentLeaseId:r.string().uuid().nullable(),status:Yc,startedByUserId:r.string().min(1).nullable(),startedByAgentId:r.string().uuid().nullable(),baseTemplateRef:r.string().min(1).nullable(),expiresAt:ut.nullable(),finishedAt:ut.nullable(),failureReason:r.string().min(1).nullable(),connectionSummary:Xc.nullable(),connectionSecretRef:r.string().min(1).nullable(),metadata:Hf,createdAt:ut,updatedAt:ut}).strict(),Gf=r.object({templateId:r.string().uuid().optional().nullable(),ttlSeconds:r.number().int().min(60).max(1440*60).optional()}).strict(),Yf=r.object({metadata:r.record(r.string(),r.unknown()).optional()}).strict(),Jf=r.object({reason:r.string().min(1).max(1e3).optional()}).strict(),Xf=r.object({}).strict().default({}),Qf=r.object({id:r.string().min(1),token:r.string().min(32),expiresAt:ut,setupSessionId:r.string().min(1),environmentId:r.string().min(1),connectionType:r.literal("ssh"),websocketPath:r.string().min(1)}).strict();var eg=r.enum(wa),tg=r.enum(Ia),ng=r.enum(Ta),Qc=r.enum(xa),rg=r.enum(Ra),si=r.string().trim().min(1).max(80).regex(/^[a-z][a-z0-9_.-]*$/),ii=r.string().trim().min(1).max(80).regex(/^[a-z][a-z0-9_]*$/),sg=r.object({scheme:r.enum(["http","https"]),host:r.string().trim().min(1),path:r.string().trim().min(1),queryParamHashes:r.record(r.string().regex(/^[a-f0-9]{64}$/)).optional()}).strict(),ig=r.object({sourceKind:Qc,documentKey:r.string().trim().min(1).optional().nullable(),propertyKey:r.string().trim().min(1).optional().nullable()}).strict();var el=r.enum(["local_path","github","url","catalog","skills_sh"]),oi=r.enum(["markdown_only","assets","scripts_executables"]),ai=r.enum(["compatible","unknown","invalid"]),ci=r.enum(["paperclip","github","local","url","catalog","skills_sh"]),sn=r.enum(["private","company","public_link"]),tl=r.enum(["alphabetical","recent","installs","stars","agents","forks"]),li=r.object({path:r.string().min(1),kind:r.enum(["skill","markdown","reference","script","asset","other"])}),nl=li.extend({content:r.string()}),rn=r.object({id:r.string().uuid(),companyId:r.string().uuid(),key:r.string().min(1),slug:r.string().min(1),name:r.string().min(1),description:r.string().nullable(),markdown:r.string(),sourceType:el,sourceLocator:r.string().nullable(),sourceRef:r.string().nullable(),trustLevel:oi,compatibility:ai,fileInventory:r.array(li).default([]),iconUrl:r.string().nullable(),color:r.string().nullable(),tagline:r.string().nullable(),authorName:r.string().nullable(),homepageUrl:r.string().nullable(),categories:r.array(r.string().min(1)).default([]),sharingScope:sn,publicShareToken:r.string().nullable(),forkedFromSkillId:r.string().uuid().nullable(),forkedFromCompanyId:r.string().uuid().nullable(),starCount:r.number().int().nonnegative(),installCount:r.number().int().nonnegative(),forkCount:r.number().int().nonnegative(),currentVersionId:r.string().uuid().nullable(),metadata:r.record(r.string(),r.unknown()).nullable(),createdAt:r.coerce.date(),updatedAt:r.coerce.date()}),og=rn.extend({attachedAgentCount:r.number().int().nonnegative(),editable:r.boolean(),editableReason:r.string().nullable(),sourceLabel:r.string().nullable(),sourceBadge:ci,catalogKind:r.enum(["bundled","optional"]).nullable(),originHash:r.string().nullable(),packageName:r.string().nullable(),packageVersion:r.string().nullable()}),rl=r.object({id:r.string().uuid(),name:r.string().min(1),urlKey:r.string().min(1),adapterType:r.string().min(1),desired:r.boolean(),actualState:r.string().nullable().describe("Runtime adapter skill state when explicitly fetched; company skill detail reads return null without probing agent runtimes."),versionId:r.string().uuid().nullable()}),ag=r.object({q:r.string().min(1).optional(),sort:tl.optional(),categories:r.array(r.string().min(1)).optional(),scope:sn.optional()}),cg=r.object({slug:r.string().min(1),count:r.number().int().nonnegative()}),sl=r.object({id:r.string().uuid(),companyId:r.string().uuid(),companySkillId:r.string().uuid(),revisionNumber:r.number().int().positive(),label:r.string().nullable(),fileInventory:r.array(nl).default([]),authorAgentId:r.string().uuid().nullable(),authorUserId:r.string().nullable(),createdAt:r.coerce.date()}),lg=rn.extend({attachedAgentCount:r.number().int().nonnegative(),usedByAgents:r.array(rl).default([]),editable:r.boolean(),editableReason:r.string().nullable(),sourceLabel:r.string().nullable(),sourceBadge:ci,currentVersion:sl.nullable(),starredByCurrentActor:r.boolean()}),ug=r.object({label:r.string().trim().min(1).nullable().optional()}).default({}),dg=r.object({skillId:r.string().uuid(),starred:r.boolean(),starCount:r.number().int().nonnegative()}),pg=r.object({id:r.string().uuid(),companyId:r.string().uuid(),companySkillId:r.string().uuid(),parentCommentId:r.string().uuid().nullable(),authorAgentId:r.string().uuid().nullable(),authorUserId:r.string().nullable(),body:r.string(),deletedAt:r.coerce.date().nullable(),createdAt:r.coerce.date(),updatedAt:r.coerce.date()}),mg=r.object({body:r.string().min(1),parentCommentId:r.string().uuid().nullable().optional()}),fg=r.object({body:r.string().min(1)}),gg=r.object({name:r.string().min(1).nullable().optional(),slug:r.string().min(1).nullable().optional(),sharingScope:sn.optional()}).default({}),hg=r.object({description:r.string().nullable().optional(),iconUrl:r.string().nullable().optional(),color:r.string().nullable().optional(),tagline:r.string().max(120).nullable().optional(),authorName:r.string().nullable().optional(),homepageUrl:r.string().nullable().optional(),categories:r.array(r.string().min(1)).optional(),sharingScope:sn.optional()}).default({}),yg=r.object({supported:r.boolean(),reason:r.string().nullable(),trackingRef:r.string().nullable(),currentRef:r.string().nullable(),latestRef:r.string().nullable(),hasUpdate:r.boolean(),installedHash:r.string().nullable(),originHash:r.string().nullable(),userModifiedAt:r.string().nullable(),updateHoldReason:r.enum(["local_modifications","audit_hard_stop","origin_unavailable","compatibility_invalid","operator_hold"]).nullable(),auditVerdict:r.enum(["pass","warning","fail"]).nullable(),auditCodes:r.array(r.string())}),il=r.object({code:r.string().min(1),severity:r.enum(["warning","error"]),message:r.string().min(1),path:r.string().nullable()}),Sg=r.object({skillId:r.string().uuid(),installedHash:r.string().nullable(),originHash:r.string().nullable(),verdict:r.enum(["pass","warning","fail"]),codes:r.array(r.string()),findings:r.array(il),scannedAt:r.string().min(1),scanVersion:r.string().min(1)}),bg=r.object({force:r.boolean().optional()}).default({}),_g=r.object({force:r.boolean().optional()}).default({}),kg=r.object({source:r.string().min(1)}),vg=r.object({projectIds:r.array(r.string().uuid()).optional(),workspaceIds:r.array(r.string().uuid()).optional()}),ol=r.object({projectId:r.string().uuid(),projectName:r.string().min(1),workspaceId:r.string().uuid().nullable(),workspaceName:r.string().nullable(),path:r.string().nullable(),reason:r.string().min(1)}),al=r.object({slug:r.string().min(1),key:r.string().min(1),projectId:r.string().uuid(),projectName:r.string().min(1),workspaceId:r.string().uuid(),workspaceName:r.string().min(1),path:r.string().min(1),existingSkillId:r.string().uuid(),existingSkillKey:r.string().min(1),existingSourceLocator:r.string().nullable(),reason:r.string().min(1)}),Eg=r.object({scannedProjects:r.number().int().nonnegative(),scannedWorkspaces:r.number().int().nonnegative(),discovered:r.number().int().nonnegative(),imported:r.array(rn),updated:r.array(rn),skipped:r.array(ol),conflicts:r.array(al),warnings:r.array(r.string())}),Ag=r.object({name:r.string().min(1),slug:r.string().min(1).nullable().optional(),description:r.string().nullable().optional(),markdown:r.string().nullable().optional(),iconUrl:r.string().nullable().optional(),color:r.string().nullable().optional(),tagline:r.string().max(120).nullable().optional(),authorName:r.string().nullable().optional(),homepageUrl:r.string().nullable().optional(),categories:r.array(r.string().min(1)).optional(),sharingScope:sn.optional(),forkedFromSkillId:r.string().uuid().nullable().optional()}),wg=r.object({skillId:r.string().uuid(),path:r.string().min(1),kind:r.enum(["skill","markdown","reference","script","asset","other"]),content:r.string(),language:r.string().nullable(),markdown:r.boolean(),editable:r.boolean()}),Ig=r.object({path:r.string().min(1),content:r.string()}),ui=r.enum(["bundled","optional"]),cl=r.object({path:r.string().min(1),kind:r.enum(["skill","markdown","reference","script","asset","other"]),sizeBytes:r.number().int().nonnegative(),sha256:r.string().min(1)}),ll=r.object({type:r.literal("github"),hostname:r.string().min(1),owner:r.string().min(1),repo:r.string().min(1),ref:r.string().min(1),commit:r.string().regex(/^[0-9a-f]{40}$/i),path:r.string(),url:r.string().url()}),ul=ll,dl=r.object({id:r.string().min(1),key:r.string().min(1),kind:ui,category:r.string().min(1),slug:r.string().min(1),name:r.string().min(1),description:r.string(),path:r.string().min(1),entrypoint:r.literal("SKILL.md"),trustLevel:oi,compatibility:ai,defaultInstall:r.boolean(),recommendedForRoles:r.array(r.string()),requires:r.array(r.string()),tags:r.array(r.string()),files:r.array(cl),contentHash:r.string().min(1),source:ul.optional(),packageName:r.string().min(1).optional(),packageVersion:r.string().min(1).optional()}),Tg=r.object({kind:ui.optional(),category:r.string().min(1).optional(),q:r.string().min(1).optional()}),xg=r.object({catalogSkillId:r.string().min(1),path:r.string().min(1),kind:r.enum(["skill","markdown","reference","script","asset","other"]),content:r.string(),language:r.string().nullable(),markdown:r.boolean()}),Rg=r.object({catalogSkillId:r.string().min(1),slug:r.string().min(1).nullable().optional(),force:r.boolean().optional()}),Cg=r.object({action:r.enum(["created","updated","unchanged"]),skill:rn,catalogSkill:dl,warnings:r.array(r.string())});function DI(e){return e.replace(/\\r\\n/g,`
|
|
2
2
|
`).replace(/\\n/g,`
|
|
3
3
|
`).replace(/\\r/g,`
|
|
4
|
-
`)}var J=r.string().transform(MS);var xt=r.enum(Nr),DS=r.object({type:r.literal("issue"),issueId:r.string().uuid()}).strict(),Ko=r.object({mode:r.literal(Cn),companyId:r.string().uuid().optional(),projectIds:r.array(r.string().uuid()).optional(),rootIssueId:r.string().uuid().optional(),issueIds:r.array(r.string().uuid()).optional(),allowedAgentIds:r.array(r.string().uuid()).optional(),allowedSecretBindingIds:r.array(r.string().uuid()).optional(),allowedToolClasses:r.array(r.string().trim().min(1)).optional(),outputPromotionTarget:DS.optional()}).strict(),Ln=r.object({id:r.literal(Cn),version:r.literal(1),rawOutputDisposition:r.literal(Lr)}).strict(),$e=r.object({trustPreset:xt.optional(),reviewPreset:Ln.optional(),trustBoundary:Ko.optional()}).catchall(r.unknown()),od=r.enum(["issue","comment","document","work_product"]),US=r.object({preset:xt,disposition:r.enum(["quarantined","promoted"]),sourceIssueId:r.string().uuid().nullable().optional(),sourceRunId:r.string().uuid().nullable().optional(),sourceAgentId:r.string().uuid().nullable().optional(),promotedFrom:r.object({artifactKind:od,artifactId:r.string().uuid(),issueId:r.string().uuid().nullable().optional()}).strict().nullable().optional(),promotedByActorType:r.enum(["agent","user","system"]).nullable().optional(),promotedByActorId:r.string().trim().min(1).nullable().optional(),promotedAt:r.string().datetime({offset:!0}).nullable().optional()}).strict();var zo=r.enum(["needs_attention","awaiting_decision","external_wait","recovery_open","missing_disposition"]),Wo=r.enum(["critical","high","medium","low"]),Go=r.enum(["blocked_by_unassigned_issue","blocked_by_assigned_backlog_issue","blocked_by_uninvokable_assignee","blocked_by_cancelled_issue","blocked_chain_stalled","invalid_review_participant","in_review_without_action_path","missing_successful_run_disposition","pending_board_decision","pending_user_decision","external_owner_action","open_recovery_issue"]),Mn=r.object({id:r.string().uuid(),identifier:r.string().nullable(),title:r.string(),status:r.enum(xn),priority:r.enum(Te),assigneeAgentId:r.string().uuid().nullable(),assigneeUserId:r.string().nullable()}).strict(),cd=r.object({kind:r.literal("blocked"),state:zo,reason:Go,severity:Wo,stoppedSinceAt:r.string().datetime().nullable(),owner:r.object({type:r.enum(["agent","user","board","external","unknown"]),agentId:r.string().uuid().nullable(),userId:r.string().nullable(),label:r.string().nullable()}).strict(),action:r.object({label:r.string().trim().min(1),detail:r.string().nullable()}).strict(),sourceIssue:Mn.nullable(),leafIssue:Mn.nullable(),recoveryIssue:Mn.nullable(),approvalId:r.string().uuid().nullable(),interactionId:r.string().uuid().nullable(),sampleIssueIdentifier:r.string().nullable(),redaction:r.object({externalDetailsRedacted:r.boolean(),secretFieldsOmitted:r.literal(!0)}).strict()}).strict(),Wr=["inherit","shared_workspace","isolated_workspace","operator_branch","reuse_existing","agent_default"],FS=r.object({type:r.enum(["project_primary","git_worktree","adapter_managed","cloud_sandbox"]).optional(),baseRef:r.string().optional().nullable(),branchTemplate:r.string().optional().nullable(),worktreeParentDir:r.string().optional().nullable(),provisionCommand:r.string().optional().nullable(),teardownCommand:r.string().optional().nullable()}).strict(),Un=r.object({mode:r.enum(Wr).optional(),environmentId:r.string().uuid().optional().nullable(),workspaceStrategy:FS.optional().nullable(),workspaceRuntime:r.record(r.string(),r.unknown()).optional().nullable()}).strict(),jS=r.object({modelProfile:r.enum(ci).optional(),adapterConfig:r.record(r.string(),r.unknown()).optional(),useProjectWorkspace:r.boolean().optional()}).strict(),ld=r.object({type:r.enum(["agent","user"]),agentId:r.string().uuid().optional().nullable(),userId:r.string().optional().nullable()}),ad=ld.superRefine((e,t)=>{if(e.type==="agent"){e.agentId||t.addIssue({code:r.ZodIssueCode.custom,message:"Agent participants require agentId",path:["agentId"]}),e.userId&&t.addIssue({code:r.ZodIssueCode.custom,message:"Agent participants cannot set userId",path:["userId"]});return}e.userId||t.addIssue({code:r.ZodIssueCode.custom,message:"User participants require userId",path:["userId"]}),e.agentId&&t.addIssue({code:r.ZodIssueCode.custom,message:"User participants cannot set agentId",path:["agentId"]})}),qS=ld.extend({id:r.string().uuid().optional()}).superRefine((e,t)=>{if(e.type==="agent"){e.agentId||t.addIssue({code:r.ZodIssueCode.custom,message:"Agent participants require agentId",path:["agentId"]}),e.userId&&t.addIssue({code:r.ZodIssueCode.custom,message:"Agent participants cannot set userId",path:["userId"]});return}e.userId||t.addIssue({code:r.ZodIssueCode.custom,message:"User participants require userId",path:["userId"]}),e.agentId&&t.addIssue({code:r.ZodIssueCode.custom,message:"User participants cannot set agentId",path:["agentId"]})}),$S=r.object({id:r.string().uuid().optional(),type:r.enum(vr),approvalsNeeded:r.literal(1).optional().default(1),participants:r.array(qS).default([])}),BS=r.object({nextCheckAt:r.string().datetime(),notes:r.string().max(500).optional().nullable().default(null),scheduledBy:r.enum(kr).optional().default("assignee"),kind:r.enum(_r).optional().nullable().default(null),serviceName:r.string().trim().min(1).max(120).optional().nullable().default(null),externalRef:r.string().trim().min(1).max(500).optional().nullable().default(null),timeoutAt:r.string().datetime().optional().nullable().default(null),maxAttempts:r.number().int().positive().max(100).optional().nullable().default(null),recoveryPolicy:r.enum(Er).optional().nullable().default(null)}),Yo=r.object({mode:r.enum(Ci).optional().default("normal"),commentRequired:r.boolean().optional().default(!0),stages:r.array($S).default([]),monitor:BS.optional().nullable(),reviewPreset:Ln.optional(),authorizationPolicy:$e.optional()}),HS=r.object({status:r.enum(Oi),nextCheckAt:r.string().datetime().nullable(),lastTriggeredAt:r.string().datetime().nullable(),attemptCount:r.number().int().nonnegative().default(0),notes:r.string().max(500).nullable(),scheduledBy:r.enum(kr).nullable(),kind:r.enum(_r).nullable().optional().default(null),serviceName:r.string().trim().min(1).max(120).nullable().optional().default(null),externalRef:r.string().trim().min(1).max(500).nullable().optional().default(null),timeoutAt:r.string().datetime().nullable().optional().default(null),maxAttempts:r.number().int().positive().max(100).nullable().optional().default(null),recoveryPolicy:r.enum(Er).nullable().optional().default(null),clearedAt:r.string().datetime().nullable(),clearReason:r.enum(Ni).nullable()}),Gr=r.object({instructions:r.string().trim().min(1).max(2e4)}).strict(),ud=r.object({status:r.enum(Pi),currentStageId:r.string().uuid().nullable(),currentStageIndex:r.number().int().nonnegative().nullable(),currentStageType:r.enum(vr).nullable(),currentParticipant:ad.nullable(),returnAssignee:ad.nullable(),reviewRequest:Gr.nullable().optional().default(null),completedStageIds:r.array(r.string().uuid()).default([]),lastDecisionId:r.string().uuid().nullable(),lastDecisionOutcome:r.enum(Li).nullable(),monitor:HS.optional().nullable()}),VS=r.object({id:r.string().uuid(),companyId:r.string().uuid(),sourceIssueId:r.string().uuid(),recoveryIssueId:r.string().uuid().nullable(),kind:r.enum(vi),status:r.enum(ki),ownerType:r.enum(_i),ownerAgentId:r.string().uuid().nullable(),ownerUserId:r.string().nullable(),previousOwnerAgentId:r.string().uuid().nullable(),returnOwnerAgentId:r.string().uuid().nullable(),cause:r.string().min(1),fingerprint:r.string().min(1),evidence:r.record(r.string(),r.unknown()),nextAction:r.string().min(1),wakePolicy:r.record(r.string(),r.unknown()).nullable(),monitorPolicy:r.record(r.string(),r.unknown()).nullable(),attemptCount:r.number().int().nonnegative(),maxAttempts:r.number().int().positive().nullable(),timeoutAt:r.union([r.date(),r.string().datetime()]).nullable(),lastAttemptAt:r.union([r.date(),r.string().datetime()]).nullable(),outcome:r.enum(Ei).nullable(),resolutionNote:r.string().nullable(),resolvedAt:r.union([r.date(),r.string().datetime()]).nullable(),createdAt:r.union([r.date(),r.string().datetime()]),updatedAt:r.union([r.date(),r.string().datetime()])}),KS=["restored","false_positive","blocked","cancelled"],dd=r.object({actionId:r.string().uuid().optional(),outcome:r.enum(KS),sourceIssueStatus:r.enum(["todo","done","in_review","blocked"]),resolutionNote:J.optional().nullable()}).strict().superRefine((e,t)=>{if(e.outcome==="restored"){e.sourceIssueStatus!=="todo"&&e.sourceIssueStatus!=="done"&&e.sourceIssueStatus!=="in_review"&&t.addIssue({code:r.ZodIssueCode.custom,message:"Restored recovery actions must move the source issue to todo, done, or in_review",path:["sourceIssueStatus"]});return}if(e.outcome==="blocked"){e.sourceIssueStatus!=="blocked"&&t.addIssue({code:r.ZodIssueCode.custom,message:"Blocked recovery actions must move the source issue to blocked",path:["sourceIssueStatus"]});return}if(e.outcome==="false_positive"||e.outcome==="cancelled"){e.sourceIssueStatus!=="done"&&e.sourceIssueStatus!=="in_review"&&t.addIssue({code:r.ZodIssueCode.custom,message:"This recovery outcome requires sourceIssueStatus to be done or in_review",path:["sourceIssueStatus"]});return}}),pd=r.number().int().nonnegative().transform(e=>hi(e));function Zo(e){if(typeof e.status=="string")return{status:e.status,defaulted:!1,reason:"explicit"};let t=typeof e.assigneeAgentId=="string"&&e.assigneeAgentId.length>0||typeof e.assigneeUserId=="string"&&e.assigneeUserId.length>0;return{status:t?"todo":"backlog",defaulted:!0,reason:t?"assigned_omitted_status":"unassigned_omitted_status"}}function md(e){return r.preprocess(t=>{if(!t||typeof t!="object"||Array.isArray(t))return t;let n=t;return n.status!==void 0?t:{...n,status:Zo(n).status}},e)}var Dn=r.object({projectId:r.string().uuid().optional().nullable(),projectWorkspaceId:r.string().uuid().optional().nullable(),goalId:r.string().uuid().optional().nullable(),parentId:r.string().uuid().optional().nullable(),blockedByIssueIds:r.array(r.string().uuid()).optional(),inheritExecutionWorkspaceFromIssueId:r.string().uuid().optional().nullable(),title:r.string().min(1),description:J.optional().nullable(),status:r.enum(xn),workMode:r.enum(Ir).optional().default("standard"),priority:r.enum(Te).optional().default("medium"),assigneeAgentId:r.string().uuid().optional().nullable(),assigneeUserId:r.string().optional().nullable(),requestDepth:pd.optional().default(0),billingCode:r.string().optional().nullable(),assigneeAdapterOverrides:jS.optional().nullable(),executionPolicy:Yo.optional().nullable(),executionWorkspaceId:r.string().uuid().optional().nullable(),executionWorkspacePreference:r.enum(Wr).optional().nullable(),executionWorkspaceSettings:Un.optional().nullable(),labelIds:r.array(r.string().uuid()).optional()}),gd=Dn.extend({status:Dn.shape.status.optional()}),fd=md(Dn),Jo=md(Dn.omit({parentId:!0,inheritExecutionWorkspaceFromIssueId:!0}).extend({acceptanceCriteria:r.array(r.string().trim().min(1).max(500)).max(20).optional(),blockParentUntilDone:r.boolean().optional().default(!1)})),hd=r.object({acceptedPlanRevisionId:r.string().uuid(),children:r.array(Jo).min(1).max(25)}),yd=r.object({name:r.string().trim().min(1).max(48),color:r.string().regex(/^#(?:[0-9a-fA-F]{6})$/,"Color must be a 6-digit hex value")}),Sd=Dn.partial().extend({requestDepth:pd.optional(),assigneeAgentId:r.string().trim().min(1).optional().nullable(),comment:J.pipe(r.string().min(1)).optional(),reviewRequest:Gr.optional().nullable(),reopen:r.boolean().optional(),resume:r.boolean().optional(),interrupt:r.boolean().optional(),hiddenAt:r.string().datetime().nullable().optional()}),bd=r.object({agentId:r.string().uuid(),expectedStatuses:r.array(r.enum(xn)).nonempty()}),Id=r.string().trim().min(1).max(120),vd=r.string().trim().min(1).max(2e3),Fn=r.enum(pi),jn=r.object({kind:r.enum(mi).default("message"),tone:r.enum(gi).default("neutral"),title:r.string().trim().min(1).max(160).nullable().optional(),detailsDefaultOpen:r.boolean().optional().default(!1)}).strict(),cn=r.object({type:r.enum(fi),label:Id.nullable().optional()}),zS=cn.extend({type:r.literal("text"),text:vd}).strict(),WS=cn.extend({type:r.literal("code"),code:r.string().min(1).max(4e3),language:r.string().trim().min(1).max(40).nullable().optional()}).strict(),GS=cn.extend({type:r.literal("key_value"),label:Id,value:vd}).strict(),YS=cn.extend({type:r.literal("issue_link"),issueId:r.string().uuid().nullable().optional(),identifier:r.string().trim().min(1).max(80).nullable().optional(),title:r.string().trim().min(1).max(240).nullable().optional()}).strict(),ZS=cn.extend({type:r.literal("agent_link"),agentId:r.string().uuid(),name:r.string().trim().min(1).max(160).nullable().optional()}).strict(),JS=cn.extend({type:r.literal("run_link"),runId:r.string().uuid(),title:r.string().trim().min(1).max(160).nullable().optional()}).strict(),Xo=r.discriminatedUnion("type",[zS,WS,GS,YS,ZS,JS]).superRefine((e,t)=>{e.type==="issue_link"&&!e.issueId&&!e.identifier&&t.addIssue({code:r.ZodIssueCode.custom,message:"Issue link rows require issueId or identifier",path:["issueId"]})}),Qo=r.object({title:r.string().trim().min(1).max(160).nullable().optional(),rows:r.array(Xo).min(1).max(50)}).strict(),qn=r.object({version:r.literal(1),sourceRunId:r.string().uuid().nullable().optional(),sections:r.array(Qo).min(1).max(20)}).strict(),kd=r.object({body:J.pipe(r.string().min(1)),authorType:Fn.optional(),presentation:jn.nullable().optional(),metadata:qn.nullable().optional(),reopen:r.boolean().optional(),resume:r.boolean().optional(),interrupt:r.boolean().optional()}),_d=r.enum(Si),Ed=r.enum(yi),an=r.enum(bi),ea=r.string().trim().min(1).max(64).regex(/^[a-z0-9][a-z0-9_-]*$/,"Document key must be lowercase letters, numbers, _ or -"),ta=r.object({clientKey:r.string().trim().min(1).max(120),parentClientKey:r.string().trim().min(1).max(120).nullable().optional(),parentId:r.string().uuid().nullable().optional(),title:r.string().trim().min(1).max(240),description:J.pipe(r.string().trim().max(2e4)).nullable().optional(),priority:r.enum(Te).nullable().optional(),workMode:r.enum(Ir).nullable().optional(),assigneeAgentId:r.string().uuid().nullable().optional(),assigneeUserId:r.string().trim().min(1).nullable().optional(),projectId:r.string().uuid().nullable().optional(),goalId:r.string().uuid().nullable().optional(),billingCode:r.string().trim().max(120).nullable().optional(),labels:r.array(r.string().trim().min(1).max(48)).max(20).optional(),hiddenInPreview:r.boolean().optional()}).superRefine((e,t)=>{e.assigneeAgentId&&e.assigneeUserId&&t.addIssue({code:r.ZodIssueCode.custom,message:"Suggested tasks can only target one assignee",path:["assigneeAgentId"]})}),na=r.object({version:r.literal(1),defaultParentId:r.string().uuid().nullable().optional(),tasks:r.array(ta).min(1).max(50)}).superRefine((e,t)=>{let n=new Set;for(let[s,i]of e.tasks.entries()){if(n.has(i.clientKey)){t.addIssue({code:r.ZodIssueCode.custom,message:"clientKey must be unique within one interaction",path:["tasks",s,"clientKey"]});continue}n.add(i.clientKey)}}),ra=r.object({clientKey:r.string().trim().min(1).max(120),issueId:r.string().uuid(),identifier:r.string().trim().min(1).nullable().optional(),title:r.string().trim().min(1).nullable().optional(),parentIssueId:r.string().uuid().nullable().optional(),parentIdentifier:r.string().trim().min(1).nullable().optional()}),Ad=r.object({version:r.literal(1),createdTasks:r.array(ra).max(50).optional(),skippedClientKeys:r.array(r.string().trim().min(1).max(120)).max(50).optional(),rejectionReason:r.string().trim().max(4e3).nullable().optional()}),sa=r.object({id:r.string().trim().min(1).max(120),label:r.string().trim().min(1).max(120),description:r.string().trim().max(500).nullable().optional()}),ia=r.object({id:r.string().trim().min(1).max(120),prompt:r.string().trim().min(1).max(500),helpText:r.string().trim().max(1e3).nullable().optional(),selectionMode:r.enum(["single","multi"]),required:r.boolean().optional(),options:r.array(sa).min(1).max(10)}),oa=r.object({version:r.literal(1),title:r.string().trim().max(240).nullable().optional(),submitLabel:r.string().trim().max(120).nullable().optional(),questions:r.array(ia).min(1).max(10)}).superRefine((e,t)=>{let n=new Set;for(let[s,i]of e.questions.entries()){n.has(i.id)&&t.addIssue({code:r.ZodIssueCode.custom,message:"Question ids must be unique within one interaction",path:["questions",s,"id"]}),n.add(i.id);let o=new Set;for(let[a,c]of i.options.entries())o.has(c.id)&&t.addIssue({code:r.ZodIssueCode.custom,message:"Option ids must be unique within one question",path:["questions",s,"options",a,"id"]}),o.add(c.id)}}),Yr=r.object({questionId:r.string().trim().min(1).max(120),optionIds:r.array(r.string().trim().min(1).max(120)).max(20),otherText:J.pipe(r.string().trim().max(4e3)).nullable().optional()}),wd=r.object({version:r.literal(1),answers:r.array(Yr).max(20),cancelled:r.literal(!0).optional(),cancellationReason:r.string().trim().max(4e3).nullable().optional(),summaryMarkdown:r.string().max(2e4).nullable().optional()}),XS=r.string().trim().min(1).max(2e3).refine(e=>e.startsWith("#")?!0:e.startsWith("/")?!e.startsWith("//"):/^https?:\/\//i.test(e),"href must be a root-relative path, same-page fragment, or http(s) URL"),xd=r.object({label:r.string().trim().min(1).max(120).nullable().optional(),href:XS.nullable().optional()}),aa=xd.extend({type:r.literal("issue_document"),issueId:r.string().uuid().nullable().optional(),documentId:r.string().uuid().nullable().optional(),key:ea,revisionId:r.string().uuid(),revisionNumber:r.number().int().positive().nullable().optional()}),ca=xd.extend({type:r.literal("custom"),key:r.string().trim().min(1).max(120),revisionId:r.string().trim().min(1).max(255).nullable().optional(),revisionNumber:r.number().int().positive().nullable().optional()}),$n=r.discriminatedUnion("type",[aa,ca]),la=r.object({version:r.literal(1),prompt:r.string().trim().min(1).max(1e3),acceptLabel:r.string().trim().min(1).max(80).nullable().optional(),rejectLabel:r.string().trim().min(1).max(80).nullable().optional(),rejectRequiresReason:r.boolean().optional(),rejectReasonLabel:r.string().trim().min(1).max(160).nullable().optional(),allowDeclineReason:r.boolean().optional().default(!0),declineReasonPlaceholder:r.string().trim().min(1).max(240).nullable().optional(),detailsMarkdown:r.string().max(2e4).nullable().optional(),supersedeOnUserComment:r.boolean().optional(),target:$n.nullable().optional()}),ua=r.object({id:r.string().trim().min(1).max(120),label:r.string().trim().min(1).max(120),description:r.string().trim().max(500).nullable().optional()}),da=r.object({version:r.literal(1),prompt:r.string().trim().min(1).max(1e3),detailsMarkdown:r.string().max(2e4).nullable().optional(),options:r.array(ua).min(1).max(Qt),defaultSelectedOptionIds:r.array(r.string().trim().min(1).max(120)).max(Qt).optional().default([]),minSelected:r.number().int().min(0).optional().default(0),maxSelected:r.number().int().min(0).nullable().optional(),acceptLabel:r.string().trim().min(1).max(80).nullable().optional(),rejectLabel:r.string().trim().min(1).max(80).nullable().optional(),rejectRequiresReason:r.boolean().optional(),rejectReasonLabel:r.string().trim().min(1).max(160).nullable().optional(),allowDeclineReason:r.boolean().optional().default(!0),declineReasonPlaceholder:r.string().trim().min(1).max(240).nullable().optional(),supersedeOnUserComment:r.boolean().optional(),target:$n.nullable().optional()}).superRefine((e,t)=>{let n=new Set;for(let[o,a]of e.options.entries())n.has(a.id)&&t.addIssue({code:r.ZodIssueCode.custom,message:"Option ids must be unique within one checkbox confirmation",path:["options",o,"id"]}),n.add(a.id);let s=new Set;for(let[o,a]of e.defaultSelectedOptionIds.entries()){if(s.has(a)){t.addIssue({code:r.ZodIssueCode.custom,message:"defaultSelectedOptionIds must be unique",path:["defaultSelectedOptionIds",o]});continue}s.add(a),n.has(a)||t.addIssue({code:r.ZodIssueCode.custom,message:"defaultSelectedOptionIds must reference existing option ids",path:["defaultSelectedOptionIds",o]})}let i=e.maxSelected??null;e.minSelected>e.options.length&&t.addIssue({code:r.ZodIssueCode.custom,message:"minSelected cannot exceed the option count",path:["minSelected"]}),e.defaultSelectedOptionIds.length<e.minSelected&&t.addIssue({code:r.ZodIssueCode.custom,message:"defaultSelectedOptionIds must satisfy minSelected",path:["defaultSelectedOptionIds"]}),i!=null&&(i<e.minSelected&&t.addIssue({code:r.ZodIssueCode.custom,message:"maxSelected must be greater than or equal to minSelected",path:["maxSelected"]}),i>e.options.length&&t.addIssue({code:r.ZodIssueCode.custom,message:"maxSelected cannot exceed the option count",path:["maxSelected"]}),e.defaultSelectedOptionIds.length>i&&t.addIssue({code:r.ZodIssueCode.custom,message:"defaultSelectedOptionIds cannot exceed maxSelected",path:["defaultSelectedOptionIds"]}))}),pa=r.object({version:r.literal(1),outcome:r.enum(["accepted","rejected","superseded_by_comment","stale_target"]),reason:r.string().trim().max(4e3).nullable().optional(),commentId:r.string().uuid().nullable().optional(),staleTarget:$n.nullable().optional()}),Td=pa.extend({selectedOptionIds:r.array(r.string().trim().min(1).max(120)).max(Qt).optional()}).superRefine((e,t)=>{let n=e.selectedOptionIds??[],s=new Set;for(let[i,o]of n.entries())s.has(o)&&t.addIssue({code:r.ZodIssueCode.custom,message:"selectedOptionIds must be unique",path:["selectedOptionIds",i]}),s.add(o)}),Rd=r.discriminatedUnion("kind",[r.object({kind:r.literal("suggest_tasks"),idempotencyKey:r.string().trim().max(255).nullable().optional(),sourceCommentId:r.string().uuid().nullable().optional(),sourceRunId:r.string().uuid().nullable().optional(),title:r.string().trim().max(240).nullable().optional(),summary:r.string().trim().max(1e3).nullable().optional(),continuationPolicy:an.optional().default("wake_assignee"),payload:na}),r.object({kind:r.literal("ask_user_questions"),idempotencyKey:r.string().trim().max(255).nullable().optional(),sourceCommentId:r.string().uuid().nullable().optional(),sourceRunId:r.string().uuid().nullable().optional(),title:r.string().trim().max(240).nullable().optional(),summary:r.string().trim().max(1e3).nullable().optional(),continuationPolicy:an.optional().default("wake_assignee"),payload:oa}),r.object({kind:r.literal("request_confirmation"),idempotencyKey:r.string().trim().max(255).nullable().optional(),sourceCommentId:r.string().uuid().nullable().optional(),sourceRunId:r.string().uuid().nullable().optional(),title:r.string().trim().max(240).nullable().optional(),summary:r.string().trim().max(1e3).nullable().optional(),continuationPolicy:an.optional().default("none"),payload:la}),r.object({kind:r.literal("request_checkbox_confirmation"),idempotencyKey:r.string().trim().max(255).nullable().optional(),sourceCommentId:r.string().uuid().nullable().optional(),sourceRunId:r.string().uuid().nullable().optional(),title:r.string().trim().max(240).nullable().optional(),summary:r.string().trim().max(1e3).nullable().optional(),continuationPolicy:an.optional().default("wake_assignee"),payload:da})]),Cd=r.object({selectedClientKeys:r.array(r.string().trim().min(1).max(120)).min(1).max(50).optional(),selectedOptionIds:r.array(r.string().trim().min(1).max(120)).max(Qt).optional()}).superRefine((e,t)=>{let n=new Set;for(let[i,o]of(e.selectedClientKeys??[]).entries()){if(n.has(o)){t.addIssue({code:r.ZodIssueCode.custom,message:"selectedClientKeys must be unique",path:["selectedClientKeys",i]});continue}n.add(o)}let s=new Set;for(let[i,o]of(e.selectedOptionIds??[]).entries()){if(s.has(o)){t.addIssue({code:r.ZodIssueCode.custom,message:"selectedOptionIds must be unique",path:["selectedOptionIds",i]});continue}s.add(o)}}),Pd=r.object({reason:r.string().trim().max(4e3).optional()}),Od=r.object({reason:r.string().trim().max(4e3).optional()}),Nd=r.object({answers:r.array(Yr).max(20),summaryMarkdown:J.pipe(r.string().max(2e4)).nullable().optional()}),Ld=r.object({approvalId:r.string().uuid()}),Md=r.object({issueCommentId:r.string().uuid().optional().nullable()}),QS=["markdown"],ma=r.enum(QS),Dd=r.object({title:r.string().trim().max(200).nullable().optional(),format:ma,body:J.pipe(r.string().max(524288)),changeSummary:r.string().trim().max(500).nullable().optional(),baseRevisionId:r.string().uuid().nullable().optional()}),Ud=r.object({});var ga=r.object({type:r.literal("plain"),value:r.string()}),fa=r.object({type:r.literal("secret_ref"),secretId:r.string().uuid(),version:r.union([r.literal("latest"),r.number().int().positive()]).optional()}),ha=r.union([r.string(),ga,fa]),Be=r.record(r.string(),ha),Fd=r.object({name:r.string().min(1),key:r.string().min(1).regex(/^[a-zA-Z0-9_.-]+$/).optional(),provider:r.enum(Et).optional(),providerConfigId:r.string().uuid().optional().nullable(),managedMode:r.enum(hu).optional(),value:r.string().min(1).optional().nullable(),description:r.string().optional().nullable(),externalRef:r.string().optional().nullable(),providerMetadata:r.record(r.string(),r.unknown()).optional().nullable(),providerVersionRef:r.string().optional().nullable()}).superRefine((e,t)=>{if((e.managedMode??"paperclip_managed")==="external_reference"){e.externalRef?.trim()||t.addIssue({code:r.ZodIssueCode.custom,path:["externalRef"],message:"External reference secrets require externalRef"});return}e.externalRef?.trim()&&t.addIssue({code:r.ZodIssueCode.custom,path:["externalRef"],message:"Managed secrets cannot set externalRef"}),e.value?.trim()||t.addIssue({code:r.ZodIssueCode.custom,path:["value"],message:"Managed secrets require value"})}),jd=r.object({value:r.string().min(1).optional().nullable(),externalRef:r.string().optional().nullable(),providerVersionRef:r.string().optional().nullable(),providerConfigId:r.string().uuid().optional().nullable()}),qd=r.object({name:r.string().min(1).optional(),key:r.string().min(1).regex(/^[a-zA-Z0-9_.-]+$/).optional(),status:r.enum(fu).optional(),providerConfigId:r.string().uuid().optional().nullable(),description:r.string().optional().nullable(),externalRef:r.string().optional().nullable(),providerMetadata:r.record(r.string(),r.unknown()).optional().nullable()}),ya=r.object({targetType:r.enum(yu),targetId:r.string().min(1),configPath:r.string().min(1)}),$d=ya.extend({secretId:r.string().uuid(),versionSelector:r.union([r.literal("latest"),r.number().int().positive()]).default("latest"),required:r.boolean().default(!0),label:r.string().optional().nullable()}),eb=r.string().trim().min(1).max(160),Re=eb.optional().nullable(),tb=/^(access[-_]?key([-_]?id)?|secret[-_]?access[-_]?key|secret[-_]?key|token|password|passwd|credential|credentials|private[-_]?key|pem|jwt|session[-_]?token|service[-_]?account([-_]?json)?|client[-_]?secret|secret[-_]?id|unseal[-_]?key|recovery[-_]?key|key[-_]?file([-_]?path)?|token[-_]?file([-_]?path)?)$/i;function Sa(e,t){if(!(!e||typeof e!="object"||Array.isArray(e)))for(let n of Object.keys(e))tb.test(n)&&t.addIssue({code:r.ZodIssueCode.custom,path:["config",n],message:`Provider vault config cannot persist sensitive field: ${n}`})}var ba=r.object({backupReminderAcknowledged:r.boolean().optional()}).strict(),Ia=r.object({region:r.string().trim().regex(/^[a-z]{2}(?:-gov)?-[a-z]+-\d+$/,"Invalid AWS region"),namespace:Re,secretNamePrefix:Re,kmsKeyId:r.string().trim().min(1).max(512).optional().nullable(),ownerTag:Re,environmentTag:Re}).strict(),va=r.object({projectId:r.string().trim().min(1).max(128).regex(/^[a-z][a-z0-9-]{4,127}$/).optional().nullable(),location:Re,namespace:Re,secretNamePrefix:Re}).strict(),Bd=r.preprocess(e=>typeof e=="string"?e.trim():e,r.string().url().superRefine((e,t)=>{let n;try{n=new URL(e)}catch{return}let s=n.pathname!==""&&n.pathname!=="/";(n.protocol!=="http:"&&n.protocol!=="https:"||n.username||n.password||n.search||n.hash||s)&&t.addIssue({code:r.ZodIssueCode.custom,message:"Vault address must be an origin-only HTTP(S) URL without credentials, path, query, or fragment"})}).transform(e=>new URL(e).origin));function nb(e,t){if(e==null)return;let n=Bd.safeParse(e);if(!n.success)for(let s of n.error.issues)t.addIssue({...s,path:["config","address",...s.path]})}var ka=r.object({address:Bd.optional().nullable(),namespace:Re,mountPath:Re,secretPathPrefix:Re}).strict(),Zr=r.discriminatedUnion("provider",[r.object({provider:r.literal("local_encrypted"),config:ba}),r.object({provider:r.literal("aws_secrets_manager"),config:Ia}),r.object({provider:r.literal("gcp_secret_manager"),config:va}),r.object({provider:r.literal("vault"),config:ka})]),Hd=r.object({provider:r.enum(Et),displayName:r.string().trim().min(1).max(120),status:r.enum(Ar).optional(),isDefault:r.boolean().optional(),config:r.record(r.string(),r.unknown()).default({})}).superRefine((e,t)=>{Sa(e.config,t);let n=Zr.safeParse({provider:e.provider,config:e.config});if(!n.success)for(let i of n.error.issues)t.addIssue({...i,path:i.path[0]==="config"?i.path:["config",...i.path]});let s=e.status??(["gcp_secret_manager","vault"].includes(e.provider)?"coming_soon":"ready");(e.provider==="gcp_secret_manager"||e.provider==="vault")&&s!=="coming_soon"&&s!=="disabled"&&t.addIssue({code:r.ZodIssueCode.custom,path:["status"],message:`${e.provider} provider vaults are locked while coming soon`}),(s==="coming_soon"||s==="disabled")&&e.isDefault&&t.addIssue({code:r.ZodIssueCode.custom,path:["isDefault"],message:"Only ready or warning provider vaults can be default"})}),Vd=r.object({displayName:r.string().trim().min(1).max(120).optional(),status:r.enum(Ar).optional(),isDefault:r.boolean().optional(),config:r.record(r.string(),r.unknown()).optional()}).superRefine((e,t)=>{e.config!==void 0&&(Sa(e.config,t),nb(e.config.address,t)),(e.status==="coming_soon"||e.status==="disabled")&&e.isDefault&&t.addIssue({code:r.ZodIssueCode.custom,path:["isDefault"],message:"Only ready or warning provider vaults can be default"})}),Kd=r.object({providerConfigId:r.string().uuid(),query:r.string().trim().max(200).optional().nullable(),nextToken:r.string().trim().min(1).max(4096).optional().nullable(),pageSize:r.number().int().min(1).max(100).optional()}),zd=r.object({provider:r.enum(Et),config:r.record(r.unknown()).default({}),query:r.string().trim().max(200).optional().nullable(),nextToken:r.string().trim().min(1).max(4096).optional().nullable(),pageSize:r.number().int().min(1).max(100).optional()}).superRefine((e,t)=>{Sa(e.config,t);let n=Zr.safeParse({provider:e.provider,config:e.config});if(!n.success)for(let s of n.error.issues)t.addIssue({...s,path:s.path[0]==="config"?s.path:["config",...s.path]})}),_a=r.object({externalRef:r.string().trim().min(1).max(2048),name:r.string().trim().min(1).max(160).optional().nullable(),key:r.string().trim().min(1).max(120).regex(/^[a-zA-Z0-9_.-]+$/).optional().nullable(),description:r.string().trim().max(500).optional().nullable(),providerVersionRef:r.string().trim().min(1).max(512).optional().nullable(),providerMetadata:r.record(r.string(),r.unknown()).optional().nullable()}),Wd=r.object({providerConfigId:r.string().uuid(),secrets:r.array(_a).min(1).max(100)});var Gd=r.union([r.string(),r.number().finite(),r.boolean()]),Xe=r.object({name:r.string().trim().regex(/^[A-Za-z][A-Za-z0-9_]*$/),label:r.string().trim().max(120).optional().nullable(),type:r.enum(Bi).optional().default("text"),defaultValue:Gd.optional().nullable(),required:r.boolean().optional().default(!0),options:r.array(r.string().trim().min(1).max(120)).max(50).optional().default([])}).superRefine((e,t)=>{e.type==="select"&&e.options.length===0&&t.addIssue({code:r.ZodIssueCode.custom,path:["options"],message:"Select variables require at least one option"}),e.type!=="select"&&e.options.length>0&&t.addIssue({code:r.ZodIssueCode.custom,path:["options"],message:"Only select variables can define options"}),e.type==="select"&&e.defaultValue!=null&&(typeof e.defaultValue!="string"||!e.options.includes(e.defaultValue))&&t.addIssue({code:r.ZodIssueCode.custom,path:["defaultValue"],message:"Select variable defaults must match one of the allowed options"})}),Aa=r.object({projectId:r.string().uuid().optional().nullable(),goalId:r.string().uuid().optional().nullable(),parentIssueId:r.string().uuid().optional().nullable(),title:r.string().trim().min(1).max(200),description:r.string().optional().nullable(),assigneeAgentId:r.string().uuid().optional().nullable(),priority:r.enum(Te).optional().default("medium"),status:r.enum(en).optional().default("active"),concurrencyPolicy:r.enum(tn).optional().default("coalesce_if_active"),catchUpPolicy:r.enum(nn).optional().default("skip_missed"),variables:r.array(Xe).optional().default([]),env:Be.optional().nullable()}),Yd=Aa.partial().extend({baseRevisionId:r.string().uuid().optional().nullable()}),wa=r.object({id:r.string().uuid(),companyId:r.string().uuid(),projectId:r.string().uuid().nullable(),goalId:r.string().uuid().nullable(),parentIssueId:r.string().uuid().nullable(),title:r.string().trim().min(1).max(200),description:r.string().nullable(),assigneeAgentId:r.string().uuid().nullable(),priority:r.enum(Te),status:r.enum(en),concurrencyPolicy:r.enum(tn),catchUpPolicy:r.enum(nn),variables:r.array(Xe),env:Be.nullable().default(null)}).strict(),xa=r.object({id:r.string().uuid(),kind:r.enum(Tn),label:r.string().nullable(),enabled:r.boolean(),cronExpression:r.string().nullable(),timezone:r.string().nullable(),publicId:r.string().nullable(),signingMode:r.enum(_t).nullable(),replayWindowSec:r.number().int().min(30).max(86400).nullable()}).strict(),Zd=r.object({version:r.literal(1),routine:wa,triggers:r.array(xa)}).strict();var Ea=r.object({label:r.string().trim().max(120).optional().nullable(),enabled:r.boolean().optional().default(!0)}),Jd=r.discriminatedUnion("kind",[Ea.extend({kind:r.literal("schedule"),cronExpression:r.string().trim().min(1),timezone:r.string().trim().min(1).default("UTC")}),Ea.extend({kind:r.literal("webhook"),signingMode:r.enum(_t).optional().default("bearer"),replayWindowSec:r.number().int().min(30).max(86400).optional().default(300)}),Ea.extend({kind:r.literal("api")})]),Xd=r.object({label:r.string().trim().max(120).optional().nullable(),enabled:r.boolean().optional(),cronExpression:r.string().trim().min(1).optional().nullable(),timezone:r.string().trim().min(1).optional().nullable(),signingMode:r.enum(_t).optional().nullable(),replayWindowSec:r.number().int().min(30).max(86400).optional().nullable()}),Qd=r.object({triggerId:r.string().uuid().optional().nullable(),payload:r.record(r.string(),r.unknown()).optional().nullable(),variables:r.record(r.string(),Gd).optional().nullable(),projectId:r.string().uuid().optional().nullable(),assigneeAgentId:r.string().uuid().optional().nullable(),idempotencyKey:r.string().trim().max(255).optional().nullable(),source:r.enum(["manual","api"]).optional().default("manual"),executionWorkspaceId:r.string().uuid().optional().nullable(),executionWorkspacePreference:r.enum(Wr).optional().nullable(),executionWorkspaceSettings:Un.optional().nullable()}),ep=r.object({});var ln=r.object({company:r.boolean().optional(),agents:r.boolean().optional(),projects:r.boolean().optional(),issues:r.boolean().optional(),skills:r.boolean().optional()}).partial(),Ta=r.object({key:r.string().min(1),description:r.string().nullable(),agentSlug:r.string().min(1).nullable(),projectSlug:r.string().min(1).nullable(),kind:r.enum(["secret","plain"]),requirement:r.enum(["required","optional"]),defaultValue:r.string().nullable(),portability:r.enum(["portable","system_dependent"])}),rb=r.union([r.string(),r.object({encoding:r.literal("base64"),data:r.string(),contentType:r.string().min(1).optional().nullable()})]),Ra=r.object({path:r.string().min(1),name:r.string().min(1),description:r.string().nullable(),brandColor:r.string().nullable(),logoPath:r.string().nullable(),attachmentMaxBytes:r.number().int().min(1).max(1073741824).nullable().default(null),requireBoardApprovalForNewAgents:r.boolean(),feedbackDataSharingEnabled:r.boolean().default(!1),feedbackDataSharingConsentAt:r.string().datetime().nullable().default(null),feedbackDataSharingConsentByUserId:r.string().nullable().default(null),feedbackDataSharingTermsVersion:r.string().nullable().default(null)}),Jr=r.object({agents:r.array(r.string().min(1)).default([]),projects:r.array(r.string().min(1)).default([])}),Ca=r.object({slug:r.string().min(1),name:r.string().min(1),path:r.string().min(1),skills:r.array(r.string().min(1)).default([]),role:r.string().min(1),title:r.string().nullable(),icon:r.string().nullable(),capabilities:r.string().nullable(),reportsToSlug:r.string().min(1).nullable(),adapterType:r.string().min(1),adapterConfig:r.record(r.string(),r.unknown()),runtimeConfig:r.record(r.string(),r.unknown()),permissions:r.record(r.string(),r.unknown()),budgetMonthlyCents:r.number().int().nonnegative(),metadata:r.record(r.string(),r.unknown()).nullable()}),tp=r.object({key:r.string().min(1),slug:r.string().min(1),name:r.string().min(1),path:r.string().min(1),description:r.string().nullable(),sourceType:r.string().min(1),sourceLocator:r.string().nullable(),sourceRef:r.string().nullable(),trustLevel:r.string().nullable(),compatibility:r.string().nullable(),metadata:r.record(r.string(),r.unknown()).nullable(),fileInventory:r.array(r.object({path:r.string().min(1),kind:r.string().min(1)})).default([])}),sb=r.object({slug:r.string().min(1),name:r.string().min(1),path:r.string().min(1),description:r.string().nullable(),ownerAgentSlug:r.string().min(1).nullable(),leadAgentSlug:r.string().min(1).nullable(),targetDate:r.string().nullable(),color:r.string().nullable(),status:r.string().nullable(),executionWorkspacePolicy:r.record(r.string(),r.unknown()).nullable(),workspaces:r.array(r.object({key:r.string().min(1),name:r.string().min(1),sourceType:r.string().nullable(),repoUrl:r.string().nullable(),repoRef:r.string().nullable(),defaultRef:r.string().nullable(),visibility:r.string().nullable(),setupCommand:r.string().nullable(),cleanupCommand:r.string().nullable(),metadata:r.record(r.string(),r.unknown()).nullable(),isPrimary:r.boolean()})).default([]),metadata:r.record(r.string(),r.unknown()).nullable()}),ib=r.object({kind:r.string().min(1),label:r.string().nullable(),enabled:r.boolean(),cronExpression:r.string().nullable(),timezone:r.string().nullable(),signingMode:r.string().nullable(),replayWindowSec:r.number().int().nullable()}),ob=r.object({concurrencyPolicy:r.string().nullable(),catchUpPolicy:r.string().nullable(),variables:r.array(Xe).nullable().optional(),triggers:r.array(ib).default([])}),ab=r.object({body:r.string().min(1),authorType:Fn,authorAgentSlug:r.string().min(1).nullable(),authorUserId:r.string().nullable(),presentation:jn.nullable(),metadata:qn.nullable(),createdAt:r.string().datetime().nullable()}),cb=r.object({slug:r.string().min(1),identifier:r.string().min(1).nullable(),title:r.string().min(1),path:r.string().min(1),projectSlug:r.string().min(1).nullable(),projectWorkspaceKey:r.string().min(1).nullable(),assigneeAgentSlug:r.string().min(1).nullable(),description:r.string().nullable(),recurring:r.boolean().default(!1),routine:ob.nullable(),legacyRecurrence:r.record(r.string(),r.unknown()).nullable(),status:r.string().nullable(),priority:r.string().nullable(),labelIds:r.array(r.string().min(1)).default([]),billingCode:r.string().nullable(),executionWorkspaceSettings:r.record(r.string(),r.unknown()).nullable(),assigneeAdapterOverrides:r.record(r.string(),r.unknown()).nullable(),comments:r.array(ab).default([]),metadata:r.record(r.string(),r.unknown()).nullable()}),np=r.object({schemaVersion:r.number().int().positive(),generatedAt:r.string().datetime(),source:r.object({companyId:r.string().uuid(),companyName:r.string().min(1)}).nullable(),includes:r.object({company:r.boolean(),agents:r.boolean(),projects:r.boolean(),issues:r.boolean(),skills:r.boolean()}),company:Ra.nullable(),sidebar:Jr.nullable(),agents:r.array(Ca),skills:r.array(tp).default([]),projects:r.array(sb).default([]),issues:r.array(cb).default([]),envInputs:r.array(Ta).default([])}),Pa=r.discriminatedUnion("type",[r.object({type:r.literal("inline"),rootPath:r.string().min(1).optional().nullable(),files:r.record(r.string(),rb)}),r.object({type:r.literal("github"),url:r.string().url()})]),Oa=r.discriminatedUnion("mode",[r.object({mode:r.literal("new_company"),newCompanyName:r.string().min(1).optional().nullable()}),r.object({mode:r.literal("existing_company"),companyId:r.string().uuid()})]),Bn=r.union([r.literal("all"),r.array(r.string().min(1))]),Hn=r.enum(["rename","skip","replace"]),rp=r.object({include:ln.optional(),agents:r.array(r.string().min(1)).optional(),skills:r.array(r.string().min(1)).optional(),projects:r.array(r.string().min(1)).optional(),issues:r.array(r.string().min(1)).optional(),projectIssues:r.array(r.string().min(1)).optional(),selectedFiles:r.array(r.string().min(1)).optional(),expandReferencedSkills:r.boolean().optional(),sidebarOrder:Jr.partial().optional()}),Na=r.object({source:Pa,include:ln.optional(),target:Oa,agents:Bn.optional(),collisionStrategy:Hn.optional(),nameOverrides:r.record(r.string().min(1),r.string().min(1)).optional(),selectedFiles:r.array(r.string().min(1)).optional()}),La=r.object({adapterType:r.string().min(1),adapterConfig:r.record(r.string(),r.unknown()).optional()}),sp=Na.extend({adapterOverrides:r.record(r.string().min(1),La).optional(),secretValues:r.record(r.string().min(1),r.string()).optional()});var Xr=r.enum(["bundled","optional"]),Ma=r.enum(["markdown_only","assets","scripts_executables","external_sources"]),Da=r.enum(["compatible","unknown","invalid"]),Qr=r.enum(["team","agent","project","task","skill","extension","readme","reference","script","asset","markdown","other"]),es=r.enum(["catalog","local","skills_sh","github","url","local_path","agent_package"]),Ua=r.object({type:es,ref:r.string().min(1),agentSlugs:r.array(r.string().min(1)),resolved:r.boolean(),catalogSkillId:r.string().min(1).optional(),catalogSkillKey:r.string().min(1).optional(),localPath:r.string().min(1).optional(),sourceLocator:r.string().min(1).optional(),sourceRef:r.string().min(1).optional()}),Fa=r.object({key:r.string().min(1),agentSlug:r.string().min(1).nullable(),projectSlug:r.string().min(1).nullable(),kind:r.enum(["secret","plain"]),requirement:r.enum(["required","optional"])}),ja=r.object({type:r.enum(["skills_sh","github","url","local_path","agent_package","include"]),ref:r.string().min(1),pinned:r.boolean()}),qa=r.object({path:r.string().min(1),kind:Qr,sizeBytes:r.number().int().nonnegative(),sha256:r.string().min(1)}),ip=r.object({id:r.string().min(1),key:r.string().min(1),kind:Xr,category:r.string().min(1),slug:r.string().min(1),name:r.string().min(1),description:r.string(),path:r.string().min(1),entrypoint:r.literal("TEAM.md"),schema:r.literal("agentcompanies/v1"),defaultInstall:r.boolean(),recommendedForCompanyTypes:r.array(r.string()),tags:r.array(r.string()),counts:r.object({agents:r.number().int().nonnegative(),projects:r.number().int().nonnegative(),tasks:r.number().int().nonnegative(),routines:r.number().int().nonnegative(),localSkills:r.number().int().nonnegative(),catalogSkills:r.number().int().nonnegative(),externalSkillSources:r.number().int().nonnegative()}),rootAgentSlugs:r.array(r.string()),agentSlugs:r.array(r.string()),projectSlugs:r.array(r.string()),requiredSkills:r.array(Ua),envInputs:r.array(Fa),sourceRefs:r.array(ja),files:r.array(qa),trustLevel:Ma,compatibility:Da,contentHash:r.string().min(1),packageName:r.string().min(1).optional(),packageVersion:r.string().min(1).optional()}),op=r.object({kind:Xr.optional(),category:r.string().min(1).optional(),q:r.string().min(1).optional()}),ap=r.object({catalogTeamId:r.string().min(1),path:r.string().min(1),kind:Qr,content:r.string(),language:r.string().nullable(),markdown:r.boolean()}),$a=r.object({allowExternalSources:r.boolean().optional(),allowUnpinnedOptionalSources:r.boolean().optional(),allowLocalPathSources:r.boolean().optional()}).strict(),Ba=r.object({targetManagerAgentId:r.string().min(1).nullable().optional(),targetManagerSlug:r.string().min(1).nullable().optional(),include:ln.omit({company:!0}).strict().optional(),agents:Bn.optional(),collisionStrategy:Hn.optional(),nameOverrides:r.record(r.string().min(1),r.string().min(1)).optional(),selectedFiles:r.array(r.string().min(1)).optional(),sourcePolicy:$a.optional()}).strict(),cp=Ba.extend({adapterOverrides:r.record(r.string().min(1),La).optional(),secretValues:r.record(r.string().min(1),r.string()).optional()}).strict(),lp=r.object({type:es,ref:r.string().min(1),agentSlugs:r.array(r.string().min(1)),action:r.enum(["already_in_package","catalog_install_required","external_import_required","blocked"]),catalogSkillId:r.string().min(1).nullable(),catalogSkillKey:r.string().min(1).nullable(),sourceLocator:r.string().min(1).nullable(),sourceRef:r.string().min(1).nullable(),reason:r.string().min(1).nullable()});var Ha=r.enum(["available","configured","installed","missing","stale","external"]),lb=r.enum(["company_managed","paperclip_required","user_installed","external_unknown"]),Va=r.enum(["unsupported","persistent","ephemeral"]),Ka=r.object({key:r.string().min(1),runtimeName:r.string().min(1).nullable(),desired:r.boolean(),managed:r.boolean(),required:r.boolean().optional(),requiredReason:r.string().nullable().optional(),state:Ha,origin:lb.optional(),originLabel:r.string().nullable().optional(),locationLabel:r.string().nullable().optional(),readOnly:r.boolean().optional(),sourcePath:r.string().nullable().optional(),targetPath:r.string().nullable().optional(),detail:r.string().nullable().optional()}),up=r.object({adapterType:r.string().min(1),supported:r.boolean(),mode:Va,desiredSkills:r.array(r.string().min(1)),entries:r.array(Ka),warnings:r.array(r.string())}),dp=r.object({desiredSkills:r.array(r.string().min(1))});var za=r.object({canCreateAgents:r.boolean().optional().default(!1),trustPreset:xt.optional(),authorizationPolicy:$e.optional()}).catchall(r.unknown()),Wa=r.enum(["managed","external"]),pp=r.object({mode:Wa.optional(),rootPath:r.string().trim().min(1).nullable().optional(),entryFile:r.string().trim().min(1).optional(),clearLegacyPromptTemplate:r.boolean().optional().default(!1)}),mp=r.object({path:r.string().trim().min(1),content:r.string(),clearLegacyPromptTemplate:r.boolean().optional().default(!1)}),Ga=r.record(r.string(),r.unknown()).superRefine((e,t)=>{let n=e.env;if(n===void 0)return;Be.safeParse(n).success||t.addIssue({code:r.ZodIssueCode.custom,message:"adapterConfig.env must be a map of valid env bindings",path:["env"]})}),ub=r.object({entryFile:r.string().trim().min(1).optional(),files:r.record(r.string(),r.string()).refine(e=>Object.keys(e).length>0,{message:"instructionsBundle.files must contain at least one file"})}),db=r.object({enabled:r.boolean().optional(),label:r.string().trim().min(1).optional(),adapterConfig:Ga}).strict(),gp=r.object({modelProfiles:r.object({cheap:db.optional()}).strict().optional()}).catchall(r.unknown()),ts=r.object({name:r.string().min(1),role:r.enum(ai).optional().default("general"),title:r.string().optional().nullable(),icon:r.enum(li).optional().nullable(),reportsTo:r.string().uuid().optional().nullable(),capabilities:r.string().optional().nullable(),desiredSkills:r.array(r.string().min(1)).optional(),adapterType:lo,adapterConfig:Ga.optional().default({}),instructionsBundle:ub.optional(),runtimeConfig:gp.optional().default({}),defaultEnvironmentId:r.string().uuid().optional().nullable(),budgetMonthlyCents:r.number().int().nonnegative().optional().default(0),permissions:za.optional(),metadata:r.record(r.string(),r.unknown()).optional().nullable()}),fp=ts.extend({sourceIssueId:r.string().uuid().optional().nullable(),sourceIssueIds:r.array(r.string().uuid()).optional()}),hp=ts.omit({permissions:!0}).partial().extend({permissions:r.never().optional(),replaceAdapterConfig:r.boolean().optional(),status:r.enum(oi).optional(),spentMonthlyCents:r.number().int().nonnegative().optional()}),yp=r.object({path:r.string().trim().min(1).nullable(),adapterConfigKey:r.string().trim().min(1).optional()}),Sp=r.object({name:r.string().min(1).default("default")}),bp=r.object({userId:r.string().trim().min(1),status:r.string().trim().min(1).optional().default(di)}),Ip=r.object({source:r.enum(["timer","assignment","on_demand","automation"]).optional().default("on_demand"),triggerDetail:r.enum(["manual","ping","callback","system"]).optional(),reason:r.string().optional().nullable(),payload:r.record(r.string(),r.unknown()).optional().nullable(),idempotencyKey:r.string().optional().nullable(),forceFreshSession:r.preprocess(e=>e===null?void 0:e,r.boolean().optional().default(!1))}),vp=r.object({taskKey:r.string().min(1).optional().nullable()}),kp=r.object({adapterConfig:Ga.optional().default({}),environmentId:r.string().uuid().optional().nullable()}),_p=r.object({canCreateAgents:r.boolean(),canAssignTasks:r.boolean(),trustPreset:xt.optional(),authorizationPolicy:$e.optional()});var pb=r.object({type:r.enum(["project_primary","git_worktree","adapter_managed","cloud_sandbox"]).optional(),baseRef:r.string().optional().nullable(),branchTemplate:r.string().optional().nullable(),worktreeParentDir:r.string().optional().nullable(),provisionCommand:r.string().optional().nullable(),teardownCommand:r.string().optional().nullable()}).strict(),Ya=r.object({enabled:r.boolean(),defaultMode:r.enum(["shared_workspace","isolated_workspace","operator_branch","adapter_default"]).optional(),allowIssueOverride:r.boolean().optional(),defaultProjectWorkspaceId:r.string().uuid().optional().nullable(),environmentId:r.string().uuid().optional().nullable(),workspaceStrategy:pb.optional().nullable(),workspaceRuntime:r.record(r.string(),r.unknown()).optional().nullable(),branchPolicy:r.record(r.string(),r.unknown()).optional().nullable(),pullRequestPolicy:r.record(r.string(),r.unknown()).optional().nullable(),runtimePolicy:r.record(r.string(),r.unknown()).optional().nullable(),cleanupPolicy:r.record(r.string(),r.unknown()).optional().nullable(),authorizationPolicy:$e.optional().nullable()}).strict(),Ep=r.object({workspaceRuntime:r.record(r.string(),r.unknown()).optional().nullable(),desiredState:r.enum(["running","stopped","manual"]).optional().nullable(),serviceStates:r.record(r.enum(["running","stopped","manual"])).optional().nullable()}).strict(),mb=r.enum(["local_path","git_repo","remote_managed","non_git_path"]),gb=r.enum(["default","advanced"]),Ap={name:r.string().min(1).optional(),sourceType:mb.optional(),cwd:r.string().min(1).optional().nullable(),repoUrl:r.string().url().optional().nullable(),repoRef:r.string().optional().nullable(),defaultRef:r.string().optional().nullable(),visibility:gb.optional(),setupCommand:r.string().optional().nullable(),cleanupCommand:r.string().optional().nullable(),remoteProvider:r.string().optional().nullable(),remoteWorkspaceRef:r.string().optional().nullable(),sharedWorkspaceKey:r.string().optional().nullable(),metadata:r.record(r.string(),r.unknown()).optional().nullable(),runtimeConfig:Ep.optional().nullable()};function fb(e,t){let n=e.sourceType??"local_path",s=typeof e.cwd=="string"&&e.cwd.trim().length>0,i=typeof e.repoUrl=="string"&&e.repoUrl.trim().length>0,o=typeof e.remoteWorkspaceRef=="string"&&e.remoteWorkspaceRef.trim().length>0;if(n==="remote_managed"){!o&&!i&&t.addIssue({code:r.ZodIssueCode.custom,message:"Remote-managed workspace requires remoteWorkspaceRef or repoUrl.",path:["remoteWorkspaceRef"]});return}!s&&!i&&t.addIssue({code:r.ZodIssueCode.custom,message:"Workspace requires at least one of cwd or repoUrl.",path:["cwd"]})}var Za=r.object({...Ap,isPrimary:r.boolean().optional().default(!1)}).superRefine(fb),wp=r.object({...Ap,isPrimary:r.boolean().optional()}).partial(),xp={goalId:r.string().uuid().optional().nullable(),goalIds:r.array(r.string().uuid()).optional(),name:r.string().min(1),description:r.string().optional().nullable(),status:r.enum(Ui).optional().default("backlog"),leadAgentId:r.string().uuid().optional().nullable(),targetDate:r.string().optional().nullable(),color:r.string().optional().nullable(),icon:r.enum(ui).optional().nullable(),env:Be.optional().nullable(),executionWorkspacePolicy:Ya.optional().nullable(),archivedAt:r.string().datetime().optional().nullable()},Tp=r.object({...xp,workspace:Za.optional()}),Rp=r.object(xp).partial();var Ja=r.enum(xi),Cp=r.enum(Ti),Pp=r.enum(Ri),Xa=r.object({exact:r.string().min(1).max(1e4),prefix:r.string().max(1e3).default(""),suffix:r.string().max(1e3).default("")}).strict(),Qa=r.object({normalizedStart:r.number().int().nonnegative(),normalizedEnd:r.number().int().nonnegative(),markdownStart:r.number().int().nonnegative(),markdownEnd:r.number().int().nonnegative()}).strict().superRefine((e,t)=>{e.normalizedEnd<=e.normalizedStart&&t.addIssue({code:r.ZodIssueCode.custom,message:"normalizedEnd must be greater than normalizedStart",path:["normalizedEnd"]}),e.markdownEnd<=e.markdownStart&&t.addIssue({code:r.ZodIssueCode.custom,message:"markdownEnd must be greater than markdownStart",path:["markdownEnd"]})}),ec=r.object({quote:Xa,position:Qa}).strict(),Op=r.object({baseRevisionId:r.string().uuid(),baseRevisionNumber:r.number().int().positive(),selector:ec,body:J.pipe(r.string().min(1).max(2e4)),issueCommentId:r.string().uuid().nullable().optional()}).strict(),Np=r.object({body:J.pipe(r.string().min(1).max(2e4)),issueCommentId:r.string().uuid().nullable().optional()}).strict(),Lp=r.object({status:Ja.optional()}).strict().refine(e=>e.status!=null,{message:"At least one field must be provided"});var nc=200;var rc=20,sc=50,ic=200;function tc(e){return Array.isArray(e)?e[0]:e}function Mp(e,t,n,s){let i=tc(e),o=typeof i=="number"?i:typeof i=="string"&&i.trim().length>0?Number.parseInt(i,10):Number.NaN;return Number.isFinite(o)?Math.min(s,Math.max(n,Math.floor(o))):t}var Dp=r.object({q:r.preprocess(tc,r.string().optional().default("")).transform(e=>e.slice(0,nc)),scope:r.preprocess(tc,r.enum(jr).catch("all")).optional().default("all"),limit:r.unknown().optional().transform(e=>Mp(e,rc,1,sc)),offset:r.unknown().optional().transform(e=>Mp(e,0,0,ic))});var ns=r.enum(Ai),Vn=r.object({strategy:r.enum(wi).default("manual"),note:r.string().trim().min(1).max(500).optional().nullable()}).strict(),Up=r.object({mode:ns,releasePolicy:Vn.optional().nullable()}).strict(),Fp=r.object({mode:ns,reason:r.string().trim().min(1).max(1e3).optional().nullable(),releasePolicy:Vn.optional().nullable(),metadata:r.record(r.string(),r.unknown()).optional().nullable()}).strict(),jp=r.object({reason:r.string().trim().min(1).max(1e3).optional().nullable(),releasePolicy:Vn.optional().nullable(),metadata:r.record(r.string(),r.unknown()).optional().nullable()}).strict();function hb(e){return`/api/attachments/${e}/content`}var oc=r.enum(["preview_url","runtime_service","pull_request","branch","commit","artifact","document"]),ac=r.enum(["active","ready_for_review","approved","changes_requested","merged","closed","failed","archived","draft"]),cc=r.enum(["none","needs_board_review","approved","changes_requested"]),qp=r.object({attachmentId:r.string().uuid(),contentType:r.string().min(1),byteSize:r.number().int().nonnegative(),contentPath:r.string().min(1),openPath:r.string().min(1),downloadPath:r.string().min(1),originalFilename:r.string().optional().nullable()}).superRefine((e,t)=>{let n=hb(e.attachmentId);e.contentPath!==n&&t.addIssue({code:r.ZodIssueCode.custom,path:["contentPath"],message:"contentPath must point to the same-origin attachment content route"}),e.openPath!==n&&t.addIssue({code:r.ZodIssueCode.custom,path:["openPath"],message:"openPath must point to the same-origin attachment content route"}),e.downloadPath!==`${n}?download=1`&&t.addIssue({code:r.ZodIssueCode.custom,path:["downloadPath"],message:"downloadPath must point to the same-origin attachment download route"})}),lc=r.object({projectId:r.string().uuid().optional().nullable(),executionWorkspaceId:r.string().uuid().optional().nullable(),runtimeServiceId:r.string().uuid().optional().nullable(),type:oc,provider:r.string().min(1),externalId:r.string().optional().nullable(),title:r.string().min(1),url:r.string().url().optional().nullable(),status:ac.default("active"),reviewState:cc.optional().default("none"),isPrimary:r.boolean().optional().default(!1),healthStatus:r.enum(["unknown","healthy","unhealthy"]).optional().default("unknown"),summary:r.string().optional().nullable(),metadata:r.record(r.string(),r.unknown()).optional().nullable(),createdByRunId:r.string().uuid().optional().nullable()}),$p=lc.partial();var uc=30,dc=100,pc=160,mc=r.enum(["document","attachment","work_product"]),ss=r.enum(["image","video","text","document","file","empty"]),is=r.enum(["none","task","parent_task"]),Bp=r.object({kind:r.enum(["image","video","text","document","file","all"]).optional().default("all"),projectId:r.string().uuid().optional(),q:r.string().trim().max(pc).optional(),groupBy:is.optional().default("none"),groupIssueId:r.string().uuid().optional(),limit:r.coerce.number().int().min(1).max(dc).optional().default(uc),cursor:r.string().min(1).optional()}),os=r.object({id:r.string().min(1),source:mc,mediaKind:ss,title:r.string(),previewText:r.string().nullable(),contentType:r.string().nullable(),contentPath:r.string().nullable(),openPath:r.string().nullable(),downloadPath:r.string().nullable(),issue:r.object({id:r.string().uuid(),identifier:r.string(),title:r.string()}),project:r.object({id:r.string().uuid(),name:r.string()}).nullable(),createdByAgent:r.object({id:r.string().uuid(),name:r.string()}).nullable(),updatedAt:r.string().datetime(),href:r.string().min(1)}),rs=r.object({id:r.string().min(1),groupBy:is.exclude(["none"]),issue:r.object({id:r.string().uuid(),identifier:r.string(),title:r.string()}),title:r.string(),count:r.number().int().min(0),mediaKinds:r.array(ss),previewArtifacts:r.array(os),updatedAt:r.string().datetime(),href:r.string().min(1)}),Hp=r.object({artifacts:r.array(os),groups:r.array(rs).optional(),selectedGroup:rs.nullable().optional(),nextCursor:r.string().nullable()});var gc=r.object({title:r.string().min(1),description:r.string().optional().nullable(),level:r.enum(Mi).optional().default("task"),status:r.enum(Di).optional().default("planned"),parentId:r.string().uuid().optional().nullable(),ownerAgentId:r.string().uuid().optional().nullable()}),Vp=gc.partial();var Kp=r.object({type:r.enum(Hi),requestedByAgentId:r.string().uuid().optional().nullable(),payload:r.record(r.string(),r.unknown()),issueIds:r.array(r.string().uuid()).optional()}),zp=r.object({decisionNote:J.optional().nullable()}),Wp=r.object({decisionNote:J.optional().nullable()}),Gp=r.object({payload:r.record(r.string(),r.unknown()).optional()}),Yp=r.object({body:J.pipe(r.string().min(1))});var Zp=r.object({agentId:r.string().uuid(),issueId:r.string().uuid().optional().nullable(),projectId:r.string().uuid().optional().nullable(),goalId:r.string().uuid().optional().nullable(),heartbeatRunId:r.string().uuid().optional().nullable(),billingCode:r.string().optional().nullable(),provider:r.string().min(1),biller:r.string().min(1).optional(),billingType:r.enum(Ki).optional().default("unknown"),model:r.string().min(1),inputTokens:r.number().int().nonnegative().optional().default(0),cachedInputTokens:r.number().int().nonnegative().optional().default(0),outputTokens:r.number().int().nonnegative().optional().default(0),costCents:r.number().int().nonnegative(),occurredAt:r.string().datetime()}).transform(e=>({...e,biller:e.biller??e.provider})),Jp=r.object({budgetMonthlyCents:r.number().int().nonnegative()});var Xp=r.object({agentId:r.string().uuid().optional().nullable(),issueId:r.string().uuid().optional().nullable(),projectId:r.string().uuid().optional().nullable(),goalId:r.string().uuid().optional().nullable(),heartbeatRunId:r.string().uuid().optional().nullable(),costEventId:r.string().uuid().optional().nullable(),billingCode:r.string().optional().nullable(),description:r.string().max(500).optional().nullable(),eventKind:r.enum(zi),direction:r.enum(Wi).optional().default("debit"),biller:r.string().min(1),provider:r.string().min(1).optional().nullable(),executionAdapterType:r.enum(wn).optional().nullable(),pricingTier:r.string().min(1).optional().nullable(),region:r.string().min(1).optional().nullable(),model:r.string().min(1).optional().nullable(),quantity:r.number().int().nonnegative().optional().nullable(),unit:r.enum(Gi).optional().nullable(),amountCents:r.number().int().nonnegative(),currency:r.string().length(3).optional().default("USD"),estimated:r.boolean().optional().default(!1),externalInvoiceId:r.string().optional().nullable(),metadataJson:r.record(r.string(),r.unknown()).optional().nullable(),occurredAt:r.string().datetime()}).transform(e=>({...e,currency:e.currency.toUpperCase()}));var Qp=r.object({namespace:r.string().trim().min(1).max(120).regex(/^[a-zA-Z0-9/_-]+$/).optional()});var em=r.object({allowedJoinTypes:r.enum(Qi).default("both"),humanRole:r.enum(rn).optional().nullable(),defaultsPayload:r.record(r.string(),r.unknown()).optional().nullable(),agentMessage:r.string().max(4e3).optional().nullable()}),tm=r.object({agentMessage:r.string().max(4e3).optional().nullable()}),nm=r.object({requestType:r.enum(wr),agentName:r.string().min(1).max(120).optional(),adapterType:uo,capabilities:r.string().max(4e3).optional().nullable(),agentDefaultsPayload:r.record(r.string(),r.unknown()).optional().nullable(),responsesWebhookUrl:r.string().max(4e3).optional().nullable(),responsesWebhookMethod:r.string().max(32).optional().nullable(),responsesWebhookHeaders:r.record(r.string(),r.unknown()).optional().nullable(),paperclipApiUrl:r.string().max(4e3).optional().nullable(),webhookAuthHeader:r.string().max(4e3).optional().nullable()}),rm=r.object({status:r.enum(eo).optional(),requestType:r.enum(wr).optional()}),sm=r.object({state:r.enum(["active","revoked","accepted","expired"]).optional(),limit:r.coerce.number().int().min(1).max(100).optional().default(20),offset:r.coerce.number().int().min(0).optional().default(0)}),im=r.object({claimSecret:r.string().min(16).max(256)}),fc=r.enum(["board","instance_admin_required"]),om=r.object({command:r.string().min(1).max(240),clientName:r.string().max(120).optional().nullable(),requestedAccess:fc.default("board"),requestedCompanyId:r.string().uuid().optional().nullable()}),am=r.object({token:r.string().min(16).max(256)}),cm=r.object({name:r.string().trim().min(1).max(120).default("paperclipai cli"),expiresAt:r.coerce.date().optional().nullable(),requestedCompanyId:r.string().uuid().optional().nullable()}),hc=r.object({grants:r.array(r.object({permissionKey:r.enum(xr),scope:r.record(r.string(),r.unknown()).optional().nullable()}))}),lm=["pending","active","suspended"],um=r.object({membershipRole:r.enum(rn).optional().nullable(),status:r.enum(lm).optional()}).refine(e=>e.membershipRole!==void 0||e.status!==void 0,{message:"membershipRole or status is required"}),dm=r.object({membershipRole:r.enum(rn).optional().nullable(),status:r.enum(lm).optional(),grants:hc.shape.grants.default([])}).refine(e=>e.membershipRole!==void 0||e.status!==void 0,{message:"membershipRole or status is required"}),pm=r.object({reassignment:r.object({assigneeAgentId:r.string().uuid().optional().nullable(),assigneeUserId:r.string().uuid().optional().nullable()}).optional().nullable()}).superRefine((e,t)=>{e.reassignment?.assigneeAgentId&&e.reassignment.assigneeUserId&&t.addIssue({code:r.ZodIssueCode.custom,message:"Choose either an agent or user reassignment target",path:["reassignment"]})}),mm=r.object({companyIds:r.array(r.string().uuid()).default([])}),gm=r.object({query:r.string().trim().max(120).optional().default("")}),yb=/^\/api\/assets\/[^/?#]+\/content(?:\?[^#]*)?(?:#.*)?$/;function Sb(e){if(yb.test(e))return!0;try{let t=new URL(e);return t.protocol==="https:"||t.protocol==="http:"}catch{return!1}}var fm=r.string().trim().min(1).max(4e3).refine(Sb,{message:"Invalid profile image URL"}),yc=r.object({id:r.string().min(1),email:r.string().email().nullable(),name:r.string().min(1).max(120).nullable(),image:fm.nullable()}),hm=r.object({session:r.object({id:r.string().min(1),userId:r.string().min(1)}),user:yc}),ym=r.object({name:r.string().trim().min(1).max(120),image:r.union([fm,r.literal(""),r.null()]).optional().transform(e=>e===""?null:e)});var Kn=r.record(r.string(),r.unknown()).refine(e=>Object.keys(e).length===0?!0:typeof e.type=="string"||e.$ref!==void 0||e.oneOf!==void 0||e.anyOf!==void 0||e.allOf!==void 0,{message:"Must be a valid JSON Schema object (requires at least a 'type', '$ref', or composition keyword)"}),bb=/^(\*(?:\/[0-9]+)?|[0-9]+(?:-[0-9]+)?(?:\/[0-9]+)?)(?:,(\*(?:\/[0-9]+)?|[0-9]+(?:-[0-9]+)?(?:\/[0-9]+)?))*$/;function Ib(e){let t=e.trim();if(!t)return!1;let n=t.split(/\s+/);return n.length!==5?!1:n.every(s=>bb.test(s))}var bc=r.object({jobKey:r.string().min(1),displayName:r.string().min(1),description:r.string().optional(),schedule:r.string().refine(e=>Ib(e),{message:"schedule must be a valid 5-field cron expression (e.g. '*/15 * * * *')"}).optional()}),Ic=r.object({endpointKey:r.string().min(1),displayName:r.string().min(1),description:r.string().optional()}),vc=r.object({name:r.string().min(1),displayName:r.string().min(1),description:r.string().min(1),parametersSchema:Kn}),kc=r.object({driverKey:r.string().min(1).regex(/^[a-z0-9][a-z0-9._-]*$/,"Environment driver key must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, hyphens, or underscores"),kind:r.enum(["environment_driver","sandbox_provider"]).optional(),displayName:r.string().min(1).max(100),description:r.string().max(500).optional(),configSchema:Kn}),vb=r.object({agentKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"agentKey must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"}),displayName:r.string().min(1).max(100),role:r.string().min(1).max(100).optional(),title:r.string().max(200).nullable().optional(),icon:r.string().max(100).nullable().optional(),capabilities:r.string().max(2e3).nullable().optional(),adapterType:r.string().min(1).max(100).optional(),adapterPreference:r.array(r.string().min(1).max(100)).max(10).optional(),adapterConfig:r.record(r.string(),r.unknown()).optional(),runtimeConfig:r.record(r.string(),r.unknown()).optional(),permissions:r.record(r.string(),r.unknown()).optional(),status:r.enum(["idle","paused"]).optional(),budgetMonthlyCents:r.number().int().min(0).optional(),instructions:r.object({entryFile:r.string().min(1).max(200).optional(),content:r.string().max(2e5).optional(),files:r.record(r.string().max(2e5)).optional(),assetPath:r.string().min(1).max(500).optional()}).optional()}),kb=r.object({projectKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"projectKey must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"}),displayName:r.string().min(1).max(120),description:r.string().max(2e3).nullable().optional(),status:r.enum(["backlog","planned","in_progress","completed","cancelled"]).optional(),color:r.string().max(32).nullable().optional(),settings:r.record(r.string(),r.unknown()).optional()}),Sm=r.object({pluginKey:r.string().min(1).max(100).optional(),resourceKind:r.enum(["agent","project","routine","skill"]),resourceKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"resourceKey must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"})}),_b=r.object({routineKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"routineKey must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"}),title:r.string().trim().min(1).max(200),description:r.string().max(1e4).nullable().optional(),assigneeRef:Sm.extend({resourceKind:r.literal("agent")}).nullable().optional(),projectRef:Sm.extend({resourceKind:r.literal("project")}).nullable().optional(),goalId:r.string().uuid().nullable().optional(),status:r.enum(en).optional(),priority:r.enum(Te).optional(),concurrencyPolicy:r.enum(tn).optional(),catchUpPolicy:r.enum(nn).optional(),variables:r.array(Xe).optional(),triggers:r.array(r.object({kind:r.enum(Tn),label:r.string().trim().max(120).nullable().optional(),enabled:r.boolean().optional(),cronExpression:r.string().trim().min(1).optional().nullable(),timezone:r.string().trim().min(1).optional().nullable(),signingMode:r.enum(_t).optional().nullable(),replayWindowSec:r.number().int().min(30).max(86400).optional().nullable()})).max(20).optional(),issueTemplate:r.object({surfaceVisibility:r.enum(Ii).optional(),originId:r.string().trim().max(255).nullable().optional(),billingCode:r.string().trim().max(200).nullable().optional()}).optional()}),Sc=r.string().min(1).max(500).refine(e=>!e.startsWith("/")&&!e.includes("..")&&!e.includes("\\")&&!e.split("/").some(t=>t===""||t==="."),{message:"local folder paths must be relative paths without traversal, empty segments, or backslashes"}),Eb=r.object({folderKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"folderKey must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"}),displayName:r.string().min(1).max(100),description:r.string().max(500).optional(),access:r.enum(["read","readWrite"]).optional(),requiredDirectories:r.array(Sc).optional(),requiredFiles:r.array(Sc).optional()}),bm=r.object({path:Sc.refine(e=>e.toLowerCase()!=="skill.md",{message:"managed skill files cannot replace SKILL.md; use markdown for the main skill file"}),content:r.string().max(2e5)}),Im=r.object({skillKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"skillKey must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"}),displayName:r.string().min(1).max(100),slug:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"slug must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"}).optional(),description:r.string().max(2e3).nullable().optional(),markdown:r.string().max(2e5).optional(),files:r.array(bm).max(50).optional()}).superRefine((e,t)=>{let n=(e.files??[]).map(i=>i.path),s=n.filter((i,o)=>n.indexOf(i)!==o);s.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate managed skill file paths: ${[...new Set(s)].join(", ")}`,path:["files"]})}),_c=r.object({type:r.enum(Pr),id:r.string().min(1),displayName:r.string().min(1),exportName:r.string().min(1),entityTypes:r.array(r.enum(Rn)).optional(),routePath:r.string().regex(/^[a-z0-9][a-z0-9-]*$/,{message:"routePath must be a lowercase single-segment slug (letters, numbers, hyphens)"}).optional(),order:r.number().int().optional()}).superRefine((e,t)=>{["detailTab","taskDetailView","contextMenuItem","commentAnnotation","commentContextMenuItem","projectSidebarItem"].includes(e.type)&&(!e.entityTypes||e.entityTypes.length===0)&&t.addIssue({code:r.ZodIssueCode.custom,message:`${e.type} slots require at least one entityType`,path:["entityTypes"]}),e.type==="projectSidebarItem"&&e.entityTypes&&!e.entityTypes.includes("project")&&t.addIssue({code:r.ZodIssueCode.custom,message:'projectSidebarItem slots require entityTypes to include "project"',path:["entityTypes"]}),e.type==="commentAnnotation"&&e.entityTypes&&!e.entityTypes.includes("comment")&&t.addIssue({code:r.ZodIssueCode.custom,message:'commentAnnotation slots require entityTypes to include "comment"',path:["entityTypes"]}),e.type==="commentContextMenuItem"&&e.entityTypes&&!e.entityTypes.includes("comment")&&t.addIssue({code:r.ZodIssueCode.custom,message:'commentContextMenuItem slots require entityTypes to include "comment"',path:["entityTypes"]}),e.routePath&&e.type!=="page"&&e.type!=="routeSidebar"&&e.type!=="companySettingsPage"&&t.addIssue({code:r.ZodIssueCode.custom,message:"routePath is only supported for page, routeSidebar, and companySettingsPage slots",path:["routePath"]}),e.type==="routeSidebar"&&!e.routePath&&t.addIssue({code:r.ZodIssueCode.custom,message:"routeSidebar slots require routePath",path:["routePath"]}),e.type==="companySettingsPage"&&!e.routePath&&t.addIssue({code:r.ZodIssueCode.custom,message:"companySettingsPage slots require routePath",path:["routePath"]}),e.routePath&&Su.includes(e.routePath)&&t.addIssue({code:r.ZodIssueCode.custom,message:`routePath "${e.routePath}" is reserved by the host`,path:["routePath"]}),e.type==="companySettingsPage"&&e.routePath&&Or.includes(e.routePath)&&t.addIssue({code:r.ZodIssueCode.custom,message:`company settings routePath "${e.routePath}" is reserved by the host`,path:["routePath"]})}),Ab=["detailTab","taskDetailView","contextMenuItem","commentAnnotation","commentContextMenuItem","projectSidebarItem"],wb={hostInline:["inline","compact","default"],hostOverlay:["compact","default","wide","full"],hostRoute:["default","wide","full"],external:[],iframe:["compact","default","wide","full"]},Ec=r.object({type:r.enum(oo),target:r.string().min(1),params:r.record(r.string(),r.unknown()).optional()}).superRefine((e,t)=>{e.type==="performAction"&&e.target.includes("/")&&t.addIssue({code:r.ZodIssueCode.custom,message:"performAction launchers must target an action key, not a route or URL",path:["target"]}),e.type==="navigate"&&/^https?:\/\//.test(e.target)&&t.addIssue({code:r.ZodIssueCode.custom,message:"navigate launchers must target a host route, not an absolute URL",path:["target"]})}),Ac=r.object({environment:r.enum(co),bounds:r.enum(ao).optional()}).superRefine((e,t)=>{if(!e.bounds)return;wb[e.environment].includes(e.bounds)||t.addIssue({code:r.ZodIssueCode.custom,message:`bounds "${e.bounds}" is not supported for render environment "${e.environment}"`,path:["bounds"]})}),as=r.object({id:r.string().min(1),displayName:r.string().min(1),description:r.string().optional(),placementZone:r.enum(io),exportName:r.string().min(1).optional(),entityTypes:r.array(r.enum(Rn)).optional(),order:r.number().int().optional(),action:Ec,render:Ac.optional()}).superRefine((e,t)=>{Ab.some(n=>n===e.placementZone)&&(!e.entityTypes||e.entityTypes.length===0)&&t.addIssue({code:r.ZodIssueCode.custom,message:`${e.placementZone} launchers require at least one entityType`,path:["entityTypes"]}),e.placementZone==="projectSidebarItem"&&e.entityTypes&&!e.entityTypes.includes("project")&&t.addIssue({code:r.ZodIssueCode.custom,message:'projectSidebarItem launchers require entityTypes to include "project"',path:["entityTypes"]}),e.action.type==="performAction"&&e.render&&t.addIssue({code:r.ZodIssueCode.custom,message:"performAction launchers cannot declare render hints",path:["render"]}),["openModal","openDrawer","openPopover"].includes(e.action.type)&&!e.render&&t.addIssue({code:r.ZodIssueCode.custom,message:`${e.action.type} launchers require render metadata`,path:["render"]}),e.action.type==="openModal"&&e.render?.environment==="hostInline"&&t.addIssue({code:r.ZodIssueCode.custom,message:"openModal launchers cannot use the hostInline render environment",path:["render","environment"]}),e.action.type==="openDrawer"&&e.render&&!["hostOverlay","iframe"].includes(e.render.environment)&&t.addIssue({code:r.ZodIssueCode.custom,message:"openDrawer launchers must use hostOverlay or iframe render environments",path:["render","environment"]}),e.action.type==="openPopover"&&e.render?.environment==="hostRoute"&&t.addIssue({code:r.ZodIssueCode.custom,message:"openPopover launchers cannot use the hostRoute render environment",path:["render","environment"]})}),wc=r.object({namespaceSlug:r.string().regex(/^[a-z0-9][a-z0-9_]*$/,{message:"namespaceSlug must be lowercase letters, digits, or underscores and start with a letter or digit"}).max(40).optional(),migrationsDir:r.string().min(1).refine(e=>!e.startsWith("/")&&!e.includes("..")&&!/[\\]/.test(e),{message:"migrationsDir must be a relative package path without '..' or backslashes"}),coreReadTables:r.array(r.enum(to)).optional()}),xc=r.object({routeKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"routeKey must be lowercase letters, digits, dots, colons, underscores, or hyphens"}),method:r.enum(no),path:r.string().min(1).regex(/^\/[a-zA-Z0-9:_./-]*$/,{message:"path must start with / and contain only path-safe literal or :param segments"}).refine(e=>!e.includes("..")&&!e.includes("//")&&e!=="/api"&&!e.startsWith("/api/")&&e!=="/plugins"&&!e.startsWith("/plugins/"),{message:"path must stay inside the plugin api namespace"}),auth:r.enum(ro),capability:r.literal("api.routes.register"),checkoutPolicy:r.enum(so).optional(),companyResolution:r.discriminatedUnion("from",[r.object({from:r.literal("body"),key:r.string().min(1)}),r.object({from:r.literal("query"),key:r.string().min(1)}),r.object({from:r.literal("issue"),param:r.string().min(1)})]).optional()}),vm=r.object({id:r.string().min(1).regex(/^[a-z0-9][a-z0-9._-]*$/,"Plugin id must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, hyphens, or underscores"),apiVersion:r.literal(1),version:r.string().min(1).regex(/^\d+\.\d+\.\d+(-[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?(\+[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?$/,"Version must follow semver (e.g. 1.0.0 or 1.0.0-beta.1)"),displayName:r.string().min(1).max(100),description:r.string().min(1).max(500),author:r.string().min(1).max(200),categories:r.array(r.enum(Rr)).min(1),minimumHostVersion:r.string().regex(/^\d+\.\d+\.\d+(-[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?(\+[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?$/,"minimumHostVersion must follow semver (e.g. 1.0.0)").optional(),minimumPaperclipVersion:r.string().regex(/^\d+\.\d+\.\d+(-[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?(\+[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?$/,"minimumPaperclipVersion must follow semver (e.g. 1.0.0)").optional(),capabilities:r.array(r.enum(Cr)).min(1),entrypoints:r.object({worker:r.string().min(1),ui:r.string().min(1).optional()}),instanceConfigSchema:Kn.optional(),jobs:r.array(bc).optional(),webhooks:r.array(Ic).optional(),tools:r.array(vc).optional(),database:wc.optional(),apiRoutes:r.array(xc).optional(),environmentDrivers:r.array(kc).optional(),agents:r.array(vb).optional(),projects:r.array(kb).optional(),routines:r.array(_b).optional(),skills:r.array(Im).optional(),localFolders:r.array(Eb).optional(),launchers:r.array(as).optional(),ui:r.object({slots:r.array(_c).min(1).optional(),launchers:r.array(as).optional()}).optional()}).superRefine((e,t)=>{let n=(e.ui?.slots?.length??0)>0,s=(e.ui?.launchers?.length??0)>0;if((n||s)&&!e.entrypoints.ui&&t.addIssue({code:r.ZodIssueCode.custom,message:"entrypoints.ui is required when ui.slots or ui.launchers are declared",path:["entrypoints","ui"]}),e.minimumHostVersion&&e.minimumPaperclipVersion&&e.minimumHostVersion!==e.minimumPaperclipVersion&&t.addIssue({code:r.ZodIssueCode.custom,message:"minimumHostVersion and minimumPaperclipVersion must match when both are declared",path:["minimumHostVersion"]}),e.tools&&e.tools.length>0&&(e.capabilities.includes("agent.tools.register")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'agent.tools.register' is required when tools are declared",path:["capabilities"]})),e.environmentDrivers&&e.environmentDrivers.length>0&&(e.capabilities.includes("environment.drivers.register")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'environment.drivers.register' is required when environmentDrivers are declared",path:["capabilities"]})),e.agents&&e.agents.length>0&&(e.capabilities.includes("agents.managed")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'agents.managed' is required when managed agents are declared",path:["capabilities"]})),e.projects&&e.projects.length>0&&(e.capabilities.includes("projects.managed")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'projects.managed' is required when managed projects are declared",path:["capabilities"]})),e.routines&&e.routines.length>0&&(e.capabilities.includes("routines.managed")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'routines.managed' is required when managed routines are declared",path:["capabilities"]})),e.skills&&e.skills.length>0&&(e.capabilities.includes("skills.managed")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'skills.managed' is required when managed skills are declared",path:["capabilities"]})),e.localFolders&&e.localFolders.length>0&&(e.capabilities.includes("local.folders")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'local.folders' is required when local folders are declared",path:["capabilities"]})),e.jobs&&e.jobs.length>0&&(e.capabilities.includes("jobs.schedule")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'jobs.schedule' is required when jobs are declared",path:["capabilities"]})),e.webhooks&&e.webhooks.length>0&&(e.capabilities.includes("webhooks.receive")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'webhooks.receive' is required when webhooks are declared",path:["capabilities"]})),e.apiRoutes&&e.apiRoutes.length>0&&(e.capabilities.includes("api.routes.register")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'api.routes.register' is required when apiRoutes are declared",path:["capabilities"]})),e.database){let o=["database.namespace.migrate","database.namespace.read"];for(let u of o)e.capabilities.includes(u)||t.addIssue({code:r.ZodIssueCode.custom,message:`Capability '${u}' is required when database migrations are declared`,path:["capabilities"]});let a=e.database.coreReadTables??[],c=a.filter((u,p)=>a.indexOf(u)!==p);c.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate database coreReadTables: ${[...new Set(c)].join(", ")}`,path:["database","coreReadTables"]})}if(e.jobs){let o=e.jobs.map(c=>c.jobKey),a=o.filter((c,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate job keys: ${[...new Set(a)].join(", ")}`,path:["jobs"]})}if(e.webhooks){let o=e.webhooks.map(c=>c.endpointKey),a=o.filter((c,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate webhook endpoint keys: ${[...new Set(a)].join(", ")}`,path:["webhooks"]})}if(e.apiRoutes){let o=e.apiRoutes.map(p=>p.routeKey),a=o.filter((p,m)=>o.indexOf(p)!==m);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate api route keys: ${[...new Set(a)].join(", ")}`,path:["apiRoutes"]});let c=e.apiRoutes.map(p=>`${p.method} ${p.path}`),u=c.filter((p,m)=>c.indexOf(p)!==m);u.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate api routes: ${[...new Set(u)].join(", ")}`,path:["apiRoutes"]})}if(e.tools){let o=e.tools.map(c=>c.name),a=o.filter((c,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate tool names: ${[...new Set(a)].join(", ")}`,path:["tools"]})}if(e.environmentDrivers){let o=e.environmentDrivers.map(c=>c.driverKey),a=o.filter((c,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate environment driver keys: ${[...new Set(a)].join(", ")}`,path:["environmentDrivers"]})}if(e.localFolders){let o=e.localFolders.map(c=>c.folderKey),a=o.filter((c,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate local folder keys: ${[...new Set(a)].join(", ")}`,path:["localFolders"]})}if(e.agents){let o=e.agents.map(c=>c.agentKey),a=o.filter((c,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate managed agent keys: ${[...new Set(a)].join(", ")}`,path:["agents"]})}if(e.projects){let o=e.projects.map(c=>c.projectKey),a=o.filter((c,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate managed project keys: ${[...new Set(a)].join(", ")}`,path:["projects"]})}if(e.routines){let o=e.routines.map(c=>c.routineKey),a=o.filter((c,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate managed routine keys: ${[...new Set(a)].join(", ")}`,path:["routines"]})}if(e.skills){let o=e.skills.map(c=>c.skillKey),a=o.filter((c,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate managed skill keys: ${[...new Set(a)].join(", ")}`,path:["skills"]})}if(e.ui&&e.ui.slots){let o=e.ui.slots.map(c=>c.id),a=o.filter((c,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate UI slot ids: ${[...new Set(a)].join(", ")}`,path:["ui","slots"]})}let i=[...e.launchers??[],...e.ui?.launchers??[]];if(i.length>0){let o=i.map(c=>c.id),a=o.filter((c,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate launcher ids: ${[...new Set(a)].join(", ")}`,path:e.ui?.launchers?["ui","launchers"]:["launchers"]})}}),km=r.object({packageName:r.string().min(1),version:r.string().min(1).optional(),packagePath:r.string().min(1).optional()}),_m=r.object({configJson:r.record(r.string(),r.unknown())}),Em=r.object({configJson:r.record(r.string(),r.unknown())}),Am=r.object({status:r.enum(Tr),lastError:r.string().nullable().optional()}),wm=r.object({removeData:r.boolean().optional().default(!1)}),xm=r.object({scopeKind:r.enum(sn),scopeId:r.string().min(1).optional(),namespace:r.string().min(1).optional(),stateKey:r.string().min(1)}),Tm=r.object({scopeKind:r.enum(sn),scopeId:r.string().min(1).optional(),namespace:r.string().min(1).optional(),stateKey:r.string().min(1),value:r.unknown()}),Rm=r.object({scopeKind:r.enum(sn).optional(),scopeId:r.string().min(1).optional(),namespace:r.string().min(1).optional()});var F="/api",Rb={health:`${F}/health`,companies:`${F}/companies`,agents:`${F}/agents`,projects:`${F}/projects`,issues:`${F}/issues`,issueTreeControl:`${F}/issues/:issueId/tree-control`,issueTreeHolds:`${F}/issues/:issueId/tree-holds`,goals:`${F}/goals`,approvals:`${F}/approvals`,secrets:`${F}/secrets`,secretProviderConfigs:`${F}/secret-provider-configs`,secretProviderConfigDiscoveryPreview:`${F}/companies/:companyId/secret-provider-configs/discovery/preview`,costs:`${F}/costs`,activity:`${F}/activity`,dashboard:`${F}/dashboard`,sidebarBadges:`${F}/sidebar-badges`,sidebarPreferences:`${F}/sidebar-preferences`,resourceMemberships:`${F}/resource-memberships`,invites:`${F}/invites`,joinRequests:`${F}/join-requests`,members:`${F}/members`,admin:`${F}/admin`};var o0=new Intl.DateTimeFormat("en-US",{year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"2-digit",hour12:!0,timeZone:"UTC",timeZoneName:"short"});var Cm=r.object({version:r.literal(1),updatedAt:r.string(),source:r.enum(["onboard","configure","doctor"])}),Pm=r.object({provider:r.enum(["claude","openai"]),apiKey:r.string().optional()}),Om=r.object({enabled:r.boolean().default(!0),intervalMinutes:r.number().int().min(1).max(10080).default(60),retentionDays:r.number().int().min(1).max(3650).default(7),dir:r.string().default("~/.paperclip/instances/default/data/backups")}),Nm=r.object({mode:r.enum(["embedded-postgres","postgres"]).default("embedded-postgres"),connectionString:r.string().optional(),embeddedPostgresDataDir:r.string().default("~/.paperclip/instances/default/db"),embeddedPostgresPort:r.number().int().min(1).max(65535).default(54329),backup:Om.default({enabled:!0,intervalMinutes:60,retentionDays:7,dir:"~/.paperclip/instances/default/data/backups"})}),Lm=r.object({mode:r.enum(["file","cloud"]),logDir:r.string().default("~/.paperclip/instances/default/logs")}),Mm=r.object({deploymentMode:r.enum(ni).default("local_trusted"),exposure:r.enum(ri).default("private"),bind:r.enum(si).optional(),customBindHost:r.string().optional(),host:r.string().default("127.0.0.1"),port:r.number().int().min(1).max(65535).default(3100),allowedHostnames:r.array(r.string().min(1)).default([]),serveUi:r.boolean().default(!0)}),Dm=r.object({baseUrlMode:r.enum(ii).default("auto"),publicBaseUrl:r.string().url().optional(),disableSignUp:r.boolean().default(!1)}),Um=r.object({baseDir:r.string().default("~/.paperclip/instances/default/data/storage")}),Fm=r.object({bucket:r.string().min(1).default("paperclip"),region:r.string().min(1).default("us-east-1"),endpoint:r.string().optional(),prefix:r.string().default(""),forcePathStyle:r.boolean().default(!1)}),jm=r.object({provider:r.enum(Vi).default("local_disk"),localDisk:Um.default({baseDir:"~/.paperclip/instances/default/data/storage"}),s3:Fm.default({bucket:"paperclip",region:"us-east-1",prefix:"",forcePathStyle:!1})}),qm=r.object({keyFilePath:r.string().default("~/.paperclip/instances/default/secrets/master.key")}),$m=r.object({provider:r.enum(Et).default("local_encrypted"),strictMode:r.boolean().default(!1),localEncrypted:qm.default({keyFilePath:"~/.paperclip/instances/default/secrets/master.key"})}),Bm=r.object({enabled:r.boolean().default(!0)}).default({}),Cb=r.object({$meta:Cm,llm:Pm.optional(),database:Nm,logging:Lm,server:Mm,telemetry:Bm,auth:Dm.default({baseUrlMode:"auto",disableSignUp:!1}),storage:jm.default({provider:"local_disk",localDisk:{baseDir:"~/.paperclip/instances/default/data/storage"},s3:{bucket:"paperclip",region:"us-east-1",prefix:"",forcePathStyle:!1}}),secrets:$m.default({provider:"local_encrypted",strictMode:!1,localEncrypted:{keyFilePath:"~/.paperclip/instances/default/secrets/master.key"}})}).superRefine((e,t)=>{e.server.deploymentMode==="local_trusted"&&e.server.exposure!=="private"&&t.addIssue({code:r.ZodIssueCode.custom,message:"server.exposure must be private when deploymentMode is local_trusted",path:["server","exposure"]});for(let n of go({deploymentMode:e.server.deploymentMode,deploymentExposure:e.server.exposure,bind:e.server.bind,host:e.server.host,customBindHost:e.server.customBindHost}))t.addIssue({code:r.ZodIssueCode.custom,message:n,path:n.includes("customBindHost")?["server","customBindHost"]:["server","bind"]});e.auth.baseUrlMode==="explicit"&&!e.auth.publicBaseUrl&&t.addIssue({code:r.ZodIssueCode.custom,message:"auth.publicBaseUrl is required when auth.baseUrlMode is explicit",path:["auth","publicBaseUrl"]}),e.server.exposure==="public"&&e.auth.baseUrlMode!=="explicit"&&t.addIssue({code:r.ZodIssueCode.custom,message:"auth.baseUrlMode must be explicit when deploymentMode=authenticated and exposure=public",path:["auth","baseUrlMode"]}),e.server.exposure==="public"&&!e.auth.publicBaseUrl&&t.addIssue({code:r.ZodIssueCode.custom,message:"auth.publicBaseUrl is required when deploymentMode=authenticated and exposure=public",path:["auth","publicBaseUrl"]})});import Hb from"node:fs";import{AsyncLocalStorage as Vb}from"node:async_hooks";import Kb from"node:path";import{createInterface as zb}from"node:readline";import{fileURLToPath as Wb}from"node:url";var cs={PARSE_ERROR:-32700,INVALID_REQUEST:-32600,METHOD_NOT_FOUND:-32601,INVALID_PARAMS:-32602,INTERNAL_ERROR:-32603},fe={WORKER_UNAVAILABLE:-32e3,CAPABILITY_DENIED:-32001,WORKER_ERROR:-32002,TIMEOUT:-32003,METHOD_NOT_IMPLEMENTED:-32004,INVOCATION_SCOPE_DENIED:-32005,UNKNOWN:-32099};var Tc=1,Bb=Number.MAX_SAFE_INTEGER-1;function Rc(e,t,n){return Tc>=Bb&&(Tc=1),{jsonrpc:"2.0",id:n??Tc++,method:e,params:t}}function Cc(e,t){return{jsonrpc:"2.0",id:e,result:t}}function dn(e,t,n,s){return{jsonrpc:"2.0",id:e,error:s!==void 0?{code:t,message:n,data:s}:{code:t,message:n}}}function Pc(e,t){return{jsonrpc:"2.0",method:e,params:t}}function Oc(e){if(typeof e!="object"||e===null)return!1;let t=e;return t.jsonrpc==="2.0"&&typeof t.method=="string"&&"id"in t&&t.id!==void 0&&t.id!==null}function Nc(e){if(typeof e!="object"||e===null)return!1;let t=e;return t.jsonrpc==="2.0"&&typeof t.method=="string"&&!("id"in t)}function Lc(e){if(typeof e!="object"||e===null)return!1;let t=e;return t.jsonrpc==="2.0"&&"id"in t&&("result"in t||"error"in t)}function Mc(e){return"result"in e&&!("error"in e&&e.error!==void 0)}function Dc(e){return"error"in e&&e.error!==void 0}var Hm=`
|
|
5
|
-
`;function Uc(e){return JSON.stringify(e)+Hm}function Fc(e){let t=e.trim();if(t.length===0)throw new He("Empty message");let n;try{n=JSON.parse(t)}catch{throw new He(`Invalid JSON: ${t.slice(0,200)}`)}if(typeof n!="object"||n===null)throw new He("Message must be a JSON object");let s=n;if(s.jsonrpc!=="2.0")throw new He(`Invalid or missing jsonrpc version (expected "2.0", got ${JSON.stringify(s.jsonrpc)})`);return n}var He=class extends Error{name="JsonRpcParseError";constructor(t){super(t)}},un=class extends Error{name="JsonRpcCallError";code;data;constructor(t){super(t.message),this.code=t.code,this.data=t.data}};var Gb=3e4;function Vm(e){let t=Kb.resolve(e);try{return Hb.realpathSync.native(t)}catch{return t}}function Yb(e,t){let n=Vm(Wb(t)),s=Vm(e);return n===s}function qc(e,t,n){if(n?.stdin!=null&&n?.stdout!=null)return jc({plugin:e,stdin:n.stdin,stdout:n.stdout});let s=process.argv[1];typeof s=="string"&&Yb(s,t)&&jc({plugin:e})}function jc(e){let{plugin:t}=e,n=e.stdin??process.stdin,s=e.stdout??process.stdout,i=e.rpcTimeoutMs??Gb,o=!0,a=!1,c=null,u={},p=null,m=new Vb,h=[],f=new Map,b=new Map,v=new Map,N=new Map,K=new Map,$=new Map,q=new Map,M=1,ot=Number.MAX_SAFE_INTEGER-1;function ze(l){if(!o)return;let d=Uc(l);s.write(d)}function S(l,d,g){return new Promise((E,x)=>{if(!o){x(new Error(`Cannot call "${l}" \u2014 worker RPC host is not running`));return}M>=ot&&(M=1);let Y=M++,re=g??i,Xl=!1,kn=(ce,Zs)=>{Xl||(Xl=!0,clearTimeout(Ql),q.delete(Y),ce(Zs))},Ql=setTimeout(()=>{kn(x,new un({code:fe.TIMEOUT,message:`Worker\u2192host call "${l}" timed out after ${re}ms`}))},re);q.set(Y,{resolve:ce=>{Mc(ce)?kn(E,ce.result):Dc(ce)?kn(x,new un(ce.error)):kn(x,new Error(`Unexpected response format for "${l}"`))},timer:Ql});try{let ce=m.getStore(),Zs={...Rc(l,d,Y),...ce?{paperclipInvocationId:ce.id}:{}};ze(Zs)}catch(ce){kn(x,ce instanceof Error?ce:new Error(String(ce)))}})}function de(l,d){try{let g=m.getStore();ze({...Pc(l,d),...g?{paperclipInvocationId:g.id}:{}})}catch{}}function Bh(){return{get manifest(){if(!c)throw new Error("Plugin context accessed before initialization");return c},config:{async get(){return S("config.get",{})}},localFolders:{declarations(){if(!c)throw new Error("Plugin context accessed before initialization");return c.localFolders??[]},async configure(l){return S("localFolders.configure",{companyId:l.companyId,folderKey:l.folderKey,path:l.path,access:l.access,requiredDirectories:l.requiredDirectories,requiredFiles:l.requiredFiles})},async status(l,d){return S("localFolders.status",{companyId:l,folderKey:d})},async list(l,d,g={}){return S("localFolders.list",{companyId:l,folderKey:d,relativePath:g.relativePath,recursive:g.recursive,maxEntries:g.maxEntries})},async readText(l,d,g){return S("localFolders.readText",{companyId:l,folderKey:d,relativePath:g})},async writeTextAtomic(l,d,g,E){return S("localFolders.writeTextAtomic",{companyId:l,folderKey:d,relativePath:g,contents:E})},async deleteFile(l,d,g){return S("localFolders.deleteFile",{companyId:l,folderKey:d,relativePath:g})}},events:{on(l,d,g){let E;if(typeof d=="function")E={name:l,fn:d};else{if(!g)throw new Error("Event handler function is required");E={name:l,filter:d,fn:g}}return h.push(E),S("events.subscribe",{eventPattern:l,filter:E.filter??null}).catch(x=>{de("log",{level:"warn",message:`Failed to subscribe to event "${l}" on host: ${x instanceof Error?x.message:String(x)}`})}),()=>{let x=h.indexOf(E);x!==-1&&h.splice(x,1)}},async emit(l,d,g){await S("events.emit",{name:l,companyId:d,payload:g})}},jobs:{register(l,d){f.set(l,d)}},launchers:{register(l){b.set(l.id,l)}},db:{get namespace(){return p??""},async query(l,d){return S("db.query",{sql:l,params:d})},async execute(l,d){return S("db.execute",{sql:l,params:d})}},http:{async fetch(l,d){let g={};if(d){if(d.method&&(g.method=d.method),d.headers)if(d.headers instanceof Headers){let x={};d.headers.forEach((Y,re)=>{x[re]=Y}),g.headers=x}else if(Array.isArray(d.headers)){let x={};for(let[Y,re]of d.headers)x[Y]=re;g.headers=x}else g.headers=d.headers;d.body!==void 0&&d.body!==null&&(g.body=typeof d.body=="string"?d.body:String(d.body))}let E=await S("http.fetch",{url:l,init:Object.keys(g).length>0?g:void 0});return new Response(E.body,{status:E.status,statusText:E.statusText,headers:E.headers})}},secrets:{async resolve(l){return S("secrets.resolve",{secretRef:l})}},activity:{async log(l){await S("activity.log",{companyId:l.companyId,message:l.message,entityType:l.entityType,entityId:l.entityId,metadata:l.metadata})}},state:{async get(l){return S("state.get",{scopeKind:l.scopeKind,scopeId:l.scopeId,namespace:l.namespace,stateKey:l.stateKey})},async set(l,d){await S("state.set",{scopeKind:l.scopeKind,scopeId:l.scopeId,namespace:l.namespace,stateKey:l.stateKey,value:d})},async delete(l){await S("state.delete",{scopeKind:l.scopeKind,scopeId:l.scopeId,namespace:l.namespace,stateKey:l.stateKey})}},entities:{async upsert(l){return S("entities.upsert",{entityType:l.entityType,scopeKind:l.scopeKind,scopeId:l.scopeId,externalId:l.externalId,title:l.title,status:l.status,data:l.data})},async list(l){return S("entities.list",{entityType:l.entityType,scopeKind:l.scopeKind,scopeId:l.scopeId,externalId:l.externalId,limit:l.limit,offset:l.offset})}},projects:{async list(l){return S("projects.list",{companyId:l.companyId,limit:l.limit,offset:l.offset})},async get(l,d){return S("projects.get",{projectId:l,companyId:d})},async listWorkspaces(l,d){return S("projects.listWorkspaces",{projectId:l,companyId:d})},async getPrimaryWorkspace(l,d){return S("projects.getPrimaryWorkspace",{projectId:l,companyId:d})},async getWorkspaceForIssue(l,d){return S("projects.getWorkspaceForIssue",{issueId:l,companyId:d})},managed:{async get(l,d){return S("projects.managed.get",{projectKey:l,companyId:d})},async reconcile(l,d){return S("projects.managed.reconcile",{projectKey:l,companyId:d})},async reset(l,d){return S("projects.managed.reset",{projectKey:l,companyId:d})}}},executionWorkspaces:{async get(l,d){return S("executionWorkspaces.get",{workspaceId:l,companyId:d})}},routines:{managed:{async get(l,d){return S("routines.managed.get",{routineKey:l,companyId:d})},async reconcile(l,d,g){return S("routines.managed.reconcile",{routineKey:l,companyId:d,...g})},async reset(l,d,g){return S("routines.managed.reset",{routineKey:l,companyId:d,...g})},async update(l,d,g){return S("routines.managed.update",{routineKey:l,companyId:d,...g})},async run(l,d,g){return S("routines.managed.run",{routineKey:l,companyId:d,...g})}}},skills:{managed:{async get(l,d){return S("skills.managed.get",{skillKey:l,companyId:d})},async reconcile(l,d){return S("skills.managed.reconcile",{skillKey:l,companyId:d})},async reset(l,d){return S("skills.managed.reset",{skillKey:l,companyId:d})}}},companies:{async list(l){return S("companies.list",{limit:l?.limit,offset:l?.offset})},async get(l){return S("companies.get",{companyId:l})}},issues:{async list(l){return S("issues.list",{companyId:l.companyId,projectId:l.projectId,assigneeAgentId:l.assigneeAgentId,originKind:l.originKind,originKindPrefix:l.originKindPrefix,originId:l.originId,status:l.status,includePluginOperations:l.includePluginOperations,limit:l.limit,offset:l.offset})},async get(l,d){return S("issues.get",{issueId:l,companyId:d})},async create(l){return S("issues.create",{companyId:l.companyId,projectId:l.projectId,goalId:l.goalId,parentId:l.parentId,inheritExecutionWorkspaceFromIssueId:l.inheritExecutionWorkspaceFromIssueId,title:l.title,description:l.description,status:l.status,priority:l.priority,assigneeAgentId:l.assigneeAgentId,assigneeUserId:l.assigneeUserId,requestDepth:l.requestDepth,billingCode:l.billingCode,assigneeAdapterOverrides:l.assigneeAdapterOverrides,surfaceVisibility:l.surfaceVisibility,originKind:l.originKind,originId:l.originId,originRunId:l.originRunId,blockedByIssueIds:l.blockedByIssueIds,labelIds:l.labelIds,executionWorkspaceId:l.executionWorkspaceId,executionWorkspacePreference:l.executionWorkspacePreference,executionWorkspaceSettings:l.executionWorkspaceSettings,actorAgentId:l.actor?.actorAgentId,actorUserId:l.actor?.actorUserId,actorRunId:l.actor?.actorRunId})},async update(l,d,g,E){return S("issues.update",{issueId:l,patch:{...d,actorAgentId:E?.actorAgentId,actorUserId:E?.actorUserId,actorRunId:E?.actorRunId},companyId:g})},async assertCheckoutOwner(l){return S("issues.assertCheckoutOwner",l)},async getSubtree(l,d,g){return S("issues.getSubtree",{issueId:l,companyId:d,includeRoot:g?.includeRoot,includeRelations:g?.includeRelations,includeDocuments:g?.includeDocuments,includeActiveRuns:g?.includeActiveRuns,includeAssignees:g?.includeAssignees})},async requestWakeup(l,d,g){return S("issues.requestWakeup",{issueId:l,companyId:d,reason:g?.reason,contextSource:g?.contextSource,idempotencyKey:g?.idempotencyKey,actorAgentId:g?.actorAgentId,actorUserId:g?.actorUserId,actorRunId:g?.actorRunId})},async requestWakeups(l,d,g){return S("issues.requestWakeups",{issueIds:l,companyId:d,reason:g?.reason,contextSource:g?.contextSource,idempotencyKeyPrefix:g?.idempotencyKeyPrefix,actorAgentId:g?.actorAgentId,actorUserId:g?.actorUserId,actorRunId:g?.actorRunId})},async listComments(l,d){return S("issues.listComments",{issueId:l,companyId:d})},async createComment(l,d,g,E){return S("issues.createComment",{issueId:l,body:d,companyId:g,authorAgentId:E?.authorAgentId})},async createInteraction(l,d,g,E){return S("issues.createInteraction",{issueId:l,companyId:g,interaction:d,authorAgentId:E?.authorAgentId})},async suggestTasks(l,d,g,E){return S("issues.createInteraction",{issueId:l,companyId:g,interaction:{...d,kind:"suggest_tasks"},authorAgentId:E?.authorAgentId})},async askUserQuestions(l,d,g,E){return S("issues.createInteraction",{issueId:l,companyId:g,interaction:{...d,kind:"ask_user_questions"},authorAgentId:E?.authorAgentId})},async requestConfirmation(l,d,g,E){return S("issues.createInteraction",{issueId:l,companyId:g,interaction:{...d,kind:"request_confirmation"},authorAgentId:E?.authorAgentId})},async requestCheckboxConfirmation(l,d,g,E){return S("issues.createInteraction",{issueId:l,companyId:g,interaction:{...d,kind:"request_checkbox_confirmation"},authorAgentId:E?.authorAgentId})},documents:{async list(l,d){return S("issues.documents.list",{issueId:l,companyId:d})},async get(l,d,g){return S("issues.documents.get",{issueId:l,key:d,companyId:g})},async upsert(l){return S("issues.documents.upsert",{issueId:l.issueId,key:l.key,body:l.body,companyId:l.companyId,title:l.title,format:l.format,changeSummary:l.changeSummary})},async delete(l,d,g){return S("issues.documents.delete",{issueId:l,key:d,companyId:g})}},relations:{async get(l,d){return S("issues.relations.get",{issueId:l,companyId:d})},async setBlockedBy(l,d,g,E){return S("issues.relations.setBlockedBy",{issueId:l,companyId:g,blockedByIssueIds:d,actorAgentId:E?.actorAgentId,actorUserId:E?.actorUserId,actorRunId:E?.actorRunId})},async addBlockers(l,d,g,E){return S("issues.relations.addBlockers",{issueId:l,companyId:g,blockerIssueIds:d,actorAgentId:E?.actorAgentId,actorUserId:E?.actorUserId,actorRunId:E?.actorRunId})},async removeBlockers(l,d,g,E){return S("issues.relations.removeBlockers",{issueId:l,companyId:g,blockerIssueIds:d,actorAgentId:E?.actorAgentId,actorUserId:E?.actorUserId,actorRunId:E?.actorRunId})}},summaries:{async getOrchestration(l){return S("issues.summaries.getOrchestration",l)}}},agents:{async list(l){return S("agents.list",{companyId:l.companyId,status:l.status,limit:l.limit,offset:l.offset})},async get(l,d){return S("agents.get",{agentId:l,companyId:d})},async pause(l,d){return S("agents.pause",{agentId:l,companyId:d})},async resume(l,d){return S("agents.resume",{agentId:l,companyId:d})},async invoke(l,d,g){return S("agents.invoke",{agentId:l,companyId:d,prompt:g.prompt,reason:g.reason})},managed:{async get(l,d){return S("agents.managed.get",{agentKey:l,companyId:d})},async reconcile(l,d){return S("agents.managed.reconcile",{agentKey:l,companyId:d})},async reset(l,d){return S("agents.managed.reset",{agentKey:l,companyId:d})}},sessions:{async create(l,d,g){return S("agents.sessions.create",{agentId:l,companyId:d,taskKey:g?.taskKey,reason:g?.reason})},async list(l,d){return S("agents.sessions.list",{agentId:l,companyId:d})},async sendMessage(l,d,g){g.onEvent&&$.set(l,g.onEvent);try{return await S("agents.sessions.sendMessage",{sessionId:l,companyId:d,prompt:g.prompt,reason:g.reason})}catch(E){throw $.delete(l),E}},async close(l,d){$.delete(l),await S("agents.sessions.close",{sessionId:l,companyId:d})}}},goals:{async list(l){return S("goals.list",{companyId:l.companyId,level:l.level,status:l.status,limit:l.limit,offset:l.offset})},async get(l,d){return S("goals.get",{goalId:l,companyId:d})},async create(l){return S("goals.create",{companyId:l.companyId,title:l.title,description:l.description,level:l.level,status:l.status,parentId:l.parentId,ownerAgentId:l.ownerAgentId})},async update(l,d,g){return S("goals.update",{goalId:l,patch:d,companyId:g})}},access:{members:{async list(l){return S("access.members.list",{companyId:l.companyId,includeArchived:l.includeArchived})},async get(l,d){return S("access.members.get",{memberId:l,companyId:d})},async update(l,d,g){return S("access.members.update",{memberId:l,patch:d,companyId:g})}},invites:{async list(l){return S("access.invites.list",{companyId:l.companyId,state:l.state,limit:l.limit,offset:l.offset})},async create(l){return S("access.invites.create",{companyId:l.companyId,allowedJoinTypes:l.allowedJoinTypes,humanRole:l.humanRole,defaultsPayload:l.defaultsPayload,agentMessage:l.agentMessage})},async revoke(l,d){return S("access.invites.revoke",{inviteId:l,companyId:d})}}},authorization:{grants:{async list(l){return S("authorization.grants.list",l)},async set(l){return S("authorization.grants.set",l)}},policies:{async summary(l){return S("authorization.policies.summary",{companyId:l})},async get(l){return S("authorization.policies.get",l)},async update(l){return S("authorization.policies.update",l)},async previewAssignment(l){return S("authorization.policies.previewAssignment",l)},async explainAssignment(l){return S("authorization.policies.explainAssignment",l)}},audit:{async search(l){return S("authorization.audit.search",l)}}},data:{register(l,d){v.set(l,d)}},actions:{register(l,d){N.set(l,d)}},streams:(()=>{let l=new Map;return{open(d,g){l.set(d,g),de("streams.open",{channel:d,companyId:g})},emit(d,g){let E=l.get(d)??"";de("streams.emit",{channel:d,companyId:E,event:g})},close(d){let g=l.get(d)??"";l.delete(d),de("streams.close",{channel:d,companyId:g})}}})(),tools:{register(l,d,g){K.set(l,{declaration:d,fn:g})}},metrics:{async write(l,d,g){await S("metrics.write",{name:l,value:d,tags:g})}},telemetry:{async track(l,d){await S("telemetry.track",{eventName:l,dimensions:d})}},logger:{info(l,d){de("log",{level:"info",message:l,meta:d})},warn(l,d){de("log",{level:"warn",message:l,meta:d})},error(l,d){de("log",{level:"error",message:l,meta:d})},debug(l,d){de("log",{level:"debug",message:l,meta:d})}}}}let Hh=Bh();async function Vh(l){let{id:d,method:g,params:E}=l;try{let x=()=>Kh(g,E),Y=l.paperclipInvocation?await m.run(l.paperclipInvocation,x):await x();ze(Cc(d,Y??null))}catch(x){let Y=x instanceof Error?x.message:String(x),re=typeof x?.code=="number"?x.code:fe.WORKER_ERROR;ze(dn(d,re,Y))}}async function Kh(l,d){switch(l){case"initialize":return zh(d);case"health":return Wh();case"shutdown":return Gh();case"validateConfig":return Yh(d);case"configChanged":return Zh(d);case"onEvent":return Jl(d);case"runJob":return Jh(d);case"handleWebhook":return Xh(d);case"handleApiRequest":return Qh(d);case"getData":return ey(d);case"performAction":return ry(d);case"executeTool":return sy(d);case"environmentValidateConfig":return iy(d);case"environmentProbe":return oy(d);case"environmentAcquireLease":return ay(d);case"environmentResumeLease":return cy(d);case"environmentReleaseLease":return ly(d);case"environmentDestroyLease":return uy(d);case"environmentRealizeWorkspace":return dy(d);case"environmentExecute":return py(d);default:throw Object.assign(new Error(`Unknown method: ${l}`),{code:cs.METHOD_NOT_FOUND})}}async function zh(l){if(a)throw new Error("Worker already initialized");c=l.manifest,u=l.config,p=l.databaseNamespace??null,await t.definition.setup(Hh),a=!0;let d=[];return t.definition.onValidateConfig&&d.push("validateConfig"),t.definition.onConfigChanged&&d.push("configChanged"),t.definition.onHealth&&d.push("health"),t.definition.onShutdown&&d.push("shutdown"),t.definition.onApiRequest&&d.push("handleApiRequest"),t.definition.onEnvironmentValidateConfig&&d.push("environmentValidateConfig"),t.definition.onEnvironmentProbe&&d.push("environmentProbe"),t.definition.onEnvironmentAcquireLease&&d.push("environmentAcquireLease"),t.definition.onEnvironmentResumeLease&&d.push("environmentResumeLease"),t.definition.onEnvironmentReleaseLease&&d.push("environmentReleaseLease"),t.definition.onEnvironmentDestroyLease&&d.push("environmentDestroyLease"),t.definition.onEnvironmentRealizeWorkspace&&d.push("environmentRealizeWorkspace"),t.definition.onEnvironmentExecute&&d.push("environmentExecute"),{ok:!0,supportedMethods:d}}async function Wh(){return t.definition.onHealth?t.definition.onHealth():{status:"ok"}}async function Gh(){t.definition.onShutdown&&await t.definition.onShutdown(),setImmediate(()=>{Ys(),!e.stdin&&!e.stdout&&process.exit(0)})}async function Yh(l){if(!t.definition.onValidateConfig)throw Object.assign(new Error("validateConfig is not implemented by this plugin"),{code:fe.METHOD_NOT_IMPLEMENTED});return t.definition.onValidateConfig(l.config)}async function Zh(l){u=l.config,t.definition.onConfigChanged&&await t.definition.onConfigChanged(l.config)}async function Jl(l){let d=l.event;for(let g of h){let E=g.name===d.eventType,x=g.name==="plugin.*"&&d.eventType.startsWith("plugin."),Y=g.name.endsWith(".*")&&d.eventType.startsWith(g.name.slice(0,-1));if(!(!E&&!x&&!Y)&&!(g.filter&&!my(g.filter,d)))try{await g.fn(d)}catch(re){de("log",{level:"error",message:`Event handler for "${g.name}" failed: ${re instanceof Error?re.message:String(re)}`,meta:{eventType:d.eventType,stack:re instanceof Error?re.stack:void 0}})}}}async function Jh(l){let d=f.get(l.job.jobKey);if(!d)throw new Error(`No handler registered for job "${l.job.jobKey}"`);await d(l.job)}async function Xh(l){if(!t.definition.onWebhook)throw Object.assign(new Error("handleWebhook is not implemented by this plugin"),{code:fe.METHOD_NOT_IMPLEMENTED});await t.definition.onWebhook(l)}async function Qh(l){if(!t.definition.onApiRequest)throw Object.assign(new Error("handleApiRequest is not implemented by this plugin"),{code:fe.METHOD_NOT_IMPLEMENTED});return t.definition.onApiRequest(l)}async function ey(l){let d=v.get(l.key);if(!d)throw new Error(`No data handler registered for key "${l.key}"`);return d({...l.params,...l.companyId===void 0?{}:{companyId:l.companyId},...l.renderEnvironment===void 0?{}:{renderEnvironment:l.renderEnvironment}})}function gr(l){return typeof l=="string"&&l.trim().length>0?l.trim():null}function ty(l){return l==="user"||l==="agent"||l==="system"?l:"system"}function ny(l){let d=l.actorContext&&typeof l.actorContext=="object"?l.actorContext:null,g=Object.freeze({type:ty(d?.type),userId:gr(d?.userId),agentId:gr(d?.agentId),runId:gr(d?.runId),companyId:gr(d?.companyId)});return Object.freeze({actor:g,companyId:g.companyId})}async function ry(l){let d=N.get(l.key);if(!d)throw new Error(`No action handler registered for key "${l.key}"`);return d({...l.params,...l.companyId===void 0?{}:{companyId:l.companyId},...l.renderEnvironment===void 0?{}:{renderEnvironment:l.renderEnvironment}},ny(l))}async function sy(l){let d=K.get(l.toolName);if(!d)throw new Error(`No tool handler registered for "${l.toolName}"`);return d.fn(l.parameters,l.runContext)}function We(l){return Object.assign(new Error(`${l} is not implemented by this plugin`),{code:fe.METHOD_NOT_IMPLEMENTED})}async function iy(l){if(!t.definition.onEnvironmentValidateConfig)throw We("environmentValidateConfig");return t.definition.onEnvironmentValidateConfig(l)}async function oy(l){if(!t.definition.onEnvironmentProbe)throw We("environmentProbe");return t.definition.onEnvironmentProbe(l)}async function ay(l){if(!t.definition.onEnvironmentAcquireLease)throw We("environmentAcquireLease");return t.definition.onEnvironmentAcquireLease(l)}async function cy(l){if(!t.definition.onEnvironmentResumeLease)throw We("environmentResumeLease");return t.definition.onEnvironmentResumeLease(l)}async function ly(l){if(!t.definition.onEnvironmentReleaseLease)throw We("environmentReleaseLease");return t.definition.onEnvironmentReleaseLease(l)}async function uy(l){if(!t.definition.onEnvironmentDestroyLease)throw We("environmentDestroyLease");return t.definition.onEnvironmentDestroyLease(l)}async function dy(l){if(!t.definition.onEnvironmentRealizeWorkspace)throw We("environmentRealizeWorkspace");return t.definition.onEnvironmentRealizeWorkspace(l)}async function py(l){if(!t.definition.onEnvironmentExecute)throw We("environmentExecute");return t.definition.onEnvironmentExecute(l)}function my(l,d){let g=d.payload;return!(l.companyId!==void 0&&(d.companyId??String(g?.companyId??""))!==l.companyId||l.projectId!==void 0&&(d.entityType==="project"?d.entityId:String(g?.projectId??""))!==l.projectId||l.agentId!==void 0&&(d.entityType==="agent"?d.entityId:String(g?.agentId??""))!==l.agentId)}function gy(l){let d=l.id;if(d==null)return;let g=q.get(d);g&&(clearTimeout(g.timer),q.delete(d),g.resolve(l))}function fy(l){if(!l.trim())return;let d;try{d=Fc(l)}catch(g){g instanceof He&&ze(dn(null,cs.PARSE_ERROR,`Parse error: ${g.message}`));return}if(Lc(d))gy(d);else if(Oc(d))Vh(d).catch(g=>{let E=g instanceof Error?g.message:String(g),x=g?.code??fe.WORKER_ERROR;try{ze(dn(d.id,typeof x=="number"?x:fe.WORKER_ERROR,E))}catch{}});else if(Nc(d)){let g=d,E=x=>g.paperclipInvocation?m.run(g.paperclipInvocation,x):x();if(g.method==="agents.sessions.event"&&g.params){let x=g.params,Y=$.get(x.sessionId);Y&&Y(x)}else g.method==="onEvent"&&g.params&&Promise.resolve(E(()=>Jl(g.params))).catch(x=>{de("log",{level:"error",message:`Failed to handle event notification: ${x instanceof Error?x.message:String(x)}`})})}}function Ys(){o=!1,vn&&(vn.close(),vn=null);for(let[l,d]of q)clearTimeout(d.timer),d.resolve(dn(l,fe.WORKER_UNAVAILABLE,"Worker RPC host is shutting down"));q.clear(),$.clear()}let vn=zb({input:n,crlfDelay:1/0});return vn.on("line",fy),vn.on("close",()=>{o&&(Ys(),!e.stdin&&!e.stdout&&process.exit(0))}),!e.stdin&&!e.stdout&&(process.on("uncaughtException",l=>{de("log",{level:"error",message:`Uncaught exception: ${l.message}`,meta:{stack:l.stack}}),setTimeout(()=>process.exit(1),100)}),process.on("unhandledRejection",l=>{let d=l instanceof Error?l.message:String(l),g=l instanceof Error?l.stack:void 0;de("log",{level:"error",message:`Unhandled rejection: ${d}`,meta:{stack:g}})})),{get running(){return o},stop(){Ys()}}}import{performance as Km}from"perf_hooks";import{join as Gc,dirname as Zb}from"path";import{randomBytes as Jb}from"crypto";import{readFile as Xb,mkdir as Qb,open as eI,rename as tI,unlink as nI}from"fs/promises";function rI(e){return cg(e.priority)*100+lg(e.consequence)*10+ug(e.tone)+(e.blocking?1e3:0)+(e.attentionScoreOffset??0)}function Oe(e,t={}){return cg(le(e))*100+lg(e.consequence)*10+ug(e.tone)+(jt(e)?1e3:0)+ag(e)+sI(e,t.now)}function le(e){return e.mode==="status"?e.tone==="critical"||e.consequence==="high"?"high":e.tone==="focused"||e.consequence==="medium"?"normal":"background":"high"}function ag(e){let t=e.metadata?.attention;return t&&typeof t=="object"&&"scoreOffset"in t&&typeof t.scoreOffset=="number"?t.scoreOffset:0}function jt(e){return e.mode!=="status"&&e.responseSpec?.kind!=="none"}function cg(e){switch(e){case"background":return 0;case"normal":return 1;case"high":return 2}}function lg(e){switch(e){case"low":return 0;case"medium":return 1;case"high":return 2}}function ug(e){switch(e){case"ambient":return 0;case"focused":return 1;case"critical":return 2}}function sI(e,t){let n=t??e.timing.updatedAt,s=Date.parse(e.timing.updatedAt),i=Date.parse(n);if(Number.isNaN(s)||Number.isNaN(i)||i<=s)return 0;let o=i-s,a=iI(e);if(o<=a.graceMs)return 0;let c=Math.floor((o-a.graceMs)/a.stepMs)+1;return-Math.min(a.maxPenalty,c*a.penaltyPerStep)}function iI(e){return jt(e)?{graceMs:1800*1e3,stepMs:600*1e3,penaltyPerStep:1,maxPenalty:6}:e.tone==="critical"||e.consequence==="high"?{graceMs:1200*1e3,stepMs:600*1e3,penaltyPerStep:1,maxPenalty:8}:e.tone==="focused"||e.consequence==="medium"?{graceMs:600*1e3,stepMs:600*1e3,penaltyPerStep:2,maxPenalty:12}:{graceMs:300*1e3,stepMs:600*1e3,penaltyPerStep:3,maxPenalty:18}}var oI=250;function aI(e,t={}){let n=[],s=[];for(let a of e)a.now&&(cI(a.now)?s.push(a.now):n.push(a.now)),n.push(...a.next),s.push(...a.ambient);let i=t.now??uI([...n,...s]);if(lI([...n,...s])>=2){let a=[],c=[];for(let u of n)!dg(u)&&Oe(u,{now:i})<200?c.push(u):a.push(u);n=a,s=[...s,...c]}if(n.sort((a,c)=>zm(a,c,i)),s.sort((a,c)=>zm(a,c,i)),t.operatorPresence==="absent")return{now:null,next:n,ambient:s};let o=dI(n,s,t.focusedInteractionId??null,i);if(o){let a=n.some(c=>c.interactionId===o.interactionId);return{now:o,next:a?n.filter(c=>c.interactionId!==o.interactionId):n,ambient:s.filter(c=>c.interactionId!==o.interactionId)}}if(n.length>0){let[a,...c]=n;return{now:a??null,next:c,ambient:s}}if(s.length>0){let[a,...c]=s;return a&&(Oe(a,{now:i})<=0||t.globalAttentionState==="overloaded"&&Oe(a,{now:i})<200)?{now:null,next:[],ambient:s}:{now:a??null,next:[],ambient:c}}return{now:null,next:[],ambient:[]}}function cI(e){return e.mode==="status"||e.tone==="ambient"}function dg(e){return e.mode!=="status"||e.tone==="critical"||e.consequence==="high"}function lI(e){return e.filter(dg).length}function zm(e,t,n){let s=Oe(t,{now:n})-Oe(e,{now:n});return s!==0?s:e.timing.createdAt.localeCompare(t.timing.createdAt)}function uI(e){let t="1970-01-01T00:00:00.000Z";for(let n of e){let s=n.timing.updatedAt;s.localeCompare(t)>0&&(t=s)}return t}function dI(e,t,n,s){if(!n)return null;let i=e.find(a=>a.interactionId===n)??t.find(a=>a.interactionId===n)??null;if(!i)return null;let o=e[0]??t[0]??null;return!o||o.interactionId===i.interactionId?i:pI(i,o,s)?null:i}function pI(e,t,n){return t.tone==="critical"&&e.tone!=="critical"||t.mode!=="status"&&t.consequence==="high"&&e.consequence!=="high"?!0:Oe(t,{now:n})-Oe(e,{now:n})>=oI}function Pt(e){let t=e.counts.presented>=5;return e.counts.presented+e.counts.deferred>=5&&e.counts.deferred>=3&&e.deferred.next+e.deferred.suppressed>=3?"overloaded":t&&e.dismissalRate>=.6&&e.deferred.suppressed>=2?"avoiding":e.counts.contextExpanded>=1&&e.averageResponseLatencyMs!==null&&e.averageResponseLatencyMs>=15e3?"hesitating":t&&e.responseRate>=.6&&e.averageResponseLatencyMs!==null&&e.averageResponseLatencyMs<=1e4?"engaged":"monitoring"}function ls(e){let t=[];return e.counts.contextExpanded>=1&&e.counts.responded>=1&&t.push("context_before_action"),e.counts.deferred>=2&&e.counts.returned>=1&&t.push("defer_then_return"),e.counts.attentionShifted>=3&&t.push("fragmented_attention"),e.counts.viewed>=1&&e.counts.timedOut>=1&&e.counts.responded===0&&t.push("stalling"),t}var mI=class{apply(e,t,n=t){let s=this.scoreOffset(e,t,n),i=this.rationale(e,t,n,s);return{...e,...s!==0?{attentionScoreOffset:s}:{},...i.length>0?{attentionRationale:i}:{}}}scoreOffset(e,t,n){let s=0,i=Pt(t),o=Pt(n),a=ls(t),c=ls(n);if(e.mode==="status"){let u=e.consequence==="high"||e.tone==="critical";t.dismissalRate>=.5&&(s-=15),t.deferred.suppressed>=2&&(s-=10),u&&(s+=20),!u&&i==="overloaded"&&(s-=10),!u&&i==="avoiding"&&(s-=10),!u&&i!=="overloaded"&&o==="overloaded"&&(s-=5),!u&&c.includes("fragmented_attention")&&(s-=5)}return e.blocking&&t.counts.contextExpanded>=2&&(s+=10),e.blocking&&t.responseRate>=.75&&t.averageResponseLatencyMs!==null&&t.averageResponseLatencyMs<=1e4&&(s+=5),e.blocking&&i==="hesitating"&&(s+=5),e.blocking&&a.includes("defer_then_return")&&(s+=5),s}rationale(e,t,n,s){let i=[],o=Pt(t),a=Pt(n),c=ls(t),u=ls(n);return e.mode==="status"&&t.dismissalRate>=.5&&i.push("status updates for this task are often dismissed"),e.mode==="status"&&t.deferred.suppressed>=2&&i.push("similar task updates have repeatedly remained ambient"),e.mode==="status"&&(e.consequence==="high"||e.tone==="critical")&&i.push("high-consequence status should remain more visible"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&o==="overloaded"&&i.push("recent task activity suggests attention is already saturated"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&o==="avoiding"&&i.push("recent behavior suggests low-value updates should stay quiet"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&o!=="overloaded"&&a==="overloaded"&&i.push("overall operator activity suggests attention is already saturated"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&u.includes("fragmented_attention")&&i.push("recent attention has already shifted repeatedly across work"),e.blocking&&t.counts.contextExpanded>=2&&i.push("this task often requires deeper context before action"),e.blocking&&t.responseRate>=.75&&t.averageResponseLatencyMs!==null&&t.averageResponseLatencyMs<=1e4&&i.push("similar blocking interactions usually receive quick responses"),e.blocking&&o==="hesitating"&&i.push("similar blocking interactions appear to require more deliberation"),e.blocking&&c.includes("defer_then_return")&&i.push("similar interactions are often deferred and resumed later"),s===0?[]:i}},gI=["need your input","need your approval","need your review","need your sign off","need your sign-off","should i continue","can you approve","can you review","what should i do"],pg=["no action needed","no approval needed","approval is not needed","approval not needed","sign off not needed","sign-off not needed","no input needed","for awareness only","for your awareness","continuing automatically"],fI=["cannot continue","can't continue","cannot proceed","can't proceed","unable to continue","unable to proceed","blocked on","blocked until","stuck on","requires operator input before continuing","needs operator input before continuing","must be provided before continuing"],hI=["waiting for approval","approval required","awaiting approval","waiting on approval","pending approval","waiting for input","awaiting input","waiting on input","awaiting review","waiting for review"],yI=["production","prod","force push","git push --force","rm -rf","drop table","delete database","delete prod","sudo","chmod 777","kill process","migrate"],SI=["result of running cat -n","result of running sed -n","result of running grep","result of running ls","result of running find","here s the result of running cat -n","here s the result of running sed -n"],bI=["observation","contents of","showing first","showing top","found"],II=["path","type file","content"],vI=["ran successfully and did not produce any output","command ran successfully and did not produce any output","completed successfully and did not produce any output"],kI=["tool-output","dmesg"],_I=["makefile","spdx-license-identifier","patchlevel","sublevel","extraversion"],EI=/(?:^|\s)\/[a-z0-9._-]+(?:\/[a-z0-9._-]+)+(?:\s|$)/,AI=/\bfound\s+\d+\s+match(?:es)?\b|\bshowing\s+(?:first|top)\s+\d+\b|\bmatch(?:es)?\s+in\s+\d+\s+files?\b/,wI=/\b(import|from|export|class|def|function|const|let|var|return)\b/,xI=/\b\d+\s+(?:import|from|export|class|def|function|const|let|var|return)\b/,TI=/\/[a-z0-9._/-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)(?:\b|\/)/,RI=/\b[a-z0-9.-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)\b/,CI=/\b(static|struct|enum|typedef|void|int|char|bool|return)\b/,PI=/\b\d+\s+(?:static|struct|enum|typedef|void|int|char|bool|return)\b/,OI=/\b\d+\s+\[\s*\d+\.\d+\]\s+[a-z0-9_.:-]+/,NI=/\b(?:version|patchlevel|sublevel|extraversion)\b/,LI=["form is valid false","form without instance is valid false","form errors","errorlist","decompress result"],MI=["traceback","exception","permission denied","command not found","segmentation fault"],DI=["still","again","back again","came back","continues","continuing","returned","returning","remains","persisting","retrying","recurred"],UI=["did not repeat","didn t repeat","did not return","didn t return","did not recur","didn t recur","not repeated","not returning","not recurring","no repeat"],FI=["resolved","fixed","unblocked","no longer blocked"],Wm=["not resolved","did not resolve","didn t resolve","not fixed","did not fix","didn t fix","not recovered","did not recover","didn t recover"],jI=["recovered","completed successfully","succeeded after"],Gm=["instead","supersedes","superseded","replaced by","use this plan instead","follow this plan instead"],qI=["worse","worsened","escalating","regression","regressed","spread","broader impact","degraded further","critical now","now failing"],$I=["did not regress","didn t regress","no regression","not worsening","did not worsen","didn t worsen","not escalating","did not escalate","didn t escalate"],BI=["fail","failed","failing","failure","error","broken","blocked","stalled","stall","incident","issue","outage","degraded","regression","retry","rollback"];function Xn(e){return e.toLowerCase().replace(/[^a-z0-9/._-]+/g," ").trim()}function Yc(e){return[...new Set(e)]}function ol(e){return $c(e.toolFamily)??$c(tv(e.metadata))??$c(nv(e.context))}function mg(e){let t=ol(e);if(t)return t;let n=Xn(`${e.title} ${e.summary??""}`);return Ce(n,"wants to read")||Ce(n,"wants to inspect")||Wn(n,"read")||Wn(n,"inspect")?"read":Ce(n,"wants to write")||Wn(n,"write")?"write":Ce(n,"wants to edit")||Wn(n,"edit")?"edit":Ce(n,"shell command")||Ce(n,"wants to run")?"bash":Ce(n,"search the web")?"web":Ce(n,"search files")||Ce(n,"search file contents")?"search":null}function HI(e){return D(e,pg)?!1:D(e,gI)}function VI(e){return D(e,pg)?null:D(e,fI)?"blocking":D(e,hI)?"waiting":null}function gg(e){let t=[],n=D(e,DI)&&!D(e,UI),s=D(e,FI)&&!D(e,Wm),i=D(e,jI)&&!D(e,Wm),o=D(e,qI)&&!D(e,$I),a=D(e,BI)||D(e,Gm)||o;return n&&a&&t.push({kind:"same_issue"},{kind:"repeats"}),(s||i&&a)&&t.push({kind:"same_issue"},{kind:"resolves"}),D(e,Gm)&&t.push({kind:"same_issue"},{kind:"supersedes"}),o&&t.push({kind:"same_issue"},{kind:"escalates"}),sv(t)}function zn(e,t,n){return rv(e)||n==="read"||n==="search"?t:GI(e,yI)?"high":(n==="write"||n==="edit"||n==="bash")&&t==="low"?"medium":t}function KI(e,t){return t!=="edit"&&t!=="read"?!1:D(e,SI)||yg(e)||hg(e)}function zI(e,t){return t==="search"?Ym(e):t==="read"?Ym(e)?!0:!yg(e)&&!hg(e)||XI(e)?!1:QI(e)||ev(e):!1}function WI(e,t){return t!=="bash"?!1:D(e,LI)&&!D(e,MI)}function D(e,t){return t.some(n=>fg(e,n))}function GI(e,t){return t.some(n=>YI(e,n))}function fg(e,t){let n=Xn(t);return n?n.includes(" ")?Ce(e,n):Wn(e,n):!1}function YI(e,t){return fg(e,t)}function hg(e){return al(e)?D(e,bI)||ZI(e)||JI(e):!1}function yg(e){return D(e,II)&&al(e)}function Ym(e){return AI.test(e)||al(e)&&/\bmatch(?:es)?\b/.test(e)}function al(e){return EI.test(e)}function ZI(e){return wI.test(e)}function JI(e){return xI.test(e)}function XI(e){return TI.test(e)||RI.test(e)||CI.test(e)||PI.test(e)}function QI(e){return OI.test(e)||D(e,kI)}function ev(e){return NI.test(e)||D(e,_I)}function tv(e){let t=e?.toolFamily;return typeof t=="string"?t:null}function nv(e){if(!e?.items)return null;for(let t of e.items){let n=t.id.toLowerCase(),s=t.label.toLowerCase();if(n==="toolfamily"||n==="tool_family"||n==="tool"||s==="tool family")return t.value??null}return null}function $c(e){if(!e)return null;let t=e.trim().toLowerCase();return t.length>0?t:null}function Ce(e,t){let n=Xn(t);return n?new RegExp(`(?:^|[^a-z0-9_])${Sg(n)}(?:$|[^a-z0-9_])`).test(e):!1}function Wn(e,t){return new RegExp(`(?:^|[^a-z0-9_])${Sg(t)}(?:$|[^a-z0-9_])`).test(e)}function Sg(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function rv(e){return D(e,vI)}function sv(e){let t=new Set,n=[];for(let s of e){let i=`${s.kind}:${s.target??""}`;t.has(i)||(t.add(i),n.push(s))}return n}function iv(e){switch(e){case"approval":return"approval_request";case"choice":return"question_request";case"form":return"form_request"}}function ov(e){switch(e){case"approval":return"permission_request";case"choice":case"form":return"question_request"}}function av(e,t){switch(e){case"approval":return t==="high"?"A high-risk action needs explicit operator approval.":"Approval is required before work can continue.";case"choice":return"A decision is required before work can continue.";case"form":return"Additional input is required before work can continue."}}function Ot(e,t){if(t?.wasCancelled)return"Work was cancelled and may need review.";switch(e){case"failed":return"Work has failed and should be reviewed.";case"blocked":return"Work is blocked and may require operator attention.";case"running":case"waiting":case"completed":return t?.impliedAsk?"Status text implies the operator may need to respond.":void 0}}function pn(e,t){if(t?.wasCancelled)return["task cancellation is an explicit lifecycle fact"];switch(e){case"failed":return["task status explicitly indicates failure"];case"blocked":return["task status explicitly indicates blocked work"];case"running":case"waiting":case"completed":return t?.impliedAsk?["status wording suggests an implied operator request"]:["task update carries a non-blocking lifecycle status"]}}function Zm(e){switch(e){case"task_started":return["task start is an explicit lifecycle fact"];case"completion":return["task completion is an explicit lifecycle fact"]}}function bg(e){let t=cv(e);return dv(t,e.semanticHints)}function cv(e){switch(e.type){case"task.started":return{intentFrame:"task_started",activityClass:"session_status",consequence:"low",factors:["task.started"],relationHints:[],confidence:"high",reasons:Zm("task_started"),provenance:oe(["intentFrame","activityClass","consequence","confidence"])};case"task.updated":return lv(e);case"human.input.requested":return uv(e);case"task.completed":return{intentFrame:"completion",activityClass:"tool_completion",consequence:"low",factors:["task.completed"],relationHints:[],confidence:"high",reasons:Zm("completion"),provenance:oe(["intentFrame","activityClass","consequence","confidence"])};case"task.cancelled":return{intentFrame:"cancellation",activityClass:"status_update",consequence:"low",...e.reason?{whyNow:Ot("completed",{wasCancelled:!0})??"Work was cancelled and may need review."}:{},factors:["task.cancelled"],relationHints:[],confidence:"high",reasons:pn("completed",{wasCancelled:!0}),provenance:{...oe(["intentFrame","activityClass","consequence","confidence"]),...e.reason?oe(["whyNow"]):{}}};default:return fv(e)}}function lv(e){let t=Xn(`${e.title} ${e.summary??""}`),n=HI(t),s=VI(t),i=gg(t),o=_g(e.title,e.summary,e.toolFamily,e.context),{toolFamily:a,source:c}=kg(o,!0),u=i.length>0?oe(["relationHints"]):{},p=e.status==="failed"&&KI(t,a),m=e.status==="failed"&&zI(t,a),h=e.status==="failed"&&WI(t,a);switch(e.status){case"failed":return p?{intentFrame:"status_update",activityClass:"status_update",...a?{toolFamily:a}:{},consequence:zn(t,m?"low":"high",a),factors:["task.updated","failed","observational_failure"],relationHints:i,confidence:"high",reasons:["task status indicates failure but the update reads like observational output"],provenance:{...oe(["intentFrame","activityClass","consequence","confidence"]),...Gn(c),...u}}:{intentFrame:"failure",activityClass:"tool_failure",...a?{toolFamily:a}:{},consequence:zn(t,m?"low":h?"medium":"high",a),whyNow:Ot("failed")??"Work has failed and should be reviewed.",factors:["task.updated","failed"],relationHints:i,confidence:n?"medium":"high",reasons:h?[...pn("failed",{impliedAsk:n}),"failure content looks like expected diagnostic output from repro work"]:pn("failed",{impliedAsk:n}),provenance:{...oe(["intentFrame","activityClass","consequence","whyNow","confidence"]),...Gn(c),...u}};case"blocked":return{intentFrame:"blocked_work",activityClass:"status_update",...a?{toolFamily:a}:{},consequence:zn(t,"medium",a),whyNow:Ot("blocked")??"Work is blocked and may require operator attention.",factors:["task.updated","blocked"],relationHints:i,confidence:n?"medium":"high",reasons:pn("blocked",{impliedAsk:n}),provenance:{...oe(["intentFrame","activityClass","consequence","whyNow","confidence"]),...Gn(c),...u}};case"running":case"waiting":case"completed":return{intentFrame:s==="blocking"?"blocked_work":"status_update",activityClass:"status_update",...a?{toolFamily:a}:{},consequence:zn(t,"low",a),...(()=>{let f=s==="blocking"?Ot("blocked"):n?Ot(e.status,{impliedAsk:n}):void 0;return f!==void 0?{whyNow:f}:{}})(),factors:["task.updated",e.status,...s==="blocking"?["semantic blocking signal"]:[]],relationHints:i,confidence:s==="blocking"?"medium":n?"low":"high",reasons:s==="blocking"?[...pn("blocked"),"status wording indicates work cannot continue yet"]:pn(e.status,{impliedAsk:n}),provenance:{...oe(["intentFrame","activityClass","consequence","confidence"]),...Gn(c),...s==="blocking"||n?oe(["whyNow"]):{},...u}};default:return hv(e.status)}}function uv(e){let t=_g(e.title,e.summary,e.toolFamily,e.context),{toolFamily:n,source:s}=kg(t,e.request.kind==="approval"),i=Xn(`${e.title} ${e.summary}`),o=gg(i),a=e.riskHint??gv(e.request.kind,n),c=zn(i,a,n),u=o.length>0?oe(["relationHints"]):{};return{intentFrame:iv(e.request.kind),activityClass:ov(e.request.kind),...n?{toolFamily:n}:{},consequence:c,whyNow:av(e.request.kind,c),factors:["human.input.requested",e.request.kind],relationHints:o,confidence:e.riskHint?"high":e.request.kind==="approval"&&n?"medium":"low",reasons:[e.riskHint?"source provided an explicit risk hint":"request kind establishes an explicit operator decision point",...s==="explicit"?["tool family was supplied by the source or context"]:s==="inferred"?["tool family was inferred from approval wording"]:[]],provenance:{...oe(["intentFrame","activityClass","whyNow"]),...Gn(s),...e.riskHint?Ig(["consequence","confidence"]):oe(["consequence","confidence"]),...u}}}function oe(e){return vg(e,"inferred")}function Ig(e){return vg(e,"source")}function vg(e,t){return Object.fromEntries(e.map(n=>[n,t]))}function Gn(e){switch(e){case"explicit":return Ig(["toolFamily"]);case"inferred":return oe(["toolFamily"]);case"none":return{};default:return Sv(e)}}function kg(e,t){let n=ol(e);if(n)return{toolFamily:n,source:"explicit"};if(!t)return{source:"none"};let s=mg(e);return s?{toolFamily:s,source:"inferred"}:{source:"none"}}function dv(e,t){return t?{...e,...mv(t),factors:Yc([...e.factors??[],...t.factors??[]]),relationHints:[...t.relationHints??e.relationHints],reasons:Yc([...e.reasons??[],...t.reasons??[]]),provenance:{...e.provenance??{},...pv(t)}}:e}function pv(e){return{...e.intentFrame!==void 0?{intentFrame:"hint"}:{},...e.activityClass!==void 0?{activityClass:"hint"}:{},...e.toolFamily!==void 0?{toolFamily:"hint"}:{},...e.consequence!==void 0?{consequence:"hint"}:{},...e.whyNow!==void 0?{whyNow:"hint"}:{},...e.relationHints!==void 0?{relationHints:"hint"}:{},...e.confidence!==void 0?{confidence:"hint"}:{},...e.abstained!==void 0?{abstained:"hint"}:{}}}function mv(e){let t={};for(let[n,s]of Object.entries(e))s!==void 0&&n!=="factors"&&n!=="relationHints"&&n!=="reasons"&&(t[n]=s);return t}function gv(e,t){switch(e){case"approval":return t==="read"||t==="search"?"low":"medium";case"choice":case"form":return"medium";default:return yv(e)}}function _g(e,t,n,s){return{title:e,...t!==void 0?{summary:t}:{},...n!==void 0?{toolFamily:n}:{},...s?.items!==void 0?{context:{items:s.items}}:{}}}function fv(e){throw new Error(`Unhandled source event in semantic interpreter: ${JSON.stringify(e)}`)}function hv(e){throw new Error(`Unhandled task status in semantic interpreter: ${e}`)}function yv(e){throw new Error(`Unhandled human input request kind in semantic interpreter: ${e}`)}function Sv(e){throw new Error(`Unhandled tool family provenance source in semantic interpreter: ${e}`)}function cl(e,t){return{ask:bv(e,t),activity:Iv(e,t),...t.consequence!==void 0?{consequence:t.consequence}:{},blocking:vv(e,t),episode:kv(e,t),confidence:t.confidence,source:Ev(e,t)}}function bv(e,t){switch(e.type){case"human.input.requested":return e.request.kind;case"task.started":case"task.completed":case"task.cancelled":return"none";case"task.updated":return t.intentFrame==="approval_request"||t.activityClass==="permission_request"?"approval":t.intentFrame==="form_request"?"form":t.intentFrame==="question_request"||t.activityClass==="question_request"?"choice":"status";default:return _s(e)}}function Iv(e,t){switch(e.type){case"human.input.requested":return e.request.kind==="approval"?"decision_request":"question";case"task.completed":case"task.cancelled":return"task_completion";case"task.updated":return t.intentFrame==="approval_request"||t.activityClass==="permission_request"?"decision_request":t.intentFrame==="question_request"||t.intentFrame==="form_request"||t.activityClass==="question_request"?"question":e.status==="failed"||t.intentFrame==="failure"?"failure":e.status==="completed"?"task_completion":"task_progress";case"task.started":return"background_work";default:return _s(e)}}function vv(e,t){switch(e.type){case"human.input.requested":return"blocking";case"task.started":case"task.completed":case"task.cancelled":return"non_blocking";case"task.updated":return e.status==="blocked"||t.intentFrame==="blocked_work"?"blocking":e.status==="waiting"||t.intentFrame==="approval_request"||t.intentFrame==="question_request"||t.intentFrame==="form_request"?"waiting":"non_blocking";default:return _s(e)}}function kv(e,t){let n=new Set(t.relationHints.map(s=>s.kind));return n.has("resolves")?"resolved":n.has("same_issue")&&_v(t.relationHints)?"resurfaced":n.has("same_issue")?"same_issue":e.type==="human.input.requested"||e.type==="task.started"?"new":"unknown"}function _v(e){return e.some(t=>t.kind==="repeats"||t.kind==="escalates"||t.kind==="supersedes")}function Ev(e,t){let n=Object.values(t.provenance??{});return n.includes("hint")?"hinted":Av(e,t)?e.type==="task.updated"&&t.intentFrame==="status_update"&&t.confidence==="low"&&t.provenance?.confidence==="inferred"?"inferred":"explicit":n.includes("source")?"explicit":n.includes("inferred")?"inferred":"explicit"}function Av(e,t){switch(e.type){case"human.input.requested":return!0;case"task.started":case"task.completed":case"task.cancelled":return!0;case"task.updated":switch(e.status){case"blocked":return t.intentFrame==="blocked_work";case"failed":return t.intentFrame==="failure"||t.intentFrame==="status_update";case"completed":return t.intentFrame==="completion"||t.intentFrame==="status_update";case"running":case"waiting":return t.intentFrame==="status_update";default:return wv(e.status)}default:return _s(e)}}function _s(e){throw new Error(`Unhandled semantic ontology event: ${JSON.stringify(e)}`)}function wv(e){throw new Error(`Unhandled task status in semantic ontology: ${e}`)}function xv(e){if(!e.semantic)return{blockedLikeStatus:!1};let t=cl(e,e.semantic),n=e.semantic.abstained===!0;return{ontology:t,semanticEvidence:{confidence:t.confidence,source:t.source,strength:Tg(t.confidence,t.source,n),abstained:n},...e.semantic.relationHints.length>0?{relationEvidence:{source:Rg(e.semantic),strength:Pv(e.semantic,n)}}:{},blockedLikeStatus:e.type==="task.updated"&&t.blocking==="blocking"&&e.status!=="blocked"}}function Eg(e){return qt(e)?.strength??null}function qt(e){return e.judgmentInput.semanticEvidence??null}function Tv(e){return e.judgmentInput.relationEvidence??null}function Ag(e){return Tv(e)?.strength??null}function wg(e){return e.judgmentInput.ontology??null}function fs(e){return qt(e)?.confidence??null}function hs(e){return qt(e)?.abstained===!0}function Rv(e){return fs(e)==="low"}function Cv(e){let t=Eg(e),n=qt(e)?.source;if(!t||!n)return 0;if(n==="inferred")switch(t){case"weak":return-2;case"qualified":return-1;case"strong":return 0}return(n==="explicit"||n==="hinted")&&t==="strong"?1:0}function ll(e){return e.judgmentInput.blockedLikeStatus}function xg(e,t){return t==="ambient"&&ll(e)?"queue":t}function Tg(e,t,n){if(n)return"weak";switch(e){case"low":return"weak";case"medium":return t==="inferred"?"weak":"qualified";case"high":return t==="inferred"?"qualified":"strong"}}function Rg(e){switch(e.provenance?.relationHints){case"source":return"explicit";case"hint":return"hinted";case"inferred":return"inferred";default:return"inferred"}}function Pv(e,t){switch(Rg(e)){case"explicit":return"strong";case"hinted":return t?"weak":"qualified";case"inferred":return Tg(e.confidence,"inferred",t)}}var Ov=1,tt=Ov,W={ambiguity:{nonBlockingActivationThreshold:180,promotionMargin:20},attentionValue:{memorySufficiency:{toolFamilyPresentations:3,toolFamilyResponses:3,consequenceReviewedCount:4},responseAffinity:{fastLatencyMs:2e3,mediumLatencyMs:5e3,fastBoost:8,mediumBoost:4},consequenceCalibration:{highRejectionRate:.5,mediumRejectionRate:.25,adjustments:{low:{highRate:8,mediumRate:4},medium:{highRate:4,mediumRate:2},high:{highRate:-4,mediumRate:-2}}},contextCost:{highRate:.6,mediumRate:.3,highPenalty:-6,mediumPenalty:-3},deferralAffinity:{highRate:.6,mediumRate:.3,highBoost:6,mediumBoost:3}},queuePlanner:{minimumDwellMs:3e4,streamContinuityMargin:20,conflictingInterruptMargin:10,statusBurstWindowMs:6e4,urgentBacklogWindowMs:9e4,deferredEscalationThreshold:3,returnedEscalationThreshold:2,escalationScoreSlack:10,highContextQueueMargin:8,mediumContextQueueMargin:4,actionableEpisodeEvidenceThreshold:4,actionableEpisodeScoreSlack:15},pressureForecast:{freshness:{demandMs:2e4,residualMs:12e4},visibleInterruptiveBoost:{elevatedCount:1,highCount:2},recentDemand:{elevatedCount:5,highCount:8},responseLatencyMs:{elevated:8e3,high:15e3},deferredPressure:{elevatedSuppressedCount:1,highSuppressedCount:2,elevatedDeferredCount:2,highDeferredCount:4},slowClearance:{presentedCount:4,responseRate:.3},scoreBands:{elevatedLevel:2,highLevel:5,risingRisk:3,highRisk:6}},attentionBudget:{thresholdOffset:{elevated:6,high:12},recentDecisions:{elevatedCount:4,highCount:8},responseLatencyMs:{elevated:8e3,high:15e3},deferredCount:{elevated:2,high:4},interruptiveVisible:{elevated:1,high:2},scoreBands:{elevatedScore:2,highScore:5}},episodeEvidence:{blockingBoost:4,recurringEpisodeBoost:1,persistentEpisodeBoost:1,highSignalBoost:2,multiModeBoost:1,stackingBoost:1,relationRepeatBoost:1,relationEscalationBoost:2,actionableThreshold:4,staleAfterMs:15*6e4}};function Cg(e,t){return(e??[]).some(n=>n.kind===t)}function Nv(e){return(e??[]).find(n=>typeof n.target=="string"&&n.target.length>0)?.target??null}function Es(e=Date.now){return{nowMs:()=>e(),nowIso:()=>gn(e()),parse:Zn,add:Lv,diff:ul}}function Zn(e){let t=Date.parse(e);return Number.isNaN(t)?null:t}function gn(e){return new Date(e).toISOString()}function Lv(e,t){let n=Zn(e);return n===null?null:gn(n+t)}function ul(e,t){let n=Zn(e),s=Zn(t);return n===null||s===null?null:n-s}var ke=W.episodeEvidence,Mv=1440*6e4,Dv=1024,Uv=class{byKey=new Map;byId=new Map;byInteractionId=new Map;nextSequenceByKey=new Map;clock;dormantRetentionMs;maxDormantEpisodes;latestObservedAtMs=null;prunedRecords=0;constructor(e={}){this.clock=e.clock??Es(),this.dormantRetentionMs=e.dormantRetentionMs??Mv,this.maxDormantEpisodes=e.maxDormantEpisodes??Dv}assign(e){let t=this.clock.parse(e.timestamp);t!==null&&(this.latestObservedAtMs===null||t>this.latestObservedAtMs)&&(this.latestObservedAtMs=t);let n=Fv(e),s=this.byInteractionId.get(e.interactionId),i=s?this.byId.get(s):void 0,o=i?null:this.byKey.get(n),a=i??this.resolveAssignableRecord(n,o,e),c=this.evolveRecord(a,e);return this.byKey.set(c.key,c),this.byId.set(c.id,c),this.byInteractionId.set(e.interactionId,c.id),this.pruneDormantRecords(),{...e,episodeId:c.id,episodeKey:c.key,episodeState:c.state,episodeSize:c.size,episodeEvidenceScore:c.evidenceScore,episodeEvidenceReasons:[...c.evidenceReasons]}}resolveInteraction(e){let t=this.byInteractionId.get(e);if(!t)return;let n=this.byId.get(t);if(n){this.byKey.get(n.key)?.id===n.id&&this.byKey.delete(n.key),this.byId.delete(n.id);for(let s of n.interactions)this.byInteractionId.delete(s)}}readFrameEpisode(e){if(!e)return null;let t=e.metadata?.episode;if(!t||typeof t!="object")return null;let n=mn(t,"id"),s=mn(t,"key"),i=Og(t,"state"),o=Jm(t,"size"),a=Jm(t,"evidenceScore")??0,c=Vv(t,"evidenceReasons"),u=mn(t,"lastInteractionId"),p=mn(t,"updatedAt");return!n||!s||!i||o===null||!u||!p?null:{id:n,key:s,state:i,size:o,evidenceScore:a,evidenceReasons:c,lastInteractionId:u,updatedAt:p}}stats(){let e=0,t=0,n=null;for(let s of this.byId.values())this.isActiveRecord(s)?e+=1:t+=1,(n===null||s.updatedAt>n)&&(n=s.updatedAt);return{activeRecords:e,dormantRecords:t,retainedRecords:this.byId.size,boundInteractions:this.byInteractionId.size,dormantRetentionMs:this.dormantRetentionMs,maxDormantRecords:this.maxDormantEpisodes,prunedRecords:this.prunedRecords,latestEpisodeAt:n}}createRecord(e,t){let n=(this.nextSequenceByKey.get(e)??0)+1;this.nextSequenceByKey.set(e,n);let s=Pg(t)?(t.relationHints??[]).map(i=>i.kind):[];return{id:`episode:${e}:${n}`,key:e,state:t.blocking?"actionable":"emerging",size:0,evidenceScore:t.blocking?ke.blockingBoost:0,evidenceReasons:t.blocking?["operator-facing work makes this episode immediately actionable"]:[],lastInteractionId:t.interactionId,updatedAt:t.timestamp,interactions:new Set,modes:new Set([t.mode]),highSignals:t.consequence==="high"||t.tone==="critical"?1:0,blockingSignals:t.blocking?1:0,relationKinds:new Set(s)}}resolveAssignableRecord(e,t,n){if(!t)return this.createRecord(e,n);if(this.shouldRollEpisode(t,n.timestamp)){let s={...t,state:"stale"};return this.byId.set(s.id,s),this.createRecord(e,n)}return t}shouldRollEpisode(e,t){if(Ve(e.state))return!0;let n=this.clock.parse(e.updatedAt),s=this.clock.parse(t);return n===null||s===null?!1:s-n>=ke.staleAfterMs}evolveRecord(e,t){let n=new Set(e.interactions);n.add(t.interactionId);let s=new Set(e.modes);s.add(t.mode);let i=Bv(e.relationKinds,t),o={...e,lastInteractionId:t.interactionId,updatedAt:t.timestamp,size:n.size,interactions:n,modes:s,relationKinds:i,blockingSignals:e.blockingSignals+(t.blocking?1:0),highSignals:e.highSignals+(t.consequence==="high"||t.tone==="critical"?1:0)},a=$v(o,t);return{...o,evidenceScore:a.score,evidenceReasons:a.reasons,state:qv(e.state,t,o,a.score)}}pruneDormantRecords(){let e=[...this.byId.values()].filter(s=>!this.isActiveRecord(s));if(this.latestObservedAtMs!==null)for(let s of e){let i=this.clock.parse(s.updatedAt);i!==null&&this.latestObservedAtMs-i>this.dormantRetentionMs&&this.deleteRecord(s)}let t=[...this.byId.values()].filter(s=>!this.isActiveRecord(s)).sort((s,i)=>s.updatedAt.localeCompare(i.updatedAt));if(t.length<=this.maxDormantEpisodes)return;let n=t.length-this.maxDormantEpisodes;for(let s of t.slice(0,n))this.deleteRecord(s)}isActiveRecord(e){return this.byKey.get(e.key)?.id===e.id&&!Ve(e.state)}deleteRecord(e){this.byKey.get(e.key)?.id===e.id&&this.byKey.delete(e.key),this.byId.delete(e.id);for(let t of e.interactions)this.byInteractionId.get(t)===e.id&&this.byInteractionId.delete(t);this.prunedRecords+=1}};function Fv(e){let t=e.source?.kind??e.source?.id??"unknown",n=jv(e),s=e.blocking?"interruptive":"status";return Hv([t,s,n].join(":"))}function Lt(e){return e?mn(e.metadata?.episode,"id"):null}function Mt(e){return e?Og(e.metadata?.episode,"state"):null}function Ve(e){return e==="stale"||e==="resolved"}function jv(e){let t=Nv(e.relationHints);if(t)return t;let s=(e.context?.items??[]).find(o=>{let a=o.id.toLowerCase(),c=o.label.toLowerCase();return a.includes("file")||a==="path"||a.includes("issue")||a==="command"||c.includes("file")||c.includes("path")||c.includes("issue")||c.includes("command")});if(s?.value)return s.value;let i=e.summary??e.title;return i.length>0?i:e.taskId}function qv(e,t,n,s){return t.blocking||s>=ke.actionableThreshold?"actionable":e==="actionable"?"waiting":n.size>=2?"batched":"emerging"}function $v(e,t){let n=0,s=[];return t.blocking&&(n+=ke.blockingBoost,s.push("operator-facing work makes this episode immediately actionable")),e.size>=2&&(n+=ke.recurringEpisodeBoost,s.push("multiple related interactions have accumulated in this episode")),e.size>=3&&(n+=ke.persistentEpisodeBoost,s.push("the same episode keeps recurring without resolution")),e.highSignals>=1&&(n+=ke.highSignalBoost,s.push("at least one related interaction carried high consequence or critical tone")),e.modes.size>=2&&(n+=ke.multiModeBoost,s.push("related work has spread across multiple interaction modes")),e.highSignals>=1&&e.size>=2&&(n+=ke.stackingBoost,s.push("high-signal evidence is stacking up across the episode")),e.relationKinds.has("repeats")&&(n+=ke.relationRepeatBoost,s.push("semantic relation hints indicate this issue is recurring")),e.relationKinds.has("escalates")&&(n+=ke.relationEscalationBoost,s.push("semantic relation hints indicate this issue is escalating")),{score:n,reasons:s}}function Bv(e,t){let n=new Set(e);if(!Pg(t))return n;for(let s of t.relationHints??[])n.add(s.kind);return n}function Hv(e){return e.toLowerCase().replace(/[^a-z0-9:/._-]+/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,"").slice(0,120)}function Pg(e){let t=Ag(e);return t===null||t!=="weak"}function mn(e,t){if(!e||typeof e!="object"||!(t in e))return null;let n=e[t];return typeof n=="string"&&n.length>0?n:null}function Jm(e,t){if(!e||typeof e!="object"||!(t in e))return null;let n=e[t];return typeof n=="number"?n:null}function Og(e,t){let n=mn(e,t);switch(n){case"emerging":case"actionable":case"batched":case"waiting":case"stale":case"resolved":return n;default:return null}}function Vv(e,t){if(!e||typeof e!="object"||!(t in e))return[];let n=e[t];return Array.isArray(n)?n.filter(s=>typeof s=="string"&&s.length>0):[]}function dl(e={}){let t=e.base,n=e.semantic,s=t?.whyNow??n?.whyNow??e.fallbackWhyNow,i=Yc([...t?.factors??[],...n?.factors??[],...e.extraFactors??[]]);if(!(t===void 0&&s===void 0&&i.length===0))return{...t??{},...s!==void 0?{whyNow:s}:{},...i.length>0?{factors:i}:{}}}var Kv=class{evaluate(e){switch(e.type){case"task.started":return{kind:"candidate",candidate:{taskId:e.taskId,interactionId:`interaction:${e.taskId}:status`,...e.source!==void 0?{source:e.source}:{},mode:"status",tone:"ambient",consequence:"low",title:e.title,responseSpec:{kind:"none"},priority:"background",blocking:!1,timestamp:e.timestamp,...e.summary!==void 0?{summary:e.summary}:{},...Bc(e)}};case"task.updated":return{kind:"candidate",candidate:this.evaluateTaskUpdate(e)};case"human.input.requested":return{kind:"candidate",candidate:this.evaluateHumanInput(e)};case"task.completed":case"task.cancelled":return{kind:"clear",taskId:e.taskId};default:return Gv(e)}}evaluateTaskUpdate(e){let t=this.priorityForStatus(e.status),n=this.toneForStatus(e.status),s=this.consequenceForStatus(e.status),i=this.responseSpecForStatus(e.status);return{taskId:e.taskId,interactionId:`interaction:${e.taskId}:status`,...e.source!==void 0?{source:e.source}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},mode:"status",tone:n,consequence:s,title:e.title,responseSpec:i,priority:t,blocking:!1,timestamp:e.timestamp,...e.summary!==void 0?{summary:e.summary}:{},...e.semantic?.relationHints?.length?{relationHints:e.semantic.relationHints}:{},...Bc(e),...zv(e),...Wv(e)}}evaluateHumanInput(e){let t=this.createActions(e),n=this.createResponseSpec(e,t),s=e.request.kind==="approval"?e.toolFamily:void 0;return{taskId:e.taskId,interactionId:e.interactionId,...e.source!==void 0?{source:e.source}:{},...s!==void 0?{toolFamily:s}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},mode:e.request.kind,tone:e.tone??"focused",consequence:e.consequence??"medium",title:e.title,summary:e.summary,...e.semantic?.relationHints?.length?{relationHints:e.semantic.relationHints}:{},responseSpec:n,priority:this.priorityForHumanInput(e),blocking:!0,timestamp:e.timestamp,...Bc(e),...e.context!==void 0?{context:e.context}:{},...(()=>{let i=dl({base:e.provenance,semantic:e.semantic});return i!==void 0?{provenance:i}:{}})()}}priorityForHumanInput(e){return e.request.kind==="approval"&&e.consequence==="low"?"normal":"high"}createActions(e){switch(e.request.kind){case"approval":return[{id:"approve",label:"Approve",kind:"approve",emphasis:"primary"},{id:"reject",label:"Reject",kind:"reject",emphasis:"danger"}];case"choice":case"form":return[{id:"submit",label:"Continue",kind:"submit",emphasis:"primary"},{id:"cancel",label:"Cancel",kind:"cancel",emphasis:"secondary"}];default:return Xm(e.request)}}createResponseSpec(e,t){switch(e.request.kind){case"approval":return e.request.requireReason!==void 0?{kind:"approval",actions:t,requireReason:e.request.requireReason}:{kind:"approval",actions:t};case"choice":return{kind:"choice",selectionMode:e.request.selectionMode,...e.request.allowTextResponse!==void 0?{allowTextResponse:e.request.allowTextResponse}:{},options:e.request.options,actions:t};case"form":return{kind:"form",fields:e.request.fields,actions:t};default:return Xm(e.request)}}responseSpecForStatus(e){switch(e){case"blocked":case"failed":return{kind:"acknowledge",actions:[{id:"acknowledge",label:"Acknowledge",kind:"acknowledge",emphasis:"primary"}]};case"running":case"waiting":case"completed":return{kind:"none"};default:return us(e)}}priorityForStatus(e){switch(e){case"blocked":return"normal";case"failed":return"high";case"running":case"waiting":case"completed":return"background";default:return us(e)}}toneForStatus(e){switch(e){case"blocked":return"focused";case"failed":return"critical";case"running":case"waiting":case"completed":return"ambient";default:return us(e)}}consequenceForStatus(e){switch(e){case"blocked":return"medium";case"failed":return"high";case"running":case"waiting":case"completed":return"low";default:return us(e)}}};function zv(e){let t=e.context,n=t?.items,s=n!==void 0&&n.length>0;return e.progress===void 0&&t?.stage===void 0&&!s?{}:{context:{...t?.stage!==void 0?{stage:t.stage}:{},...e.progress!==void 0?{progress:e.progress}:{},...s?{items:n}:{}}}}function Wv(e){let t=dl({semantic:e.semantic,fallbackWhyNow:e.status==="blocked"?Ot("blocked"):e.status==="failed"?Ot("failed"):void 0,extraFactors:e.status==="blocked"||e.status==="failed"?[e.status]:[]});return t===void 0?{}:{provenance:t}}function Bc(e){return{judgmentInput:xv(e)}}function Gv(e){throw new Error(`Unhandled ApertureEvent in event evaluator: ${JSON.stringify(e)}`)}function Xm(e){throw new Error(`Unhandled human input request in event evaluator: ${JSON.stringify(e)}`)}function us(e){throw new Error(`Unhandled task status in event evaluator: ${e}`)}var Yv=class{plan(e,t){let n=t?.interactionId===e.interactionId,s=t?.metadata?.attention,i={...s&&typeof s=="object"?s:{},score:rI(e),scoreOffset:e.attentionScoreOffset??0,rationale:e.attentionRationale??[]},o=t?.metadata?.episode,a=e.toolFamily??(typeof t?.metadata?.toolFamily=="string"?t.metadata.toolFamily:void 0),c=e.episodeId?{...o&&typeof o=="object"?o:{},id:e.episodeId,key:e.episodeKey,state:e.episodeState,size:e.episodeSize??1,evidenceScore:e.episodeEvidenceScore??0,evidenceReasons:e.episodeEvidenceReasons??[],lastInteractionId:e.interactionId,updatedAt:e.timestamp}:o,u=t?.metadata?.semantic,p=e.relationHints?.length?{...u&&typeof u=="object"?u:{},relationHints:e.relationHints}:u;return{id:n?t.id:`frame:${e.interactionId}`,taskId:e.taskId,interactionId:e.interactionId,...e.source!==void 0?{source:e.source}:{},version:(t?.version??0)+1,mode:e.mode,tone:e.tone,consequence:e.consequence,title:e.title,responseSpec:e.responseSpec,timing:{createdAt:t?.timing.createdAt??e.timestamp,updatedAt:e.timestamp},metadata:{...t?.metadata??{},attention:i,...a!==void 0?{toolFamily:a}:{},...p?{semantic:p}:{},...c?{episode:c}:{}},...e.summary!==void 0?{summary:e.summary}:{},...e.context!==void 0?{context:e.context}:{},...e.provenance!==void 0?{provenance:e.provenance}:{}}}},Zv=1800*1e3,Qm=256,Jv=1440*6e4,Xv=1024,Qv=class{byTaskId=new Map;clock;taskRetentionMs;maxTrackedTasks;latestObservedAtMs=null;prunedTasks=0;constructor(e={}){this.clock=e.clock??Es(),this.taskRetentionMs=e.taskRetentionMs??Jv,this.maxTrackedTasks=e.maxTrackedTasks??Xv}record(e){let n=[...this.byTaskId.get(e.taskId)??[],e];this.byTaskId.set(e.taskId,n.length>Qm?n.slice(-Qm):n);let s=this.clock.parse(e.timestamp);s!==null&&(this.latestObservedAtMs===null||s>this.latestObservedAtMs)&&(this.latestObservedAtMs=s),this.prune()}list(e){return e!==void 0?[...this.byTaskId.get(e)??[]]:[...this.byTaskId.values()].flat().sort((t,n)=>t.timestamp.localeCompare(n.timestamp))}summarize(e){return Ng(this.list(e),this.clock)}stats(){let e=0,t=null,n=null;for(let s of this.byTaskId.values()){e+=s.length;let i=s[0]?.timestamp??null,o=s[s.length-1]?.timestamp??null;i&&(t===null||i<t)&&(t=i),o&&(n===null||o>n)&&(n=o)}return{taskCount:this.byTaskId.size,signalCount:e,oldestSignalAt:t,latestSignalAt:n,taskRetentionMs:this.taskRetentionMs,maxTrackedTasks:this.maxTrackedTasks,prunedTasks:this.prunedTasks}}prune(){if(this.latestObservedAtMs!==null)for(let[n,s]of this.byTaskId.entries()){let i=s[s.length-1],o=i?this.clock.parse(i.timestamp):null;o!==null&&this.latestObservedAtMs-o>this.taskRetentionMs&&(this.byTaskId.delete(n),this.prunedTasks+=1)}if(this.byTaskId.size<=this.maxTrackedTasks)return;let e=this.byTaskId.size-this.maxTrackedTasks,t=[...this.byTaskId.entries()].map(([n,s])=>({taskId:n,latestAt:s[s.length-1]?.timestamp??""})).sort((n,s)=>n.latestAt.localeCompare(s.latestAt)).slice(0,e);for(let n of t)this.byTaskId.delete(n.taskId),this.prunedTasks+=1}};function Ng(e,t=Es()){let n=ek(e,t),s={presented:0,viewed:0,responded:0,dismissed:0,deferred:0,contextExpanded:0,contextSkipped:0,timedOut:0,returned:0,attentionShifted:0},i={next:0,suppressed:0,manual:0},o=0,a=0,c=0,u=0;for(let p of n)switch(p.kind){case"presented":s.presented+=1;break;case"viewed":s.viewed+=1;break;case"responded":s.responded+=1,p.latencyMs!==void 0&&(o+=p.latencyMs,a+=1);break;case"dismissed":s.dismissed+=1,p.latencyMs!==void 0&&(c+=p.latencyMs,u+=1);break;case"deferred":s.deferred+=1,p.reason!==void 0&&(i[p.reason]+=1);break;case"context_expanded":s.contextExpanded+=1;break;case"context_skipped":s.contextSkipped+=1;break;case"timed_out":s.timedOut+=1;break;case"returned":s.returned+=1;break;case"attention_shifted":s.attentionShifted+=1;break}return{recentSignals:n.length,lifetimeSignals:e.length,counts:s,deferred:i,responseRate:s.presented>0?s.responded/s.presented:0,dismissalRate:s.presented>0?s.dismissed/s.presented:0,averageResponseLatencyMs:a>0?Math.round(o/a):null,averageDismissalLatencyMs:u>0?Math.round(c/u):null,lastSignalAt:e.length>0?e[e.length-1]?.timestamp??null:null}}function ek(e,t){let n=e.slice(-32),s=n[n.length-1]?.timestamp;if(s===void 0)return n;let i=t.parse(s);if(i===null)return n;let o=n.filter(a=>{let c=t.parse(a.timestamp);return c===null?!0:i-c<=Zv});return o.length>0?o:n}function Zc(e){return ol(e)}function tk(e){return mg(e)}function pl(e){return e.mode==="status"?Zc(e):e.mode!=="approval"||e.activityClass!==void 0&&e.activityClass!=="permission_request"?null:tk(e)}function ys(e){return e?e.kind??e.id:null}function Lg(e,t,n){let s=rk(e,t),i=sk(e,t),o=ik(e,t);return{...e,version:tt,updatedAt:n,sessionCount:e.sessionCount+1,...Object.keys(s).length>0?{toolFamilies:s}:{},...Object.keys(i).length>0?{sourceTrust:i}:{},...Object.keys(o).length>0?{consequenceProfiles:o}:{}}}function Qn(e){let t={consequence:e.consequence},n=Mg(e);n&&(t.toolFamily=n);let s=ys(e.source);s&&(t.sourceKey=s);let i=e.metadata?.episode;return i&&typeof i=="object"&&!Array.isArray(i)&&(t.episode=i),t}function nk(e){let t={consequence:e.consequence},n=Mg(e);n&&(t.toolFamily=n);let s=ys(e.source);return s&&(t.sourceKey=s),t}function Mg(e){return pl(e)}function rk(e,t){let n={...e.toolFamilies??{}},s=new Map,i=new Map;for(let o of t){let a=Ss(o.metadata,"toolFamily");if(!a)continue;let c=`${a}::${o.interactionId}`,u=i.get(c)??{toolFamily:a,presented:!1,responded:!1,dismissed:!1,contextExpanded:!1,deferred:!1,returned:!1};switch(o.kind){case"presented":u.presented=!0;break;case"responded":u.responded=!0,u.dismissed=!1,o.latencyMs!==void 0&&(u.responseLatencyMs=o.latencyMs);break;case"dismissed":u.responded||(u.dismissed=!0,o.latencyMs!==void 0&&(u.dismissalLatencyMs=o.latencyMs));break;case"context_expanded":u.contextExpanded=!0;break;case"deferred":u.deferred=!0;break;case"returned":u.returned=!0;break}i.set(c,u)}for(let o of i.values()){let a=s.get(o.toolFamily)??{presentations:0,responses:0,dismissals:0,responseLatencyTotal:0,responseLatencyCount:0,dismissalLatencyTotal:0,dismissalLatencyCount:0,contextExpanded:0,deferrals:0,returns:0};(o.presented||o.responded||o.dismissed)&&(a.presentations+=1),o.responded?(a.responses+=1,o.responseLatencyMs!==void 0&&(a.responseLatencyTotal+=o.responseLatencyMs,a.responseLatencyCount+=1)):o.dismissed&&(a.dismissals+=1,o.dismissalLatencyMs!==void 0&&(a.dismissalLatencyTotal+=o.dismissalLatencyMs,a.dismissalLatencyCount+=1)),o.contextExpanded&&(a.contextExpanded+=1),o.deferred&&(a.deferrals+=1,o.returned&&(a.returns+=1)),s.set(o.toolFamily,a)}for(let[o,a]of s.entries()){let c=n[o]??{presentations:0,responses:0,dismissals:0},u=c.presentations+a.presentations,p=c.responses+a.responses,m=c.dismissals+a.dismissals,h=a.responseLatencyCount>0?a.responseLatencyTotal/a.responseLatencyCount:void 0,f=a.dismissalLatencyCount>0?a.dismissalLatencyTotal/a.dismissalLatencyCount:void 0,b=c.contextExpansionRate!==void 0?c.contextExpansionRate*c.presentations:0,v=a.contextExpanded;n[o]={presentations:u,responses:p,dismissals:m,...h!==void 0?{avgResponseLatencyMs:eg(c.avgResponseLatencyMs,c.responses,h,a.responseLatencyCount)}:c.avgResponseLatencyMs!==void 0?{avgResponseLatencyMs:c.avgResponseLatencyMs}:{},...f!==void 0?{avgDismissalLatencyMs:eg(c.avgDismissalLatencyMs,c.dismissals,f,a.dismissalLatencyCount)}:c.avgDismissalLatencyMs!==void 0?{avgDismissalLatencyMs:c.avgDismissalLatencyMs}:{},...u>0?{contextExpansionRate:Jc((b+v)/u)}:c.contextExpansionRate!==void 0?{contextExpansionRate:c.contextExpansionRate}:{},...a.deferrals>0?{returnAfterDeferralRate:Jc(a.returns/a.deferrals)}:c.returnAfterDeferralRate!==void 0?{returnAfterDeferralRate:c.returnAfterDeferralRate}:{}}}return n}function sk(e,t){let n=structuredClone(e.sourceTrust??{}),s=new Map;for(let i of t){let o=Ss(i.metadata,"sourceKey"),a=Ss(i.metadata,"consequence");if(!o||a!=="low"&&a!=="medium"&&a!=="high")continue;let c=`${o}::${a}::${i.interactionId}`,u=s.get(c)??{source:o,consequence:a,responded:!1,rejected:!1,dismissed:!1};i.kind==="responded"?(u.responded=!0,u.dismissed=!1,u.rejected=i.responseKind==="rejected"):i.kind==="dismissed"&&(u.responded||(u.dismissed=!0)),s.set(c,u)}for(let i of s.values()){let o=n[i.source]?.[i.consequence]??{confirmations:0,disagreements:0,trustAdjustment:0};i.responded?i.rejected?o.disagreements+=1:o.confirmations+=1:i.dismissed&&(o.disagreements+=1);let a=o.confirmations+o.disagreements;o.trustAdjustment=a>0?Math.round((o.confirmations-o.disagreements)/a*10*Math.min(a/5,1)):0,n[i.source]={...n[i.source]??{},[i.consequence]:o}}return n}function ik(e,t){let n={...e.consequenceProfiles??{}},s=new Map;for(let o of t){let a=Ss(o.metadata,"consequence");a!=="low"&&a!=="medium"&&a!=="high"||o.kind==="responded"&&s.set(`${a}::${o.interactionId}`,{consequence:a,rejected:o.responseKind==="rejected"})}let i=new Map;for(let o of s.values()){let a=i.get(o.consequence)??{reviewed:0,rejected:0};a.reviewed+=1,o.rejected&&(a.rejected+=1),i.set(o.consequence,a)}for(let[o,a]of i.entries()){let c=n[o]??{rejectionRate:0,reviewedCount:0},u=(c.reviewedCount??0)+a.reviewed;n[o]={rejectionRate:u>0?Jc(((c.reviewedCount??0)*c.rejectionRate+a.rejected)/u):0,reviewedCount:u}}return n}function Ss(e,t){let n=e?.[t];return typeof n=="string"&&n.length>0?n:null}function Jc(e){return Math.round(e*1e3)/1e3}function eg(e,t,n,s){let i=t+s;if(i<=0)return Math.round(n);let o=(e??0)*t,a=n*s;return Math.round((o+a)/i)}function ok(e,t,n,s="present",i){if(s==="absent")return Dg();let o=W.attentionBudget,a=ak(e,i),c=a?(e?.counts.responded??0)+(e?.counts.dismissed??0)+(e?.counts.deferred??0)+(e?.counts.contextExpanded??0)+(e?.counts.contextSkipped??0):0,u=a?e?.counts.deferred??0:0,p=a?e?.averageResponseLatencyMs??null:null,m=t?.metrics.interruptiveVisible??0,h=n??"monitoring",f=t?.level??"steady",b=[],v=0;return f==="high"?(v+=2,b.push("current pressure is already high")):f==="elevated"&&(v+=1,b.push("current pressure is elevated")),h==="overloaded"?(v+=2,b.push("recent operator behavior indicates overload")):(h==="hesitating"||h==="avoiding")&&(v+=1,b.push("recent operator behavior suggests attention is already strained")),c>=o.recentDecisions.highCount?(v+=2,b.push("recent decision volume is high")):c>=o.recentDecisions.elevatedCount&&(v+=1,b.push("recent decision volume is climbing")),p!==null&&p>=o.responseLatencyMs.high?(v+=2,b.push("recent decision latency is slow")):p!==null&&p>=o.responseLatencyMs.elevated&&(v+=1,b.push("recent decision latency is rising")),u>=o.deferredCount.high?(v+=2,b.push("recent deferrals are accumulating")):u>=o.deferredCount.elevated&&(v+=1,b.push("recent deferrals suggest growing burden")),m>=o.interruptiveVisible.high?(v+=2,b.push("multiple interruptive frames are already visible")):m>=o.interruptiveVisible.elevated&&(v+=1,b.push("interruptive work is already visible")),{level:v>=o.scoreBands.highScore?"high":v>=o.scoreBands.elevatedScore?"elevated":"light",thresholdOffset:v>=o.scoreBands.highScore?o.thresholdOffset.high:v>=o.scoreBands.elevatedScore?o.thresholdOffset.elevated:0,metrics:{recentDecisions:c,deferredCount:u,averageResponseLatencyMs:p,interruptiveVisible:m,pressureLevel:f,attentionState:h},reasons:b}}function ak(e,t){let n=e?.lastSignalAt;if(!n||t===void 0)return!0;let s=Date.parse(n),i=ck(t);return Number.isNaN(s)||i===null?!0:i-s<=W.pressureForecast.freshness.residualMs}function ck(e){if(typeof e=="number")return Number.isFinite(e)?e:null;if(e instanceof Date){let n=e.getTime();return Number.isFinite(n)?n:null}let t=Date.parse(e);return Number.isNaN(t)?null:t}function Dg(){return{level:"light",thresholdOffset:0,metrics:{recentDecisions:0,deferredCount:0,averageResponseLatencyMs:null,interruptiveVisible:0,pressureLevel:"steady",attentionState:"monitoring"},reasons:[]}}function lk(e,t,n){let s=mk(t),i=[],o=0,a=W.pressureForecast,c=uk(e,n),u=c===null||c<=a.freshness.demandMs,p=c===null||c<=a.freshness.residualMs,m=u?(e?.counts.presented??0)+(e?.counts.deferred??0)+(e?.counts.returned??0):0,h=p?e?.averageResponseLatencyMs??null:null,f=p?e?.counts.deferred??0:0,b=p?e?.deferred.suppressed??0:0,v=p?e?.responseRate??0:0,N=p?e?.counts.presented??0:0;return s>=a.visibleInterruptiveBoost.highCount?(o+=2,i.push("multiple interruptive frames are already visible")):s>=a.visibleInterruptiveBoost.elevatedCount&&(o+=1,i.push("interruptive work is already visible")),m>=a.recentDemand.highCount?(o+=2,i.push("incoming demand is arriving quickly")):m>=a.recentDemand.elevatedCount&&(o+=1,i.push("incoming demand is climbing")),h!==null&&h>=a.responseLatencyMs.high?(o+=2,i.push("recent response latency is slow")):h!==null&&h>=a.responseLatencyMs.elevated&&(o+=1,i.push("recent response latency is rising")),b>=a.deferredPressure.highSuppressedCount||f>=a.deferredPressure.highDeferredCount?(o+=2,i.push("recent deferrals suggest operator capacity is tightening")):(b>=a.deferredPressure.elevatedSuppressedCount||f>=a.deferredPressure.elevatedDeferredCount)&&(o+=1,i.push("recent deferrals suggest operator capacity is tightening")),N>=a.slowClearance.presentedCount&&v<=a.slowClearance.responseRate&&(o+=1,i.push("presented work is being cleared slowly")),{level:o>=a.scoreBands.highLevel?"high":o>=a.scoreBands.elevatedLevel?"elevated":"steady",overloadRisk:o>=a.scoreBands.highRisk?"high":o>=a.scoreBands.risingRisk?"rising":"low",score:o,metrics:{recentDemand:m,interruptiveVisible:s,averageResponseLatencyMs:h,deferredCount:f,suppressedCount:b},reasons:i}}function uk(e,t){let n=e?.lastSignalAt;if(!n||t===void 0)return null;let s=Date.parse(n),i=dk(t);return Number.isNaN(s)||i===null?null:Math.max(0,i-s)}function dk(e){if(typeof e=="number")return Number.isFinite(e)?e:null;if(e instanceof Date){let n=e.getTime();return Number.isFinite(n)?n:null}let t=Date.parse(e);return Number.isNaN(t)?null:t}function pk(){return{level:"steady",overloadRisk:"low",score:0,metrics:{recentDemand:0,interruptiveVisible:0,averageResponseLatencyMs:null,deferredCount:0,suppressedCount:0},reasons:[]}}function mk(e){return e?[e.now,...e.next].filter(t=>t!==null).filter(gk).length:0}function gk(e){return e.mode!=="status"||e.consequence==="high"||e.tone==="critical"}var bs={topology:{supportsAmbient:!0},responses:{supportsSingleChoice:!0,supportsMultipleChoice:!1,supportsForm:!0,supportsTextResponse:!1}};function tg(e={}){let t=e.taskSignalSummary??Xc();return{currentFrame:e.currentFrame??null,currentTaskView:e.currentTaskView??hk(),currentEpisode:e.currentEpisode??null,attentionView:e.attentionView??yk(),taskSignalSummary:t,continuitySignalSummary:e.continuitySignalSummary??t,globalSignalSummary:e.globalSignalSummary??Xc(),taskAttentionState:e.taskAttentionState??"monitoring",globalAttentionState:e.globalAttentionState??"monitoring",pressureForecast:e.pressureForecast??pk(),attentionBurden:e.attentionBurden??Dg(),surfaceCapabilities:e.surfaceCapabilities?{topology:{...e.surfaceCapabilities.topology},responses:{...e.surfaceCapabilities.responses}}:{topology:{...bs.topology},responses:{...bs.responses}},operatorPresence:e.operatorPresence??"present"}}function As(e={}){return{...e.currentFrame!==void 0?{currentFrame:e.currentFrame}:{},...e.currentTaskView!==void 0?{currentTaskView:e.currentTaskView}:{},...e.currentEpisode!==void 0?{currentEpisode:e.currentEpisode}:{},...e.attentionView!==void 0?{attentionView:e.attentionView}:{},...e.taskSignalSummary!==void 0?{taskSignalSummary:e.taskSignalSummary}:{},...e.continuitySignalSummary!==void 0?{continuitySignalSummary:e.continuitySignalSummary}:{},...e.globalSignalSummary!==void 0?{globalSignalSummary:e.globalSignalSummary}:{},...e.taskAttentionState!==void 0?{taskAttentionState:e.taskAttentionState}:{},...e.globalAttentionState!==void 0?{globalAttentionState:e.globalAttentionState}:{},...e.pressureForecast!==void 0?{pressureForecast:e.pressureForecast}:{},...e.attentionBurden!==void 0?{attentionBurden:e.attentionBurden}:{},...e.surfaceCapabilities!==void 0?{surfaceCapabilities:e.surfaceCapabilities}:{},...e.operatorPresence!==void 0?{operatorPresence:e.operatorPresence}:{}}}function ml(e,t={},n){let s=As(t);if(fk(s))return s.currentFrame===e?s:tg({...s,currentFrame:e});let i=s.globalSignalSummary??Xc(),o=s.pressureForecast??lk(i,s.attentionView,n),a=s.operatorPresence??"present";return tg({...s,currentFrame:e,globalSignalSummary:i,pressureForecast:o,attentionBurden:s.attentionBurden??ok(i,o,s.globalAttentionState,a,n),operatorPresence:a})}function fk(e){return"currentFrame"in e&&"currentTaskView"in e&&"currentEpisode"in e&&"attentionView"in e&&"taskSignalSummary"in e&&"continuitySignalSummary"in e&&"globalSignalSummary"in e&&"taskAttentionState"in e&&"globalAttentionState"in e&&"pressureForecast"in e&&"attentionBurden"in e&&"surfaceCapabilities"in e&&"operatorPresence"in e&&e.currentFrame!==void 0&&e.currentTaskView!==void 0&&e.currentEpisode!==void 0&&e.attentionView!==void 0&&e.taskSignalSummary!==void 0&&e.continuitySignalSummary!==void 0&&e.globalSignalSummary!==void 0&&e.taskAttentionState!==void 0&&e.globalAttentionState!==void 0&&e.pressureForecast!==void 0&&e.attentionBurden!==void 0&&e.surfaceCapabilities!==void 0&&e.operatorPresence!==void 0}function hk(){return{now:null,next:[],ambient:[]}}function yk(){return{now:null,next:[],ambient:[]}}function Xc(){return{recentSignals:0,lifetimeSignals:0,counts:{presented:0,viewed:0,responded:0,dismissed:0,deferred:0,contextExpanded:0,contextSkipped:0,timedOut:0,returned:0,attentionShifted:0},deferred:{next:0,suppressed:0,manual:0},responseRate:0,dismissalRate:0,averageResponseLatencyMs:null,averageDismissalLatencyMs:null,lastSignalAt:null}}function P(e,t=[]){return{rule:e,kind:"noop",rationale:t}}function ye(e,t,n,s,i){return{rule:e,kind:"override",decision:t,currentPriority:n,currentScore:s,rationale:i}}var Sk=e=>{let{candidate:t,context:n,evidence:s}=e,i=s.attentionView.now??s.currentFrame;if(!i)return P("deferral_escalation");let o=i===s.currentFrame?n.currentScore:Oe(i,{now:t.timestamp});return o===null||t.blocking||t.priority==="background"||jt(i)||!Jn(s.continuitySignalSummary)||n.candidateScore<o-W.queuePlanner.escalationScoreSlack?P("deferral_escalation"):ye("deferral_escalation",{kind:"activate",candidate:t},le(i),o,["repeated deferral or resurfacing makes this task more deserving of current focus"])};function Jn(e){return e.counts.deferred>=W.queuePlanner.deferredEscalationThreshold||e.counts.returned>=W.queuePlanner.returnedEscalationThreshold}var gl=W.queuePlanner;function bk(e,t,n,s){return n.currentFrame?_k(n.currentFrame,e,t,n,s):kk(e,t,n)}function Dt(e,t,n){return{kind:fl(e,t,n),candidate:e}}function Ik(e,t,n,s){return jg(e,n)?{kind:"queue",candidate:e}:Dt(e,t,s)}function Qc(e,t,n,s){return(n.components.deferralAffinity>0||n.components.consequenceCalibration>0)&&t.minimumLane!=="now"?{kind:"queue",candidate:e}:Dt(e,t,s)}function fl(e,t,n=bs){return xg(e,t.minimumLane==="ambient"?"ambient":"queue")==="ambient"&&vk(e,n)?"ambient":"queue"}function vk(e,t){if(!t.topology.supportsAmbient)return!1;switch(e.responseSpec.kind){case"approval":return!0;case"choice":return(e.responseSpec.selectionMode==="multiple"?t.responses.supportsMultipleChoice:t.responses.supportsSingleChoice)&&(!e.responseSpec.allowTextResponse||t.responses.supportsTextResponse);case"form":return t.responses.supportsForm;case"none":return!0}return!1}function kk(e,t,n){let s=[];return Fg(e)?n.pressureForecast.overloadRisk==="high"?(s.push("the episode has become actionable, but predicted overload keeps it in next instead of surfacing it now"),B({kind:"queue",candidate:e},s)):t.policyVerdict.mayInterrupt?(s.push("the episode has accumulated enough evidence to deserve interruptive attention"),B({kind:"activate",candidate:e},s)):(s.push("the episode has become actionable, so it stays visible even though policy still prevents interrupting"),B({kind:"queue",candidate:e},s)):Ug(e,t.policyVerdict,n.pressureForecast)?(s.push("predicted overload keeps lower-value work peripheral before the queue spikes"),B(Qc(e,t.policyVerdict,t.utility,n.surfaceCapabilities),s)):!t.policyVerdict.mayInterrupt&&t.policyVerdict.minimumLane==="ambient"?ll(e)?(s.push("status routing stays non-blocking, but blocked-like semantics keep it visible in next"),B({kind:"queue",candidate:e},s)):(s.push("policy keeps this interaction ambient until stronger context arrives"),B(Dt(e,t.policyVerdict,n.surfaceCapabilities),s)):(s.push("nothing is in now for this task"),B({kind:"activate",candidate:e},s))}function _k(e,t,n,s,i){let o=[],a=Fg(t),c=jt(e),u=le(e),p=n.currentScore;if(a)return c||s.pressureForecast.overloadRisk==="high"?(o.push(c?"the episode has become actionable, but current blocking work keeps it in next":"the episode has become actionable, but predicted overload keeps it in next"),B({kind:"queue",candidate:t},o,u,p)):p!==null&&n.candidateScore<p-gl.actionableEpisodeScoreSlack?(o.push("actionable episode evidence keeps this work visible even though the current frame is still stronger"),B({kind:"queue",candidate:t},o,u,p)):n.policyVerdict.mayInterrupt?(o.push("the episode has accumulated enough evidence to compete for current focus"),B({kind:"activate",candidate:t},o,u,p)):(o.push("the episode has become actionable, so it stays in next even though policy still prevents interrupting"),B({kind:"queue",candidate:t},o,u,p));if(c&&!t.blocking)return Jn(s.continuitySignalSummary)?(o.push("blocking work keeps resurfacing backlog in next so it stays visible until focus can return"),B({kind:"queue",candidate:t},o,u,p)):(o.push("blocking work keeps non-blocking updates in the periphery"),B(Dt(t,n.policyVerdict,s.surfaceCapabilities),o));if(!c&&t.blocking)return o.push("blocking work interrupts non-blocking activity"),B({kind:"activate",candidate:t},o);if(Ug(t,n.policyVerdict,s.pressureForecast))return o.push("predicted overload keeps lower-value work peripheral before the queue spikes"),B(Qc(t,n.policyVerdict,n.utility,s.surfaceCapabilities),o,u,p);if(Ek(t,s.attentionView,t.timestamp,i))return Jn(s.continuitySignalSummary)?(o.push("existing urgent backlog keeps resurfacing work in next so it remains visible"),B({kind:"queue",candidate:t},o,u,p)):(o.push(n.utility.components.deferralAffinity>0?"existing urgent backlog defers this work, but memory keeps it in next because it usually returns after deferral":"existing urgent backlog keeps lower-value status work in next"),B(Qc(t,n.policyVerdict,n.utility,s.surfaceCapabilities),o,u,p));if(p!==null&&n.candidateScore<p)return o.push("current work still outranks the new candidate"),B(Dt(t,n.policyVerdict,s.surfaceCapabilities),o,u,p);if(p!==null&&n.candidateScore===p){let m=ul(t.timestamp,e.timing.updatedAt);if(m!==null&&m<0)return o.push("older work yields when scores tie"),B(Dt(t,n.policyVerdict,s.surfaceCapabilities),o,u,p)}return o.push("new work outranks the current frame"),B({kind:"activate",candidate:t},o,u,p)}function B(e,t,n=null,s=null){return{decision:e,currentPriority:n,currentScore:s,reasons:t}}function Ek(e,t,n,s){return s?.deferLowValueDuringPressure===!1||e.blocking||e.consequence==="high"||e.tone==="critical"||!t?!1:jg(e,t)?!0:[t.now,...t.next].filter(o=>o!==null).filter(o=>o.interactionId===e.interactionId?!1:jt(o)||o.consequence==="high"||o.tone==="critical").filter(o=>{let a=ul(n,o.timing.updatedAt);return a===null?!0:a<=gl.urgentBacklogWindowMs}).length>=2}function Ug(e,t,n){return n.overloadRisk==="low"||e.blocking||t.requiresOperatorResponse||t.minimumLane==="now"||e.consequence==="high"||e.tone==="critical"?!1:n.overloadRisk==="high"?!0:e.mode==="status"||e.priority==="background"||e.consequence==="low"}function Fg(e){return!e.blocking&&e.episodeState==="actionable"&&(e.episodeEvidenceScore??0)>=gl.actionableEpisodeEvidenceThreshold}function jg(e,t){return e.episodeId!==void 0&&[t?.now,...t?.next??[]].filter(n=>n!==null).some(n=>n.interactionId!==e.interactionId&&Lt(n)===e.episodeId&&!Ve(Mt(n)))}var Ak=e=>{let t=e.evidence.currentFrame,{candidate:n,context:s,evidence:i,helpers:o,plannerDefaults:a,routed:c}=e;if(!t||c.decision.kind!=="activate"||a?.batchStatusBursts===!1||t.taskId!==n.taskId||t.mode!=="status"||n.mode!=="status"||n.blocking||n.consequence==="high"||n.tone==="critical")return P("burst_dampening");let u=Date.parse(t.timing.updatedAt),p=Date.parse(n.timestamp);return Number.isNaN(u)||Number.isNaN(p)||p-u>W.queuePlanner.statusBurstWindowMs?P("burst_dampening"):ye("burst_dampening",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),le(t),s.currentScore,[`rapid successive updates within ${p-u}ms stay bundled instead of stealing focus`])},Pe={STATUS_ONLY:0,NON_STATUS:1,CRITICAL_CONSEQUENCE:2,BLOCKING_OR_REQUIRED:3},wk=e=>{let t=e.evidence.currentFrame,{candidate:n,context:s,evidence:i,helpers:o,routed:a,plannerDefaults:c}=e;if(!t||a.decision.kind!=="activate"||s.currentScore===null)return P("conflicting_interrupt");let u=xk(t),p=Tk(n,s.policyVerdict);if(u===Pe.STATUS_ONLY||p===Pe.STATUS_ONLY||p>u)return P("conflicting_interrupt");if(p<u)return ye("conflicting_interrupt",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),le(t),s.currentScore,["the current interrupt is more urgent, so the challenger waits instead of stealing focus"]);let m=c?.conflictingInterruptMargin??W.queuePlanner.conflictingInterruptMargin;return m<=0||s.candidateScore>=s.currentScore+m?P("conflicting_interrupt"):ye("conflicting_interrupt",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),le(t),s.currentScore,["equally interruptive work needs a clear advantage before it can replace the current interrupt"])};function xk(e){return e.mode!=="status"&&e.responseSpec?.kind!=="none"?Pe.BLOCKING_OR_REQUIRED:e.tone==="critical"||e.consequence==="high"?Pe.CRITICAL_CONSEQUENCE:e.mode!=="status"?Pe.NON_STATUS:Pe.STATUS_ONLY}function Tk(e,t){return e.blocking||t.requiresOperatorResponse||t.minimumLane==="now"?Pe.BLOCKING_OR_REQUIRED:e.tone==="critical"||e.consequence==="high"?Pe.CRITICAL_CONSEQUENCE:e.mode!=="status"?Pe.NON_STATUS:Pe.STATUS_ONLY}var Rk=e=>{let t=e.evidence.currentFrame,{candidate:n,context:s,evidence:i,helpers:o}=e;if(!t||s.currentScore===null||n.blocking||jt(t)||n.consequence==="high"||n.tone==="critical"||s.candidateScore<=s.currentScore)return P("context_patience");let{contextCost:a}=s.utility.components,c=a<=-6?W.queuePlanner.highContextQueueMargin:a<=-3?W.queuePlanner.mediumContextQueueMargin:null;if(c===null||s.candidateScore>=s.currentScore+c)return P("context_patience");let u=s.candidateScore-s.currentScore;return ye("context_patience",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),le(t),s.currentScore,[`memory suggests this interaction usually needs context, so it stays peripheral until it clears the ${c}-point margin (gap: ${u})`])},Ck=e=>{let t=e.evidence.currentFrame,{candidate:n,context:s,evidence:i,helpers:o,routed:a,plannerDefaults:c}=e;if(!t||a.decision.kind!=="activate"||s.currentScore===null||n.blocking||n.consequence==="high"||n.tone==="critical"||t.consequence==="high"||t.tone==="critical"||Pk(t,n))return P("decision_stream_continuity");let u=c?.streamContinuityMargin??W.queuePlanner.streamContinuityMargin;if(u<=0||s.candidateScore>=s.currentScore+u)return P("decision_stream_continuity");let p=s.candidateScore-s.currentScore;return ye("decision_stream_continuity",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),le(t),s.currentScore,[`the current decision stream stays active until cross-stream work clears the ${u}-point margin (gap: ${p})`])};function Pk(e,t){let n=ys(e.source),s=ys(t.source);if(n&&s&&n!==s)return!1;if(n&&s&&n===s)return!0;let i=Zc(e),o=Zc(t);return i&&o&&i!==o?!1:!!(i&&o&&i===o||e.taskId===t.taskId)}var Ok=e=>{let t=e.evidence.currentFrame,{candidate:n,context:s,evidence:i,helpers:o,routed:a,plannerDefaults:c}=e;if(!t||a.decision.kind!=="activate"||n.blocking||n.consequence==="high"||n.tone==="critical")return P("minimum_dwell");let u=c?.minimumDwellMs??W.queuePlanner.minimumDwellMs;if(u<=0)return P("minimum_dwell");let p=Date.parse(t.timing.updatedAt),m=Date.parse(n.timestamp);if(Number.isNaN(p)||Number.isNaN(m)||m-p>=u)return P("minimum_dwell");let h=u-(m-p);return ye("minimum_dwell",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),le(t),s.currentScore,[`recently surfaced work keeps focus for another ${h}ms to avoid a premature switch`])},Nk=e=>{let t=e.evidence.currentFrame,{candidate:n,context:s,evidence:i,helpers:o}=e;if(!t||!n.episodeId)return P("same_episode");let a=Lt(t);return!a||a!==n.episodeId||Ve(Mt(t))?P("same_episode"):n.blocking&&!jt(t)?ye("same_episode",{kind:"activate",candidate:n},le(t),s.currentScore,["the current episode has progressed into an interruptive step that belongs in now"]):n.blocking&&Cg(n.relationHints,"supersedes")&&Ag(n)!=="weak"?ye("same_episode",{kind:"activate",candidate:n},le(t),s.currentScore,["the current episode has advanced to a superseding step that belongs in now"]):Jn(i.continuitySignalSummary)?P("same_episode"):ye("same_episode",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),le(t),s.currentScore,["related work stays bundled with the current episode already in now"])},Lk=e=>{let t=e.evidence.currentFrame;return!t||t.interactionId!==e.candidate.interactionId?P("same_interaction"):ye("same_interaction",{kind:"activate",candidate:e.candidate},null,null,["same interaction refreshes the existing frame"])},Mk=e=>{let{candidate:t,context:n,evidence:s,helpers:i}=e;if(!t.episodeId||t.blocking||t.consequence==="high"||t.tone==="critical")return P("visible_episode");let o=[s.attentionView.now,...s.attentionView.next,...s.attentionView.ambient].filter(a=>a!==null).filter(a=>a.interactionId!==t.interactionId&&Lt(a)===t.episodeId&&!Ve(Mt(a)));return o.length===0||!(t.episodeState==="batched"||(t.episodeSize??1)>=2||o.length>=2)||Jn(s.continuitySignalSummary)?P("visible_episode"):ye("visible_episode",i.batchedDecision(t,n.policyVerdict,s.attentionView,s.surfaceCapabilities),null,s.currentFrame?n.currentScore:null,[s.currentFrame?"related episode work is already building in the queue, so this interaction stays bundled with it":"related episode work is already visible, so this interaction batches with it instead of interrupting"])},Dk=[Mk,Nk,Ok,Ak,Lk,Sk,wk,Ck,Rk],qg=class{plannerDefaults;constructor(e={}){this.plannerDefaults=e.plannerDefaults}explain(e,t,n){let s=this.resolveEvidenceContext(e,n,t.timestamp),i=bk(t,n,s,this.plannerDefaults);return this.applyContinuity(t,n,s,i)}clear(){return{kind:"clear"}}preferredPeripheralBucket(e,t,n){return fl(e,t,n)}applyContinuity(e,t,n,s){let i=new Set(this.plannerDefaults?.disabledContinuityRules??[]),o=Dk.map(c=>{let u=c({candidate:e,context:t,evidence:n,routed:s,plannerDefaults:this.plannerDefaults,helpers:{peripheralDecision:Dt,batchedDecision:Ik}});return i.has(u.rule)?P(u.rule,[`operator disabled the ${u.rule} continuity rule`]):u}),a=o.find(c=>c.kind==="override");return a?{decision:a.decision,currentPriority:a.currentPriority,currentScore:a.currentScore,reasons:[...s.reasons,...a.rationale],continuityEvaluations:o}:{...s,continuityEvaluations:o}}resolveEvidenceContext(e,t,n){return ml(e,As(t),Zn(n)??0)}},Uk=class{runtime;constructor(e){this.runtime=e}assemble(e,t){let n=this.runtime.signals.summarize(e),s=this.runtime.signals.summarize(),i=Pt(n),o=Pt(s),a=this.runtime.getTaskView(e),c=this.runtime.getAttentionView(),u=this.runtime.getOperatorPresence();return ml(t,As({currentFrame:t,currentTaskView:a,currentEpisode:this.runtime.episodes.readFrameEpisode(t),attentionView:c,taskSignalSummary:n,continuitySignalSummary:n,globalSignalSummary:s,taskAttentionState:i,globalAttentionState:o,surfaceCapabilities:this.runtime.getSurfaceCapabilities(),operatorPresence:u}),this.runtime.clock.nowMs())}augmentContinuitySignalSummary(e,t,n){let s=this.resolveContinuitySignalSummary(e,t,n.taskSignalSummary);return s===n.taskSignalSummary?n:{...n,continuitySignalSummary:s}}resolveContinuitySignalSummary(e,t,n){if(!t.episodeId)return n;let s=this.runtime.signals.list(e),i=this.runtime.signals.list().filter(o=>o.taskId!==e&&Fk(o)===t.episodeId);return i.length===0?n:Ng([...s,...i].sort((o,a)=>o.timestamp.localeCompare(a.timestamp)))}};function Fk(e){let t=e.metadata?.episode;if(!t||typeof t!="object"||Array.isArray(t))return null;let n=t.id;return typeof n=="string"&&n.length>0?n:null}var $g=class extends Error{code;constructor(e,t){super(t),this.name=new.target.name,this.code=e}},he=class extends $g{field;constructor(e,t={}){super(t.code??"validation_error",e),this.field=t.field}},jk=class extends $g{taskId;interactionId;expiredAt;constructor(e){super("response_expired",`response for interaction ${e.interactionId} expired at ${e.expiredAt} and must be revalidated before submission`),this.taskId=e.taskId,this.interactionId=e.interactionId,this.expiredAt=e.expiredAt}};function qk(e,t,n){let s=Kk(e,n),i={taskId:e.taskId,interactionId:e.interactionId,timestamp:n,frameId:e.id,...e.source!==void 0?{source:e.source}:{},metadata:Qn(e)};return t.response.kind==="dismissed"?{kind:"dismissed",...i,...s!==void 0?{latencyMs:s}:{}}:{kind:"responded",...i,responseKind:t.response.kind,...s!==void 0?{latencyMs:s}:{}}}function $k(e,t,n){return{kind:"responded",taskId:e.taskId,interactionId:e.interactionId,timestamp:n,...e.source!==void 0?{source:e.source}:{},responseKind:t.response.kind==="dismissed"?"acknowledged":t.response.kind,metadata:{...nk(e),autoResolved:!0}}}function Hc(e,t,n=e){return{kind:"deferred",taskId:n.taskId,interactionId:n.interactionId,timestamp:e.timing.updatedAt,frameId:e.id,...n.source!==void 0?{source:n.source}:{},reason:t,metadata:Qn(e)}}function Bk(e,t,n){let s=e.now,i=t.now;return i?[...Hk(s,i,n),...Vk(e,i,n)]:[]}function ds(e,t,n,s,i,o={}){return{kind:e,taskId:t,interactionId:n,timestamp:s,...i?.id!==void 0?{frameId:i.id}:{},...i?.source!==void 0?{source:i.source}:{},...i?{metadata:Qn(i)}:{},...o.surface!==void 0?{surface:o.surface}:{},...e==="context_expanded"&&o.section!==void 0?{section:o.section}:{},...e==="context_skipped"&&o.section!==void 0?{section:o.section}:{},...e==="timed_out"&&o.timeoutMs!==void 0?{timeoutMs:o.timeoutMs}:{}}}function Hk(e,t,n){if(!e||el(e,t))return[];let s={kind:"attention_shifted",taskId:t.taskId,interactionId:t.interactionId,timestamp:n,frameId:t.id,...t.source!==void 0?{source:t.source}:{},fromInteractionId:e.interactionId,toInteractionId:t.interactionId};return e.taskId===t.taskId?[s]:[s,{kind:"attention_shifted",taskId:e.taskId,interactionId:e.interactionId,timestamp:n,frameId:e.id,...e.source!==void 0?{source:e.source}:{},fromInteractionId:e.interactionId,toInteractionId:t.interactionId}]}function Vk(e,t,n){let s=e.next.some(i=>el(i,t))?"next":e.ambient.some(i=>el(i,t))?"ambient":null;return s?[{kind:"returned",taskId:t.taskId,interactionId:t.interactionId,timestamp:n,frameId:t.id,...t.source!==void 0?{source:t.source}:{},from:s,metadata:Qn(t)}]:[]}function Kk(e,t){let n=Date.parse(e.timing.updatedAt),s=Date.parse(t);if(!(Number.isNaN(n)||Number.isNaN(s)))return Math.max(0,s-n)}function el(e,t){return e.id===t.id||e.taskId===t.taskId&&e.interactionId===t.interactionId}var zk=class{runtime;constructor(e){this.runtime=e}commitFrame(e,t=[]){let n=this.runtime.getAttentionView(),s=new Set;for(let a of t){let c=`${a.taskId}::${a.interactionId}`;if(s.has(c))continue;s.add(c);let u=this.runtime.taskViews.discard(a.taskId,a.interactionId);a.taskId!==e.taskId&&(this.runtime.notifyFrame(a.taskId,u.now),this.runtime.notifyTaskView(a.taskId,u))}let i=this.runtime.taskViews.setNow(e.taskId,e),o=this.runtime.getAttentionView();return this.recordAttentionTransition(n,o,e.timing.updatedAt),this.runtime.recordSignal({kind:"presented",taskId:e.taskId,interactionId:e.interactionId,timestamp:e.timing.updatedAt,frameId:e.id,...e.source!==void 0?{source:e.source}:{},metadata:Qn(e)}),this.runtime.notifyFrame(e.taskId,e),this.runtime.notifyTaskView(e.taskId,i),this.runtime.notifyAttentionView(),e}applyClear(e){let t=this.runtime.getAttentionView(),n=this.runtime.taskViews.get(e);if(!(n.now!==null||n.next.length>0||n.ambient.length>0))return null;for(let a of[n.now,...n.next,...n.ambient])a&&this.runtime.episodes.resolveInteraction(a.interactionId);this.runtime.clearOperatorEngagement(e);let i=this.runtime.taskViews.clear(e),o=this.runtime.getAttentionView();return this.recordAttentionTransition(t,o,this.runtime.clock.nowIso()),this.runtime.notifyFrame(e,null),this.runtime.notifyTaskView(e,i),this.runtime.notifyAttentionView(),null}queueFrame(e,t){let n=this.runtime.taskViews.addNext(e,t);return this.runtime.recordSignal(Hc(t,"next")),this.runtime.notifyTaskView(e,n),this.runtime.notifyAttentionView(),n.now??t}addAmbientFrame(e,t){let n=this.runtime.taskViews.addAmbient(e,t);return this.runtime.recordSignal(Hc(t,"suppressed")),this.runtime.notifyTaskView(e,n),this.runtime.notifyAttentionView(),n.now??t}materializePeripheralFrame(e,t,n){let s=e.episodeId?this.findPeripheralEpisodeFrame(e.episodeId,n):null;if(!s){let p=this.applyResponseExpiry(this.runtime.planner.plan(e,null));return t==="queue"?this.queueFrame(e.taskId,p):this.addAmbientFrame(e.taskId,p)}let i=s.bucket==="queue"||t==="queue"?"queue":"ambient",a={...this.applyResponseExpiry(this.runtime.planner.plan(e,s.frame)),id:s.frame.id},c=this.runtime.taskViews.discard(s.frame.taskId,s.frame.interactionId);this.runtime.notifyTaskView(s.frame.taskId,c);let u=i==="queue"?this.runtime.taskViews.addNext(a.taskId,a):this.runtime.taskViews.addAmbient(a.taskId,a);return this.runtime.recordSignal(Hc(a,i==="queue"?"next":"suppressed",e)),this.runtime.notifyTaskView(a.taskId,u),this.runtime.notifyAttentionView(),a}promotePeripheralEpisodeFrame(e,t){let s={...this.applyResponseExpiry(this.runtime.planner.plan(e,t)),id:t.id};return this.commitFrame(s,[t])}submit(e){let t=this.findFrame(e.taskId,e.interactionId);if(!t)return;let n=this.readExpiredResponseTimestamp(t,this.runtime.clock.nowIso());if(n)throw new jk({taskId:e.taskId,interactionId:e.interactionId,expiredAt:n});let s=this.runtime.getAttentionView(),i=this.runtime.clock.nowIso();this.runtime.clearOperatorEngagement(e.taskId,e.interactionId),this.runtime.recordSignal(qk(t,e,i)),this.runtime.episodes.resolveInteraction(e.interactionId);let o=this.runtime.taskViews.resolve(e.taskId,e.interactionId),a=this.runtime.getAttentionView();this.recordAttentionTransition(s,a,i),this.runtime.notifyFrame(e.taskId,o.now??null),this.runtime.notifyTaskView(e.taskId,o),this.runtime.notifyAttentionView(),this.runtime.emitResponse(e)}applyAutoResponse(e,t){let n=this.runtime.clock.nowIso();return this.runtime.recordSignal($k(e,t,n)),this.runtime.episodes.resolveInteraction(e.interactionId),this.runtime.emitResponse(t),null}findFrameByInteractionId(e,t){return this.findFrame(e,t)}shouldRetireSupersededEpisodeFrames(e,t){return this.findSupersededEpisodeFrames(e,t).length>0}findSupersededEpisodeFrames(e,t){return!e.episodeId||!Cg(e.relationHints,"supersedes")?[]:[t.now,...t.next,...t.ambient].filter(n=>n!==null&&n.interactionId!==e.interactionId&&Lt(n)===e.episodeId&&!Ve(Mt(n)))}applyResponseExpiry(e){if(this.runtime.responseExpiryMs===void 0||e.responseSpec?.kind==="none")return e;let t=this.runtime.clock.add(e.timing.updatedAt,this.runtime.responseExpiryMs);return t===null?e:{...e,timing:{...e.timing,expiresAt:t}}}readExpiredResponseTimestamp(e,t){let n=e.timing.expiresAt;if(!n)return null;let s=this.runtime.clock.parse(n),i=this.runtime.clock.parse(t);return s===null||i===null||i<=s?null:n}findPeripheralEpisodeFrame(e,t){let n=t.next.find(i=>Lt(i)===e&&!Ve(Mt(i)));if(n)return{frame:n,bucket:"queue"};let s=t.ambient.find(i=>Lt(i)===e&&!Ve(Mt(i)));return s?{frame:s,bucket:"ambient"}:null}shouldPromotePeripheralEpisodeFrame(e){return e.continuityEvaluations?.some(t=>t.rule==="deferral_escalation"&&t.kind==="override"&&t.decision?.kind==="activate")??!1}findFrame(e,t){let n=this.runtime.taskViews.get(e);if(n.now?.interactionId===t)return n.now;let s=n.next.find(i=>i.interactionId===t);return s||(n.ambient.find(i=>i.interactionId===t)??null)}recordAttentionTransition(e,t,n){for(let s of Bk(e,t,n))this.runtime.recordSignal(s)}},Wk=12,Gk=class{taskViews=new Map;get(e){return this.taskViews.get(e)??{now:null,next:[],ambient:[]}}setNow(e,t){let n=this.get(e),s=n.next.filter(a=>a.interactionId!==t.interactionId),i=n.now&&n.now.interactionId!==t.interactionId?n.now:null,o={now:t,next:i?[i,...s]:s,ambient:n.ambient.filter(a=>a.interactionId!==t.interactionId)};return this.persist(e,o)}addNext(e,t){return this.upsert(e,"next",t)}addAmbient(e,t){return this.upsert(e,"ambient",t)}clear(e){let t={now:null,next:[],ambient:[]};return this.taskViews.delete(e),t}discard(e,t){let n=this.get(e),s={now:n.now?.interactionId===t?null:n.now,next:n.next.filter(i=>i.interactionId!==t),ambient:n.ambient.filter(i=>i.interactionId!==t)};return this.persist(e,s)}resolve(e,t){let n=this.get(e),s=n.next.filter(c=>c.interactionId!==t),i=n.ambient.filter(c=>c.interactionId!==t),o=n.now;o?.interactionId===t&&(o=s.shift()??null);let a={now:o,next:s,ambient:i};return this.persist(e,a)}upsert(e,t,n){let s=this.get(e),i=s.next.filter(p=>p.interactionId!==n.interactionId),o=s.ambient.filter(p=>p.interactionId!==n.interactionId),u={now:s.now?.interactionId===n.interactionId?i.shift()??null:s.now,next:t==="next"?[n,...i]:i,ambient:t==="ambient"?[n,...o].slice(0,Wk):o};return this.persist(e,u)}values(){return this.taskViews.values()}stats(){let e=0,t=0,n=0;for(let s of this.taskViews.values())s.now&&(e+=1),t+=s.next.length,n+=s.ambient.length;return{taskCount:this.taskViews.size,nowCount:e,nextCount:t,ambientCount:n,totalFrames:e+t+n}}persist(e,t){return Yk(t)?this.taskViews.delete(e):this.taskViews.set(e,t),t}};function Yk(e){return e.now===null&&e.next.length===0&&e.ambient.length===0}var tl=Symbol("aperture.internal.subscribeTrace");function hl(e,t){let n=[];return ms("",e,t,n),n}function ms(e,t,n,s){if(!Object.is(t,n)){if(t==null&&ps(n)){for(let i of Object.keys(n).sort()){let o=e.length>0?`${e}.${i}`:i;ms(o,void 0,n[i],s)}return}if(n==null&&ps(t)){for(let i of Object.keys(t).sort()){let o=e.length>0?`${e}.${i}`:i;ms(o,t[i],void 0,s)}return}if(t===void 0||n===void 0){s.push({path:e,before:t,after:n});return}if(Array.isArray(t)||Array.isArray(n)){s.push({path:e,before:t,after:n});return}if(ps(t)&&ps(n)){let i=new Set([...Object.keys(t),...Object.keys(n)]);for(let o of[...i].sort()){let a=e.length>0?`${e}.${o}`:o;ms(a,t[o],n[o],s)}return}s.push({path:e,before:t,after:n})}}function ps(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}var Zk=class{recordNoop(e){return{...e,evaluation:{kind:"noop"}}}recordClear(e,t){return{...e,evaluation:{kind:"clear",taskId:t}}}recordCandidate(e,t){let{original:n,adjusted:s,explanation:i,result:o}=t,a=e_(e.event,s);return{...e,evaluation:{kind:"candidate",original:n,adjusted:s},candidateTransition:Jk(n,s),frameTransition:Xk(e.current,o),heuristics:{scoreOffset:s.attentionScoreOffset??0,rationale:s.attentionRationale??[]},...a!==void 0?{semantic:a}:{},episode:Qk(s),policy:i.policy,policyRules:{gateEvaluations:i.policyGateEvaluations,criterion:i.criterion,criterionEvaluations:i.policyCriterionEvaluations},utility:{candidate:i.utility,currentScore:i.currentScore,currentPriority:i.currentPriority},planner:{kind:i.decision.kind,reasons:i.reasons,continuityEvaluations:i.continuityEvaluations},coordination:{kind:i.decision.kind,resultLane:s_(e.attentionView,s.taskId,s.interactionId,i.decision.kind),candidateScore:i.candidateScore,currentScore:i.currentScore,currentPriority:i.currentPriority,criterion:i.criterion,ambiguity:i.ambiguity,reasons:i.reasons,continuityEvaluations:i.continuityEvaluations},pressureForecast:i.pressureForecast,attentionBurden:i.attentionBurden,result:o}}};function Jk(e,t){return{changedFields:hl(e,t)}}function Xk(e,t){return{changedFields:hl(e,t)}}function Qk(e){return e.episodeId?{id:e.episodeId,key:e.episodeKey??e.episodeId,state:e.episodeState??"emerging",size:e.episodeSize??1,evidenceScore:e.episodeEvidenceScore??0,evidenceReasons:e.episodeEvidenceReasons??[],lastInteractionId:e.interactionId,updatedAt:e.timestamp}:null}function e_(e,t){let n=e.semantic;if(!n)return;let s=wg(t)??cl(e,n),i=qt(t);return{intentFrame:n.intentFrame,...n.activityClass!==void 0?{activityClass:n.activityClass}:{},...n.toolFamily!==void 0?{toolFamily:n.toolFamily}:{},...n.consequence!==void 0?{consequence:n.consequence}:{},...i?.confidence!==void 0?{confidence:i.confidence}:{},...i?.abstained===!0?{abstained:!0}:{},ontology:s,...n.whyNow!==void 0?{whyNow:n.whyNow}:{},relationHints:n.relationHints,factors:n.factors,reasons:n.reasons,influence:t_(e,t),impact:n_(e,t),...n.provenance!==void 0?{provenance:n.provenance}:{}}}function t_(e,t){let n=e.semantic;if(!n)return[];let s=wg(t)??cl(e,n),i=[];return e.type==="task.updated"?(i.push("task status stayed authoritative for candidate routing; semantic details still affected context, continuity, ambiguity handling, and ontology diagnostics"),"activityClass"in e&&e.activityClass===n.activityClass&&n.activityClass!==void 0&&i.push("activity class enriched canonical status facts"),e.toolFamily===n.toolFamily&&n.toolFamily!==void 0&&i.push("tool family enriched canonical status facts without changing the route"),n.relationHints.length>0&&i.push("relation hints informed continuity handling"),s.blocking!=="non_blocking"&&!t.blocking&&i.push(s.blocking==="blocking"?"semantic blocking marked the waiting status as blocked-like for peripheral routing while status handling stayed non-blocking":"semantic waiting stayed diagnostic because status updates still route as non-blocking candidates"),hs(t)?i.push("semantic abstention can keep non-blocking status work peripheral until clearer evidence arrives"):fs(t)==="low"&&i.push("low semantic confidence can keep non-blocking status work peripheral until the signal is clearer"),i):e.type==="human.input.requested"?("activityClass"in e&&e.activityClass===n.activityClass&&n.activityClass!==void 0&&i.push("activity class was projected into the canonical request"),e.consequence===n.consequence&&n.consequence!==void 0&&i.push("semantic consequence set the canonical human-input consequence"),n.toolFamily!==void 0&&(e.request.kind==="approval"?i.push("tool family remained decision-bearing on the approval path"):i.push("tool family stayed context-only on the question/form path")),n.relationHints.length>0&&i.push("relation hints informed continuity handling"),hs(t)?i.push(t.blocking?"semantic abstention stayed visible but did not downgrade blocking work":"semantic abstention constrained non-blocking routing"):fs(t)==="low"&&i.push(t.blocking?"semantic low confidence stayed visible but did not downgrade blocking work":"low semantic confidence constrained non-blocking routing"),i.length===0&&i.push("semantic interpretation mostly stayed context-only beyond the explicit request"),i):(i.push("semantic interpretation was recorded for explanation only"),i)}function n_(e,t){let n=e.semantic,s=new Set,i=new Set,o=new Set,a=new Set,c=new Set,u=qt(t),p=r_(e);if(!n)return{routingAuthority:p,decisionBearing:[],explanatory:[],canonical:[],routing:[],continuity:[],ambiguity:[],contextOnly:[]};switch(c.add("intent"),n.activityClass!==void 0&&c.add("activity"),n.toolFamily!==void 0&&c.add("tool"),n.consequence!==void 0&&c.add("consequence"),n.whyNow!==void 0&&c.add("why now"),n.relationHints.length>0&&c.add("relations"),u?.confidence!==void 0&&c.add("confidence"),u?.abstained===!0&&c.add("abstention"),e.type){case"task.updated":"activityClass"in e&&e.activityClass===n.activityClass&&n.activityClass!==void 0&&ve(c,s,"activity","activity (canonical)"),n.toolFamily!==void 0&&e.toolFamily===n.toolFamily&&ve(c,s,"tool","tool (bounded)"),n.relationHints.length>0&&ve(c,o,"relations","relations (continuity)"),ll(t)&&ve(c,i,"intent","blocking (peripheral routing)");break;case"human.input.requested":"activityClass"in e&&e.activityClass===n.activityClass&&n.activityClass!==void 0&&ve(c,s,"activity","activity (canonical)"),n.consequence!==void 0&&e.consequence===n.consequence&&ve(c,s,"consequence","consequence (canonical)"),n.toolFamily!==void 0&&e.request.kind==="approval"&&ve(c,s,"tool","tool (approval path)"),n.relationHints.length>0&&ve(c,o,"relations","relations (continuity)");break;default:n.relationHints.length>0&&ve(c,o,"relations","relations (continuity)");break}return!t.blocking&&Rv(t)&&ve(c,a,"confidence","confidence (ambiguity)"),!t.blocking&&hs(t)&&ve(c,a,"abstention","abstention (ambiguity)"),{routingAuthority:p,decisionBearing:[...s,...i,...o,...a],explanatory:[...c],canonical:[...s],routing:[...i],continuity:[...o],ambiguity:[...a],contextOnly:[...c]}}function r_(e){switch(e.type){case"task.updated":return"status";case"human.input.requested":return"request";default:return"event"}}function ve(e,t,n,s){e.delete(n),t.add(s)}function s_(e,t,n,s){return s==="auto_approve"||s==="clear"?"none":e.now&&e.now.taskId===t&&e.now.interactionId===n?"now":e.next.some(i=>i.taskId===t&&i.interactionId===n)?"next":e.ambient.some(i=>i.taskId===t&&i.interactionId===n)?"ambient":"none"}function i_(e,t,n){return{kind:e,original:t,finalized:n,changedFields:hl(t,n)}}var o_=class{constructor(e){this.timeSource=e}engagement=null;timer=null;engage(e,t,n={},s){let i=a_(n.durationMs);this.engagement={taskId:e,interactionId:t,expiresAtMs:this.timeSource()+i},this.scheduleExpiry(i,e,t,s)}readFocusedInteractionId(e){let t=this.engagement;return t?t.expiresAtMs<=this.timeSource()?(this.clear(),null):e(t.taskId,t.interactionId)?t.interactionId:(this.clear(),null):null}clear(e,t){let n=this.engagement;n&&(e!==void 0&&n.taskId!==e||t!==void 0&&n.interactionId!==t||(this.engagement=null,this.clearTimer()))}dispose(){this.engagement=null,this.clearTimer()}scheduleExpiry(e,t,n,s){this.clearTimer(),this.timer=setTimeout(()=>{if(!(this.engagement?.taskId!==t||this.engagement?.interactionId!==n)){if(s){s();return}this.clear()}},e),this.timer.unref?.()}clearTimer(){this.timer&&(clearTimeout(this.timer),this.timer=null)}};function ng(e,t){return e.now?.interactionId===t.now?.interactionId&&rg(e.next,t.next)&&rg(e.ambient,t.ambient)}function a_(e){return e===void 0?12e3:Math.max(25,Math.floor(e))}function rg(e,t){return e.length===t.length&&e.every((n,s)=>n.interactionId===t[s]?.interactionId)}function c_(e){return e.evaluation.kind==="candidate"}function l_(e){return c_(e)}function u_(e){if(e.evaluation.kind==="noop")return{timestamp:e.timestamp,event:e.event,eventTransition:e.eventTransition,evaluation:{kind:"noop"}};if(e.evaluation.kind==="clear")return{timestamp:e.timestamp,event:e.event,eventTransition:e.eventTransition,evaluation:{kind:"clear",taskId:e.evaluation.taskId}};if(!l_(e))throw new Error("Unexpected internal trace variant");return{timestamp:e.timestamp,event:e.event,eventTransition:e.eventTransition,evaluation:{kind:"candidate"},candidateTransition:e.candidateTransition,frameTransition:e.frameTransition,...e.semantic!==void 0?{semantic:e.semantic}:{},policyRules:{gateEvaluations:e.policyRules.gateEvaluations.map(t=>({rule:t.rule,kind:t.kind,rationale:[...t.rationale]})),criterion:e.policyRules.criterion?{criterion:{activationThreshold:e.policyRules.criterion.criterion.activationThreshold,promotionMargin:e.policyRules.criterion.criterion.promotionMargin},peripheralResolution:e.policyRules.criterion.peripheralResolution,ambiguity:e.policyRules.criterion.ambiguity?{kind:e.policyRules.criterion.ambiguity.kind,reason:e.policyRules.criterion.ambiguity.reason,resolution:e.policyRules.criterion.ambiguity.resolution}:null,rationale:[...e.policyRules.criterion.rationale]}:null,criterionEvaluations:e.policyRules.criterionEvaluations.map(t=>({rule:t.rule,kind:t.kind,rationale:[...t.rationale]}))},coordination:{kind:e.coordination.kind,resultLane:e.coordination.resultLane,candidateScore:e.coordination.candidateScore,currentScore:e.coordination.currentScore,currentPriority:e.coordination.currentPriority,ambiguity:e.coordination.ambiguity?{kind:e.coordination.ambiguity.kind,reason:e.coordination.ambiguity.reason,resolution:e.coordination.ambiguity.resolution}:null,reasons:[...e.coordination.reasons],continuityEvaluations:e.coordination.continuityEvaluations.map(t=>({rule:t.rule,kind:t.kind,rationale:[...t.rationale]}))}}}var d_=3,p_=25,m_=class{frameListeners=new Map;taskViewListeners=new Map;attentionViewListeners=new Set;responseListeners=new Set;signalListeners=new Set;traceListeners=new Set;internalTraceListeners=new Set;frameHealth=Rt();taskViewHealth=Rt();attentionViewHealth=Rt();responseHealth=Rt();signalHealth=Rt();traceHealth=Rt();internalTraceHealth=Rt();subscribeFrame(e,t,n){let s=this.frameListeners.get(e)??new Set,i=Tt(t);s.add(i),this.frameListeners.set(e,s);let o=()=>{s.delete(i),s.size===0&&this.frameListeners.delete(e)};try{t(n)}catch(a){throw o(),a}return o}subscribeTaskView(e,t,n){let s=this.taskViewListeners.get(e)??new Set,i=Tt(t);s.add(i),this.taskViewListeners.set(e,s);let o=()=>{s.delete(i),s.size===0&&this.taskViewListeners.delete(e)};try{t(n)}catch(a){throw o(),a}return o}subscribeAttentionView(e,t){let n=Tt(e);this.attentionViewListeners.add(n);try{e(t)}catch(s){throw this.attentionViewListeners.delete(n),s}return()=>{this.attentionViewListeners.delete(n)}}onResponse(e){let t=Tt(e);return this.responseListeners.add(t),()=>{this.responseListeners.delete(t)}}onSignal(e){let t=Tt(e);return this.signalListeners.add(t),()=>{this.signalListeners.delete(t)}}onTrace(e){let t=Tt(e);return this.traceListeners.add(t),()=>{this.traceListeners.delete(t)}}[tl](e){let t=Tt(e);return this.internalTraceListeners.add(t),()=>{this.internalTraceListeners.delete(t)}}emitFrame(e,t){let n=this.frameListeners.get(e);n&&(this.emitRegistrations(n,this.frameHealth,s=>s(t)),n.size===0&&this.frameListeners.delete(e))}emitTaskView(e,t){let n=this.taskViewListeners.get(e);n&&(this.emitRegistrations(n,this.taskViewHealth,s=>s(t)),n.size===0&&this.taskViewListeners.delete(e))}emitAttentionView(e){this.emitRegistrations(this.attentionViewListeners,this.attentionViewHealth,t=>t(e))}emitResponse(e){this.emitRegistrations(this.responseListeners,this.responseHealth,t=>t(e))}emitSignal(e){this.emitRegistrations(this.signalListeners,this.signalHealth,t=>t(e))}emitTrace(e){this.emitRegistrations(this.internalTraceListeners,this.internalTraceHealth,n=>n(e));let t=u_(e);this.emitRegistrations(this.traceListeners,this.traceHealth,n=>n(t))}getHealthSnapshot(){let e=Ct(this.frameHealth,sg(this.frameListeners)),t=Ct(this.taskViewHealth,sg(this.taskViewListeners)),n=Ct(this.attentionViewHealth,this.attentionViewListeners.size),s=Ct(this.responseHealth,this.responseListeners.size),i=Ct(this.signalHealth,this.signalListeners.size),o=Ct(this.traceHealth,this.traceListeners.size),a=Ct(this.internalTraceHealth,this.internalTraceListeners.size);return{totalActive:e.active+t.active+n.active+s.active+i.active+o.active+a.active,frame:e,taskView:t,attentionView:n,response:s,signal:i,trace:o,internalTrace:a}}emitRegistrations(e,t,n){for(let s of[...e]){let i=Km.now();try{n(s.listener),s.consecutiveFailures=0}catch(o){s.consecutiveFailures+=1,t.failures+=1,t.lastErrorAt=new Date().toISOString(),t.lastErrorMessage=o instanceof Error?o.message:String(o),s.consecutiveFailures>=d_&&(e.delete(s),t.detached+=1)}finally{let o=Km.now()-i;t.emissions+=1,o>t.maxDeliveryMs&&(t.maxDeliveryMs=o),o>=p_&&(t.slowDeliveries+=1)}}}};function Tt(e){return{listener:e,consecutiveFailures:0}}function Rt(){return{emissions:0,failures:0,detached:0,slowDeliveries:0,maxDeliveryMs:0,lastErrorAt:null,lastErrorMessage:null}}function Ct(e,t){return{active:t,emissions:e.emissions,failures:e.failures,detached:e.detached,slowDeliveries:e.slowDeliveries,maxDeliveryMs:Number(e.maxDeliveryMs.toFixed(2)),lastErrorAt:e.lastErrorAt,lastErrorMessage:e.lastErrorMessage}}function sg(e){let t=0;for(let n of e.values())t+=n.size;return t}function g_(e){let t=bg(e),n=e.type==="human.input.requested"&&e.riskHint!==void 0?{riskHint:e.riskHint}:void 0;return Bg(y_(e),t,n)}function ig(e,t={}){if(t.skipSemanticDefaults)return e;let n=e.semantic??bg(S_(e));return Bg(e,n)}function f_(e){switch(e){case"high":return"critical";case"medium":case"low":return"focused";default:return I_(e)}}function Bg(e,t,n={}){switch(e.type){case"task.started":return{...e,semantic:t};case"task.updated":return{...e,...e.activityClass===void 0&&t.activityClass!==void 0?{activityClass:t.activityClass}:{},semantic:t};case"task.completed":case"task.cancelled":return{...e,semantic:t};case"human.input.requested":return h_(e,t,n);default:return Hg(e)}}function h_(e,t,n){let{toolFamily:s,...i}=e,o=e.consequence??t.consequence??n.riskHint??"medium",a=e.tone??f_(o),c=dl({base:e.provenance,semantic:t}),u=e.request.kind==="approval"?e.toolFamily??t.toolFamily:void 0;return{...i,...u!==void 0?{toolFamily:u}:{},...e.activityClass===void 0&&t.activityClass!==void 0?{activityClass:t.activityClass}:{},semantic:t,tone:a,consequence:o,...c!==void 0?{provenance:c}:{}}}function y_(e){switch(e.type){case"task.started":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{}};case"task.updated":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{},status:e.status,...e.progress!==void 0?{progress:e.progress}:{},...e.context!==void 0?{context:e.context}:{}};case"task.completed":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.summary!==void 0?{summary:e.summary}:{}};case"task.cancelled":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.reason!==void 0?{reason:e.reason}:{}};case"human.input.requested":return{id:e.id,type:e.type,taskId:e.taskId,interactionId:e.interactionId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},title:e.title,summary:e.summary,request:e.request,...e.context!==void 0?{context:e.context}:{},...e.provenance!==void 0?{provenance:e.provenance}:{}};default:return b_(e)}}function S_(e){switch(e.type){case"task.started":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{}};case"task.updated":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{},status:e.status,...e.progress!==void 0?{progress:e.progress}:{},...e.context!==void 0?{context:e.context}:{}};case"task.completed":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.summary!==void 0?{summary:e.summary}:{}};case"task.cancelled":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.reason!==void 0?{reason:e.reason}:{}};case"human.input.requested":return{id:e.id,type:e.type,taskId:e.taskId,interactionId:e.interactionId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},title:e.title,summary:e.summary,request:e.request,...e.context!==void 0?{context:e.context}:{},...e.consequence!==void 0?{riskHint:e.consequence}:{}};default:return Hg(e)}}function Hg(e){throw new Error(`Unhandled ApertureEvent in semantic normalizer: ${JSON.stringify(e)}`)}function b_(e){throw new Error(`Unhandled SourceEvent in semantic normalizer: ${JSON.stringify(e)}`)}function I_(e){throw new Error(`Unhandled consequence level in semantic normalizer: ${e}`)}function v_(e){return{originalEvent:e,finalizedEvent:g_(e),transitionKind:"source_normalized"}}function k_(e,t={}){let n=t.applySemanticDefaults!==!1;return{originalEvent:e,finalizedEvent:n?ig(e):ig(e,{skipSemanticDefaults:!0}),transitionKind:n?"direct_enriched":"direct_passthrough"}}async function nl(e,t,n){try{let s=await Xb(e,"utf8"),i=n(s);return i===null?(og(e,"Failed to parse markdown state. Falling back to the in-memory default."),t):i}catch(s){return A_(s)||og(e,"Failed to read markdown state. Falling back to the in-memory default.",s),t}}async function __(e,t){await Qb(Zb(e),{recursive:!0});let n=`${e}.${process.pid}.${Jb(6).toString("hex")}.tmp`,s=await eI(n,"w",384),i=!1;try{await s.writeFile(t,"utf8"),await s.sync(),await s.close(),i=!0,await tI(n,e)}catch(o){throw i||await s.close().catch(()=>{}),await nI(n).catch(()=>{}),o}}function yl(e){let t=/^(#{1,3})\s+(.+?)\s*$/.exec(e.trim());if(!t)return null;let n=t[1];if(n===void 0)return null;let s=n.length;if(s<1||s>3)return null;let i=t[2]?.trim();return i?{level:s,text:i}:null}function Sl(e){let t=e.trim();if(!t.startsWith("- "))return null;let n=t.slice(2).trim(),s=n.indexOf(":");if(s===-1)return n.length>0?{text:n}:null;let i=n.slice(0,s).trim(),o=n.slice(s+1).trim();return i.length===0?null:{key:i,value:o}}function Ut(e){return e==="true"?!0:e==="false"?!1:/^-?\d+(?:\.\d+)?$/.test(e)?Number(e):e}function X(e,t){return`- ${e}: ${String(t)}`}function E_(e){return`- ${e}`}function A_(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="ENOENT"}function og(e,t,n){let s=n===void 0?"":` ${n instanceof Error?n.message:String(n)}`;console.warn(`[aperture] ${t} (${e})${s}`)}function Is(e){switch(e){case"ambient":return"ambient";case"next":case"queue":return"next";case"now":case"active":return"now";default:return}}async function Vg(e,t){return nl(Gc(e,"JUDGMENT.md"),t,w_)}function w_(e){let t=new Map,n=new Map,s=new Map,i=new Map,o=null,a=null;for(let p of e.split(`
|
|
6
|
-
`)){let m=yl(p);if(m){m.level===2?(o=m.text,a=null):m.level===3&&o==="Policy"&&(a=m.text,n.has(a)||n.set(a,{}));continue}let h=Sl(p);if(!(!h||!("key"in h))){if(o==="Meta"){t.set(h.key,h.value);continue}if(o==="Policy"&&a){let f=Ut(h.value),b=x_(Vc(h.key));n.set(a,{...n.get(a)??{},...b==="minimumLane"?(()=>{let v=Is(f);return v===void 0?{}:{minimumLane:v}})():{[b]:f}});continue}if(o==="Planner Defaults"){let f=Vc(h.key);if(f==="disabledContinuityRules"){let v=P_(h.value);v.length>0&&i.set(f,v);continue}let b=Ut(h.value);(typeof b=="boolean"||typeof b=="number")&&i.set(f,b);continue}if(o==="Ambiguity Defaults"){let f=Ut(h.value);typeof f=="number"&&s.set(Vc(h.key),f)}}}let c=T_(t.get("version")),u=t.get("updated at");return c===null||c!==tt||!u?null:{version:c,updatedAt:u,...n.size>0?{policy:Object.fromEntries(n.entries())}:{},...s.size>0?{ambiguityDefaults:Object.fromEntries(s.entries())}:{},...i.size>0?{plannerDefaults:Object.fromEntries(i.entries())}:{}}}function x_(e){return e==="minimumPresentation"?"minimumLane":e}function T_(e){return e!==void 0&&/^-?\d+(?:\.\d+)?$/.test(e)?Number(e):null}function Vc(e){return e.replace(/\s+([a-z])/g,(t,n)=>n.toUpperCase())}var R_={same_interaction:!0,visible_episode:!0,same_episode:!0,minimum_dwell:!0,burst_dampening:!0,deferral_escalation:!0,conflicting_interrupt:!0,decision_stream_continuity:!0,context_patience:!0},C_=Object.keys(R_);function P_(e){let t=new Set;for(let n of e.split(",")){let s=n.trim();O_(s)&&t.add(s)}return[...t]}function O_(e){return C_.includes(e)}var N_=class{rootDir;constructor(e){this.rootDir=e}loadUserProfile(e){return nl(this.userPath(),e,L_)}loadMemoryProfile(e){return nl(this.memoryPath(),e,D_)}saveMemoryProfile(e){return __(this.memoryPath(),U_(e))}userPath(){return Gc(this.rootDir,"USER.md")}memoryPath(){return Gc(this.rootDir,"MEMORY.md")}};function L_(e){let t=new Map,n=new Map,s=new Map,i=null,o=null;for(let p of e.split(`
|
|
7
|
-
`)){let m=yl(p);if(m){m.level===2?(i=m.text,o=null):m.level===3&&i==="Tool Overrides"&&(o=m.text,s.has(o)||s.set(o,{}));continue}let h=Sl(p);if(!(!h||!("key"in h))){if(i==="Meta"){rl(t,h.key,h.value);continue}if(i==="Preferences"){rl(n,h.key,h.value);continue}if(i==="Tool Overrides"&&o){let f=Ut(h.value),b=M_(gs(h.key));s.set(o,{...s.get(o)??{},...b==="minimumLane"?(()=>{let v=Is(f);return v===void 0?{}:{minimumLane:v}})():{[b]:f}})}}}let a=Nt(t,"operator id"),c=Nt(t,"updated at"),u=sl(Nt(t,"version"));return!a||!c||u===null||u!==tt?null:{version:u,operatorId:a,updatedAt:c,...n.size>0?{preferences:{...Qe(n,"quiet hours").length>0?{quietHours:Qe(n,"quiet hours")}:{},...Qe(n,"prefer batching for").length>0?{preferBatchingFor:Qe(n,"prefer batching for")}:{},...Qe(n,"always expand context for").length>0?{alwaysExpandContextFor:Qe(n,"always expand context for")}:{},...Qe(n,"never auto approve").length>0?{neverAutoApprove:Qe(n,"never auto approve")}:{}}}:{},...s.size>0?{overrides:{tools:Object.fromEntries(s.entries())}}:{}}}function M_(e){switch(e){case"defaultPresentation":case"minimumPresentation":return"minimumLane";default:return e}}function D_(e){let t=new Map,n=new Map,s=new Map,i=new Map,o=[],a=null,c=null;for(let f of e.split(`
|
|
8
|
-
`)
|
|
9
|
-
`)}function F_(){return{presentations:0,responses:0,dismissals:0}}function rl(e,t,n){let s=e.get(t)??[];s.push(n),e.set(t,s)}function Nt(e,t){return e.get(t)?.[0]??null}function Qe(e,t){return e.get(t)??[]}function sl(e){return e!==null&&/^-?\d+(?:\.\d+)?$/.test(e)?Number(e):null}function gs(e){return e.replace(/\s+([a-z])/g,(t,n)=>n.toUpperCase())}async function j_(e){let t=new N_(e),[n,s,i]=await Promise.all([t.loadUserProfile(Kg()),t.loadMemoryProfile(B_()),Vg(e,zg())]);return{profileStore:t,markdownRootDir:e,userProfile:n,memoryProfile:s,judgmentConfig:i}}async function q_(e){let[t,n,s]=await Promise.all([e.profileStore.loadUserProfile(e.userProfile??Kg()),e.profileStore.loadMemoryProfile(e.memoryProfile),Vg(e.markdownRootDir,e.judgmentConfig??zg())]);return{userProfile:t,memoryProfile:n,judgmentConfig:s}}async function $_(e){if(!e.profileStore)return null;let t=Lg(e.memoryProfile,e.signals,e.now);return await e.profileStore.saveMemoryProfile(t),t}function Kg(){return{version:tt,operatorId:"default",updatedAt:gn(0)}}function B_(){return{version:tt,operatorId:"default",updatedAt:gn(0),sessionCount:0}}function zg(){return{version:tt,updatedAt:gn(0)}}function Kc(e){let{timestamp:t,event:n,eventTransition:s,evidence:i,taskView:o,attentionView:a}=e;return{timestamp:t,event:n,eventTransition:s,taskSummary:i.taskSignalSummary,globalSummary:i.globalSignalSummary,taskAttentionState:i.taskAttentionState,globalAttentionState:i.globalAttentionState,pressureForecast:i.pressureForecast,attentionBurden:i.attentionBurden,current:i.currentFrame,taskView:o,attentionView:a}}function ws(e,t=[]){return{rule:e,kind:"noop",rationale:t}}function Ft(e,t,n=t.rationale){return{rule:e,kind:"verdict",verdict:t,rationale:n}}var H_=e=>e.candidate.priority!=="background"?ws("background"):Ft("background",{autoApprove:!1,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!0,rationale:["background work should remain peripheral by default"]}),V_=e=>e.candidate.blocking?Ft("blocking",{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!0,minimumLane:"now",minimumLaneIsSticky:!1,rationale:["blocking interactions require explicit operator attention"]}):ws("blocking");function K_(e,t){let n=e?.policy;if(!n)return;let s=z_(t);for(let i of s){let o=n[i];if(o)return o}}function Wg(e){return Gg(e)?pl(e):null}function z_(e){let t=[];if(!Gg(e))return t;let n=Wg(e),s=[e.title,e.summary??"",...e.context?.items?.flatMap(i=>[i.label,i.value??""])??[]].join(" ").toLowerCase();return e.consequence==="low"&&n==="read"&&t.push("lowRiskRead"),e.consequence==="low"&&n==="web"&&t.push("lowRiskWeb"),s.includes(".env")&&(n==="write"||n==="edit"||n==="bash")&&t.push("envWrite"),(n==="write"||n==="edit")&&t.push("fileWrite"),n==="bash"&&e.consequence==="high"&&t.push("destructiveBash"),t}function Gg(e){return e.activityClass!==void 0?W_(e.activityClass):e.mode==="approval"}function W_(e){switch(e){case"permission_request":return!0;case"question_request":case"follow_up":case"tool_completion":case"tool_failure":case"session_status":case"status_update":return!1;default:return e}}var G_=e=>{let{candidate:t,judgmentConfig:n,userProfile:s}=e,i=Wg(t),o=i?s?.overrides?.tools?.[i]:void 0,a=K_(n,t),c=o?.requireContextExpansion===!0||a?.requireContextExpansion===!0,u=a?.autoApprove===!0&&t.mode==="approval"&&t.responseSpec.kind==="approval"&&!c,p=Is(o?.minimumLane??o?.defaultPresentation)??Is(a?.minimumLane)??(c?"now":void 0),m=a?.mayInterrupt,h=!u&&(t.blocking||p==="now"||c);if(p===void 0&&m===void 0&&!o&&!u)return ws("configured_policy");let f=[];return i&&o&&f.push(`user override applies for ${i} interactions`),a&&f.push("configured judgment policy applies to this interaction"),u?(f.push("configured judgment policy auto-approves this bounded approval"),Ft("configured_policy",{autoApprove:!0,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!0,rationale:f})):h?(f.push("operator-response work cannot remain passive without auto-resolution"),Ft("configured_policy",{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!0,minimumLane:"now",minimumLaneIsSticky:!1,rationale:f})):Ft("configured_policy",{autoApprove:!1,mayInterrupt:m??!1,requiresOperatorResponse:h,minimumLane:p??(t.blocking?"now":"next"),minimumLaneIsSticky:p!==void 0||m===!1,rationale:f})},Y_=()=>Ft("interruptive_default",{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!1,minimumLane:"next",minimumLaneIsSticky:!1,rationale:["urgent non-blocking work may compete for interruptive attention"]});function et(e,t=[]){return{rule:e,kind:"noop",rationale:t}}function _e(e,t,n=t.rationale){return{rule:e,kind:"verdict",verdict:t,rationale:n}}function Yg(e,t,n){return{rule:e,kind:"adjust",criterion:t,rationale:n}}function vs(e){return{criterion:e,peripheralResolution:null,ambiguity:null,rationale:[]}}function Z_(e,t,n=[]){return{criterion:e,peripheralResolution:t,ambiguity:null,rationale:n}}function Yn(e,t,n,s){return{criterion:e,peripheralResolution:t,ambiguity:n,rationale:s}}var J_=e=>{let{evidence:t,criterion:n}=e,s=t.attentionBurden.thresholdOffset;return s<=0?et("attention_budget"):Yg("attention_budget",{activationThreshold:n.activationThreshold+s,promotionMargin:n.promotionMargin+s},["sustained attention burden raises the interrupt bar until the operator load eases"])},X_=e=>{let{candidate:t,policyVerdict:n,criterion:s,peripheralResolution:i,evidence:o}=e;return!n.mayInterrupt&&n.minimumLaneIsSticky?_e("interrupt_eligibility",Z_(s,Q_(t,i,o.surfaceCapabilities))):t.blocking||t.episodeState==="actionable"||n.autoApprove||n.requiresOperatorResponse||n.minimumLane==="now"?_e("interrupt_eligibility",vs(s)):et("interrupt_eligibility")};function Q_(e,t,n){if(t!=="ambient"||!n.topology.supportsAmbient)return"queue";switch(e.responseSpec.kind){case"approval":case"acknowledge":case"none":return"ambient";case"choice":return(e.responseSpec.selectionMode==="multiple"?n.responses.supportsMultipleChoice:n.responses.supportsSingleChoice)&&(!e.responseSpec.allowTextResponse||n.responses.supportsTextResponse)?"ambient":"queue";case"form":return n.responses.supportsForm?"ambient":"queue"}}var eE=e=>{let{candidate:t,evidence:n,candidateScore:s,criterion:i,peripheralResolution:o}=e;return n.currentFrame||t.episodeId!==void 0&&[n.attentionView.now,...n.attentionView.next,...n.attentionView.ambient].filter(a=>a!==null).some(a=>a.interactionId!==t.interactionId&&Lt(a)===t.episodeId&&!Ve(Mt(a)))?et("no_active_frame"):s>=i.activationThreshold?_e("no_active_frame",vs(i)):_e("no_active_frame",Yn(i,o,{kind:"interrupt",reason:"low_signal",resolution:o},["uncertain interruptive work stays peripheral until its signal is stronger"]))},tE=e=>{let{evidence:t,criterion:n,peripheralResolution:s}=e;return t.operatorPresence!=="absent"?et("operator_absence"):_e("operator_absence",{criterion:n,peripheralResolution:s,ambiguity:null,rationale:["operator absence keeps interruptive work peripheral until foreground attention returns"]})},nE=e=>{let{candidate:t}=e;return t.mode!=="status"||t.consequence==="high"||t.tone==="critical"?ws("peripheral_status"):Ft("peripheral_status",{autoApprove:!1,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!1,rationale:["non-critical status work should start in the periphery"]})},rE=e=>{let{candidate:t,criterion:n,peripheralResolution:s}=e;return t.blocking?et("semantic_uncertainty"):hs(t)?_e("semantic_uncertainty",Yn(n,s,{kind:"interrupt",reason:"low_signal",resolution:s},["semantic interpretation abstained, so non-blocking work stays peripheral until stronger explicit evidence arrives"])):fs(t)==="low"?_e("semantic_uncertainty",Yn(n,s,{kind:"interrupt",reason:"low_signal",resolution:s},["low-confidence semantic interpretation keeps non-blocking work peripheral until the signal is clearer"])):Eg(t)==="weak"?_e("semantic_uncertainty",Yn(n,s,{kind:"interrupt",reason:"low_signal",resolution:s},["inferred semantic evidence stays peripheral until stronger source-backed context arrives"])):et("semantic_uncertainty",qt(t)!==null?["semantic evidence is strong enough to keep ordinary interrupt rules in play"]:[])},sE=e=>{let{candidateScore:t,currentScore:n,criterion:s,peripheralResolution:i}=e;return n===null||t<=n||t>=n+s.promotionMargin?_e("small_score_gap",vs(s)):_e("small_score_gap",Yn(s,i,{kind:"interrupt",reason:"small_score_gap",resolution:i},["small score gaps resolve to the periphery instead of stealing focus immediately"]))},iE=2,ks=6,oE=e=>{let{candidate:t,criterion:n,sourceTrustAdjustment:s}=e,i=aE(s),o=Cv(t),a=Math.max(-ks,Math.min(ks,i+o));if(a===0)return et("source_trust");let c={activationThreshold:Math.max(0,n.activationThreshold-a),promotionMargin:Math.max(0,n.promotionMargin-a)},u=[...i>0?["durable source trust lowers the interrupt bar for this source"]:i<0?["low-trust source signals need a clearer margin before interrupting"]:[],...o>0?["explicit semantic evidence lowers the interrupt bar slightly"]:o<0?["inferred semantic evidence needs a clearer margin before interrupting"]:[]];return Yg("source_trust",c,u)};function aE(e){return e===0?0:Math.max(-ks,Math.min(ks,Math.trunc(e/iE)))}var cE=[G_,V_,H_,nE,Y_],lE=[tE,X_,oE,J_,rE,eE,sE],Zg=class{judgmentConfig;userProfile;memoryProfile;constructor(e={}){this.judgmentConfig=e.judgmentConfig,this.userProfile=e.userProfile,this.memoryProfile=e.memoryProfile}evaluateGates(e){return this.explainGates(e).verdict}explainGates(e){let t=this.buildPolicyGateInput(e),n=[];for(let i of cE){let o=i(t);if(n.push(o),o.kind==="verdict")return{verdict:o.verdict,evaluations:n}}return{verdict:{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!1,minimumLane:"next",minimumLaneIsSticky:!1,rationale:["urgent non-blocking work may compete for interruptive attention"]},evaluations:n}}evaluateInterruptCriterion(e,t,n,s,i,o={}){return this.explainInterruptCriterion(e,t,n,s,i,o).verdict}explainInterruptCriterion(e,t,n,s,i,o={}){let a=this.readInterruptCriterion(o.ambiguityDefaults),c=this.readPeripheralResolution(e,t),u=this.readSourceTrustAdjustment(e),p=[],m=[];for(let h of lE){let f=h(this.buildPolicyCriterionInput(e,t,n,s,i,a,u,c));if(m.push(f),f.kind==="adjust"){a=f.criterion,p.push(...f.rationale);continue}if(f.kind==="verdict")return{verdict:{...f.verdict,rationale:[...p,...f.verdict.rationale]},evaluations:m}}return{verdict:{criterion:a,peripheralResolution:null,ambiguity:null,rationale:p},evaluations:m}}readInterruptCriterion(e){return{activationThreshold:e?.nonBlockingActivationThreshold??this.judgmentConfig?.ambiguityDefaults?.nonBlockingActivationThreshold??W.ambiguity.nonBlockingActivationThreshold,promotionMargin:e?.promotionMargin??this.judgmentConfig?.ambiguityDefaults?.promotionMargin??W.ambiguity.promotionMargin}}readPeripheralResolution(e,t){return xg(e,t.minimumLane==="ambient"?"ambient":"queue")}readSourceTrustAdjustment(e){let t=e.source?.kind??e.source?.id;return t?this.memoryProfile?.sourceTrust?.[t]?.[e.consequence]?.trustAdjustment??0:0}buildPolicyGateInput(e){return{candidate:e,...this.judgmentConfig!==void 0?{judgmentConfig:this.judgmentConfig}:{},...this.userProfile!==void 0?{userProfile:this.userProfile}:{}}}buildPolicyCriterionInput(e,t,n,s,i,o,a,c){return{candidate:e,policyVerdict:t,evidence:n,candidateScore:s,currentScore:i,criterion:o,sourceTrustAdjustment:a,peripheralResolution:c}}},L=W.attentionValue,Jg=class{memoryProfile;constructor(e={}){this.memoryProfile=e.memoryProfile}scoreCandidate(e){let t=this.sourceTrustAdjustment(e),n=this.consequenceCalibrationAdjustment(e),s=this.responseAffinityAdjustment(e),i=this.contextCostAdjustment(e),o=this.deferralAffinityAdjustment(e),a={priority:uE(e.priority)*100,consequence:dE(e.consequence)*10,tone:pE(e.tone),blocking:e.blocking?1e3:0,heuristics:e.attentionScoreOffset??0,sourceTrust:t,consequenceCalibration:n,responseAffinity:s,contextCost:i,deferralAffinity:o},c=e.attentionRationale?[...e.attentionRationale]:[];return t!==0&&c.push("durable source trust adjusts this interaction's utility"),n>0&&c.push("memory suggests this consequence band is often understated and deserves more attention"),n<0&&c.push("memory suggests this consequence band is often overstated and should be tempered"),s>0&&c.push("memory suggests this kind of interaction usually resolves quickly"),i<0&&c.push("memory suggests this interaction usually needs extra context before action"),o>0&&c.push("memory suggests deferred interactions of this kind are usually resumed"),{total:a.priority+a.consequence+a.tone+a.blocking+a.heuristics+a.sourceTrust+a.consequenceCalibration+a.responseAffinity+a.contextCost+a.deferralAffinity,components:a,rationale:c}}scoreAttentionFrame(e,t={}){return{total:Oe(e,t),components:{attentionAdjustment:ag(e)}}}sourceTrustAdjustment(e){let t=e.source?.kind??e.source?.id;return t?this.memoryProfile?.sourceTrust?.[t]?.[e.consequence]?.trustAdjustment??0:0}responseAffinityAdjustment(e){let t=zc(e);if(!t)return 0;let n=this.memoryProfile?.toolFamilies?.[t];return!n||n.avgResponseLatencyMs===void 0||n.presentations<L.memorySufficiency.toolFamilyPresentations||n.responses<L.memorySufficiency.toolFamilyResponses?0:n.avgResponseLatencyMs<=L.responseAffinity.fastLatencyMs?L.responseAffinity.fastBoost:n.avgResponseLatencyMs<=L.responseAffinity.mediumLatencyMs?L.responseAffinity.mediumBoost:0}consequenceCalibrationAdjustment(e){let t=this.memoryProfile?.consequenceProfiles?.[e.consequence],n=t?.rejectionRate;if(n===void 0||(t?.reviewedCount??0)<L.memorySufficiency.consequenceReviewedCount)return 0;switch(e.consequence){case"low":return n>=L.consequenceCalibration.highRejectionRate?L.consequenceCalibration.adjustments.low.highRate:n>=L.consequenceCalibration.mediumRejectionRate?L.consequenceCalibration.adjustments.low.mediumRate:0;case"medium":return n>=L.consequenceCalibration.highRejectionRate?L.consequenceCalibration.adjustments.medium.highRate:n>=L.consequenceCalibration.mediumRejectionRate?L.consequenceCalibration.adjustments.medium.mediumRate:0;case"high":return n>=L.consequenceCalibration.highRejectionRate?L.consequenceCalibration.adjustments.high.highRate:n>=L.consequenceCalibration.mediumRejectionRate?L.consequenceCalibration.adjustments.high.mediumRate:0}}contextCostAdjustment(e){let t=zc(e);if(!t)return 0;let n=this.memoryProfile?.toolFamilies?.[t]?.contextExpansionRate;return n===void 0||(this.memoryProfile?.toolFamilies?.[t]?.presentations??0)<L.memorySufficiency.toolFamilyPresentations?0:n>=L.contextCost.highRate?L.contextCost.highPenalty:n>=L.contextCost.mediumRate?L.contextCost.mediumPenalty:0}deferralAffinityAdjustment(e){let t=zc(e);if(!t)return 0;let n=this.memoryProfile?.toolFamilies?.[t]?.returnAfterDeferralRate;return n===void 0||(this.memoryProfile?.toolFamilies?.[t]?.presentations??0)<L.memorySufficiency.toolFamilyPresentations?0:n>=L.deferralAffinity.highRate?L.deferralAffinity.highBoost:n>=L.deferralAffinity.mediumRate?L.deferralAffinity.mediumBoost:0}};function zc(e){return pl(e)}function uE(e){switch(e){case"background":return 0;case"normal":return 1;case"high":return 2}}function dE(e){switch(e){case"low":return 0;case"medium":return 1;case"high":return 2}}function pE(e){switch(e){case"ambient":return 0;case"focused":return 1;case"critical":return 2}}var mE=class{policyGates;utilityScore;queuePlanner;ambiguityDefaults;constructor(e=new Zg,t=new Jg,n=new qg,s={}){this.policyGates=e,this.utilityScore=t,this.queuePlanner=n,this.ambiguityDefaults=s.ambiguityDefaults}coordinate(e,t,n={}){return this.explain(e,t,n).decision}explain(e,t,n={}){let s=this.resolveEvidenceContext(e,n,t.timestamp),i=this.policyGates.explainGates(t),o=i.verdict,a=this.utilityScore.scoreCandidate(t),c=s.currentFrame?Oe(s.currentFrame,{now:t.timestamp}):null,u=s.pressureForecast;if(o.autoApprove){let f=[...o.rationale,"bounded approval work is auto-resolved instead of entering the attention surface"];return{decision:{kind:"auto_approve",candidate:t,response:{taskId:t.taskId,interactionId:t.interactionId,response:{kind:"approved"}}},policy:o,policyGateEvaluations:i.evaluations,utility:a,criterion:null,policyCriterionEvaluations:[],pressureForecast:u,attentionBurden:s.attentionBurden,candidateScore:a.total,currentScore:c,currentPriority:null,ambiguity:null,reasons:f,continuityEvaluations:[]}}let p=this.policyGates.explainInterruptCriterion(t,o,s,a.total,c,this.ambiguityDefaults!==void 0?{ambiguityDefaults:this.ambiguityDefaults}:{}),m=p.verdict;if(m.peripheralResolution){let f=[...o.rationale,...m.rationale];return{decision:{kind:m.peripheralResolution,candidate:t},policy:o,policyGateEvaluations:i.evaluations,utility:a,criterion:m,policyCriterionEvaluations:p.evaluations,pressureForecast:u,attentionBurden:s.attentionBurden,candidateScore:a.total,currentScore:c,currentPriority:s.currentFrame?le(s.currentFrame):null,ambiguity:m.ambiguity,reasons:f,continuityEvaluations:[]}}let h=this.queuePlanner.explain(s.currentFrame,t,{...s,policyVerdict:o,utility:a,pressureForecast:u,candidateScore:a.total,currentScore:c});return{decision:h.decision,policy:o,policyGateEvaluations:i.evaluations,utility:a,criterion:m,policyCriterionEvaluations:p.evaluations,pressureForecast:u,attentionBurden:s.attentionBurden,candidateScore:a.total,currentScore:h.currentScore,currentPriority:h.currentPriority,ambiguity:null,reasons:h.reasons,continuityEvaluations:h.continuityEvaluations??[]}}clear(){return this.queuePlanner.clear()}resolveEvidenceContext(e,t,n){return ml(e,As(t),gE(n))}};function gE(e){let t=Date.parse(e);return Number.isNaN(t)?0:t}function fE(e={}){return{userProfile:e.userProfile,baseMemoryProfile:e.memoryProfile??hE(),judgmentConfig:e.judgmentConfig,surfaceCapabilities:il(e.surfaceCapabilities),operatorPresence:e.operatorPresence??"present",responseExpiryMs:e.responseExpiryMs,timeSource:e.timeSource??Date.now}}function Wc(e){return new mE(new Zg({...e.userProfile!==void 0?{userProfile:e.userProfile}:{},...e.judgmentConfig!==void 0?{judgmentConfig:e.judgmentConfig}:{},memoryProfile:e.baseMemoryProfile}),new Jg({memoryProfile:e.baseMemoryProfile}),new qg({...e.judgmentConfig?.plannerDefaults!==void 0?{plannerDefaults:e.judgmentConfig.plannerDefaults}:{}}))}function il(e){let t=e??bs;return{topology:{...t.topology},responses:{...t.responses}}}function hE(){return{version:tt,operatorId:"default",updatedAt:gn(0),sessionCount:0}}function yE(e){switch(j("event.id",e.id),j("event.taskId",e.taskId),bl("event.timestamp",e.timestamp),e.source!==void 0&&j("event.source.id",e.source.id),e.type){case"task.started":case"task.updated":j("event.title",e.title);break;case"human.input.requested":j("event.interactionId",e.interactionId),j("event.title",e.title),j("event.summary",e.summary);break;case"task.completed":case"task.cancelled":break;default:return EE(e)}}function SE(e){switch(j("event.id",e.id),j("event.taskId",e.taskId),bl("event.timestamp",e.timestamp),e.source&&j("event.source.id",e.source.id),e.type){case"task.started":j("event.title",e.title);return;case"task.updated":j("event.title",e.title),vE("event.status",e.status);return;case"task.completed":return;case"task.cancelled":e.reason!==void 0&&j("event.reason",e.reason);return;case"human.input.requested":j("event.interactionId",e.interactionId),j("event.title",e.title),j("event.summary",e.summary),_E("event.request",e.request),e.riskHint!==void 0&&kE("event.riskHint",e.riskHint);return;default:return AE(e)}}function bE(e){switch(j("response.taskId",e.taskId),j("response.interactionId",e.interactionId),e.response.kind){case"acknowledged":case"approved":case"rejected":case"dismissed":return;case"option_selected":if(e.response.optionIds.length===0)throw new he("response.optionIds must contain at least one option id",{field:"response.optionIds"});return;case"text_submitted":j("response.text",e.response.text);return;case"form_submitted":if(e.response.values===null||typeof e.response.values!="object"||Array.isArray(e.response.values))throw new he("response.values must be an object",{field:"response.values"});return}}function IE(e){j("signal.taskId",e.taskId),j("signal.interactionId",e.interactionId),bl("signal.timestamp",e.timestamp),e.source!==void 0&&j("signal.source.id",e.source.id)}function j(e,t){if(typeof t!="string"||t.trim().length===0)throw new he(`${e} must be a non-empty string`,{field:e})}function bl(e,t){if(j(e,t),Number.isNaN(Date.parse(t)))throw new he(`${e} must be a valid ISO timestamp`,{field:e})}function vE(e,t){if(!["running","blocked","waiting","completed","failed"].includes(t))throw new he(`${e} must be a valid task status`,{field:e})}function kE(e,t){if(!["low","medium","high"].includes(t))throw new he(`${e} must be a valid consequence level`,{field:e})}function _E(e,t){if(!t||typeof t!="object"||!("kind"in t))throw new he(`${e} must be a valid human input request`,{field:e});switch(t.kind){case"approval":return;case"choice":if(!Array.isArray(t.options)||t.options.length===0)throw new he(`${e}.options must contain at least one option`,{field:`${e}.options`});return;case"form":if(!Array.isArray(t.fields)||t.fields.length===0)throw new he(`${e}.fields must contain at least one field`,{field:`${e}.fields`});return;default:throw new he(`${e} must have a supported request kind`,{field:e})}}function EE(e){throw new he(`Unhandled ApertureEvent in validation: ${JSON.stringify(e)}`,{field:"event.type",code:"unsupported_event_variant"})}function AE(e){throw new he(`Unhandled SourceEvent in validation: ${JSON.stringify(e)}`,{field:"event.type",code:"unsupported_event_variant"})}var wE=Symbol("aperture.internal.readHealth"),Xg=class Qg{listeners=new m_;taskViews=new Gk;heuristics=new mI;evaluation=new Kv;traceRecorder=new Zk;coordinator;planner=new Yv;attentionEvidence;frameLifecycle;profileStore;markdownRootDir;baseMemoryProfile;userProfile;judgmentConfig;surfaceCapabilities;operatorPresence;responseExpiryMs;clock;signals;episodes;operatorEngagement;reloadInFlight=null;constructor(t={}){let n=fE(t);this.markdownRootDir=t.markdownRootDir,this.profileStore=t.profileStore,this.userProfile=n.userProfile,this.judgmentConfig=n.judgmentConfig,this.surfaceCapabilities=n.surfaceCapabilities,this.operatorPresence=n.operatorPresence,this.responseExpiryMs=n.responseExpiryMs,this.clock=Es(n.timeSource),this.signals=new Qv({clock:this.clock}),this.episodes=new Uv({clock:this.clock}),this.operatorEngagement=new o_(n.timeSource),this.baseMemoryProfile=n.baseMemoryProfile,this.coordinator=Wc(n),this.attentionEvidence=new Uk({signals:this.signals,episodes:this.episodes,clock:this.clock,getTaskView:s=>this.getTaskView(s),getAttentionView:()=>this.getAttentionView(),getOperatorPresence:()=>this.getOperatorPresence(),getSurfaceCapabilities:()=>this.getSurfaceCapabilities()}),this.frameLifecycle=new zk({taskViews:this.taskViews,planner:this.planner,episodes:this.episodes,clock:this.clock,responseExpiryMs:this.responseExpiryMs,getAttentionView:()=>this.getAttentionView(),recordSignal:s=>this.recordSignal(s),clearOperatorEngagement:(s,i)=>this.operatorEngagement.clear(s,i),notifyFrame:(s,i)=>this.listeners.emitFrame(s,i),notifyTaskView:(s,i)=>this.listeners.emitTaskView(s,i),notifyAttentionView:()=>this.listeners.emitAttentionView(this.getAttentionView()),emitResponse:s=>this.listeners.emitResponse(s)})}static async fromMarkdown(t){let{profileStore:n,markdownRootDir:s,userProfile:i,memoryProfile:o,judgmentConfig:a}=await j_(t);return new Qg({userProfile:i,memoryProfile:o,judgmentConfig:a,profileStore:n,markdownRootDir:s})}async reloadMarkdown(){if(!this.profileStore||!this.markdownRootDir)return!1;if(this.reloadInFlight)return this.reloadInFlight;this.reloadInFlight=this.performMarkdownReload();try{return await this.reloadInFlight}finally{this.reloadInFlight=null}}publishSourceEvent(t){return SE(t),this.publishPreparedEvent(v_(t))}publish(t,n={}){return yE(t),this.publishPreparedEvent(k_(t,n))}publishPreparedEvent(t){let{finalizedEvent:n,originalEvent:s,transitionKind:i}=t,o=i_(i,s,n),a=this.getFrame(n.taskId),c=this.attentionEvidence.assemble(n.taskId,a),u=c.taskSignalSummary,p=c.globalSignalSummary,m=c.attentionView,h=this.evaluation.evaluate(n);switch(h.kind){case"noop":return this.notifyTrace(this.traceRecorder.recordNoop(Kc({timestamp:this.nowIso(),event:n,eventTransition:o,evidence:c,taskView:c.currentTaskView,attentionView:m}))),null;case"clear":{let f=this.frameLifecycle.applyClear(n.taskId),b=this.getAttentionView();return this.notifyTrace(this.traceRecorder.recordClear(Kc({timestamp:this.nowIso(),event:n,eventTransition:o,evidence:c,taskView:this.getTaskView(n.taskId),attentionView:b}),n.taskId)),f}case"candidate":{let f=this.prepareCandidateForJudgment(h.candidate,u,p),b=this.explainCandidateDecision(n.taskId,f,c),v=this.applyCandidateDecision(n.taskId,b,c,m),N=this.getAttentionView();return this.notifyTrace(this.traceRecorder.recordCandidate(Kc({timestamp:this.nowIso(),event:n,eventTransition:o,evidence:c,taskView:this.getTaskView(n.taskId),attentionView:N}),{original:h.candidate,adjusted:f,explanation:b,result:v})),v}}}prepareCandidateForJudgment(t,n,s){return this.episodes.assign(this.heuristics.apply(t,n,s))}explainCandidateDecision(t,n,s){let i=this.attentionEvidence.augmentContinuitySignalSummary(t,n,s);return this.coordinator.explain(s.currentFrame,n,i)}applyCandidateDecision(t,n,s,i){switch(n.decision.kind){case"auto_approve":return this.frameLifecycle.applyAutoResponse(n.decision.candidate,n.decision.response);case"clear":return this.frameLifecycle.applyClear(t);case"ambient":return this.frameLifecycle.materializePeripheralFrame(n.decision.candidate,"ambient",i);case"queue":return this.frameLifecycle.materializePeripheralFrame(n.decision.candidate,"queue",i);case"activate":return this.applyActivationDecision(n,s,i)}}applyActivationDecision(t,n,s){if(t.decision.kind!=="activate")return null;let i=t.decision.candidate;if(this.frameLifecycle.shouldRetireSupersededEpisodeFrames(i,s))return this.frameLifecycle.commitFrame(this.frameLifecycle.applyResponseExpiry(this.planner.plan(i,n.currentFrame)),this.frameLifecycle.findSupersededEpisodeFrames(i,s));let o=i.episodeId?this.frameLifecycle.findPeripheralEpisodeFrame(i.episodeId,s):null;return o&&this.frameLifecycle.shouldPromotePeripheralEpisodeFrame(t)?this.frameLifecycle.promotePeripheralEpisodeFrame(i,o.frame):o?this.frameLifecycle.materializePeripheralFrame(i,fl(i,t.policy,n.surfaceCapabilities),s):this.frameLifecycle.commitFrame(this.frameLifecycle.applyResponseExpiry(this.planner.plan(i,n.currentFrame)))}getFrame(t){return this.taskViews.get(t).now??null}subscribe(t,n){return this.listeners.subscribeFrame(t,n,this.getFrame(t))}subscribeTaskView(t,n){return this.listeners.subscribeTaskView(t,n,this.getTaskView(t))}subscribeAttentionView(t){return this.listeners.subscribeAttentionView(t,this.getAttentionView())}onResponse(t){return this.listeners.onResponse(t)}onSignal(t){return this.listeners.onSignal(t)}onTrace(t){return this.listeners.onTrace(t)}[tl](t){return this.listeners[tl](t)}submit(t){bE(t),this.frameLifecycle.submit(t)}getTaskView(t){return this.taskViews.get(t)}getAttentionView(){return aI(this.taskViews.values(),{globalAttentionState:this.getAttentionState(),operatorPresence:this.getOperatorPresence(),focusedInteractionId:this.readOperatorEngagementInteractionId()})}getSignals(t){return this.signals.list(t)}getSignalSummary(t){return this.signals.summarize(t)}getAttentionState(t){return Pt(this.signals.summarize(t))}[wE](){return{attentionState:this.getAttentionState(),operatorPresence:this.getOperatorPresence(),responseExpiryMs:this.responseExpiryMs??null,surfaceCapabilities:this.getSurfaceCapabilities(),listeners:this.listeners.getHealthSnapshot(),stores:{taskViews:this.taskViews.stats(),signals:this.signals.stats(),episodes:this.episodes.stats()}}}getSurfaceCapabilities(){return il(this.surfaceCapabilities)}getOperatorPresence(){return this.operatorPresence}setOperatorPresence(t){this.operatorPresence=t}engage(t,n,s={}){if(!this.frameLifecycle.findFrameByInteractionId(t,n))return;let i=this.getAttentionView();this.operatorEngagement.engage(t,n,s,()=>{let a=this.getAttentionView();this.operatorEngagement.clear(t,n);let c=this.getAttentionView();ng(a,c)||this.notifyAttentionView()});let o=this.getAttentionView();ng(i,o)||this.notifyAttentionView()}setSurfaceCapabilities(t){this.surfaceCapabilities=il(t)}snapshotMemoryProfile(t=this.nowIso()){return Lg(this.baseMemoryProfile,this.signals.list(),t)}async checkpointMemory(t=this.nowIso()){let n=await $_({profileStore:this.profileStore,memoryProfile:this.baseMemoryProfile,signals:this.signals.list(),now:t});return n?(this.baseMemoryProfile=n,this.coordinator=Wc({userProfile:this.userProfile,baseMemoryProfile:this.baseMemoryProfile,judgmentConfig:this.judgmentConfig}),n):null}markViewed(t,n,s={}){let i=this.frameLifecycle.findFrame(t,n);this.recordSignal(ds("viewed",t,n,this.nowIso(),i,s))}markTimedOut(t,n,s={}){let i=this.frameLifecycle.findFrame(t,n);this.recordSignal(ds("timed_out",t,n,this.nowIso(),i,s))}markContextExpanded(t,n,s={}){let i=this.frameLifecycle.findFrame(t,n);this.recordSignal(ds("context_expanded",t,n,this.nowIso(),i,s))}markContextSkipped(t,n,s={}){let i=this.frameLifecycle.findFrame(t,n);this.recordSignal(ds("context_skipped",t,n,this.nowIso(),i,s))}recordSignal(t){IE(t),this.signals.record(t),this.listeners.emitSignal(t)}notifyFrame(t,n){this.listeners.emitFrame(t,n)}notifyTaskView(t,n){this.listeners.emitTaskView(t,n)}notifyAttentionView(){this.listeners.emitAttentionView(this.getAttentionView())}readOperatorEngagementInteractionId(){return this.operatorEngagement.readFocusedInteractionId((t,n)=>this.frameLifecycle.findFrameByInteractionId(t,n)!==null)}notifyTrace(t){this.listeners.emitTrace(t)}nowIso(){return this.clock.nowIso()}async performMarkdownReload(){let{userProfile:t,memoryProfile:n,judgmentConfig:s}=await q_({profileStore:this.profileStore,markdownRootDir:this.markdownRootDir,userProfile:this.userProfile,memoryProfile:this.baseMemoryProfile,judgmentConfig:this.judgmentConfig}),i=Wc({userProfile:t,baseMemoryProfile:n,judgmentConfig:s});return this.userProfile=t,this.baseMemoryProfile=n,this.judgmentConfig=s,this.coordinator=i,!0}};function Il(e){return e?{id:e.id,taskId:e.taskId,interactionId:e.interactionId,source:e.source,version:e.version,mode:e.mode,tone:e.tone,consequence:e.consequence,title:e.title,summary:e.summary,context:e.context,responseSpec:e.responseSpec,provenance:e.provenance,timing:e.timing,metadata:e.metadata}:null}function ue(e){return{companyId:e,updatedAt:new Date().toISOString(),now:null,next:[],ambient:[],counts:{now:0,next:0,ambient:0,total:0}}}function nt(){return[]}function Q(e){return{companyId:e,updatedAt:new Date().toISOString(),frames:{}}}function Se(e,t,n,s){let i=t,o=Il("now"in t?t.now:i.active??null),a=("next"in t?t.next:i.queued??[]).map(u=>Il(u)).filter(u=>u!==null),c=t.ambient.map(u=>Il(u)).filter(u=>u!==null);return{companyId:e,updatedAt:s??new Date().toISOString(),now:o,next:a,ambient:c,counts:{now:o?1:0,next:a.length,ambient:c.length,total:(o?1:0)+a.length+c.length},...n?{lastEvent:n}:{}}}function fn(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function tf(e){let t=fn(e);return t&&typeof t.taskId=="string"&&typeof t.interactionId=="string"?t:null}function ef(e){return Array.isArray(e)?e.map(tf).filter(t=>t!==null):[]}function hn(e,t){let n=fn(t);if(!n||n.companyId!==e||typeof n.updatedAt!="string")return null;let s=fn(n.counts),i=fn(n.review),o=fn(i?.unread),a=tf(n.now??n.active??null),c=ef(n.next??n.queued??[]),u=ef(n.ambient);return{companyId:e,updatedAt:n.updatedAt,now:a,next:c,ambient:u,counts:{now:typeof s?.now=="number"?s.now:typeof s?.active=="number"?s.active:a?1:0,next:typeof s?.next=="number"?s.next:typeof s?.queued=="number"?s.queued:c.length,ambient:typeof s?.ambient=="number"?s.ambient:u.length,total:typeof s?.total=="number"?s.total:(a?1:0)+c.length+u.length},...i?{review:{...typeof i.lastSeenAt=="string"?{lastSeenAt:i.lastSeenAt}:{},unread:{now:typeof o?.now=="number"?o.now:typeof o?.active=="number"?o.active:0,next:typeof o?.next=="number"?o.next:typeof o?.queued=="number"?o.queued:0,ambient:typeof o?.ambient=="number"?o.ambient:0,total:typeof o?.total=="number"?o.total:0}}}:{},...fn(n.lastEvent)?{lastEvent:{eventType:String(n.lastEvent.eventType),...typeof n.lastEvent.entityId=="string"?{entityId:n.lastEvent.entityId}:{},...typeof n.lastEvent.entityType=="string"?{entityType:n.lastEvent.entityType}:{}}}:{}}}var xs={topology:{supportsAmbient:!0},responses:{supportsSingleChoice:!0,supportsMultipleChoice:!1,supportsForm:!1,supportsTextResponse:!0}};var xE=100,vl=100,nf=1800*1e3,TE=15e3,Rs=class{sessions=new Map;getHealth(){return{trackedCompanies:this.sessions.size,maxCompanySessions:vl,idleSessionTtlMs:nf,faultedCompanies:[...this.sessions.values()].filter(t=>t.persistence.state==="faulted").length,hostCacheEntries:[...this.sessions.values()].reduce((t,n)=>t+n.hostCache.size,0),cachedReconciliations:[...this.sessions.values()].filter(t=>t.reconciledCandidates!==null).length}}getCoreDiagnostics(t){let n=this.sessions.get(t);if(!n)return null;this.touchSession(n);let s=this.syncSnapshotFromCore(t,n),i=s.now?{taskId:s.now.taskId,interactionId:s.now.interactionId,signalSummary:n.core.getSignalSummary(s.now.taskId),attentionState:n.core.getAttentionState(s.now.taskId)}:null;return{eventCount:n.eventCount,persistence:{...n.persistence},surfaceCapabilities:n.core.getSurfaceCapabilities(),operatorPresence:n.core.getOperatorPresence(),globalSignalSummary:n.core.getSignalSummary(),globalAttentionState:n.core.getAttentionState(),memoryProfile:n.core.snapshotMemoryProfile(s.updatedAt),ledger:CE(n.ledger),host:{cacheEntries:n.hostCache.size,hostDataRevision:n.hostDataRevision,approvalRecords:n.approvals.records?.length??0,approvalsDirty:n.approvals.dirty,approvalAdapterLastLoadedAt:n.approvals.lastLoadedAt,approvalAdapterLastError:n.approvals.lastError},currentNowTask:i}}hasSession(t){return this.sessions.has(t)}hydrate(t,n){let s=this.sessions.get(t);if(s)return this.touchSession(s),{snapshot:s.snapshot??Se(t,s.core.getAttentionView()),review:s.review};let i=this.buildSession(t,n);return this.sessions.set(t,i),this.pruneSessions(),{snapshot:i.snapshot??Se(t,i.core.getAttentionView()),review:i.review}}ingest(t,n,s){let i=this.ensureSession(t),o=i.core.publish(n);return i.eventCount+=1,i.snapshot=Se(t,i.core.getAttentionView(),s),{frame:o,snapshot:i.snapshot}}submit(t,n,s){let i=this.ensureSession(t);return i.core.submit(n),i.snapshot=Se(t,i.core.getAttentionView(),s),i.snapshot}getSnapshot(t){let n=this.sessions.get(t);return n?(this.touchSession(n),this.syncSnapshotFromCore(t,n)):null}getLedger(t){let n=this.sessions.get(t);return n&&this.touchSession(n),[...n?.ledger??[]]}getReview(t){let n=this.sessions.get(t);return n?(this.touchSession(n),n.review):null}hasPendingPersistence(t){return this.sessions.get(t)?.pendingPersistence??!1}markPersistencePending(t){let n=this.ensureSession(t);n.pendingPersistence=!0}getPersistableState(t){let n=this.sessions.get(t);return n?(this.touchSession(n),{ledger:this.getLedger(t),snapshot:this.syncSnapshotFromCore(t,n),review:n.review}):null}setReview(t,n){let s=this.ensureSession(t);return s.review=n,this.invalidateReconciled(t),s.review}getTraces(t){let n=this.sessions.get(t);return n&&this.touchSession(n),[...n?.traces??[]]}getCachedReconciledCandidates(t,n){let s=this.sessions.get(t);s&&this.touchSession(s);let i=s?.reconciledCandidates;return!i||i.key!==n?null:i.expiresAt<=Date.now()?(s&&(s.reconciledCandidates=null,s.hostDataRevision+=1),null):[...i.candidates]}setCachedReconciledCandidates(t,n,s){let i=this.ensureSession(t);return i.reconciledCandidates={key:n,candidates:[...s],expiresAt:Date.now()+TE},[...s]}getReconciledRevision(t){return this.sessions.get(t)?.hostDataRevision??0}invalidateReconciled(t){let n=this.sessions.get(t);n&&(n.reconciledCandidates=null,n.hostDataRevision+=1)}getCachedHostValue(t,n){let s=this.sessions.get(t);if(!s)return null;this.touchSession(s);let i=s.hostCache.get(n);return i?i.expiresAt<=Date.now()?(s.hostCache.delete(n),null):i.value:null}setCachedHostValue(t,n,s,i){return this.ensureSession(t).hostCache.set(n,{value:s,expiresAt:Date.now()+Math.max(1,i)}),s}invalidateHostCache(t,n={}){let s=this.sessions.get(t);if(!s)return;let{keys:i=[],prefixes:o=[],bumpRevision:a=!0}=n;for(let c of i)s.hostCache.delete(c);if(o.length>0)for(let c of[...s.hostCache.keys()])o.some(u=>c.startsWith(u))&&s.hostCache.delete(c);a&&this.invalidateReconciled(t)}getApprovals(t){return this.sessions.get(t)?.approvals.records??null}setApprovals(t,n){let s=this.ensureSession(t);return s.approvals={records:[...n],dirty:!1,lastLoadedAt:new Date().toISOString(),lastError:void 0},[...n]}approvalsDirty(t){let n=this.sessions.get(t);return n&&this.touchSession(n),n?.approvals.dirty??!0}invalidateApprovals(t){let n=this.sessions.get(t);n&&(n.approvals={records:n.approvals.records,dirty:!0,lastLoadedAt:n.approvals.lastLoadedAt,lastError:n.approvals.lastError})}markApprovalAdapterFailure(t,n){let s=this.ensureSession(t);s.approvals={records:s.approvals.records,dirty:!0,lastLoadedAt:s.approvals.lastLoadedAt,lastError:n}}restore(t,n){let s=this.buildSession(t,n,this.sessions.get(t));return this.sessions.set(t,s),{snapshot:s.snapshot??Se(t,s.core.getAttentionView()),review:s.review}}markPersistenceHealthy(t){let n=this.sessions.get(t);n&&(n.pendingPersistence=!1,n.persistence={state:"healthy",updatedAt:new Date().toISOString()})}markPersistenceFault(t,n){let s=this.ensureSession(t);s.persistence={state:"faulted",updatedAt:new Date().toISOString(),lastError:n}}appendLedgerEntry(t,n){let s=this.ensureSession(t);return s.ledger=[...s.ledger,n],this.getLedger(t)}applyEvent(t,n){let s=this.ensureSession(t),i=s.ledger,o=s.snapshot,a=s.eventCount;s.ledger=[...s.ledger,n];try{let c=n.sourceEvent?s.core.publishSourceEvent(n.sourceEvent):s.core.publish(n.apertureEvent);return s.eventCount+=1,s.snapshot=Se(t,s.core.getAttentionView(),n.source,n.occurredAt),s.reconciledCandidates=null,{frame:c,ledger:this.getLedger(t),snapshot:s.snapshot}}catch(c){throw s.ledger=i,s.snapshot=o,s.eventCount=a,c}}applyResponse(t,n){let s=this.ensureSession(t),i=s.ledger,o=s.snapshot,a=s.eventCount;s.ledger=[...s.ledger,n];try{return s.core.submit(n.apertureResponse),s.snapshot=Se(t,s.core.getAttentionView(),n.source,n.occurredAt),s.reconciledCandidates=null,{ledger:this.getLedger(t),snapshot:s.snapshot}}catch(c){throw s.ledger=i,s.snapshot=o,s.eventCount=a,c}}applyOverlayResponse(t,n){let s=this.ensureSession(t);return s.ledger=[...s.ledger,n],s.reconciledCandidates=null,{ledger:this.getLedger(t),snapshot:this.syncSnapshotFromCore(t,s)}}applySignal(t,n){let s=this.ensureSession(t),i=this.syncSnapshotFromCore(t,s);s.ledger=[...s.ledger,n],s.core.recordSignal(n.apertureSignal);let o=this.syncSnapshotFromCore(t,s);return{ledger:this.getLedger(t),snapshot:o,changed:!Ts(i,o)}}replaceLedger(t,n){let s=this.ensureSession(t);return s.ledger=[...n],s.reconciledCandidates=null,this.getLedger(t)}rebuildFromLedger(t,n){let s=this.sessions.get(t)?.review??Q(t),i=this.buildSession(t,{ledger:n,review:s},this.sessions.get(t));return this.sessions.set(t,i),i.snapshot??Se(t,i.core.getAttentionView())}getCompanyCount(){return this.sessions.size}engage(t,n,s,i={}){let o=this.ensureSession(t),a=this.syncSnapshotFromCore(t,o);o.core.engage(n,s,i);let c=this.syncSnapshotFromCore(t,o);return{snapshot:c,changed:!Ts(a,c)}}markViewed(t,n,s,i={}){let o=this.ensureSession(t),a=this.syncSnapshotFromCore(t,o);o.core.markViewed(n,s,i);let c=this.syncSnapshotFromCore(t,o);return{snapshot:c,changed:!Ts(a,c)}}markContextExpanded(t,n,s,i={}){let o=this.ensureSession(t),a=this.syncSnapshotFromCore(t,o);o.core.markContextExpanded(n,s,i);let c=this.syncSnapshotFromCore(t,o);return{snapshot:c,changed:!Ts(a,c)}}setOperatorPresence(t,n){let s=this.ensureSession(t);return s.core.setOperatorPresence(n),this.touchSession(s),s.core.getOperatorPresence()}ensureSession(t){let n=this.sessions.get(t);return n?(this.touchSession(n),n):(n=this.createSession(t),this.sessions.set(t,n),this.pruneSessions(),n)}buildSession(t,n,s){let i=this.createSession(t);if(i.ledger=[...n.ledger],i.review=n.review??Q(t),i.approvals={records:s?.approvals.records?[...s.approvals.records]:null,dirty:s?.approvals.dirty??!0,lastLoadedAt:s?.approvals.lastLoadedAt,lastError:s?.approvals.lastError},i.hostCache=s?new Map(s.hostCache):new Map,i.hostDataRevision=s?.hostDataRevision??0,i.persistence=s?.persistence??kl(),i.traces=s?[...s.traces]:[],n.ledger.length>0){let o,a;for(let c of n.ledger)o=c.source,a=c.occurredAt,c.kind==="event"?(c.sourceEvent?i.core.publishSourceEvent(c.sourceEvent):i.core.publish(c.apertureEvent),i.eventCount+=1):c.kind==="response"?i.core.submit(c.apertureResponse):c.kind==="signal"&&i.core.recordSignal(c.apertureSignal);i.snapshot=Se(t,i.core.getAttentionView(),o,a)}else i.snapshot=n.snapshot??Se(t,i.core.getAttentionView());return i.persistence=s?.persistence?.state==="faulted"?s.persistence:kl(),i}createSession(t){let n=new Xg({surfaceCapabilities:xs}),s=Date.now(),i={core:n,snapshot:null,ledger:nt(),review:Q(t),pendingPersistence:!1,eventCount:0,traces:[],reconciledCandidates:null,approvals:{records:null,dirty:!0},hostCache:new Map,hostDataRevision:0,persistence:kl(),lastTouchedAt:s};return n.onTrace(o=>{i.traces=[...i.traces.slice(-(xE-1)),o]}),i}touchSession(t){t.lastTouchedAt=Date.now()}pruneSessions(){let t=Date.now();for(let[s,i]of this.sessions.entries())t-i.lastTouchedAt>nf&&this.sessions.delete(s);if(this.sessions.size<=vl)return;let n=[...this.sessions.entries()].sort((s,i)=>s[1].lastTouchedAt-i[1].lastTouchedAt);for(;this.sessions.size>vl&&n.length>0;){let[s]=n.shift();this.sessions.delete(s)}}syncSnapshotFromCore(t,n){let s=n.core.getAttentionView(),i=n.snapshot;if(i&&RE(i,s))return i;let o=Se(t,s,i?.lastEvent);return n.snapshot=o,o}};function Ts(e,t){return!e||!t?e===t:e.now?.interactionId===t.now?.interactionId&&Cs(e.next,t.next)&&Cs(e.ambient,t.ambient)}function RE(e,t){return e.now?.interactionId===t.now?.interactionId&&Cs(e.next,t.next)&&Cs(e.ambient,t.ambient)}function Cs(e,t){return e.length===t.length&&e.every((n,s)=>n.interactionId===t[s]?.interactionId)}function CE(e){return{entries:e.length,eventEntries:e.filter(t=>t.kind==="event").length,responseEntries:e.filter(t=>t.kind==="response").length,overlayResponseEntries:e.filter(t=>t.kind==="overlay-response").length,signalEntries:e.filter(t=>t.kind==="signal").length,replayStrategy:"full-ledger",compactionRecommended:e.length>2e3}}function kl(){return{state:"healthy",updatedAt:new Date().toISOString()}}function rt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function Ne(e){return typeof e=="string"&&e.trim().length>0?e:void 0}function _l(e){return e===null?null:Ne(e)}function Ps(e){if(!Array.isArray(e))return;let t=e.filter(n=>typeof n=="string"&&n.trim().length>0);return t.length>0?t:void 0}function PE(e){if(!Array.isArray(e))return;let t=e.filter(n=>{if(typeof n!="object"||n===null)return!1;let s=n;return s.kind==="same_issue"||s.kind==="resolves"||s.kind==="supersedes"||s.kind==="repeats"||s.kind==="escalates"});return t.length>0?t:void 0}function er(e){let t=rt(e.metadata),n=rt(t?.attention),s=rt(t?.semantic),i=rt(t?.episode),o=rt(t?.issueIntelligence),a=rt(t?.decision);return{entityType:Ne(t?.entityType),issueStatus:Ne(t?.issueStatus),issuePriority:Ne(t?.issuePriority),approvalStatus:Ne(t?.approvalStatus),approvalType:Ne(t?.approvalType),agentStatus:Ne(t?.agentStatus),pauseReason:_l(t?.pauseReason),liveReconciled:typeof t?.liveReconciled=="boolean"?t.liveReconciled:void 0,activityPath:Ne(t?.activityPath),attention:n?{rationale:Ps(n.rationale)}:void 0,semantic:s?{confidence:s.confidence==="low"||s.confidence==="medium"||s.confidence==="high"?s.confidence:void 0,relationHints:PE(s.relationHints)}:void 0,episode:i?{size:typeof i.size=="number"?i.size:void 0,state:Ne(i.state)}:void 0,issueIntelligence:o?{matchedRuleIds:Ps(o.matchedRuleIds),owner:_l(o.owner),ownerKind:o.ownerKind==="agent"||o.ownerKind==="human"?o.ownerKind:o.ownerKind===null?null:void 0,blockingTarget:_l(o.blockingTarget)}:void 0,decision:a?{owner:a.owner==="aperture_core"||a.owner==="paperclip_reconciliation"||a.owner==="approval_overlay"||a.owner==="display_merge"?a.owner:void 0,lane:a.lane==="now"||a.lane==="next"||a.lane==="ambient"?a.lane:void 0,sourcePolicy:Ne(a.sourcePolicy),rationale:Ps(a.rationale),promotedFromLane:a.promotedFromLane==="next"||a.promotedFromLane==="ambient"?a.promotedFromLane:void 0}:void 0}}function $t(e,t){let n=rt(e.metadata)??{},s=rt(n.decision)??{},i=[...Ps(s.rationale)??[],...t.rationale??[]].filter((o,a,c)=>c.indexOf(o)===a);return{...e,metadata:{...n,decision:{...s,...t,...i.length>0?{rationale:i}:{}}}}}function El(e){return{taskId:e.taskId,interactionId:e.interactionId,response:e.action==="dismiss"?{kind:"dismissed"}:e.action==="approve"?{kind:"approved"}:e.action==="reject"?{kind:"rejected"}:e.action==="request-revision"?{kind:"rejected",reason:"revision requested"}:{kind:"acknowledged"}}}function Al(e,t){let n=e.trim();if(!n)throw new Error(`${t} is required.`);return n}function rf(e){try{let t=decodeURIComponent(e);return t.trim().length>0?t:null}catch{return null}}function Le(e,t){let n=Al(e,"task kind"),s=Al(t,"task id");return`${encodeURIComponent(n)}:${encodeURIComponent(s)}`}function tr(e){if(typeof e!="string")return null;let t=e.indexOf(":");if(t<=0||t>=e.length-1)return null;let n=rf(e.slice(0,t)),s=rf(e.slice(t+1));return!n||!s?null:{kind:n,id:s}}function sf(e){return tr(e)?.kind??null}function of(e,t){return tr(e)?.kind===t}function Me(e,t){let n=Al(t,"interaction step");return`${e}:${encodeURIComponent(n)}`}function OE(e){return e instanceof Error?e.message.toLowerCase().includes("private/reserved ranges"):!1}function af(e){let t=typeof e.paperclipApiBase=="string"?e.paperclipApiBase.trim():"";if(t.length===0)return null;let n=new URL(t);if(n.protocol!=="http:"&&n.protocol!=="https:")throw new Error("paperclipApiBase must be an http(s) URL.");return n.toString()}async function cf(e,t,n,s={}){let{expectJson:i=!0,retries:o=0,headers:a,...c}=s,u=af(t);if(!u)throw new Error("Paperclip approval API base is not configured.");let p=new URL(n,u).toString(),m=null;for(let h=0;h<=o;h+=1)try{let f=await e.http.fetch(p,{...c,headers:{Accept:"application/json","X-Requested-With":"XMLHttpRequest",...a??{}}});if(!f.ok){let b=await f.text().catch(()=>"");throw new Error(`Request failed (${f.status})${b?`: ${b.trim()}`:""}`)}return i?await f.json():void 0}catch(f){if(m=f instanceof Error?f:new Error(String(f)),h>=o)break;await new Promise(b=>setTimeout(b,250*(h+1)))}throw m??new Error("Request failed.")}async function lf(e,t,n){if(!af(n))return[];try{return await cf(e,n,`/api/companies/${t}/approvals?status=pending`,{method:"GET",retries:2})}catch(s){if(OE(s))return[];throw s}}async function uf(e,t,n,s){let i=n==="request-revision"?`/api/approvals/${t}/request-revision`:`/api/approvals/${t}/${n}`;await cf(e,s,i,{method:"POST",expectJson:!1,headers:{"Content-Type":"application/json"},body:JSON.stringify({})})}var NE=1,LE=2,pf=3;function Os(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function ME(e){return!e||typeof e!="object"?!1:typeof e.eventType=="string"}function DE(e){if(!e||typeof e!="object")return!1;let t=e;return t.kind!=="event"&&t.kind!=="response"&&t.kind!=="overlay-response"&&t.kind!=="signal"||typeof t.id!="string"||typeof t.occurredAt!="string"||!ME(t.source)?!1:t.kind==="event"?!!t.apertureEvent&&typeof t.apertureEvent=="object":t.kind==="response"?!!t.apertureResponse&&typeof t.apertureResponse=="object":t.kind==="overlay-response"?!!t.apertureResponse&&typeof t.apertureResponse=="object"&&!!t.overlay&&typeof t.overlay=="object":!!t.apertureSignal&&typeof t.apertureSignal=="object"}function yn(e){return Array.isArray(e)&&e.every(DE)}function nr(e,t){if(!e||typeof e!="object")return!1;let n=e;return n.companyId!==t||typeof n.updatedAt!="string"||!n.frames||typeof n.frames!="object"?!1:Object.values(n.frames).every(s=>{if(!s||typeof s!="object")return!1;let i=s;return(i.lastSeenAt===void 0||typeof i.lastSeenAt=="string")&&(i.suppressedAt===void 0||typeof i.suppressedAt=="string")})}function mf(e,t){let n=t.snapshot??ue(e),s=t.review??Q(e);return{schemaVersion:pf,payload:{companyId:e,ledger:[...t.ledger],snapshot:n,review:s,meta:Ns(t.ledger)}}}function gf(e,t){let n=Os(t);if(!n)return null;let s=n.schemaVersion;return s===pf||s===LE?df(e,n):s===NE?UE(e,n):s===void 0?FE(e,n):null}function Ns(e,t=new Date().toISOString()){let n=e.length;return{persistedAt:t,ledgerEntries:n,eventEntries:e.filter(s=>s.kind==="event").length,responseEntries:e.filter(s=>s.kind==="response").length,overlayResponseEntries:e.filter(s=>s.kind==="overlay-response").length,signalEntries:e.filter(s=>s.kind==="signal").length,replayStrategy:"full-ledger",compactionRecommended:n>2e3}}function df(e,t){let n=Os(t.payload);if(!n||n.companyId!==e)return null;let s=yn(n.ledger)?n.ledger:nt(),i=hn(e,n.snapshot),o=nr(n.review,e)?n.review:Q(e);return i?{companyId:e,ledger:s,snapshot:i,review:o,meta:jE(n.meta,s)}:null}function UE(e,t){let n=Os(t.payload);if(!n||n.companyId!==e)return null;let s=yn(n.ledger)?n.ledger:nt(),i=hn(e,n.snapshot),o=nr(n.review,e)?n.review:Q(e);return i?{companyId:e,ledger:s,snapshot:i,review:o,meta:Ns(s)}:null}function FE(e,t){if(t.companyId!==e)return null;let n=yn(t.ledger)?t.ledger:nt(),s=hn(e,t.snapshot),i=nr(t.review,e)?t.review:Q(e);return s?{companyId:e,ledger:n,snapshot:s,review:i,meta:Ns(n)}:null}function jE(e,t){let n=Os(e);return n&&typeof n.persistedAt=="string"&&typeof n.ledgerEntries=="number"&&typeof n.eventEntries=="number"&&typeof n.responseEntries=="number"?{persistedAt:n.persistedAt,ledgerEntries:n.ledgerEntries,eventEntries:n.eventEntries,responseEntries:n.responseEntries,overlayResponseEntries:typeof n.overlayResponseEntries=="number"?n.overlayResponseEntries:t.filter(s=>s.kind==="overlay-response").length,signalEntries:typeof n.signalEntries=="number"?n.signalEntries:t.filter(s=>s.kind==="signal").length,replayStrategy:"full-ledger",compactionRecommended:typeof n.compactionRecommended=="boolean"?n.compactionRecommended:t.length>2e3}:Ns(t)}var hf="attention-state",yf="attention-snapshot",Sf="attention-ledger",bf="attention-review",ff="attention-updates",Ls=new Map,wl=[10,30];function ee(e,t){let n=e[t];if(typeof n=="string"&&n.trim().length>0)return n;throw new Error(`${t} is required`)}function G(e){return ee(e,"companyId")}function Ms(e){let t=e instanceof Error?e.message:String(e);return t.includes("invocation scope")||t.includes("not allowed to perform")}async function If(e,t){let n=Ls.get(e)??Promise.resolve(),s,i=new Promise(a=>{s=a}),o=n.catch(()=>{}).then(()=>i);Ls.set(e,o),await n.catch(()=>{});try{return await t()}finally{s(),Ls.get(e)===o&&Ls.delete(e)}}async function rr(e,t){let n=await e.state.get({scopeKind:"company",scopeId:t,stateKey:hf});return gf(t,n)}async function vf(e,t,n){await e.state.set({scopeKind:"company",scopeId:t,stateKey:hf},mf(t,n))}function Bt(e,t){e.streams.open(ff,t.companyId),e.streams.emit(ff,t)}async function kf(e,t,n){return If(n,async()=>{if(!t.hasPendingPersistence(n))return!1;let s=t.getPersistableState(n);if(!s)return!1;try{return await vf(e,n,s),t.markPersistenceHealthy(n),!0}catch(i){let o=i instanceof Error?i.message:String(i);return Ms(i)?e.logger.warn("Aperture pending state could not be persisted in this host callback; will retry from the next scoped invocation.",{companyId:n,error:o}):(t.markPersistenceFault(n,o),e.logger.warn("Failed to persist pending Aperture event state.",{companyId:n,error:o})),!1}})}async function _f(e,t){for(let n=0;n<=wl.length;n+=1)try{await e();return}catch(s){let i=n===wl.length;if(t(s,n+1,i),i)return;await new Promise(o=>{setTimeout(o,wl[n])})}}async function Ht(e,t,n){await _f(async()=>{await e.telemetry.track(t,{surface:"focus",...n??{}})},(s,i,o)=>{e.logger.warn(o?"Failed to emit Focus telemetry after retries":"Retrying Focus telemetry after failure",{eventName:t,attempt:i,error:s instanceof Error?s.message:String(s)})})}async function xl(e,t){await _f(async()=>{await e.activity.log({companyId:t.companyId,message:t.message,...t.entityType?{entityType:t.entityType}:{},...t.entityId?{entityId:t.entityId}:{},...t.metadata?{metadata:t.metadata}:{}})},(n,s,i)=>{e.logger.warn(i?"Failed to write Focus activity log entry after retries":"Retrying Focus activity log entry after failure",{message:t.message,entityType:t.entityType,entityId:t.entityId,attempt:s,error:n instanceof Error?n.message:String(n)})})}async function Vt(e,t,n,s){return If(n,async()=>{let i=await rr(e,n),o=t.getLedger(n),a=t.getSnapshot(n)??ue(n),c=t.getReview(n)??i?.review??Q(n),u=i??{companyId:n,ledger:o,snapshot:a,review:c};try{let p=await s();try{return p.review&&t.setReview(n,p.review),await vf(e,n,{ledger:p.ledger,snapshot:p.snapshot,review:p.review??t.getReview(n)??c}),t.markPersistenceHealthy(n),p}catch(m){throw t.restore(n,u),t.markPersistenceFault(n,m instanceof Error?m.message:String(m)),m}}catch(p){throw t.restore(n,u),p}})}async function Ds(e,t,n){let s=t.getReview(n);if(s)return s;let i=await rr(e,n);return i?.review?i.review:Q(n)}function Us(e,t,n,s=!1){let i=new Date().toISOString(),o={...e,updatedAt:i,lastSeenAt:i,frames:{...e.frames}};for(let a of n){let c=o.frames[a]??{};o.frames[a]={...c,lastSeenAt:i,...s?{suppressedAt:i}:{}}}return o}function qE(e,t){return e?[...e.now?[e.now]:[],...e.next,...e.ambient].some(s=>s.taskId===t):!1}function Ef(e){return sf(e)??"unknown"}function $E(e,t){return e?e.now?.taskId===t?"now":e.next.some(n=>n.taskId===t)?"next":e.ambient.some(n=>n.taskId===t)?"ambient":"ui_only":"ui_only"}function Tl(e){let t=e.occurredAt??new Date().toISOString();return{kind:"signal",id:`${e.taskId}:${e.signal.kind}:${t}`,occurredAt:t,source:{eventType:e.sourceEventType,entityId:e.sourceEntityId??e.taskId,entityType:Ef(e.taskId)},apertureSignal:{...e.signal,taskId:e.taskId,interactionId:e.interactionId,timestamp:t}}}function sr(e,t){let n=$E(e,t),s=Ef(t),i=n==="ui_only"?null:n==="now"?e?.now??null:n==="next"?e?.next.find(a=>a.taskId===t)??null:e?.ambient.find(a=>a.taskId===t)??null,o={entityType:s,lane:n};if(i?.mode&&(o.mode=i.mode),i?.source?.kind&&(o.sourceKind=i.source.kind),i){let a=er(i);typeof a.liveReconciled=="boolean"&&(o.liveReconciled=a.liveReconciled)}return o}function BE(e){let t=tr(e);return t?.kind==="approval"?t.id:null}function Af(e,t){e.actions.register("set-focus-presence",async n=>{let s=G(n),o=ee(n,"presence")==="absent"?"absent":"present";return{ok:!0,operatorPresence:t.setOperatorPresence(s,o)}}),e.actions.register("mark-attention-viewed",async n=>{let s=G(n),i=ee(n,"taskId"),o=ee(n,"interactionId"),a=typeof n.surface=="string"&&n.surface.trim().length>0?n.surface.trim():"focus",c=t.getSnapshot(s),u=Tl({taskId:i,interactionId:o,sourceEventType:"plugin.local.viewed",signal:{kind:"viewed",surface:a}}),{snapshot:p,changed:m}=await Vt(e,t,s,()=>{let{ledger:h,snapshot:f,changed:b}=t.applySignal(s,u);return{ledger:h,snapshot:f,changed:b}});return m&&Bt(e,{companyId:s,reason:"action",eventType:"plugin.local.viewed",updatedAt:p.updatedAt,counts:p.counts}),await Ht(e,"frame_viewed",{...sr(c,i),surface:a}),{ok:!0,snapshot:p,changed:m}}),e.actions.register("engage-focus",async n=>{let s=G(n),i=ee(n,"taskId"),o=ee(n,"interactionId"),a=typeof n.durationMs=="number"&&Number.isFinite(n.durationMs)?Math.max(25,Math.floor(n.durationMs)):void 0,c=typeof n.reason=="string"&&n.reason.trim().length>0?n.reason.trim():"operator_interaction",u=t.getSnapshot(s),p=new Date().toISOString(),m=[Tl({taskId:i,interactionId:o,occurredAt:p,sourceEventType:"plugin.local.engage.viewed",signal:{kind:"viewed",surface:"focus"}}),...c==="show_context"||c==="comment_compose"?[Tl({taskId:i,interactionId:o,occurredAt:p,sourceEventType:"plugin.local.engage.context_expanded",signal:{kind:"context_expanded",surface:"focus",section:c==="show_context"?"now_context":"comment_compose"}})]:[]],{snapshot:h,changed:f}=await Vt(e,t,s,()=>{let b=t.engage(s,i,o,{durationMs:a}),v=t.getLedger(s),N=b.snapshot,K=!1;for(let $ of m){let q=t.applySignal(s,$);v=q.ledger,N=q.snapshot,K||=q.changed}return{ledger:v,snapshot:N,changed:b.changed||K}});return f&&Bt(e,{companyId:s,reason:"action",eventType:"plugin.local.engage",updatedAt:h.updatedAt,counts:h.counts}),await Ht(e,"focus_engaged",{...sr(u,i),actionKind:"engage",reason:c,...a?{durationMs:a}:{}}),{ok:!0,snapshot:h,changed:f}}),e.actions.register("acknowledge-frame",async n=>{let s=G(n),i=ee(n,"taskId"),o=ee(n,"interactionId"),a=El({taskId:i,interactionId:o,action:"acknowledge"}),c={kind:"response",id:`${i}:acknowledge:${Date.now()}`,occurredAt:new Date().toISOString(),source:{eventType:"plugin.local.acknowledge",entityId:i},apertureResponse:a},u=t.getSnapshot(s),p=await Ds(e,t,s),m=Us(p,s,[i],!0),{snapshot:h}=await Vt(e,t,s,()=>{let{ledger:f,snapshot:b}=t.applyResponse(s,c);return{ledger:f,snapshot:b,review:m}});return Bt(e,{companyId:s,reason:"action",eventType:"plugin.local.acknowledge",updatedAt:h.updatedAt,counts:h.counts}),await Ht(e,"frame_acknowledged",{...sr(u,i)}),{ok:!0,snapshot:h}}),e.actions.register("comment-on-issue",async n=>{let s=G(n),i=ee(n,"taskId"),o=ee(n,"issueId"),a=ee(n,"body").trim(),c=tr(i);if(!c||c.kind!=="issue")throw new Error("Comments can only be posted on issue-backed frames.");if(c.id!==o)throw new Error("Issue comment target does not match the selected frame.");let u=await e.issues.createComment(o,a,s),p=t.getSnapshot(s),m=await Ds(e,t,s),h=Us(m,s,[i],!1),{snapshot:f}=await Vt(e,t,s,()=>(t.invalidateHostCache(s,{keys:[`issue:${o}:detail`,`issue:${o}:comments`],prefixes:["issues:blocked","issues:in_review"]}),t.setReview(s,h),{ledger:t.getLedger(s),snapshot:t.getSnapshot(s)??ue(s),review:h}));return Bt(e,{companyId:s,reason:"action",eventType:"plugin.local.comment",updatedAt:f.updatedAt,counts:f.counts}),await Ht(e,"issue_comment_submitted",{...sr(p,i),actionKind:"comment"}),await xl(e,{companyId:s,message:"Posted an issue comment from Focus.",entityType:"issue",entityId:o,metadata:{source:"focus",taskId:i}}),{ok:!0,comment:u,review:h}}),e.actions.register("record-approval-response",async n=>{let s=G(n),i=ee(n,"taskId"),o=ee(n,"interactionId"),a=ee(n,"decision");if(!of(i,"approval"))throw new Error("Approval responses can only be recorded for approval-backed frames.");if(!["approve","reject","request-revision"].includes(a))throw new Error("decision must be approve, reject, or request-revision.");let c=El({taskId:i,interactionId:o,action:a}),u={kind:"response",id:`${i}:${a}:${Date.now()}`,occurredAt:new Date().toISOString(),source:{eventType:`plugin.local.approval.${a}`,entityId:i},apertureResponse:c},p=BE(i);if(!p)throw new Error("Approval responses require a durable approval id.");let m=await e.config.get();await uf(e,p,a,m),t.invalidateApprovals(s);let h=await Ds(e,t,s),f=Us(h,s,[i],!0),b=t.getSnapshot(s),v=qE(b,i),{snapshot:N}=await Vt(e,t,s,()=>{if(v){let{ledger:M,snapshot:ot}=t.applyResponse(s,u);return{ledger:M,snapshot:ot,review:f}}let K={kind:"overlay-response",id:u.id,occurredAt:u.occurredAt,source:u.source,apertureResponse:u.apertureResponse,overlay:{kind:"approval_overlay",reason:"Approval frame came from the Paperclip approvals display adapter, not the replayed Core snapshot."}},{ledger:$,snapshot:q}=t.applyOverlayResponse(s,K);return{ledger:$,snapshot:q,review:f}});return Bt(e,{companyId:s,reason:"action",eventType:`plugin.local.approval.${a}`,updatedAt:N.updatedAt,counts:N.counts}),await Ht(e,"approval_response_recorded",{...sr(b,i),decision:a==="request-revision"?"request_revision":a}),await xl(e,{companyId:s,message:a==="approve"?"Approved a Focus approval.":a==="reject"?"Rejected a Focus approval.":"Requested revision on a Focus approval.",entityType:"approval",entityId:p,metadata:{source:"focus",decision:a,taskId:i}}),{ok:!0,snapshot:N,review:f}}),e.actions.register("mark-attention-seen",async n=>{let s=G(n),i=Array.isArray(n.taskIds)?n.taskIds.filter(u=>typeof u=="string"&&u.trim().length>0):[];if(i.length===0)throw new Error("taskIds must include at least one frame task id.");let o=await Ds(e,t,s),a=Us(o,s,i),{snapshot:c}=await Vt(e,t,s,()=>(t.setReview(s,a),{ledger:t.getLedger(s),snapshot:t.getSnapshot(s)??ue(s),review:a}));return Bt(e,{companyId:s,reason:"action",eventType:"plugin.local.seen",updatedAt:c.updatedAt,counts:c.counts}),await Ht(e,"attention_seen_marked",{frameCount:i.length}),{ok:!0,review:a,snapshot:c}})}var H={approvalType:"approval-type",requestedAmount:"requested-amount",budgetReason:"budget-reason",decisionContext:"decision-context",linkedIssues:"linked-issues",needsActionFrom:"needs-action-from",blockedBy:"blocked-by",blocksTarget:"blocks-target",recommendedMove:"recommended-move",issueStatus:"issue-status",issuePriority:"issue-priority",issueWorkMode:"issue-work-mode",blockedReason:"blocked-reason",blockedSeverity:"blocked-severity",recoveryAction:"recovery-action",documentLock:"document-lock",latestComment:"latest-comment",agentStatus:"agent-status",pauseReason:"pause-reason",agentTitle:"agent-title"};function V(e,t,n){return{id:e,label:t,value:n}}function be(e){return e.split(/[_\-.]/g).filter(Boolean).map(t=>t.slice(0,1).toUpperCase()+t.slice(1)).join(" ")}function Fs(e){return V(H.approvalType,"Type",e)}function js(e){return V(H.requestedAmount,"Requested amount",e)}function qs(e){return V(H.budgetReason,"Reason",e)}function $s(e){return V(H.decisionContext,"Decision context",e)}function wf(e){return V(H.linkedIssues,"Linked issues",e)}function xf(e){return V(H.needsActionFrom,"Needs action from",e)}function Tf(e){return V(H.blockedBy,"Blocked by",e)}function Rf(e){return V(H.blocksTarget,"Blocks",e)}function Cf(e){return V(H.recommendedMove,"Recommended move",e)}function Pf(e){return V(H.issueStatus,"Status",e)}function Of(e){return V(H.issuePriority,"Priority",e)}function Nf(e){return V(H.issueWorkMode,"Mode",e)}function Lf(e){return V(H.blockedReason,"Blocked reason",e)}function Mf(e){return V(H.blockedSeverity,"Severity",e)}function Df(e){return V(H.recoveryAction,"Recovery",e)}function Uf(e){return V(H.documentLock,"Document lock",e)}function Ff(e){return V(H.latestComment,"Latest comment",e)}function jf(e){return V(H.agentStatus,"Status",e)}function qf(e){return V(H.pauseReason,"Pause reason",e)}function $f(e){return V(H.agentTitle,"Role",e)}var HE=300*1e3;function ir(e,t){return e.timing.updatedAt||t}function Bf(e){if(!e)return null;let t=Date.parse(e);return Number.isFinite(t)?t:null}function VE(e,t,n){let s=Bf(ir(e,t)),i=Bf(n);return s===null||i===null?!1:i-s>HE}function Hf(){return{now:0,next:0,ambient:0,total:0}}function Vf(e,t){return e?.frames[t]}function KE(e,t,n){let s=Vf(n,e.taskId)?.suppressedAt;return s?ir(e,t).localeCompare(s)<=0:!1}function Rl(e,t,n){let s=ir(e,t),i=Vf(n,e.taskId)?.lastSeenAt??n?.lastSeenAt;return i?s.localeCompare(i)>0:!0}function zE(e,t){let n=Hf();return e.now&&Rl(e.now,e.updatedAt,t)&&(n.now+=1),n.next=e.next.filter(s=>Rl(s,e.updatedAt,t)).length,n.ambient=e.ambient.filter(s=>Rl(s,e.updatedAt,t)).length,n.total=n.now+n.next+n.ambient,n}function WE(e,t){return{...e,review:{lastSeenAt:t?.lastSeenAt,unread:zE(e,t)}}}function Sn(e,t,n,s,i=new Date().toISOString()){let o=e??{companyId:t,updatedAt:new Date().toISOString(),now:null,next:[],ambient:[],counts:Hf()},a=new Set(n.map(M=>M.frame.taskId)),u=[...[...o.now?[{frame:o.now,lane:"now"}]:[],...o.next.map(M=>({frame:M,lane:"next"})),...o.ambient.map(M=>({frame:M,lane:"ambient"}))].filter(M=>!a.has(M.frame.taskId)),...n].filter(M=>!KE(M.frame,o.updatedAt,s)),p=M=>u.filter(ot=>ot.lane===M).sort((ot,ze)=>ir(ze.frame,o.updatedAt).localeCompare(ir(ot.frame,o.updatedAt))),m=p("now"),h=p("next"),f=p("ambient").filter(M=>!VE(M.frame,o.updatedAt,i)),b=m.shift()??null,v=b?null:h.shift()??null,N=b??v,K=[...m,...h].map(M=>M.frame),$=f.map(M=>M.frame),q=v?$t(v.frame,{owner:"display_merge",lane:"now",sourcePolicy:"mergeStoredFrames.promoteNextWhenNowEmpty",promotedFromLane:"next",rationale:["No explicit now candidate was available, so the highest next candidate became the active focus."]}):N?.frame??null;return WE({...o,now:q,next:K,ambient:$,counts:{now:q?1:0,next:K.length,ambient:$.length,total:(q?1:0)+K.length+$.length}},s)}function Bs(e){return e?"Budget controls are blocking work until a board decision lands.":"A board decision is blocking work in Paperclip."}function or(e){return e?"Budget controls are blocking work until a board decision lands.":"Paperclip is waiting on a human approval before work can continue."}function Kf(e){return e.status==="error"?{whyNow:"This agent is in an error state and may have a failed or stalled run.",factors:["run failed","operator review"]}:e.status==="pending_approval"?{whyNow:"This agent is paused behind a human approval gate.",factors:["pending approval","waiting on human"]}:e.pauseReason==="budget"?{whyNow:"This agent is paused by budget controls.",factors:["budget stop","paused work"]}:{whyNow:"This agent is paused and may represent stale work.",factors:["paused work"]}}function zf(e){return e.status==="error"?"An agent needs operator attention after entering an error state.":e.status==="pending_approval"?"A human decision is required before this agent can continue.":e.pauseReason==="budget"?"Budget controls are holding this agent in a paused state.":"This agent is paused and may need a quick operator check."}function Wf(e){return e.status==="error"?`${e.name} needs attention`:e.status==="pending_approval"?`${e.name} is waiting for approval`:`${e.name} is paused`}function Gf(){return"An agent run failed and may need operator attention."}function Yf(){return"A Paperclip-managed run failed and is now competing for operator attention."}function Zf(){return"Agent waiting for approval"}function Jf(){return"A Paperclip-managed agent cannot continue until a pending approval is resolved."}function Cl(){return"The agent is paused behind a Paperclip approval gate."}function GE(e){let t=e.payload??{},n=typeof t.title=="string"?t.title:typeof t.plan=="string"?t.plan:typeof t.name=="string"?t.name:null;return n||`${be(e.type)} approval`}function Pl(e){return e.type==="budget_override_required"}function YE(e){return e?e.filter(t=>t.status==="pending"||t.status==="revision_requested").sort((t,n)=>{let s=Pl(t)?1:0,i=Pl(n)?1:0;return s!==i?i-s:(n.updatedAt??n.createdAt).localeCompare(t.updatedAt??t.createdAt)}):[]}function ZE(e){let t=Le("approval",e.id),n=e.payload??{},s=Pl(e),i=typeof n.requestedAmount=="string"?n.requestedAmount:void 0,o=typeof n.reason=="string"?n.reason:void 0,a=typeof n.decisionContext=="string"?n.decisionContext:void 0,c=typeof n.summary=="string"?n.summary:Bs(s),u=e.updatedAt??e.createdAt,p={whyNow:or(s),factors:s?["budget stop","approval","operator decision"]:["approval","operator decision"]};return $t({id:`approval-bootstrap:${e.id}`,taskId:t,interactionId:Me(t,"approval"),source:{id:"paperclip:approval",kind:"paperclip",label:"Paperclip approval"},version:1,mode:"approval",tone:"focused",consequence:s?"high":"medium",title:GE(e),summary:c,context:{items:[{...Fs(be(e.type))},...i?[js(i)]:[],...o?[qs(o)]:[],...a?[$s(a)]:[]]},responseSpec:{kind:"approval",actions:[{id:"approve",label:"Approve",kind:"approve",emphasis:"primary"},{id:"reject",label:"Reject",kind:"reject",emphasis:"danger"},...s?[{id:"request-revision",label:"Request revision",kind:"cancel",emphasis:"secondary"}]:[]]},provenance:p,timing:{createdAt:e.createdAt,updatedAt:u},metadata:{entityType:"approval",approvalStatus:e.status,approvalType:e.type,attention:{rationale:p.factors},semantic:{confidence:"high"}}},{owner:"approval_overlay",lane:"next",sourcePolicy:"pendingApprovals.displayOverlay",rationale:["Pending approval fetched from Paperclip approvals adapter."]})}function Ol(e,t,n,s){let i=YE(n).map(ZE),o=e??ue(t);return Sn(o,t,[...i.map(c=>({frame:c,lane:"next"}))],s)}var JE=[{id:"clarification.generic",key:"clarification",pattern:/\b(?:clarification|clarify|question|need(?:s|ed)?\s+(?:info|more|clarification|feedback)|waiting on|feedback needed)\b/i,description:"Signals that the thread is blocked on clarification or more information."},{id:"resolution.direction",key:"resolution",pattern:/final direction|lock these in|use these|not a request for iteration|you can proceed|ready to proceed|unblocked|resolved/i,description:"Signals that the latest guidance appears to resolve or unblock the thread."},{id:"artifact.share_with_board",key:"share_with_board",pattern:/share .* with the board/i,description:"Signals that a review artifact still needs to be shared with the board."},{id:"confirmation.explicit",key:"confirmation",pattern:/please review and confirm|review and confirm|confirm the direction|confirm whether|\bconfirm\b/i,description:"Signals an explicit confirmation step before work can continue."},{id:"board_instruction.explicit",key:"board_instruction",pattern:/(board should either .*?)(?:[.!?]|$)/i,description:"Signals explicit board-facing instructions in the latest operator text."},{id:"dependency.reference",key:"dependency_reference",pattern:/\b[A-Z]+-\d+\b/,description:"Signals a downstream dependency reference in the thread."}];function XE(e){return e.toUpperCase()===e?e:e.slice(0,1).toUpperCase()+e.slice(1).toLowerCase()}function QE(e){return e.toUpperCase()===e?e:e.toLowerCase()}function Ke(e,t=180){let n=e.replace(/\s+/g," ").trim();return n.length<=t?n:`${n.slice(0,t-1).trimEnd()}\u2026`}function eA(e,t){return[t?.body,e.description].filter(n=>!!n).join(`
|
|
10
|
-
`)}function Hs(e){if(!e)return 0;if(e instanceof Date)return e.getTime();let t=Date.parse(e);return Number.isNaN(t)?0:t}function Xf(e){return e?typeof e=="string"?e:e.toISOString():null}function Qf(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function tA(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Vs(e){return Le("issue",e)}function nA(e){let t=new Set,n=[];for(let s of JE)s.pattern.test(e)&&(t.add(s.key),n.push(s.id));return{intents:t,matchedRuleIds:n}}function rA(e,t){let n=t?.toUpperCase();return(e.match(/\b[A-Z]+-\d+\b/g)??[]).find(i=>i.toUpperCase()!==n)??null}function sA(e){return e.replace(/\s+/g," ").trim().match(/(board should either .*?)(?:[.!?]|$)/i)?.[1]??null}function iA(e){return e.has("resolution")||e.has("share_with_board")||e.has("confirmation")||e.has("board_instruction")?"high":e.has("clarification")?"medium":null}function oA(e,t){let n=[],s=t??void 0;return s&&n.push({kind:"same_issue",target:s}),e.has("resolution")?(n.push(s?{kind:"resolves",target:s}:{kind:"resolves"}),n):e.has("share_with_board")||e.has("confirmation")||e.has("board_instruction")?(n.push(s?{kind:"supersedes",target:s}:{kind:"supersedes"}),n):(e.has("clarification")&&n.push(s?{kind:"repeats",target:s}:{kind:"repeats"}),n)}function Nl(e){let{intents:t,matchedRuleIds:n}=nA(e.text);return{text:e.text,blockingTarget:rA(e.text,e.identifier),intents:t,matchedRuleIds:n,explicitBoardInstruction:sA(e.text),semanticConfidence:iA(t),relationHints:oA(t,e.issueTarget)}}function aA(e,t){if(!t||t.agentNames.length===0)return null;let n=e.match(/needed from\s+@([a-z0-9_-]+)/i)??e.match(/@([a-z0-9_-]+)/i);if(n?.[1]){let s=Qf(n[1]),i=t.agentNames.find(o=>Qf(o)===s);if(i)return i}return[...t.agentNames].sort((s,i)=>i.length-s.length).find(s=>new RegExp(`\\b${tA(s)}\\b`,"i").test(e))??null}function eh(e,t,n){let s=eA(e,t),i=Nl({text:s,identifier:e.identifier,issueTarget:Vs(e.id)}),o=aA(s,n),a=s.match(/needed from\s+@([a-z0-9_-]+)/i)??s.match(/@([a-z0-9_-]+)/i),c=o??(a?.[1]?XE(a[1]):/board should|board can/i.test(s)?"Board":/ceo agent|@ceo|\bceo\b/i.test(s)?"CEO":/requires human|waiting on human|human review/i.test(s)?"Human":/operator intervention|operator review/i.test(s)?"Operator":null);return{...i,owner:c,ownerKind:o?"agent":c?"human":null}}function te(e,t){return e.intents.has(t)}function ar(e,t){return t==="agent"?e:QE(e)}function cA(e){return e.length===0?null:[...e].sort((t,n)=>Hs(n.updatedAt)-Hs(t.updatedAt))[0]??null}function th(e,t,n){let s=cA(e),i=Xf(s?.updatedAt),o=Xf(s?.lockedAt),a=t?.updatedAt??null,c=e.filter(u=>!!u.lockedAt);return{hasDocuments:e.length>0,hasLockedDocuments:c.length>0,latestDocumentTitle:s?.title??null,latestDocumentUpdatedAt:i,latestDocumentLockedAt:o,latestDocumentLockOwnerKind:s?.lockedByAgentId?"agent":s?.lockedByUserId?"user":null,latestDocumentLockOwnerId:s?.lockedByAgentId??s?.lockedByUserId??null,resolvesArtifactRequest:te(n,"share_with_board")&&!!s&&(!a||Hs(i)>=Hs(a))}}function nh(e,t,n){let s=t.text.replace(/\s+/g," ").trim();return n?.resolvesArtifactRequest?n.latestDocumentLockedAt?"Monitor the locked review snapshot now that the memo is attached.":"Monitor the review now that the memo is attached.":te(t,"resolution")?"Monitor execution and confirm the team resumes work.":te(t,"share_with_board")?"Share the memo with the board so review can continue.":t.explicitBoardInstruction?Ke(t.explicitBoardInstruction,140):te(t,"confirmation")?t.blockingTarget?`Confirm the direction so ${t.blockingTarget} can proceed.`:"Review the draft and confirm whether work should proceed.":/leave a comment/i.test(s)?"Leave a comment with enough context for work to resume.":/complete [A-Z]+-\d+/i.test(s)?"Complete the blocking dependency or add enough context to proceed.":e.status==="blocked"?"Unblock the dependency or add the missing context needed to continue.":e.status==="in_review"?"Review the issue and decide whether work can continue.":null}function rh(e,t,n){if(n?.resolvesArtifactRequest)return n.latestDocumentLockedAt?"The requested memo is attached and locked, so review should be able to continue from the preserved snapshot.":"The requested memo appears attached, so review should be able to continue.";if(te(t,"resolution"))return"Latest operator guidance appears to unblock this issue.";if(te(t,"share_with_board"))return"Board still needs the memo before review can continue.";if(te(t,"confirmation")&&t.blockingTarget)return`Waiting on confirmation before ${t.blockingTarget} can proceed.`;let s=te(t,"clarification"),i=t.owner;return e.status==="blocked"&&i?s?`Blocked on ${ar(i,t.ownerKind)} clarification before work can continue.`:`Blocked on ${ar(i,t.ownerKind)} action before work can continue.`:e.status==="blocked"?s?"Blocked issue waiting on clarification before work can continue.":"Blocked issue that may need operator intervention to move forward.":e.status==="in_review"?i?`Waiting on ${ar(i,t.ownerKind)} review before work can continue.`:"Issue is waiting on human review before work can continue.":e.description?Ke(e.description):"This issue has new operator-relevant activity."}function sh(e,t,n){if(n?.resolvesArtifactRequest)return{whyNow:n.latestDocumentTitle?n.latestDocumentLockedAt?`${n.latestDocumentTitle} was attached and locked after the request, so the missing artifact appears preserved for review.`:`${n.latestDocumentTitle} was attached after the request, so the missing artifact appears resolved.`:n.latestDocumentLockedAt?"A review document was attached and locked after the request, so the missing artifact appears preserved for review.":"A review document was attached after the request, so the missing artifact appears resolved.",factors:n.latestDocumentLockedAt?["document attached","document locked","review can proceed"]:["document attached","review can proceed"]};if(te(t,"resolution"))return{whyNow:"The latest comment appears to resolve the blocker; monitor execution rather than intervening.",factors:["comment follow-up"]};if(te(t,"share_with_board"))return{whyNow:"The board still needs the memo before review can continue.",factors:["waiting on human","issue review"]};if(te(t,"confirmation")&&t.blockingTarget)return{whyNow:`${t.blockingTarget} is waiting on explicit confirmation before work can continue.`,factors:["waiting on human","issue review"]};let s=t.owner;if(e.status==="blocked"){let i=te(t,"clarification");return{whyNow:s?i?`This issue is blocked on clarification from ${ar(s,t.ownerKind)}.`:`This issue is blocked on action from ${ar(s,t.ownerKind)}.`:i?"This issue is blocked on clarification from a human.":"This issue is blocked and may need operator intervention.",factors:i?["blocked","needs clarification","waiting on human"]:["blocked","operator review"]}}return e.status==="in_review"?{whyNow:"This issue is waiting on human review before work can continue.",factors:["waiting on human","issue review"]}:{whyNow:"A recent issue comment added operator-relevant context.",factors:["comment follow-up"]}}var Ll=6,lA=15e3,uA=15e3,dA=15e3,pA=15e3,mA=15e3;function gA(e,t){let n={...e?{confidence:e}:{},...t.length>0?{relationHints:t}:{}};return Object.keys(n).length>0?n:void 0}function Ee(e){if(e)return typeof e=="string"?e:e.toISOString()}function ih(e){if(!e)return 0;if(e instanceof Date)return e.getTime();let t=Date.parse(e);return Number.isNaN(t)?0:t}function Ks(e){return Ee(e)??null}function ne(e){return be(e).toLowerCase()}function bn(e){return e?.status==="active"||e?.status==="escalated"}function ah(e){return e?e.identifier?`${e.identifier} ${e.title}`:e.title:null}function fA(e){let t=e.owner.label?.trim();return t||(e.owner.type==="unknown"?null:be(e.owner.type))}function hA(e){return bn(e)?e.ownerType==="system"?"System":e.ownerType==="board"?"Board":e.ownerType==="agent"?e.ownerAgentId?`Agent ${e.ownerAgentId}`:"Agent":e.ownerUserId?`User ${e.ownerUserId}`:"User":null}function yA(e){return e.action.label||e.action.detail}function SA(e){return bn(e)?e.nextAction||`Resolve the ${ne(e.kind)} recovery action.`:null}function bA(e){if(e.action.detail)return Ke(e.action.detail);if(e.action.label)return Ke(e.action.label);let t=ah(e.leafIssue??e.sourceIssue);return t?`${t} needs attention before this blocked issue can move.`:`Paperclip marked this blocked issue as ${ne(e.state)}.`}function IA(e){let t=e.nextAction?`: ${Ke(e.nextAction,140)}`:".";return`Paperclip opened a ${ne(e.kind)} recovery action${t}`}function vA(e){let t=e.action.detail||e.action.label;return{whyNow:t?`Paperclip Blocked Inbox marks this as ${ne(e.severity)} urgency for ${ne(e.reason)}: ${Ke(t,140)}`:`Paperclip Blocked Inbox marks this as ${ne(e.severity)} urgency for ${ne(e.reason)}.`,factors:["blocked inbox",ne(e.reason),`${ne(e.severity)} urgency`]}}function kA(e){return{whyNow:e.nextAction?`Paperclip has an ${ne(e.status)} ${ne(e.kind)} recovery action: ${Ke(e.nextAction,140)}`:`Paperclip has an ${ne(e.status)} ${ne(e.kind)} recovery action.`,factors:["recovery action",ne(e.kind),ne(e.status)]}}function _A(e){return e.severity==="critical"||e.severity==="high"?"high":e.severity==="medium"?"medium":"low"}function EA(e,t){return e.blockedInboxAttention?_A(e.blockedInboxAttention):e.activeRecoveryAction?.status==="escalated"||e.activeRecoveryAction?.status==="active"&&e.priority==="critical"?"high":e.status==="blocked"?NA(e):t==="ambient"?"low":"medium"}function AA(e,t){return e.blockedInboxAttention?.severity==="critical"||e.activeRecoveryAction?.status==="escalated"?"critical":e.status==="blocked"?"focused":t==="ambient"?"ambient":"focused"}function wA(e){return ah(e.leafIssue??e.sourceIssue)}function xA(e){return e.latestDocumentLockedAt?`Locked snapshot${e.latestDocumentLockOwnerKind?` by ${e.latestDocumentLockOwnerKind}`:""}`:null}function Ml(e){return e?{id:e.id,identifier:e.identifier,title:e.title,status:e.status,priority:e.priority,assigneeAgentId:e.assigneeAgentId,assigneeUserId:e.assigneeUserId}:null}function TA(e){return{state:e.state,reason:e.reason,severity:e.severity,stoppedSinceAt:e.stoppedSinceAt,owner:e.owner,action:e.action,sourceIssue:Ml(e.sourceIssue),leafIssue:Ml(e.leafIssue),recoveryIssue:Ml(e.recoveryIssue),approvalId:e.approvalId,interactionId:e.interactionId,sampleIssueIdentifier:e.sampleIssueIdentifier,redaction:e.redaction}}function RA(e){return{id:e.id,kind:e.kind,status:e.status,ownerType:e.ownerType,ownerAgentId:e.ownerAgentId,ownerUserId:e.ownerUserId,cause:e.cause,nextAction:e.nextAction,attemptCount:e.attemptCount,maxAttempts:e.maxAttempts,timeoutAt:Ks(e.timeoutAt),lastAttemptAt:Ks(e.lastAttemptAt),outcome:e.outcome,resolvedAt:Ks(e.resolvedAt),updatedAt:Ks(e.updatedAt)}}function CA(e){return e.hasDocuments?{hasDocuments:e.hasDocuments,hasLockedDocuments:e.hasLockedDocuments,latestDocumentTitle:e.latestDocumentTitle,latestDocumentUpdatedAt:e.latestDocumentUpdatedAt,latestDocumentLockedAt:e.latestDocumentLockedAt,latestDocumentLockOwnerKind:e.latestDocumentLockOwnerKind,latestDocumentLockOwnerId:e.latestDocumentLockOwnerId,resolvesArtifactRequest:e.resolvesArtifactRequest}:null}function ch(){return{kind:"acknowledge",actions:[{id:"acknowledge",label:"Acknowledge",kind:"acknowledge",emphasis:"primary"}]}}function PA(e){return e.identifier?`${e.identifier} ${e.title}`:e.title}function OA(e){let t=e.filter(i=>!i.deletedAt);if(t.length===0)return null;let n=[...t].sort((i,o)=>ih(o.updatedAt)-ih(i.updatedAt))[0],s=Ee(n.updatedAt)??Ee(n.createdAt)??new Date(0).toISOString();return{body:Ke(n.body),updatedAt:s}}function NA(e){return e.priority==="critical"||e.priority==="high"?"high":"medium"}function LA(e,t,n){if(e.blockedInboxAttention){let s=e.blockedInboxAttention;return s.severity==="critical"||s.severity==="high"||s.state==="needs_attention"||s.state==="recovery_open"||s.state==="missing_disposition"?"now":"next"}return e.activeRecoveryAction?.status==="escalated"?"now":bn(e.activeRecoveryAction)?e.priority==="critical"||e.priority==="high"?"now":"next":(e.status==="blocked"||e.status==="in_review")&&(te(n.analysis,"resolution")||n.documentSignal.resolvesArtifactRequest)?t||e.isUnreadForMe||n.documentSignal.hasDocuments?"ambient":null:e.status==="blocked"?e.workMode==="planning"?"ambient":e.priority==="critical"?"now":"next":e.status==="in_review"?"next":t||e.isUnreadForMe?"ambient":null}function MA(e){return e.status==="done"||e.status==="cancelled"}function lh(e){return e?.blockedBy.filter(t=>!MA(t))??[]}function uh(e){return lh(e)[0]??null}function Ul(e){return e.identifier?`${e.identifier} ${e.title}`:e.title}function DA(e){let t=lh(e);if(t.length===0)return null;let[n,...s]=t,i=Ul(n);return s.length>0?`${i} +${s.length} more`:i}function UA(e){if(!e||e.blockedBy.length===0&&e.blocks.length===0)return;let t=n=>({id:n.id,identifier:n.identifier,title:n.title,status:n.status,priority:n.priority});return{blockedBy:e.blockedBy.map(t),blocks:e.blocks.map(t)}}function FA(e,t){if(e.blockedInboxAttention)return bA(e.blockedInboxAttention);if(bn(e.activeRecoveryAction))return IA(e.activeRecoveryAction);let n=uh(t.relations);return n?`${Ul(n)} is a tracked blocker for this issue.`:rh(e,t.analysis,t.documentSignal)}function jA(e,t){if(e.blockedInboxAttention)return vA(e.blockedInboxAttention);if(bn(e.activeRecoveryAction))return kA(e.activeRecoveryAction);let n=sh(e,t.analysis,t.documentSignal),s=uh(t.relations);return s?{...n,whyNow:`${Ul(s)} is linked as a blocker in Paperclip.`,factors:[...new Set([...n.factors??[],"blocked by issue relation"])]}:n}function qA(e,t,n){let s=[t?.updatedAt,Ee(e.lastExternalCommentAt),n.latestDocumentUpdatedAt,n.latestDocumentLockedAt,e.blockedInboxAttention?.stoppedSinceAt,Ee(e.activeRecoveryAction?.updatedAt)].filter(i=>!!i).sort();return s.length>0?s.at(-1):Ee(e.updatedAt)??Ee(e.createdAt)??new Date(0).toISOString()}function $A(e,t,n,s,i){let o=eh(e,t,i),a=th(n,t,o),c={analysis:o,documentSignal:a,relations:s},u=LA(e,t,c);if(!u)return null;let p=qA(e,t,a),m=jA(e,c),h=te(o,"resolution")||a.resolvesArtifactRequest?null:e.blockedInboxAttention?fA(e.blockedInboxAttention):hA(e.activeRecoveryAction)??o.owner,f=e.blockedInboxAttention?yA(e.blockedInboxAttention):SA(e.activeRecoveryAction)??nh(e,o,a),b=o.blockingTarget,v=gA(o.semanticConfidence,o.relationHints),N=Le("issue",e.id),K=e.blockedInboxAttention?wA(e.blockedInboxAttention):DA(s),$=UA(s),q=xA(a),M=CA(a);return{lane:u,frame:$t({id:`reconcile:issue:${e.id}:${p}`,taskId:N,interactionId:Me(N,e.status),source:{id:"paperclip:issue",kind:"paperclip",label:"Paperclip issue"},version:1,mode:"status",tone:AA(e,u),consequence:EA(e,u),title:PA(e),summary:FA(e,c),context:{items:[...h?[xf(h)]:[],...K?[Tf(K)]:[],...b?[Rf(b)]:[],...f?[Cf(f)]:[],...e.blockedInboxAttention?[Lf(be(e.blockedInboxAttention.reason)),Mf(be(e.blockedInboxAttention.severity))]:[],...bn(e.activeRecoveryAction)?[Df(be(e.activeRecoveryAction.kind))]:[],...q?[Uf(q)]:[],Pf(e.status.replace(/_/g," ")),Of(e.priority),Nf(be(e.workMode)),...t?[Ff(t.body)]:[]]},responseSpec:ch(),provenance:m,timing:{createdAt:Ee(e.createdAt)??p,updatedAt:p},metadata:{entityType:"issue",issueStatus:e.status,issuePriority:e.priority,issueWorkMode:e.workMode,liveReconciled:!0,activityPath:t?"activity":void 0,attention:{rationale:m.factors??[]},issueIntelligence:{matchedRuleIds:o.matchedRuleIds,owner:o.owner,ownerKind:o.ownerKind,blockingTarget:o.blockingTarget},...e.blockedInboxAttention?{blockedInboxAttention:TA(e.blockedInboxAttention)}:{},...e.activeRecoveryAction?{activeRecoveryAction:RA(e.activeRecoveryAction)}:{},...M?{issueDocuments:M}:{},...$?{issueRelations:$}:{},...v?{semantic:v}:{}}},{owner:"paperclip_reconciliation",lane:u,sourcePolicy:`issue.${e.status}.${e.priority}.${e.workMode}`,rationale:m.factors??[]})}}function BA(e){return e.status==="error"?"now":e.status==="pending_approval"||e.status==="paused"&&e.pauseReason==="budget"?"next":e.status==="paused"?"ambient":null}function HA(e){return Kf(e)}function VA(e){return zf(e)}function KA(e){let t=BA(e);if(!t)return null;let n=Ee(e.updatedAt)??Ee(e.createdAt)??new Date(0).toISOString(),s=HA(e),i=Le("agent",e.id);return{lane:t,frame:$t({id:`reconcile:agent:${e.id}:${n}`,taskId:i,interactionId:Me(i,e.status),source:{id:"paperclip:agent",kind:"paperclip",label:"Paperclip agent"},version:1,mode:"status",tone:e.status==="error"?"critical":e.pauseReason==="budget"||e.status==="pending_approval"?"focused":"ambient",consequence:e.status==="error"||e.pauseReason==="budget"?"high":e.status==="pending_approval"?"medium":"low",title:Wf(e),summary:VA(e),context:{items:[jf(e.status.replace(/_/g," ")),...e.pauseReason?[qf(e.pauseReason)]:[],...e.title?[$f(e.title)]:[]]},responseSpec:ch(),provenance:s,timing:{createdAt:Ee(e.createdAt)??n,updatedAt:n},metadata:{entityType:"agent",agentStatus:e.status,pauseReason:e.pauseReason,liveReconciled:!0,activityPath:e.status==="error"?"activity":void 0,attention:{rationale:s.factors??[]},semantic:{confidence:"high"}}},{owner:"paperclip_reconciliation",lane:t,sourcePolicy:`agent.${e.status}${e.pauseReason?`.${e.pauseReason}`:""}`,rationale:s.factors??[]})}}async function zA(e,t){try{let n=await e.issues.listComments(t.id,t.companyId);return OA(n)}catch(n){return e.logger.warn("Failed to load issue comments during Aperture reconciliation",{issueId:t.id,error:n instanceof Error?n.message:String(n)}),null}}async function cr(e,t,n,s,i,o){if(!i?.fresh){let c=e.getCachedHostValue(t,n);if(c!==null)return c}let a=await o();return e.setCachedHostValue(t,n,a,s)}async function WA(e,t){try{return await e.issues.documents.list(t.id,t.companyId)}catch(n){return e.logger.warn("Failed to load issue documents during Aperture reconciliation",{issueId:t.id,error:n instanceof Error?n.message:String(n)}),[]}}async function GA(e,t){let n=t.blockedBy??[],s=t.blocks??[];if(n.length>0||s.length>0)return{blockedBy:n,blocks:s};try{return await e.issues.relations.get(t.id,t.companyId)}catch(i){return e.logger.warn("Failed to load issue relations during Aperture reconciliation",{issueId:t.id,error:i instanceof Error?i.message:String(i)}),null}}async function Dl(e,t,n){if(e.length===0)return[];let s=new Array(e.length),i=0;async function o(){for(;i<e.length;){let c=i;i+=1,s[c]=await n(e[c],c)}}let a=Math.min(t,e.length);return await Promise.all(Array.from({length:a},()=>o())),s}async function oh(e,t,n,s,i){return cr(t,n,`issues:${s}`,lA,{fresh:i?.freshHostData},async()=>await e.issues.list({companyId:n,status:s,includePluginOperations:!1,limit:25}))}async function YA(e,t,n,s){return cr(t,n,"agents:all",mA,{fresh:s?.freshHostData},async()=>await e.agents.list({companyId:n,limit:100}))}async function ZA(e,t,n,s,i){let[o,a]=await Promise.all([oh(e,t,n,"blocked",i),oh(e,t,n,"in_review",i)]),c=[...o,...a],[u,p,m]=await Promise.all([Dl(c,Ll,f=>cr(t,n,`issue:${f.id}:comments`,uA,{fresh:i?.freshHostData},()=>zA(e,f))),Dl(c,Ll,f=>cr(t,n,`issue:${f.id}:documents`,dA,{fresh:i?.freshHostData},()=>WA(e,f))),Dl(c,Ll,f=>cr(t,n,`issue:${f.id}:relations`,pA,{fresh:i?.freshHostData},()=>GA(e,f)))]),h={agentNames:s.map(f=>f.name).filter(f=>typeof f=="string"&&f.trim().length>0)};return c.map((f,b)=>$A(f,u[b]??null,p[b]??[],m[b]??null,h)).filter(f=>f!==null)}function JA(e){return e.filter(t=>t.status==="pending_approval"||t.status==="error"||t.status==="paused").map(t=>KA(t)).filter(t=>t!==null)}async function dh(e,t,n,s,i){let o=await YA(e,t,n,i),a=s.captureIssueLifecycle===!1?Promise.resolve([]):ZA(e,t,n,o,i),c=Promise.resolve(JA(o)),[u,p]=await Promise.all([a,c]);return[...u,...p]}function Fl(e){let t=[];e.now&&t.push([e.now.taskId,{frame:e.now,lane:"now"}]);for(let n of e.next)t.push([n.taskId,{frame:n,lane:"next"}]);for(let n of e.ambient)t.push([n.taskId,{frame:n,lane:"ambient"}]);return new Map(t)}function ph(e,t,n){return t===n?null:t===null&&n!==null?{stage:e,kind:"introduced",fromLane:t,toLane:n}:t!==null&&n===null?{stage:e,kind:"removed",fromLane:t,toLane:n}:{stage:e,kind:"moved",fromLane:t,toLane:n}}function XA(e,t){return e?"core":t?"reconciled":"display_overlay"}function QA(e,t){if(t==="display_overlay")return er(e).entityType==="approval"?"approval_overlay":"display_overlay"}function jl(e){let t=Fl(e.snapshot),n=Fl(e.reconciledSnapshot),s=Fl(e.displaySnapshot),o=[...new Set([...t.keys(),...n.keys(),...s.keys()])].sort().map(c=>{let u=t.get(c),p=n.get(c),m=s.get(c),h=m?.frame??p?.frame??u?.frame;if(!h)throw new Error(`Overlay diagnostics could not resolve representative frame for ${c}.`);let f=er(h),b=[ph("reconciled",u?.lane??null,p?.lane??null),ph("display",p?.lane??null,m?.lane??null)].filter(N=>N!==null),v=XA(u,p);return{taskId:c,title:h.title,entityType:f.entityType,interactionIds:{...u?{core:u.frame.interactionId}:{},...p?{reconciled:p.frame.interactionId}:{},...m?{display:m.frame.interactionId}:{}},lanePath:{core:u?.lane??null,reconciled:p?.lane??null,display:m?.lane??null},canonicalSource:v,overlayKind:QA(h,v),liveReconciled:f.liveReconciled,attentionRationale:f.attention?.rationale??[],matchedRuleIds:f.issueIntelligence?.matchedRuleIds??[],relationHintKinds:f.semantic?.relationHints?.map(N=>N.kind)??[],decision:f.decision,changes:b}}),a={coreFrames:t.size,reconciledFrames:n.size,displayFrames:s.size,introducedByReconciliation:o.filter(c=>c.changes.some(u=>u.stage==="reconciled"&&u.kind==="introduced")).length,removedByReconciliation:o.filter(c=>c.changes.some(u=>u.stage==="reconciled"&&u.kind==="removed")).length,movedByReconciliation:o.filter(c=>c.changes.some(u=>u.stage==="reconciled"&&u.kind==="moved")).length,introducedByDisplayOverlay:o.filter(c=>c.changes.some(u=>u.stage==="display"&&u.kind==="introduced")).length,removedByDisplayOverlay:o.filter(c=>c.changes.some(u=>u.stage==="display"&&u.kind==="removed")).length,movedByDisplayOverlay:o.filter(c=>c.changes.some(u=>u.stage==="display"&&u.kind==="moved")).length,approvalOverlayFrames:o.filter(c=>c.overlayKind==="approval_overlay").length};return{generatedAt:e.displaySnapshot.updatedAt,summary:a,frames:o}}var mh=250,ew=50,gh=1e3,tw=200;function fh(e){return{eventCount:0,persistence:{state:"healthy"},surfaceCapabilities:xs,operatorPresence:"present",globalSignalSummary:{recentSignals:0,lifetimeSignals:0,counts:{presented:0,viewed:0,responded:0,dismissed:0,deferred:0,contextExpanded:0,contextSkipped:0,timedOut:0,returned:0,attentionShifted:0},deferred:{next:0,suppressed:0,manual:0},responseRate:0,dismissalRate:0,averageResponseLatencyMs:null,averageDismissalLatencyMs:null,lastSignalAt:null},globalAttentionState:"monitoring",memoryProfile:{version:1,operatorId:"unknown",updatedAt:e,sessionCount:0},ledger:{entries:0,eventEntries:0,responseEntries:0,overlayResponseEntries:0,signalEntries:0,replayStrategy:"full-ledger",compactionRecommended:!1},host:{cacheEntries:0,hostDataRevision:0,approvalRecords:0,approvalsDirty:!1},currentNowTask:null}}function zs(e,t){return e?t?e.localeCompare(t)>=0?e:t:e:t}function ql(e,t,n){if(typeof e!="number"||!Number.isFinite(e))return t;let s=Math.trunc(e);return s<=0?t:Math.min(s,n)}function $l(e,t){let n=e.length,s=Math.max(1,t);return n<=s?{items:[...e],total:n,hasMoreBefore:!1}:{items:e.slice(-s),total:n,hasMoreBefore:!0}}function nw(e,t,n){let s=n?{...n,frames:Object.fromEntries(Object.entries(n.frames).map(([i,o])=>[i,{...o}]))}:Q(e);for(let i of t){if(i.kind!=="response"&&i.kind!=="overlay-response")continue;let o=i.occurredAt,a=i.apertureResponse.taskId,c=i.apertureResponse.response.kind,u=s.frames[a]??{};s.frames[a]={...u,lastSeenAt:zs(u.lastSeenAt,o),...c==="acknowledged"||c==="dismissed"?{suppressedAt:zs(u.suppressedAt,o)}:{}},s.lastSeenAt=zs(s.lastSeenAt,o),s.updatedAt=zs(s.updatedAt,o)??o}return s}function hh(e,t){return{baseLedger:e.getLedger(t),snapshot:e.getSnapshot(t)??ue(t),reviewState:e.getReview(t)??Q(t)}}async function st(e,t,n){if(t.hasSession(n))return await kf(e,t,n),hh(t,n);try{let s=await rr(e,n);if(s){let{snapshot:h}=t.hydrate(n,{ledger:s.ledger,snapshot:s.snapshot,review:s.review});return{baseLedger:s.ledger,snapshot:h,reviewState:s.review}}let i=await e.state.get({scopeKind:"company",scopeId:n,stateKey:Sf}),o=await e.state.get({scopeKind:"company",scopeId:n,stateKey:yf}),a=await e.state.get({scopeKind:"company",scopeId:n,stateKey:bf}),c=yn(i)?i:nt(),u=hn(n,o),p=nw(n,c,nr(a,n)?a:null),{snapshot:m}=t.hydrate(n,{ledger:c,snapshot:u,review:p});return!yn(i)&&u&&e.logger.warn("Legacy snapshot found without replay ledger; rebuilt state may be partial until new events arrive.",{companyId:n}),{baseLedger:c,snapshot:m,reviewState:p}}catch(s){if(!Ms(s))throw s;return e.logger.warn("Aperture persisted state unavailable in this host callback; using in-memory attention state.",{companyId:n,error:s instanceof Error?s.message:String(s)}),hh(t,n)}}function rw(e,t,n){return JSON.stringify({reconciliationRevision:e.getReconciledRevision(t),captureIssueLifecycle:n.captureIssueLifecycle!==!1,captureRunFailures:n.captureRunFailures!==!1})}async function Bl(e,t,n,s,i,o={}){let a=await e.config.get(),c=rw(t,n,a);if(o.preferCache&&!o.freshHostData){let m=t.getCachedReconciledCandidates(n,c);if(m)return Sn(s,n,m,i)}let u;try{u=await dh(e,t,n,a,{freshHostData:o.freshHostData})}catch(m){if(!Ms(m))throw m;return e.logger.warn("Aperture host reconciliation unavailable in this host callback; using current attention snapshot.",{companyId:n,error:m instanceof Error?m.message:String(m)}),s}let p=Sn(s,n,u,i);return o.preferCache&&!o.freshHostData&&t.setCachedReconciledCandidates(n,c,u),p}async function Sh(e,t,n){let s=t.getApprovals(n);if(!t.approvalsDirty(n)&&s)return s;let i=await e.config.get();try{let o=await lf(e,n,i);return t.setApprovals(n,o)}catch(o){let a=o instanceof Error?o.message:String(o);return t.markApprovalAdapterFailure(n,a),e.logger.warn("Failed to load pending approvals for Focus display",{companyId:n,error:a}),s||t.setApprovals(n,[])}}async function yh(e,t,n,s,i){let o=await Bl(e,t,n,s,i,{preferCache:!0}),a=await Sh(e,t,n);return{reconciledSnapshot:o,displaySnapshot:Ol(o,n,a,i)}}function bh(e,t){e.data.register("health",async()=>{let n=t.getHealth();return{status:"ok",checkedAt:new Date().toISOString(),trackedCompanies:n.trackedCompanies,maxCompanySessions:n.maxCompanySessions,idleSessionTtlMs:n.idleSessionTtlMs,faultedCompanies:n.faultedCompanies,hostCacheEntries:n.hostCacheEntries,cachedReconciliations:n.cachedReconciliations}}),e.data.register("attention-diagnostics",async n=>{let s=G(n);return await st(e,t,s),t.getCoreDiagnostics(s)??fh(new Date().toISOString())}),e.data.register("attention-overlay-diagnostics",async n=>{let s=G(n),{snapshot:i,reviewState:o}=await st(e,t,s),{reconciledSnapshot:a,displaySnapshot:c}=await yh(e,t,s,i,o);return jl({snapshot:i,reconciledSnapshot:a,displaySnapshot:c})}),e.data.register("attention-summary",async n=>{let s=G(n),{snapshot:i,reviewState:o}=await st(e,t,s);return await Bl(e,t,s,i,o,{freshHostData:!0})??ue(s)}),e.data.register("attention-display",async n=>{let s=G(n),{snapshot:i,reviewState:o}=await st(e,t,s),{displaySnapshot:a}=await yh(e,t,s,i,o);return{companyId:s,snapshot:a??ue(s),reviewState:o}}),e.data.register("attention-export",async n=>{let s=G(n),i=ql(n.limit,mh,gh),o=ql(n.traceLimit,ew,tw),a=new Date().toISOString(),{baseLedger:c,snapshot:u,reviewState:p}=await st(e,t,s),m=await Bl(e,t,s,u,p,{freshHostData:!0}),h=await Sh(e,t,s),f=Ol(m,s,h,p),b=$l(c,i),v=$l(t.getTraces(s),o);return{companyId:s,exportedAt:a,ledger:b.items,eventEntries:b.items.filter(N=>N.kind==="event"),responseEntries:b.items.filter(N=>N.kind==="response"),overlayResponseEntries:b.items.filter(N=>N.kind==="overlay-response"),signalEntries:b.items.filter(N=>N.kind==="signal"),traces:v.items,window:{entryLimit:i,traceLimit:o,totalLedgerEntries:b.total,returnedLedgerEntries:b.items.length,totalTraces:v.total,returnedTraces:v.items.length,hasMoreBefore:b.hasMoreBefore||v.hasMoreBefore},snapshot:u,reconciledSnapshot:m,displaySnapshot:f,review:p,coreDiagnostics:t.getCoreDiagnostics(s)??fh(a),overlayDiagnostics:jl({snapshot:u,reconciledSnapshot:m,displaySnapshot:f})}}),e.data.register("attention-traces",async n=>{let s=G(n);return await st(e,t,s),t.getTraces(s)}),e.data.register("attention-replay-scenario",async n=>{let s=G(n),i=ql(n.limit,mh,gh),{baseLedger:o,snapshot:a}=await st(e,t,s),c=$l(o,i);return{id:`paperclip-attention-${s}`,title:`Paperclip attention replay for ${s}`,description:"Replay scenario exported from the Paperclip Aperture plugin ledger.",doctrineTags:["paperclip","aperture","replay-export"],window:{entryLimit:i,totalLedgerEntries:c.total,returnedSteps:c.items.length,hasMoreBefore:c.hasMoreBefore},expectations:{finalNowInteractionId:a.now?.interactionId??null,nextInteractionIds:a.next.map(u=>u.interactionId),ambientInteractionIds:a.ambient.map(u=>u.interactionId),resultLaneCounts:{now:a.counts.now,next:a.counts.next,ambient:a.counts.ambient}},steps:c.items.map(u=>u.kind==="event"?{kind:"publish",event:u.apertureEvent,label:`${u.source.eventType} @ ${u.occurredAt}`}:u.kind==="response"?{kind:"submit",response:u.apertureResponse,label:`${u.source.eventType} @ ${u.occurredAt}`}:u.kind==="signal"?{kind:"signal",signal:u.apertureSignal,label:`${u.source.eventType} @ ${u.occurredAt}`}:{kind:"overlay-response",response:u.apertureResponse,overlay:u.overlay,label:`${u.source.eventType} @ ${u.occurredAt}`})}}),e.data.register("attention-review",async n=>{let s=G(n),{reviewState:i}=await st(e,t,s);return i})}var sw=["need your input","need your approval","need your review","need your sign off","need your sign-off","should i continue","can you approve","can you review","what should i do"],Eh=["no action needed","no approval needed","approval is not needed","approval not needed","sign off not needed","sign-off not needed","no input needed","for awareness only","for your awareness","continuing automatically"],iw=["cannot continue","can't continue","cannot proceed","can't proceed","unable to continue","unable to proceed","blocked on","blocked until","stuck on","requires operator input before continuing","needs operator input before continuing","must be provided before continuing"],ow=["waiting for approval","approval required","awaiting approval","waiting on approval","pending approval","waiting for input","awaiting input","waiting on input","awaiting review","waiting for review"],aw=["production","prod","force push","git push --force","rm -rf","drop table","delete database","delete prod","sudo","chmod 777","kill process","migrate"],cw=["result of running cat -n","result of running sed -n","result of running grep","result of running ls","result of running find","here s the result of running cat -n","here s the result of running sed -n"],lw=["observation","contents of","showing first","showing top","found"],uw=["path","type file","content"],dw=["ran successfully and did not produce any output","command ran successfully and did not produce any output","completed successfully and did not produce any output"],pw=["tool-output","dmesg"],mw=["makefile","spdx-license-identifier","patchlevel","sublevel","extraversion"],gw=/(?:^|\s)\/[a-z0-9._-]+(?:\/[a-z0-9._-]+)+(?:\s|$)/,fw=/\bfound\s+\d+\s+match(?:es)?\b|\bshowing\s+(?:first|top)\s+\d+\b|\bmatch(?:es)?\s+in\s+\d+\s+files?\b/,hw=/\b(import|from|export|class|def|function|const|let|var|return)\b/,yw=/\b\d+\s+(?:import|from|export|class|def|function|const|let|var|return)\b/,Sw=/\/[a-z0-9._/-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)(?:\b|\/)/,bw=/\b[a-z0-9.-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)\b/,Iw=/\b(static|struct|enum|typedef|void|int|char|bool|return)\b/,vw=/\b\d+\s+(?:static|struct|enum|typedef|void|int|char|bool|return)\b/,kw=/\b\d+\s+\[\s*\d+\.\d+\]\s+[a-z0-9_.:-]+/,_w=/\b(?:version|patchlevel|sublevel|extraversion)\b/,Ew=["form is valid false","form without instance is valid false","form errors","errorlist","decompress result"],Aw=["traceback","exception","permission denied","command not found","segmentation fault"],ww=["still","again","back again","came back","continues","continuing","returned","returning","remains","persisting","retrying","recurred"],xw=["did not repeat","didn t repeat","did not return","didn t return","did not recur","didn t recur","not repeated","not returning","not recurring","no repeat"],Tw=["resolved","fixed","unblocked","no longer blocked"],Ih=["not resolved","did not resolve","didn t resolve","not fixed","did not fix","didn t fix","not recovered","did not recover","didn t recover"],Rw=["recovered","completed successfully","succeeded after"],vh=["instead","supersedes","superseded","replaced by","use this plan instead","follow this plan instead"],Cw=["worse","worsened","escalating","regression","regressed","spread","broader impact","degraded further","critical now","now failing"],Pw=["did not regress","didn t regress","no regression","not worsening","did not worsen","didn t worsen","not escalating","did not escalate","didn t escalate"],Ow=["fail","failed","failing","failure","error","broken","blocked","stalled","stall","incident","issue","outage","degraded","regression","retry","rollback"];function mr(e){return e.toLowerCase().replace(/[^a-z0-9/._-]+/g," ").trim()}function Vl(e){return[...new Set(e)]}function Ah(e){return Hl(e.toolFamily)??Hl(zw(e.metadata))??Hl(Ww(e.context))}function Nw(e){let t=Ah(e);if(t)return t;let n=mr(`${e.title} ${e.summary??""}`);return De(n,"wants to read")||De(n,"wants to inspect")||ur(n,"read")||ur(n,"inspect")?"read":De(n,"wants to write")||ur(n,"write")?"write":De(n,"wants to edit")||ur(n,"edit")?"edit":De(n,"shell command")||De(n,"wants to run")?"bash":De(n,"search the web")?"web":De(n,"search files")||De(n,"search file contents")?"search":null}function Lw(e){return U(e,Eh)?!1:U(e,sw)}function Mw(e){return U(e,Eh)?null:U(e,iw)?"blocking":U(e,ow)?"waiting":null}function wh(e){let t=[],n=U(e,ww)&&!U(e,xw),s=U(e,Tw)&&!U(e,Ih),i=U(e,Rw)&&!U(e,Ih),o=U(e,Cw)&&!U(e,Pw),a=U(e,Ow)||U(e,vh)||o;return n&&a&&t.push({kind:"same_issue"},{kind:"repeats"}),(s||i&&a)&&t.push({kind:"same_issue"},{kind:"resolves"}),U(e,vh)&&t.push({kind:"same_issue"},{kind:"supersedes"}),o&&t.push({kind:"same_issue"},{kind:"escalates"}),Yw(t)}function lr(e,t,n){return Gw(e)||n==="read"||n==="search"?t:jw(e,aw)?"high":(n==="write"||n==="edit"||n==="bash")&&t==="low"?"medium":t}function Dw(e,t){return t!=="edit"&&t!=="read"?!1:U(e,cw)||Rh(e)||Th(e)}function Uw(e,t){return t==="search"?kh(e):t==="read"?kh(e)?!0:!Rh(e)&&!Th(e)||Hw(e)?!1:Vw(e)||Kw(e):!1}function Fw(e,t){return t!=="bash"?!1:U(e,Ew)&&!U(e,Aw)}function U(e,t){return t.some(n=>xh(e,n))}function jw(e,t){return t.some(n=>qw(e,n))}function xh(e,t){let n=mr(t);return n?n.includes(" ")?De(e,n):ur(e,n):!1}function qw(e,t){return xh(e,t)}function Th(e){return Kl(e)?U(e,lw)||$w(e)||Bw(e):!1}function Rh(e){return U(e,uw)&&Kl(e)}function kh(e){return fw.test(e)||Kl(e)&&/\bmatch(?:es)?\b/.test(e)}function Kl(e){return gw.test(e)}function $w(e){return hw.test(e)}function Bw(e){return yw.test(e)}function Hw(e){return Sw.test(e)||bw.test(e)||Iw.test(e)||vw.test(e)}function Vw(e){return kw.test(e)||U(e,pw)}function Kw(e){return _w.test(e)||U(e,mw)}function zw(e){let t=e?.toolFamily;return typeof t=="string"?t:null}function Ww(e){if(!e?.items)return null;for(let t of e.items){let n=t.id.toLowerCase(),s=t.label.toLowerCase();if(n==="toolfamily"||n==="tool_family"||n==="tool"||s==="tool family")return t.value??null}return null}function Hl(e){if(!e)return null;let t=e.trim().toLowerCase();return t.length>0?t:null}function De(e,t){let n=mr(t);return n?new RegExp(`(?:^|[^a-z0-9_])${Ch(n)}(?:$|[^a-z0-9_])`).test(e):!1}function ur(e,t){return new RegExp(`(?:^|[^a-z0-9_])${Ch(t)}(?:$|[^a-z0-9_])`).test(e)}function Ch(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Gw(e){return U(e,dw)}function Yw(e){let t=new Set,n=[];for(let s of e){let i=`${s.kind}:${s.target??""}`;t.has(i)||(t.add(i),n.push(s))}return n}function Zw(e){switch(e){case"approval":return"approval_request";case"choice":return"question_request";case"form":return"form_request"}}function Jw(e){switch(e){case"approval":return"permission_request";case"choice":case"form":return"question_request"}}function Xw(e,t){switch(e){case"approval":return t==="high"?"A high-risk action needs explicit operator approval.":"Approval is required before work can continue.";case"choice":return"A decision is required before work can continue.";case"form":return"Additional input is required before work can continue."}}function dr(e,t){if(t?.wasCancelled)return"Work was cancelled and may need review.";switch(e){case"failed":return"Work has failed and should be reviewed.";case"blocked":return"Work is blocked and may require operator attention.";case"running":case"waiting":case"completed":return t?.impliedAsk?"Status text implies the operator may need to respond.":void 0}}function In(e,t){if(t?.wasCancelled)return["task cancellation is an explicit lifecycle fact"];switch(e){case"failed":return["task status explicitly indicates failure"];case"blocked":return["task status explicitly indicates blocked work"];case"running":case"waiting":case"completed":return t?.impliedAsk?["status wording suggests an implied operator request"]:["task update carries a non-blocking lifecycle status"]}}function _h(e){switch(e){case"task_started":return["task start is an explicit lifecycle fact"];case"completion":return["task completion is an explicit lifecycle fact"]}}function zl(e){let t=Qw(e);return nx(t,e.semanticHints)}function Qw(e){switch(e.type){case"task.started":return{intentFrame:"task_started",activityClass:"session_status",consequence:"low",factors:["task.started"],relationHints:[],confidence:"high",reasons:_h("task_started"),provenance:ae(["intentFrame","activityClass","consequence","confidence"])};case"task.updated":return ex(e);case"human.input.requested":return tx(e);case"task.completed":return{intentFrame:"completion",activityClass:"tool_completion",consequence:"low",factors:["task.completed"],relationHints:[],confidence:"high",reasons:_h("completion"),provenance:ae(["intentFrame","activityClass","consequence","confidence"])};case"task.cancelled":return{intentFrame:"cancellation",activityClass:"status_update",consequence:"low",...e.reason?{whyNow:dr("completed",{wasCancelled:!0})??"Work was cancelled and may need review."}:{},factors:["task.cancelled"],relationHints:[],confidence:"high",reasons:In("completed",{wasCancelled:!0}),provenance:{...ae(["intentFrame","activityClass","consequence","confidence"]),...e.reason?ae(["whyNow"]):{}}};default:return ox(e)}}function ex(e){let t=mr(`${e.title} ${e.summary??""}`),n=Lw(t),s=Mw(t),i=wh(t),o=Lh(e.title,e.summary,e.toolFamily,e.context),{toolFamily:a,source:c}=Nh(o,!0),u=i.length>0?ae(["relationHints"]):{},p=e.status==="failed"&&Dw(t,a),m=e.status==="failed"&&Uw(t,a),h=e.status==="failed"&&Fw(t,a);switch(e.status){case"failed":return p?{intentFrame:"status_update",activityClass:"status_update",...a?{toolFamily:a}:{},consequence:lr(t,m?"low":"high",a),factors:["task.updated","failed","observational_failure"],relationHints:i,confidence:"high",reasons:["task status indicates failure but the update reads like observational output"],provenance:{...ae(["intentFrame","activityClass","consequence","confidence"]),...pr(c),...u}}:{intentFrame:"failure",activityClass:"tool_failure",...a?{toolFamily:a}:{},consequence:lr(t,m?"low":h?"medium":"high",a),whyNow:dr("failed")??"Work has failed and should be reviewed.",factors:["task.updated","failed"],relationHints:i,confidence:n?"medium":"high",reasons:h?[...In("failed",{impliedAsk:n}),"failure content looks like expected diagnostic output from repro work"]:In("failed",{impliedAsk:n}),provenance:{...ae(["intentFrame","activityClass","consequence","whyNow","confidence"]),...pr(c),...u}};case"blocked":return{intentFrame:"blocked_work",activityClass:"status_update",...a?{toolFamily:a}:{},consequence:lr(t,"medium",a),whyNow:dr("blocked")??"Work is blocked and may require operator attention.",factors:["task.updated","blocked"],relationHints:i,confidence:n?"medium":"high",reasons:In("blocked",{impliedAsk:n}),provenance:{...ae(["intentFrame","activityClass","consequence","whyNow","confidence"]),...pr(c),...u}};case"running":case"waiting":case"completed":return{intentFrame:s==="blocking"?"blocked_work":"status_update",activityClass:"status_update",...a?{toolFamily:a}:{},consequence:lr(t,"low",a),...(()=>{let f=s==="blocking"?dr("blocked"):n?dr(e.status,{impliedAsk:n}):void 0;return f!==void 0?{whyNow:f}:{}})(),factors:["task.updated",e.status,...s==="blocking"?["semantic blocking signal"]:[]],relationHints:i,confidence:s==="blocking"?"medium":n?"low":"high",reasons:s==="blocking"?[...In("blocked"),"status wording indicates work cannot continue yet"]:In(e.status,{impliedAsk:n}),provenance:{...ae(["intentFrame","activityClass","consequence","confidence"]),...pr(c),...s==="blocking"||n?ae(["whyNow"]):{},...u}};default:return ax(e.status)}}function tx(e){let t=Lh(e.title,e.summary,e.toolFamily,e.context),{toolFamily:n,source:s}=Nh(t,e.request.kind==="approval"),i=mr(`${e.title} ${e.summary}`),o=wh(i),a=e.riskHint??ix(e.request.kind,n),c=lr(i,a,n),u=o.length>0?ae(["relationHints"]):{};return{intentFrame:Zw(e.request.kind),activityClass:Jw(e.request.kind),...n?{toolFamily:n}:{},consequence:c,whyNow:Xw(e.request.kind,c),factors:["human.input.requested",e.request.kind],relationHints:o,confidence:e.riskHint?"high":e.request.kind==="approval"&&n?"medium":"low",reasons:[e.riskHint?"source provided an explicit risk hint":"request kind establishes an explicit operator decision point",...s==="explicit"?["tool family was supplied by the source or context"]:s==="inferred"?["tool family was inferred from approval wording"]:[]],provenance:{...ae(["intentFrame","activityClass","whyNow"]),...pr(s),...e.riskHint?Ph(["consequence","confidence"]):ae(["consequence","confidence"]),...u}}}function ae(e){return Oh(e,"inferred")}function Ph(e){return Oh(e,"source")}function Oh(e,t){return Object.fromEntries(e.map(n=>[n,t]))}function pr(e){switch(e){case"explicit":return Ph(["toolFamily"]);case"inferred":return ae(["toolFamily"]);case"none":return{};default:return lx(e)}}function Nh(e,t){let n=Ah(e);if(n)return{toolFamily:n,source:"explicit"};if(!t)return{source:"none"};let s=Nw(e);return s?{toolFamily:s,source:"inferred"}:{source:"none"}}function nx(e,t){return t?{...e,...sx(t),factors:Vl([...e.factors??[],...t.factors??[]]),relationHints:[...t.relationHints??e.relationHints],reasons:Vl([...e.reasons??[],...t.reasons??[]]),provenance:{...e.provenance??{},...rx(t)}}:e}function rx(e){return{...e.intentFrame!==void 0?{intentFrame:"hint"}:{},...e.activityClass!==void 0?{activityClass:"hint"}:{},...e.toolFamily!==void 0?{toolFamily:"hint"}:{},...e.consequence!==void 0?{consequence:"hint"}:{},...e.whyNow!==void 0?{whyNow:"hint"}:{},...e.relationHints!==void 0?{relationHints:"hint"}:{},...e.confidence!==void 0?{confidence:"hint"}:{},...e.abstained!==void 0?{abstained:"hint"}:{}}}function sx(e){let t={};for(let[n,s]of Object.entries(e))s!==void 0&&n!=="factors"&&n!=="relationHints"&&n!=="reasons"&&(t[n]=s);return t}function ix(e,t){switch(e){case"approval":return t==="read"||t==="search"?"low":"medium";case"choice":case"form":return"medium";default:return cx(e)}}function Lh(e,t,n,s){return{title:e,...t!==void 0?{summary:t}:{},...n!==void 0?{toolFamily:n}:{},...s?.items!==void 0?{context:{items:s.items}}:{}}}function ox(e){throw new Error(`Unhandled source event in semantic interpreter: ${JSON.stringify(e)}`)}function ax(e){throw new Error(`Unhandled task status in semantic interpreter: ${e}`)}function cx(e){throw new Error(`Unhandled human input request kind in semantic interpreter: ${e}`)}function lx(e){throw new Error(`Unhandled tool family provenance source in semantic interpreter: ${e}`)}function ux(e={}){let t=e.base,n=e.semantic,s=t?.whyNow??n?.whyNow??e.fallbackWhyNow,i=Vl([...t?.factors??[],...n?.factors??[],...e.extraFactors??[]]);if(!(t===void 0&&s===void 0&&i.length===0))return{...t??{},...s!==void 0?{whyNow:s}:{},...i.length>0?{factors:i}:{}}}function Mh(e){let t=zl(e),n=e.type==="human.input.requested"&&e.riskHint!==void 0?{riskHint:e.riskHint}:void 0;return px(gx(e),t,n)}function dx(e){switch(e){case"high":return"critical";case"medium":case"low":return"focused";default:return yx(e)}}function px(e,t,n={}){switch(e.type){case"task.started":return{...e,semantic:t};case"task.updated":return{...e,...e.activityClass===void 0&&t.activityClass!==void 0?{activityClass:t.activityClass}:{},semantic:t};case"task.completed":case"task.cancelled":return{...e,semantic:t};case"human.input.requested":return mx(e,t,n);default:return fx(e)}}function mx(e,t,n){let{toolFamily:s,...i}=e,o=e.consequence??t.consequence??n.riskHint??"medium",a=e.tone??dx(o),c=ux({base:e.provenance,semantic:t}),u=e.request.kind==="approval"?e.toolFamily??t.toolFamily:void 0;return{...i,...u!==void 0?{toolFamily:u}:{},...e.activityClass===void 0&&t.activityClass!==void 0?{activityClass:t.activityClass}:{},semantic:t,tone:a,consequence:o,...c!==void 0?{provenance:c}:{}}}function gx(e){switch(e.type){case"task.started":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{}};case"task.updated":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{},status:e.status,...e.progress!==void 0?{progress:e.progress}:{},...e.context!==void 0?{context:e.context}:{}};case"task.completed":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.summary!==void 0?{summary:e.summary}:{}};case"task.cancelled":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.reason!==void 0?{reason:e.reason}:{}};case"human.input.requested":return{id:e.id,type:e.type,taskId:e.taskId,interactionId:e.interactionId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},title:e.title,summary:e.summary,request:e.request,...e.context!==void 0?{context:e.context}:{},...e.provenance!==void 0?{provenance:e.provenance}:{}};default:return hx(e)}}function fx(e){throw new Error(`Unhandled ApertureEvent in semantic normalizer: ${JSON.stringify(e)}`)}function hx(e){throw new Error(`Unhandled SourceEvent in semantic normalizer: ${JSON.stringify(e)}`)}function yx(e){throw new Error(`Unhandled consequence level in semantic normalizer: ${e}`)}function Sx(e){return typeof e=="string"&&e.trim().length>0?e:void 0}function Dh(e,t){if(!e||typeof e!="object")return;let n=e[t];return Array.isArray(n)&&n.every(s=>typeof s=="string")?n:void 0}function R(e,t){if(!(!e||typeof e!="object"))return Sx(e[t])}function Yl(e){return e?be(e):void 0}function bx(e){let t=e.entityType??"event",n=e.entityId??e.eventId;return Le(t,n)}function Ix(e){let t=R(e,"issueId")??R(e,"sourceIssueId")??R(e,"parentIssueId")??Dh(e,"issueIds")?.[0];return t?Le("issue",t):null}function vx(e){let t=e.entityType??"event";switch(t){case"approval":return{id:`paperclip:${t}`,kind:"paperclip",label:"Paperclip approval"};case"issue":return{id:`paperclip:${t}`,kind:"paperclip",label:"Paperclip issue"};case"run":return{id:`paperclip:${t}`,kind:"paperclip",label:"Paperclip run"};case"agent":return{id:`paperclip:${t}`,kind:"paperclip",label:"Paperclip agent"};default:return{id:`paperclip:${e.eventType}`,kind:"paperclip",label:"Paperclip"}}}function Wl(e){let t=R(e,"status")?.toLowerCase(),n=[R(e,"summary"),R(e,"description"),R(e,"bodySnippet"),R(e,"title"),R(e,"issueTitle")].filter(s=>!!s).join(" ").toLowerCase();return t?.includes("block")?"blocked":t?.includes("wait")?"waiting":t?.includes("done")||t?.includes("complete")||t?.includes("closed")?"completed":t?.includes("fail")?"failed":n.includes("blocked")||n.includes("clarification")?"blocked":n.includes("waiting")?"waiting":"running"}function kx(e){let t=R(e,"status")?.toLowerCase();return t?t.includes("approval")||t.includes("block")?"blocked":t.includes("wait")||t.includes("pause")?"waiting":t.includes("fail")||t.includes("error")?"failed":t.includes("done")||t.includes("complete")?"completed":"running":"running"}function _x(e){let t=R(e.payload,"title")??R(e.payload,"plan")??R(e.payload,"name");if(t)return t;let n=Yl(R(e.payload,"type"));return n?`${n} approval`:"Approval requested"}function Uh(e){return R(e.payload,"type")}function Ex(e){return Uh(e)==="budget_override_required"}function Gl(e,t){let n=R(e.payload,"identifier"),s=R(e.payload,"issueTitle")??R(e.payload,"title");return n&&s?`${n} ${s}`:n?`${n} ${t}`:s||t}function Ax(e){if(!(!e||e.length===0))return{relationHints:e.map(t=>({kind:"same_issue",target:Vs(t)}))}}function wx(e){return[R(e,"bodySnippet"),R(e,"summary"),R(e,"description"),R(e,"title"),R(e,"issueTitle")].filter(t=>!!t).join(`
|
|
11
|
-
`)}function Ws(e){if(e.entityType!=="issue"||!e.entityId)return;let t=Nl({text:wx(e.payload),identifier:R(e.payload,"identifier"),issueTarget:Vs(e.entityId)});return{...t.semanticConfidence?{confidence:t.semanticConfidence}:{},...t.relationHints.length>0?{relationHints:t.relationHints}:{}}}function xx(e,t){return{whyNow:or(e),factors:e?["budget stop","approval","operator decision"]:["approval","operator decision"],...Ax(t)??{}}}function Tx(){return{whyNow:Cl(),factors:["pending approval"]}}function Rx(){return{intentFrame:"failure",whyNow:Yf(),factors:["run failed","operator review"]}}function it(e){return zl(e)}function Zl(e){let t=e.eventType,n=bx(e),s=vx(e);switch(t){case"approval.created":{let i=Uh(e),o=Ex(e),a=R(e.payload,"requestedAmount"),c=R(e.payload,"reason"),u=R(e.payload,"decisionContext"),p=Dh(e.payload,"issueIds"),m=_x(e),h=R(e.payload,"summary")??Bs(o),f=it({id:`${e.eventId}:approval`,type:"human.input.requested",taskId:n,interactionId:Me(n,"approval"),timestamp:e.occurredAt,source:s,toolFamily:"paperclip",activityClass:"permission_request",title:m,summary:h,request:{kind:"approval"},riskHint:o?"high":"medium",semanticHints:xx(o,p)});return{id:`${e.eventId}:approval`,type:"human.input.requested",taskId:n,interactionId:Me(n,"approval"),timestamp:e.occurredAt,source:s,toolFamily:"paperclip",activityClass:"permission_request",title:m,summary:h,consequence:o?"high":"medium",tone:"focused",request:{kind:"approval"},semantic:f,context:{items:[...Yl(i)?[Fs(Yl(i))]:[],...a?[js(a)]:[],...c?[qs(c)]:[],...u?[$s(u)]:[],...p?.length?[wf(String(p.length))]:[]]},provenance:{whyNow:or(o),factors:o?["budget stop","approval","operator decision"]:["approval","operator decision"]}}}case"approval.decided":case"approval.approved":case"approval.rejected":case"approval.revision_requested":return{id:`${e.eventId}:resolved`,type:"task.completed",taskId:n,timestamp:e.occurredAt,source:s,summary:R(e.payload,"status")??(t==="approval.approved"?"Approval approved":t==="approval.rejected"?"Approval rejected":t==="approval.revision_requested"?"Revision requested":"Approval resolved")};case"issue.created":{let i=Gl(e,"Issue created"),o=R(e.payload,"description")??"A new issue entered Paperclip.",a=Wl(e.payload);return a==="running"?{id:`${e.eventId}:issue-created`,type:"task.started",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,semantic:it({id:`${e.eventId}:issue-created`,type:"task.started",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,semanticHints:Ws(e)})}:{id:`${e.eventId}:issue-created-status`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,activityClass:"status_update",status:a,semantic:it({id:`${e.eventId}:issue-created-status`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,activityClass:"status_update",status:a,semanticHints:Ws(e)})}}case"issue.updated":{let i=Gl(e,"Issue updated"),o=R(e.payload,"summary")??R(e.payload,"description"),a=Wl(e.payload);return{id:`${e.eventId}:issue-updated`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,activityClass:"status_update",status:a,semantic:it({id:`${e.eventId}:issue-updated`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:i,...o!==void 0?{summary:o}:{},activityClass:"status_update",status:a,semanticHints:Ws(e)})}}case"issue.comment.created":case"issue.comment_added":{let i=Gl(e,"Issue comment"),o=R(e.payload,"bodySnippet")??"A comment added new context in Paperclip.",a=Wl(e.payload);return{id:`${e.eventId}:issue-comment`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,activityClass:"follow_up",status:a,progress:void 0,semantic:it({id:`${e.eventId}:issue-comment`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,activityClass:"follow_up",status:a,semanticHints:Ws(e)})}}case"agent.run.started":return{id:`${e.eventId}:run-started`,type:"task.started",taskId:n,timestamp:e.occurredAt,source:s,title:R(e.payload,"title")??"Agent run started",summary:R(e.payload,"summary")??"A Paperclip agent began a new run."};case"agent.run.failed":{let i=Ix(e.payload)??n,o=R(e.payload,"title")??"Agent run failed",a=R(e.payload,"summary")??Gf();return{id:`${e.eventId}:run-failed`,type:"task.updated",taskId:i,timestamp:e.occurredAt,source:s,toolFamily:"paperclip",activityClass:"tool_failure",status:"failed",title:o,summary:a,semantic:it({id:`${e.eventId}:run-failed`,type:"task.updated",taskId:i,timestamp:e.occurredAt,source:s,toolFamily:"paperclip",activityClass:"tool_failure",title:o,summary:a,status:"failed",semanticHints:Rx()})}}case"agent.run.finished":return{id:`${e.eventId}:run-finished`,type:"task.completed",taskId:n,timestamp:e.occurredAt,source:s,summary:R(e.payload,"summary")??"Agent run finished"};case"agent.run.cancelled":return{id:`${e.eventId}:run-cancelled`,type:"task.cancelled",taskId:n,timestamp:e.occurredAt,source:s,reason:R(e.payload,"summary")??"Agent run cancelled"};case"agent.error_cleared":{let i=R(e.payload,"summary")??"The agent error state was cleared in Paperclip.";return{id:`${e.eventId}:error-cleared`,type:"task.completed",taskId:n,timestamp:e.occurredAt,source:s,summary:i}}case"agent.status_changed":{let i=R(e.payload,"status")?.toLowerCase();if(i==="pending_approval"){let u=Zf(),p=Jf();return{id:`${e.eventId}:status-pending-approval`,type:"human.input.requested",taskId:n,interactionId:Me(n,"pending-approval"),timestamp:e.occurredAt,source:s,toolFamily:"paperclip",activityClass:"permission_request",title:u,summary:p,consequence:"medium",tone:"focused",request:{kind:"approval"},semantic:it({id:`${e.eventId}:status-pending-approval`,type:"human.input.requested",taskId:n,interactionId:Me(n,"pending-approval"),timestamp:e.occurredAt,source:s,toolFamily:"paperclip",activityClass:"permission_request",title:u,summary:p,request:{kind:"approval"},riskHint:"medium",semanticHints:Tx()}),provenance:{whyNow:Cl(),factors:["pending approval"]}}}let o=kx(e.payload),a="Agent status changed",c=i?`Agent status is now ${i}.`:"Agent status changed.";return{id:`${e.eventId}:status-updated`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:a,summary:c,activityClass:"session_status",status:o,semantic:it({id:`${e.eventId}:status-updated`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:a,summary:c,activityClass:"session_status",status:o})}}default:return null}}function Cx(e){let t={...e.semantic?.confidence?{confidence:e.semantic.confidence}:{},...e.semantic?.relationHints?.length?{relationHints:e.semantic.relationHints}:{},...e.semantic?.whyNow?{whyNow:e.semantic.whyNow}:{},...e.semantic?.factors?.length?{factors:e.semantic.factors}:{},...e.semantic?.intentFrame?{intentFrame:e.semantic.intentFrame}:{}};return Object.keys(t).length>0?t:void 0}function Fh(e){let t=Zl(e);if(!t)return null;let n={id:t.id,taskId:t.taskId,timestamp:t.timestamp,source:t.source,semanticHints:Cx(t)};switch(t.type){case"task.started":return{...n,type:"task.started",title:t.title,...t.summary?{summary:t.summary}:{}};case"task.updated":return{...n,type:"task.updated",title:t.title,...t.summary?{summary:t.summary}:{},...t.toolFamily?{toolFamily:t.toolFamily}:{},...t.activityClass?{activityClass:t.activityClass}:{},status:t.status,...typeof t.progress=="number"?{progress:t.progress}:{},...t.context?{context:t.context}:{}};case"human.input.requested":return{...n,type:"human.input.requested",interactionId:t.interactionId,...t.toolFamily?{toolFamily:t.toolFamily}:{},...t.activityClass?{activityClass:t.activityClass}:{},title:t.title,summary:t.summary,request:t.request,...t.context?{context:t.context}:{},...t.provenance?{provenance:t.provenance}:{},...t.consequence?{riskHint:t.consequence}:{}};case"task.completed":return{...n,type:"task.completed",...t.summary?{summary:t.summary}:{}};case"task.cancelled":return{...n,type:"task.cancelled",...t.reason?{reason:t.reason}:{}};default:return null}}var Px=["activity.logged","approval.created","approval.decided","approval.approved","approval.rejected","approval.revision_requested","issue.created","issue.updated","issue.comment.created","issue.comment_added","agent.run.started","agent.run.failed","agent.run.finished","agent.run.cancelled","agent.status_changed","agent.error_cleared"],Ox=new Set(["issue.document_created","issue.document_updated","issue.document_deleted"]);function Nx(e,t){return!((t==="issue.created"||t==="issue.updated"||t==="issue.comment.created"||t==="issue.comment_added")&&e.captureIssueLifecycle===!1||t==="agent.run.failed"&&e.captureRunFailures===!1)}async function Lx(e,t,n,s){if(!Nx(s,n.eventType))return;if(n.eventType==="activity.logged"){let u=n.payload&&typeof n.payload=="object"?n.payload:{},p=typeof u.action=="string"?u.action:void 0,m=typeof u.entityType=="string"?u.entityType:n.entityType;m==="issue"&&p&&Ox.has(p)&&(t.invalidateHostCache(n.companyId,{keys:n.entityId?[`issue:${n.entityId}:documents`,`issue:${n.entityId}:relations`]:[],prefixes:["issues:blocked","issues:in_review"]}),e.logger.info("Triggered Focus refresh from activity log event",{companyId:n.companyId,action:p,entityId:n.entityId,entityType:m}));return}n.entityType==="issue"&&n.entityId?t.invalidateHostCache(n.companyId,{keys:[`issue:${n.entityId}:detail`,`issue:${n.entityId}:comments`,`issue:${n.entityId}:relations`],prefixes:["issues:blocked","issues:in_review"]}):n.entityType==="agent"&&t.invalidateHostCache(n.companyId,{keys:["agents:all"]});let i=n,o=Fh(i),a=o?Mh(o):Zl(i);if(!a)return;i.entityType==="approval"&&t.invalidateApprovals(i.companyId);let c={kind:"event",id:`${i.eventId}:event`,occurredAt:i.occurredAt,source:{eventType:i.eventType,entityId:i.entityId,entityType:i.entityType},...o?{sourceEvent:o}:{},apertureEvent:a};t.applyEvent(i.companyId,c),t.markPersistencePending(i.companyId),e.logger.info("Captured Paperclip event for Aperture",{companyId:i.companyId,eventType:i.eventType,entityId:i.entityId,mappedType:a.type})}function jh(e,t,n=()=>({})){for(let s of Px)e.events.on(s,async i=>{await Lx(e,t,i,n())})}function qh(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}var Gs={},$h=Js({async setup(e){let t=new Rs;try{Gs=qh(await e.config.get())}catch(n){Gs={},e.logger.warn("Failed to load initial Focus config; event handlers will use defaults.",{error:n instanceof Error?n.message:String(n)})}bh(e,t),Af(e,t),jh(e,t,()=>Gs)},async onConfigChanged(e){Gs=qh(e)},async onHealth(){return{status:"ok",message:"Paperclip Aperture worker is running"}}}),yM=$h;qc($h,import.meta.url);export{yM as default};
|
|
4
|
+
`)}var H=r.string().transform(DI);var on=r.enum(qs),FI=r.object({type:r.literal("issue"),issueId:r.string().uuid()}).strict(),pl=r.object({mode:r.literal(kr),companyId:r.string().uuid().optional(),projectIds:r.array(r.string().uuid()).optional(),rootIssueId:r.string().uuid().optional(),issueIds:r.array(r.string().uuid()).optional(),allowedAgentIds:r.array(r.string().uuid()).optional(),allowedSecretBindingIds:r.array(r.string().uuid()).optional(),allowedToolClasses:r.array(r.string().trim().min(1)).optional(),outputPromotionTarget:FI.optional()}).strict(),wr=r.object({id:r.literal(kr),version:r.literal(1),rawOutputDisposition:r.literal(Bs)}).strict(),dt=r.object({trustPreset:on.optional(),reviewPreset:wr.optional(),trustBoundary:pl.optional()}).catchall(r.unknown()),Og=r.enum(["issue","comment","document","work_product"]),$I=r.object({preset:on,disposition:r.enum(["quarantined","promoted"]),sourceIssueId:r.string().uuid().nullable().optional(),sourceRunId:r.string().uuid().nullable().optional(),sourceAgentId:r.string().uuid().nullable().optional(),promotedFrom:r.object({artifactKind:Og,artifactId:r.string().uuid(),issueId:r.string().uuid().nullable().optional()}).strict().nullable().optional(),promotedByActorType:r.enum(["agent","user","system"]).nullable().optional(),promotedByActorId:r.string().trim().min(1).nullable().optional(),promotedAt:r.string().datetime({offset:!0}).nullable().optional()}).strict();var ml=r.enum(["needs_attention","awaiting_decision","external_wait","recovery_open","missing_disposition"]),fl=r.enum(["critical","high","medium","low"]),gl=r.enum(["blocked_by_unassigned_issue","blocked_by_assigned_backlog_issue","blocked_by_uninvokable_assignee","blocked_by_cancelled_issue","blocked_chain_stalled","invalid_review_participant","in_review_without_action_path","missing_successful_run_disposition","pending_board_decision","pending_user_decision","external_owner_action","open_recovery_issue"]),Ir=r.object({id:r.string().uuid(),identifier:r.string().nullable(),title:r.string(),status:r.enum(Sr),priority:r.enum(Ke),assigneeAgentId:r.string().uuid().nullable(),assigneeUserId:r.string().nullable()}).strict(),Ng=r.object({kind:r.literal("blocked"),state:ml,reason:gl,severity:fl,stoppedSinceAt:r.string().datetime().nullable(),owner:r.object({type:r.enum(["agent","user","board","external","unknown"]),agentId:r.string().uuid().nullable(),userId:r.string().nullable(),label:r.string().nullable()}).strict(),action:r.object({label:r.string().trim().min(1),detail:r.string().nullable()}).strict(),sourceIssue:Ir.nullable(),leafIssue:Ir.nullable(),recoveryIssue:Ir.nullable(),approvalId:r.string().uuid().nullable(),interactionId:r.string().uuid().nullable(),sampleIssueIdentifier:r.string().nullable(),redaction:r.object({externalDetailsRedacted:r.boolean(),secretFieldsOmitted:r.literal(!0)}).strict()}).strict(),an=["inherit","shared_workspace","isolated_workspace","operator_branch","reuse_existing","agent_default"],UI=r.object({type:r.enum(["project_primary","git_worktree","adapter_managed","cloud_sandbox"]).optional(),baseRef:r.string().optional().nullable(),branchTemplate:r.string().optional().nullable(),worktreeParentDir:r.string().optional().nullable(),provisionCommand:r.string().optional().nullable(),teardownCommand:r.string().optional().nullable()}).strict(),bt=r.object({mode:r.enum(an).optional(),environmentId:r.string().uuid().optional().nullable(),workspaceStrategy:UI.optional().nullable(),workspaceRuntime:r.record(r.string(),r.unknown()).optional().nullable()}).strict(),jI=r.object({modelProfile:r.enum(na).optional(),adapterConfig:r.record(r.string(),r.unknown()).optional(),useProjectWorkspace:r.boolean().optional()}).strict(),Pg=r.object({type:r.enum(["agent","user"]),agentId:r.string().uuid().optional().nullable(),userId:r.string().optional().nullable()}),Lg=Pg.superRefine((e,t)=>{if(e.type==="agent"){e.agentId||t.addIssue({code:r.ZodIssueCode.custom,message:"Agent participants require agentId",path:["agentId"]}),e.userId&&t.addIssue({code:r.ZodIssueCode.custom,message:"Agent participants cannot set userId",path:["userId"]});return}e.userId||t.addIssue({code:r.ZodIssueCode.custom,message:"User participants require userId",path:["userId"]}),e.agentId&&t.addIssue({code:r.ZodIssueCode.custom,message:"User participants cannot set agentId",path:["agentId"]})}),zI=Pg.extend({id:r.string().uuid().optional()}).superRefine((e,t)=>{if(e.type==="agent"){e.agentId||t.addIssue({code:r.ZodIssueCode.custom,message:"Agent participants require agentId",path:["agentId"]}),e.userId&&t.addIssue({code:r.ZodIssueCode.custom,message:"Agent participants cannot set userId",path:["userId"]});return}e.userId||t.addIssue({code:r.ZodIssueCode.custom,message:"User participants require userId",path:["userId"]}),e.agentId&&t.addIssue({code:r.ZodIssueCode.custom,message:"User participants cannot set agentId",path:["agentId"]})}),qI=r.object({id:r.string().uuid().optional(),type:r.enum(Rs),approvalsNeeded:r.literal(1).optional().default(1),participants:r.array(zI).default([])}),BI=r.object({nextCheckAt:r.string().datetime(),notes:r.string().max(500).optional().nullable().default(null),scheduledBy:r.enum(Cs).optional().default("assignee"),kind:r.enum(Os).optional().nullable().default(null),serviceName:r.string().trim().min(1).max(120).optional().nullable().default(null),externalRef:r.string().trim().min(1).max(500).optional().nullable().default(null),timeoutAt:r.string().datetime().optional().nullable().default(null),maxAttempts:r.number().int().positive().max(100).optional().nullable().default(null),recoveryPolicy:r.enum(Ls).optional().nullable().default(null)}),hl=r.object({mode:r.enum(Ca).optional().default("normal"),commentRequired:r.boolean().optional().default(!0),stages:r.array(qI).default([]),monitor:BI.optional().nullable(),reviewPreset:wr.optional(),authorizationPolicy:dt.optional()}),VI=r.object({status:r.enum(La),nextCheckAt:r.string().datetime().nullable(),lastTriggeredAt:r.string().datetime().nullable(),attemptCount:r.number().int().nonnegative().default(0),notes:r.string().max(500).nullable(),scheduledBy:r.enum(Cs).nullable(),kind:r.enum(Os).nullable().optional().default(null),serviceName:r.string().trim().min(1).max(120).nullable().optional().default(null),externalRef:r.string().trim().min(1).max(500).nullable().optional().default(null),timeoutAt:r.string().datetime().nullable().optional().default(null),maxAttempts:r.number().int().positive().max(100).nullable().optional().default(null),recoveryPolicy:r.enum(Ls).nullable().optional().default(null),clearedAt:r.string().datetime().nullable(),clearReason:r.enum(Na).nullable()}),di=r.object({instructions:r.string().trim().min(1).max(2e4)}).strict(),Mg=r.object({status:r.enum(Oa),currentStageId:r.string().uuid().nullable(),currentStageIndex:r.number().int().nonnegative().nullable(),currentStageType:r.enum(Rs).nullable(),currentParticipant:Lg.nullable(),returnAssignee:Lg.nullable(),reviewRequest:di.nullable().optional().default(null),completedStageIds:r.array(r.string().uuid()).default([]),lastDecisionId:r.string().uuid().nullable(),lastDecisionOutcome:r.enum(Pa).nullable(),monitor:VI.optional().nullable()}),KI=r.object({id:r.string().uuid(),companyId:r.string().uuid(),sourceIssueId:r.string().uuid(),recoveryIssueId:r.string().uuid().nullable(),kind:r.enum(ha),status:r.enum(ya),ownerType:r.enum(Sa),ownerAgentId:r.string().uuid().nullable(),ownerUserId:r.string().nullable(),previousOwnerAgentId:r.string().uuid().nullable(),returnOwnerAgentId:r.string().uuid().nullable(),cause:r.string().min(1),fingerprint:r.string().min(1),evidence:r.record(r.string(),r.unknown()),nextAction:r.string().min(1),wakePolicy:r.record(r.string(),r.unknown()).nullable(),monitorPolicy:r.record(r.string(),r.unknown()).nullable(),attemptCount:r.number().int().nonnegative(),maxAttempts:r.number().int().positive().nullable(),timeoutAt:r.union([r.date(),r.string().datetime()]).nullable(),lastAttemptAt:r.union([r.date(),r.string().datetime()]).nullable(),outcome:r.enum(ba).nullable(),resolutionNote:r.string().nullable(),resolvedAt:r.union([r.date(),r.string().datetime()]).nullable(),createdAt:r.union([r.date(),r.string().datetime()]),updatedAt:r.union([r.date(),r.string().datetime()])}),HI=["restored","false_positive","blocked","cancelled"],Dg=r.object({actionId:r.string().uuid().optional(),outcome:r.enum(HI),sourceIssueStatus:r.enum(["todo","done","in_review","blocked"]),resolutionNote:H.optional().nullable()}).strict().superRefine((e,t)=>{if(e.outcome==="restored"){e.sourceIssueStatus!=="todo"&&e.sourceIssueStatus!=="done"&&e.sourceIssueStatus!=="in_review"&&t.addIssue({code:r.ZodIssueCode.custom,message:"Restored recovery actions must move the source issue to todo, done, or in_review",path:["sourceIssueStatus"]});return}if(e.outcome==="blocked"){e.sourceIssueStatus!=="blocked"&&t.addIssue({code:r.ZodIssueCode.custom,message:"Blocked recovery actions must move the source issue to blocked",path:["sourceIssueStatus"]});return}if(e.outcome==="false_positive"||e.outcome==="cancelled"){e.sourceIssueStatus!=="done"&&e.sourceIssueStatus!=="in_review"&&t.addIssue({code:r.ZodIssueCode.custom,message:"This recovery outcome requires sourceIssueStatus to be done or in_review",path:["sourceIssueStatus"]});return}}),Fg=r.number().int().nonnegative().transform(e=>ua(e));function yl(e){if(typeof e.status=="string")return{status:e.status,defaulted:!1,reason:"explicit"};let t=typeof e.assigneeAgentId=="string"&&e.assigneeAgentId.length>0||typeof e.assigneeUserId=="string"&&e.assigneeUserId.length>0;return{status:t?"todo":"backlog",defaulted:!0,reason:t?"assigned_omitted_status":"unassigned_omitted_status"}}function $g(e){return r.preprocess(t=>{if(!t||typeof t!="object"||Array.isArray(t))return t;let n=t;return n.status!==void 0?t:{...n,status:yl(n).status}},e)}var Tr=r.object({projectId:r.string().uuid().optional().nullable(),projectWorkspaceId:r.string().uuid().optional().nullable(),goalId:r.string().uuid().optional().nullable(),parentId:r.string().uuid().optional().nullable(),blockedByIssueIds:r.array(r.string().uuid()).optional(),inheritExecutionWorkspaceFromIssueId:r.string().uuid().optional().nullable(),title:r.string().min(1),description:H.optional().nullable(),status:r.enum(Sr),workMode:r.enum(xs).optional().default("standard"),priority:r.enum(Ke).optional().default("medium"),assigneeAgentId:r.string().uuid().optional().nullable(),assigneeUserId:r.string().optional().nullable(),requestDepth:Fg.optional().default(0),createdByUserId:r.string().optional().nullable(),responsibleUserId:r.string().optional().nullable(),billingCode:r.string().optional().nullable(),assigneeAdapterOverrides:jI.optional().nullable(),executionPolicy:hl.optional().nullable(),executionWorkspaceId:r.string().uuid().optional().nullable(),executionWorkspacePreference:r.enum(an).optional().nullable(),executionWorkspaceSettings:bt.optional().nullable(),labelIds:r.array(r.string().uuid()).optional(),watchdogDiscovery:r.object({kind:r.enum(fa),evidenceMarkdown:H.optional().nullable()}).strict().optional().nullable(),watchdog:r.object({agentId:r.string().uuid(),instructions:H.optional().nullable()}).strict().optional().nullable()}),Ug=Tr.extend({status:Tr.shape.status.optional()}),jg=$g(Tr),zg=r.object({agentId:r.string().uuid(),instructions:H.optional().nullable()}).strict(),Sl=$g(Tr.omit({parentId:!0,inheritExecutionWorkspaceFromIssueId:!0,watchdogDiscovery:!0}).extend({acceptanceCriteria:r.array(r.string().trim().min(1).max(500)).max(20).optional(),blockParentUntilDone:r.boolean().optional().default(!1)})),qg=r.object({acceptedPlanRevisionId:r.string().uuid(),children:r.array(Sl).min(1).max(25)}),Bg=r.object({name:r.string().trim().min(1).max(48),color:r.string().regex(/^#(?:[0-9a-fA-F]{6})$/,"Color must be a 6-digit hex value")}),Vg=Tr.omit({createdByUserId:!0,responsibleUserId:!0,watchdog:!0}).partial().extend({requestDepth:Fg.optional(),assigneeAgentId:r.string().trim().min(1).optional().nullable(),comment:H.pipe(r.string().min(1)).optional(),reviewRequest:di.optional().nullable(),reopen:r.boolean().optional(),resume:r.boolean().optional(),interrupt:r.boolean().optional(),hiddenAt:r.string().datetime().nullable().optional()}),Kg=r.object({agentId:r.string().uuid(),expectedStatuses:r.array(r.enum(Sr)).nonempty()}),Hg=r.string().trim().min(1).max(120),Wg=r.string().trim().min(1).max(2e3),xr=r.enum(oa),Rr=r.object({kind:r.enum(aa).default("message"),tone:r.enum(ca).default("neutral"),title:r.string().trim().min(1).max(160).nullable().optional(),detailsDefaultOpen:r.boolean().optional().default(!1)}).strict(),Kn=r.object({type:r.enum(la),label:Hg.nullable().optional()}),WI=Kn.extend({type:r.literal("text"),text:Wg}).strict(),ZI=Kn.extend({type:r.literal("code"),code:r.string().min(1).max(4e3),language:r.string().trim().min(1).max(40).nullable().optional()}).strict(),GI=Kn.extend({type:r.literal("key_value"),label:Hg,value:Wg}).strict(),YI=Kn.extend({type:r.literal("issue_link"),issueId:r.string().uuid().nullable().optional(),identifier:r.string().trim().min(1).max(80).nullable().optional(),title:r.string().trim().min(1).max(240).nullable().optional()}).strict(),JI=Kn.extend({type:r.literal("agent_link"),agentId:r.string().uuid(),name:r.string().trim().min(1).max(160).nullable().optional()}).strict(),XI=Kn.extend({type:r.literal("run_link"),runId:r.string().uuid(),title:r.string().trim().min(1).max(160).nullable().optional()}).strict(),bl=r.discriminatedUnion("type",[WI,ZI,GI,YI,JI,XI]).superRefine((e,t)=>{e.type==="issue_link"&&!e.issueId&&!e.identifier&&t.addIssue({code:r.ZodIssueCode.custom,message:"Issue link rows require issueId or identifier",path:["issueId"]})}),_l=r.object({title:r.string().trim().min(1).max(160).nullable().optional(),rows:r.array(bl).min(1).max(50)}).strict(),Cr=r.object({version:r.literal(1),sourceRunId:r.string().uuid().nullable().optional(),sections:r.array(_l).min(1).max(20)}).strict(),Zg=r.object({body:H.pipe(r.string().min(1)),authorType:xr.optional(),presentation:Rr.nullable().optional(),metadata:Cr.nullable().optional(),reopen:r.boolean().optional(),resume:r.boolean().optional(),interrupt:r.boolean().optional()}),Gg=r.enum(pa),Yg=r.enum(da),Vn=r.enum(ma),kl=r.string().trim().min(1).max(64).regex(/^[a-z0-9][a-z0-9_-]*$/,"Document key must be lowercase letters, numbers, _ or -"),vl=r.object({clientKey:r.string().trim().min(1).max(120),parentClientKey:r.string().trim().min(1).max(120).nullable().optional(),parentId:r.string().uuid().nullable().optional(),title:r.string().trim().min(1).max(240),description:H.pipe(r.string().trim().max(2e4)).nullable().optional(),priority:r.enum(Ke).nullable().optional(),workMode:r.enum(xs).nullable().optional(),assigneeAgentId:r.string().uuid().nullable().optional(),assigneeUserId:r.string().trim().min(1).nullable().optional(),projectId:r.string().uuid().nullable().optional(),goalId:r.string().uuid().nullable().optional(),billingCode:r.string().trim().max(120).nullable().optional(),labels:r.array(r.string().trim().min(1).max(48)).max(20).optional(),hiddenInPreview:r.boolean().optional()}).superRefine((e,t)=>{e.assigneeAgentId&&e.assigneeUserId&&t.addIssue({code:r.ZodIssueCode.custom,message:"Suggested tasks can only target one assignee",path:["assigneeAgentId"]})}),El=r.object({version:r.literal(1),defaultParentId:r.string().uuid().nullable().optional(),tasks:r.array(vl).min(1).max(50)}).superRefine((e,t)=>{let n=new Set;for(let[s,i]of e.tasks.entries()){if(n.has(i.clientKey)){t.addIssue({code:r.ZodIssueCode.custom,message:"clientKey must be unique within one interaction",path:["tasks",s,"clientKey"]});continue}n.add(i.clientKey)}}),Al=r.object({clientKey:r.string().trim().min(1).max(120),issueId:r.string().uuid(),identifier:r.string().trim().min(1).nullable().optional(),title:r.string().trim().min(1).nullable().optional(),parentIssueId:r.string().uuid().nullable().optional(),parentIdentifier:r.string().trim().min(1).nullable().optional()}),Jg=r.object({version:r.literal(1),createdTasks:r.array(Al).max(50).optional(),skippedClientKeys:r.array(r.string().trim().min(1).max(120)).max(50).optional(),rejectionReason:r.string().trim().max(4e3).nullable().optional()}),wl=r.object({id:r.string().trim().min(1).max(120),label:r.string().trim().min(1).max(120),description:r.string().trim().max(500).nullable().optional()}),Il=r.object({id:r.string().trim().min(1).max(120),prompt:r.string().trim().min(1).max(500),helpText:r.string().trim().max(1e3).nullable().optional(),selectionMode:r.enum(["single","multi"]),required:r.boolean().optional(),options:r.array(wl).min(1).max(10)}),Tl=r.object({version:r.literal(1),title:r.string().trim().max(240).nullable().optional(),submitLabel:r.string().trim().max(120).nullable().optional(),supersedeOnUserComment:r.boolean().optional(),questions:r.array(Il).min(1).max(10)}).superRefine((e,t)=>{let n=new Set;for(let[s,i]of e.questions.entries()){n.has(i.id)&&t.addIssue({code:r.ZodIssueCode.custom,message:"Question ids must be unique within one interaction",path:["questions",s,"id"]}),n.add(i.id);let o=new Set;for(let[a,c]of i.options.entries())o.has(c.id)&&t.addIssue({code:r.ZodIssueCode.custom,message:"Option ids must be unique within one question",path:["questions",s,"options",a,"id"]}),o.add(c.id)}}),pi=r.object({questionId:r.string().trim().min(1).max(120),optionIds:r.array(r.string().trim().min(1).max(120)).max(20),otherText:H.pipe(r.string().trim().max(4e3)).nullable().optional()}),Xg=r.object({version:r.literal(1),answers:r.array(pi).max(20),cancelled:r.literal(!0).optional(),cancellationReason:r.string().trim().max(4e3).nullable().optional(),expirationReason:r.literal("superseded_by_comment").optional(),commentId:r.string().uuid().nullable().optional(),summaryMarkdown:r.string().max(2e4).nullable().optional()}),QI=r.string().trim().min(1).max(2e3).refine(e=>e.startsWith("#")?!0:e.startsWith("/")?!e.startsWith("//"):/^https?:\/\//i.test(e),"href must be a root-relative path, same-page fragment, or http(s) URL"),Qg=r.object({label:r.string().trim().min(1).max(120).nullable().optional(),href:QI.nullable().optional()}),xl=Qg.extend({type:r.literal("issue_document"),issueId:r.string().uuid().nullable().optional(),documentId:r.string().uuid().nullable().optional(),key:kl,revisionId:r.string().uuid(),revisionNumber:r.number().int().positive().nullable().optional()}),Rl=Qg.extend({type:r.literal("custom"),key:r.string().trim().min(1).max(120),revisionId:r.string().trim().min(1).max(255).nullable().optional(),revisionNumber:r.number().int().positive().nullable().optional()}),Or=r.discriminatedUnion("type",[xl,Rl]),Cl=r.object({version:r.literal(1),prompt:r.string().trim().min(1).max(1e3),acceptLabel:r.string().trim().min(1).max(80).nullable().optional(),rejectLabel:r.string().trim().min(1).max(80).nullable().optional(),rejectRequiresReason:r.boolean().optional(),rejectReasonLabel:r.string().trim().min(1).max(160).nullable().optional(),allowDeclineReason:r.boolean().optional().default(!0),declineReasonPlaceholder:r.string().trim().min(1).max(240).nullable().optional(),detailsMarkdown:r.string().max(2e4).nullable().optional(),supersedeOnUserComment:r.boolean().optional(),target:Or.nullable().optional()}),Ol=r.object({id:r.string().trim().min(1).max(120),label:r.string().trim().min(1).max(120),description:r.string().trim().max(500).nullable().optional()}),Ll=r.object({version:r.literal(1),prompt:r.string().trim().min(1).max(1e3),detailsMarkdown:r.string().max(2e4).nullable().optional(),options:r.array(Ol).min(1).max(Dn),defaultSelectedOptionIds:r.array(r.string().trim().min(1).max(120)).max(Dn).optional().default([]),minSelected:r.number().int().min(0).optional().default(0),maxSelected:r.number().int().min(0).nullable().optional(),acceptLabel:r.string().trim().min(1).max(80).nullable().optional(),rejectLabel:r.string().trim().min(1).max(80).nullable().optional(),rejectRequiresReason:r.boolean().optional(),rejectReasonLabel:r.string().trim().min(1).max(160).nullable().optional(),allowDeclineReason:r.boolean().optional().default(!0),declineReasonPlaceholder:r.string().trim().min(1).max(240).nullable().optional(),supersedeOnUserComment:r.boolean().optional(),target:Or.nullable().optional()}).superRefine((e,t)=>{let n=new Set;for(let[o,a]of e.options.entries())n.has(a.id)&&t.addIssue({code:r.ZodIssueCode.custom,message:"Option ids must be unique within one checkbox confirmation",path:["options",o,"id"]}),n.add(a.id);let s=new Set;for(let[o,a]of e.defaultSelectedOptionIds.entries()){if(s.has(a)){t.addIssue({code:r.ZodIssueCode.custom,message:"defaultSelectedOptionIds must be unique",path:["defaultSelectedOptionIds",o]});continue}s.add(a),n.has(a)||t.addIssue({code:r.ZodIssueCode.custom,message:"defaultSelectedOptionIds must reference existing option ids",path:["defaultSelectedOptionIds",o]})}let i=e.maxSelected??null;e.minSelected>e.options.length&&t.addIssue({code:r.ZodIssueCode.custom,message:"minSelected cannot exceed the option count",path:["minSelected"]}),e.defaultSelectedOptionIds.length<e.minSelected&&t.addIssue({code:r.ZodIssueCode.custom,message:"defaultSelectedOptionIds must satisfy minSelected",path:["defaultSelectedOptionIds"]}),i!=null&&(i<e.minSelected&&t.addIssue({code:r.ZodIssueCode.custom,message:"maxSelected must be greater than or equal to minSelected",path:["maxSelected"]}),i>e.options.length&&t.addIssue({code:r.ZodIssueCode.custom,message:"maxSelected cannot exceed the option count",path:["maxSelected"]}),e.defaultSelectedOptionIds.length>i&&t.addIssue({code:r.ZodIssueCode.custom,message:"defaultSelectedOptionIds cannot exceed maxSelected",path:["defaultSelectedOptionIds"]}))}),Nl=r.object({version:r.literal(1),outcome:r.enum(["accepted","rejected","superseded_by_comment","stale_target"]),reason:r.string().trim().max(4e3).nullable().optional(),commentId:r.string().uuid().nullable().optional(),staleTarget:Or.nullable().optional()}),eh=Nl.extend({selectedOptionIds:r.array(r.string().trim().min(1).max(120)).max(Dn).optional()}).superRefine((e,t)=>{let n=e.selectedOptionIds??[],s=new Set;for(let[i,o]of n.entries())s.has(o)&&t.addIssue({code:r.ZodIssueCode.custom,message:"selectedOptionIds must be unique",path:["selectedOptionIds",i]}),s.add(o)}),th=r.discriminatedUnion("kind",[r.object({kind:r.literal("suggest_tasks"),idempotencyKey:r.string().trim().max(255).nullable().optional(),sourceCommentId:r.string().uuid().nullable().optional(),sourceRunId:r.string().uuid().nullable().optional(),title:r.string().trim().max(240).nullable().optional(),summary:r.string().trim().max(1e3).nullable().optional(),continuationPolicy:Vn.optional().default("wake_assignee"),payload:El}),r.object({kind:r.literal("ask_user_questions"),idempotencyKey:r.string().trim().max(255).nullable().optional(),sourceCommentId:r.string().uuid().nullable().optional(),sourceRunId:r.string().uuid().nullable().optional(),title:r.string().trim().max(240).nullable().optional(),summary:r.string().trim().max(1e3).nullable().optional(),continuationPolicy:Vn.optional().default("wake_assignee"),payload:Tl}),r.object({kind:r.literal("request_confirmation"),idempotencyKey:r.string().trim().max(255).nullable().optional(),sourceCommentId:r.string().uuid().nullable().optional(),sourceRunId:r.string().uuid().nullable().optional(),title:r.string().trim().max(240).nullable().optional(),summary:r.string().trim().max(1e3).nullable().optional(),continuationPolicy:Vn.optional().default("none"),payload:Cl}),r.object({kind:r.literal("request_checkbox_confirmation"),idempotencyKey:r.string().trim().max(255).nullable().optional(),sourceCommentId:r.string().uuid().nullable().optional(),sourceRunId:r.string().uuid().nullable().optional(),title:r.string().trim().max(240).nullable().optional(),summary:r.string().trim().max(1e3).nullable().optional(),continuationPolicy:Vn.optional().default("wake_assignee"),payload:Ll})]),nh=r.object({selectedClientKeys:r.array(r.string().trim().min(1).max(120)).min(1).max(50).optional(),selectedOptionIds:r.array(r.string().trim().min(1).max(120)).max(Dn).optional()}).superRefine((e,t)=>{let n=new Set;for(let[i,o]of(e.selectedClientKeys??[]).entries()){if(n.has(o)){t.addIssue({code:r.ZodIssueCode.custom,message:"selectedClientKeys must be unique",path:["selectedClientKeys",i]});continue}n.add(o)}let s=new Set;for(let[i,o]of(e.selectedOptionIds??[]).entries()){if(s.has(o)){t.addIssue({code:r.ZodIssueCode.custom,message:"selectedOptionIds must be unique",path:["selectedOptionIds",i]});continue}s.add(o)}}),rh=r.object({reason:r.string().trim().max(4e3).optional()}),sh=r.object({reason:r.string().trim().max(4e3).optional()}),ih=r.object({answers:r.array(pi).max(20),summaryMarkdown:H.pipe(r.string().max(2e4)).nullable().optional()}),oh=r.object({approvalId:r.string().uuid()}),ah=r.object({issueCommentId:r.string().uuid().optional().nullable()}),eT=["markdown"],Pl=r.enum(eT),ch=r.object({title:r.string().trim().max(200).nullable().optional(),format:Pl,body:H.pipe(r.string().max(524288)),changeSummary:r.string().trim().max(500).nullable().optional(),baseRevisionId:r.string().uuid().nullable().optional()}),lh=r.object({});var X2=new Intl.DateTimeFormat("en-US",{year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"2-digit",hour12:!0,timeZone:"UTC",timeZoneName:"short"});function Ml(e){let t=/^(\d{4})-(\d{2})-(\d{2})$/.exec(e);if(!t)return!1;let n=Number(t[1]),s=Number(t[2]),i=Number(t[3]);if(s<1||s>12)return!1;let a=[31,n%4===0&&(n%100!==0||n%400===0)?29:28,31,30,31,30,31,31,30,31,30,31][s-1];return i>=1&&i<=a}var uh=r.union([r.string(),r.number().finite(),r.boolean()]),_t=r.object({name:r.string().trim().regex(/^[A-Za-z][A-Za-z0-9_]*$/),label:r.string().trim().max(120).optional().nullable(),type:r.enum(Ha).optional().default("text"),defaultValue:uh.optional().nullable(),required:r.boolean().optional().default(!0),options:r.array(r.string().trim().min(1).max(120)).max(50).optional().default([])}).superRefine((e,t)=>{e.type==="select"&&e.options.length===0&&t.addIssue({code:r.ZodIssueCode.custom,path:["options"],message:"Select variables require at least one option"}),e.type!=="select"&&e.options.length>0&&t.addIssue({code:r.ZodIssueCode.custom,path:["options"],message:"Only select variables can define options"}),e.type==="select"&&e.defaultValue!=null&&(typeof e.defaultValue!="string"||!e.options.includes(e.defaultValue))&&t.addIssue({code:r.ZodIssueCode.custom,path:["defaultValue"],message:"Select variable defaults must match one of the allowed options"}),e.type==="date"&&e.defaultValue!=null&&(typeof e.defaultValue!="string"||!Ml(e.defaultValue))&&t.addIssue({code:r.ZodIssueCode.custom,path:["defaultValue"],message:"Date variable defaults must be valid YYYY-MM-DD calendar dates"})}),Fl=r.object({projectId:r.string().uuid().optional().nullable(),goalId:r.string().uuid().optional().nullable(),parentIssueId:r.string().uuid().optional().nullable(),title:r.string().trim().min(1).max(200),description:r.string().optional().nullable(),assigneeAgentId:r.string().uuid().optional().nullable(),priority:r.enum(Ke).optional().default("medium"),status:r.enum(Fn).optional().default("active"),concurrencyPolicy:r.enum($n).optional().default("coalesce_if_active"),catchUpPolicy:r.enum(Un).optional().default("skip_missed"),variables:r.array(_t).optional().default([]),env:be.optional().nullable()}),dh=Fl.partial().extend({baseRevisionId:r.string().uuid().optional().nullable()}),$l=r.object({id:r.string().uuid(),companyId:r.string().uuid(),projectId:r.string().uuid().nullable(),goalId:r.string().uuid().nullable(),parentIssueId:r.string().uuid().nullable(),title:r.string().trim().min(1).max(200),description:r.string().nullable(),assigneeAgentId:r.string().uuid().nullable(),priority:r.enum(Ke),status:r.enum(Fn),concurrencyPolicy:r.enum($n),catchUpPolicy:r.enum(Un),variables:r.array(_t),env:be.nullable().default(null),responsibleUserId:r.string().nullable().default(null)}).strict(),Ul=r.object({id:r.string().uuid(),kind:r.enum(br),label:r.string().nullable(),enabled:r.boolean(),cronExpression:r.string().nullable(),timezone:r.string().nullable(),publicId:r.string().nullable(),signingMode:r.enum(tn).nullable(),replayWindowSec:r.number().int().min(30).max(86400).nullable()}).strict(),ph=r.object({version:r.literal(1),routine:$l,triggers:r.array(Ul)}).strict();var Dl=r.object({label:r.string().trim().max(120).optional().nullable(),enabled:r.boolean().optional().default(!0)}),mh=r.discriminatedUnion("kind",[Dl.extend({kind:r.literal("schedule"),cronExpression:r.string().trim().min(1),timezone:r.string().trim().min(1).default("UTC")}),Dl.extend({kind:r.literal("webhook"),signingMode:r.enum(tn).optional().default("bearer"),replayWindowSec:r.number().int().min(30).max(86400).optional().default(300)}),Dl.extend({kind:r.literal("api")})]),fh=r.object({label:r.string().trim().max(120).optional().nullable(),enabled:r.boolean().optional(),cronExpression:r.string().trim().min(1).optional().nullable(),timezone:r.string().trim().min(1).optional().nullable(),signingMode:r.enum(tn).optional().nullable(),replayWindowSec:r.number().int().min(30).max(86400).optional().nullable()}),gh=r.object({triggerId:r.string().uuid().optional().nullable(),payload:r.record(r.string(),r.unknown()).optional().nullable(),variables:r.record(r.string(),uh).optional().nullable(),projectId:r.string().uuid().optional().nullable(),projectWorkspaceId:r.string().uuid().optional().nullable(),assigneeAgentId:r.string().uuid().optional().nullable(),idempotencyKey:r.string().trim().max(255).optional().nullable(),source:r.enum(["manual","api"]).optional().default("manual"),executionWorkspaceId:r.string().uuid().optional().nullable(),executionWorkspacePreference:r.enum(an).optional().nullable(),executionWorkspaceSettings:bt.optional().nullable()}),hh=r.object({});var Hn=r.object({company:r.boolean().optional(),agents:r.boolean().optional(),projects:r.boolean().optional(),issues:r.boolean().optional(),skills:r.boolean().optional()}).partial(),jl=r.object({key:r.string().min(1),description:r.string().nullable(),agentSlug:r.string().min(1).nullable(),projectSlug:r.string().min(1).nullable(),kind:r.enum(["secret","plain"]),requirement:r.enum(["required","optional"]),defaultValue:r.string().nullable(),portability:r.enum(["portable","system_dependent"])}),tT=r.union([r.string(),r.object({encoding:r.literal("base64"),data:r.string(),contentType:r.string().min(1).optional().nullable()})]),zl=r.object({path:r.string().min(1),name:r.string().min(1),description:r.string().nullable(),brandColor:r.string().nullable(),logoPath:r.string().nullable(),attachmentMaxBytes:r.number().int().min(1).max(1073741824).nullable().default(null),requireBoardApprovalForNewAgents:r.boolean(),feedbackDataSharingEnabled:r.boolean().default(!1),feedbackDataSharingConsentAt:r.string().datetime().nullable().default(null),feedbackDataSharingConsentByUserId:r.string().nullable().default(null),feedbackDataSharingTermsVersion:r.string().nullable().default(null)}),mi=r.object({agents:r.array(r.string().min(1)).default([]),projects:r.array(r.string().min(1)).default([])}),ql=r.object({slug:r.string().min(1),name:r.string().min(1),path:r.string().min(1),skills:r.array(r.string().min(1)).default([]),role:r.string().min(1),title:r.string().nullable(),icon:r.string().nullable(),capabilities:r.string().nullable(),reportsToSlug:r.string().min(1).nullable(),adapterType:r.string().min(1),adapterConfig:r.record(r.string(),r.unknown()),runtimeConfig:r.record(r.string(),r.unknown()),permissions:r.record(r.string(),r.unknown()),budgetMonthlyCents:r.number().int().nonnegative(),metadata:r.record(r.string(),r.unknown()).nullable()}),yh=r.object({key:r.string().min(1),slug:r.string().min(1),name:r.string().min(1),path:r.string().min(1),description:r.string().nullable(),sourceType:r.string().min(1),sourceLocator:r.string().nullable(),sourceRef:r.string().nullable(),trustLevel:r.string().nullable(),compatibility:r.string().nullable(),metadata:r.record(r.string(),r.unknown()).nullable(),fileInventory:r.array(r.object({path:r.string().min(1),kind:r.string().min(1)})).default([])}),nT=r.object({slug:r.string().min(1),name:r.string().min(1),path:r.string().min(1),description:r.string().nullable(),ownerAgentSlug:r.string().min(1).nullable(),leadAgentSlug:r.string().min(1).nullable(),targetDate:r.string().nullable(),color:r.string().nullable(),status:r.string().nullable(),executionWorkspacePolicy:r.record(r.string(),r.unknown()).nullable(),workspaces:r.array(r.object({key:r.string().min(1),name:r.string().min(1),sourceType:r.string().nullable(),repoUrl:r.string().nullable(),repoRef:r.string().nullable(),defaultRef:r.string().nullable(),visibility:r.string().nullable(),setupCommand:r.string().nullable(),cleanupCommand:r.string().nullable(),metadata:r.record(r.string(),r.unknown()).nullable(),isPrimary:r.boolean()})).default([]),metadata:r.record(r.string(),r.unknown()).nullable()}),rT=r.object({kind:r.string().min(1),label:r.string().nullable(),enabled:r.boolean(),cronExpression:r.string().nullable(),timezone:r.string().nullable(),signingMode:r.string().nullable(),replayWindowSec:r.number().int().nullable()}),sT=r.object({concurrencyPolicy:r.string().nullable(),catchUpPolicy:r.string().nullable(),variables:r.array(_t).nullable().optional(),triggers:r.array(rT).default([])}),iT=r.object({body:r.string().min(1),authorType:xr,authorAgentSlug:r.string().min(1).nullable(),authorUserId:r.string().nullable(),presentation:Rr.nullable(),metadata:Cr.nullable(),createdAt:r.string().datetime().nullable()}),oT=r.object({slug:r.string().min(1),identifier:r.string().min(1).nullable(),title:r.string().min(1),path:r.string().min(1),projectSlug:r.string().min(1).nullable(),projectWorkspaceKey:r.string().min(1).nullable(),assigneeAgentSlug:r.string().min(1).nullable(),description:r.string().nullable(),recurring:r.boolean().default(!1),routine:sT.nullable(),legacyRecurrence:r.record(r.string(),r.unknown()).nullable(),status:r.string().nullable(),priority:r.string().nullable(),labelIds:r.array(r.string().min(1)).default([]),billingCode:r.string().nullable(),executionWorkspaceSettings:r.record(r.string(),r.unknown()).nullable(),assigneeAdapterOverrides:r.record(r.string(),r.unknown()).nullable(),comments:r.array(iT).default([]),metadata:r.record(r.string(),r.unknown()).nullable()}),Sh=r.object({schemaVersion:r.number().int().positive(),generatedAt:r.string().datetime(),source:r.object({companyId:r.string().uuid(),companyName:r.string().min(1)}).nullable(),includes:r.object({company:r.boolean(),agents:r.boolean(),projects:r.boolean(),issues:r.boolean(),skills:r.boolean()}),company:zl.nullable(),sidebar:mi.nullable(),agents:r.array(ql),skills:r.array(yh).default([]),projects:r.array(nT).default([]),issues:r.array(oT).default([]),envInputs:r.array(jl).default([])}),Bl=r.discriminatedUnion("type",[r.object({type:r.literal("inline"),rootPath:r.string().min(1).optional().nullable(),files:r.record(r.string(),tT)}),r.object({type:r.literal("github"),url:r.string().url()})]),Vl=r.discriminatedUnion("mode",[r.object({mode:r.literal("new_company"),newCompanyName:r.string().min(1).optional().nullable()}),r.object({mode:r.literal("existing_company"),companyId:r.string().uuid()})]),Lr=r.union([r.literal("all"),r.array(r.string().min(1))]),Nr=r.enum(["rename","skip","replace"]),bh=r.object({include:Hn.optional(),agents:r.array(r.string().min(1)).optional(),skills:r.array(r.string().min(1)).optional(),projects:r.array(r.string().min(1)).optional(),issues:r.array(r.string().min(1)).optional(),projectIssues:r.array(r.string().min(1)).optional(),selectedFiles:r.array(r.string().min(1)).optional(),expandReferencedSkills:r.boolean().optional(),sidebarOrder:mi.partial().optional()}),Kl=r.object({source:Bl,include:Hn.optional(),target:Vl,agents:Lr.optional(),collisionStrategy:Nr.optional(),nameOverrides:r.record(r.string().min(1),r.string().min(1)).optional(),selectedFiles:r.array(r.string().min(1)).optional()}),Hl=r.object({adapterType:r.string().min(1),adapterConfig:r.record(r.string(),r.unknown()).optional()}),_h=Kl.extend({adapterOverrides:r.record(r.string().min(1),Hl).optional(),secretValues:r.record(r.string().min(1),r.string()).optional()});var fi=r.enum(["bundled","optional"]),Wl=r.enum(["markdown_only","assets","scripts_executables","external_sources"]),Zl=r.enum(["compatible","unknown","invalid"]),gi=r.enum(["team","agent","project","task","skill","extension","readme","reference","script","asset","markdown","other"]),hi=r.enum(["catalog","local","skills_sh","github","url","local_path","agent_package"]),Gl=r.object({type:hi,ref:r.string().min(1),agentSlugs:r.array(r.string().min(1)),resolved:r.boolean(),catalogSkillId:r.string().min(1).optional(),catalogSkillKey:r.string().min(1).optional(),localPath:r.string().min(1).optional(),sourceLocator:r.string().min(1).optional(),sourceRef:r.string().min(1).optional()}),Yl=r.object({key:r.string().min(1),agentSlug:r.string().min(1).nullable(),projectSlug:r.string().min(1).nullable(),kind:r.enum(["secret","plain"]),requirement:r.enum(["required","optional"])}),Jl=r.object({type:r.enum(["skills_sh","github","url","local_path","agent_package","include"]),ref:r.string().min(1),pinned:r.boolean()}),Xl=r.object({path:r.string().min(1),kind:gi,sizeBytes:r.number().int().nonnegative(),sha256:r.string().min(1)}),kh=r.object({id:r.string().min(1),key:r.string().min(1),kind:fi,category:r.string().min(1),slug:r.string().min(1),name:r.string().min(1),description:r.string(),path:r.string().min(1),entrypoint:r.literal("TEAM.md"),schema:r.literal("agentcompanies/v1"),defaultInstall:r.boolean(),recommendedForCompanyTypes:r.array(r.string()),tags:r.array(r.string()),counts:r.object({agents:r.number().int().nonnegative(),projects:r.number().int().nonnegative(),tasks:r.number().int().nonnegative(),routines:r.number().int().nonnegative(),localSkills:r.number().int().nonnegative(),catalogSkills:r.number().int().nonnegative(),externalSkillSources:r.number().int().nonnegative()}),rootAgentSlugs:r.array(r.string()),agentSlugs:r.array(r.string()),projectSlugs:r.array(r.string()),requiredSkills:r.array(Gl),envInputs:r.array(Yl),sourceRefs:r.array(Jl),files:r.array(Xl),trustLevel:Wl,compatibility:Zl,contentHash:r.string().min(1),packageName:r.string().min(1).optional(),packageVersion:r.string().min(1).optional()}),vh=r.object({kind:fi.optional(),category:r.string().min(1).optional(),q:r.string().min(1).optional()}),Eh=r.object({catalogTeamId:r.string().min(1),path:r.string().min(1),kind:gi,content:r.string(),language:r.string().nullable(),markdown:r.boolean()}),Ql=r.object({allowExternalSources:r.boolean().optional(),allowUnpinnedOptionalSources:r.boolean().optional(),allowLocalPathSources:r.boolean().optional()}).strict(),eu=r.object({targetManagerAgentId:r.string().min(1).nullable().optional(),targetManagerSlug:r.string().min(1).nullable().optional(),include:Hn.omit({company:!0}).strict().optional(),agents:Lr.optional(),collisionStrategy:Nr.optional(),nameOverrides:r.record(r.string().min(1),r.string().min(1)).optional(),selectedFiles:r.array(r.string().min(1)).optional(),sourcePolicy:Ql.optional()}).strict(),Ah=eu.extend({adapterOverrides:r.record(r.string().min(1),Hl).optional(),secretValues:r.record(r.string().min(1),r.string()).optional()}).strict(),wh=r.object({type:hi,ref:r.string().min(1),agentSlugs:r.array(r.string().min(1)),action:r.enum(["already_in_package","catalog_install_required","external_import_required","blocked"]),catalogSkillId:r.string().min(1).nullable(),catalogSkillKey:r.string().min(1).nullable(),sourceLocator:r.string().min(1).nullable(),sourceRef:r.string().min(1).nullable(),reason:r.string().min(1).nullable()});var tu=r.enum(["available","configured","installed","missing","stale","external"]),aT=r.enum(["company_managed","user_installed","external_unknown"]),nu=r.enum(["unsupported","persistent","ephemeral"]),yi=r.object({key:r.string().min(1),versionId:r.string().uuid().nullable()}),Pr=r.union([r.string().min(1),yi]),ru=r.object({key:r.string().min(1),runtimeName:r.string().min(1).nullable(),versionId:r.string().uuid().nullable().optional(),currentVersionId:r.string().uuid().nullable().optional(),desired:r.boolean(),managed:r.boolean(),state:tu,origin:aT.optional(),originLabel:r.string().nullable().optional(),locationLabel:r.string().nullable().optional(),readOnly:r.boolean().optional(),sourcePath:r.string().nullable().optional(),targetPath:r.string().nullable().optional(),detail:r.string().nullable().optional()}),Ih=r.object({adapterType:r.string().min(1),supported:r.boolean(),mode:nu,desiredSkills:r.array(r.string().min(1)),desiredSkillEntries:r.array(yi).optional(),entries:r.array(ru),warnings:r.array(r.string())}),Th=r.object({desiredSkills:r.array(Pr)});var su=r.object({canCreateAgents:r.boolean().optional().default(!1),canCreateSkills:r.boolean().optional().default(!0),trustPreset:on.optional(),authorizationPolicy:dt.optional()}).catchall(r.unknown()),iu=r.enum(["managed","external"]),xh=r.object({mode:iu.optional(),rootPath:r.string().trim().min(1).nullable().optional(),entryFile:r.string().trim().min(1).optional(),clearLegacyPromptTemplate:r.boolean().optional().default(!1)}),Rh=r.object({path:r.string().trim().min(1),content:r.string(),clearLegacyPromptTemplate:r.boolean().optional().default(!1)}),ou=r.record(r.string(),r.unknown()).superRefine((e,t)=>{let n=e.env;if(n===void 0)return;be.safeParse(n).success||t.addIssue({code:r.ZodIssueCode.custom,message:"adapterConfig.env must be a map of valid env bindings",path:["env"]})}),cT=r.object({entryFile:r.string().trim().min(1).optional(),files:r.record(r.string(),r.string()).refine(e=>Object.keys(e).length>0,{message:"instructionsBundle.files must contain at least one file"})}),lT=r.object({enabled:r.boolean().optional(),label:r.string().trim().min(1).optional(),adapterConfig:ou}).strict(),Ch=r.object({modelProfiles:r.object({cheap:lT.optional()}).strict().optional()}).catchall(r.unknown()),Si=r.object({name:r.string().min(1),role:r.enum(ta).optional().default("general"),title:r.string().optional().nullable(),icon:r.enum(ra).optional().nullable(),reportsTo:r.string().uuid().optional().nullable(),capabilities:r.string().optional().nullable(),desiredSkills:r.array(Pr).optional(),adapterType:hc,adapterConfig:ou.optional().default({}),instructionsBundle:cT.optional(),runtimeConfig:Ch.optional().default({}),defaultEnvironmentId:r.string().uuid().optional().nullable(),budgetMonthlyCents:r.number().int().nonnegative().optional().default(0),permissions:su.optional(),metadata:r.record(r.string(),r.unknown()).optional().nullable()}),Oh=Si.extend({sourceIssueId:r.string().uuid().optional().nullable(),sourceIssueIds:r.array(r.string().uuid()).optional()}),Lh=Si.omit({permissions:!0}).partial().extend({permissions:r.never().optional(),replaceAdapterConfig:r.boolean().optional(),status:r.enum(ea).optional(),spentMonthlyCents:r.number().int().nonnegative().optional()}),Nh=r.object({path:r.string().trim().min(1).nullable(),adapterConfigKey:r.string().trim().min(1).optional()}),au=r.object({kind:r.literal("task_bridge"),projectId:r.string().uuid().optional().nullable(),projectIds:r.array(r.string().uuid()).max(50).optional(),parentIssueId:r.string().uuid().optional().nullable(),parentIssueIds:r.array(r.string().uuid()).max(50).optional(),allowedAssigneeAgentIds:r.array(r.string().uuid()).max(50).optional()}).strict().superRefine((e,t)=>{let n=!!e.projectId||!!e.projectIds?.length,s=!!e.parentIssueId||!!e.parentIssueIds?.length;!n&&!s&&t.addIssue({code:r.ZodIssueCode.custom,message:"task_bridge keys require at least one project or parent issue boundary",path:["projectId"]})}),cu=r.object({kind:r.literal("standard")}).strict(),lu=r.union([cu,au]);var Ph=r.object({name:r.string().min(1).default("default"),scope:lu.optional().default({kind:"standard"})}),Mh=r.object({userId:r.string().trim().min(1),status:r.string().trim().min(1).optional().default(ia)}),Dh=r.object({source:r.enum(["timer","assignment","on_demand","automation"]).optional().default("on_demand"),triggerDetail:r.enum(["manual","ping","callback","system"]).optional(),reason:r.string().optional().nullable(),payload:r.record(r.string(),r.unknown()).optional().nullable(),idempotencyKey:r.string().optional().nullable(),forceFreshSession:r.preprocess(e=>e===null?void 0:e,r.boolean().optional().default(!1))}),Fh=r.object({taskKey:r.string().min(1).optional().nullable()}),$h=r.object({adapterConfig:ou.optional().default({}),environmentId:r.string().uuid().optional().nullable()}),Uh=r.object({canCreateAgents:r.boolean(),canCreateSkills:r.boolean().optional(),canAssignTasks:r.boolean(),trustPreset:on.optional(),authorizationPolicy:dt.optional()});var uT=r.object({type:r.enum(["project_primary","git_worktree","adapter_managed","cloud_sandbox"]).optional(),baseRef:r.string().optional().nullable(),branchTemplate:r.string().optional().nullable(),worktreeParentDir:r.string().optional().nullable(),provisionCommand:r.string().optional().nullable(),teardownCommand:r.string().optional().nullable()}).strict(),uu=r.object({enabled:r.boolean(),defaultMode:r.enum(["shared_workspace","isolated_workspace","operator_branch","adapter_default"]).optional(),allowIssueOverride:r.boolean().optional(),defaultProjectWorkspaceId:r.string().uuid().optional().nullable(),environmentId:r.string().uuid().optional().nullable(),workspaceStrategy:uT.optional().nullable(),workspaceRuntime:r.record(r.string(),r.unknown()).optional().nullable(),branchPolicy:r.record(r.string(),r.unknown()).optional().nullable(),pullRequestPolicy:r.record(r.string(),r.unknown()).optional().nullable(),runtimePolicy:r.record(r.string(),r.unknown()).optional().nullable(),cleanupPolicy:r.record(r.string(),r.unknown()).optional().nullable(),authorizationPolicy:dt.optional().nullable()}).strict(),jh=r.object({workspaceRuntime:r.record(r.string(),r.unknown()).optional().nullable(),desiredState:r.enum(["running","stopped","manual"]).optional().nullable(),serviceStates:r.record(r.enum(["running","stopped","manual"])).optional().nullable()}).strict(),dT=r.enum(["local_path","git_repo","remote_managed","non_git_path"]),pT=r.enum(["default","advanced"]),zh={name:r.string().min(1).optional(),sourceType:dT.optional(),cwd:r.string().min(1).optional().nullable(),repoUrl:r.string().url().optional().nullable(),repoRef:r.string().optional().nullable(),defaultRef:r.string().optional().nullable(),visibility:pT.optional(),setupCommand:r.string().optional().nullable(),cleanupCommand:r.string().optional().nullable(),remoteProvider:r.string().optional().nullable(),remoteWorkspaceRef:r.string().optional().nullable(),sharedWorkspaceKey:r.string().optional().nullable(),metadata:r.record(r.string(),r.unknown()).optional().nullable(),runtimeConfig:jh.optional().nullable()};function mT(e,t){let n=e.sourceType??"local_path",s=typeof e.cwd=="string"&&e.cwd.trim().length>0,i=typeof e.repoUrl=="string"&&e.repoUrl.trim().length>0,o=typeof e.remoteWorkspaceRef=="string"&&e.remoteWorkspaceRef.trim().length>0;if(n==="remote_managed"){!o&&!i&&t.addIssue({code:r.ZodIssueCode.custom,message:"Remote-managed workspace requires remoteWorkspaceRef or repoUrl.",path:["remoteWorkspaceRef"]});return}!s&&!i&&t.addIssue({code:r.ZodIssueCode.custom,message:"Workspace requires at least one of cwd or repoUrl.",path:["cwd"]})}var du=r.object({...zh,isPrimary:r.boolean().optional().default(!1)}).superRefine(mT),qh=r.object({...zh,isPrimary:r.boolean().optional()}).partial(),Bh={goalId:r.string().uuid().optional().nullable(),goalIds:r.array(r.string().uuid()).optional(),name:r.string().min(1),description:r.string().optional().nullable(),status:r.enum(Fa).optional().default("backlog"),leadAgentId:r.string().uuid().optional().nullable(),targetDate:r.string().optional().nullable(),color:r.string().optional().nullable(),icon:r.enum(sa).optional().nullable(),env:be.optional().nullable(),executionWorkspacePolicy:uu.optional().nullable(),archivedAt:r.string().datetime().optional().nullable()},Vh=r.object({...Bh,workspace:du.optional()}),Kh=r.object(Bh).partial();var pu=r.enum(va),Hh=r.enum(Ea),Wh=r.enum(Aa),mu=r.object({exact:r.string().min(1).max(1e4),prefix:r.string().max(1e3).default(""),suffix:r.string().max(1e3).default("")}).strict(),fu=r.object({normalizedStart:r.number().int().nonnegative(),normalizedEnd:r.number().int().nonnegative(),markdownStart:r.number().int().nonnegative(),markdownEnd:r.number().int().nonnegative()}).strict().superRefine((e,t)=>{e.normalizedEnd<=e.normalizedStart&&t.addIssue({code:r.ZodIssueCode.custom,message:"normalizedEnd must be greater than normalizedStart",path:["normalizedEnd"]}),e.markdownEnd<=e.markdownStart&&t.addIssue({code:r.ZodIssueCode.custom,message:"markdownEnd must be greater than markdownStart",path:["markdownEnd"]})}),gu=r.object({quote:mu,position:fu}).strict(),Zh=r.object({baseRevisionId:r.string().uuid(),baseRevisionNumber:r.number().int().positive(),selector:gu,body:H.pipe(r.string().min(1).max(2e4)),issueCommentId:r.string().uuid().nullable().optional()}).strict(),Gh=r.object({body:H.pipe(r.string().min(1).max(2e4)),issueCommentId:r.string().uuid().nullable().optional()}).strict(),Yh=r.object({status:pu.optional()}).strict().refine(e=>e.status!=null,{message:"At least one field must be provided"});var yu=200;var Su=20,bu=50,_u=200;function hu(e){return Array.isArray(e)?e[0]:e}function Jh(e,t,n,s){let i=hu(e),o=typeof i=="number"?i:typeof i=="string"&&i.trim().length>0?Number.parseInt(i,10):Number.NaN;return Number.isFinite(o)?Math.min(s,Math.max(n,Math.floor(o))):t}var Xh=r.object({q:r.preprocess(hu,r.string().optional().default("")).transform(e=>e.slice(0,yu)),scope:r.preprocess(hu,r.enum(Zs).catch("all")).optional().default("all"),limit:r.unknown().optional().transform(e=>Jh(e,Su,1,bu)),offset:r.unknown().optional().transform(e=>Jh(e,0,0,_u))});var bi=r.enum(_a),Mr=r.object({strategy:r.enum(ka).default("manual"),note:r.string().trim().min(1).max(500).optional().nullable()}).strict(),Qh=r.object({mode:bi,releasePolicy:Mr.optional().nullable()}).strict(),ey=r.object({mode:bi,reason:r.string().trim().min(1).max(1e3).optional().nullable(),releasePolicy:Mr.optional().nullable(),metadata:r.record(r.string(),r.unknown()).optional().nullable()}).strict(),ty=r.object({reason:r.string().trim().min(1).max(1e3).optional().nullable(),releasePolicy:Mr.optional().nullable(),metadata:r.record(r.string(),r.unknown()).optional().nullable()}).strict();var fT=128;function gT(e){return new TextEncoder().encode(e).length}var _i=r.enum(["execution_workspace","project_workspace"]),ki=r.enum(["auto","execution","project"]).default("auto"),ku=r.enum(["all","recent","changed"]).default("all"),vu=r.enum(["text","image","video","pdf","unsupported"]),Eu=r.enum(["file","directory","remote_resource"]),vi=r.object({kind:r.literal("workspace_file"),issueId:r.string().uuid().optional(),projectId:r.string().uuid().optional(),projectName:r.string().min(1).optional(),workspaceKind:_i,workspaceId:r.string().uuid(),relativePath:r.string().min(1),line:r.number().int().positive().nullable().optional(),column:r.number().int().positive().nullable().optional(),displayPath:r.string().min(1)}),ny=r.object({projectId:r.string().uuid().optional(),workspaceId:r.string().uuid().optional(),path:r.string().min(1).refine(e=>!/[\x00-\x1f\x7f]/.test(e),{message:"Workspace file path contains an invalid character",params:{code:"invalid_path"}}),workspace:ki.optional()}).refine(e=>!!e.projectId==!!e.workspaceId,{message:"Workspace file target requires both projectId and workspaceId",path:["workspaceId"],params:{code:"invalid_target"}}),ry=r.object({projectId:r.string().uuid().optional(),workspaceId:r.string().uuid().optional(),workspace:ki.optional(),path:r.string().min(1).refine(e=>!/[\x00-\x1f\x7f]/.test(e),{message:"Workspace folder path contains an invalid character",params:{code:"invalid_path"}}).optional(),mode:ku.optional(),q:r.string().refine(e=>!/[\x00-\x1f\x7f]/.test(e),{message:"Workspace file search contains an invalid character",params:{code:"invalid_query"}}).refine(e=>gT(e.trim())<=fT,{message:"Workspace file search is too long",params:{code:"invalid_query"}}).optional(),limit:r.coerce.number().int().min(1).max(100).default(25),offset:r.coerce.number().int().min(0).max(1e4).default(0)}).refine(e=>!!e.projectId==!!e.workspaceId,{message:"Workspace file target requires both projectId and workspaceId",path:["workspaceId"],params:{code:"invalid_target"}}),Au=r.object({kind:Eu,provider:r.string().min(1),title:r.string().min(1),displayPath:r.string().min(1),workspaceLabel:r.string().min(1),workspaceKind:_i,workspaceId:r.string().uuid(),projectId:r.string().uuid().nullable().optional(),projectName:r.string().min(1).nullable().optional(),contentType:r.string().nullable().optional(),byteSize:r.number().int().nonnegative().nullable().optional(),previewKind:vu,denialReason:r.string().nullable().optional(),capabilities:r.object({preview:r.boolean(),download:r.boolean(),listChildren:r.boolean()})}),sy=r.object({resource:Au,content:r.object({encoding:r.enum(["utf8","base64"]),data:r.string()})});function hT(e){return`/api/attachments/${e}/content`}var wu=r.enum(["preview_url","runtime_service","pull_request","branch","commit","artifact","document"]),Iu=r.enum(["active","ready_for_review","approved","changes_requested","merged","closed","failed","archived","draft"]),Tu=r.enum(["none","needs_board_review","approved","changes_requested"]),iy=r.object({attachmentId:r.string().uuid(),contentType:r.string().min(1),byteSize:r.number().int().nonnegative(),contentPath:r.string().min(1),openPath:r.string().min(1),downloadPath:r.string().min(1),originalFilename:r.string().optional().nullable()}).superRefine((e,t)=>{let n=hT(e.attachmentId);e.contentPath!==n&&t.addIssue({code:r.ZodIssueCode.custom,path:["contentPath"],message:"contentPath must point to the same-origin attachment content route"}),e.openPath!==n&&t.addIssue({code:r.ZodIssueCode.custom,path:["openPath"],message:"openPath must point to the same-origin attachment content route"}),e.downloadPath!==`${n}?download=1`&&t.addIssue({code:r.ZodIssueCode.custom,path:["downloadPath"],message:"downloadPath must point to the same-origin attachment download route"})}),xu=r.object({resourceRef:vi.optional().nullable()}).passthrough(),Ru=r.object({projectId:r.string().uuid().optional().nullable(),executionWorkspaceId:r.string().uuid().optional().nullable(),runtimeServiceId:r.string().uuid().optional().nullable(),type:wu,provider:r.string().min(1),externalId:r.string().optional().nullable(),title:r.string().min(1),url:r.string().url().optional().nullable(),status:Iu.default("active"),reviewState:Tu.optional().default("none"),isPrimary:r.boolean().optional().default(!1),healthStatus:r.enum(["unknown","healthy","unhealthy"]).optional().default("unknown"),summary:r.string().optional().nullable(),metadata:xu.optional().nullable(),createdByRunId:r.string().uuid().optional().nullable()}),oy=Ru.partial();var Cu=30,Ou=100,Lu=160,Nu=r.enum(["document","attachment","work_product"]),Ai=r.enum(["image","video","text","document","file","empty"]),wi=r.enum(["none","task","parent_task"]),ay=r.object({kind:r.enum(["image","video","text","document","file","all"]).optional().default("all"),projectId:r.string().uuid().optional(),q:r.string().trim().max(Lu).optional(),groupBy:wi.optional().default("none"),groupIssueId:r.string().uuid().optional(),limit:r.coerce.number().int().min(1).max(Ou).optional().default(Cu),cursor:r.string().min(1).optional()}),Ii=r.object({id:r.string().min(1),source:Nu,mediaKind:Ai,title:r.string(),previewText:r.string().nullable(),contentType:r.string().nullable(),contentPath:r.string().nullable(),openPath:r.string().nullable(),downloadPath:r.string().nullable(),issue:r.object({id:r.string().uuid(),identifier:r.string(),title:r.string()}),project:r.object({id:r.string().uuid(),name:r.string()}).nullable(),createdByAgent:r.object({id:r.string().uuid(),name:r.string()}).nullable(),updatedAt:r.string().datetime(),href:r.string().min(1)}),Ei=r.object({id:r.string().min(1),groupBy:wi.exclude(["none"]),issue:r.object({id:r.string().uuid(),identifier:r.string(),title:r.string()}),title:r.string(),count:r.number().int().min(0),mediaKinds:r.array(Ai),previewArtifacts:r.array(Ii),updatedAt:r.string().datetime(),href:r.string().min(1)}),cy=r.object({artifacts:r.array(Ii),groups:r.array(Ei).optional(),selectedGroup:Ei.nullable().optional(),nextCursor:r.string().nullable()});var Pu=r.object({title:r.string().min(1),description:r.string().optional().nullable(),level:r.enum(Ma).optional().default("task"),status:r.enum(Da).optional().default("planned"),parentId:r.string().uuid().optional().nullable(),ownerAgentId:r.string().uuid().optional().nullable()}),ly=Pu.partial();var uy=r.object({type:r.enum(Wa),requestedByAgentId:r.string().uuid().optional().nullable(),payload:r.record(r.string(),r.unknown()),issueIds:r.array(r.string().uuid()).optional()}),dy=r.object({decisionNote:H.optional().nullable()}),py=r.object({decisionNote:H.optional().nullable()}),my=r.object({payload:r.record(r.string(),r.unknown()).optional()}),fy=r.object({body:H.pipe(r.string().min(1))});var gy=r.object({agentId:r.string().uuid(),issueId:r.string().uuid().optional().nullable(),projectId:r.string().uuid().optional().nullable(),goalId:r.string().uuid().optional().nullable(),heartbeatRunId:r.string().uuid().optional().nullable(),billingCode:r.string().optional().nullable(),provider:r.string().min(1),biller:r.string().min(1).optional(),billingType:r.enum(Ya).optional().default("unknown"),model:r.string().min(1),inputTokens:r.number().int().nonnegative().optional().default(0),cachedInputTokens:r.number().int().nonnegative().optional().default(0),outputTokens:r.number().int().nonnegative().optional().default(0),costCents:r.number().int().nonnegative(),occurredAt:r.string().datetime()}).transform(e=>({...e,biller:e.biller??e.provider})),hy=r.object({budgetMonthlyCents:r.number().int().nonnegative()});var yy=r.object({agentId:r.string().uuid().optional().nullable(),issueId:r.string().uuid().optional().nullable(),projectId:r.string().uuid().optional().nullable(),goalId:r.string().uuid().optional().nullable(),heartbeatRunId:r.string().uuid().optional().nullable(),costEventId:r.string().uuid().optional().nullable(),billingCode:r.string().optional().nullable(),description:r.string().max(500).optional().nullable(),eventKind:r.enum(Ja),direction:r.enum(Xa).optional().default("debit"),biller:r.string().min(1),provider:r.string().min(1).optional().nullable(),executionAdapterType:r.enum(yr).optional().nullable(),pricingTier:r.string().min(1).optional().nullable(),region:r.string().min(1).optional().nullable(),model:r.string().min(1).optional().nullable(),quantity:r.number().int().nonnegative().optional().nullable(),unit:r.enum(Qa).optional().nullable(),amountCents:r.number().int().nonnegative(),currency:r.string().length(3).optional().default("USD"),estimated:r.boolean().optional().default(!1),externalInvoiceId:r.string().optional().nullable(),metadataJson:r.record(r.string(),r.unknown()).optional().nullable(),occurredAt:r.string().datetime()}).transform(e=>({...e,currency:e.currency.toUpperCase()}));var Sy=r.object({namespace:r.string().trim().min(1).max(120).regex(/^[a-zA-Z0-9/_-]+$/).optional()});var Ti=r.string().trim().regex(/^[A-Za-z][A-Za-z0-9_]*$/),by=r.enum(["working","review","done","cancelled"]),cY=r.enum(["open","working","review","done","cancelled"]),Mu=r.object({kind:r.enum(["any_human","user","agent"]).optional().default("any_human"),id:r.string().trim().min(1).max(200).optional()}).superRefine((e,t)=>{e.kind!=="any_human"&&(typeof e.id!="string"||e.id.length===0)&&t.addIssue({code:r.ZodIssueCode.custom,path:["id"],message:"Specific stage approvers require an id"})}),Du=r.object({type:r.literal("run_routine"),routineId:r.string().uuid(),id:r.string().trim().min(1).max(200).optional(),projectId:r.string().uuid().optional().nullable(),projectWorkspaceId:r.string().uuid().optional().nullable(),executionWorkspaceId:r.string().uuid().optional().nullable(),executionWorkspacePreference:r.enum(an).optional().nullable(),executionWorkspaceSettings:bt.optional().nullable()}).passthrough(),Fu=r.object({routineId:r.string().uuid().optional().nullable(),assigneeAgentId:r.string().uuid().optional().nullable(),instructionsBody:r.string().optional().nullable(),projectId:r.string().uuid().optional().nullable(),projectWorkspaceId:r.string().uuid().optional().nullable(),executionWorkspaceId:r.string().uuid().optional().nullable(),executionWorkspacePreference:r.enum(an).optional().nullable(),executionWorkspaceSettings:bt.optional().nullable()}).passthrough(),yT=r.object({version:r.literal(1).default(1),mode:r.enum(["all_except","only"]).default("all_except"),includeFields:r.array(Ti).max(100).default([]),excludeFields:r.array(Ti).max(100).default([])}),ST=r.object({targetPipelineId:r.string().uuid(),targetStageKey:r.string().trim().min(1).max(120),pieceNoun:r.string().trim().min(1).max(80).default("piece"),carryOverPolicy:yT.optional(),inheritFields:r.array(Ti).max(100).default([]),advanceTo:r.string().trim().min(1).max(120).optional(),waitForPieces:r.boolean().optional().default(!1),whenFinishedMoveTo:r.string().trim().min(1).max(120).optional()}).superRefine((e,t)=>{e.waitForPieces&&!e.whenFinishedMoveTo&&t.addIssue({code:r.ZodIssueCode.custom,path:["whenFinishedMoveTo"],message:"Breakdown stages that wait for pieces need a destination stage"})}),$u=r.object({key:Ti,label:r.string().trim().max(120),type:r.enum(["select","text","multiline"]).default("text"),options:r.array(r.string().trim().min(1).max(120)).max(50).optional().default([]),required:r.boolean().optional().default(!1),showInAddForm:r.boolean().optional().default(!1)}).superRefine((e,t)=>{e.type==="select"&&e.options.length===0&&t.addIssue({code:r.ZodIssueCode.custom,path:["options"],message:"Select variables require at least one option"}),e.type!=="select"&&e.options.length>0&&t.addIssue({code:r.ZodIssueCode.custom,path:["options"],message:"Only select variables can define options"})}),_y=r.object({variables:r.array($u).default([]),disabled:r.boolean().optional(),disabledReason:r.string().trim().max(1e3).nullable().optional(),requireApproval:r.boolean().optional(),approver:Mu.optional(),reviewerKind:r.enum(["human","any"]).optional(),whatHappensHere:r.string().trim().max(1e4).optional(),onEnter:Du.optional(),automation:Fu.optional(),breakdown:ST.optional(),approveToStageKey:r.string().trim().min(1).max(120).optional(),rejectToStageKey:r.string().trim().min(1).max(120).optional(),requestChangesToStageKey:r.string().trim().min(1).max(120).optional(),requireRejectReason:r.boolean().optional(),requireRequestChangesReason:r.boolean().optional(),requireChildrenTerminal:r.boolean().optional(),requireNoUnresolvedDrift:r.boolean().optional()}).passthrough().superRefine((e,t)=>{let n=new Set;e.variables.forEach((s,i)=>{n.has(s.key)&&t.addIssue({code:r.ZodIssueCode.custom,path:["variables",i,"key"],message:"Pipeline stage variable keys must be unique"}),n.add(s.key)})}),Uu=r.enum(["current_stage","previous_stage"]),ju=r.object({retireDirectChildren:r.boolean().default(!0),retireDescendants:r.boolean().default(!0),cancelLinkedAutomationIssues:r.boolean().default(!0)}),ky=r.object({scope:Uu,targetStageId:r.string().uuid().nullable().optional(),expectedVersion:r.number().int().positive(),cleanup:ju.default({retireDirectChildren:!0,retireDescendants:!0,cancelLinkedAutomationIssues:!0})});var vy=r.object({allowedJoinTypes:r.enum(sc).default("both"),humanRole:r.enum(jn).optional().nullable(),defaultsPayload:r.record(r.string(),r.unknown()).optional().nullable(),agentMessage:r.string().max(4e3).optional().nullable()}),Ey=r.object({agentMessage:r.string().max(4e3).optional().nullable()}),Ay=r.object({requestType:r.enum(Ms),agentName:r.string().min(1).max(120).optional(),adapterType:yc,capabilities:r.string().max(4e3).optional().nullable(),agentDefaultsPayload:r.record(r.string(),r.unknown()).optional().nullable(),responsesWebhookUrl:r.string().max(4e3).optional().nullable(),responsesWebhookMethod:r.string().max(32).optional().nullable(),responsesWebhookHeaders:r.record(r.string(),r.unknown()).optional().nullable(),paperclipApiUrl:r.string().max(4e3).optional().nullable(),webhookAuthHeader:r.string().max(4e3).optional().nullable()}),wy=r.object({status:r.enum(ic).optional(),requestType:r.enum(Ms).optional()}),Iy=r.object({state:r.enum(["active","revoked","accepted","expired"]).optional(),limit:r.coerce.number().int().min(1).max(100).optional().default(20),offset:r.coerce.number().int().min(0).optional().default(0)}),Ty=r.object({claimSecret:r.string().min(16).max(256)}),zu=r.enum(["board","instance_admin_required"]),xy=r.object({command:r.string().min(1).max(240),clientName:r.string().max(120).optional().nullable(),requestedAccess:zu.default("board"),requestedCompanyId:r.string().uuid().optional().nullable()}),Ry=r.object({token:r.string().min(16).max(256)}),Cy=r.object({name:r.string().trim().min(1).max(120).default("paperclipai cli"),expiresAt:r.coerce.date().optional().nullable(),requestedCompanyId:r.string().uuid().optional().nullable()}),qu=r.object({grants:r.array(r.object({permissionKey:r.enum(Ds),scope:r.record(r.string(),r.unknown()).optional().nullable()}))}),Oy=["pending","active","suspended"],Ly=r.object({membershipRole:r.enum(jn).optional().nullable(),status:r.enum(Oy).optional()}).refine(e=>e.membershipRole!==void 0||e.status!==void 0,{message:"membershipRole or status is required"}),Ny=r.object({membershipRole:r.enum(jn).optional().nullable(),status:r.enum(Oy).optional(),grants:qu.shape.grants.default([])}).refine(e=>e.membershipRole!==void 0||e.status!==void 0,{message:"membershipRole or status is required"}),Py=r.object({reassignment:r.object({assigneeAgentId:r.string().uuid().optional().nullable(),assigneeUserId:r.string().uuid().optional().nullable()}).optional().nullable()}).superRefine((e,t)=>{e.reassignment?.assigneeAgentId&&e.reassignment.assigneeUserId&&t.addIssue({code:r.ZodIssueCode.custom,message:"Choose either an agent or user reassignment target",path:["reassignment"]})}),My=r.object({companyIds:r.array(r.string().uuid()).default([])}),Dy=r.object({query:r.string().trim().max(120).optional().default("")}),bT=/^\/api\/assets\/[^/?#]+\/content(?:\?[^#]*)?(?:#.*)?$/;function _T(e){if(bT.test(e))return!0;try{let t=new URL(e);return t.protocol==="https:"||t.protocol==="http:"}catch{return!1}}var Fy=r.string().trim().min(1).max(4e3).refine(_T,{message:"Invalid profile image URL"}),Bu=r.object({id:r.string().min(1),email:r.string().email().nullable(),name:r.string().min(1).max(120).nullable(),image:Fy.nullable()}),$y=r.object({session:r.object({id:r.string().min(1),userId:r.string().min(1)}),user:Bu}),Uy=r.object({name:r.string().trim().min(1).max(120),image:r.union([Fy,r.literal(""),r.null()]).optional().transform(e=>e===""?null:e)});var Dr=r.record(r.string(),r.unknown()).refine(e=>Object.keys(e).length===0?!0:typeof e.type=="string"||e.$ref!==void 0||e.oneOf!==void 0||e.anyOf!==void 0||e.allOf!==void 0,{message:"Must be a valid JSON Schema object (requires at least a 'type', '$ref', or composition keyword)"}),kT=/^(\*(?:\/[0-9]+)?|[0-9]+(?:-[0-9]+)?(?:\/[0-9]+)?)(?:,(\*(?:\/[0-9]+)?|[0-9]+(?:-[0-9]+)?(?:\/[0-9]+)?))*$/;function vT(e){let t=e.trim();if(!t)return!1;let n=t.split(/\s+/);return n.length!==5?!1:n.every(s=>kT.test(s))}var Ku=r.object({jobKey:r.string().min(1),displayName:r.string().min(1),description:r.string().optional(),schedule:r.string().refine(e=>vT(e),{message:"schedule must be a valid 5-field cron expression (e.g. '*/15 * * * *')"}).optional()}),Hu=r.object({endpointKey:r.string().min(1),displayName:r.string().min(1),description:r.string().optional()}),Wu=r.object({name:r.string().min(1),displayName:r.string().min(1),description:r.string().min(1),parametersSchema:Dr}),jy=r.string().min(1).max(100).regex(/^[A-Za-z_][A-Za-z0-9_-]*$/,"Template config binding fields must be top-level config keys using letters, digits, underscores, or hyphens").refine(e=>e!=="provider",{message:"Template config binding must not replace the sandbox provider key"}),ET=r.object({field:jy,unsetFields:r.array(jy).max(20).optional()}).strict().superRefine((e,t)=>{let n=e.unsetFields??[],s=new Set;for(let[i,o]of n.entries())o===e.field&&t.addIssue({code:r.ZodIssueCode.custom,message:"Template config binding cannot unset the same field it sets",path:["unsetFields",i]}),s.has(o)&&t.addIssue({code:r.ZodIssueCode.custom,message:"Template config binding unsetFields must be unique",path:["unsetFields",i]}),s.add(o)}),Zu=r.object({driverKey:r.string().min(1).regex(/^[a-z0-9][a-z0-9._-]*$/,"Environment driver key must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, hyphens, or underscores"),kind:r.enum(["environment_driver","sandbox_provider"]).optional(),displayName:r.string().min(1).max(100),description:r.string().max(500).optional(),supportsReusableLeases:r.boolean().optional(),supportsInteractiveSetup:r.boolean().optional(),interactiveSetupConnectionTypes:r.array(r.string().min(1).max(100)).max(10).optional(),supportsTemplateCapture:r.boolean().optional(),templateRefKind:r.string().min(1).max(100).optional(),templateConfigBinding:ET.optional(),supportsTemplateDelete:r.boolean().optional(),configSchema:Dr}),AT=r.object({agentKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"agentKey must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"}),displayName:r.string().min(1).max(100),role:r.string().min(1).max(100).optional(),title:r.string().max(200).nullable().optional(),icon:r.string().max(100).nullable().optional(),capabilities:r.string().max(2e3).nullable().optional(),adapterType:r.string().min(1).max(100).optional(),adapterPreference:r.array(r.string().min(1).max(100)).max(10).optional(),adapterConfig:r.record(r.string(),r.unknown()).optional(),runtimeConfig:r.record(r.string(),r.unknown()).optional(),permissions:r.record(r.string(),r.unknown()).optional(),status:r.enum(["idle","paused"]).optional(),budgetMonthlyCents:r.number().int().min(0).optional(),instructions:r.object({entryFile:r.string().min(1).max(200).optional(),content:r.string().max(2e5).optional(),files:r.record(r.string().max(2e5)).optional(),assetPath:r.string().min(1).max(500).optional()}).optional()}),wT=r.object({projectKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"projectKey must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"}),displayName:r.string().min(1).max(120),description:r.string().max(2e3).nullable().optional(),status:r.enum(["backlog","planned","in_progress","completed","cancelled"]).optional(),color:r.string().max(32).nullable().optional(),settings:r.record(r.string(),r.unknown()).optional()}),zy=r.object({pluginKey:r.string().min(1).max(100).optional(),resourceKind:r.enum(["agent","project","routine","skill"]),resourceKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"resourceKey must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"})}),IT=r.object({routineKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"routineKey must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"}),title:r.string().trim().min(1).max(200),description:r.string().max(1e4).nullable().optional(),assigneeRef:zy.extend({resourceKind:r.literal("agent")}).nullable().optional(),projectRef:zy.extend({resourceKind:r.literal("project")}).nullable().optional(),goalId:r.string().uuid().nullable().optional(),status:r.enum(Fn).optional(),priority:r.enum(Ke).optional(),concurrencyPolicy:r.enum($n).optional(),catchUpPolicy:r.enum(Un).optional(),variables:r.array(_t).optional(),triggers:r.array(r.object({kind:r.enum(br),label:r.string().trim().max(120).nullable().optional(),enabled:r.boolean().optional(),cronExpression:r.string().trim().min(1).optional().nullable(),timezone:r.string().trim().min(1).optional().nullable(),signingMode:r.enum(tn).optional().nullable(),replayWindowSec:r.number().int().min(30).max(86400).optional().nullable()})).max(20).optional(),issueTemplate:r.object({surfaceVisibility:r.enum(ga).optional(),originId:r.string().trim().max(255).nullable().optional(),billingCode:r.string().trim().max(200).nullable().optional()}).optional()}),Vu=r.string().min(1).max(500).refine(e=>!e.startsWith("/")&&!e.includes("..")&&!e.includes("\\")&&!e.split("/").some(t=>t===""||t==="."),{message:"local folder paths must be relative paths without traversal, empty segments, or backslashes"}),TT=r.object({folderKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"folderKey must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"}),displayName:r.string().min(1).max(100),description:r.string().max(500).optional(),access:r.enum(["read","readWrite"]).optional(),requiredDirectories:r.array(Vu).optional(),requiredFiles:r.array(Vu).optional()}),qy=r.object({path:Vu.refine(e=>e.toLowerCase()!=="skill.md",{message:"managed skill files cannot replace SKILL.md; use markdown for the main skill file"}),content:r.string().max(2e5)}),By=r.object({skillKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"skillKey must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"}),displayName:r.string().min(1).max(100),slug:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"slug must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, colons, underscores, or hyphens"}).optional(),description:r.string().max(2e3).nullable().optional(),markdown:r.string().max(2e5).optional(),files:r.array(qy).max(50).optional()}).superRefine((e,t)=>{let n=(e.files??[]).map(i=>i.path),s=n.filter((i,o)=>n.indexOf(i)!==o);s.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate managed skill file paths: ${[...new Set(s)].join(", ")}`,path:["files"]})}),Gu=r.object({type:r.enum(js),id:r.string().min(1),displayName:r.string().min(1),exportName:r.string().min(1),entityTypes:r.array(r.enum(_r)).optional(),routePath:r.string().regex(/^[a-z0-9][a-z0-9-]*$/,{message:"routePath must be a lowercase single-segment slug (letters, numbers, hyphens)"}).optional(),order:r.number().int().optional()}).superRefine((e,t)=>{["detailTab","taskDetailView","contextMenuItem","commentAnnotation","commentContextMenuItem","projectSidebarItem"].includes(e.type)&&(!e.entityTypes||e.entityTypes.length===0)&&t.addIssue({code:r.ZodIssueCode.custom,message:`${e.type} slots require at least one entityType`,path:["entityTypes"]}),e.type==="projectSidebarItem"&&e.entityTypes&&!e.entityTypes.includes("project")&&t.addIssue({code:r.ZodIssueCode.custom,message:'projectSidebarItem slots require entityTypes to include "project"',path:["entityTypes"]}),e.type==="commentAnnotation"&&e.entityTypes&&!e.entityTypes.includes("comment")&&t.addIssue({code:r.ZodIssueCode.custom,message:'commentAnnotation slots require entityTypes to include "comment"',path:["entityTypes"]}),e.type==="commentContextMenuItem"&&e.entityTypes&&!e.entityTypes.includes("comment")&&t.addIssue({code:r.ZodIssueCode.custom,message:'commentContextMenuItem slots require entityTypes to include "comment"',path:["entityTypes"]}),e.routePath&&e.type!=="page"&&e.type!=="routeSidebar"&&e.type!=="companySettingsPage"&&t.addIssue({code:r.ZodIssueCode.custom,message:"routePath is only supported for page, routeSidebar, and companySettingsPage slots",path:["routePath"]}),e.type==="routeSidebar"&&!e.routePath&&t.addIssue({code:r.ZodIssueCode.custom,message:"routeSidebar slots require routePath",path:["routePath"]}),e.type==="companySettingsPage"&&!e.routePath&&t.addIssue({code:r.ZodIssueCode.custom,message:"companySettingsPage slots require routePath",path:["routePath"]}),e.routePath&&Xm.includes(e.routePath)&&t.addIssue({code:r.ZodIssueCode.custom,message:`routePath "${e.routePath}" is reserved by the host`,path:["routePath"]}),e.type==="companySettingsPage"&&e.routePath&&zs.includes(e.routePath)&&t.addIssue({code:r.ZodIssueCode.custom,message:`company settings routePath "${e.routePath}" is reserved by the host`,path:["routePath"]})}),xT=["detailTab","taskDetailView","contextMenuItem","commentAnnotation","commentContextMenuItem","projectSidebarItem"],RT={hostInline:["inline","compact","default"],hostOverlay:["compact","default","wide","full"],hostRoute:["default","wide","full"],external:[],iframe:["compact","default","wide","full"]},Yu=r.object({type:r.enum(mc),target:r.string().min(1),params:r.record(r.string(),r.unknown()).optional()}).superRefine((e,t)=>{e.type==="performAction"&&e.target.includes("/")&&t.addIssue({code:r.ZodIssueCode.custom,message:"performAction launchers must target an action key, not a route or URL",path:["target"]}),e.type==="navigate"&&/^https?:\/\//.test(e.target)&&t.addIssue({code:r.ZodIssueCode.custom,message:"navigate launchers must target a host route, not an absolute URL",path:["target"]})}),Ju=r.object({environment:r.enum(gc),bounds:r.enum(fc).optional()}).superRefine((e,t)=>{if(!e.bounds)return;RT[e.environment].includes(e.bounds)||t.addIssue({code:r.ZodIssueCode.custom,message:`bounds "${e.bounds}" is not supported for render environment "${e.environment}"`,path:["bounds"]})}),xi=r.object({id:r.string().min(1),displayName:r.string().min(1),description:r.string().optional(),placementZone:r.enum(pc),exportName:r.string().min(1).optional(),entityTypes:r.array(r.enum(_r)).optional(),order:r.number().int().optional(),action:Yu,render:Ju.optional()}).superRefine((e,t)=>{xT.some(n=>n===e.placementZone)&&(!e.entityTypes||e.entityTypes.length===0)&&t.addIssue({code:r.ZodIssueCode.custom,message:`${e.placementZone} launchers require at least one entityType`,path:["entityTypes"]}),e.placementZone==="projectSidebarItem"&&e.entityTypes&&!e.entityTypes.includes("project")&&t.addIssue({code:r.ZodIssueCode.custom,message:'projectSidebarItem launchers require entityTypes to include "project"',path:["entityTypes"]}),e.action.type==="performAction"&&e.render&&t.addIssue({code:r.ZodIssueCode.custom,message:"performAction launchers cannot declare render hints",path:["render"]}),["openModal","openDrawer","openPopover"].includes(e.action.type)&&!e.render&&t.addIssue({code:r.ZodIssueCode.custom,message:`${e.action.type} launchers require render metadata`,path:["render"]}),e.action.type==="openModal"&&e.render?.environment==="hostInline"&&t.addIssue({code:r.ZodIssueCode.custom,message:"openModal launchers cannot use the hostInline render environment",path:["render","environment"]}),e.action.type==="openDrawer"&&e.render&&!["hostOverlay","iframe"].includes(e.render.environment)&&t.addIssue({code:r.ZodIssueCode.custom,message:"openDrawer launchers must use hostOverlay or iframe render environments",path:["render","environment"]}),e.action.type==="openPopover"&&e.render?.environment==="hostRoute"&&t.addIssue({code:r.ZodIssueCode.custom,message:"openPopover launchers cannot use the hostRoute render environment",path:["render","environment"]})}),Xu=r.object({namespaceSlug:r.string().regex(/^[a-z0-9][a-z0-9_]*$/,{message:"namespaceSlug must be lowercase letters, digits, or underscores and start with a letter or digit"}).max(40).optional(),migrationsDir:r.string().min(1).refine(e=>!e.startsWith("/")&&!e.includes("..")&&!/[\\]/.test(e),{message:"migrationsDir must be a relative package path without '..' or backslashes"}),coreReadTables:r.array(r.enum(oc)).optional()}),Qu=r.object({routeKey:r.string().min(1).max(100).regex(/^[a-z0-9][a-z0-9._:-]*$/,{message:"routeKey must be lowercase letters, digits, dots, colons, underscores, or hyphens"}),method:r.enum(ac),path:r.string().min(1).regex(/^\/[a-zA-Z0-9:_./-]*$/,{message:"path must start with / and contain only path-safe literal or :param segments"}).refine(e=>!e.includes("..")&&!e.includes("//")&&e!=="/api"&&!e.startsWith("/api/")&&e!=="/plugins"&&!e.startsWith("/plugins/"),{message:"path must stay inside the plugin api namespace"}),auth:r.enum(cc),capability:r.literal("api.routes.register"),checkoutPolicy:r.enum(lc).optional(),companyResolution:r.discriminatedUnion("from",[r.object({from:r.literal("body"),key:r.string().min(1)}),r.object({from:r.literal("query"),key:r.string().min(1)}),r.object({from:r.literal("issue"),param:r.string().min(1)})]).optional()}),CT=r.object({defaultTtlSeconds:r.number().int().positive().max(86400).optional(),staleAfterSeconds:r.number().int().positive().max(604800).optional()}).superRefine((e,t)=>{e.defaultTtlSeconds!=null&&e.staleAfterSeconds!=null&&e.staleAfterSeconds<e.defaultTtlSeconds&&t.addIssue({code:r.ZodIssueCode.custom,message:"staleAfterSeconds must be greater than or equal to defaultTtlSeconds",path:["staleAfterSeconds"]})}),OT=r.object({providerKey:si,displayName:r.string().min(1).max(100),objectTypes:r.array(ii).min(1),urlPatterns:r.array(r.string().trim().min(1).max(500)).optional(),refreshPolicy:CT.optional(),webhookEndpointKeys:r.array(r.string().min(1)).optional()}).superRefine((e,t)=>{let n=e.objectTypes.filter((o,a)=>e.objectTypes.indexOf(o)!==a);n.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate objectTypes: ${[...new Set(n)].join(", ")}`,path:["objectTypes"]});let s=e.webhookEndpointKeys??[],i=s.filter((o,a)=>s.indexOf(o)!==a);i.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate webhookEndpointKeys: ${[...new Set(i)].join(", ")}`,path:["webhookEndpointKeys"]})}),Vy=r.object({id:r.string().min(1).regex(/^[a-z0-9][a-z0-9._-]*$/,"Plugin id must start with a lowercase alphanumeric and contain only lowercase letters, digits, dots, hyphens, or underscores"),apiVersion:r.literal(1),version:r.string().min(1).regex(/^\d+\.\d+\.\d+(-[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?(\+[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?$/,"Version must follow semver (e.g. 1.0.0 or 1.0.0-beta.1)"),displayName:r.string().min(1).max(100),description:r.string().min(1).max(500),author:r.string().min(1).max(200),categories:r.array(r.enum($s)).min(1),minimumHostVersion:r.string().regex(/^\d+\.\d+\.\d+(-[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?(\+[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?$/,"minimumHostVersion must follow semver (e.g. 1.0.0)").optional(),minimumPaperclipVersion:r.string().regex(/^\d+\.\d+\.\d+(-[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?(\+[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?$/,"minimumPaperclipVersion must follow semver (e.g. 1.0.0)").optional(),capabilities:r.array(r.enum(Us)).min(1),entrypoints:r.object({worker:r.string().min(1),ui:r.string().min(1).optional()}),instanceConfigSchema:Dr.optional(),jobs:r.array(Ku).optional(),webhooks:r.array(Hu).optional(),tools:r.array(Wu).optional(),database:Xu.optional(),apiRoutes:r.array(Qu).optional(),environmentDrivers:r.array(Zu).optional(),agents:r.array(AT).optional(),projects:r.array(wT).optional(),routines:r.array(IT).optional(),skills:r.array(By).optional(),localFolders:r.array(TT).optional(),objectReferences:r.array(OT).optional(),launchers:r.array(xi).optional(),ui:r.object({slots:r.array(Gu).min(1).optional(),launchers:r.array(xi).optional()}).optional()}).superRefine((e,t)=>{let n=(e.ui?.slots?.length??0)>0,s=(e.ui?.launchers?.length??0)>0;if((n||s)&&!e.entrypoints.ui&&t.addIssue({code:r.ZodIssueCode.custom,message:"entrypoints.ui is required when ui.slots or ui.launchers are declared",path:["entrypoints","ui"]}),e.minimumHostVersion&&e.minimumPaperclipVersion&&e.minimumHostVersion!==e.minimumPaperclipVersion&&t.addIssue({code:r.ZodIssueCode.custom,message:"minimumHostVersion and minimumPaperclipVersion must match when both are declared",path:["minimumHostVersion"]}),e.tools&&e.tools.length>0&&(e.capabilities.includes("agent.tools.register")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'agent.tools.register' is required when tools are declared",path:["capabilities"]})),e.environmentDrivers&&e.environmentDrivers.length>0&&(e.capabilities.includes("environment.drivers.register")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'environment.drivers.register' is required when environmentDrivers are declared",path:["capabilities"]})),e.agents&&e.agents.length>0&&(e.capabilities.includes("agents.managed")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'agents.managed' is required when managed agents are declared",path:["capabilities"]})),e.projects&&e.projects.length>0&&(e.capabilities.includes("projects.managed")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'projects.managed' is required when managed projects are declared",path:["capabilities"]})),e.routines&&e.routines.length>0&&(e.capabilities.includes("routines.managed")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'routines.managed' is required when managed routines are declared",path:["capabilities"]})),e.skills&&e.skills.length>0&&(e.capabilities.includes("skills.managed")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'skills.managed' is required when managed skills are declared",path:["capabilities"]})),e.localFolders&&e.localFolders.length>0&&(e.capabilities.includes("local.folders")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'local.folders' is required when local folders are declared",path:["capabilities"]})),e.jobs&&e.jobs.length>0&&(e.capabilities.includes("jobs.schedule")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'jobs.schedule' is required when jobs are declared",path:["capabilities"]})),e.webhooks&&e.webhooks.length>0&&(e.capabilities.includes("webhooks.receive")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'webhooks.receive' is required when webhooks are declared",path:["capabilities"]})),e.apiRoutes&&e.apiRoutes.length>0&&(e.capabilities.includes("api.routes.register")||t.addIssue({code:r.ZodIssueCode.custom,message:"Capability 'api.routes.register' is required when apiRoutes are declared",path:["capabilities"]})),e.objectReferences&&e.objectReferences.length>0){for(let a of["external.objects.detect","external.objects.read"])e.capabilities.includes(a)||t.addIssue({code:r.ZodIssueCode.custom,message:`Capability '${a}' is required when objectReferences are declared`,path:["capabilities"]});let o=new Set((e.webhooks??[]).map(a=>a.endpointKey));for(let[a,c]of e.objectReferences.entries())for(let l of c.webhookEndpointKeys??[])o.has(l)||t.addIssue({code:r.ZodIssueCode.custom,message:`objectReferences webhookEndpointKey "${l}" must match a declared webhook endpoint`,path:["objectReferences",a,"webhookEndpointKeys"]})}if(e.database){let o=["database.namespace.migrate","database.namespace.read"];for(let l of o)e.capabilities.includes(l)||t.addIssue({code:r.ZodIssueCode.custom,message:`Capability '${l}' is required when database migrations are declared`,path:["capabilities"]});let a=e.database.coreReadTables??[],c=a.filter((l,d)=>a.indexOf(l)!==d);c.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate database coreReadTables: ${[...new Set(c)].join(", ")}`,path:["database","coreReadTables"]})}if(e.jobs){let o=e.jobs.map(c=>c.jobKey),a=o.filter((c,l)=>o.indexOf(c)!==l);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate job keys: ${[...new Set(a)].join(", ")}`,path:["jobs"]})}if(e.webhooks){let o=e.webhooks.map(c=>c.endpointKey),a=o.filter((c,l)=>o.indexOf(c)!==l);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate webhook endpoint keys: ${[...new Set(a)].join(", ")}`,path:["webhooks"]})}if(e.apiRoutes){let o=e.apiRoutes.map(d=>d.routeKey),a=o.filter((d,m)=>o.indexOf(d)!==m);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate api route keys: ${[...new Set(a)].join(", ")}`,path:["apiRoutes"]});let c=e.apiRoutes.map(d=>`${d.method} ${d.path}`),l=c.filter((d,m)=>c.indexOf(d)!==m);l.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate api routes: ${[...new Set(l)].join(", ")}`,path:["apiRoutes"]})}if(e.tools){let o=e.tools.map(c=>c.name),a=o.filter((c,l)=>o.indexOf(c)!==l);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate tool names: ${[...new Set(a)].join(", ")}`,path:["tools"]})}if(e.environmentDrivers){let o=e.environmentDrivers.map(c=>c.driverKey),a=o.filter((c,l)=>o.indexOf(c)!==l);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate environment driver keys: ${[...new Set(a)].join(", ")}`,path:["environmentDrivers"]})}if(e.localFolders){let o=e.localFolders.map(c=>c.folderKey),a=o.filter((c,l)=>o.indexOf(c)!==l);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate local folder keys: ${[...new Set(a)].join(", ")}`,path:["localFolders"]})}if(e.agents){let o=e.agents.map(c=>c.agentKey),a=o.filter((c,l)=>o.indexOf(c)!==l);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate managed agent keys: ${[...new Set(a)].join(", ")}`,path:["agents"]})}if(e.projects){let o=e.projects.map(c=>c.projectKey),a=o.filter((c,l)=>o.indexOf(c)!==l);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate managed project keys: ${[...new Set(a)].join(", ")}`,path:["projects"]})}if(e.routines){let o=e.routines.map(c=>c.routineKey),a=o.filter((c,l)=>o.indexOf(c)!==l);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate managed routine keys: ${[...new Set(a)].join(", ")}`,path:["routines"]})}if(e.skills){let o=e.skills.map(c=>c.skillKey),a=o.filter((c,l)=>o.indexOf(c)!==l);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate managed skill keys: ${[...new Set(a)].join(", ")}`,path:["skills"]})}if(e.objectReferences){let o=e.objectReferences.map(c=>c.providerKey),a=o.filter((c,l)=>o.indexOf(c)!==l);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate object reference provider keys: ${[...new Set(a)].join(", ")}`,path:["objectReferences"]})}if(e.ui&&e.ui.slots){let o=e.ui.slots.map(c=>c.id),a=o.filter((c,l)=>o.indexOf(c)!==l);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate UI slot ids: ${[...new Set(a)].join(", ")}`,path:["ui","slots"]})}let i=[...e.launchers??[],...e.ui?.launchers??[]];if(i.length>0){let o=i.map(c=>c.id),a=o.filter((c,l)=>o.indexOf(c)!==l);a.length>0&&t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate launcher ids: ${[...new Set(a)].join(", ")}`,path:e.ui?.launchers?["ui","launchers"]:["launchers"]})}}),Ky=r.object({packageName:r.string().min(1),version:r.string().min(1).optional(),packagePath:r.string().min(1).optional()}),Hy=r.object({configJson:r.record(r.string(),r.unknown())}),Wy=r.object({configJson:r.record(r.string(),r.unknown())}),Zy=r.object({status:r.enum(Fs),lastError:r.string().nullable().optional()}),Gy=r.object({removeData:r.boolean().optional().default(!1)}),Yy=r.object({scopeKind:r.enum(zn),scopeId:r.string().min(1).optional(),namespace:r.string().min(1).optional(),stateKey:r.string().min(1)}),Jy=r.object({scopeKind:r.enum(zn),scopeId:r.string().min(1).optional(),namespace:r.string().min(1).optional(),stateKey:r.string().min(1),value:r.unknown()}),Xy=r.object({scopeKind:r.enum(zn).optional(),scopeId:r.string().min(1).optional(),namespace:r.string().min(1).optional()});var N="/api",MT={health:`${N}/health`,companies:`${N}/companies`,agents:`${N}/agents`,projects:`${N}/projects`,environments:`${N}/environments`,environmentCustomImageTemplate:`${N}/environments/:environmentId/custom-image-template`,environmentCustomImageTemplateDisable:`${N}/environments/:environmentId/custom-image-template`,environmentCustomImageTemplateRollback:`${N}/environments/:environmentId/custom-image-template/rollback`,environmentCustomImageSetupSessions:`${N}/environments/:environmentId/custom-image-setup-sessions`,environmentCustomImageSetupSession:`${N}/environment-custom-image-setup-sessions/:sessionId`,environmentCustomImageSetupSessionTerminalToken:`${N}/environment-custom-image-setup-sessions/:sessionId/terminal-session-token`,environmentCustomImageSetupSessionTerminalWs:`${N}/environment-custom-image-setup-sessions/:sessionId/terminal/ws`,environmentCustomImageSetupSessionFinish:`${N}/environment-custom-image-setup-sessions/:sessionId/finish`,environmentCustomImageSetupSessionCancel:`${N}/environment-custom-image-setup-sessions/:sessionId/cancel`,issues:`${N}/issues`,issueWatchdog:`${N}/issues/:issueId/watchdog`,issueTreeControl:`${N}/issues/:issueId/tree-control`,issueTreeHolds:`${N}/issues/:issueId/tree-holds`,goals:`${N}/goals`,approvals:`${N}/approvals`,secrets:`${N}/secrets`,userSecretDefinitions:`${N}/companies/:companyId/user-secret-definitions`,userSecretDefinition:`${N}/companies/:companyId/user-secret-definitions/:definitionId`,userSecretDefinitionCoverage:`${N}/companies/:companyId/user-secret-definitions/:definitionId/coverage`,myUserSecrets:`${N}/companies/:companyId/me/user-secrets`,myUserSecret:`${N}/companies/:companyId/me/user-secrets/:secretId`,secretProviderConfigs:`${N}/secret-provider-configs`,secretProviderConfigDiscoveryPreview:`${N}/companies/:companyId/secret-provider-configs/discovery/preview`,costs:`${N}/costs`,activity:`${N}/activity`,dashboard:`${N}/dashboard`,sidebarBadges:`${N}/sidebar-badges`,sidebarPreferences:`${N}/sidebar-preferences`,resourceMemberships:`${N}/resource-memberships`,invites:`${N}/invites`,joinRequests:`${N}/join-requests`,members:`${N}/members`,admin:`${N}/admin`};var Qy=r.object({version:r.literal(1),updatedAt:r.string(),source:r.enum(["onboard","configure","doctor"])}),eS=r.object({provider:r.enum(["claude","openai"]),apiKey:r.string().optional()}),tS=r.object({enabled:r.boolean().default(!0),intervalMinutes:r.number().int().min(1).max(10080).default(60),retentionDays:r.number().int().min(1).max(3650).default(7),dir:r.string().default("~/.paperclip/instances/default/data/backups")}),nS=r.object({mode:r.enum(["embedded-postgres","postgres"]).default("embedded-postgres"),connectionString:r.string().optional(),embeddedPostgresDataDir:r.string().default("~/.paperclip/instances/default/db"),embeddedPostgresPort:r.number().int().min(1).max(65535).default(54329),backup:tS.default({enabled:!0,intervalMinutes:60,retentionDays:7,dir:"~/.paperclip/instances/default/data/backups"})}),rS=r.object({mode:r.enum(["file","cloud"]),logDir:r.string().default("~/.paperclip/instances/default/logs")}),sS=r.object({deploymentMode:r.enum(Yo).default("local_trusted"),exposure:r.enum(Jo).default("private"),bind:r.enum(Xo).optional(),customBindHost:r.string().optional(),host:r.string().default("127.0.0.1"),port:r.number().int().min(1).max(65535).default(3100),allowedHostnames:r.array(r.string().min(1)).default([]),serveUi:r.boolean().default(!0)}),iS=r.object({baseUrlMode:r.enum(Qo).default("auto"),publicBaseUrl:r.string().url().optional(),disableSignUp:r.boolean().default(!1)}),oS=r.object({baseDir:r.string().default("~/.paperclip/instances/default/data/storage")}),aS=r.object({bucket:r.string().min(1).default("paperclip"),region:r.string().min(1).default("us-east-1"),endpoint:r.string().optional(),prefix:r.string().default(""),forcePathStyle:r.boolean().default(!1)}),cS=r.object({provider:r.enum(Ga).default("local_disk"),localDisk:oS.default({baseDir:"~/.paperclip/instances/default/data/storage"}),s3:aS.default({bucket:"paperclip",region:"us-east-1",prefix:"",forcePathStyle:!1})}),lS=r.object({keyFilePath:r.string().default("~/.paperclip/instances/default/secrets/master.key")}),uS=r.object({provider:r.enum(St).default("local_encrypted"),strictMode:r.boolean().default(!1),localEncrypted:lS.default({keyFilePath:"~/.paperclip/instances/default/secrets/master.key"})}),dS=r.object({enabled:r.boolean().default(!0)}).default({}),DT=r.object({$meta:Qy,llm:eS.optional(),database:nS,logging:rS,server:sS,telemetry:dS,auth:iS.default({baseUrlMode:"auto",disableSignUp:!1}),storage:cS.default({provider:"local_disk",localDisk:{baseDir:"~/.paperclip/instances/default/data/storage"},s3:{bucket:"paperclip",region:"us-east-1",prefix:"",forcePathStyle:!1}}),secrets:uS.default({provider:"local_encrypted",strictMode:!1,localEncrypted:{keyFilePath:"~/.paperclip/instances/default/secrets/master.key"}})}).superRefine((e,t)=>{e.server.deploymentMode==="local_trusted"&&e.server.exposure!=="private"&&t.addIssue({code:r.ZodIssueCode.custom,message:"server.exposure must be private when deploymentMode is local_trusted",path:["server","exposure"]});for(let n of _c({deploymentMode:e.server.deploymentMode,deploymentExposure:e.server.exposure,bind:e.server.bind,host:e.server.host,customBindHost:e.server.customBindHost}))t.addIssue({code:r.ZodIssueCode.custom,message:n,path:n.includes("customBindHost")?["server","customBindHost"]:["server","bind"]});e.auth.baseUrlMode==="explicit"&&!e.auth.publicBaseUrl&&t.addIssue({code:r.ZodIssueCode.custom,message:"auth.publicBaseUrl is required when auth.baseUrlMode is explicit",path:["auth","publicBaseUrl"]}),e.server.exposure==="public"&&e.auth.baseUrlMode!=="explicit"&&t.addIssue({code:r.ZodIssueCode.custom,message:"auth.baseUrlMode must be explicit when deploymentMode=authenticated and exposure=public",path:["auth","baseUrlMode"]}),e.server.exposure==="public"&&!e.auth.publicBaseUrl&&t.addIssue({code:r.ZodIssueCode.custom,message:"auth.publicBaseUrl is required when deploymentMode=authenticated and exposure=public",path:["auth","publicBaseUrl"]})});var pS=r.object({adapterType:r.string().min(1),enabled:r.boolean().default(!0),runtimeImage:r.string().optional(),envKeys:r.array(r.string()).optional(),allowFqdns:r.array(r.string()).optional(),probeCommand:r.array(r.string()).optional(),defaultEnv:r.record(r.string()).optional()}).strict(),FT=r.array(pS);import YT from"node:fs";import{AsyncLocalStorage as JT}from"node:async_hooks";import XT from"node:path";import{createInterface as QT}from"node:readline";import{fileURLToPath as ex}from"node:url";var Ri={PARSE_ERROR:-32700,INVALID_REQUEST:-32600,METHOD_NOT_FOUND:-32601,INVALID_PARAMS:-32602,INTERNAL_ERROR:-32603},Le={WORKER_UNAVAILABLE:-32e3,CAPABILITY_DENIED:-32001,WORKER_ERROR:-32002,TIMEOUT:-32003,METHOD_NOT_IMPLEMENTED:-32004,INVOCATION_SCOPE_DENIED:-32005,UNKNOWN:-32099};var ed=1,GT=Number.MAX_SAFE_INTEGER-1;function td(e,t,n){return ed>=GT&&(ed=1),{jsonrpc:"2.0",id:n??ed++,method:e,params:t}}function nd(e,t){return{jsonrpc:"2.0",id:e,result:t}}function Zn(e,t,n,s){return{jsonrpc:"2.0",id:e,error:s!==void 0?{code:t,message:n,data:s}:{code:t,message:n}}}function rd(e,t){return{jsonrpc:"2.0",method:e,params:t}}function sd(e){if(typeof e!="object"||e===null)return!1;let t=e;return t.jsonrpc==="2.0"&&typeof t.method=="string"&&"id"in t&&t.id!==void 0&&t.id!==null}function id(e){if(typeof e!="object"||e===null)return!1;let t=e;return t.jsonrpc==="2.0"&&typeof t.method=="string"&&!("id"in t)}function od(e){if(typeof e!="object"||e===null)return!1;let t=e;return t.jsonrpc==="2.0"&&"id"in t&&("result"in t||"error"in t)}function ad(e){return"result"in e&&!("error"in e&&e.error!==void 0)}function cd(e){return"error"in e&&e.error!==void 0}var mS=`
|
|
5
|
+
`;function ld(e){return JSON.stringify(e)+mS}function ud(e){let t=e.trim();if(t.length===0)throw new pt("Empty message");let n;try{n=JSON.parse(t)}catch{throw new pt(`Invalid JSON: ${t.slice(0,200)}`)}if(typeof n!="object"||n===null)throw new pt("Message must be a JSON object");let s=n;if(s.jsonrpc!=="2.0")throw new pt(`Invalid or missing jsonrpc version (expected "2.0", got ${JSON.stringify(s.jsonrpc)})`);return n}var pt=class extends Error{name="JsonRpcParseError";constructor(t){super(t)}},Wn=class extends Error{name="JsonRpcCallError";code;data;constructor(t){super(t.message),this.code=t.code,this.data=t.data}};var tx=3e4;function fS(e){let t=XT.resolve(e);try{return YT.realpathSync.native(t)}catch{return t}}function nx(e,t){let n=fS(ex(t)),s=fS(e);return n===s}function pd(e,t,n){if(n?.stdin!=null&&n?.stdout!=null)return dd({plugin:e,stdin:n.stdin,stdout:n.stdout});let s=process.argv[1];typeof s=="string"&&nx(s,t)&&dd({plugin:e})}function dd(e){let{plugin:t}=e,n=e.stdin??process.stdin,s=e.stdout??process.stdout,i=e.rpcTimeoutMs??tx,o=!0,a=!1,c=null,l={},d=null,m=new JT,g=[],h=new Map,y=new Map,_=new Map,v=new Map,M=new Map,D=new Map,U=new Map,F=1,te=Number.MAX_SAFE_INTEGER-1;function Te(u){if(!o)return;let p=ld(u);s.write(p)}function S(u,p,f){return new Promise((w,x)=>{if(!o){x(new Error(`Cannot call "${u}" \u2014 worker RPC host is not running`));return}F>=te&&(F=1);let re=F++,pe=f??i,Nm=!1,mr=(Se,Vo)=>{Nm||(Nm=!0,clearTimeout(Pm),U.delete(re),Se(Vo))},Pm=setTimeout(()=>{mr(x,new Wn({code:Le.TIMEOUT,message:`Worker\u2192host call "${u}" timed out after ${pe}ms`}))},pe);U.set(re,{resolve:Se=>{ad(Se)?mr(w,Se.result):cd(Se)?mr(x,new Wn(Se.error)):mr(x,new Error(`Unexpected response format for "${u}"`))},timer:Pm});try{let Se=m.getStore(),Vo={...td(u,p,re),...Se?{paperclipInvocationId:Se.id}:{}};Te(Vo)}catch(Se){mr(x,Se instanceof Error?Se:new Error(String(Se)))}})}function xe(u,p){try{let f=m.getStore();Te({...rd(u,p),...f?{paperclipInvocationId:f.id}:{}})}catch{}}function xA(){return{get manifest(){if(!c)throw new Error("Plugin context accessed before initialization");return c},config:{async get(){return S("config.get",{})}},localFolders:{declarations(){if(!c)throw new Error("Plugin context accessed before initialization");return c.localFolders??[]},async configure(u){return S("localFolders.configure",{companyId:u.companyId,folderKey:u.folderKey,path:u.path,access:u.access,requiredDirectories:u.requiredDirectories,requiredFiles:u.requiredFiles})},async status(u,p){return S("localFolders.status",{companyId:u,folderKey:p})},async list(u,p,f={}){return S("localFolders.list",{companyId:u,folderKey:p,relativePath:f.relativePath,recursive:f.recursive,maxEntries:f.maxEntries})},async readText(u,p,f){return S("localFolders.readText",{companyId:u,folderKey:p,relativePath:f})},async writeTextAtomic(u,p,f,w){return S("localFolders.writeTextAtomic",{companyId:u,folderKey:p,relativePath:f,contents:w})},async deleteFile(u,p,f){return S("localFolders.deleteFile",{companyId:u,folderKey:p,relativePath:f})}},events:{on(u,p,f){let w;if(typeof p=="function")w={name:u,fn:p};else{if(!f)throw new Error("Event handler function is required");w={name:u,filter:p,fn:f}}return g.push(w),S("events.subscribe",{eventPattern:u,filter:w.filter??null}).catch(x=>{xe("log",{level:"warn",message:`Failed to subscribe to event "${u}" on host: ${x instanceof Error?x.message:String(x)}`})}),()=>{let x=g.indexOf(w);x!==-1&&g.splice(x,1)}},async emit(u,p,f){await S("events.emit",{name:u,companyId:p,payload:f})}},jobs:{register(u,p){h.set(u,p)}},launchers:{register(u){y.set(u.id,u)}},db:{get namespace(){return d??""},async query(u,p){return S("db.query",{sql:u,params:p})},async execute(u,p){return S("db.execute",{sql:u,params:p})}},http:{async fetch(u,p){let f={};if(p){if(p.method&&(f.method=p.method),p.headers)if(p.headers instanceof Headers){let x={};p.headers.forEach((re,pe)=>{x[pe]=re}),f.headers=x}else if(Array.isArray(p.headers)){let x={};for(let[re,pe]of p.headers)x[re]=pe;f.headers=x}else f.headers=p.headers;p.body!==void 0&&p.body!==null&&(f.body=typeof p.body=="string"?p.body:String(p.body))}let w=await S("http.fetch",{url:u,init:Object.keys(f).length>0?f:void 0});return new Response(w.body,{status:w.status,statusText:w.statusText,headers:w.headers})}},secrets:{async resolve(u){return S("secrets.resolve",{secretRef:u})}},activity:{async log(u){await S("activity.log",{companyId:u.companyId,message:u.message,entityType:u.entityType,entityId:u.entityId,metadata:u.metadata})}},state:{async get(u){return S("state.get",{scopeKind:u.scopeKind,scopeId:u.scopeId,namespace:u.namespace,stateKey:u.stateKey})},async set(u,p){await S("state.set",{scopeKind:u.scopeKind,scopeId:u.scopeId,namespace:u.namespace,stateKey:u.stateKey,value:p})},async delete(u){await S("state.delete",{scopeKind:u.scopeKind,scopeId:u.scopeId,namespace:u.namespace,stateKey:u.stateKey})}},entities:{async upsert(u){return S("entities.upsert",{entityType:u.entityType,scopeKind:u.scopeKind,scopeId:u.scopeId,externalId:u.externalId,title:u.title,status:u.status,data:u.data})},async list(u){return S("entities.list",{entityType:u.entityType,scopeKind:u.scopeKind,scopeId:u.scopeId,externalId:u.externalId,limit:u.limit,offset:u.offset})}},projects:{async list(u){return S("projects.list",{companyId:u.companyId,limit:u.limit,offset:u.offset})},async get(u,p){return S("projects.get",{projectId:u,companyId:p})},async listWorkspaces(u,p){return S("projects.listWorkspaces",{projectId:u,companyId:p})},async getPrimaryWorkspace(u,p){return S("projects.getPrimaryWorkspace",{projectId:u,companyId:p})},async getWorkspaceForIssue(u,p){return S("projects.getWorkspaceForIssue",{issueId:u,companyId:p})},managed:{async get(u,p){return S("projects.managed.get",{projectKey:u,companyId:p})},async reconcile(u,p){return S("projects.managed.reconcile",{projectKey:u,companyId:p})},async reset(u,p){return S("projects.managed.reset",{projectKey:u,companyId:p})}}},executionWorkspaces:{async get(u,p){return S("executionWorkspaces.get",{workspaceId:u,companyId:p})}},routines:{managed:{async get(u,p){return S("routines.managed.get",{routineKey:u,companyId:p})},async reconcile(u,p,f){return S("routines.managed.reconcile",{routineKey:u,companyId:p,...f})},async reset(u,p,f){return S("routines.managed.reset",{routineKey:u,companyId:p,...f})},async update(u,p,f){return S("routines.managed.update",{routineKey:u,companyId:p,...f})},async run(u,p,f){return S("routines.managed.run",{routineKey:u,companyId:p,...f})}}},skills:{managed:{async get(u,p){return S("skills.managed.get",{skillKey:u,companyId:p})},async reconcile(u,p){return S("skills.managed.reconcile",{skillKey:u,companyId:p})},async reset(u,p){return S("skills.managed.reset",{skillKey:u,companyId:p})}}},companies:{async list(u){return S("companies.list",{limit:u?.limit,offset:u?.offset})},async get(u){return S("companies.get",{companyId:u})}},issues:{async list(u){return S("issues.list",{companyId:u.companyId,projectId:u.projectId,assigneeAgentId:u.assigneeAgentId,originKind:u.originKind,originKindPrefix:u.originKindPrefix,originId:u.originId,status:u.status,includePluginOperations:u.includePluginOperations,limit:u.limit,offset:u.offset})},async get(u,p){return S("issues.get",{issueId:u,companyId:p})},async create(u){return S("issues.create",{companyId:u.companyId,projectId:u.projectId,goalId:u.goalId,parentId:u.parentId,inheritExecutionWorkspaceFromIssueId:u.inheritExecutionWorkspaceFromIssueId,title:u.title,description:u.description,status:u.status,priority:u.priority,assigneeAgentId:u.assigneeAgentId,assigneeUserId:u.assigneeUserId,requestDepth:u.requestDepth,billingCode:u.billingCode,assigneeAdapterOverrides:u.assigneeAdapterOverrides,surfaceVisibility:u.surfaceVisibility,originKind:u.originKind,originId:u.originId,originRunId:u.originRunId,blockedByIssueIds:u.blockedByIssueIds,labelIds:u.labelIds,executionWorkspaceId:u.executionWorkspaceId,executionWorkspacePreference:u.executionWorkspacePreference,executionWorkspaceSettings:u.executionWorkspaceSettings,actorAgentId:u.actor?.actorAgentId,actorUserId:u.actor?.actorUserId,actorRunId:u.actor?.actorRunId})},async update(u,p,f,w){return S("issues.update",{issueId:u,patch:{...p,actorAgentId:w?.actorAgentId,actorUserId:w?.actorUserId,actorRunId:w?.actorRunId},companyId:f})},async assertCheckoutOwner(u){return S("issues.assertCheckoutOwner",u)},async getSubtree(u,p,f){return S("issues.getSubtree",{issueId:u,companyId:p,includeRoot:f?.includeRoot,includeRelations:f?.includeRelations,includeDocuments:f?.includeDocuments,includeActiveRuns:f?.includeActiveRuns,includeAssignees:f?.includeAssignees})},async requestWakeup(u,p,f){return S("issues.requestWakeup",{issueId:u,companyId:p,reason:f?.reason,contextSource:f?.contextSource,idempotencyKey:f?.idempotencyKey,actorAgentId:f?.actorAgentId,actorUserId:f?.actorUserId,actorRunId:f?.actorRunId})},async requestWakeups(u,p,f){return S("issues.requestWakeups",{issueIds:u,companyId:p,reason:f?.reason,contextSource:f?.contextSource,idempotencyKeyPrefix:f?.idempotencyKeyPrefix,actorAgentId:f?.actorAgentId,actorUserId:f?.actorUserId,actorRunId:f?.actorRunId})},async listComments(u,p){return S("issues.listComments",{issueId:u,companyId:p})},async createComment(u,p,f,w){return S("issues.createComment",{issueId:u,body:p,companyId:f,authorAgentId:w?.authorAgentId})},async createInteraction(u,p,f,w){return S("issues.createInteraction",{issueId:u,companyId:f,interaction:p,authorAgentId:w?.authorAgentId})},async suggestTasks(u,p,f,w){return S("issues.createInteraction",{issueId:u,companyId:f,interaction:{...p,kind:"suggest_tasks"},authorAgentId:w?.authorAgentId})},async askUserQuestions(u,p,f,w){return S("issues.createInteraction",{issueId:u,companyId:f,interaction:{...p,kind:"ask_user_questions"},authorAgentId:w?.authorAgentId})},async requestConfirmation(u,p,f,w){return S("issues.createInteraction",{issueId:u,companyId:f,interaction:{...p,kind:"request_confirmation"},authorAgentId:w?.authorAgentId})},async requestCheckboxConfirmation(u,p,f,w){return S("issues.createInteraction",{issueId:u,companyId:f,interaction:{...p,kind:"request_checkbox_confirmation"},authorAgentId:w?.authorAgentId})},documents:{async list(u,p){return S("issues.documents.list",{issueId:u,companyId:p})},async get(u,p,f){return S("issues.documents.get",{issueId:u,key:p,companyId:f})},async upsert(u){return S("issues.documents.upsert",{issueId:u.issueId,key:u.key,body:u.body,companyId:u.companyId,title:u.title,format:u.format,changeSummary:u.changeSummary})},async delete(u,p,f){return S("issues.documents.delete",{issueId:u,key:p,companyId:f})}},relations:{async get(u,p){return S("issues.relations.get",{issueId:u,companyId:p})},async setBlockedBy(u,p,f,w){return S("issues.relations.setBlockedBy",{issueId:u,companyId:f,blockedByIssueIds:p,actorAgentId:w?.actorAgentId,actorUserId:w?.actorUserId,actorRunId:w?.actorRunId})},async addBlockers(u,p,f,w){return S("issues.relations.addBlockers",{issueId:u,companyId:f,blockerIssueIds:p,actorAgentId:w?.actorAgentId,actorUserId:w?.actorUserId,actorRunId:w?.actorRunId})},async removeBlockers(u,p,f,w){return S("issues.relations.removeBlockers",{issueId:u,companyId:f,blockerIssueIds:p,actorAgentId:w?.actorAgentId,actorUserId:w?.actorUserId,actorRunId:w?.actorRunId})}},summaries:{async getOrchestration(u){return S("issues.summaries.getOrchestration",u)}}},agents:{async list(u){return S("agents.list",{companyId:u.companyId,status:u.status,limit:u.limit,offset:u.offset})},async get(u,p){return S("agents.get",{agentId:u,companyId:p})},async pause(u,p){return S("agents.pause",{agentId:u,companyId:p})},async resume(u,p){return S("agents.resume",{agentId:u,companyId:p})},async invoke(u,p,f){return S("agents.invoke",{agentId:u,companyId:p,prompt:f.prompt,reason:f.reason})},managed:{async get(u,p){return S("agents.managed.get",{agentKey:u,companyId:p})},async reconcile(u,p){return S("agents.managed.reconcile",{agentKey:u,companyId:p})},async reset(u,p){return S("agents.managed.reset",{agentKey:u,companyId:p})}},sessions:{async create(u,p,f){return S("agents.sessions.create",{agentId:u,companyId:p,taskKey:f?.taskKey,reason:f?.reason})},async list(u,p){return S("agents.sessions.list",{agentId:u,companyId:p})},async sendMessage(u,p,f){f.onEvent&&D.set(u,f.onEvent);try{return await S("agents.sessions.sendMessage",{sessionId:u,companyId:p,prompt:f.prompt,reason:f.reason})}catch(w){throw D.delete(u),w}},async close(u,p){D.delete(u),await S("agents.sessions.close",{sessionId:u,companyId:p})}}},goals:{async list(u){return S("goals.list",{companyId:u.companyId,level:u.level,status:u.status,limit:u.limit,offset:u.offset})},async get(u,p){return S("goals.get",{goalId:u,companyId:p})},async create(u){return S("goals.create",{companyId:u.companyId,title:u.title,description:u.description,level:u.level,status:u.status,parentId:u.parentId,ownerAgentId:u.ownerAgentId})},async update(u,p,f){return S("goals.update",{goalId:u,patch:p,companyId:f})}},access:{members:{async list(u){return S("access.members.list",{companyId:u.companyId,includeArchived:u.includeArchived})},async get(u,p){return S("access.members.get",{memberId:u,companyId:p})},async update(u,p,f){return S("access.members.update",{memberId:u,patch:p,companyId:f})}},invites:{async list(u){return S("access.invites.list",{companyId:u.companyId,state:u.state,limit:u.limit,offset:u.offset})},async create(u){return S("access.invites.create",{companyId:u.companyId,allowedJoinTypes:u.allowedJoinTypes,humanRole:u.humanRole,defaultsPayload:u.defaultsPayload,agentMessage:u.agentMessage})},async revoke(u,p){return S("access.invites.revoke",{inviteId:u,companyId:p})}}},authorization:{grants:{async list(u){return S("authorization.grants.list",u)},async set(u){return S("authorization.grants.set",u)}},policies:{async summary(u){return S("authorization.policies.summary",{companyId:u})},async get(u){return S("authorization.policies.get",u)},async update(u){return S("authorization.policies.update",u)},async previewAssignment(u){return S("authorization.policies.previewAssignment",u)},async explainAssignment(u){return S("authorization.policies.explainAssignment",u)}},audit:{async search(u){return S("authorization.audit.search",u)}}},data:{register(u,p){_.set(u,p)}},actions:{register(u,p){v.set(u,p)}},streams:(()=>{let u=new Map;return{open(p,f){u.set(p,f),xe("streams.open",{channel:p,companyId:f})},emit(p,f){let w=u.get(p)??"";xe("streams.emit",{channel:p,companyId:w,event:f})},close(p){let f=u.get(p)??"";u.delete(p),xe("streams.close",{channel:p,companyId:f})}}})(),tools:{register(u,p,f){M.set(u,{declaration:p,fn:f})}},metrics:{async write(u,p,f){await S("metrics.write",{name:u,value:p,tags:f})}},telemetry:{async track(u,p){await S("telemetry.track",{eventName:u,dimensions:p})}},logger:{info(u,p){xe("log",{level:"info",message:u,meta:p})},warn(u,p){xe("log",{level:"warn",message:u,meta:p})},error(u,p){xe("log",{level:"error",message:u,meta:p})},debug(u,p){xe("log",{level:"debug",message:u,meta:p})}}}}let RA=xA();async function CA(u){let{id:p,method:f,params:w}=u;try{let x=()=>OA(f,w),re=u.paperclipInvocation?await m.run(u.paperclipInvocation,x):await x();Te(nd(p,re??null))}catch(x){let re=x instanceof Error?x.message:String(x),pe=typeof x?.code=="number"?x.code:Le.WORKER_ERROR;Te(Zn(p,pe,re))}}async function OA(u,p){switch(u){case"initialize":return LA(p);case"health":return NA();case"shutdown":return PA();case"validateConfig":return MA(p);case"configChanged":return DA(p);case"onEvent":return Lm(p);case"runJob":return FA(p);case"handleWebhook":return $A(p);case"handleApiRequest":return UA(p);case"getData":return jA(p);case"performAction":return BA(p);case"executeTool":return VA(p);case"detectExternalObjects":return KA(p);case"resolveExternalObject":return HA(p);case"refreshExternalObjects":return WA(p);case"environmentValidateConfig":return ZA(p);case"environmentProbe":return GA(p);case"environmentAcquireLease":return YA(p);case"environmentResumeLease":return JA(p);case"environmentReleaseLease":return XA(p);case"environmentDestroyLease":return QA(p);case"environmentRealizeWorkspace":return ew(p);case"environmentExecute":return tw(p);case"environmentStartInteractiveSetup":return nw(p);case"environmentGetInteractiveSetup":return rw(p);case"environmentCaptureTemplate":return sw(p);case"environmentCancelInteractiveSetup":return iw(p);case"environmentDeleteTemplate":return ow(p);default:throw Object.assign(new Error(`Unknown method: ${u}`),{code:Ri.METHOD_NOT_FOUND})}}async function LA(u){if(a)throw new Error("Worker already initialized");c=u.manifest,l=u.config,d=u.databaseNamespace??null,await t.definition.setup(RA),a=!0;let p=[];return t.definition.onValidateConfig&&p.push("validateConfig"),t.definition.onConfigChanged&&p.push("configChanged"),t.definition.onHealth&&p.push("health"),t.definition.onShutdown&&p.push("shutdown"),t.definition.onApiRequest&&p.push("handleApiRequest"),t.definition.onDetectExternalObjects&&p.push("detectExternalObjects"),t.definition.onResolveExternalObject&&p.push("resolveExternalObject"),t.definition.onRefreshExternalObjects&&p.push("refreshExternalObjects"),t.definition.onEnvironmentValidateConfig&&p.push("environmentValidateConfig"),t.definition.onEnvironmentProbe&&p.push("environmentProbe"),t.definition.onEnvironmentAcquireLease&&p.push("environmentAcquireLease"),t.definition.onEnvironmentResumeLease&&p.push("environmentResumeLease"),t.definition.onEnvironmentReleaseLease&&p.push("environmentReleaseLease"),t.definition.onEnvironmentDestroyLease&&p.push("environmentDestroyLease"),t.definition.onEnvironmentRealizeWorkspace&&p.push("environmentRealizeWorkspace"),t.definition.onEnvironmentExecute&&p.push("environmentExecute"),t.definition.onEnvironmentStartInteractiveSetup&&p.push("environmentStartInteractiveSetup"),t.definition.onEnvironmentGetInteractiveSetup&&p.push("environmentGetInteractiveSetup"),t.definition.onEnvironmentCaptureTemplate&&p.push("environmentCaptureTemplate"),t.definition.onEnvironmentCancelInteractiveSetup&&p.push("environmentCancelInteractiveSetup"),t.definition.onEnvironmentDeleteTemplate&&p.push("environmentDeleteTemplate"),{ok:!0,supportedMethods:p}}async function NA(){return t.definition.onHealth?t.definition.onHealth():{status:"ok"}}async function PA(){t.definition.onShutdown&&await t.definition.onShutdown(),setImmediate(()=>{Bo(),!e.stdin&&!e.stdout&&process.exit(0)})}async function MA(u){if(!t.definition.onValidateConfig)throw Object.assign(new Error("validateConfig is not implemented by this plugin"),{code:Le.METHOD_NOT_IMPLEMENTED});return t.definition.onValidateConfig(u.config)}async function DA(u){l=u.config,t.definition.onConfigChanged&&await t.definition.onConfigChanged(u.config)}async function Lm(u){let p=u.event;for(let f of g){let w=f.name===p.eventType,x=f.name==="plugin.*"&&p.eventType.startsWith("plugin."),re=f.name.endsWith(".*")&&p.eventType.startsWith(f.name.slice(0,-1));if(!(!w&&!x&&!re)&&!(f.filter&&!aw(f.filter,p)))try{await f.fn(p)}catch(pe){xe("log",{level:"error",message:`Event handler for "${f.name}" failed: ${pe instanceof Error?pe.message:String(pe)}`,meta:{eventType:p.eventType,stack:pe instanceof Error?pe.stack:void 0}})}}}async function FA(u){let p=h.get(u.job.jobKey);if(!p)throw new Error(`No handler registered for job "${u.job.jobKey}"`);await p(u.job)}async function $A(u){if(!t.definition.onWebhook)throw Object.assign(new Error("handleWebhook is not implemented by this plugin"),{code:Le.METHOD_NOT_IMPLEMENTED});await t.definition.onWebhook(u)}async function UA(u){if(!t.definition.onApiRequest)throw Object.assign(new Error("handleApiRequest is not implemented by this plugin"),{code:Le.METHOD_NOT_IMPLEMENTED});return t.definition.onApiRequest(u)}async function jA(u){let p=_.get(u.key);if(!p)throw new Error(`No data handler registered for key "${u.key}"`);return p({...u.params,...u.companyId===void 0?{}:{companyId:u.companyId},...u.renderEnvironment===void 0?{}:{renderEnvironment:u.renderEnvironment}})}function vs(u){return typeof u=="string"&&u.trim().length>0?u.trim():null}function zA(u){return u==="user"||u==="agent"||u==="system"?u:"system"}function qA(u){let p=u.actorContext&&typeof u.actorContext=="object"?u.actorContext:null,f=Object.freeze({type:zA(p?.type),userId:vs(p?.userId),agentId:vs(p?.agentId),runId:vs(p?.runId),companyId:vs(p?.companyId)});return Object.freeze({actor:f,companyId:f.companyId})}async function BA(u){let p=v.get(u.key);if(!p)throw new Error(`No action handler registered for key "${u.key}"`);return p({...u.params,...u.companyId===void 0?{}:{companyId:u.companyId},...u.renderEnvironment===void 0?{}:{renderEnvironment:u.renderEnvironment}},qA(u))}async function VA(u){let p=M.get(u.toolName);if(!p)throw new Error(`No tool handler registered for "${u.toolName}"`);return p.fn(u.parameters,u.runContext)}async function KA(u){if(!t.definition.onDetectExternalObjects)throw ne("detectExternalObjects");return t.definition.onDetectExternalObjects(u)}async function HA(u){if(!t.definition.onResolveExternalObject)throw ne("resolveExternalObject");return t.definition.onResolveExternalObject(u)}async function WA(u){if(!t.definition.onRefreshExternalObjects)throw ne("refreshExternalObjects");return t.definition.onRefreshExternalObjects(u)}function ne(u){return Object.assign(new Error(`${u} is not implemented by this plugin`),{code:Le.METHOD_NOT_IMPLEMENTED})}async function ZA(u){if(!t.definition.onEnvironmentValidateConfig)throw ne("environmentValidateConfig");return t.definition.onEnvironmentValidateConfig(u)}async function GA(u){if(!t.definition.onEnvironmentProbe)throw ne("environmentProbe");return t.definition.onEnvironmentProbe(u)}async function YA(u){if(!t.definition.onEnvironmentAcquireLease)throw ne("environmentAcquireLease");return t.definition.onEnvironmentAcquireLease(u)}async function JA(u){if(!t.definition.onEnvironmentResumeLease)throw ne("environmentResumeLease");return t.definition.onEnvironmentResumeLease(u)}async function XA(u){if(!t.definition.onEnvironmentReleaseLease)throw ne("environmentReleaseLease");return t.definition.onEnvironmentReleaseLease(u)}async function QA(u){if(!t.definition.onEnvironmentDestroyLease)throw ne("environmentDestroyLease");return t.definition.onEnvironmentDestroyLease(u)}async function ew(u){if(!t.definition.onEnvironmentRealizeWorkspace)throw ne("environmentRealizeWorkspace");return t.definition.onEnvironmentRealizeWorkspace(u)}async function tw(u){if(!t.definition.onEnvironmentExecute)throw ne("environmentExecute");return t.definition.onEnvironmentExecute(u)}async function nw(u){if(!t.definition.onEnvironmentStartInteractiveSetup)throw ne("environmentStartInteractiveSetup");return t.definition.onEnvironmentStartInteractiveSetup(u)}async function rw(u){if(!t.definition.onEnvironmentGetInteractiveSetup)throw ne("environmentGetInteractiveSetup");return t.definition.onEnvironmentGetInteractiveSetup(u)}async function sw(u){if(!t.definition.onEnvironmentCaptureTemplate)throw ne("environmentCaptureTemplate");return t.definition.onEnvironmentCaptureTemplate(u)}async function iw(u){if(!t.definition.onEnvironmentCancelInteractiveSetup)throw ne("environmentCancelInteractiveSetup");return t.definition.onEnvironmentCancelInteractiveSetup(u)}async function ow(u){if(!t.definition.onEnvironmentDeleteTemplate)throw ne("environmentDeleteTemplate");return t.definition.onEnvironmentDeleteTemplate(u)}function aw(u,p){let f=p.payload;return!(u.companyId!==void 0&&(p.companyId??String(f?.companyId??""))!==u.companyId||u.projectId!==void 0&&(p.entityType==="project"?p.entityId:String(f?.projectId??""))!==u.projectId||u.agentId!==void 0&&(p.entityType==="agent"?p.entityId:String(f?.agentId??""))!==u.agentId)}function cw(u){let p=u.id;if(p==null)return;let f=U.get(p);f&&(clearTimeout(f.timer),U.delete(p),f.resolve(u))}function lw(u){if(!u.trim())return;let p;try{p=ud(u)}catch(f){f instanceof pt&&Te(Zn(null,Ri.PARSE_ERROR,`Parse error: ${f.message}`));return}if(od(p))cw(p);else if(sd(p))CA(p).catch(f=>{let w=f instanceof Error?f.message:String(f),x=f?.code??Le.WORKER_ERROR;try{Te(Zn(p.id,typeof x=="number"?x:Le.WORKER_ERROR,w))}catch{}});else if(id(p)){let f=p,w=x=>f.paperclipInvocation?m.run(f.paperclipInvocation,x):x();if(f.method==="agents.sessions.event"&&f.params){let x=f.params,re=D.get(x.sessionId);re&&re(x)}else f.method==="onEvent"&&f.params&&Promise.resolve(w(()=>Lm(f.params))).catch(x=>{xe("log",{level:"error",message:`Failed to handle event notification: ${x instanceof Error?x.message:String(x)}`})})}}function Bo(){o=!1,pr&&(pr.close(),pr=null);for(let[u,p]of U)clearTimeout(p.timer),p.resolve(Zn(u,Le.WORKER_UNAVAILABLE,"Worker RPC host is shutting down"));U.clear(),D.clear()}let pr=QT({input:n,crlfDelay:1/0});return pr.on("line",lw),pr.on("close",()=>{o&&(Bo(),!e.stdin&&!e.stdout&&process.exit(0))}),!e.stdin&&!e.stdout&&(process.on("uncaughtException",u=>{xe("log",{level:"error",message:`Uncaught exception: ${u.message}`,meta:{stack:u.stack}}),setTimeout(()=>process.exit(1),100)}),process.on("unhandledRejection",u=>{let p=u instanceof Error?u.message:String(u),f=u instanceof Error?u.stack:void 0;xe("log",{level:"error",message:`Unhandled rejection: ${p}`,meta:{stack:f}})})),{get running(){return o},stop(){Bo()}}}import{performance as gS}from"perf_hooks";import{join as Ed,dirname as rx}from"path";import{randomBytes as sx}from"crypto";import{readFile as ix,mkdir as ox,open as ax,rename as cx,unlink as lx}from"fs/promises";function ux(e){return tb(e.priority)*100+nb(e.consequence)*10+rb(e.tone)+(e.blocking?1e3:0)+(e.attentionScoreOffset??0)}function Ye(e,t={}){return tb(Ee(e))*100+nb(e.consequence)*10+rb(e.tone)+(bn(e)?1e3:0)+eb(e)+dx(e,t.now)}function Ee(e){return e.mode==="status"?e.tone==="critical"||e.consequence==="high"?"high":e.tone==="focused"||e.consequence==="medium"?"normal":"background":"high"}function eb(e){let t=e.metadata?.attention;return t&&typeof t=="object"&&"scoreOffset"in t&&typeof t.scoreOffset=="number"?t.scoreOffset:0}function bn(e){return e.mode!=="status"&&e.responseSpec?.kind!=="none"}function tb(e){switch(e){case"background":return 0;case"normal":return 1;case"high":return 2}}function nb(e){switch(e){case"low":return 0;case"medium":return 1;case"high":return 2}}function rb(e){switch(e){case"ambient":return 0;case"focused":return 1;case"critical":return 2}}function dx(e,t){let n=t??e.timing.updatedAt,s=Date.parse(e.timing.updatedAt),i=Date.parse(n);if(Number.isNaN(s)||Number.isNaN(i)||i<=s)return 0;let o=i-s,a=px(e);if(o<=a.graceMs)return 0;let c=Math.floor((o-a.graceMs)/a.stepMs)+1;return-Math.min(a.maxPenalty,c*a.penaltyPerStep)}function px(e){return bn(e)?{graceMs:1800*1e3,stepMs:600*1e3,penaltyPerStep:1,maxPenalty:6}:e.tone==="critical"||e.consequence==="high"?{graceMs:1200*1e3,stepMs:600*1e3,penaltyPerStep:1,maxPenalty:8}:e.tone==="focused"||e.consequence==="medium"?{graceMs:600*1e3,stepMs:600*1e3,penaltyPerStep:2,maxPenalty:12}:{graceMs:300*1e3,stepMs:600*1e3,penaltyPerStep:3,maxPenalty:18}}var mx=250;function fx(e,t={}){let n=[],s=[];for(let a of e)a.now&&(gx(a.now)?s.push(a.now):n.push(a.now)),n.push(...a.next),s.push(...a.ambient);let i=t.now??yx([...n,...s]);if(hx([...n,...s])>=2){let a=[],c=[];for(let l of n)!sb(l)&&Ye(l,{now:i})<200?c.push(l):a.push(l);n=a,s=[...s,...c]}if(n.sort((a,c)=>hS(a,c,i)),s.sort((a,c)=>hS(a,c,i)),t.operatorPresence==="absent")return{now:null,next:n,ambient:s};let o=Sx(n,s,t.focusedInteractionId??null,i);if(o){let a=n.some(c=>c.interactionId===o.interactionId);return{now:o,next:a?n.filter(c=>c.interactionId!==o.interactionId):n,ambient:s.filter(c=>c.interactionId!==o.interactionId)}}if(n.length>0){let[a,...c]=n;return{now:a??null,next:c,ambient:s}}if(s.length>0){let[a,...c]=s;return a&&(Ye(a,{now:i})<=0||t.globalAttentionState==="overloaded"&&Ye(a,{now:i})<200)?{now:null,next:[],ambient:s}:{now:a??null,next:[],ambient:c}}return{now:null,next:[],ambient:[]}}function gx(e){return e.mode==="status"||e.tone==="ambient"}function sb(e){return e.mode!=="status"||e.tone==="critical"||e.consequence==="high"}function hx(e){return e.filter(sb).length}function hS(e,t,n){let s=Ye(t,{now:n})-Ye(e,{now:n});return s!==0?s:e.timing.createdAt.localeCompare(t.timing.createdAt)}function yx(e){let t="1970-01-01T00:00:00.000Z";for(let n of e){let s=n.timing.updatedAt;s.localeCompare(t)>0&&(t=s)}return t}function Sx(e,t,n,s){if(!n)return null;let i=e.find(a=>a.interactionId===n)??t.find(a=>a.interactionId===n)??null;if(!i)return null;let o=e[0]??t[0]??null;return!o||o.interactionId===i.interactionId?i:bx(i,o,s)?null:i}function bx(e,t,n){return t.tone==="critical"&&e.tone!=="critical"||t.mode!=="status"&&t.consequence==="high"&&e.consequence!=="high"?!0:Ye(t,{now:n})-Ye(e,{now:n})>=mx}function pn(e){let t=e.counts.presented>=5;return e.counts.presented+e.counts.deferred>=5&&e.counts.deferred>=3&&e.deferred.next+e.deferred.suppressed>=3?"overloaded":t&&e.dismissalRate>=.6&&e.deferred.suppressed>=2?"avoiding":e.counts.contextExpanded>=1&&e.averageResponseLatencyMs!==null&&e.averageResponseLatencyMs>=15e3?"hesitating":t&&e.responseRate>=.6&&e.averageResponseLatencyMs!==null&&e.averageResponseLatencyMs<=1e4?"engaged":"monitoring"}function Ci(e){let t=[];return e.counts.contextExpanded>=1&&e.counts.responded>=1&&t.push("context_before_action"),e.counts.deferred>=2&&e.counts.returned>=1&&t.push("defer_then_return"),e.counts.attentionShifted>=3&&t.push("fragmented_attention"),e.counts.viewed>=1&&e.counts.timedOut>=1&&e.counts.responded===0&&t.push("stalling"),t}var _x=class{apply(e,t,n=t){let s=this.scoreOffset(e,t,n),i=this.rationale(e,t,n,s);return{...e,...s!==0?{attentionScoreOffset:s}:{},...i.length>0?{attentionRationale:i}:{}}}scoreOffset(e,t,n){let s=0,i=pn(t),o=pn(n),a=Ci(t),c=Ci(n);if(e.mode==="status"){let l=e.consequence==="high"||e.tone==="critical";t.dismissalRate>=.5&&(s-=15),t.deferred.suppressed>=2&&(s-=10),l&&(s+=20),!l&&i==="overloaded"&&(s-=10),!l&&i==="avoiding"&&(s-=10),!l&&i!=="overloaded"&&o==="overloaded"&&(s-=5),!l&&c.includes("fragmented_attention")&&(s-=5)}return e.blocking&&t.counts.contextExpanded>=2&&(s+=10),e.blocking&&t.responseRate>=.75&&t.averageResponseLatencyMs!==null&&t.averageResponseLatencyMs<=1e4&&(s+=5),e.blocking&&i==="hesitating"&&(s+=5),e.blocking&&a.includes("defer_then_return")&&(s+=5),s}rationale(e,t,n,s){let i=[],o=pn(t),a=pn(n),c=Ci(t),l=Ci(n);return e.mode==="status"&&t.dismissalRate>=.5&&i.push("status updates for this task are often dismissed"),e.mode==="status"&&t.deferred.suppressed>=2&&i.push("similar task updates have repeatedly remained ambient"),e.mode==="status"&&(e.consequence==="high"||e.tone==="critical")&&i.push("high-consequence status should remain more visible"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&o==="overloaded"&&i.push("recent task activity suggests attention is already saturated"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&o==="avoiding"&&i.push("recent behavior suggests low-value updates should stay quiet"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&o!=="overloaded"&&a==="overloaded"&&i.push("overall operator activity suggests attention is already saturated"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&l.includes("fragmented_attention")&&i.push("recent attention has already shifted repeatedly across work"),e.blocking&&t.counts.contextExpanded>=2&&i.push("this task often requires deeper context before action"),e.blocking&&t.responseRate>=.75&&t.averageResponseLatencyMs!==null&&t.averageResponseLatencyMs<=1e4&&i.push("similar blocking interactions usually receive quick responses"),e.blocking&&o==="hesitating"&&i.push("similar blocking interactions appear to require more deliberation"),e.blocking&&c.includes("defer_then_return")&&i.push("similar interactions are often deferred and resumed later"),s===0?[]:i}},kx={"control:neutral:none::await_authorization":"authorization_required","diagnostic:failure:none:runtime:inspect_diagnostic":"diagnostic_inspection","diagnostic:failure:none:expected:inspect_diagnostic":"diagnostic_inspection","unknown:failure:unknown::inspect_original_evidence":"original_evidence_required","diagnostic:failure:partial:source_limit:narrow_evidence_scope":"evidence_scope_required","outcome:failure:absent::request_evidence":"evidence_required"};function ib(e){let t=lb(e),n=ab(e),s=Ex(e,t),i=Ax(e),o=wx(e);return{statusEvidence:s?"limited_failure":o?"visible_diagnostic_failure":i?"stable_observation":"weak_or_uncertain",statusConflictKind:vx(e),recoveryPosture:t,baselineConsequence:e.consequenceBaseline,outcomeOnlyFailureStatus:n,limitedFailureStatus:s,stableStatusEvidence:i,visibleDiagnosticFailure:o}}function vx(e){return ob(e)}function ob(e){return e.kind==="control"?lb(e)==="authorization_required"&&e.ownership.owner==="tool"&&e.subject==="tool"?"rejected_tool_use_observation":null:e.kind==="payload"?e.provenance.origin==="structured_output"?"structured_output_observation":e.subject==="search"?"search_output_observation":"payload_observation":e.kind!=="outcome"||e.polarity!=="success"?null:e.provenance.origin==="structured_output"?"execution_success_observation":e.subject==="command"?"command_success_observation":"payload_observation"}function ab(e){return cb(e)&&e.kind==="outcome"&&e.evidenceLoss==="none"}function Ex(e,t){return ab(e)?!0:cb(e)?e.kind==="outcome"&&e.evidenceLoss==="absent"&&t==="evidence_required"||e.kind==="diagnostic"&&e.evidenceLoss==="partial"&&t==="evidence_scope_required":!1}function cb(e){return e.polarity==="failure"&&e.evidenceLoss!=="unknown"&&e.consequenceBaseline==="medium"&&e.semanticAgreement==="stable"}function Ax(e){return e.semanticAgreement==="stable"&&e.evidenceStrength!=="weak"}function wx(e){return e.kind==="diagnostic"&&e.diagnosticClass==="runtime"&&e.evidenceLoss==="none"&&e.polarity==="failure"}function lb(e){let t=`${e.kind}:${e.polarity}:${e.evidenceLoss}:${e.diagnosticClass??""}:${e.recoveryHint??""}`;return kx[t]??"none"}var Ix="source evidence truncated";function Tx(e){let t=e.core;if(e.event.type!=="task.updated"||e.event.status!=="failed"||t===null||e.interpretation.intentFrame!=="status_update"||e.interpretation.activityClass!=="status_update"||t.ownership.toolFamily!==e.interpretation.toolFamily||e.interpretation.consequence!==t.consequenceBaseline||!xx(e.interpretation)||e.abstained)return null;let n=ob(t);return n===null?null:{kind:n,...t.ownership.toolFamily!==void 0?{toolFamily:t.ownership.toolFamily}:{},baselineConsequence:t.consequenceBaseline}}function xx(e){return e.confidence==="high"||e.confidence==="low"&&e.factors.includes(Ix)}function Rx(e,t,n){return{ask:Cx(e,t),activity:Ox(e,t,n),...t.consequence!==void 0?{consequence:t.consequence}:{},blocking:Lx(e,t),episode:Nx(e,t),confidence:t.confidence,source:Mx(e,t,n)}}function Cx(e,t){switch(e.type){case"human.input.requested":return e.request.kind;case"task.started":case"task.completed":case"task.cancelled":return"none";case"task.updated":return t.intentFrame==="approval_request"||t.activityClass==="permission_request"?"approval":t.intentFrame==="form_request"?"form":t.intentFrame==="question_request"||t.activityClass==="question_request"?"choice":"status";default:return zd(e)}}function Ox(e,t,n){switch(e.type){case"human.input.requested":return e.request.kind==="approval"?"decision_request":"question";case"task.completed":case"task.cancelled":return"task_completion";case"task.updated":return t.intentFrame==="approval_request"||t.activityClass==="permission_request"?"decision_request":t.intentFrame==="question_request"||t.intentFrame==="form_request"||t.activityClass==="question_request"?"question":n!==null?"task_progress":e.status==="failed"||t.intentFrame==="failure"?"failure":e.status==="completed"?"task_completion":"task_progress";case"task.started":return"background_work";default:return zd(e)}}function Lx(e,t){switch(e.type){case"human.input.requested":return"blocking";case"task.started":case"task.completed":case"task.cancelled":return"non_blocking";case"task.updated":return e.status==="blocked"||t.intentFrame==="blocked_work"?"blocking":e.status==="waiting"||t.intentFrame==="approval_request"||t.intentFrame==="question_request"||t.intentFrame==="form_request"?"waiting":"non_blocking";default:return zd(e)}}function Nx(e,t){let n=new Set(t.relationHints.map(s=>s.kind));return n.has("resolves")?"resolved":n.has("same_issue")&&Px(t.relationHints)?"resurfaced":n.has("same_issue")?"same_issue":e.type==="human.input.requested"||e.type==="task.started"?"new":"unknown"}function Px(e){return e.some(t=>t.kind==="repeats"||t.kind==="escalates"||t.kind==="supersedes")}function Mx(e,t,n){let s=Object.values(t.provenance??{});return Dx(t)?"hinted":n!==null?"inferred":Fx(e,t)?e.type==="task.updated"&&t.intentFrame==="status_update"&&t.confidence==="low"&&t.provenance?.confidence==="inferred"?"inferred":"explicit":s.includes("source")?"explicit":s.includes("inferred")?"inferred":"explicit"}function Dx(e){let t=e.provenance??{};return t.intentFrame==="hint"||t.activityClass==="hint"||t.consequence==="hint"||t.relationHints==="hint"||t.confidence==="hint"||e.relationHints.some(n=>n.target!==void 0)}function Fx(e,t){switch(e.type){case"human.input.requested":return!0;case"task.started":return t.intentFrame==="task_started";case"task.completed":return t.intentFrame==="completion";case"task.cancelled":return t.intentFrame==="cancellation";case"task.updated":return e.status==="failed"&&t.intentFrame==="failure"||e.status==="blocked"&&t.intentFrame==="blocked_work"||e.status==="waiting"&&t.intentFrame==="status_update"||e.status==="completed"&&t.intentFrame==="completion"||e.status==="running"&&t.intentFrame==="status_update"}}function zd(e){throw new Error(`Unsupported event type: ${e.type??"unknown"}`)}function $x(e){return ub(e)?{activity:"task_progress",intentFrame:"status_update",activityClass:"status_update"}:{activity:"failure",intentFrame:"failure",activityClass:"tool_failure"}}function ub(e){return e?.polarity==="neutral"||e?.polarity==="success"}var Ux=["need your input","need your approval","need your review","need your sign off","need your sign-off","should i continue","can you approve","can you review","what should i do"],jx=[/\b(?:can|could|would|will) you (?:please )?(?:approve|check|choose|confirm|decide|provide|review|select|share|tell|verify)\b/,/\bplease (?:approve|choose|confirm|decide|provide|select|verify)\b/],db=["no action needed","no approval needed","approval is not needed","approval not needed","sign off not needed","sign-off not needed","no input needed","for awareness only","for your awareness","continuing automatically"],zx=["cannot continue","can't continue","cannot proceed","can't proceed","unable to continue","unable to proceed","blocked on","blocked until","stuck on","requires operator input before continuing","needs operator input before continuing","must be provided before continuing"],qx=["waiting for approval","approval required","awaiting approval","waiting on approval","pending approval","waiting for input","awaiting input","waiting on input","awaiting review","waiting for review"],Bx=["production","prod","force push","git push --force","rm -rf","drop table","delete database","delete prod","sudo","chmod 777","kill process","migrate"],qd=["result of running cat -n","result of running sed -n","result of running grep","result of running ls","result of running find","here s the result of running cat -n","here s the result of running sed -n"],Vx=["observation","contents of","showing first","showing top","found"],pb=["path","type file","content"],Kx=["ran successfully and did not produce any output","command ran successfully and did not produce any output","your command ran successfully and did not produce any output","completed successfully and did not produce any output","exit code 0","exited with code 0","command exited with code 0","process exited with code 0","completed with exit code 0"],Hx=["tool-output","dmesg"],Wx=["makefile","spdx-license-identifier","patchlevel","sublevel","extraversion"],Yr=/(?:^|\s)\/[a-z0-9._-]+(?:\/[a-z0-9._-]+)+(?:\s|$)/,Zx=/\bfound\s+\d+\s+match(?:es)?\b|\bshowing\s+(?:first|top)\s+\d+\b|\bmatch(?:es)?\s+in\s+\d+\s+files?\b/,Gx=/\b(import|from|export|class|def|function|const|let|var|return)\b/,Yx=/\b\d+\s+(?:import|from|export|class|def|function|const|let|var|return)\b/,Bd=/\/[a-z0-9._/-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)(?:\b|\/)/,Vd=/\b[a-z0-9.-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)\b/,Jx=/\b(static|struct|enum|typedef|void|int|char|bool|return)\b/,Xx=/\b\d+\s+(?:static|struct|enum|typedef|void|int|char|bool|return)\b/,Qx=/\b\d+\s+\[\s*\d+\.\d+\]\s+[a-z0-9_.:-]+/,eR=/\b(?:version|patchlevel|sublevel|extraversion)\b/,tR=["form is valid false","form without instance is valid false","form errors","errorlist","decompress result","no exception occurred","no exceptions occurred","expected exception","expected exception was caught","caught expected exception"],nR=["traceback","exception","permission denied","command not found","segmentation fault","apply_patch verification failed","no such file or directory","file does not exist","unrecognized arguments","symbol lookup error","assertion failed","tests failed","test failed","failed tests"],rR=["still","again","back again","came back","continues","continuing","returned","returning","remains","persisting","retrying","recurred"],sR=["did not repeat","didn t repeat","did not return","didn t return","did not recur","didn t recur","not repeated","not returning","not recurring","no repeat"],iR=["resolved","fixed","unblocked","no longer blocked"],oR=["not resolved","did not resolve","didn t resolve","not fixed","did not fix","didn t fix","not recovered","did not recover","didn t recover"],aR=["recovered","completed successfully","succeeded after"],cR=["supersedes","superseded","replaced by"],lR=["worse","worsened","escalating","regression","regressed","spread","broader impact","degraded further","critical now","now failing"],uR=["did not regress","didn t regress","no regression","not worsening","did not worsen","didn t worsen","not escalating","did not escalate","didn t escalate"],mb=["fail","failed","failing","failure","error","broken","blocked","stalled","stall","incident","issue","outage","degraded","regression","retry","rollback"];function z(e){return e.toLowerCase().replace(/[^a-z0-9/._-]+/g," ").trim()}function dR(e){return e.toLowerCase().replace(/[^a-z0-9]+/g," ").trim()}function Ae(e,t){return t.some(n=>fb(e,n))}function fb(e,t){let n=z(t);return n?n.includes(" ")?Ze(e,n):Fr(e,n):!1}function Ze(e,t){let n=z(e),s=z(t);return s?new RegExp(`(?:^|[^a-z0-9_])${gb(s)}(?:$|[^a-z0-9_])`).test(n):!1}function Fr(e,t){let n=z(e),s=z(t);return!s||s.includes(" ")?!1:new RegExp(`(?:^|[^a-z0-9_])${gb(s)}(?:$|[^a-z0-9_])`).test(n)}function gb(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var pR=new Set(["jq"]),mR=/(?:^|[\r\n]|\s)(?:\d+:\s*)?\[\s*\d+(?:\.\d+)?][^\r\n]*(?:\*ERROR\*|\b(?:error|failed|failure|fault)\b|\bkernel panic\b|\bBUG:\s*(?:soft|hard) lockup\b)/i;function Zi(e){return mR.test(e)}function hb(e){return Zi(e)||fR(e)||gR(e)||hR(e)}function fR(e){return/(?:^|[\r\n])\s*rg:\s+\S[^\r\n]*:\s+IO error for operation on\s+\S[^\r\n]*(?=$|[\r\n])/i.test(e)}function gR(e){let n=/^([a-z0-9][a-z0-9_.-]{0,60}):[ \t]+parse error:[^\r\n]{0,240}\b(?:at|on)[ \t]+line[ \t]+\d+\b[^\r\n]*(?=$|[\r\n])/i.exec(e.replace(/^[ \t]+/,""))?.[1]?.toLowerCase();return n!==void 0&&pR.has(n)}function hR(e){return/(?:^|[\r\n])\s*usage:\s+[^\r\n]{1,200}/i.test(e)&&/(?:^|[\r\n]|\s)[a-z0-9_.-]+:\s+error:\s+\S/i.test(e)}function yR(e){return[...e.matchAll(/(?:^|[\r\n])[^\S\r\n]*panic:([^\r\n]+)/gi),...e.matchAll(/(?:^|[\r\n])[^\S\r\n]*failed to execute:\s+[^\r\n]*;\s*panic:([^\r\n]+)/gi)].some(n=>SR(n[1]??""))}function SR(e){let t=e.trim();return t.length>0&&!bR(t)}function bR(e){return/^(?:return|goto|break|continue|if|for|while|switch)\b/i.test(e)||/^[a-z_][a-z0-9_.]*\s*(?::=|[-+*/%]?=)\s*\S/i.test(e)||/^[a-z_][a-z0-9_]*\s*\([^)]*\)\s*;?\s*$/i.test(e)||/;\s*$/.test(e)}function _R(e){return/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\)?[^\s:\r\n]+\.[a-zA-Z0-9]{1,8}:\d+(?::\d+)?:\s*(?:(?:tests?|build|command|process|subprocess)\s+failed\s*:|failed\s+(?:tests?|build|command|process|subprocess)\s*:|assertion\s+failed\s*:|(?:E\s+)?(?:AssertionError|RuntimeError|ValueError|TypeError|Exception):\s+\S|(?:FAIL|FAILED|ERROR)\b[:\s]\s*\S)/i.test(e)}function kR(e){let n=/^File[ \t]+"[^"\u0000-\u0008\u000a-\u001f\u007f-\u009f\u2028\u2029]{1,260}\.py",[ \t]+line[ \t]+\d+\b([^\u0000-\u0008\u000a-\u001f\u007f-\u009f\u2028\u2029]{0,800})/i.exec(e.replace(/^[ \t]+/,""))?.[1]??"";return/(?:^|[ \t])\^[ \t]*(?:AssertionError|ImportError|IndentationError|ModuleNotFoundError|NameError|RuntimeError|SyntaxError|TypeError|ValueError)[ \t]*:/i.test(n)}function vR(e){let t=e.trim();return!/[\r\n]/.test(t)&&/^(?:OBSERVATION:\s*)?(?:[a-z_][\w]*(?:\.[a-z_][\w]*)*\.)?ExceptionGroup:\s+\S[^\r\n]{0,260}\(\s*[1-9]\d*\s+sub-exceptions?\s*\)$/i.test(t)}function ER(e){return kR(e)||vR(e)}function AR(e){return new RegExp(`(?:^|[\\r\\n])\\s*(?:[a-z0-9_./-]+:\\s*)?${TR}\\b`,"i").test(e)}function wR(e){return[new RegExp(`\\b${xR}:\\s+\\S`,"gi"),/\b[a-z0-9_./-]+\.(?:c|cc|cpp|cxx|cu|cuh|h|hpp|ts|tsx|js|jsx|py|rs|go|java|kt|swift):\d+(?::\d+)?:\s*(?:fatal\s+)?error\b/gi].some(t=>IR(e,t))}function IR(e,t){for(let n of e.matchAll(t))if(!/[="'`]\s*$/.test(e.slice(Math.max(0,n.index-3),n.index)))return!0;return!1}var TR="(?:assertionerror|importerror|modulenotfounderror|referenceerror|runtimeerror|syntaxerror|typeerror|valueerror)",xR="(?:assertionerror|filenotfounderror|importerror|indentationerror|keyerror|modulenotfounderror|nameerror|oserror|permissionerror|referenceerror|runtimeerror|syntaxerror|timeouterror|typeerror|valueerror)";function yb(e){return[/(?:^|[\r\n])\s*(?:Failure|Failed|Panicked)\s*\[[^\]\r\n]{1,80}]/i,/(?:^|[\r\n])\s*•\s*(?:Failure|Failed|Panicked)\b/i,/(?:^|[\r\n])\s*\S+::\S+[^\r\n]{0,160}\sFAILED\b/].some(t=>t.test(e))}function RR(e){let t=LR(e);return CR(t)||OR(t)}function CR(e){return/\bRunning Suite:\s+\S[\s\S]{0,400}\bWill run\s+\d+\s+of\s+\d+\s+specs?\b/i.test(e)&&/(?:^|[\s\S])(?:•|\+|PASS\b|SUCCESS\b)/i.test(e)}function OR(e){return/(?:^|[\r\n])\s*=+\s*test session starts\s*=+/i.test(e)&&/\bplatform\s+\S+[\s\S]{0,240}\bpytest-\d/i.test(e)&&(/\bcollected\s+\d+\s+items?\b/i.test(e)||/\bcachedir:\s+\.pytest_cache\b/i.test(e)||/\brootdir:\s+\S/i.test(e))}function LR(e){return e.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"")}function Xn(e){return Br(e)||hb(e)}function NR(e){if(!/\bweb search results for\b/i.test(e))return!1;let t=MR(e);return t===null?DR(e):FR(t)}function Br(e){return[/\btraceback\s+\(most recent call last\)/i,/\bapply_patch verification failed\b/i,/\bsegmentation fault\b/i,/\bsymbol lookup error\b/i,/\blibrary load error\b/i,/\bcannot open shared object file\b/i,/\bcommand not found\b/i,/(?:^|[\r\n])\s*(?:[^\r\n:]+:\s*)*(?:permission denied|operation not permitted)\b/i,/(?:^|[\r\n])\s*(?:uncaught|unhandled)\s+exception\b/i,/(?:^|[\r\n])\s*(?:fatal\s+error|compiler\s+error)\b/i,/(?:^|[\r\n])\s*error:\s+\S/i,/(?:^|[\r\n])\s*(?:npm\s+err!?|pnpm\s+err!?|yarn\s+error\b|err_pnpm_)/i,/\beconnrefused\b/i,/\bthread\b[^\r\n]*\bpanicked at\b/i,/(?:^|[\r\n])\s*terminate called after throwing\b/i,/(?:^|[\r\n])\s*(?:tests?\s+failed|failed\s+tests)\b/i,/\bassertion failed\b/i,/(?:^|[\r\n])\s*(?:[a-z0-9_./-]+:\s*)+\s*no such file or directory\b/i,/(?:^|[\r\n])\s*(?:file does not exist|unrecognized arguments)\b/i,/\b(?:exit code|exit_code|exit-code|exited with code|exit status|exited with status|return code|return_code|returned code)\s*(?:is|was)?\s*-?[1-9]\d*\b/i].some(t=>t.test(e))||_R(e)||yR(e)||PR(e)||$R(e)||yb(e)||ER(e)||AR(e)}function PR(e){let t=/CMake Error at \S+:\d+\s+\(/i;return/(?:^|[\r\n])\s*CMake Error at \S+:\d+\s+\(/i.test(e)||/(?:^|[\r\n])\s*total output lines:\s*\d+\b/i.test(e)&&t.test(e)}function MR(e){return/^\s*web search results for\s+(?:"[^"]+"|'[^']+'|`[^`]+`|[^:\r\n]{1,200})\s*:\s+([\s\S]+)$/i.exec(e)?.[1]??null}function DR(e){return/\b(?:backend\s+(?:is\s+)?unavailable|could\s+not\s+be\s+retrieved|couldn['’]?t\s+be\s+retrieved|failed\s+because|request\s+failed|search\s+failed|timed?\s+out|timeout)\b/i.test(e)}function FR(e){return/^\s*(?:backend\s+(?:is\s+)?unavailable\b|could\s+not\s+be\s+retrieved\b|couldn['’]?t\s+be\s+retrieved\b|failed\s+because\b|request\s+failed\b|search\s+failed\b|timed?\s+out\b|timeout\b)/i.test(e)}function $R(e){return[/(?:^|[\r\n])\s*(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+(?:\.[a-z0-9]{1,8})?:\d+(?::\d+)?\s*:\s*(?:(?:fatal\s+)?error\b|fatal:\s+\S)/i,/\b(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.(?:ts|tsx|js|jsx)\(\d+,\d+\):\s*error\s+TS\d+\b/i,/(?:^|[\r\n])\s*(?:clang|gcc|g\+\+|cc|c\+\+|ld|make(?:\[\d+\])?)\s*:\s*(?:fatal\s+)?error\b/i,/(?:^|[\r\n])\s*error\s+(?:ts)?\d+\b/i,/(?:^|[\r\n])\s*fatal:\s+\S/i,/(?:^|[\r\n])\s*make(?:\[\d+\])?:\s+\*\*\*/i].some(t=>t.test(e))}function UR(...e){for(let t of e){let n=jR(t);if(n!==null){if(qR(n))return"failure";if(BR(n))return"applied"}}return null}function jR(e){let t=zR(e??"");return t.length===0?null:/^<tool_use_error>\s*([\s\S]{1,500})\s*<\/tool_use_error>\s*$/i.exec(t)?.[1]??t}function zR(e){return e.trim().replace(/^(?:edit|tool)\s+failure\s+(?:[-\u2013\u2014]\s*)?/i,"").replace(/^OBSERVATION:\s*/i,"").replace(/^<tool_output_masked>\s*/i,"").trim()}function qR(e){return/^(?:apply_patch|edit|write) error$/i.test(e)||/^file has (?:not been read yet|been modified since read)\b[\s\S]{0,260}\bread it (?:first|again)\b[\s\S]{0,160}\bbefore\b/i.test(e)||/^could not find (?:the exact text|edits\[\d+]) in\s+\S[\s\S]{0,300}\.\s+the old\s?text must match exactly\b/i.test(e)||/^found \d+ occurrences of (?:the )?text in\s+\S[\s\S]{0,300}\.\s+the text must be unique\b/i.test(e)||/^no replacement was performed\b/i.test(e)}function BR(e){let n=e.trim().toLowerCase(),s="successfully modified file:",i="successfully created and wrote to new file:",o="edit applied successfully. lsp errors detected";return n.startsWith(s)&&n.slice(s.length).trim().length>0||n.startsWith(i)&&n.slice(i.length).trim().length>0||n==="edit applied successfully"||n.startsWith(o)&&n.length<=o.length+200}function VR(e){let t=e.trim();if(t.length===0||GR(t))return!1;let n=HR(t),s=n.filter(i=>i.lineNumber!==void 0);return s.length>0?s.length>=3&&QR(s)&&WR(s):ZR(n)}function KR(e){let t=e.trim(),n=bb(t);return _b(t)||n?.hasOperandEvidence===!0}function HR(e){let t=[];for(let n of e.split(/\r?\n/)){let s=JR(n).trim();if(s.length===0||e0(s))continue;let i=XR(n);t.push({body:s,...i!==void 0?{lineNumber:i}:{}})}return t}function WR(e){let t=Sb(e);return t.statements>=3&&t.instructions>=1&&t.operandInstructions>=1}function ZR(e){let t=Sb(e);return t.statements>=4&&t.instructions>=1&&(t.labels+t.directives>=1&&t.operandInstructions>=1||t.instructions>=4&&t.distinctMnemonics>=2&&t.operandInstructions>=4)}function Sb(e){let t=new Set,n=0,s=0,i=0,o=0;for(let a of e){let c=bb(a.body);n+=t0(a.body)?1:0,s+=_b(a.body)?1:0,i+=c!==null?1:0,o+=c?.hasOperandEvidence===!0?1:0,c!==null&&t.add(c.mnemonic)}return{labels:n,directives:s,instructions:i,operandInstructions:o,distinctMnemonics:t.size,statements:n+s+i}}function bb(e){let t=/^([a-z][a-z0-9_.]*)(?:\s+(.+))?$/i.exec(e.trim()),n=t?.[1]?.toLowerCase(),s=t?.[2]??"";return n===void 0||!s0.test(n)?null:{mnemonic:n,hasOperandEvidence:s.length>0&&i0.test(n0(s))}}function GR(e){return/^\s*(?:\{|\[|")/.test(e)||YR(e)||/(?:^|[\r\n])\s*(?:make(?:\[\d+])?:|CMake (?:Error|Warning)\b|\[\s*\d+%]\s+\S|(?:error|fatal|warning):\b|Traceback\b|[$#>]\s+\S)/i.test(e)}function YR(e){return/(?:^|[\r\n])\s*(?:\d{1,6}:\s*)?\[\s*\d+(?:\.\d+)?]\s+\S/.test(e)}function JR(e){return e.replace(/^\s*\d{1,6}(?:[ \t]+|:\s*)/,"")}function XR(e){let t=/^\s*(\d{1,6})(?:[ \t]+|:\s*)/.exec(e);return t?Number.parseInt(t[1],10):void 0}function QR(e){return e.every((t,n)=>n===0||(t.lineNumber??0)>(e[n-1]?.lineNumber??0))}function e0(e){return/^\s*(?:\/\/|#|;)(?:\s|$)/.test(e)}function t0(e){return!/^(?:error|fatal|warning):$/i.test(e.trim())&&/^\.?[a-z_.$][\w.$]*:\s*$/i.test(e.trim())}function _b(e){return r0.test(e.trim())}function n0(e){return e.replace(/\s*(?:(?:\/\/|#|;).*)$/,"")}var r0=/^\.(?:if|ifdef|ifndef|elseif|else|endif|set|equ|macro|endm|section|text|data|bss|globl|global|type|size|align|p2align|long|word|byte|quad|file|loc|cfi_[a-z_]+)\b/i,s0=/^(?:(?:s|v)_[a-z0-9_]+|(?:flat|buffer|global|ds|scratch|image|tbuffer)_[a-z0-9_]+|(?:mov|add|sub|mul|imul|div|idiv|cmp|jmp|call|ret|push|pop|ldr|str|ldp|stp|adr|lea|xor|and|or|test|inc|dec|nop)[a-z0-9_.]*)$/i,i0=/(?:0x[0-9a-f]+|\b\d+\b|[,\[\]()\\]|%[a-z0-9]+|\b(?:r\d+|x\d+|w\d+|v\d+|s\d+|ttmp\d+|exec(?:_lo|_hi)?|m0|sp|fp|lr|pc|eax|ebx|ecx|edx|rax|rbx|rcx|rdx|esi|edi|rsi|rdi|rbp|rsp|al|ah|bl|bh|cl|ch|dl|dh)\b|\.[a-z_.$][\w.$]*)/i;function Qn(e){return/^(?:public|private|protected):$/.test(e)?{category:"access",strongAnchor:!0,nontrivialAnchor:!0}:/^[{}]\s*;?$/.test(e)||/^\}\s*(?:else\b|while\s*\().*/.test(e)?{category:"brace",strongAnchor:!1,nontrivialAnchor:!1}:/^(?:if|for|while|switch)\s*\(.+\)\s*\{?$/.test(e)||/^(?:case\s+.+|default):\s*$/.test(e)?{category:"control",strongAnchor:/[{};]|->|::|\bstd::/.test(e),nontrivialAnchor:!0}:/^(?:return|break|continue)\b.*;$/.test(e)?{category:"return",strongAnchor:/[A-Z_]{3,}|->|::|\bstd::/.test(e),nontrivialAnchor:!1}:o0(e)?{category:"declaration",strongAnchor:!0,nontrivialAnchor:/(?:\bstd::|->|::|[*&<>]|\b(?:size_t|uint\d+_t|int\d+_t)\b)/.test(e)}:a0(e)?{category:"assignment",strongAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*|\[[^\]]+])|\b[A-Z_]{3,}\b/i.test(e),nontrivialAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*)/i.test(e)}:c0(e)?{category:"call",strongAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*|\b[A-Z_]{3,}\s*\()/i.test(e),nontrivialAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*)/i.test(e)}:l0(e)?{category:"call",strongAnchor:/(?:->|::|\.|\[[^\]]+]|\bsizeof\s*\()/i.test(e),nontrivialAnchor:/(?:->|::|\.|\[[^\]]+])/i.test(e)}:null}function Gi(e){let t=e.replace(/\.\.\.\s*$/,"").trim();return p0(t)?{category:"return",strongAnchor:!1,nontrivialAnchor:!1}:u0(t)?{category:"assignment",strongAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*|\[[^\]]+])|\b[A-Z_]{3,}\b/i.test(t),nontrivialAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*)/i.test(t)}:d0(t)?{category:"call",strongAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*|\b[A-Z_]{3,}\s*\(|\bstd::)/i.test(t),nontrivialAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*)/i.test(t)}:null}function Jr(e){return/^(?:(?:\/\/|#|;)\s*|\/\*+|\*\/?)/.test(e)}function o0(e){return[/^(?:(?:const|static|inline|extern|volatile|mutable|constexpr)\s+)*(?:std::)?[a-z_][a-z0-9_:<>]*(?:\s*[*&]|\s+)+[a-z_][a-z0-9_:~]*(?:\s*[({=;[]|\s+\{)/i,/^(?:(?:const|static|inline|extern|volatile|mutable|constexpr)\s+)*(?:struct|enum|class)\s+[a-z_][a-z0-9_:<>]*\s+[*&\s]*[a-z_][a-z0-9_]*\s*(?:[=;,{]|\[[^\]]+])/i,/^(?=.*\()(?:(?:static|inline|extern|const|virtual)\s+)*(?:(?:struct|enum|class)\s+)?[a-z_][a-z0-9_:<>]*(?:\s*[*&]|\s+)+[~a-z_][a-z0-9_:<>]*\s*\([^;]*(?:\{|,\s*)?$/i,/^(?=.*[,)]\s*(?:const\s*)?(?:\{)?$)\s*(?:const\s+)?[a-z_][a-z0-9_:<>]*(?:\s*[*&]+|\s+)[^;{}]+[,)]\s*(?:const\s*)?(?:\{)?$/i].some(t=>t.test(e))}function a0(e){return/^[a-z_][a-z0-9_]*(?:(?:->|\.|::)[a-z_][a-z0-9_]*|\[[^\]]+])*\s*(?:=|\+=|-=|\*=|\/=|%=|&=|\|=|<<=|>>=).+;$/i.test(e)}function c0(e){return!/;$/.test(e)||/^(?:please|then|now|maybe|should|must|can)\b/i.test(e)?!1:/^(?:(?:[a-z_][a-z0-9_]*)(?:->|\.|::))?[a-z_][a-z0-9_:]*\s*\(.*\)\s*;$/i.test(e)}function l0(e){return/^(?=.*;\s*$)(?=.*(?:\)|]|\bsizeof\s*\())[\w\s.,:[\]()*&<>\-]+;\s*$/i.test(e)}function u0(e){return/^[a-z_][a-z0-9_]*(?:(?:->|\.|::)[a-z_][a-z0-9_]*|\[[^\]]+])*\s*(?:=|\+=|-=|\*=|\/=|%=|&=|\|=|<<=|>>=)\s*\S.+$/i.test(e)}function d0(e){return/^(?:please|then|now|maybe|should|must|can)\b/i.test(e)?!1:/^(?:(?:[a-z_][a-z0-9_]*)(?:->|\.|::))?[a-z_][a-z0-9_:]*\s*\(.+\S$/i.test(e)}function p0(e){return/^retu(?:r(?:n)?)?(?:\b|$)/i.test(e)}var m0=/^(?:bash|edit|read|search|tool)\s+failure\s+/i,f0=/(?:\.\.\.|…)\s*$/;function ce(e){return e.trim().replace(m0,"")}function ge(e){return f0.test(e.trim())}function g0(e){let t=e.trim();return t.length>0&&!k0(t)&&(h0(t)||y0(t))}function h0(e){return kb(e,{allowClippedFinalLine:!1,minLines:4})}function y0(e){return ge(e)&&kb(e,{allowClippedFinalLine:!0,minLines:3})}function S0(e){if(!ge(e))return!1;let t=e.split(/\r?\n/).map(n=>n.trim()).filter(n=>n.length>0&&!Jr(n));return t.length>=5&&t.filter(b0).length>=3&&t.filter(_0).length>=2&&t.some(n=>/^\)\s*;?\s*$/.test(n))&&t.some(n=>Qn(n)!==null||Gi(n)!==null)}function b0(e){return/^[a-z0-9_()[\].:&*>\s,-]+,\s*(?:(?:\/\/|\/\*)[^\r\n]*)?$/i.test(e)&&/(?:[_()[\].:]|->|::|\b\d+\b)/.test(e)}function _0(e){return/(?:->|::|\.|\[[^\]]+])/.test(e)}function kb(e,t){let n=e.split(/\r?\n/),s=I0(n),i=[];for(let[o,a]of n.entries()){let c=a.trim();if(c.length===0||Jr(c))continue;let l=Qn(c)??(t.allowClippedFinalLine&&o===s?Gi(c):null);if(l===null){if(yS(i,t.minLines))return!0;i=[];continue}i.push(l)}return yS(i,t.minLines)}function yS(e,t){let n=new Set(e.map(i=>i.category)),s=e.filter(i=>i.strongAnchor).length;return e.length>=t&&n.size>=2&&s>=2&&e.some(i=>i.nontrivialAnchor)}function k0(e){return/^\s*(?:\{|\[|")/.test(e)||w0(e)||v0(e)||E0(e)||A0(e)||/(?:^|[\r\n])\s*(?:make(?:\[\d+])?:|CMake (?:Error|Warning)\b|\[\s*\d+%]\s+\S|(?:error|fatal|warning):\b|Traceback\b|[$#>]\s+\S)/i.test(e)}function v0(e){return/(?:^|[\r\n])\s*(?:\d{1,6}:\s*)?\[\s*\d+(?:\.\d+)?]\s+\S/.test(e)}function E0(e){return/(?:^|[\r\n])\s*(?:#{1,6}\s+\S|[-*]\s+\S|```|\|.+\|)/.test(e)}function A0(e){return/(?:^|[\r\n])\s*\S+\.(?:c|cc|cpp|cxx|cu|cuh|h|hpp|hh|s|asm|ts|tsx|js|jsx|py):\d+(?::\d+)?:/i.test(e)}function w0(e){return/(?:^|[\r\n])\s*\d{1,6}(?:[ \t]+|:\s*)\S/.test(e)}function I0(e){for(let t=e.length-1;t>=0;t-=1){let n=e[t]?.trim()??"";if(n.length>0&&!Jr(n))return t}return-1}function T0(e){if(x0(e))return[];let t=[],n=/(?:^|[\r\n]|\s)(\d{1,6})\u2192([\s\S]*?)(?=(?:[\r\n]|\s)\d{1,6}\u2192|$)/g,s;for(;(s=n.exec(e))!==null;){let i=Number.parseInt(s[1]??"",10),o=(s[2]??"").trim();Number.isSafeInteger(i)&&o.length>0&&t.push({line:i,body:o.slice(0,160)})}return t}function x0(e){return/(?:^|[\r\n]|\s)\d{1,6}(?:[ \t]+|:\s+)\S/.test(e)}function Kd(e){return/^(?:[a-z0-9-]+\.)+[a-z]{2,}(?:$|[/:]\S*)/i.test(e)?!1:C0(e)||O0(e)||L0(e)||$0(e)||z0(e)}function R0(e){return Eb(e)||vb(e)||Ab(e)||q0(e)}function C0(e){return[/^#!\/(?:usr\/bin\/env\s+)?[a-z0-9_.+-]+\b/,/^[{}]\s*;?$/,/^(?:case\s+.+|default):\s*$/,/^#include\s*(?:<[^>]+>|"[^"]+")/].some(t=>t.test(e))}function O0(e){return[/^set\s+-euo\s+pipefail\b/,/^(?:export\s+|readonly\s+|local\s+)?[A-Za-z_$][A-Za-z0-9_$]*=(?=\S)(?=.*(?:["'`$(){}]|\S+$)).+$/,/^[A-Za-z_$][A-Za-z0-9_$]*\s*\(\)\s*\{$/].some(t=>t.test(e))}function L0(e){return vb(e)||/^(?:if|for|while|switch)\s*\(/.test(e)||/^(?:break|continue)(?:\s+[a-zA-Z_$][a-zA-Z0-9_$]*)?\s*;?$/.test(e)||/^return\s+\([^)]{1,100}\)\s*\S.*;?$/.test(e)||/^return(?:\s+(?:[a-zA-Z_$][a-zA-Z0-9_$.]*(?:\([^)]*\))?|-?\d+(?:\.\d+)?|true|false|null|nullptr|none))?\s*;?$/.test(e)||/^[a-zA-Z_$][a-zA-Z0-9_$]*\s*(?:=|:=)\s*\S.*;\s*$/.test(e)||/^[a-zA-Z_$][a-zA-Z0-9_$:<>]*(?:->|::)[a-zA-Z_$][a-zA-Z0-9_$:]*/.test(e)||/^(?:this|[a-zA-Z_$][a-zA-Z0-9_$]*)\.[a-zA-Z_$][a-zA-Z0-9_$]*(?:\s*\(|\s*(?:=|\+=|-=|\*=|\/=))/.test(e)}function vb(e){return N0(e)||M0(e)||D0(e)||F0(e)||/^export\s+\{[^}\r\n]+\}\s+from\s+["'][^"'\r\n]+["']\s*;?$/.test(e)}function N0(e){let t=/^(?:export\s+)?(?:const|let|var)\s+[a-zA-Z_$][a-zA-Z0-9_$]*\s*=\s*(\S[\s\S]*)$/u.exec(e);return t!==null&&P0(t[1]??"")}function P0(e){let t=e.replace(/;\s*$/,"").trim();return t.length===0?!1:/^(?:["'`{[(]|\d|true\b|false\b|null\b|undefined\b|new\s+[A-Z_$])/.test(t)||/^[a-zA-Z_$][a-zA-Z0-9_$.]*(?:\([^)]*\))?$/.test(t)?!0:/(?:=>|::|->|[.[\]{}(),?:+\-*/%]|&&|\|\||[!<>=]=?)/.test(t)}function M0(e){let t=/^(?:(?:export\s+(?:default\s+)?(?:async\s+)?)|(?:async\s+))?function\s+[a-zA-Z_$][a-zA-Z0-9_$]*\s*\(([^)]*)\)\s*(?::\s*[^;{\r\n]+)?\s*(?:;|\{[^\r\n]*)\s*$/.exec(e);return t!==null&&wb(t[1]??"")}function D0(e){return/^(?:export\s+)?(?:class|interface)\s+[a-zA-Z_$][a-zA-Z0-9_$]*(?:<[^>\r\n]+>)?(?:\s+(?:extends|implements)\b[^{\r\n]*)?\s*\{/.test(e)}function F0(e){return/^(?:export\s+)?type\s+[a-zA-Z_$][a-zA-Z0-9_$]*(?:<[^>\r\n]+>)?\s*=/.test(e)}function $0(e){return Eb(e)||Ab(e)}function Eb(e){return U0(e)||j0(e)}function U0(e){return[/^from\s+(?:\.{1,3}[a-zA-Z_][a-zA-Z0-9_.]*|\.{1,3}|[a-zA-Z_][a-zA-Z0-9_.]*)\s+import\s+(?:\*|[a-zA-Z_][a-zA-Z0-9_]*(?:\s+as\s+[a-zA-Z_][a-zA-Z0-9_]*)?(?:\s*,\s*[a-zA-Z_][a-zA-Z0-9_]*(?:\s+as\s+[a-zA-Z_][a-zA-Z0-9_]*)?)*)$/,/^import\s+[a-zA-Z_][a-zA-Z0-9_.]*(?:\s+as\s+[a-zA-Z_][a-zA-Z0-9_]*)?(?:\s*,\s*[a-zA-Z_][a-zA-Z0-9_.]*(?:\s+as\s+[a-zA-Z_][a-zA-Z0-9_]*)?)*$/].some(t=>t.test(e))}function j0(e){return[/^import\s+["'][^"'\r\n]+["']\s*;?$/,/^import\s+(?:type\s+)?(?:[a-zA-Z_$][a-zA-Z0-9_$]*\s*,\s*)?(?:\{[^}\r\n]+\}|\*\s+as\s+[a-zA-Z_$][a-zA-Z0-9_$]*|[a-zA-Z_$][a-zA-Z0-9_$]*)\s+from\s+["'][^"'\r\n]+["']\s*;?$/].some(t=>t.test(e))}function Ab(e){let t=/^(?:async\s+)?def\s+[a-zA-Z_][a-zA-Z0-9_]*\s*\(([^)]*)\)\s*(?:->\s*[^:\r\n]+)?\s*:\s*$/.exec(e);return t!==null&&wb(t[1]??"")||/^class\s+[a-zA-Z_][a-zA-Z0-9_]*(?:\([^)]*\))?:\s*$/.test(e)}function wb(e){let t=e.trim();return!!(t.length===0||/^(?:this|self|cls)$/.test(t)||/[,:=*[\]{}]|(?:^|\s)(?:readonly|public|private|protected)\s+/.test(t)||/^[a-zA-Z_$][a-zA-Z0-9_$]*(?:\s*,\s*[a-zA-Z_$][a-zA-Z0-9_$]*)*$/.test(t))}function z0(e){return[/^(?=.*(?:\b[a-z_$][a-z0-9_$:<>]*_t\b|::|[<&*]|\b(?:static|inline|extern|const|virtual|void|int|char|bool|auto|struct|enum)\b))(?:[a-z_$][a-z0-9_$:<>*&,]*\s+)+[*&\s]*[~a-z_$][a-z0-9_$:<>]*\s*\([^)]*\)\s*(?:\{|;|const\b|override\b)/,/^(?:(?:const|static|inline|extern|volatile|mutable|constexpr)\s+)*(?:struct|enum|class)\s+[a-z_$][a-z0-9_$:<>]*\s+[*&\s]*[a-z_$][a-z0-9_$]*\s*(?:[=;,{]|\[[^\]]+])/,/^(?:(?:static|inline|extern|const)\s+)*(?:struct|enum|typedef|void|int|char|bool|[a-z_$][a-z0-9_$:<>]*_t)\s+[*&\s]*[a-z_$][a-z0-9_$]*\s*(?:\([^)]*\)|[=;,[{])/].some(t=>t.test(e))}function q0(e){if(/^(?:struct|enum)\s+[a-z_][a-z0-9_:<>]*\s*(?:[{:;])/.test(e))return!0;let t=Qn(e);return t?.category==="declaration"&&(t.nontrivialAnchor||B0(e))}function B0(e){return/^(?:(?:const|static|inline|extern|volatile|mutable|constexpr|virtual)\s+)*(?:(?:struct|enum|class)\s+)?(?:void|int|char|bool|auto|size_t|u?int\d+_t|[a-z_][a-z0-9_]*_t)\b/.test(e)}function Ad(e,t={minSourceStatements:2}){return e.length<3||!H0(e)?!1:W0(e,t,Kd)>=t.minSourceStatements?!0:t.allowClippedSourceContext===!0&&Z0(e)}function V0(e){let t=[],n=/(?:^|[\r\n]|\s)(\d{1,6})[ \t]+([\s\S]*?)(?=(?:[\r\n]|\s)\d{1,6}[ \t]+|$)/g,s;for(;(s=n.exec(e))!==null;){let i=Number.parseInt(s[1]??"",10),o=(s[2]??"").trim();Number.isSafeInteger(i)&&o.length>0&&t.push({line:i,body:o.slice(0,160)})}return t}function K0(e){let t=[];for(let n of e.split(/\r?\n/)){let s=/^\s*(\d{1,6})(?:[ \t]+|:\s*)(\S[\s\S]*)$/.exec(n);s&&t.push({line:Number.parseInt(s[1],10),body:s[2].trim().slice(0,160)})}return t}function H0(e){return e.every((t,n)=>n===0||t.line>e[n-1].line)}function W0(e,t,n){return e.filter((s,i)=>!(t.ignoreTruncatedFinalSpan===!0&&i===e.length-1)&&n(s.body)).length}function Z0(e){if(e.length<4)return!1;let t=e.length-1,n=[],s=0,i=0,o=0;for(let[l,d]of e.entries()){if(Jr(d.body)){s+=1,o+=1;continue}let m=l===t?Gi(d.body)??Qn(d.body):Qn(d.body);m!==null&&(s+=1,n.push(m),l!==t&&(i+=1))}let a=new Set(n.map(l=>l.category)),c=n.filter(l=>l.strongAnchor).length;return s>=4&&i>=2&&a.size>=2&&c>=2&&n.some(l=>l.nontrivialAnchor)||s>=4&&i>=2&&o>=2&&a.has("brace")&&a.has("declaration")&&c>=1}function G0(e){return Ib(e)?Ad(T0(e)):/^\s*\d+\.\s+\S/m.test(e)||/(?:^|\s)\d+:\s+\S/.test(e)||J0(e)?!1:Ad(V0(e))}function Y0(e){if(Ib(e))return!1;let t=ge(e);return!/^\s*(?:\{|\[|")/.test(e)&&Ad(K0(e),{allowClippedSourceContext:t,ignoreTruncatedFinalSpan:t,minSourceStatements:t?3:2})}function J0(e){return/[\r\n]\s*\d{1,6}[ \t]+\S/.test(e)}function Ib(e){return/(?:^|[\r\n]|\s)\d{1,6}\u2192/.test(e)}function X0(e){let t=e.trim();if(!/^#include\s*(?:<[^>\r\n]+>|"[^"\r\n]+")/i.test(t))return!1;let n=[...t.matchAll(/(?:^|\s)#include\s*(<[^>\r\n]+>|"[^"\r\n]+")/gi)].map(i=>i[1]?.toLowerCase()),s=new Set(n.filter(i=>i!==void 0));return s.size>=5||s.size>=3&&/\b(?:namespace|std::|class|struct|template|using|void|int|auto|const|public:|private:|[a-z_][a-z0-9_:]*::[a-z_][a-z0-9_]*)\b/i.test(t)}function Q0(e){let t=e.split(/\r?\n/).map(s=>s.trim());return t.filter(s=>/^\d{1,6}\s+(?:(?:(?:\/\/|\/\*|\*)\s*)|\/\/{5,})/i.test(s)).length>=2&&t.some(s=>/^\d{1,6}\s+(?:(?:\/\/\s*)?SPDX-License-Identifier:|(?:(?:\/\/|\/\*|\*)\s*)?(?:copyright|permission is hereby granted|open source license))/i.test(s))}function eC(e){let t=e.trim(),n=/^\s*\/\*([\s\S]{0,900}?)\*\//.exec(t);return/^\s*\/\/\s*SPDX-License-Identifier:\s*\S/i.test(t)||n!==null&&Hd.test(n[1]??"")||tC(t)||nC(t)}function tC(e){let t=e.split(/\r?\n/).slice(0,12);return t.filter(s=>/^\s*(?:\/\/+|#)\s*(?:\S|$)/.test(s)).length>=3&&Hd.test(t.join(`
|
|
6
|
+
`))}function nC(e){return/^\s*(?:\/\/|#)\s+/.test(e)?[...e.slice(0,900).matchAll(/(?:^|\s)(?:\/\/|#)\s+/g)].length>=3&&Hd.test(e.slice(0,900)):!1}var Hd=/\b(?:SPDX-License-Identifier|copyright|permission is hereby granted|open source license)\b/i;function Xe(e){let t=ce(e);return t.length===0?!1:rC(t)||VR(t)||g0(t)||Y0(t)||eC(t)||Q0(t)||aC(t)||cC(t)||oC(t)||X0(t)||lC(t)||G0(t)||dC(t)>=2||gC(t)>=3}function rC(e){let t=sC(e);return iC(t)||R0(t)}function sC(e){return e.split(/\r?\n/).find(t=>t.trim().length>0)?.trim()??""}function iC(e){return/^(?:#!\/|diff\s+--git\b|---\s+\S|@@\s+|#ifndef\b|#pragma\s+once\b|cmake_minimum_required\s*\()/i.test(e)}function oC(e){let t=[...e.matchAll(/(?:^|[\r\n])\s*#include\s*(<[^>\r\n]+>|"[^"\r\n]+")/gi)].map(n=>n[1]?.toLowerCase());return new Set(t.filter(n=>n!==void 0)).size>=2}function aC(e){return/(?:^|[\r\n])\s*(?:\/\/|#|\/\*)[^\r\n]*(?:$|[\r\n])/i.test(e)&&/(?:^|[\r\n])\s*(?:export\s+(?:const|function|class)\b|(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=|return\s+[^;\r\n]+;|function\s+[a-z_$][a-z0-9_$]*\s*\(|class\s+[a-z_$][a-z0-9_$]*\b|def\s+[a-z_][a-z0-9_]*\s*\()/i.test(e)}function cC(e){return/(?:^|[\r\n])\s*@[a-zA-Z_][a-zA-Z0-9_.]*(?:\([^)\r\n]*\))?\s*(?:[\r\n]+)\s*(?:(?:async\s+)?def\s+[a-zA-Z_][a-zA-Z0-9_]*\s*\(|(?:export\s+)?(?:class|function)\s+[a-zA-Z_$][a-zA-Z0-9_$]*)/i.test(e)}function lC(e){return/(?:^|[\r\n])\s*diff --git a\/\S+ b\/\S+/i.test(e)&&/(?:^|[\r\n])\s*index [a-f0-9]{6,}\.\.[a-f0-9]{6,}/i.test(e)}function uC(e){let t=Tb(e);return t.length===1&&ge(e)&&mC(e)&&pC(t[0].body)}function dC(e){return Tb(e).length}function Tb(e){return[...e.matchAll(fC)].map(t=>({body:(t[1]??"").trim()}))}function pC(e){return Kd(e)||KR(e)}function mC(e){return e.split(/\r?\n/).slice(1).some(t=>/^\s*(?:\/|\.\.?\/|[a-z0-9_.-]+\/)\S*\/\S*\.\.\.\s*$/i.test(t))}var fC=/(?:^|[\r\n])\s*[^\s:\r\n]+\.(?:c|cc|cpp|cxx|cu|cuh|h|hpp|hh|s|asm|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift):\d+(?::\d+)?:\s*([^\r\n]*)/gi;function gC(e){return[/#include\b/i,/\bnamespace\s+[a-z_][a-z0-9_:]*\s*\{/i,/\bstd::[a-z_][a-z0-9_]*/i,/\b(?:class|struct)\s+[a-z_][a-z0-9_]*/i,/\btemplate\s*</i,/\bint\s+main\s*\(/i,/\bcmake_minimum_required\s*\(/i,/\bproject\s*\(/i,/\bset\s*\([a-z0-9_]+/i,/\bdef\s+[a-z_][a-z0-9_]*\s*\(/i,/\bfunction\s+[a-z_$][a-z0-9_$]*\s*\(/i,/\b(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=/i,/\breturn\s+[^.;{}]+[.;]/i].reduce((n,s)=>n+(s.test(e)?1:0),0)}function hC(e){let t=e.trim().replace(/^(?:bash|edit|read|search|tool)\s+failure\s+/,""),n=/^\s*<NOTE>([\s\S]{1,600}?)<\/NOTE>\s+([\s\S]+)$/i.exec(t);if(!n)return!1;let s=n[1]??"",i=n[2]?.trim()??"";return yC(s)&&(Xe(i)||[...i.matchAll(AC)].length>=2)}function yC(e){return SC.test(e)&&(bC.test(e)||_C.test(e)||kC.test(e))&&vC.test(e)&&EC.test(e)}var SC=/\b(?:file|source|content|output|document|payload|result|text|artifact|log)\b/i,bC=/\b(?:exceeds?|exceeded|larger\s+than|longer\s+than|over)\b[\s\S]{0,100}\b(?:display|show|render|view|viewer|capture|context|output)?[\s-]*(?:limit|limits|window|max(?:imum)?|allowed|capacity)\b/i,_C=/\btoo\s+(?:large|long)\s+to\s+(?:display|show|render|view|print|return|include)\s+(?:entirely|fully|in\s+full|completely)?\b/i,kC=/\b(?:larger|longer)\s+than\b[\s\S]{0,80}\b(?:viewer|display|view|window|context|tool|system)\b[\s\S]{0,80}\b(?:show|display|render|view|include|return|capture)\b/i,vC=/\b(?:abbreviated|abridged|shortened|truncated|partial|compact|limited|excerpt|preview)\b/i,EC=/\b(?:start_line|end_line|line_range|view_range|line\s+range|line\s+ranges|selected\s+lines|specific\s+lines|specific\s+portions|specific\s+sections|specific\s+ranges|fetch\s+lines|read\s+lines|show\s+lines|request\s+lines|inspect\s+lines|offset|limit|chunk|slice)\b/i,AC=/(?:^|\s)\d{1,6}\s+(?:#|from\b|import\b|class\b|def\b|function\b|export\b|const\b|let\b|var\b|interface\b|type\b|struct\b|enum\b|static\b)/gi;function wt(e){return wC(e)||TC(e)||xC(e)||IC(e)}function wC(e){return/^\s*(?:(?:expected|example|sample|reference|illustrative|previous|golden|baseline|canonical|fixture|desired)(?:\s+(?:[a-z][\w.-]{0,40}|from\s+[a-z][\w.-]{0,40})){0,3}\s+(?:output|stdout|stderr|diagnostics?|results?|reports?)(?:\s+from\s+[a-z][\w.-]{0,40})?|(?:sample|reference|example|fixture)\s+from\s+[a-z][\w.-]{0,40}|(?:expected|example|sample|reference|illustrative|previous|golden|baseline|canonical|fixture|desired)(?:\s+[a-z][\w.-]{0,40})?|fixture)\s*:/i.test(e)}function IC(e){return/^\s*(?:(?:(?:const|let|var)\s+)?[a-z_$][\w$]*\s*=\s*(?:(?:new\s+)?[A-Z][A-Za-z0-9_$]{1,80}\s*\(\s*)?["'`]|(?:print|console\.log|assert(?:\.\w+)?|expect)\s*\(|(?:throw\s+)?new\s+[A-Z][A-Za-z0-9_$]{1,80}\s*\(\s*["'`]|raise\s+[A-Z][A-Za-z0-9_$]{1,80}\s*\(\s*["'`]|(?:[a-z_$][\w$]*\.)+[a-z_$][\w$]*\s*\(\s*["'`]|[A-Z][A-Za-z0-9_$]{1,80}\s*\(\s*["'`]|["'`][^"'`\n]{0,160}\b(?:expected\s+)?(?:exception|failed|failure|tests?\s+failed)\b|\/\/|#\s*fixture\b|return\s+["'`])/i.test(e)}function TC(e){return/^\s*(?:expected\s+(?:error|failure|exception)|(?:(?:test|case|probe|scenario)(?:\s+\d+)?[^\n:]{0,80}:?\s+)?(?:failed|failure|error|exception)\s+as\s+expected|(?:error|failure|exception)\s+occurred\s+as\s+expected)\b/i.test(e)||/^\s*(?:error|failure|exception)[^\n:]{0,120}\(expected\):/i.test(e)}function xC(e){return/^\s*(?:for\s+example\b|for\s+reference\s*[,:]|output\s+format\s*:|(?:source|fixture|sample|example)\s+(?:text|code|snippet|fixture)\s*:|this\s+(?:example|sample|fixture)\s+(?:shows?|uses?|contains?|demonstrates?)\s*:|documentation\s+(?:output|results?|reports?|diagnostics?)\s*:|the\s+(?:output|results?|reports?|diagnostics?)\s*:|(?:according\s+to\s+)?(?:the\s+)?[^\n:]{0,80}\b(?:documentation|docs?)\b(?:[^\n:]{0,80}\b(?:displays?|says?|shows?)\b|[^\n:]{0,80}[,:]))/i.test(e)}var RC=[/(?:^|[\r\n])\s*(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.[a-z0-9]{1,8}\s+\d+:\d+\s+(?:error|fatal)\b/i,/(?:^|[\r\n])\s*(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.[a-z0-9]{1,8}:\d+:\d+:\s+(?:(?:\[(?:error|fatal)\])|(?:error|fatal)\b)\s+\S/i,/(?:^|[\r\n])\s*(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.[a-z0-9]{1,8}\(\d+,\d+\):\s+(?:error|fatal)\b\s+\S/i,/(?:^|[\r\n])\s*\d+:\d+\s+(?:error|fatal)\b[^\n]{0,160}\([a-z][a-z0-9-]+\)/i,/(?:^|[\r\n])\s*(?:[a-z][\w.-]*(?:lint|test|check|build|compil|type|format|validat|audit|scan|parse|command|tool)[\w.-]*\s+)?(?:results?|output|report|diagnostics?|problems?):\s+[^\n]{0,160}(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.[a-z0-9]{1,8}\s+\d+:\d+\s+(?:error|fatal)\b/i,/(?:^|[\r\n])\s*(?:[a-z][\w.-]*(?:lint|test|check|build|compil|type|format|validat|audit|scan|parse|command|tool)[\w.-]*\s+)?(?:results?|output|report|diagnostics?|problems?):\s+[^\n]{0,160}(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.[a-z0-9]{1,8}:\d+:\d+:\s+(?:(?:\[(?:error|fatal)\])|(?:error|fatal)\b)\s+\S/i,/\bcommand\s+output:\s+[^\n]{0,240}(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.[a-z0-9]{1,8}:\d+:\d+:\s+(?:(?:\[(?:error|fatal)\])|(?:error|fatal)\b)\s+\S/i,/\bline\s+\d+:\s+syntax\s+error\b[^\n]{0,160}\(level:\s*error\)/i,/\b(?:error(?:\s+parsing\s+[a-z0-9_. -]+)?):\s+[^\n]{0,240}\bline\s+\d+,\s+column\s+\d+\b/i,/\b(?:parseerror|parsing\s+error|invalid\s+syntax)\b[^\n]{0,240}\bline\s+\d+,\s+column\s+\d+\b/i,/(?:^|[\r\n])\s*E\s+AssertionError\b/i],CC=/\b(?:no\s+errors?|0\s+errors?|no\s+failures?|0\s+failures?)\b/i;function xb(e){let t=OC(e).trim();return t.length===0||wt(t)||CC.test(t)?!1:RC.some(n=>n.test(t))}function OC(e){return e.replace(/\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])/g,"")}function Wd(e){let t=LC(e)??NC(e),n=t?.[1]?.trim()??"",s=t?.[2]?.trim()??"";return s.length>0?{section:s,preamble:n}:null}function LC(e){return/^([\s\S]*?)(?:^|[\r\n])\s*(?:actual|received)\s+(?:output|stdout|stderr|diagnostics?|errors?|failures?|results?|reports?)\s*:\s*([\s\S]+)$/i.exec(e)}function NC(e){return/^(\s*(?:expected|example|sample|reference|illustrative|previous|golden|baseline|canonical|fixture|desired)(?:\s+(?:[a-z][\w.-]{0,40}|from\s+[a-z][\w.-]{0,40})){0,3}\s+(?:output|stdout|stderr|diagnostics?|errors?|failures?|results?|reports?)(?:\s+from\s+[a-z][\w.-]{0,40})?\s*:\s+[\s\S]{0,800})\s+(?:actual|received)\s+(?:output|stdout|stderr|diagnostics?|errors?|failures?|results?|reports?)\s*:\s*([\s\S]+)$/i.exec(e)}function Zd(e){let t=e.split(/\r?\n/).map(n=>n.trim()).filter(n=>n.length>0);return t.length>0&&t.every(n=>Cb(n))}function Rb(e){return Zd(e)||wt(e)||/^\s*expected(?:\s+[a-z][\w.-]{0,40})?\s*:/i.test(e)}function PC(e){return!MC(e)&&wt(e)&&!$C(e)}function MC(e){return/:\s*\S/.test(e)&&!Cb(e)}function DC(e){let n=e.split(/\r?\n/).map(s=>s.trim()).filter(s=>s.length>0).at(-1)??"";return/\bresult of running\s+`?cat\s+-n\b/i.test(e)||/(?:^|[\r\n])\s*```\w*\s*$/i.test(e)||/(?:^|[\r\n])\s*(?:(?:source|raw|literal|code|fixture|sample|example)\s+){0,3}(?:source|fixture|snippet|code|text)\s*:\s*$/i.test(e)||/^\s*(?:const|let|var)\s+[a-z_$][\w$]*\s*=\s*`$/i.test(n)||/^\s*[a-z_$][\w$]*\s*=\s*(?:'''|""")$/i.test(n)}function FC(e,t){let n=t+1;for(;n<e.length;){let s=e[n]?.trim()??"";if(s.length===0)return n;if(UC(s))return n-1;n+=1}return e.length-1}function Cb(e){return/^\s*(?:for\s+(?:example|reference)|here\s+is\s+an?\s+example|in\s+(?:the\s+)?(?:docs?|documentation)|as\s+shown\s+in\s+(?:the\s+)?(?:docs?|documentation)|according\s+to(?:\s+(?:the\s+)?(?:docs?|documentation))?|(?:the\s+)?(?:docs?|documentation)|(?:the\s+)?[^\n:]{0,80}\b(?:docs?|documentation)\b[^\n:]{0,80}\b(?:displays?|format|says?|shows?)|(?:example|sample|reference|illustrative|previous|golden|baseline|canonical|fixture|desired)(?:\s+[a-z][\w.-]{0,40})?)\s*:\s*$/i.test(e)}function $C(e){return/^\s*(?:(?:(?:const|let|var)\s+)?[a-z_$][\w$]*\s*=|(?:print|console\.log|assert(?:\.\w+)?|expect)\s*\(|(?:throw\s+)?new\s+[A-Z][A-Za-z0-9_$]{1,80}\s*\(|raise\s+[A-Z][A-Za-z0-9_$]{1,80}\s*\(|(?:[a-z_$][\w$]*\.)+[a-z_$][\w$]*\s*\(|[A-Z][A-Za-z0-9_$]{1,80}\s*\(|["'`]|\/\/|#\s*fixture\b|return\s+["'`])/i.test(e)}function UC(e){return/^(?:(?:actual|received|command|tool|test|pytest|unittest|build|compiler|typecheck|lint|linter)\s+)?(?:output|stdout|stderr|diagnostics?|errors?|failures?|results?|reports?)\s*:/i.test(e)||jC(e)||zC(e)||/^\s*E\s+AssertionError\b/i.test(e)}function jC(e){return/(?:\btraceback\s+\(most recent call last\)|(?:^|[\r\n])\s*(?:AssertionError|ImportError|ModuleNotFoundError|ReferenceError|RuntimeError|SyntaxError|TypeError|ValueError):|(?:^|[\r\n])\s*(?:FAIL|ERROR):\s+\S|\bsegmentation fault\b|\bcommand not found\b|\bapply_patch verification failed\b)/i.test(e)}function zC(e){return/(?:^|[\r\n])\s*(?:FAIL|ERROR):\s+\S|\bFAILED\s+\([^)]*\b(?:failures|errors)=[1-9]\d*|\b(?:failures|errors)=[1-9]\d*\b|\b[1-9]\d*\s+failed\b/i.test(e)}function Gd(e){let t=[];SS.lastIndex=0;let n;for(;(n=SS.exec(e))!==null;){let s=Number.parseInt(n[1]??"",10);Number.isSafeInteger(s)&&t.push({line:s,body:(n[2]??"").trimEnd(),index:n.index})}return t}function qC(e){return/(?:^|[\r\n]|\s)\d{1,6}(?:[ \t]+|:\s+)\S/.test(e)}var SS=/(?:^|[\r\n]|\s)(\d{1,6})\u2192([\s\S]*?)(?=(?:[\r\n]|\s)\d{1,6}\u2192|$)/g;function Ob(e){let t=[];for(let n of e.split(/\r?\n/)){let s=/^\s*(\d{1,6})(?:[ \t]+|:\s+)(.*)$/.exec(n);s&&t.push({line:Number.parseInt(s[1],10),body:s[2].trimEnd()})}return t}function Lb(e){return qC(e)?[]:Gd(e).map(({line:t,body:n})=>({line:t,body:n}))}function Yd(e){return e.every((t,n)=>n===0||t.line>e[n-1].line)}function Jd(e){return/(?:^|[\r\n]|\s)\d{1,6}\u2192/.test(e)}function BC(e){let t=ce(e);return Jd(t)?Nb(t):Pb(Ob(t),t)}function Nb(e){let t=ce(e);return Pb(Lb(t),t)}function Pb(e,t){return e.length<4||!Yd(e)?!1:VC(e.map(n=>n.body).join(`
|
|
7
|
+
`),{clipped:ge(t)})}function VC(e,t){let n=[...e.matchAll(/(?:^|[\r\n])\s{0,3}#{1,6}\s+\S/g)].length,s=[...e.matchAll(/(?:^|[\r\n])\s*(?:[-*]\s+\S|\d+\.\s+\S)/g)].length,i=t.clipped?1:2;return n>=2&&(s>=i||/(?:^|[\r\n])\s*```/.test(e)||KC(e))}function KC(e){let t=e.split(/\r?\n/).map(n=>n.trim());return t.some((n,s)=>md(n)&&/^\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(t[s+1]??"")&&md(t[s+2]??"")&&md(t[s+3]??""))}function md(e){return/^\|.+\|\s*$/.test(e)}function Mb(e){let t=ce(e),n=[...t.matchAll(/(?:^|[\r\n])\s{0,3}#{1,6}\s+\S/g)].length,s=[...t.matchAll(/(?:^|[\r\n])\s*(?:[-*]\s+\S|\d+\.\s+\S)/g)].length,i=/(?:^|[\r\n])\s*```/.test(t);return t.length>=160&&n>=2&&(s>=2||i)}function HC(e){let t=ce(e);return WC(t)||BC(t)||Mb(e)}function WC(e){let t=e.split(/\r?\n/).map(n=>n.trim());return t.some((n,s)=>{let i=t[s+1]??"",o=t[s+2]??"",a=t[s+3]??"";if(!fd(n)||!/^\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(i)||!fd(o)||!fd(a))return!1;let c=Oi(n);return c>=2&&Oi(i)===c&&Oi(o)===c&&Oi(a)===c})}function fd(e){return/^\|.+\|\s*$/.test(e)}function Oi(e){return e.replace(/^\|/,"").replace(/\|$/,"").split("|").length}function ZC(e){let t=ce(e);if(!Jd(t)||!ge(t))return!1;let n=Lb(t);return n.length>=3&&(n[0]?.line??1)>1&&Yd(n)&&GC(n)&&YC(n)>=2}function GC(e){return e.every((t,n)=>n===0||t.line===e[n-1].line+1)}function YC(e){return e.filter(t=>t.body.trim().length>0).length}function Xd(e){let t=e.trim().replace(/^(?:bash|edit|read|search|tool)\s+failure\s+/,""),n=JC.exec(t);if(n===null)return!1;let s=Number.parseInt(n[1]??"",10),i=Number.parseInt(n[2]??"",10),o=Number.parseInt(n[3]??"",10);return Number.isSafeInteger(s)&&Number.isSafeInteger(i)&&Number.isSafeInteger(o)&&s>=1&&i>=s&&o>=i}var JC=/^IMPORTANT:\s+The file content has been truncated\.\s+Status:\s+Showing lines\s+(\d+)-(\d+)\s+of\s+(\d+)\s+total lines\.\s+Action:\s+To read more of the file,\s+you can use the (?:'offset' and 'limit'|'start_line' and 'end_line') parameters(?:\.?\s*| in a subsequent 'read_file' call\.\s+For example,\s+(?:(?:t(?:o(?: read(?: th?)?)?)?)\.{3}|to read [^,\r\n]{1,120},\s+call read_file with (?:offset \d+ and limit \d+|start_line \d+ and end_line \d+)\.{3})\s*)$/i;function XC(e){let t=e.trim();return eO.test(t)?!1:nO.some(n=>n.test(t))||QC(t)}function QC(e){return tO.test(e)}var eO=/^(?:[a-z][a-z0-9+.-]*:\/\/|(?:[a-z0-9-]+\.)+[a-z]{2,}(?:$|[/:]\S*)|[{\["]|\d{1,2}:\d{2}(?::\d{2})?\b|\d+(?:\.\d+){1,}\b)/i,tO=/(?:\b[A-Z][A-Z0-9_]{2,}\b|\b[A-Za-z]*[a-z][A-Za-z0-9]*[A-Z][A-Za-z0-9]*\b|\b[a-z][a-z0-9]*_[a-z0-9_]+\b|\b\d+-bit\b|0x[0-9a-fA-F]+\b|`[^`]+`|[a-zA-Z_$][\w.-]*=)/,nO=[/^\/[/*]/,/^#(?:include|define|if|ifdef|ifndef|endif|pragma)\b/,/^\.[a-z_][\w.]*(?:\s|$)/i,/^(?:if|for|while|switch|catch)\s*\(/,/^(?:return(?:\s+(?:[a-z_$][\w$.]*(?:\([^)]*\))?|-?\d+(?:\.\d+)?|true|false|null|nullptr))?|break|continue)\s*;?$/i,/^(?=.*(?:\b[a-z_$][\w$:<>]*_t\b|::|[<&*]|\b(?:static|inline|extern|const|virtual|void|int|char|bool|auto|struct|enum)\b))(?:[a-z_$][\w$:<>*&,]*\s+)+[*&\s]*[~a-z_$][\w$:<>]*\s*\([^)]*\)\s*(?:\{|;|const\b|override\b)/i,/^[a-z_$][\w$:<>]*(?:->|::)[a-z_$][\w$:]*/i,/^(?:this|[a-z_$][\w$]*)\.[a-z_$][\w$]*(?:\s*\(|\s*(?:=|\+=|-=|\*=|\/=))/i,/^[a-z_$][\w$]*(?:\[[^\]]+])?\s*(?:=|\+=|-=|\*=|\/=)\s*\S.*;$/i];function Qd(e){let t=[];for(let n of e.split(/\r?\n/)){let s=n.trim(),i=rO(s);i!==null&&t.push(i)}return sO(t)}function rO(e){if(iO.test(e))return{kind:"source_location",line:e};if(oO.test(e))return{kind:"path_line",line:e};let t=/^(\d{1,6}):\s*\[\s*\d+(?:\.\d+)?]\s+\S/.exec(e);if(t)return{kind:"kernel_log",line:e,lineNumber:Number.parseInt(t[1],10)};let n=/^(\d{1,6}):(?!\s)(\S[\s\S]*)$/.exec(e);return n?XC(n[2]??"")?{kind:"grep",line:e,lineNumber:Number.parseInt(n[1],10),requiresMonotone:!0}:null:/^\d{1,6}[-:](?:\||\s+\S)/.test(e)?{kind:"grep",line:e}:/^\[\s*\d+(?:\.\d+)?]\s+\S/.test(e)?{kind:"kernel_log",line:e}:/^(?:#{1,6}\s+\S|```)/.test(e)?{kind:"markdown",line:e}:null}function sO(e){let t=new Set;return e.filter(n=>{let s=`${n.kind}:${n.line}`;return t.has(s)?!1:(t.add(s),!0)})}var iO=/^[^\s:\r\n]+\.(?:c|cc|cpp|cxx|cu|cuh|h|hpp|hh|s|asm|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift):\d+(?::\d+)?:\s*\S/i,oO=/^(?!(?:[a-z][a-z0-9+.-]*:\/\/))(?:(?:(?:\/|\.{1,2}\/|[^\s:\r\n]+\/)[^\s:\r\n]*\.(?:md|markdown|txt|rst|adoc|json|jsonl|ya?ml|toml|ini|cfg|cmake|ll|td))|(?:Makefile|GNUmakefile|CMakeLists\.txt)):\d+(?::\d+)?:\s*\S/i;function Db(e){let t=ce(e);if(t.length===0)return!1;let n=Qd(t);return Fb(n)||!$b(n)?!1:n.length>=2||uO(t)&&n.length>=1}function aO(e){return Db(e)}function cO(e){let t=ce(e);if(!ge(t))return!1;let n=Qd(t);return n.length>=3||lO(n)}function lO(e){if(Fb(e)||!$b(e))return!1;let t=new Map;for(let n of e)t.set(n.kind,(t.get(n.kind)??0)+1);return[...t.values()].some(n=>n>=2)}function Fb(e){return e.some(t=>t.kind==="kernel_log"&&Zi(t.line))}function $b(e){let t=e.filter(n=>n.requiresMonotone===!0);return t.every((n,s)=>s===0||(n.lineNumber??0)>(t[s-1]?.lineNumber??0))}function uO(e){return/(?:^|[\r\n])\s*total output lines:\s*\d+\b/i.test(e)}function dO(e){let t=Gd(e),n=new Set(t.map(i=>i.line)),s=t[0]?.index??-1;return s>0&&pO(e.slice(0,s))?!0:t.some((i,o)=>mO({body:i.body,currentLine:i.line,nextLine:t[o+1]?.line,arrowLines:n}))}function pO(e){let t=/(?:^|[\r\n]|\s)\d{1,6}(?:[ \t]+|:\s+)([#*/@|-]|\S+)/g;for(let n of e.matchAll(t))if(wd.test(n[1]??""))return!0;return!1}function mO(e){let t=/(?:^|[\r\n]|\s)(\d{1,6})(?:[ \t]+|:\s+)([#*/@|-]|\S+)/g;for(let n of e.body.matchAll(t)){let s=Number.parseInt(n[1]??"",10),i=n[2]??"";if(Number.isSafeInteger(s)&&!(e.arrowLines.has(s)&&!wd.test(i))&&(s>e.currentLine&&e.nextLine!==void 0&&s<e.nextLine||wd.test(i)))return!0}return!1}var wd=/^(?:[#*/@|-])/;function ep(e){let t=ce(e);return hO(t)||SO(t)||wR(t)}function fO(e){let t=ce(e);return t.length===0||ep(t)?!1:gO(t)}function gO(e){if(!Jd(e)||!ge(e)||dO(e))return!1;let t=Gd(e).map(({line:n,body:s})=>({line:n,body:s}));return t.length>=3&&Yd(t)&&yO(t)&&t.filter(n=>n.body.trim().length>0).length>=2}function hO(e){return/^(?:read\s+failed\b|failed to (?:read|open)\b|could not (?:read|open)\b|unable to (?:read|open)\b)/i.test(e.trim().replace(/^(?:read|tool)\s+failure\s+/i,"").replace(/^#{1,6}\s+/,""))}function yO(e){return e.every((t,n)=>n===0||t.line===e[n-1].line+1)}function SO(e){return bO(e,/\b(?:read failed|failed to (?:read|open)|could not (?:read|open)|unable to (?:read|open))\b/gi)}function bO(e,t){for(let n of e.matchAll(t))if(!/[="'`]\s*$/.test(e.slice(Math.max(0,n.index-3),n.index)))return!0;return!1}function _O(e){return Xe(e)||fO(e)}function kO(e){return Xe(e)||wO(e)||It(e)||Xd(e)||HC(e)||Db(e)||xO(e)||RO(e)}function tp(e){return Xe(e)||It(e)||Xd(e)||Nb(e)||ZC(e)||Mb(e)}function It(e){let t=ce(e);return t.length===0?!1:[/\b(?:make|cmake|ninja|pytest|unittest|dkms)[^\r\n]{0,80}\.log\b/i,/\btotal output lines:\s*\d+\b/i,/(?:^|[\r\n])\s*\[\s*\d+%]\s+(?:building|linking|generating)\b/i,/(?:^|[\r\n])\s*checking for a\b/i,/(?:^|[\r\n])\s*building module\(s\)(?=\s|$)/i,/(?:^|[\r\n])\s*building [a-z0-9_ -]*object\b/i,/(?:^|[\r\n])\s*linking [a-z0-9_ -]*target\b/i,/(?:^|[\r\n])\s*[^\r\n:]+:\d+:\s*(?:userwarning|warning):\s+\S/i].filter(s=>s.test(t)).length>=2||vO(t)>=2||EO(t)||AO(t)||TO(t)}function vO(e){return[...e.matchAll(/(?:^|[\r\n])\s*(?:checking for a\b|building module\(s\)(?=\s|$)|building [a-z0-9_ -]*object\b|linking [a-z0-9_ -]*target\b|\[\s*\d+%]\s+(?:building|linking|generating)\b)/gi)].length}function EO(e){return/\b(?:make|cmake|ninja|pytest|unittest|dkms)[^\r\n]{0,80}\.log\b/i.test(e)&&/\bbuilding module\(s\)(?=\s|$)|\b(?:building|linking) [a-z0-9_ -]*(?:object|target)\b/i.test(e)&&/\b(?:command:\s*['"]?(?:make|cmake|ninja)\b|kernelver=|checking for a [a-z0-9 -]+\.{3})/i.test(e)}function AO(e){return Zi(e)?!1:IO(e)>=2||/\btotal output lines:\s*\d+\b/i.test(e)&&Ub(e)>=2}function wO(e){return!Zi(e)&&Ub(e)>=2}function IO(e){return[...e.matchAll(/(?:^|[\r\n]|\s)\[\s*\d+(?:\.\d+)?]\s+\S/g)].length}function Ub(e){return[...e.matchAll(/(?:^|[\r\n]|\s)\d+:\s*\[\s*\d+(?:\.\d+)?]\s+\S/g)].length}function TO(e){return/\btotal output lines:\s*\d+\b/i.test(e)&&/\bCMake (?:Deprecation )?Warning at (?:[^\s:]+\/)*CMakeLists\.txt:\d+\s+\(/i.test(e)&&!/\bCMake Error at\b/i.test(e)}function xO(e){return/(?:^|[\r\n])\s*CMake (?:Deprecation )?Warning at (?:[^\s:]+\/)*(?:CMakeLists\.txt|[^\s:]+\.cmake):\d+\s+\(/i.test(e)&&!/\bCMake Error at\b/i.test(e)}function RO(e){return/(?:^|[\r\n])\s*make\[\d+]:\s+Entering directory\b/i.test(e)&&/(?:^|[\r\n])\s*(?:warning:\s+\S[^\r\n]*|(?:CC|LD)\s+\[M\])/i.test(e)&&!/(?:^|[\r\n])\s*make(?:\[\d+\])?:\s+\*\*\*/i.test(e)}function CO(e){let t=OO(e);return t!==null&&jb(t)}function jb(e){return!LO(e)&&Xe(e)}function OO(e){return/^\s*={2,}\s*Testing\b[^=\r\n]{1,180}={2,}\s*([\s\S]+)$/i.exec(e)?.[1]?.trim()??null}function LO(e){return/^(?:FAIL\b|ERROR\b|FAILED\b|AssertionError\b|Traceback\b|[1-9]\d*\s+fail(?:ed|ures?)\b|(?:failures|errors)\s*[:=]\s*[1-9]\d*\b|exited\s+with\s+(?:code|status)\s+[1-9]\d*\b)/i.test(e)}function zb(e){let t=[...e.matchAll(/={2,}\s*Testing\b[^=\r\n]{1,180}={2,}/gi)];if(t.length===0||t[0]?.index!==0)return null;let n=[];for(let s=0;s<t.length;s+=1){let i=t[s],o=e.slice((i.index??0)+i[0].length,t[s+1]?.index).trim();if(o.length===0)return null;n.push(o)}return n}function NO(e){let t=e.trim();if(t.length===0||Vb(t))return null;let n=zb(t);if(n===null)return null;let s=!1;for(let i of n){let o=Bb(i);if(o===null||o==="failure")return null;s||=o==="concrete"}return s?"concrete":"success"}function qb(e){let t=e.trim();if(t.length===0)return!1;let n=zb(t);return n!==null&&n.some(s=>Bb(s)==="failure")}function Bb(e){return PO(e)?"failure":MO(e)?null:DO(e)?"failure":FO(e)?"concrete":$O(e)?"success":null}function PO(e){return/^(?:\s|[\r\n])*(?:Traceback\s+\(most recent call last\)|(?:FAIL|ERROR|FAILED)\b|[a-z0-9_.-]+\s+\.\.\.\s+(?:FAIL|ERROR)\b|AssertionError\b|[1-9]\d*\s+fail(?:ed|ures?)\b|(?:failures|errors)\s*[:=]\s*[1-9]\d*\b|exited\s+with\s+(?:code|status)\s+[1-9]\d*\b)/i.test(e)}function MO(e){return jb(e)||Vb(e)||/\b(?:confirm|ensure|verify|validate|make\s+sure|we\s+expect|the\s+output\s+should|review\s+requirement|requirement:|please|check\s+that|reviewer\s+should|should\s+(?:check|confirm|ensure|verify)|must\s+(?:check|ensure|confirm|verify|appear)|for\s+reference|as\s+a\s+reference|refer\s+to|reference:)\b|^\s*(?:check|validate|expect)\b/i.test(e)}function DO(e){return/(?:\bTraceback\s+\(most recent call last\)|\b(?:FAIL|ERROR):|(?:^|\s)(?:FAIL|ERROR|FAILED)\b|\b[a-z0-9_.-]+\s+\.\.\.\s+(?:FAIL|ERROR)\b|\bAssertionError\b|\b[1-9]\d*\s+fail(?:ed|ures?)\b|\b(?:failures|errors)\s*[:=]\s*[1-9]\d*\b|\bexited\s+with\s+(?:code|status)\s+[1-9]\d*\b)/i.test(e)}function FO(e){return/\b[a-z_][a-z0-9_.]*\([^)]{0,200}\)\s*=\s*(?:true|false|[-+]?\d+(?:\.\d+)?|["'][^"']{0,80}["']|\S{1,80})\b/i.test(e)||/\bProblems?\s+found:\s+(?!No\s+problems?\s+found\b)\S/i.test(e)}function $O(e){return/\b(?:All\s+[a-z0-9_. _-]{1,160}\s+tests?\s+passed!?|Problems?\s+found:\s+No\s+problems?\s+found|Test\s+PASSED)\b/i.test(e)}function Vb(e){return/\b(?:expected\s+output|should\s+(?:say|report|end|be)|after\s+the\s+patch|before\s+(?:you\s+continue|submission)|then\s+submit|must\s+appear|final\s+response)\b/i.test(e)}function Kb(e){let t=e.trim();if(Hb(t))return null;let n=NO(t);return n!==null?{consequenceBaseline:n==="success"?"low":"high"}:UO(t)||jO(t)||zO(t)||qO(t)?{consequenceBaseline:"low"}:RR(t)?{consequenceBaseline:"medium"}:null}function Hb(e){return yb(e)||[/\bFAILED\s+\([^)]*\b(?:failures|errors)=[1-9]\d*/i,/(?:^|[\r\n])\s*(?:FAIL|ERROR):\s+\S/i,/\b(?:failures|errors)=[1-9]\d*\b/i,/\b[1-9]\d*\s+failed\b/i,/\b[1-9]\d*\s+errors?\b/i,/(?:^|[\r\n])\s*=+\s*(?:FAILURES|ERRORS)\s*=+/i].some(t=>t.test(e))}function UO(e){return/^\s*===\s*Testing\b[^=\r\n]{1,160}===\s*All\s+[a-z0-9_. _-]{1,160}\s+tests?\s+passed!?\s*$/i.test(e)}function jO(e){return/(?:^|[\r\n]|\s)Ran\s+\d+\s+tests?\s+in\s+[\d.]+s\s+OK\s*$/i.test(e)}function zO(e){return/(?:^|[\r\n=])\s*=*\s*\d+\s+passed(?:,?\s+\d+\s+(?:skipped|warnings?))*\s+in\s+[\d.]+s\s*=*\s*$/i.test(e)}function qO(e){return/^\s*running\s+(?:command|[a-z0-9_.-]+)[^\r\n]{0,160}\s+output:\s+[\s\S]{1,1200}\b(?:test passed(?::\s+[^\r\n.]+)?|tests passed|all checks passed|all [a-z0-9_. -]{1,160} tests passed|no problems found)[.!]?\s*$/i.test(e)}function Wb(e){let t=z(e).replace(/[.]+$/g,"").replace(/\s+/g," ");return VO.some(n=>n.test(t))}var BO=String.raw`(?:(?:no output|without output|no stdout\s+no stderr|no stderr\s+no stdout|empty stdout\s+empty stderr|stdout empty\s+stderr empty)\s+)`,bS=String.raw`${BO}(?:(?:command|process|tool|subprocess)\s+)?`,VO=[new RegExp(String.raw`^${bS}(?:exit code|exit_code|exit-code|exited with code|exit status|exited with status|return code|return_code|returned code)\s*(?:is|was)?\s*-?[1-9]\d*$`),new RegExp(String.raw`^${bS}(?:failed\s+with\s+)?(?:a\s+)?(?:non-zero|nonzero|non zero)\s+exit$`)];function np(e){return WO(e)||Vr(e,"subprocess failed",Kr)?!0:nR.some(t=>Vr(e,t,ZO(t)))}function KO(e){return Gb(e,t=>t===0)}function HO(e){let t=GO(YO(e));return mb.some(n=>Vr(t,n,QO))}function WO(e){return Gb(e,t=>t!==0)||Vr(e,"non-zero exit",Kr)||Vr(e,"nonzero exit",Kr)}function ZO(e){switch(e){case"exception":return eL;case"traceback":return tL;default:return Kr(e)}}var Zb=String.raw`\b(?:exit code|exit_code|exit-code|exited with code|exit status|exited with status|return code|return_code|returned code)\s*(?:is|was)?\s*(-?\d+)\b`;function Gb(e,t){for(let n of e.matchAll(new RegExp(Zb,"g"))){let s=Number.parseInt(n[1]??"",10);if(Number.isFinite(s)&&t(s))return!0}return!1}function GO(e){return e.replace(new RegExp(Zb,"g")," ")}function YO(e){return e.replace(/^(?:observation|bash failure|bash observation|tool failure|tool observation)\s+/,"")}function Vr(e,t,n){let s=typeof n=="function"?n(t):n;for(let i of JO(e,t))if(!XO(e,i.start,i.end,s))return!0;return!1}function JO(e,t){let n=z(t);if(!n)return[];let s=new RegExp(`(^|[^a-z0-9_])(${rp(n)})(?=$|[^a-z0-9_])`,"g"),i=[];for(let o of e.matchAll(s)){let a=(o.index??0)+(o[1]?.length??0);i.push({start:a,end:a+n.length})}return i}function XO(e,t,n,s){for(let i of s)for(let o of e.matchAll(new RegExp(i.source,"g"))){let a=o.index??0,c=a+o[0].length;if(t>=a&&n<=c)return!0}return!1}function Kr(e){let t=rp(z(e));return[new RegExp(String.raw`\bno ${t}\b`),new RegExp(String.raw`\bwithout ${t}\b`)]}function QO(e){let t=rp(z(e));return[...Kr(e),new RegExp(String.raw`\bnot ${t}\b`),new RegExp(String.raw`\bdidn t ${t}\b`),new RegExp(String.raw`\bdid not ${t}\b`)]}var eL=[/\bno exceptions?(?: occurred| raised| reported| found| seen| present)?\b/,/\bwithout (?:an? )?exceptions?\b/,/\bexpected exceptions?(?: was| were)? (?:caught|handled|raised)\b/,/\b(?:caught|handled) (?:the )?expected exceptions?\b/,/\bexceptions?(?: was| were)? expected\b/],tL=[/\bno tracebacks?(?: occurred| raised| reported| found| seen| present)?\b/,/\bwithout (?:a )?tracebacks?\b/,/\bexpected tracebacks?(?: was| were)? (?:caught|handled|raised|produced)\b/,/\btracebacks?(?: was| were)? expected\b/];function rp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function sp(e){let t=Wd(e);if(t!==null){let n=Yb(t.section);return n===null||DC(t.preamble)||Zd(t.preamble)&&!Br(n)?null:n}return!e.includes(`
|
|
8
|
+
`)&&!wt(e)&&Yi(e)?e:Jb(e)}function Yb(e){return Jb(e)}function Jb(e){let t=e.trim();if(t.length===0)return null;let n=t.split(/\r?\n/);for(let s=0;s<n.length;s+=1){let o=(n[s]??"").trim();if(Rb(o)){PC(o)&&(s=FC(n,s));continue}if(o.length>0&&!wt(o)&&Yi(o))return o;let a=nL(n,s);if(a!==null)return a}return null}function nL(e,t){let n=e[t]?.trim()??"";if(!/^={2,}\s*[^=\n][^\n]*\s*={2,}$/.test(n))return null;let s=e.slice(t+1).find(o=>o.trim().length>0)?.trim();if(s===void 0||Rb(s))return null;let i=`${n}
|
|
9
|
+
${s}`;return Yi(i)?i:null}function Yi(e){return np(z(e))||Br(e)||Hb(e)||qb(e)||xb(e)||hb(e)}function ip(e){let t=sp(e);return t!==null&&Yi(t)}function Tt(e){let n=/^\s*OBSERVATION:\s*([\s\S]+)$/i.exec(e)?.[1]?.trim()??"";return n.length>0&&n!=="{}"?n:null}function Xb(e){return/^\s*(?:error|syntaxerror|typeerror|runtimeerror|valueerror|assertionerror):\s+\S/i.test(e)}function Qb(e,t){return cL(t)||rL(t)||Zx.test(e)||Yr.test(e)&&/\bmatch(?:es)?\b/.test(e)}function rL(e){let t=sL(e),n=t.filter(i=>i.path===void 0);return n.length>=3&&_S(n)&&oL(n)?!0:[...iL(t.filter(i=>i.path!==void 0)).values()].some(i=>i.length>=2&&_S(i))}function sL(e){return[...e.matchAll(aL)].map(t=>({...t.groups?.path?{path:t.groups.path}:{},line:Number.parseInt(t.groups?.line??"",10),separator:t.groups?.separator??"",body:t.groups?.body?.trim()??""}))}function _S(e){return e.every((t,n)=>!Number.isSafeInteger(t.line)||t.body.length===0?!1:n===0||t.line>e[n-1].line)}function iL(e){let t=new Map;for(let n of e)n.path!==void 0&&t.set(n.path,[...t.get(n.path)??[],n]);return t}function oL(e){return e.some(t=>t.separator==="--"||t.separator.includes("|"))}var aL=/(?:^|\s)(?:(?<path>\S+\.[a-z0-9]+)-)?(?<line>\d{1,6})(?<separator>--|[-:]\||-)\s+(?<body>\S[\s\S]*?)(?=(?:\s(?:\S+\.[a-z0-9]+-)?\d{1,6}(?:--|[-:]\||-)\s+\S)|$)/gi;function cL(e){return/^\s*web search results for\s+(?:"[^"]+"|'[^']+'|`[^`]+`|[^:\r\n]{1,200})\s*:\s+\S/i.test(e)}function lL(e){return/^\s*(?:source\s+)?fixture\s*:\s*```[\s\S]+```\s*$/i.test(e)||/^\s*(?:const|let|var)\s+[a-z_$][\w$]*\s*=\s*`[\s\S]+`\s*;?\s*$/i.test(e)||/^\s*[a-z_][\w]*\s*=\s*(?:'''|""")[\s\S]+(?:'''|""")\s*$/i.test(e)}function uL(e){let t=z(e);if(t.length<80||t.length>1800||dL(t))return!1;let n=kS(t,[/\bplease\b/,/\b(?:follow|complete|perform)\s+(?:the\s+)?(?:steps?|checks?)\b/,/\bsteps?\s+below\b/,/\bif\s+you\s+(?:made|make|changed|change|ran|run)\b/,/\b(?:run|rerun)\s+the\s+(?:reproduction|reproducer|verification)\s+(?:script|command)\b/,/\breview\s+(?:your\s+)?changes\b/,/\b(?:verify|confirm|ensure)\s+(?:the\s+)?(?:issue|fix|changes?|behavior)\b/]),s=kS(t,[/\breproduction\s+(?:script|command)\b/,/\breproducer\b/,/\bverification\s+(?:script|command)\b/]);return n>=2&&s>=1}function kS(e,t){return t.reduce((n,s)=>n+(s.test(e)?1:0),0)}function dL(e){return[/\btraceback\b/,/\b(?:syntaxerror|typeerror|assertionerror|exceptiongroup|exception)\b/,/\b(?:segmentation fault|segfault|core dumped|crash(?:ed|es|ing)?)\b/,/\bpermission\s+denied\b/,/\b(?:timed?\s+out|timeout)\b/,/\b(?:fail(?:ed|ing|s|ure)?|errors?|errored)\b/,/\b(?:unresolved|not\s+resolved|still\s+(?:broken|failing|does\s+not\s+work|doesn\s+t\s+work))\b/,/\b(?:does\s+not|did\s+not|doesn\s+t|didn\s+t)\s+pass\b/,/\bexit\s+code\s+[1-9]\d*\b/,/\b(?:exited|returned)\s+(?:with\s+)?(?:code\s+)?[1-9]\d*\b/,/\b(?:returned|returning)\s+non[-\s]?zero\b/,/(?:^|\s)(?:fail|error):\s+\S/,/\b(?:failures|errors)=[1-9]\d*\b/,/\b[1-9]\d*\s+(?:failed|errors?)\b/,/\bno\s+replacement\s+was\s+performed\b/,/\bold_str\b/,/\bnew_string\b/].some(t=>t.test(e))}function pL(e){return Ae(e,pb)&&Yr.test(e)}function Ji(e){return mL.some(t=>t.test(e))}var mL=[/^(?:expected|example|sample|reference|desired|golden|baseline|canonical|fixture|documentation)\b[^\r\n:]{0,80}\b(?:output|results?|report|diagnostics?|errors?|failures?)\b[^\r\n:]{0,80}:/i,/^(?:expected|example|sample)\b[^\r\n:]{0,80}:\s*(?:actual|received)\s+(?:output|results?|report|diagnostics?|errors?|failures?)\b/i,/^(?:for reference|for example|here is an example|in the docs|as shown in the docs|according to\b[^\r\n:]{0,80}|the\b[^\r\n:]{0,80}documentation\b[^\r\n:]{0,80}|the report|source text|this example shows)\b/i,/^(?:output format|expected error|for example,|(?:test\b[^\r\n:]{0,80}|probe|error occurred)\s+failed as expected|error occurred as expected|error reading\b[^\r\n:]{0,80}\(expected\)|the\b[^\r\n:]{0,80}\bdocs?\b[^\r\n:]{0,80}(?:show|shows|display|says)|according to\b[^\r\n:]{0,80}\bdocs?\b)/i];function e_(e,t){let n=fL(e);return[...e.matchAll(t)].filter(s=>!gL(s.index,s.index+s[0].length,n)).length}function Sn(e,t){return e_(e,t)>0}function fL(e){let t=[],n=null,s=-1;for(let i=0;i<e.length;i+=1){let o=e[i],a=n===null?hL(e,i):null;a!==null?(n=a,s=i):n!==null&&o==="\\"?i+=1:n!==null&&o===n&&!SL(e,i,n)&&(t.push([s,i+1]),n=null,s=-1)}return n!==null&&t.push([s,e.length]),t}function gL(e,t,n){return n.some(([s,i])=>e<i&&t>s)}function hL(e,t){let n=e[t];return n==='"'||n==="`"||n==="'"&&!yL(e,t)?n:null}function yL(e,t){if(!jr(e[t-1]))return!1;let n=e[t+1];return jr(n)?!0:n!==void 0&&/\s/.test(n)?/s/i.test(e[t-1]??"")&&jr(bL(e,t+1)):!1}function SL(e,t,n){return n==="'"&&jr(e[t-1])&&jr(e[t+1])}function jr(e){return e!==void 0&&/[A-Za-z0-9_]/.test(e)}function bL(e,t){for(let n=t;n<e.length;n+=1)if(!/\s/.test(e[n]??""))return e[n]}function _L(e){return/^\s*(?:(?:const|let|var)\s+)?[a-z_$][\w$]*\s*=\s*["'`][\s\S]*["'`]\s*;?\s*$/i.test(e)||/^\s*(?:print|console\.(?:log|warn|error)|logger\.[a-z_$][\w$]*|process\.stdout\.write)\s*\(\s*["'`][\s\S]*["'`]\s*\)\s*;?\s*$/i.test(e)}function kL(e){let t=e.trim();if(t.length===0||EL(t)||Ji(t)||_L(t)||AL(t))return!1;let n=vL(t);return n>=2||n>=1&&/\b(?:running|output|lint|linter|problems?\s+found)\b/i.test(t)}function vL(e){return e_(e,IL)}function EL(e){return/\b(?:please|should|must|expected output|final response|review your changes|follow the steps)\b/i.test(e)}function AL(e){return t_(e)&&!/\bTest PASSED\b[\s\S]{0,240}\b(?:error|reported)\b/i.test(e)}function wL(e){return Sn(e,/(?:^|[\r\n]|\s)warning\b/gi)}function t_(e){return Sn(e,/(?:^|[\r\n]|\s)(?:error|fatal)\b/gi)||Sn(e,/\b(?:\[[^\]]*error[^\]]*]|level:\s*error)\b/gi)}var IL=/(?:^|[\r\n]|\s)(?:(?:\.{0,2}\/|\/)?[a-z0-9_./-]+\.(?:ya?ml|json|toml|ini|cfg|conf|md|txt|py|ts|tsx|js|jsx|rb|go|rs|java|kt|swift)\s+)?(?:line\s+)?\d{1,6}(?::\d{1,4}|,\s*column\s+\d{1,4}):?\s+(?:warning\s+|error\s+|found\s+|missing\s+|too\s+|forbidden\s+|undefined\s+|duplicate\s+|trailing\s+|wrong\s+)\S/gi;function vS(e){let t=ce(e);return t.length===0?!1:TL(t)}function TL(e){let t=e.replace(/\s+/g," "),n=/^diff --git a\/(\S+) b\/(\S+) index [a-f0-9]{6,}\.\.[a-f0-9]{6,}(?: \d+)? --- a\/(\S+) \+\+\+ b\/(\S+) @@ -\d+(?:,\d+)? \+\d+(?:,\d+)? @@(?: |$)/i.exec(t);return n!==null&&n[1]===n[3]&&n[2]===n[4]&&n[1]===n[2]}function n_(e){let t=e.trim();return t.length>0&&ge(t)&&!Ji(t)&&!Xn(t)&&!CL(t)&&(xL(t)||RL(t))}function xL(e){return Sn(e,OL)}function RL(e){return Sn(e,LL)||Sn(e,NL)}function CL(e){return Sn(e,PL)}var OL=/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\)?[^\s:\r\n]+\.[a-zA-Z0-9]{1,8}:\d+(?::\d+)?:\s*(?:[A-Za-z_][A-Za-z0-9_]*Warning|warning):\s+\S/gi,LL=/(?:^|[\r\n])\s*(?:clang|gcc|g\+\+|cc|c\+\+|ld|nvcc|hipcc)\s*:\s*warning:\s+\S/gi,NL=/(?:^|[\r\n])\s*CMake (?:Deprecation )?Warning at \S+:\d+\s+\(/gi,PL=/(?:^|[\r\n])\s*(?:(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\)?[^\s:\r\n]+\.[a-zA-Z0-9]{1,8}:\d+(?::\d+)?:\s*)?(?:error|fatal):\s+\S/gi;function Xi(e,t={}){let n=ce(e);if(n.length===0||ML(n)||t.rejectCommandTextWrappers===!0&&DL(n))return null;let s=Kb(n);if(s!==null&&!Xn(n))return{shape:"test",consequenceBaseline:s.consequenceBaseline,source:!1};if(jL(n)||t.allowNonWarningLinterFindings===!0&&r_(n))return{shape:"linter",consequenceBaseline:"high",source:!1};if(n_(n))return{shape:"readback",consequenceBaseline:"medium",source:!1};if(/^\s*diff --git\b/i.test(n)&&!vS(n))return null;if(vS(n))return{shape:"diff",consequenceBaseline:"high",source:!0};let i=t.allowReadOwnedFlattenedFilePayloads===!0?qL(n):zL(n);return Xe(n)&&(t.allowReadOwnedFlattenedFilePayloads!==!0||GL(n))||i?{shape:"source",consequenceBaseline:"high",source:!0}:tp(n)?{shape:"readback",consequenceBaseline:It(n)?"medium":"high",source:!1}:VL(n)||t.allowReadOwnedFlattenedFilePayloads===!0&&BL(n)?{shape:"document",consequenceBaseline:"medium",source:!1}:null}function ML(e){return[/^\s*no replacement was performed\b/i,/^\s*old_str\b[\s\S]{0,240}\bwas not found\b/i,/^\s*could not find\b[\s\S]{0,240}\b(?:exact text|old_str|replacement)\b/i,/^\s*failed to apply\b/i,/^\s*file has not been read\b/i,/^\s*read it first before writing\b/i,/^\s*(?:failed|unable|could not|couldn't) to read\b/i,/^\s*(?:failed|unable|could not|couldn't) to open\b/i].some(t=>t.test(e))}function DL(e){return Ji(e)||UL(e)||FL(e)||$L(e)}function FL(e){return e.split(/\r?\n/).filter(n=>n.trim().length>0).length<=3&&/^\s*(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=\s*["'`][\s\S]*["'`]\s*;?\s*(?:\r?\n\s*return\b[\s\S]*)?$/i.test(e)}function $L(e){return/^\s*(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=\s*["'`][\s\S]*\bdiff --git\b/i.test(e)}function UL(e){return/^\s*---\s+expected\b[\s\S]*^\s*\+\+\+\s+actual\b/im.test(e)}function jL(e){return r_(e)&&wL(e)}function r_(e){return kL(e)&&!t_(e)}function zL(e){if(Qi(e)||!ge(e)||op(e))return!1;let t=G(e,YL),n=G(e,XL),s=G(e,s_),i=G(e,QL),o=G(e,i_),a=G(e,eN),c=G(e,o_),l=G(e,a_),d=t+n*2+s+i+o+a+c+Math.min(l,3);return n>=1&&d>=4||t>=3&&d>=5||a>=3&&(o>=1||n>=1)}function qL(e){if(Qi(e)||!ge(e)||op(e))return!1;let t=G(e,JL),n=G(e,s_),s=G(e,i_),i=G(e,o_),o=G(e,a_),a=t*2+s+i,c=n+s+i+Math.min(o,3);return ZL(e)&&t>=2&&a>=4||o>=3&&(n>=1||s>=1||i>=1)&&c>=6}function BL(e){if(Qi(e)||!ge(e)||e.length<160||op(e))return!1;let t=G(e,tN),n=G(e,nN),s=G(e,rN),i=G(e,sN);return/^\s{0,3}#{1,6}\s+\S/.test(e)&&t>=2&&(n>=2||s>=2||n>=1&&i>=2)}function VL(e){if(!ge(e)||Xn(e))return!1;let t=KL(e);if(t.length<3||!WL(t))return!1;let n=t.filter(c=>/^\|[\s\S]*\|/.test(c.body.trim())).length,s=t.filter(c=>Kd(c.body.trim())).length,i=t.filter(c=>/^\d+(?:\.\d+){1,}\.?\s+\S/.test(c.body.trim())).length,o=t.filter(c=>/^\d+\s+of\s+\d+\s*$/.test(c.body.trim())).length,a=t.filter(c=>/\b[A-Z][A-Z0-9_]{2,}\b/.test(c.body)).length;return n>=2||s>=2||i>=1&&(o>=1||a>=1)||i>=2&&a>=1}function KL(e){let t=Ob(e).filter(n=>n.body.trim().length>0);return t.length>=2?t:HL(e)}function HL(e){let t=[],n=/(?:^|\s)(\d{1,6})[:|-]\s*([\s\S]*?)(?=\s+\d{1,6}[:|-]\s*\S|$)/g,s;for(;(s=n.exec(e))!==null;){let i=Number.parseInt(s[1]??"",10),o=(s[2]??"").trim();Number.isSafeInteger(i)&&o.length>0&&t.push({line:i,body:o.slice(0,200)})}return t}function WL(e){return e.every((t,n)=>n===0||t.line>e[n-1].line)}function G(e,t){return[...e.matchAll(t)].length}function Qi(e){return/[\r\n]/.test(e)}function op(e){return/^\s*(?:please|should|must|expected output|final response|review your changes|follow the steps)\b/i.test(e)}function ZL(e){return/^\s*(?:\/\*|\/\/|#!\/|import\s+(?:type\s+)?(?:\{|\*|[A-Za-z_$]))/.test(e)}function GL(e){return Qi(e)||/(?:^|\s)\d{1,6}\u2192\S/.test(e)}var YL=/(?:^|\s)(?:from\s+(?!report\b|notes\b|the\b)[a-zA-Z_][a-zA-Z0-9_.]*\s+import\s+(?!settings\b|values\b|packages\b|the\b)(?:[a-zA-Z_*][a-zA-Z0-9_.*]*|\{[^}]{1,160}\})|import\s+(?:(?:(?:type\s+)?\{[^}]{1,160}\}|(?:type\s+)?[a-zA-Z_$][a-zA-Z0-9_$]*|\*\s+as\s+[a-zA-Z_$][a-zA-Z0-9_$]*)\s+from\s+(?:"[^"]+"|'[^']+'|[a-zA-Z_][a-zA-Z0-9_.:/-]*)|(?!the\b|packages\b|settings\b|values\b|class\b)[a-zA-Z_][a-zA-Z0-9_.]*))\b/g,JL=/(?:^|\s)import\s+(?:(?:type\s+)?\{[^}]{1,160}\}|(?:type\s+)?[a-zA-Z_$][a-zA-Z0-9_$]*|\*\s+as\s+[a-zA-Z_$][a-zA-Z0-9_$]*)\s+from\s+(?:"[^"]+"|'[^']+')/g,XL=/(?:^|\s)(?:@[a-zA-Z_][a-zA-Z0-9_.]*(?:\([^)]*\))?\s+)?(?:async\s+)?def\s+[a-zA-Z_][a-zA-Z0-9_]*\s*\([^)]*\)\s*:|(?:^|\s)class\s+[a-zA-Z_][a-zA-Z0-9_]*(?:\([^)]*\))?\s*:|(?:^|\s)(?:export\s+)?(?:async\s+)?function\s+[a-zA-Z_$][a-zA-Z0-9_$]*\s*\(|(?:^|\s)(?:export\s+)?(?:const|let|var)\s+[a-zA-Z_$][a-zA-Z0-9_$]*\s*=|(?:^|\s)#include\s*(?:<[^>]+>|"[^"]+")/g,s_=/(?:^|\s)(?:if|for|while|with)\s*\(|(?:^|\s)(?:yield|return)\s+[a-zA-Z_({][^\s;)]*|(?:^|\s)isinstance\s*\(/g,QL=/(?:^|\s)[A-Za-z_][A-Za-z0-9_]*\s*=\s*(?:["'({[]|[A-Za-z_][A-Za-z0-9_.]*\()/g,i_=/(?:^|\s)[A-Za-z_][A-Za-z0-9_]*(?:\.[A-Za-z_][A-Za-z0-9_]*){2,}|\b[A-Za-z_][A-Za-z0-9_]*::[A-Za-z_][A-Za-z0-9_]*|\b[A-Za-z_][A-Za-z0-9_]*->[A-Za-z_][A-Za-z0-9_]*/g,eN=/(?:^|\s)(?:std::[A-Za-z_][A-Za-z0-9_]*|[A-Za-z_][A-Za-z0-9_]*->|[A-Za-z_][A-Za-z0-9_]*\.[A-Za-z_][A-Za-z0-9_]*|return\s+[A-Z_][A-Z0-9_]*;|(?:void|int|char|bool|auto|size_t)\s+[A-Za-z_][A-Za-z0-9_]*\s*\()/g,o_=/(?:^|\s)(?:typeof\s+[A-Za-z_$][A-Za-z0-9_$]*|}\s+as\s+[A-Z][A-Za-z0-9_]*(?:<[^>]+>)?|as\s+const\b|\[[^\]]{1,120}\]\.map\s*\()/g,a_=/(?:^|\s)[A-Za-z_$][A-Za-z0-9_$]*:\s*(?:null|true|false|["'[{(]|[A-Za-z_$][A-Za-z0-9_$]*(?:[,.}]|\s*=>))/g,tN=/(?:^|\s)#{1,6}\s+\S/g,nN=/(?:^|\s)(?:[-*]\s+\S|\d+\.\s+\S)/g,rN=/`[^`]{1,120}`/g,sN=/\b(?:api|cli|sdk|typescript|javascript|package|framework|rendering|configuration|options|interface|component|terminal|runtime|schema|server|client)\b/gi,iN=/^the\s+user\s+(?:doesn['’]?t|does\s+not)\s+want\s+to\s+(proceed\s+with\s+this\s+tool\s+use|take\s+this\s+action(?:\s+right\s+now)?)\b/i,oN=/^(?:the\s+)?tool\s+use\s+(?:was\s+)?rejected\b/i,aN=/^stop\b[\s\S]*\bwait\b[\s\S]*\buser\b[\s\S]*\bproceed\b\s*[.!?]?$/i;function Xr(e){return/\btool\s+use\s+was\s+rejected\b/i.test(e)||/\buser\s+doesn['’]?t\s+want\s+to\s+proceed\b/i.test(e)||/\buser\s+doesn['’]?t\s+want\s+to\s+take\s+this\s+action\s+right\s+now\b/i.test(e)||/\bstop\s+what\s+you\s+are\s+doing\s+and\s+wait\b/i.test(e)}function cN(e){let t=e.trim().replace(/^OBSERVATION:\s*/i,"").trim(),n=iN.exec(t);if(!n)return!1;let s=ES(t.slice(n[0].length));if(/\btool\s+use\b/i.test(n[1]??"")){let i=lN(s);if(i===null)return!1;s=ES(i)}return aN.test(s)}function lN(e){let t=oN.exec(e);return t?uN(e.slice(t[0].length)):null}function ES(e){return e.replace(/^\s*[.!?]\s*/u,"")}function uN(e){let t=/^\s*\(([^()]*)\)\s*/u.exec(e);if(!t)return e;let n=t[1]??"";return n.length>240||!/(?:\beg\b|\be\.g\.|\bfor example\b|\bif\b)/i.test(n)?e:e.slice(t[0].length)}function Id(e){let t=Tt(e);return t===null||Xr(t)?null:c_(t)}function AS(e){let t=Tt(e);return t!==null&&!Xr(t)&&c_(t)===null&&ip(t)}function c_(e){let t=z(e),n=Kb(e);if(n!==null)return ip(e)?null:{shape:n.consequenceBaseline==="low"?"successful_test":"concrete_test_result",consequenceBaseline:n.consequenceBaseline};if(hC(e))return{shape:"abbreviated_file_view",consequenceBaseline:"low"};if(Ae(t,qd)||lL(e))return{shape:"existing_observation",consequenceBaseline:"high"};if(qb(e)||xb(e)||Xb(e))return null;if(uL(e))return{shape:"procedural_harness_observation",consequenceBaseline:"low"};let s=Xi(e,{allowNonWarningLinterFindings:!0});return s!==null?{shape:s.shape==="test"?"concrete_test_result":"existing_observation",consequenceBaseline:s.consequenceBaseline}:pL(t)||CO(e)||Qb(t,e)?{shape:"existing_observation",consequenceBaseline:"high"}:null}function dN(e){let t=Tt(e);return t===null||Xr(t)||ip(t)?null:Id(e)}function pN(e){let t=Tt(e);if(t===null||Xr(t))return!1;let n=Wd(t);return n===null?(wt(t)||wS(t))&&sp(t)===null:Zd(n.preamble)||Yb(n.section)===null&&(wt(t)||wS(n.section))}function mN(e){let t=Tt(e);return t===null||Xr(t)?!1:Wd(t)!==null&&sp(t)!==null}function wS(e){return e.split(/\r?\n/).some(t=>wt(t.trim()))}function eo(e){return fN(e.toolFamily)}function l_(e){let t=eo(e);if(t)return t;let n=z(`${e.title} ${e.summary??""}`),s=[];return(Ze(n,"wants to read")||Ze(n,"wants to inspect")||Fr(n,"read")||Fr(n,"inspect"))&&s.push({toolFamily:"read",risk:1,order:0}),(Ze(n,"search files")||Ze(n,"search file contents"))&&s.push({toolFamily:"search",risk:1,order:1}),Ze(n,"search the web")&&s.push({toolFamily:"web",risk:2,order:2}),(Ze(n,"wants to write")||Fr(n,"write"))&&s.push({toolFamily:"write",risk:3,order:3}),(Ze(n,"wants to edit")||Fr(n,"edit"))&&s.push({toolFamily:"edit",risk:3,order:4}),(Ze(n,"shell command")||Ze(n,"wants to run"))&&s.push({toolFamily:"bash",risk:3,order:5}),s.sort((i,o)=>o.risk-i.risk||i.order-o.order)[0]?.toolFamily??null}function Ue(e){return e==="bash"||e==="exec_command"||e==="run_shell_command"}function fN(e){if(!e)return null;let t=e.trim().toLowerCase();return t.length>0?t:null}function gN(e){return Ue(e)||e==="edit"?"native":hN(e)?"unsupported":"exact"}function hN(e){return e==="read"||e==="search"||e==="web"||e==="write"}function yN(e,t={}){if(e===void 0)return null;let n=Qr(e);if(n===null||typeof n.wall_time!="string"||typeof n.output!="string"||!to(n.wall_time)||_N(n)||n.output.trim().length===0)return null;let s=u_(n,t);return s==="invalid"?null:{output:n.output,wallTime:n.wall_time,...s!==void 0?{exitCode:s}:{}}}function SN(e){if(e===void 0)return!1;if(/^\s*\{\s*(?:"exit_code"\s*:|"wall_time"\s*:|"output"\s*:)/.test(e))return!0;let t=Qr(e);return t?.truncated===!0?!0:t!==null&&Object.prototype.hasOwnProperty.call(t,"wall_time")&&Object.prototype.hasOwnProperty.call(t,"output")}function Qr(e){try{let t=JSON.parse(e);return t===null||typeof t!="object"||Array.isArray(t)?null:t}catch{return null}}function bN(e){if(e===void 0)return!1;let t=Qr(e);return t!==null&&Object.keys(t).length===0}function to(e){return/^\d+(?:\.\d+)?\s*(?:ms|s|sec|secs|second|seconds)$/i.test(e.trim())}function _N(e){let t=new Set(["exit_code","output","wall_time"]);return Object.keys(e).some(n=>!t.has(n))}function u_(e,t={}){if(!Object.prototype.hasOwnProperty.call(e,"exit_code"))return;let n=e.exit_code;return typeof n=="number"&&Number.isInteger(n)?n:t.coerceStringExitCode!==!1&&typeof n=="string"&&/^-?\d+$/.test(n.trim())?Number.parseInt(n,10):"invalid"}function Li(e,t){if(t.invalid===!0||t.wallTime!==void 0&&!to(t.wallTime))return null;let n=wN(e);if(n.text.trim().length===0)return null;let s=kN(n.suffix);if(s===null||t.exitCode!==void 0&&s.exitCode!==void 0||t.wallTime!==void 0&&s.wallTime!==void 0)return null;let i=t.exitCode??s.exitCode,o=t.wallTime??s.wallTime;return{output:n.text,...o!==void 0?{wallTime:o}:{},...i!==void 0?{exitCode:i}:{}}}function Td(e){let t=e.replace(/^"|"$/g,"").trim();return/^-?\d+$/.test(t)?Number.parseInt(t,10):null}function kN(e){let t=e.trim(),n={};for(;t.length>0;){if(t==="}")return n;let s=/^,\s*"([a-z_]+)"\s*:\s*/.exec(t);if(!s)return null;switch(t=t.slice(s[0].length),s[1]){case"exit_code":{let i=vN(t);if(i===null||n.exitCode!==void 0)return null;n.exitCode=i.exitCode,t=i.rest;break}case"wall_time":{let i=EN(t);if(i===null||n.wallTime!==void 0)return null;n.wallTime=i.wallTime,t=i.rest;break}case"truncated":{let i=AN(t);if(i===null)return null;t=i;break}default:return null}}return n}function vN(e){let t=/^(?:"([+-]?\d+)"|([+-]?\d+))/.exec(e),n=t?Td(t[1]??t[2]??""):null;return t===null||n===null?null:{exitCode:n,rest:e.slice(t[0].length).trim()}}function EN(e){let t=/^"([^"]+)"/.exec(e),n=t?.[1]??"";return!t||!to(n)?null:{wallTime:n,rest:e.slice(t[0].length).trim()}}function AN(e){let t=/^true\b/.exec(e);return t?e.slice(t[0].length).trim():null}function wN(e){let t="";for(let n=0;n<e.length;n+=1){let s=e[n];if(s==='"')return{text:t,suffix:e.slice(n+1)};if(s!=="\\"){t+=s;continue}let i=e[n+1];if(i===void 0)break;switch(n+=1,i){case"n":t+=`
|
|
10
|
+
`;break;case"r":t+="\r";break;case"t":t+=" ";break;case"u":t+=IN(e,n),n+=TN(e,n)?4:0;break;default:t+=i;break}}return{text:t,suffix:""}}function IN(e,t){let n=e.slice(t+1,t+5);return/^[0-9a-f]{4}$/i.test(n)?String.fromCharCode(Number.parseInt(n,16)):"u"}function TN(e,t){return/^[0-9a-f]{4}$/i.test(e.slice(t+1,t+5))}function xN(e){if(e===void 0)return null;let t=CN(e);return t!==null?t:Qr(e)!==null?null:RN(e)}function RN(e){let t=/^\s*\{\s*"exit_code"\s*:\s*("[+-]?\d+"|-?\d+)\s*,\s*"wall_time"\s*:\s*"([^"]+)"\s*,\s*"output"\s*:\s*"/.exec(e);if(t){let o=Td(t[1]??""),a=t[2]??"";return Li(e.slice(t[0].length),{...o!==null?{exitCode:o}:{invalid:!0},wallTime:a})}let n=/^\s*\{\s*"wall_time"\s*:\s*"([^"]+)"\s*,\s*"exit_code"\s*:\s*("[+-]?\d+"|-?\d+)\s*,\s*"output"\s*:\s*"/.exec(e);if(n){let o=Td(n[2]??"");return Li(e.slice(n[0].length),{...o!==null?{exitCode:o}:{invalid:!0},wallTime:n[1]??""})}let s=/^\s*\{\s*"wall_time"\s*:\s*"([^"]+)"\s*,\s*"output"\s*:\s*"/.exec(e);if(s)return Li(e.slice(s[0].length),{wallTime:s[1]??""});let i=/^\s*\{\s*"output"\s*:\s*"/.exec(e);return i?Li(e.slice(i[0].length),{}):null}function CN(e){let t=Qr(e);if(t===null||t.truncated!==!0||typeof t.wall_time!="string"||typeof t.output!="string"||!to(t.wall_time)||ON(t)||t.output.trim().length===0)return null;let n=u_(t);return n==="invalid"?null:{output:t.output,wallTime:t.wall_time,...n!==void 0?{exitCode:n}:{}}}function ON(e){let t=new Set(["exit_code","output","truncated","wall_time"]);return Object.keys(e).some(n=>!t.has(n))}function LN(e,t){if(t==="unsupported")return{kind:"unsupported"};let n=yN(e,{coerceStringExitCode:t==="native"});if(n!==null)return{kind:"valid",output:n};if(!SN(e))return{kind:"raw"};if(t==="exact")return{kind:"invalid"};let s=xN(e);return s===null?{kind:"invalid"}:{kind:"recovered",output:s}}var NN=/^(?:(?:file|source|document|read)\s+)?(?:content|output|payload|window)\b|^(?:file|source|document|read)\b/i,PN=/\((?:(?:\d+(?:\.\d+)?\s*(?:kb|mb|gb|b))|(?:\d+\s*tokens?))\)/i,MN=/\b(?:exceeds?|exceeded|larger than|too large for|over|above)\s+(?:the\s+)?(?:maximum|max|allowed|configured|read)(?:\s+(?:allowed|read|token))?\s+(?:size|tokens?|limit|window)\b|\b(?:maximum|max|allowed|configured|read)(?:\s+(?:allowed|read|token))?\s+(?:size|tokens?|limit|window)\s+(?:is|was)?\s*(?:exceeded|reached)\b/i,DN=/\buse (?:offset and limit|start_line and end_line) parameters?\b|\bsearch for specific content\b/i,d_=/\b(?:permission denied|operation not permitted|no such file or directory|failed to read|failed to open|could not read|could not open|unable to read|unable to open)\b/i;function FN(e){if(e===void 0)return!1;let t=e.trim().replace(/\s+/g," ");return p_(t)&&!d_.test(t)}function $N(e){if(e===void 0)return!1;let t=e.trim().replace(/\s+/g," ");return p_(t)&&d_.test(t)}function p_(e){return NN.test(e)&&PN.test(e)&&MN.test(e)&&DN.test(e)}function UN(e){return Ji(e)||Xb(e)||qN(e)||jN(e)||zN(e)}function jN(e){return e.split(/\r?\n/).filter(n=>n.trim().length>0).length<=3&&/^\s*(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=\s*["'`][\s\S]*["'`]\s*;?\s*(?:\r?\n\s*return\b[\s\S]*)?$/i.test(e)}function zN(e){return/^\s*(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=\s*["'`][\s\S]*\bdiff --git\b/i.test(e)}function qN(e){return/^\s*---\s+expected\b[\s\S]*^\s*\+\+\+\s+actual\b/im.test(e)}function BN(e){return uC(e)||S0(e)||VN(e)}function VN(e){let t=e.trim();if(!/\.\.\.\s*$/.test(t)||!/(?:^|[\r\n])\s*std::c(?:out|err|log)\s*<</.test(t))return!1;let n=t.split(/\r?\n/).map(s=>s.trim()).filter(s=>s.length>0&&!Jr(s)).map(s=>Qn(s)??Gi(s)).filter(s=>s!==null);return n.length>=3&&n.filter(s=>s.strongAnchor).length>=2&&n.some(s=>s.nontrivialAnchor)}function KN(e){if(!e.commandExecutionToolFamily||!e.recoveredEnvelope||e.output===void 0)return HN;let t=BN(e.output),n=WN(e.output);return{source:t,readback:n,any:t||n}}var HN={source:!1,readback:!1,any:!1};function WN(e){let t=e.trim(),n=IS(t,GN),s=IS(t,YN);return t.length>0&&ge(t)&&!Xn(t)&&(n_(t)||n>=2||s>=2||s>=1&&ZN(t))}function IS(e,t){return[...e.matchAll(t)].length}function ZN(e){return/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\|[a-z0-9_.-]+\/)\S*\.\.\.\s*$/i.test(e)}var GN=/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\)?[^\s:\r\n]+\.(?:md|markdown|rst|txt|adoc):\d+(?::\d+)?:\s*\S/gi,YN=/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\)?[^\s:\r\n]+\.(?:c|cc|cpp|cxx|cu|cuh|h|hpp|hh|s|asm|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift):\d+(?::\d+)?:\s*\S/gi;function JN(e){let t=ce(e);if(t.length===0||XN(t)||QN(t))return null;let n=t.split(/\r?\n/).map(o=>o.trim()).filter(o=>o.length>0);if(n.length!==1)return null;let s=Qd(t);if(s.length!==1||s[0]?.line!==n[0])return null;let i=s[0];if(i===void 0)return null;switch(i.kind){case"source_location":return{consequenceBaseline:"high",source:!0};case"path_line":return{consequenceBaseline:"medium",source:!1};default:return null}}function XN(e){return/^\s*(?:see|refer to|open|read|check)\s+\S/i.test(e)}function QN(e){let t=eP(e);return/:\d+(?::\d+)?:\s*(?:(?:fatal\s+)?error|fatal|userwarning|warning):\s+\S/i.test(e)||t!==null&&tP(t)}function eP(e){return/:\d+(?::\d+)?:\s*(\S[\s\S]*)$/.exec(e)?.[1]??null}function tP(e){let t=e.trim();return nP(t)?!1:[/^(?:tests?|build|command|process|subprocess)\s+failed\b/i,/^failed\s+(?:tests?|build|command|process|subprocess)\b/i,/^assertion\s+failed\s*:/i,/^(?:uncaught|unhandled)\s+exception\b/i,/^(?:E\s+)?(?:AssertionError|RuntimeError|ValueError|TypeError|Exception):\s+\S/i,/^(?:FAIL|FAILED|ERROR)\b[:\s]\s*\S/i].some(n=>n.test(t))}function nP(e){return/^(?:tests?|build|command|process|subprocess)\s+failed\s+(?:is|are|was|were)\s+(?:documented|described|noted|mentioned)\b/i.test(e)}function rP(e){if(ep(e))return null;let t=aP(e);if(Xd(e))return $e(!1,"low");if(t!==null)return t;if(TS(e)&&_O(e))return $e(!0,"high");if(cO(e))return $e(!1,"high");if(tp(e))return $e(Xe(e),It(e)?"low":"high");let n=uP(e);if(n!==null)return n;let s=TS(e)?null:Xi(e,{allowReadOwnedFlattenedFilePayloads:!0});return s===null?null:$e(s.source,oP(s,e))}function sP(e){let t=dP(e),n=t.length===0||UN(t)?null:Xi(t,{rejectCommandTextWrappers:!0});return n===null?null:$e(n.source,n.consequenceBaseline)}function iP(e){let t=KN({commandExecutionToolFamily:e.commandExecutionToolFamily,recoveredEnvelope:e.recoveredEnvelope,output:e.output}),n=Xi(e.output),s=e.commandExecutionToolFamily&&e.exitCode===0?JN(e.output):null,i=Xe(e.output)||t.source||n?.source===!0||s?.source===!0;return kO(e.output)||t.any||n!==null||s!==null||e.recoveredEnvelope&&aO(e.output)?$e(i,i?"high":"medium"):null}function $e(e,t){return{consequenceBaseline:t,source:e}}function oP(e,t){return e.shape==="readback"&&It(t)?"low":e.consequenceBaseline}function aP(e){let t=cP(e);return t===null?null:lP(t.path,t.content)?$e(!1,"low"):m_(t.path)||Xe(t.content)?$e(!0,"high"):$e(!1,"high")}function cP(e){let t=gd(e.trim(),"path",0);if(t===null)return null;let n=gd(e,"type",t.end),s=gd(e,"content",n?.end??t.end,{allowOpenEnded:!0});return n?.value.toLowerCase()==="file"&&s!==null?{content:s.value,path:t.value}:null}function gd(e,t,n,s={}){let i=e.toLowerCase(),o=`<${t}>`,a=`</${t}>`,c=i.indexOf(o,n);if(c<0)return null;let l=i.indexOf(a,c+o.length),d=l<0&&s.allowOpenEnded===!0?e.length:l,m=d<0?"":e.slice(c+o.length,d).trim(),g=l<0?e.length:l+a.length;return m.length>0?{end:g,value:m}:null}function lP(e,t){let n=e.toLowerCase(),s=t.toLowerCase();return n.endsWith(".log")||It(t)||(n.endsWith("/makefile")||n.endsWith("/cmakelists.txt")||n.endsWith(".cmake"))&&["spdx-license-identifier","version =","patchlevel =","sublevel =","project("].some(i=>s.includes(i))}function m_(e){let t=e.toLowerCase();return Bd.test(t)||Vd.test(t)}function uP(e){let t=Tt(e)??e,n=t.toLowerCase(),s=z(t),i=m_(t)||Xe(t),o=n.includes("contents of")||n.includes("content of")||n.includes("observation path")||n.includes("showing first")||n.includes("showing top")||n.includes("top")&&n.includes("lines"),a=qd.some(l=>s.includes(l));if(!i&&!Yr.test(n)||!o&&!a)return null;let c=n.includes(".log")||It(t);return $e(i&&!c,i&&!c?"high":"low")}function dP(e){let t=ce(e);return Tt(t)??t}function TS(e){return e.includes(`
|
|
11
|
+
`)||e.includes("\r")||e.includes("\u2192")}function pP(e){if(e.toolFamily==="read"){let s=hd(rP(e.summary),"read_output","document","read");if(s!==null)return s}if(Ue(e.toolFamily)&&e.structuredOutputEnvelope.kind==="raw")return hd(sP(e.summary),"command_output","document",e.toolFamily);let t=e.structuredOutputEnvelope;if(t.kind!=="valid"&&t.kind!=="recovered")return null;let n=t.output;return hd(iP({commandExecutionToolFamily:Ue(e.toolFamily),exitCode:n.exitCode,output:n.output,recoveredEnvelope:t.kind==="recovered"}),"structured_output","tool",e.toolFamily)}function hd(e,t,n,s){return e===null?null:{origin:t,fallbackSubject:n,payload:e,...s!==void 0?{toolFamily:s}:{}}}function mP(e){if(e.missingToolObservationTranscript)return xS(e.missingToolObservationTranscript);if(e.commandObservationTranscript)return xS(e.commandObservationTranscript,e.toolFamily);if(e.rejectedToolUseOutcome)return gP("status_text","await_authorization",e.toolFamily);if(e.editOutputOutcome==="applied")return xd("semantic_evidence","tool","high",e.toolFamily);if(e.readAbbreviatedFileViewObservation)return xd("read_output","source",e.readAbbreviatedFileViewObservation.consequenceBaseline,"read");let t=pP({summary:e.summary,structuredOutputEnvelope:e.structuredOutputEnvelope,toolFamily:e.toolFamily});return t!==null?{kind:"payload",...t}:e.structuredOutputZeroExitSuccess?fP("structured_output",e.commandExecutionToolFamily?"command":"tool","low",e.toolFamily):null}function xS(e,t){return xd("transcript",e.shape==="abbreviated_file_view"?"source":e.shape==="concrete_test_result"||e.shape==="successful_test"?"document":"tool",e.consequenceBaseline,t)}function xd(e,t,n,s){return{kind:"payload",origin:e,fallbackSubject:t,payload:{source:t==="source",consequenceBaseline:n},...s!==void 0?{toolFamily:s}:{}}}function fP(e,t,n,s){return{kind:"outcome",origin:e,subject:t,consequenceBaseline:n,...s!==void 0?{toolFamily:s}:{}}}function gP(e,t,n){return{kind:"control",origin:e,recoveryHint:t,...n!==void 0?{toolFamily:n}:{}}}function hP(e){let t=e.summary??"",n=Ue(e.toolFamily),s=gN(e.toolFamily),i=LN(e.summary,s),o=i.kind==="valid"||i.kind==="recovered"?i.output:null,a=e.toolFamily!=="edit"||i.kind==="invalid"?null:UR(i.kind==="raw"?t:void 0,o?.output),c=o!==null&&Xn(o.output),l=e.toolFamily==="read"&&o===null?Id(t):null,d=o?.exitCode!==void 0&&o.exitCode!==0,m=o?.exitCode===0&&s==="exact",g=n?dN(t):null,h=l?.shape==="abbreviated_file_view"?l:null,y=e.toolFamily===void 0?Id(t):null,_=cN(t),v=mP({commandObservationTranscript:g,editOutputOutcome:a,missingToolObservationTranscript:y,readAbbreviatedFileViewObservation:h,rejectedToolUseOutcome:_,commandExecutionToolFamily:n,structuredOutputEnvelope:i,structuredOutputZeroExitSuccess:m,summary:t,toolFamily:e.toolFamily}),M=Br(t),D=RS(v,"read_output"),U=D&&CS(v)==="source",F=RS(v,"structured_output")&&CS(v)==="source",te=e.toolFamily==="read"&&!D&&!M&&FN(t),Te=e.toolFamily==="read"&&!D&&$N(t),S=e.toolFamily==="read"&&(ep(t)||te||Te||M&&!U);return{structuredOutputEnvelope:i,unsafeStructuredToolOutputEnvelope:i.kind==="recovered"||i.kind==="invalid",diagnosticStructuredToolOutput:o,structuredOutputExitFailure:d,structuredOutputZeroExitSuccess:m,editOutputOutcome:a,searchFailureDiagnostic:e.toolFamily==="search"&&NR(t),readFailureDiagnostic:S,sourceWindowLimitFailure:te,structuredOutputFailureDiagnostic:c,rawToolOutputFailureDiagnostic:s==="native"&&o===null&&i.kind==="raw"&&Xn(t),strongSourceRuntimeDiagnostic:i.kind==="valid"&&F&&Br(i.output.output)||D&&M,diagnosticObservationTranscript:e.toolFamily===void 0&&AS(t),commandDiagnosticObservationTranscript:n&&AS(t),commandActualDiagnosticObservationTranscript:n&&mN(t),commandDiagnosticReferenceObservationTranscript:n&&pN(t),observationSyntax:v}}function RS(e,t){return e?.kind==="payload"&&e.origin===t}function CS(e){return e?.kind!=="payload"?e?.kind==="outcome"?e.subject:null:e.payload.source?"source":e.fallbackSubject}function yP(e){if(!bP(e))return null;let t=SP(e);return{failureDetail:t,...h_(e)?{terminalShape:"bare_nonzero_exit"}:{},consequenceBaseline:t==="outcome_only"||t==="source_window_limit"?"medium":"high"}}function SP(e){if(f_(e))return"outcome_only";if(e.signals.sourceWindowLimitFailure)return"source_window_limit";let t=e.signals;return g_(t)||t.rawToolOutputFailureDiagnostic||t.structuredOutputEnvelope.kind==="raw"&&Ue(e.toolFamily)&&np(z(e.summary??""))&&!Wb(e.summary??"")?"diagnostic":"indeterminate"}function f_(e){let t=e.signals.diagnosticStructuredToolOutput;return h_(e)||Ue(e.toolFamily)&&OS(e.summary??"")||e.signals.structuredOutputEnvelope.kind==="valid"&&t?.exitCode!==void 0&&t.exitCode!==0&&OS(t.output)}function g_(e){return e.strongSourceRuntimeDiagnostic||e.structuredOutputFailureDiagnostic||e.editOutputOutcome==="failure"||e.searchFailureDiagnostic||e.readFailureDiagnostic||e.diagnosticObservationTranscript||e.commandActualDiagnosticObservationTranscript||!!(e.commandDiagnosticObservationTranscript&&!e.commandDiagnosticReferenceObservationTranscript)}function bP(e){let t=e.signals;return t.structuredOutputExitFailure||g_(t)||!!(t.rawToolOutputFailureDiagnostic&&!t.commandDiagnosticReferenceObservationTranscript)||f_(e)||_P(e)}function _P(e){let t=e.signals.observationSyntax;return e.terminalFailureText&&!e.signals.commandDiagnosticReferenceObservationTranscript&&!(t?.origin==="transcript"&&t.toolFamily===void 0)&&!(e.toolFamily==="search"&&e.searchResultText)&&(!(t?.kind==="payload"&&(t.origin==="read_output"||t.origin==="structured_output"))||e.signals.strongSourceRuntimeDiagnostic)}function h_(e){return Ue(e.toolFamily)&&Wb(e.summary??"")}function OS(e){let t=z(e).replace(/[.]+$/g,"").replace(/\s+/g," ");return/^(?:no output|without output|no stdout no stderr|no stderr no stdout|empty stdout empty stderr|stdout empty stderr empty|no tests? found(?: exiting with code -?\d+)?|no test files(?: were)? found|no files matching .+ (?:were )?found|collected 0 items|found 0 tests?|0 tests? found)$/.test(t)}function kP(e){let t=Tt(e??"");return t===null?null:vP(t)}function vP(e){let t=e.trim();if(t.length===0||/[\r\n]/.test(t)||EP(t))return null;let n=LS(t,[/^file\s+created(?:\s+successfully)?\s+at:\s+(\S+?)(?:\.)?$/i,/^(?:successfully\s+)?(?:created|wrote|saved)\s+(?:new\s+)?file(?:\s+at)?:?\s+(\S+?)(?:\.)?$/i,/^file\s+(\S+?)\s+(?:was\s+)?(?:created|written|saved)(?:\s+successfully)?(?:\.)?$/i]);if(n!==void 0&&NS(n))return{kind:"file_created",consequenceBaseline:"low"};let s=LS(t,[/^the\s+file\s+(\S+?)\s+has\s+been\s+(?:edited|updated|modified)(?:\.)?$/i,/^(?:successfully\s+)?(?:edited|updated|modified)\s+file:?\s+(\S+?)(?:\.)?$/i,/^file\s+(\S+?)\s+(?:was|has\s+been)\s+(?:edited|updated|modified)(?:\s+successfully)?(?:\.)?$/i]);return s!==void 0&&NS(s)?{kind:"file_edited",consequenceBaseline:"low"}:null}function LS(e,t){for(let n of t){let s=n.exec(e)?.[1];if(s!==void 0)return s}}function NS(e){return/^(?:[A-Za-z]:[\\/]|\/|\.{1,2}\/|~\/)/.test(e)&&!/["'`<>[\]{}]/.test(e)&&!/(?:^|:)\/\//.test(e)&&!/(?:\.\.\.|…)$/.test(e)&&!/[.,;:]$/.test(e)}function EP(e){return/(?:expected|sample|fixture|reference|example|desired|golden|baseline)\s+(?:output|result|diagnostic)s?\s*:/i.test(e)||/^```/.test(e)||/\bnot\s+(?:be\s+|been\s+|was\s+|were\s+)?(?:created|written|saved|edited|updated|modified)\b/i.test(e)}function y_(e,t){let n=z(e),s=np(n),i=Ue(t),o=PP(n,t),a=[];return i&&(NP(n,t)||KO(o)&&!HO(o))&&!s&&a.push("routine_success"),s?a.push("terminal_failure"):i&&Ae(n,tR)&&a.push("expected_diagnostic"),Ae(n,qd)&&a.push("observational_readback"),CP(n)&&a.push("tagged_file"),(RP(n)||t==="read"&&tp(e))&&a.push("read_payload"),Qb(n,e)&&a.push("search_result"),OP(n)&&a.push("source_code"),LP(n,e)&&a.push("log"),(eR.test(n)||Ae(n,Wx))&&a.push("build_metadata"),{shapes:a}}function AP(e,t){let n=y_(e,t).shapes;return s=>n.includes(s)}function wP(e){if(e.type!=="task.updated"||e.status!=="failed"||e.title===void 0)return null;let t=eo({title:e.title,...e.summary!==void 0?{summary:e.summary}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{}})??void 0,n=y_(t==="search"?e.summary??e.title:`${e.title} ${e.summary??""}`,t),s=hP({summary:e.summary,toolFamily:t});return{...IP({summary:e.summary,signals:s,text:n,toolFamily:t}),text:n}}function IP(e){let{signals:t,summary:n,text:s,toolFamily:i}=e,o=s.shapes.includes.bind(s.shapes),a=yP({summary:n,signals:t,toolFamily:i,searchResultText:o("search_result"),terminalFailureText:o("terminal_failure")});if(a!==null){let{failureDetail:l,terminalShape:d}=a;return{kind:"terminal_failure",failureDetail:l,...d!==void 0?{terminalShape:d}:{},...i!==void 0?{toolFamily:i}:{},readsAsObservation:!1,consequenceBaseline:a.consequenceBaseline}}if(i!==void 0&&bN(n))return{kind:"empty_failure_payload",failureDetail:"absent_evidence",toolFamily:i,readsAsObservation:!1,consequenceBaseline:"medium"};let c=i===void 0?kP(n):null;return c?{kind:"operation_success_observation",readsAsObservation:!0,consequenceBaseline:c.consequenceBaseline}:t.observationSyntax!==null?TP(t.observationSyntax):Ue(i)&&o("routine_success")&&(!t.unsafeStructuredToolOutputEnvelope||t.diagnosticStructuredToolOutput?.exitCode===0)?{kind:"routine_bash_success_observation",...i!==void 0?{toolFamily:i}:{},readsAsObservation:!0,consequenceBaseline:"low"}:Ue(i)&&o("expected_diagnostic")?{kind:"expected_diagnostic_failure",...i!==void 0?{toolFamily:i}:{},readsAsObservation:!1,consequenceBaseline:"medium"}:i==="search"&&o("search_result")?{kind:"routine_search_output",toolFamily:i,readsAsObservation:!0,consequenceBaseline:o("terminal_failure")?"high":"low"}:i==="edit"&&t.structuredOutputEnvelope.kind!=="invalid"&&(o("observational_readback")||o("tagged_file")||o("read_payload")||t.editOutputOutcome==="applied")?{kind:"observational_payload",toolFamily:i,readsAsObservation:!0,consequenceBaseline:"high"}:{kind:"unclassified_failure",failureDetail:"indeterminate",...i!==void 0?{toolFamily:i}:{},readsAsObservation:!1,consequenceBaseline:"high"}}function TP(e){return{kind:xP(e),...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},observationSyntax:e,readsAsObservation:!0,consequenceBaseline:e.kind==="control"?"low":e.kind==="payload"?e.payload.consequenceBaseline:e.consequenceBaseline}}function xP(e){return e.kind==="control"?"rejected_tool_use_observation":e.kind==="outcome"?"structured_execution_success_observation":e.origin==="structured_output"?"structured_tool_output_observation":"observational_payload"}function RP(e){return Yr.test(e)?Ae(e,Vx)||(Bd.test(e)||Vd.test(e))&&Gx.test(e)||Yx.test(e):!1}function CP(e){return Ae(e,pb)&&Yr.test(e)}function OP(e){return Bd.test(e)||Vd.test(e)||Jx.test(e)||Xx.test(e)}function LP(e,t){return Qx.test(e)||It(t)||Ae(e,Hx)}function NP(e,t){let n=e.replace(/\.+$/,""),s=n.indexOf(" observation "),i=s>0&&!n.slice(0,s).includes(" ")?n.slice(s+13):n,o=Kx.map(a=>z(a));return S_(t).some(a=>o.some(c=>{let l=a.length>0?`${a} ${c}`:c;return i===l}))}function PP(e,t){for(let n of S_(t).filter(Boolean)){if(e===n)return"";if(e.startsWith(`${n} `))return e.slice(n.length+1)}return e}function S_(e){let t=["","observation","bash failure","tool failure"];return e&&e!=="bash"?[...t,`${e} failure`]:t}var MP={absent_evidence:"absent",source_window_limit:"partial",indeterminate:"unknown"},DP={absent:"request_evidence",partial:"narrow_evidence_scope",unknown:"inspect_original_evidence"},FP={routine_bash_success_observation:We("command_success","outcome","success"),structured_execution_success_observation:We("structured_execution_success","outcome","success"),operation_success_observation:We("operation_success","outcome","success"),structured_tool_output_observation:We("structured_output","payload","neutral"),empty_failure_payload:We("empty_payload","outcome","failure","absent_evidence"),observational_payload:We("payload","payload","neutral"),routine_search_output:We("search_output","payload","neutral"),expected_diagnostic_failure:We("expected_diagnostic","diagnostic","failure"),terminal_failure:VP,rejected_tool_use_observation:We("rejected_tool_use","control","neutral"),unclassified_failure:We("unknown_failure","unknown","failure","indeterminate")};function $P(e){return e.observationSyntax!==void 0?jP(e.observationSyntax):FP[e.kind](e)}function UP(e){return $P(e).observationSemantics}function jP(e){let t=e.toolFamily,n={kind:e.kind,polarity:e.kind==="outcome"?"success":"neutral",ownership:{owner:e.kind==="control"?"tool":t===void 0?"source":"tool",...t!==void 0?{toolFamily:t}:{}},subject:qP(e),evidenceLoss:"none",provenance:{origin:e.origin},consequenceBaseline:BP(e),evidenceCertainty:"determinate",...e.kind==="control"?{recoveryHint:e.recoveryHint}:{}};return{observationExtractorId:zP(e),observationSemantics:n}}function zP(e){return e.kind==="control"?"rejected_tool_use":e.kind==="outcome"?"structured_execution_success":e.origin==="structured_output"?"structured_output":"payload"}function qP(e){return e.kind==="control"?"tool":e.kind==="outcome"?e.subject:e.payload.source?"source":e.fallbackSubject}function BP(e){return e.kind==="control"?"low":e.kind==="payload"?e.payload.consequenceBaseline:e.consequenceBaseline}function VP(e){switch(e.failureDetail){case"source_window_limit":return $r(e,"read_truncated_source","diagnostic","failure");case"diagnostic":return $r(e,"terminal_diagnostic","diagnostic","failure");case"outcome_only":return $r(e,"terminal_outcome","outcome","failure");default:return $r(e,"unknown_failure","unknown","failure","indeterminate")}}function We(e,t,n,s){return i=>$r(i,e,t,n,s)}function $r(e,t,n,s,i){let o=i??e.failureDetail,a=MP[o??"outcome_only"]??"none",c=null;e.kind==="expected_diagnostic_failure"?c="expected":n==="diagnostic"&&(c=o==="source_window_limit"?"source_limit":"runtime");let l=e.kind==="rejected_tool_use_observation"?"await_authorization":WP(a,c),d={kind:n,polarity:s,ownership:{owner:KP(e)},subject:HP(e,t,o),evidenceLoss:a,provenance:{origin:"semantic_evidence"},consequenceBaseline:e.consequenceBaseline,evidenceCertainty:e.kind==="terminal_failure"&&o==="indeterminate"?"indeterminate":"determinate"};return e.toolFamily!==void 0&&(d.ownership.toolFamily=e.toolFamily),c!==null&&(d.diagnosticClass=c),l!==null&&(d.recoveryHint=l),{observationExtractorId:t,observationSemantics:d}}function KP(e){return e.toolFamily!==void 0?"tool":e.readsAsObservation?"source":e.kind==="unclassified_failure"?"unknown":"engine"}function HP(e,t,n){return t==="command_success"||t==="structured_execution_success"?"command":t==="search_output"||e.toolFamily==="search"?"search":n==="source_window_limit"?"source":e.toolFamily!==void 0?"tool":"unknown"}function WP(e,t){return DP[e]??(t!==null?"inspect_diagnostic":null)}function ZP(e){let t=e.core.evidenceCertainty==="indeterminate"?"uncertain":e.semanticAgreement;return{kind:e.core.kind,polarity:e.core.polarity,semanticAgreement:t,ownership:{...e.core.ownership},evidenceStrength:YP({ontology:e.ontology,abstained:e.abstained,semanticAgreement:t,evidenceLoss:e.core.evidenceLoss}),subject:e.core.subject,evidenceLoss:e.core.evidenceLoss,...e.core.diagnosticClass!==void 0?{diagnosticClass:e.core.diagnosticClass}:{},...e.core.recoveryHint!==void 0?{recoveryHint:e.core.recoveryHint}:{},provenance:{origin:e.core.provenance.origin,authority:GP(e.ontology.source)},consequenceBaseline:e.core.consequenceBaseline}}function GP(e){switch(e){case"explicit":case"hinted":case"inferred":return e;default:return"unknown"}}function YP(e){return e.abstained||e.semanticAgreement!=="stable"||e.ontology.confidence==="low"||e.evidenceLoss==="absent"||e.evidenceLoss==="unknown"?"weak":e.ontology.confidence==="medium"?e.ontology.source==="inferred"?"weak":"qualified":e.ontology.source==="inferred"?"qualified":"strong"}function b_(e){let t=wP(e);return t!==null?UP(t):null}function JP(e){return ZP({core:e.core,ontology:e.ontology,abstained:e.abstained,semanticAgreement:XP({observation:e.core,ontology:e.ontology,abstained:e.abstained,interpretation:e.interpretation??e.event.semantic})})}function XP(e){let t=e.interpretation;return t===void 0||e.abstained||t.confidence==="low"||e.ontology.confidence==="low"?"uncertain":QP(t.provenance)?"overridden":e1(e.observation,t,e.ontology)?"stable":"uncertain"}function QP(e){return e?.intentFrame==="hint"||e?.intentFrame==="source"||e?.activityClass==="hint"||e?.activityClass==="source"||e?.consequence==="hint"||e?.consequence==="source"}function e1(e,t,n){let s=$x(e);return n.ask==="status"&&n.activity===s.activity&&n.blocking==="non_blocking"&&t.intentFrame===s.intentFrame&&t.activityClass===s.activityClass&&t.consequence===e.consequenceBaseline&&n.consequence===e.consequenceBaseline}function ap(e){if(!e.semantic)return{blockedLikeStatus:!1};let t=e.semantic.abstained===!0,n=e.type==="task.updated"&&e.status==="failed"?b_(e):null,s=Tx({event:e,core:n,interpretation:e.semantic,abstained:t}),i=Rx(e,e.semantic,s),o=e.type==="task.updated"&&i.blocking==="blocking"&&e.status!=="blocked",a=n!==null?JP({event:e,core:n,ontology:i,abstained:t,interpretation:e.semantic}):null;return{ontology:i,semanticEvidence:{confidence:i.confidence,source:i.source,strength:o1({ontology:i,observation:a,blockedLikeStatus:o,abstained:t}),abstained:t},...e.semantic.relationHints.length>0?{relationEvidence:{source:x_(e.semantic),strength:a1(e.semantic,t)}}:{},...a!==null?{observation:a}:{},blockedLikeStatus:o,...s!==null?{observationalStatusConflict:s}:{}}}function cp(e){return xt(e)?.strength??null}function xt(e){return e.judgmentInput.semanticEvidence??null}function t1(e){return e.judgmentInput.relationEvidence??null}function __(e){return e.judgmentInput.observation??null}function lp(e){return T_(e.judgmentInput)}function n1(e){return e.judgmentInput.observationalStatusConflict??null}function up(e){return t1(e)?.strength??null}function k_(e){return e.judgmentInput.ontology??null}function Ui(e){return xt(e)?.confidence??null}function Hr(e){return xt(e)?.abstained===!0}function v_(e){return Ui(e)==="low"}function r1(e){return Hr(e)||v_(e)||cp(e)==="weak"}function s1(e){let t=cp(e),n=xt(e)?.source;if(!t||!n)return 0;if(n==="inferred")switch(t){case"weak":return-2;case"qualified":return-1;case"strong":return 0}return(n==="explicit"||n==="hinted")&&t==="strong"?1:0}function dp(e){return e.judgmentInput.blockedLikeStatus}function no(e){return E_(e.judgmentInput)}function E_(e){if(!e.blockedLikeStatus)return!1;let t=e.semanticEvidence;return t!==void 0&&t.confidence!=="low"&&!t.abstained}function er(e){return A_(e.judgmentInput)}function i1(e){return T_(e)?.limitedFailureStatus===!0}function A_(e){return e.observationalStatusConflict!==void 0}function w_(e,t){return t==="ambient"&&dp(e)?"queue":t}function I_(e,t,n){if(n)return"weak";switch(e){case"low":return"weak";case"medium":return t==="inferred"?"weak":"qualified";case"high":return t==="inferred"?"qualified":"strong"}}function o1(e){let t=e.observation!==null?ib(e.observation):null;return t!==null&&t.statusEvidence==="limited_failure"&&t.recoveryPosture==="evidence_required"&&t.baselineConsequence==="medium"&&e.ontology.consequence===t.baselineConsequence&&!e.blockedLikeStatus?"weak":I_(e.ontology.confidence,e.ontology.source,e.abstained)}function T_(e){return e.observation!==void 0?ib(e.observation):null}function x_(e){switch(e.provenance?.relationHints){case"source":return"explicit";case"hint":return"hinted";case"inferred":return"inferred";default:return"inferred"}}function a1(e,t){switch(x_(e)){case"explicit":return"strong";case"hinted":return t?"weak":"qualified";case"inferred":return I_(e.confidence,"inferred",t)}}var c1=1,_n=c1,J={ambiguity:{nonBlockingActivationThreshold:180,promotionMargin:20},attentionValue:{memorySufficiency:{toolFamilyPresentations:3,toolFamilyResponses:3,consequenceReviewedCount:4},responseAffinity:{fastLatencyMs:2e3,mediumLatencyMs:5e3,fastBoost:8,mediumBoost:4},consequenceCalibration:{highRejectionRate:.5,mediumRejectionRate:.25,adjustments:{low:{highRate:8,mediumRate:4},medium:{highRate:4,mediumRate:2},high:{highRate:-4,mediumRate:-2}}},contextCost:{highRate:.6,mediumRate:.3,highPenalty:-6,mediumPenalty:-3},deferralAffinity:{highRate:.6,mediumRate:.3,highBoost:6,mediumBoost:3}},queuePlanner:{minimumDwellMs:3e4,streamContinuityMargin:20,conflictingInterruptMargin:10,statusBurstWindowMs:6e4,urgentBacklogWindowMs:9e4,deferredEscalationThreshold:3,returnedEscalationThreshold:2,escalationScoreSlack:10,highContextQueueMargin:8,mediumContextQueueMargin:4,actionableEpisodeEvidenceThreshold:4,actionableEpisodeScoreSlack:15},pressureForecast:{freshness:{demandMs:2e4,residualMs:12e4},visibleInterruptiveBoost:{elevatedCount:1,highCount:2},recentDemand:{elevatedCount:5,highCount:8},responseLatencyMs:{elevated:8e3,high:15e3},deferredPressure:{elevatedSuppressedCount:1,highSuppressedCount:2,elevatedDeferredCount:2,highDeferredCount:4},slowClearance:{presentedCount:4,responseRate:.3},scoreBands:{elevatedLevel:2,highLevel:5,risingRisk:3,highRisk:6}},attentionBudget:{thresholdOffset:{elevated:6,high:12},recentDecisions:{elevatedCount:4,highCount:8},responseLatencyMs:{elevated:8e3,high:15e3},deferredCount:{elevated:2,high:4},interruptiveVisible:{elevated:1,high:2},scoreBands:{elevatedScore:2,highScore:5}},episodeEvidence:{blockingBoost:4,recurringEpisodeBoost:1,persistentEpisodeBoost:1,highSignalBoost:2,multiModeBoost:1,stackingBoost:1,relationRepeatBoost:1,relationEscalationBoost:2,actionableThreshold:4,staleAfterMs:15*6e4}};function ro(e,t){return(e??[]).some(n=>n.kind===t)}function Rd(e){let t=R_(e);return t.length===1?t[0]??null:null}function l1(e){return R_(e).length>1}function R_(e){let t=new Set;for(let n of e??[])typeof n.target=="string"&&n.target.length>0&&t.add(n.target);return[...t]}function C_(e){let t=up(e);return!e.blocking&&e.responseSpec.kind==="none"&&ro(e.relationHints,"resolves")&&!l1(e.relationHints)&&(t===null||t!=="weak")}function so(e=Date.now){return{nowMs:()=>e(),nowIso:()=>nr(e()),parse:tr,add:u1,diff:pp}}function tr(e){let t=Date.parse(e);return Number.isNaN(t)?null:t}function nr(e){return new Date(e).toISOString()}function u1(e,t){let n=tr(e);return n===null?null:nr(n+t)}function pp(e,t){let n=tr(e),s=tr(t);return n===null||s===null?null:n-s}var Fe=J.episodeEvidence,d1=1440*6e4,p1=1024,m1=class{byKey=new Map;byId=new Map;byInteractionId=new Map;nextSequenceByKey=new Map;clock;dormantRetentionMs;maxDormantEpisodes;latestObservedAtMs=null;prunedRecords=0;constructor(e={}){this.clock=e.clock??so(),this.dormantRetentionMs=e.dormantRetentionMs??d1,this.maxDormantEpisodes=e.maxDormantEpisodes??p1}assign(e){let t=this.clock.parse(e.timestamp);t!==null&&(this.latestObservedAtMs===null||t>this.latestObservedAtMs)&&(this.latestObservedAtMs=t);let n=f1(e),s=this.byInteractionId.get(e.interactionId),i=s?this.byId.get(s):void 0,o=i&&!this.shouldRollEpisode(i,e.timestamp)?i:void 0,a=o?null:this.byKey.get(n),c=o??this.resolveAssignableRecord(n,a,e),l=this.evolveRecord(c,e),d=w1(c,e,this.clock);return v1(l,this.byKey.get(l.key))&&this.byKey.set(l.key,l),this.byId.set(l.id,l),d||this.byInteractionId.set(e.interactionId,l.id),this.pruneDormantRecords(),{...e,episodeId:l.id,episodeKey:l.key,episodeState:l.state,episodeSize:l.size,episodeEvidenceScore:l.evidenceScore,episodeEvidenceReasons:[...l.evidenceReasons],...d?{episodeObsolete:!0}:{}}}resolveInteraction(e){let t=this.byInteractionId.get(e);if(!t)return;let n=this.byId.get(t);if(n){this.byKey.get(n.key)?.id===n.id&&this.byKey.delete(n.key),this.byId.delete(n.id);for(let s of n.interactions)this.byInteractionId.delete(s)}}readFrameEpisode(e){if(!e)return null;let t=e.metadata?.episode;if(!t||typeof t!="object")return null;let n=Jn(t,"id"),s=Jn(t,"key"),i=N_(t,"state"),o=MS(t,"size"),a=MS(t,"evidenceScore")??0,c=T1(t,"evidenceReasons"),l=Jn(t,"lastInteractionId"),d=Jn(t,"updatedAt");return!n||!s||!i||o===null||!l||!d?null:{id:n,key:s,state:i,size:o,evidenceScore:a,evidenceReasons:c,lastInteractionId:l,updatedAt:d}}stats(){let e=0,t=0,n=null;for(let s of this.byId.values())this.isActiveRecord(s)?e+=1:t+=1,(n===null||s.updatedAt>n)&&(n=s.updatedAt);return{activeRecords:e,dormantRecords:t,retainedRecords:this.byId.size,boundInteractions:this.byInteractionId.size,dormantRetentionMs:this.dormantRetentionMs,maxDormantRecords:this.maxDormantEpisodes,prunedRecords:this.prunedRecords,latestEpisodeAt:n}}createRecord(e,t){let n=(this.nextSequenceByKey.get(e)??0)+1;this.nextSequenceByKey.set(e,n);let s=PS(t),i=O_(t)?(t.relationHints??[]).map(o=>o.kind):[];return{id:`episode:${e}:${n}`,key:e,state:s?"resolved":t.blocking?"actionable":"emerging",size:0,evidenceScore:s?0:t.blocking?Fe.blockingBoost:0,evidenceReasons:s?["semantic relation hints indicate this episode is resolved"]:t.blocking?["operator-facing work makes this episode immediately actionable"]:[],lastInteractionId:t.interactionId,updatedAt:t.timestamp,interactions:new Set,modes:new Set([t.mode]),highSignals:t.consequence==="high"||t.tone==="critical"?1:0,blockingSignals:t.blocking?1:0,relationKinds:new Set(i)}}resolveAssignableRecord(e,t,n){if(!t)return this.createRecord(e,n);if(this.shouldRollEpisode(t,n.timestamp)){let s={...t,state:"stale"};return this.byId.set(s.id,s),this.createRecord(e,n)}return t}shouldRollEpisode(e,t){if(zr(e.state))return A1(t,e.updatedAt,this.clock);let n=this.clock.parse(e.updatedAt),s=this.clock.parse(t);return n===null||s===null?!1:s-n>=Fe.staleAfterMs}evolveRecord(e,t){if(L_(e,t,this.clock))return e;if(zr(e.state))return I1(e,t);let n=new Set(e.interactions);n.add(t.interactionId);let s=new Set(e.modes);s.add(t.mode);let i=_1(e.relationKinds,t),o={...e,lastInteractionId:t.interactionId,updatedAt:t.timestamp,size:n.size,interactions:n,modes:s,relationKinds:i,blockingSignals:e.blockingSignals+(t.blocking?1:0),highSignals:e.highSignals+(t.consequence==="high"||t.tone==="critical"?1:0)},a=b1(o,t);return PS(t)?{...o,evidenceScore:0,evidenceReasons:["semantic relation hints indicate this episode is resolved"],state:"resolved"}:{...o,evidenceScore:a.score,evidenceReasons:a.reasons,state:S1(e.state,t,o,a.score)}}pruneDormantRecords(){let e=[...this.byId.values()].filter(s=>!this.isActiveRecord(s));if(this.latestObservedAtMs!==null)for(let s of e){let i=this.clock.parse(s.updatedAt);i!==null&&this.latestObservedAtMs-i>this.dormantRetentionMs&&this.deleteRecord(s)}let t=[...this.byId.values()].filter(s=>!this.isActiveRecord(s)).sort((s,i)=>s.updatedAt.localeCompare(i.updatedAt));if(t.length<=this.maxDormantEpisodes)return;let n=t.length-this.maxDormantEpisodes;for(let s of t.slice(0,n))this.deleteRecord(s)}isActiveRecord(e){return this.byKey.get(e.key)?.id===e.id&&!zr(e.state)}deleteRecord(e){this.byKey.get(e.key)?.id===e.id&&this.byKey.delete(e.key),this.byId.delete(e.id);for(let t of e.interactions)this.byInteractionId.get(t)===e.id&&this.byInteractionId.delete(t);this.prunedRecords+=1}};function f1(e){let t=e.source?.kind??e.source?.id??"unknown",n=y1(e),s=e.blocking?"interruptive":"status";return k1([t,s,n].join(":"))}function g1(e){return e?Jn(e.metadata?.episode,"id"):null}function h1(e){return e?N_(e.metadata?.episode,"state"):null}function zr(e){return e==="stale"||e==="resolved"}function io(e){return e.episodeState==="actionable"}function mp(e,t,n){return e!=null&&e.interactionId!==n&&g1(e)===t&&!zr(h1(e))}function Je(e,t,n={}){let s=n.lanes??["now","next","ambient"],i=[];return s.includes("now")&&i.push(e?.now),s.includes("next")&&i.push(...e?.next??[]),s.includes("ambient")&&i.push(...e?.ambient??[]),i.filter(o=>mp(o,t,n.excludedInteractionId))}function y1(e){let t=Rd(e.relationHints);if(t)return t;let s=(e.context?.items??[]).find(o=>{let a=o.id.toLowerCase(),c=o.label.toLowerCase();return a.includes("file")||a==="path"||a.includes("issue")||a==="command"||c.includes("file")||c.includes("path")||c.includes("issue")||c.includes("command")});if(s?.value)return s.value;let i=e.summary??e.title;return i.length>0?i:e.taskId}function S1(e,t,n,s){return t.blocking||s>=Fe.actionableThreshold?"actionable":e==="actionable"?"waiting":n.size>=2?"batched":"emerging"}function b1(e,t){let n=0,s=[];return t.blocking&&(n+=Fe.blockingBoost,s.push("operator-facing work makes this episode immediately actionable")),e.size>=2&&(n+=Fe.recurringEpisodeBoost,s.push("multiple related interactions have accumulated in this episode")),e.size>=3&&(n+=Fe.persistentEpisodeBoost,s.push("the same episode keeps recurring without resolution")),e.highSignals>=1&&(n+=Fe.highSignalBoost,s.push("at least one related interaction carried high consequence or critical tone")),e.modes.size>=2&&(n+=Fe.multiModeBoost,s.push("related work has spread across multiple interaction modes")),e.highSignals>=1&&e.size>=2&&(n+=Fe.stackingBoost,s.push("high-signal evidence is stacking up across the episode")),e.relationKinds.has("repeats")&&(n+=Fe.relationRepeatBoost,s.push("semantic relation hints indicate this issue is recurring")),e.relationKinds.has("escalates")&&(n+=Fe.relationEscalationBoost,s.push("semantic relation hints indicate this issue is escalating")),{score:n,reasons:s}}function _1(e,t){let n=new Set(e);if(!O_(t))return n;for(let s of t.relationHints??[])n.add(s.kind);return n}function k1(e){return e.toLowerCase().replace(/[^a-z0-9:/._-]+/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,"").slice(0,120)}function O_(e){let t=up(e);return t===null||t!=="weak"}function PS(e){return C_(e)}function v1(e,t){return!t||t.id===e.id?!0:!zr(e.state)}function L_(e,t,n){return E1(t.timestamp,e.updatedAt,n)}function E1(e,t,n){let s=n.parse(e),i=n.parse(t);return s!==null&&i!==null?s<i:e<t}function A1(e,t,n){let s=n.parse(e),i=n.parse(t);return s!==null&&i!==null?s>i:e>t}function w1(e,t,n){return L_(e,t,n)}function I1(e,t){let n=new Set(e.interactions);n.add(t.interactionId);let s=new Set(e.modes);return s.add(t.mode),{...e,size:n.size,interactions:n,modes:s}}function Jn(e,t){if(!e||typeof e!="object"||!(t in e))return null;let n=e[t];return typeof n=="string"&&n.length>0?n:null}function MS(e,t){if(!e||typeof e!="object"||!(t in e))return null;let n=e[t];return typeof n=="number"?n:null}function N_(e,t){let n=Jn(e,t);switch(n){case"emerging":case"actionable":case"batched":case"waiting":case"stale":case"resolved":return n;default:return null}}function T1(e,t){if(!e||typeof e!="object"||!(t in e))return[];let n=e[t];return Array.isArray(n)?n.filter(s=>typeof s=="string"&&s.length>0):[]}function x1(e){switch(e){case"approval":return"approval_request";case"choice":return"question_request";case"form":return"form_request"}}function R1(e){switch(e){case"approval":return"permission_request";case"choice":case"form":return"question_request"}}function C1(e,t){switch(e){case"approval":return t==="high"?"A high-risk action needs explicit operator approval.":"Approval is required before work can continue.";case"choice":return"A decision is required before work can continue.";case"form":return"Additional input is required before work can continue."}}function mn(e,t){if(t?.wasCancelled)return"Work was cancelled and may need review.";switch(e){case"failed":return"Work has failed and should be reviewed.";case"blocked":return"Work is blocked and may require operator attention.";case"running":case"waiting":case"completed":return t?.impliedAsk?"Status text implies the operator may need to respond.":void 0}}function O1(e){switch(e){case"high":return"A failed status carried high-consequence observation output that should be reviewed.";case"medium":case"low":return}}function L1(e){if(e.some(t=>t.kind==="resolves"))return"A related episode appears resolved and can update attention state."}function Gn(e,t){if(t?.wasCancelled)return["task cancellation is an explicit lifecycle fact"];switch(e){case"failed":return["task status explicitly indicates failure"];case"blocked":return["task status explicitly indicates blocked work"];case"running":case"waiting":case"completed":return t?.impliedAsk?["status wording suggests an implied operator request"]:["task update carries a non-blocking lifecycle status"]}}function DS(e){switch(e){case"task_started":return["task start is an explicit lifecycle fact"];case"completion":return["task completion is an explicit lifecycle fact"]}}function N1(){return["task update status explicitly indicates completed work"]}function P1(e){if(e.isQuestion)return[];let t=e.tokens,n=[],s=M1(t);if(s===null)return n;if(t[s]==="replace"){let i=t.indexOf("with",s+1);return i===-1?[]:[{start:s,end:i+1,kind:"supersedes",order:0,polarity:"asserted"}]}for(let i=0;i<t.length;i+=1)t[i]==="instead"&&t[i+1]!=="of"&&n.push({start:i,end:i+1,kind:"supersedes",order:0,polarity:D1(t,i)?"negated":"asserted"});return n}function M1(e){if(F1(e,[["do","not"],["don","t"],["dont"],["never"],["not"]]))return null;let t=e[0]==="please"?1:0;return["use","follow","switch","adopt","replace"].includes(e[t]??"")?t:null}function D1(e,t){let n=e.slice(Math.max(0,t-4),t);return n.includes("not")||n.includes("never")||n.at(-1)==="no"||Ni(n,["do","not"])||Ni(n,["don","t"])||Ni(n,["did","not"])||Ni(n,["didn","t"])}function F1(e,t){return t.some(n=>n.every((s,i)=>e[i]===s))}function Ni(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(t.every((s,i)=>e[n+i]===s))return!0;return!1}function $1(e){let t=new Set,n=[];for(let s of e){let i=`${s.kind}:${s.target??""}`;t.has(i)||(t.add(i),n.push(s))}return n}var U1=12,j1=new Set(["never","not"]),z1=new Set(["could","expected","hopefully","may","might","should","would"]),q1=new Set(["check","confirm","determine","ensure","see","validate","verify"]),B1=new Set(["can","could","need","needed","needs","please","rerun","retry","run","should","to","try","trying","will","would"]),P_=new Set(["if","that","whether"]),V1=[["are","we"],["can","you"],["could","you"],["did","it"],["do","you"],["does","it"],["is","it"],["should","i"],["should","we"],["was","it"],["would","you"]];function FS(e,t){let s=e.tokens.slice(Math.max(0,t-U1),t),i=s.slice(-4);return K1(i)?"negated":e.isQuestion||W1(s)?"prospective":H1(i)?"modal":Z1(s)?"prospective":"asserted"}function K1(e){return e.some(t=>j1.has(t))||Cd(e,["did","n","t"])||Cd(e,["did","not"])}function H1(e){return e.some(t=>z1.has(t))}function W1(e){return V1.some(t=>Cd(e,t))}function Z1(e){for(let t=0;t<e.length;t+=1){let n=e[t];if(!q1.has(n))continue;let s=e[t-1],i=e[t+1];if(s===void 0||Y1(s)||B1.has(s)||i!==void 0&&P_.has(i)||G1(e,t))return!0}return!1}function G1(e,t){return e.slice(t+1,t+5).some(n=>P_.has(n))}function Y1(e){return/^\d+$/.test(e)}function Cd(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(t.every((s,i)=>e[n+i]===s))return!0;return!1}var $S=new Map([["repeats",0],["supersedes",1],["escalates",2]]);function M_(e){let t=eM(e),n=X1(e,mb,[])||t.some(d=>d.polarity==="asserted"&&(d.kind==="escalates"||d.kind==="supersedes")),s=tM(t),i=[...s.values()].sort((d,m)=>d.order-m.order).filter(d=>d.polarity==="asserted"&&(d.kind==="resolves"||n)&&(d.kind!=="resolves"||d.direct||n)),o=i.at(-1);if(o===void 0)return[];if(o.kind==="resolves")return[{kind:"same_issue"},{kind:"resolves"}];let a=s.get("resolves"),c=a?.polarity==="asserted"?a.order:void 0,l=i.filter(d=>d.kind!=="resolves"&&(c===void 0||d.order>c)).sort(J1).map(d=>({kind:d.kind}));return l.length===0?[]:$1([{kind:"same_issue"},...l])}function J1(e,t){return($S.get(e.kind)??Number.MAX_SAFE_INTEGER)-($S.get(t.kind)??Number.MAX_SAFE_INTEGER)||e.order-t.order}function X1(e,t,n){for(let s of Q1(e,t,n))if(s.polarity==="asserted")return!0;return!1}function Q1(e,t,n){let s=[];for(let{tokens:i}of D_(e)){let o=n.flatMap(c=>fn(i,At(c))),a=o.map(c=>({start:c.start,polarity:"negated"}));for(let c of t)for(let l of fn(i,At(c)))a.push({start:l.start,polarity:ji(l,o)||F_(i,l.start)?"negated":"asserted"});a.sort((c,l)=>c.start-l.start).forEach(c=>s.push({polarity:c.polarity}))}return s}function eM(e){let t=[],n=0;for(let s of D_(e)){let i=[...yd(s,"repeats",rR,sR),...nM(s),...yd(s,"supersedes",cR,[]),...P1(s),...yd(s,"escalates",lR,uR)].sort((o,a)=>o.start-a.start||o.end-a.end);for(let o of i)t.push({kind:o.kind,order:n,polarity:o.polarity,...o.direct!==void 0?{direct:o.direct}:{}}),n+=1}return t}function tM(e){let t=new Map;for(let n of e)t.set(n.kind,n);return t}function yd(e,t,n,s){let i=s.flatMap(a=>fn(e.tokens,At(a))),o=i.map(a=>({...a,kind:t,order:0,polarity:"negated"}));for(let a of n)for(let c of fn(e.tokens,At(a)))o.push({...c,kind:t,order:0,polarity:ji(c,i)||F_(e.tokens,c.start)?"negated":"asserted"});return o}function nM(e){let t=oR.flatMap(s=>fn(e.tokens,At(s))),n=t.map(s=>({...s,kind:"resolves",order:0,polarity:"negated"}));for(let s of iR)for(let i of fn(e.tokens,At(s)))n.push({...i,kind:"resolves",order:0,polarity:ji(i,t)?"negated":FS(e,i.start),direct:!0});for(let s of aR)for(let i of fn(e.tokens,At(s)))n.push({...i,kind:"resolves",order:0,polarity:ji(i,t)?"negated":FS(e,i.start),direct:!1});return n}function D_(e){let t=[],n=0;for(let i of e.matchAll(/[!?;:]+|\.+(?=\s|$)|\b(?:but|however|yet)\b/gi)){let o=i.index,a=US(e.slice(n,o),i[0].includes("?"));a!==null&&t.push(a),n=o+i[0].length}let s=US(e.slice(n),!1);return s!==null&&t.push(s),t}function US(e,t){let n=At(e);return n.length===0?null:{tokens:n,isQuestion:t}}function At(e){return dR(e).match(/[a-z0-9]+/g)??[]}function fn(e,t){if(t.length===0||t.length>e.length)return[];let n=[];for(let s=0;s<=e.length-t.length;s+=1)t.every((i,o)=>e[s+o]===i)&&n.push({start:s,end:s+t.length});return n}function ji(e,t){return t.some(n=>e.start>=n.start&&e.end<=n.end)}function F_(e,t){let n=e.slice(Math.max(0,t-4),t);return n.includes("not")||n.includes("never")||n.at(-1)==="no"||jS(n,["did","not"])||jS(n,["didn","t"])}function jS(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(t.every((s,i)=>e[n+i]===s))return!0;return!1}function Od(e){return[...new Set(e)]}function rM(e){if(Ae(e,db))return!1;if(Ae(e,Ux))return!0;let t=z(e);return jx.some(n=>n.test(t))}function sM(e){return Ae(e,db)?null:Ae(e,zx)?"blocking":Ae(e,qx)?"waiting":null}function Ur(e,t,n){return AP(e,n)("routine_success")||n==="read"||n==="search"?t:iM(e,Bx)?"high":(n==="write"||n==="edit"||Ue(n))&&t==="low"?"medium":t}function iM(e,t){return t.some(n=>oM(e,n))}function oM(e,t){return fb(e,t)}function fp(e={}){let t=e.base,n=e.semantic,s=t?.whyNow??n?.whyNow??e.fallbackWhyNow,i=Od([...t?.factors??[],...n?.factors??[],...e.extraFactors??[]]);if(!(t===void 0&&s===void 0&&i.length===0))return{...t??{},...s!==void 0?{whyNow:s}:{},...i.length>0?{factors:i}:{}}}var aM=class{evaluate(e){switch(e.type){case"task.started":return{kind:"candidate",candidate:{taskId:e.taskId,interactionId:`interaction:${e.taskId}:status`,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},mode:"status",tone:"ambient",consequence:"low",title:e.title,responseSpec:{kind:"none"},priority:"background",blocking:!1,timestamp:e.timestamp,...e.summary!==void 0?{summary:e.summary}:{},...zS(e)}};case"task.updated":return{kind:"candidate",candidate:this.evaluateTaskUpdate(e)};case"human.input.requested":return{kind:"candidate",candidate:this.evaluateHumanInput(e)};case"task.completed":case"task.cancelled":return{kind:"clear",taskId:e.taskId};default:return mM(e)}}evaluateTaskUpdate(e){let t=ap(e),n=this.statusDispositionForStatus(e,t);return{taskId:e.taskId,interactionId:`interaction:${e.taskId}:status`,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},mode:"status",tone:n.tone,consequence:n.consequence,title:e.title,responseSpec:n.responseSpec,priority:n.priority,blocking:!1,timestamp:e.timestamp,...e.summary!==void 0?{summary:e.summary}:{},...e.semantic?.relationHints?.length?{relationHints:e.semantic.relationHints}:{},judgmentInput:t,...dM(e),...pM(e,n.includeFailureProvenance)}}evaluateHumanInput(e){let t=this.createActions(e),n=this.createResponseSpec(e,t),s=e.request.kind==="approval"?e.toolFamily:void 0;return{taskId:e.taskId,interactionId:e.interactionId,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...s!==void 0?{toolFamily:s}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},mode:e.request.kind,tone:e.tone??"focused",consequence:e.consequence??"medium",title:e.title,summary:e.summary,...e.semantic?.relationHints?.length?{relationHints:e.semantic.relationHints}:{},responseSpec:n,priority:this.priorityForHumanInput(e),blocking:!0,timestamp:e.timestamp,...zS(e),...e.context!==void 0?{context:e.context}:{},...(()=>{let i=fp({base:e.provenance,semantic:e.semantic});return i!==void 0?{provenance:i}:{}})()}}priorityForHumanInput(e){return e.request.kind==="approval"&&e.consequence==="low"?"normal":"high"}createActions(e){switch(e.request.kind){case"approval":return[{id:"approve",label:"Approve",kind:"approve",emphasis:"primary"},{id:"reject",label:"Reject",kind:"reject",emphasis:"danger"}];case"choice":case"form":return[{id:"submit",label:"Continue",kind:"submit",emphasis:"primary"},{id:"cancel",label:"Cancel",kind:"cancel",emphasis:"secondary"}];default:return qS(e.request)}}createResponseSpec(e,t){switch(e.request.kind){case"approval":return e.request.requireReason!==void 0?{kind:"approval",actions:t,requireReason:e.request.requireReason}:{kind:"approval",actions:t};case"choice":return{kind:"choice",selectionMode:e.request.selectionMode,...e.request.allowTextResponse!==void 0?{allowTextResponse:e.request.allowTextResponse}:{},options:e.request.options,actions:t};case"form":return{kind:"form",fields:e.request.fields,actions:t};default:return qS(e.request)}}statusDispositionForStatus(e,t){if(A_(t))return uM(t.ontology?.consequence??"low",e.status);if(E_(t))return{priority:"normal",tone:"focused",consequence:"medium",responseSpec:gn(e.status),includeFailureProvenance:e.status==="failed"};switch(e.status){case"failed":return cM(e,t);case"blocked":return{priority:"normal",tone:"focused",consequence:"medium",responseSpec:gn(e.status),includeFailureProvenance:!1};case"running":case"waiting":case"completed":return{priority:"background",tone:"ambient",consequence:"low",responseSpec:gn(e.status),includeFailureProvenance:!1};default:return $_(e.status)}}};function cM(e,t){return lM(t)?{priority:"normal",tone:"focused",consequence:"medium",responseSpec:gn(e.status),includeFailureProvenance:!0}:{priority:"high",tone:"critical",consequence:"high",responseSpec:gn(e.status),includeFailureProvenance:!0}}function lM(e){return i1(e)}function uM(e,t){switch(e){case"low":return{priority:"background",tone:"ambient",consequence:"low",responseSpec:{kind:"none"},includeFailureProvenance:!1};case"medium":return{priority:"normal",tone:"focused",consequence:"medium",responseSpec:gn(t),includeFailureProvenance:!1};case"high":return{priority:"high",tone:"critical",consequence:"high",responseSpec:gn(t),includeFailureProvenance:!1};default:return fM(e)}}function dM(e){let t=e.context,n=t?.items,s=n!==void 0&&n.length>0;return e.progress===void 0&&t?.stage===void 0&&!s?{}:{context:{...t?.stage!==void 0?{stage:t.stage}:{},...e.progress!==void 0?{progress:e.progress}:{},...s?{items:n}:{}}}}function pM(e,t){let n=fp({semantic:e.semantic,fallbackWhyNow:e.status==="blocked"?mn("blocked"):e.status==="failed"&&t?mn("failed"):void 0,extraFactors:e.status==="blocked"||e.status==="failed"&&t?[e.status]:[]});return n===void 0?{}:{provenance:n}}function gn(e){switch(e){case"blocked":case"failed":return{kind:"acknowledge",actions:[{id:"acknowledge",label:"Acknowledge",kind:"acknowledge",emphasis:"primary"}]};case"running":case"waiting":case"completed":return{kind:"none"};default:return $_(e)}}function zS(e){return{judgmentInput:ap(e)}}function mM(e){throw new Error(`Unhandled ApertureEvent in event evaluator: ${JSON.stringify(e)}`)}function qS(e){throw new Error(`Unhandled human input request in event evaluator: ${JSON.stringify(e)}`)}function $_(e){throw new Error(`Unhandled task status in event evaluator: ${e}`)}function fM(e){throw new Error(`Unhandled consequence in event evaluator: ${e}`)}var gM=class{plan(e,t){let n=t?.interactionId===e.interactionId,s=t?.metadata?.attention,i={...s&&typeof s=="object"?s:{},score:ux(e),scoreOffset:e.attentionScoreOffset??0,rationale:e.attentionRationale??[]},o=t?.metadata?.episode,a=e.toolFamily??(typeof t?.metadata?.toolFamily=="string"?t.metadata.toolFamily:void 0),c=e.episodeId?{...o&&typeof o=="object"?o:{},id:e.episodeId,key:e.episodeKey,state:e.episodeState,size:e.episodeSize??1,evidenceScore:e.episodeEvidenceScore??0,evidenceReasons:e.episodeEvidenceReasons??[],lastInteractionId:e.interactionId,updatedAt:e.timestamp}:o,l=t?.metadata?.semantic,d=e.relationHints?.length?{...l&&typeof l=="object"?l:{},relationHints:e.relationHints}:l;return{id:n?t.id:`frame:${e.interactionId}`,taskId:e.taskId,interactionId:e.interactionId,...e.source!==void 0?{source:e.source}:{},version:(t?.version??0)+1,mode:e.mode,tone:e.tone,consequence:e.consequence,title:e.title,responseSpec:e.responseSpec,timing:{createdAt:t?.timing.createdAt??e.timestamp,updatedAt:e.timestamp},metadata:{...t?.metadata??{},...e.metadata??{},attention:i,...a!==void 0?{toolFamily:a}:{},...d?{semantic:d}:{},...c?{episode:c}:{}},...e.summary!==void 0?{summary:e.summary}:{},...e.context!==void 0?{context:e.context}:{},...e.provenance!==void 0?{provenance:e.provenance}:{}}}},hM=1800*1e3,BS=256,yM=1440*6e4,SM=1024,bM=class{byTaskId=new Map;clock;taskRetentionMs;maxTrackedTasks;latestObservedAtMs=null;prunedTasks=0;constructor(e={}){this.clock=e.clock??so(),this.taskRetentionMs=e.taskRetentionMs??yM,this.maxTrackedTasks=e.maxTrackedTasks??SM}record(e){let n=[...this.byTaskId.get(e.taskId)??[],e];this.byTaskId.set(e.taskId,n.length>BS?n.slice(-BS):n);let s=this.clock.parse(e.timestamp);s!==null&&(this.latestObservedAtMs===null||s>this.latestObservedAtMs)&&(this.latestObservedAtMs=s),this.prune()}list(e){return e!==void 0?[...this.byTaskId.get(e)??[]]:[...this.byTaskId.values()].flat().sort((t,n)=>t.timestamp.localeCompare(n.timestamp))}summarize(e){return U_(this.list(e),this.clock)}stats(){let e=0,t=null,n=null;for(let s of this.byTaskId.values()){e+=s.length;let i=s[0]?.timestamp??null,o=s[s.length-1]?.timestamp??null;i&&(t===null||i<t)&&(t=i),o&&(n===null||o>n)&&(n=o)}return{taskCount:this.byTaskId.size,signalCount:e,oldestSignalAt:t,latestSignalAt:n,taskRetentionMs:this.taskRetentionMs,maxTrackedTasks:this.maxTrackedTasks,prunedTasks:this.prunedTasks}}prune(){if(this.latestObservedAtMs!==null)for(let[n,s]of this.byTaskId.entries()){let i=s[s.length-1],o=i?this.clock.parse(i.timestamp):null;o!==null&&this.latestObservedAtMs-o>this.taskRetentionMs&&(this.byTaskId.delete(n),this.prunedTasks+=1)}if(this.byTaskId.size<=this.maxTrackedTasks)return;let e=this.byTaskId.size-this.maxTrackedTasks,t=[...this.byTaskId.entries()].map(([n,s])=>({taskId:n,latestAt:s[s.length-1]?.timestamp??""})).sort((n,s)=>n.latestAt.localeCompare(s.latestAt)).slice(0,e);for(let n of t)this.byTaskId.delete(n.taskId),this.prunedTasks+=1}};function U_(e,t=so()){let n=_M(e,t),s={presented:0,viewed:0,responded:0,dismissed:0,deferred:0,contextExpanded:0,contextSkipped:0,timedOut:0,returned:0,attentionShifted:0},i={next:0,suppressed:0,manual:0},o=0,a=0,c=0,l=0;for(let d of n)switch(d.kind){case"presented":s.presented+=1;break;case"viewed":s.viewed+=1;break;case"responded":s.responded+=1,d.latencyMs!==void 0&&(o+=d.latencyMs,a+=1);break;case"dismissed":s.dismissed+=1,d.latencyMs!==void 0&&(c+=d.latencyMs,l+=1);break;case"deferred":s.deferred+=1,d.reason!==void 0&&(i[d.reason]+=1);break;case"context_expanded":s.contextExpanded+=1;break;case"context_skipped":s.contextSkipped+=1;break;case"timed_out":s.timedOut+=1;break;case"returned":s.returned+=1;break;case"attention_shifted":s.attentionShifted+=1;break}return{recentSignals:n.length,lifetimeSignals:e.length,counts:s,deferred:i,responseRate:s.presented>0?s.responded/s.presented:0,dismissalRate:s.presented>0?s.dismissed/s.presented:0,averageResponseLatencyMs:a>0?Math.round(o/a):null,averageDismissalLatencyMs:l>0?Math.round(c/l):null,lastSignalAt:e.length>0?e[e.length-1]?.timestamp??null:null}}function _M(e,t){let n=e.slice(-32),s=n[n.length-1]?.timestamp;if(s===void 0)return n;let i=t.parse(s);if(i===null)return n;let o=n.filter(a=>{let c=t.parse(a.timestamp);return c===null?!0:i-c<=hM});return o.length>0?o:n}function Ld(e){return eo(e)}function kM(e){return l_(e)}function gp(e){return e.mode==="status"?Ld(e):e.mode!=="approval"||e.activityClass!==void 0&&e.activityClass!=="permission_request"?null:kM(e)}function zi(e){return e?e.kind??e.id:null}function j_(e,t,n){let s=EM(e,t),i=AM(e,t),o=wM(e,t);return{...e,version:_n,updatedAt:n,sessionCount:e.sessionCount+1,...Object.keys(s).length>0?{toolFamilies:s}:{},...Object.keys(i).length>0?{sourceTrust:i}:{},...Object.keys(o).length>0?{consequenceProfiles:o}:{}}}function es(e){let t={consequence:e.consequence},n=z_(e);n&&(t.toolFamily=n);let s=zi(e.source);s&&(t.sourceKey=s);let i=e.metadata?.episode;return i&&typeof i=="object"&&!Array.isArray(i)&&(t.episode=i),t}function vM(e){let t={consequence:e.consequence},n=z_(e);n&&(t.toolFamily=n);let s=zi(e.source);return s&&(t.sourceKey=s),t}function z_(e){return gp(e)}function EM(e,t){let n={...e.toolFamilies??{}},s=new Map,i=new Map;for(let o of t){let a=qi(o.metadata,"toolFamily");if(!a)continue;let c=`${a}::${o.interactionId}`,l=i.get(c)??{toolFamily:a,presented:!1,responded:!1,dismissed:!1,contextExpanded:!1,deferred:!1,returned:!1};switch(o.kind){case"presented":l.presented=!0;break;case"responded":l.responded=!0,l.dismissed=!1,o.latencyMs!==void 0&&(l.responseLatencyMs=o.latencyMs);break;case"dismissed":l.responded||(l.dismissed=!0,o.latencyMs!==void 0&&(l.dismissalLatencyMs=o.latencyMs));break;case"context_expanded":l.contextExpanded=!0;break;case"deferred":l.deferred=!0;break;case"returned":l.returned=!0;break}i.set(c,l)}for(let o of i.values()){let a=s.get(o.toolFamily)??{presentations:0,responses:0,dismissals:0,responseLatencyTotal:0,responseLatencyCount:0,dismissalLatencyTotal:0,dismissalLatencyCount:0,contextExpanded:0,deferrals:0,returns:0};(o.presented||o.responded||o.dismissed)&&(a.presentations+=1),o.responded?(a.responses+=1,o.responseLatencyMs!==void 0&&(a.responseLatencyTotal+=o.responseLatencyMs,a.responseLatencyCount+=1)):o.dismissed&&(a.dismissals+=1,o.dismissalLatencyMs!==void 0&&(a.dismissalLatencyTotal+=o.dismissalLatencyMs,a.dismissalLatencyCount+=1)),o.contextExpanded&&(a.contextExpanded+=1),o.deferred&&(a.deferrals+=1,o.returned&&(a.returns+=1)),s.set(o.toolFamily,a)}for(let[o,a]of s.entries()){let c=n[o]??{presentations:0,responses:0,dismissals:0},l=c.presentations+a.presentations,d=c.responses+a.responses,m=c.dismissals+a.dismissals,g=a.responseLatencyCount>0?a.responseLatencyTotal/a.responseLatencyCount:void 0,h=a.dismissalLatencyCount>0?a.dismissalLatencyTotal/a.dismissalLatencyCount:void 0,y=c.contextExpansionRate!==void 0?c.contextExpansionRate*c.presentations:0,_=a.contextExpanded;n[o]={presentations:l,responses:d,dismissals:m,...g!==void 0?{avgResponseLatencyMs:VS(c.avgResponseLatencyMs,c.responses,g,a.responseLatencyCount)}:c.avgResponseLatencyMs!==void 0?{avgResponseLatencyMs:c.avgResponseLatencyMs}:{},...h!==void 0?{avgDismissalLatencyMs:VS(c.avgDismissalLatencyMs,c.dismissals,h,a.dismissalLatencyCount)}:c.avgDismissalLatencyMs!==void 0?{avgDismissalLatencyMs:c.avgDismissalLatencyMs}:{},...l>0?{contextExpansionRate:Nd((y+_)/l)}:c.contextExpansionRate!==void 0?{contextExpansionRate:c.contextExpansionRate}:{},...a.deferrals>0?{returnAfterDeferralRate:Nd(a.returns/a.deferrals)}:c.returnAfterDeferralRate!==void 0?{returnAfterDeferralRate:c.returnAfterDeferralRate}:{}}}return n}function AM(e,t){let n=structuredClone(e.sourceTrust??{}),s=new Map;for(let i of t){let o=qi(i.metadata,"sourceKey"),a=qi(i.metadata,"consequence");if(!o||a!=="low"&&a!=="medium"&&a!=="high")continue;let c=`${o}::${a}::${i.interactionId}`,l=s.get(c)??{source:o,consequence:a,responded:!1,rejected:!1,dismissed:!1};i.kind==="responded"?(l.responded=!0,l.dismissed=!1,l.rejected=i.responseKind==="rejected"):i.kind==="dismissed"&&(l.responded||(l.dismissed=!0)),s.set(c,l)}for(let i of s.values()){let o=n[i.source]?.[i.consequence]??{confirmations:0,disagreements:0,trustAdjustment:0};i.responded?i.rejected?o.disagreements+=1:o.confirmations+=1:i.dismissed&&(o.disagreements+=1);let a=o.confirmations+o.disagreements;o.trustAdjustment=a>0?Math.round((o.confirmations-o.disagreements)/a*10*Math.min(a/5,1)):0,n[i.source]={...n[i.source]??{},[i.consequence]:o}}return n}function wM(e,t){let n={...e.consequenceProfiles??{}},s=new Map;for(let o of t){let a=qi(o.metadata,"consequence");a!=="low"&&a!=="medium"&&a!=="high"||o.kind==="responded"&&s.set(`${a}::${o.interactionId}`,{consequence:a,rejected:o.responseKind==="rejected"})}let i=new Map;for(let o of s.values()){let a=i.get(o.consequence)??{reviewed:0,rejected:0};a.reviewed+=1,o.rejected&&(a.rejected+=1),i.set(o.consequence,a)}for(let[o,a]of i.entries()){let c=n[o]??{rejectionRate:0,reviewedCount:0},l=(c.reviewedCount??0)+a.reviewed;n[o]={rejectionRate:l>0?Nd(((c.reviewedCount??0)*c.rejectionRate+a.rejected)/l):0,reviewedCount:l}}return n}function qi(e,t){let n=e?.[t];return typeof n=="string"&&n.length>0?n:null}function Nd(e){return Math.round(e*1e3)/1e3}function VS(e,t,n,s){let i=t+s;if(i<=0)return Math.round(n);let o=(e??0)*t,a=n*s;return Math.round((o+a)/i)}function IM(e,t,n,s="present",i){if(s==="absent")return q_();let o=J.attentionBudget,a=TM(e,i),c=a?(e?.counts.responded??0)+(e?.counts.dismissed??0)+(e?.counts.deferred??0)+(e?.counts.contextExpanded??0)+(e?.counts.contextSkipped??0):0,l=a?e?.counts.deferred??0:0,d=a?e?.averageResponseLatencyMs??null:null,m=t?.metrics.interruptiveVisible??0,g=n??"monitoring",h=t?.level??"steady",y=[],_=0;return h==="high"?(_+=2,y.push("current pressure is already high")):h==="elevated"&&(_+=1,y.push("current pressure is elevated")),g==="overloaded"?(_+=2,y.push("recent operator behavior indicates overload")):(g==="hesitating"||g==="avoiding")&&(_+=1,y.push("recent operator behavior suggests attention is already strained")),c>=o.recentDecisions.highCount?(_+=2,y.push("recent decision volume is high")):c>=o.recentDecisions.elevatedCount&&(_+=1,y.push("recent decision volume is climbing")),d!==null&&d>=o.responseLatencyMs.high?(_+=2,y.push("recent decision latency is slow")):d!==null&&d>=o.responseLatencyMs.elevated&&(_+=1,y.push("recent decision latency is rising")),l>=o.deferredCount.high?(_+=2,y.push("recent deferrals are accumulating")):l>=o.deferredCount.elevated&&(_+=1,y.push("recent deferrals suggest growing burden")),m>=o.interruptiveVisible.high?(_+=2,y.push("multiple interruptive frames are already visible")):m>=o.interruptiveVisible.elevated&&(_+=1,y.push("interruptive work is already visible")),{level:_>=o.scoreBands.highScore?"high":_>=o.scoreBands.elevatedScore?"elevated":"light",thresholdOffset:_>=o.scoreBands.highScore?o.thresholdOffset.high:_>=o.scoreBands.elevatedScore?o.thresholdOffset.elevated:0,metrics:{recentDecisions:c,deferredCount:l,averageResponseLatencyMs:d,interruptiveVisible:m,pressureLevel:h,attentionState:g},reasons:y}}function TM(e,t){let n=e?.lastSignalAt;if(!n||t===void 0)return!0;let s=Date.parse(n),i=xM(t);return Number.isNaN(s)||i===null?!0:i-s<=J.pressureForecast.freshness.residualMs}function xM(e){if(typeof e=="number")return Number.isFinite(e)?e:null;if(e instanceof Date){let n=e.getTime();return Number.isFinite(n)?n:null}let t=Date.parse(e);return Number.isNaN(t)?null:t}function q_(){return{level:"light",thresholdOffset:0,metrics:{recentDecisions:0,deferredCount:0,averageResponseLatencyMs:null,interruptiveVisible:0,pressureLevel:"steady",attentionState:"monitoring"},reasons:[]}}function RM(e,t,n){let s=NM(t),i=[],o=0,a=J.pressureForecast,c=CM(e,n),l=c===null||c<=a.freshness.demandMs,d=c===null||c<=a.freshness.residualMs,m=l?(e?.counts.presented??0)+(e?.counts.deferred??0)+(e?.counts.returned??0):0,g=d?e?.averageResponseLatencyMs??null:null,h=d?e?.counts.deferred??0:0,y=d?e?.deferred.suppressed??0:0,_=d?e?.responseRate??0:0,v=d?e?.counts.presented??0:0;return s>=a.visibleInterruptiveBoost.highCount?(o+=2,i.push("multiple interruptive frames are already visible")):s>=a.visibleInterruptiveBoost.elevatedCount&&(o+=1,i.push("interruptive work is already visible")),m>=a.recentDemand.highCount?(o+=2,i.push("incoming demand is arriving quickly")):m>=a.recentDemand.elevatedCount&&(o+=1,i.push("incoming demand is climbing")),g!==null&&g>=a.responseLatencyMs.high?(o+=2,i.push("recent response latency is slow")):g!==null&&g>=a.responseLatencyMs.elevated&&(o+=1,i.push("recent response latency is rising")),y>=a.deferredPressure.highSuppressedCount||h>=a.deferredPressure.highDeferredCount?(o+=2,i.push("recent deferrals suggest operator capacity is tightening")):(y>=a.deferredPressure.elevatedSuppressedCount||h>=a.deferredPressure.elevatedDeferredCount)&&(o+=1,i.push("recent deferrals suggest operator capacity is tightening")),v>=a.slowClearance.presentedCount&&_<=a.slowClearance.responseRate&&(o+=1,i.push("presented work is being cleared slowly")),{level:o>=a.scoreBands.highLevel?"high":o>=a.scoreBands.elevatedLevel?"elevated":"steady",overloadRisk:o>=a.scoreBands.highRisk?"high":o>=a.scoreBands.risingRisk?"rising":"low",score:o,metrics:{recentDemand:m,interruptiveVisible:s,averageResponseLatencyMs:g,deferredCount:h,suppressedCount:y},reasons:i}}function CM(e,t){let n=e?.lastSignalAt;if(!n||t===void 0)return null;let s=Date.parse(n),i=OM(t);return Number.isNaN(s)||i===null?null:Math.max(0,i-s)}function OM(e){if(typeof e=="number")return Number.isFinite(e)?e:null;if(e instanceof Date){let n=e.getTime();return Number.isFinite(n)?n:null}let t=Date.parse(e);return Number.isNaN(t)?null:t}function LM(){return{level:"steady",overloadRisk:"low",score:0,metrics:{recentDemand:0,interruptiveVisible:0,averageResponseLatencyMs:null,deferredCount:0,suppressedCount:0},reasons:[]}}function NM(e){return e?[e.now,...e.next].filter(t=>t!==null).filter(PM).length:0}function PM(e){return e.mode!=="status"||e.consequence==="high"||e.tone==="critical"}var Bi={topology:{supportsAmbient:!0},responses:{supportsSingleChoice:!0,supportsMultipleChoice:!1,supportsForm:!0,supportsTextResponse:!1}};function KS(e={}){let t=e.taskSignalSummary??Pd();return{currentFrame:e.currentFrame??null,currentTaskView:e.currentTaskView??DM(),currentEpisode:e.currentEpisode??null,attentionView:e.attentionView??FM(),taskSignalSummary:t,continuitySignalSummary:e.continuitySignalSummary??t,globalSignalSummary:e.globalSignalSummary??Pd(),taskAttentionState:e.taskAttentionState??"monitoring",globalAttentionState:e.globalAttentionState??"monitoring",pressureForecast:e.pressureForecast??LM(),attentionBurden:e.attentionBurden??q_(),surfaceCapabilities:e.surfaceCapabilities?{topology:{...e.surfaceCapabilities.topology},responses:{...e.surfaceCapabilities.responses}}:{topology:{...Bi.topology},responses:{...Bi.responses}},operatorPresence:e.operatorPresence??"present"}}function oo(e={}){return{...e.currentFrame!==void 0?{currentFrame:e.currentFrame}:{},...e.currentTaskView!==void 0?{currentTaskView:e.currentTaskView}:{},...e.currentEpisode!==void 0?{currentEpisode:e.currentEpisode}:{},...e.attentionView!==void 0?{attentionView:e.attentionView}:{},...e.taskSignalSummary!==void 0?{taskSignalSummary:e.taskSignalSummary}:{},...e.continuitySignalSummary!==void 0?{continuitySignalSummary:e.continuitySignalSummary}:{},...e.globalSignalSummary!==void 0?{globalSignalSummary:e.globalSignalSummary}:{},...e.taskAttentionState!==void 0?{taskAttentionState:e.taskAttentionState}:{},...e.globalAttentionState!==void 0?{globalAttentionState:e.globalAttentionState}:{},...e.pressureForecast!==void 0?{pressureForecast:e.pressureForecast}:{},...e.attentionBurden!==void 0?{attentionBurden:e.attentionBurden}:{},...e.surfaceCapabilities!==void 0?{surfaceCapabilities:e.surfaceCapabilities}:{},...e.operatorPresence!==void 0?{operatorPresence:e.operatorPresence}:{}}}function hp(e,t={},n){let s=oo(t);if(MM(s))return s.currentFrame===e?s:KS({...s,currentFrame:e});let i=s.globalSignalSummary??Pd(),o=s.pressureForecast??RM(i,s.attentionView,n),a=s.operatorPresence??"present";return KS({...s,currentFrame:e,globalSignalSummary:i,pressureForecast:o,attentionBurden:s.attentionBurden??IM(i,o,s.globalAttentionState,a,n),operatorPresence:a})}function MM(e){return"currentFrame"in e&&"currentTaskView"in e&&"currentEpisode"in e&&"attentionView"in e&&"taskSignalSummary"in e&&"continuitySignalSummary"in e&&"globalSignalSummary"in e&&"taskAttentionState"in e&&"globalAttentionState"in e&&"pressureForecast"in e&&"attentionBurden"in e&&"surfaceCapabilities"in e&&"operatorPresence"in e&&e.currentFrame!==void 0&&e.currentTaskView!==void 0&&e.currentEpisode!==void 0&&e.attentionView!==void 0&&e.taskSignalSummary!==void 0&&e.continuitySignalSummary!==void 0&&e.globalSignalSummary!==void 0&&e.taskAttentionState!==void 0&&e.globalAttentionState!==void 0&&e.pressureForecast!==void 0&&e.attentionBurden!==void 0&&e.surfaceCapabilities!==void 0&&e.operatorPresence!==void 0}function DM(){return{now:null,next:[],ambient:[]}}function FM(){return{now:null,next:[],ambient:[]}}function Pd(){return{recentSignals:0,lifetimeSignals:0,counts:{presented:0,viewed:0,responded:0,dismissed:0,deferred:0,contextExpanded:0,contextSkipped:0,timedOut:0,returned:0,attentionShifted:0},deferred:{next:0,suppressed:0,manual:0},responseRate:0,dismissalRate:0,averageResponseLatencyMs:null,averageDismissalLatencyMs:null,lastSignalAt:null}}function L(e,t=[]){return{rule:e,kind:"noop",rationale:t}}function Ne(e,t,n,s,i){return{rule:e,kind:"override",decision:t,currentPriority:n,currentScore:s,rationale:i}}var $M=e=>{let{candidate:t,context:n,evidence:s}=e,i=s.attentionView.now??s.currentFrame;if(!i)return L("deferral_escalation");let o=i===s.currentFrame?n.currentScore:Ye(i,{now:e.referenceTimestamp});return o===null||t.blocking||t.priority==="background"||bn(i)||!Wr(s.continuitySignalSummary)||n.candidateScore<o-J.queuePlanner.escalationScoreSlack?L("deferral_escalation"):Ne("deferral_escalation",{kind:"activate",candidate:t},Ee(i),o,["repeated deferral or resurfacing makes this task more deserving of current focus"])};function Wr(e){return e.counts.deferred>=J.queuePlanner.deferredEscalationThreshold||e.counts.returned>=J.queuePlanner.returnedEscalationThreshold}var yp=J.queuePlanner;function UM(e,t,n,s){return n.currentFrame?BM(n.currentFrame,e,t,n,s):qM(e,t,n)}function hn(e,t,n){return{kind:Sp(e,t,n),candidate:e}}function jM(e,t,n,s){return K_(e,n)?{kind:"queue",candidate:e}:hn(e,t,s)}function Md(e,t,n,s){return(n.components.deferralAffinity>0||n.components.consequenceCalibration>0)&&t.minimumLane!=="now"?{kind:"queue",candidate:e}:hn(e,t,s)}function Sp(e,t,n=Bi){return w_(e,t.minimumLane==="ambient"?"ambient":"queue")==="ambient"&&zM(e,n)?"ambient":"queue"}function zM(e,t){if(!t.topology.supportsAmbient)return!1;switch(e.responseSpec.kind){case"approval":return!0;case"choice":return(e.responseSpec.selectionMode==="multiple"?t.responses.supportsMultipleChoice:t.responses.supportsSingleChoice)&&(!e.responseSpec.allowTextResponse||t.responses.supportsTextResponse);case"form":return t.responses.supportsForm;case"none":return!0}return!1}function qM(e,t,n){let s=[];return V_(e)?n.pressureForecast.overloadRisk==="high"?(s.push("the episode has become actionable, but predicted overload keeps it in next instead of surfacing it now"),K({kind:"queue",candidate:e},s)):t.policyVerdict.mayInterrupt?(s.push("the episode has accumulated enough evidence to deserve interruptive attention"),K({kind:"activate",candidate:e},s)):(s.push("the episode has become actionable, so it stays visible even though policy still prevents interrupting"),K({kind:"queue",candidate:e},s)):B_(e,t.policyVerdict,n.pressureForecast)?(s.push("predicted overload keeps lower-value work peripheral before the queue spikes"),K(Md(e,t.policyVerdict,t.utility,n.surfaceCapabilities),s)):!t.policyVerdict.mayInterrupt&&t.policyVerdict.minimumLane==="ambient"?dp(e)?(s.push("status routing stays non-blocking, but blocked-like semantics keep it visible in next"),K({kind:"queue",candidate:e},s)):(s.push("policy keeps this interaction ambient until stronger context arrives"),K(hn(e,t.policyVerdict,n.surfaceCapabilities),s)):(s.push("nothing is in now for this task"),K({kind:"activate",candidate:e},s))}function BM(e,t,n,s,i){let o=[],a=V_(t),c=bn(e),l=Ee(e),d=n.currentScore;if(a)return c||s.pressureForecast.overloadRisk==="high"?(o.push(c?"the episode has become actionable, but current blocking work keeps it in next":"the episode has become actionable, but predicted overload keeps it in next"),K({kind:"queue",candidate:t},o,l,d)):d!==null&&n.candidateScore<d-yp.actionableEpisodeScoreSlack?(o.push("actionable episode evidence keeps this work visible even though the current frame is still stronger"),K({kind:"queue",candidate:t},o,l,d)):n.policyVerdict.mayInterrupt?(o.push("the episode has accumulated enough evidence to compete for current focus"),K({kind:"activate",candidate:t},o,l,d)):(o.push("the episode has become actionable, so it stays in next even though policy still prevents interrupting"),K({kind:"queue",candidate:t},o,l,d));if(c&&!t.blocking)return Wr(s.continuitySignalSummary)?(o.push("blocking work keeps resurfacing backlog in next so it stays visible until focus can return"),K({kind:"queue",candidate:t},o,l,d)):(o.push("blocking work keeps non-blocking updates in the periphery"),K(hn(t,n.policyVerdict,s.surfaceCapabilities),o));if(!c&&t.blocking)return o.push("blocking work interrupts non-blocking activity"),K({kind:"activate",candidate:t},o);if(B_(t,n.policyVerdict,s.pressureForecast))return o.push("predicted overload keeps lower-value work peripheral before the queue spikes"),K(Md(t,n.policyVerdict,n.utility,s.surfaceCapabilities),o,l,d);if(VM(t,s.attentionView,n.referenceTimestamp??t.timestamp,i))return Wr(s.continuitySignalSummary)?(o.push("existing urgent backlog keeps resurfacing work in next so it remains visible"),K({kind:"queue",candidate:t},o,l,d)):(o.push(n.utility.components.deferralAffinity>0?"existing urgent backlog defers this work, but memory keeps it in next because it usually returns after deferral":"existing urgent backlog keeps lower-value status work in next"),K(Md(t,n.policyVerdict,n.utility,s.surfaceCapabilities),o,l,d));if(d!==null&&n.candidateScore<d)return o.push("current work still outranks the new candidate"),K(hn(t,n.policyVerdict,s.surfaceCapabilities),o,l,d);if(d!==null&&n.candidateScore===d){let m=pp(t.timestamp,e.timing.updatedAt);if(m!==null&&m<0)return o.push("older work yields when scores tie"),K(hn(t,n.policyVerdict,s.surfaceCapabilities),o,l,d)}return o.push("new work outranks the current frame"),K({kind:"activate",candidate:t},o,l,d)}function K(e,t,n=null,s=null){return{decision:e,currentPriority:n,currentScore:s,reasons:t}}function VM(e,t,n,s){return s?.deferLowValueDuringPressure===!1||e.blocking||e.consequence==="high"||e.tone==="critical"||!t?!1:K_(e,t)?!0:[t.now,...t.next].filter(o=>o!==null).filter(o=>o.interactionId===e.interactionId?!1:bn(o)||o.consequence==="high"||o.tone==="critical").filter(o=>{let a=pp(n,o.timing.updatedAt);return a===null?!0:a<=yp.urgentBacklogWindowMs}).length>=2}function B_(e,t,n){return n.overloadRisk==="low"||e.blocking||t.requiresOperatorResponse||t.minimumLane==="now"||e.consequence==="high"||e.tone==="critical"?!1:n.overloadRisk==="high"?!0:e.mode==="status"||e.priority==="background"||e.consequence==="low"}function V_(e){return ro(e.relationHints,"resolves")?!1:!e.blocking&&io(e)&&(e.episodeEvidenceScore??0)>=yp.actionableEpisodeEvidenceThreshold}function K_(e,t){return e.episodeId!==void 0&&Je(t,e.episodeId,{lanes:["now","next"],excludedInteractionId:e.interactionId}).length>0}var KM=e=>{let t=e.evidence.currentFrame,{candidate:n,context:s,evidence:i,helpers:o,plannerDefaults:a,routed:c}=e;if(!t||c.decision.kind!=="activate"||a?.batchStatusBursts===!1||t.taskId!==n.taskId||t.mode!=="status"||n.mode!=="status"||n.blocking||n.consequence==="high"||n.tone==="critical")return L("burst_dampening");let l=Date.parse(t.timing.updatedAt),d=Date.parse(n.timestamp);return Number.isNaN(l)||Number.isNaN(d)||d-l>J.queuePlanner.statusBurstWindowMs?L("burst_dampening"):Ne("burst_dampening",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),Ee(t),s.currentScore,[`rapid successive updates within ${d-l}ms stay bundled instead of stealing focus`])},Ge={STATUS_ONLY:0,NON_STATUS:1,CRITICAL_CONSEQUENCE:2,BLOCKING_OR_REQUIRED:3},HM=e=>{let t=e.evidence.currentFrame,{candidate:n,context:s,evidence:i,helpers:o,routed:a,plannerDefaults:c}=e;if(!t||a.decision.kind!=="activate"||s.currentScore===null)return L("conflicting_interrupt");let l=WM(t),d=ZM(n,s.policyVerdict);if(l===Ge.STATUS_ONLY||d===Ge.STATUS_ONLY||d>l)return L("conflicting_interrupt");if(d<l)return Ne("conflicting_interrupt",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),Ee(t),s.currentScore,["the current interrupt is more urgent, so the challenger waits instead of stealing focus"]);let m=c?.conflictingInterruptMargin??J.queuePlanner.conflictingInterruptMargin;return m<=0||s.candidateScore>=s.currentScore+m?L("conflicting_interrupt"):Ne("conflicting_interrupt",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),Ee(t),s.currentScore,["equally interruptive work needs a clear advantage before it can replace the current interrupt"])};function WM(e){return e.mode!=="status"&&e.responseSpec?.kind!=="none"?Ge.BLOCKING_OR_REQUIRED:e.tone==="critical"||e.consequence==="high"?Ge.CRITICAL_CONSEQUENCE:e.mode!=="status"?Ge.NON_STATUS:Ge.STATUS_ONLY}function ZM(e,t){return e.blocking||t.requiresOperatorResponse||t.minimumLane==="now"?Ge.BLOCKING_OR_REQUIRED:e.tone==="critical"||e.consequence==="high"?Ge.CRITICAL_CONSEQUENCE:e.mode!=="status"?Ge.NON_STATUS:Ge.STATUS_ONLY}var GM=e=>{let t=e.evidence.currentFrame,{candidate:n,context:s,evidence:i,helpers:o}=e;if(!t||s.currentScore===null||n.blocking||bn(t)||n.consequence==="high"||n.tone==="critical"||s.candidateScore<=s.currentScore)return L("context_patience");let{contextCost:a}=s.utility.components,c=a<=-6?J.queuePlanner.highContextQueueMargin:a<=-3?J.queuePlanner.mediumContextQueueMargin:null;if(c===null||s.candidateScore>=s.currentScore+c)return L("context_patience");let l=s.candidateScore-s.currentScore;return Ne("context_patience",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),Ee(t),s.currentScore,[`memory suggests this interaction usually needs context, so it stays peripheral until it clears the ${c}-point margin (gap: ${l})`])},YM=e=>{let t=e.evidence.currentFrame,{candidate:n,context:s,evidence:i,helpers:o,routed:a,plannerDefaults:c}=e;if(!t||a.decision.kind!=="activate"||s.currentScore===null||n.blocking||n.consequence==="high"||n.tone==="critical"||t.consequence==="high"||t.tone==="critical"||JM(t,n))return L("decision_stream_continuity");let l=c?.streamContinuityMargin??J.queuePlanner.streamContinuityMargin;if(l<=0||s.candidateScore>=s.currentScore+l)return L("decision_stream_continuity");let d=s.candidateScore-s.currentScore;return Ne("decision_stream_continuity",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),Ee(t),s.currentScore,[`the current decision stream stays active until cross-stream work clears the ${l}-point margin (gap: ${d})`])};function JM(e,t){let n=zi(e.source),s=zi(t.source);if(n&&s&&n!==s)return!1;if(n&&s&&n===s)return!0;let i=Ld(e),o=Ld(t);return i&&o&&i!==o?!1:!!(i&&o&&i===o||e.taskId===t.taskId)}var XM=e=>{let t=e.evidence.currentFrame,{candidate:n,context:s,evidence:i,helpers:o,routed:a,plannerDefaults:c}=e;if(!t||a.decision.kind!=="activate"||n.blocking||n.consequence==="high"||n.tone==="critical")return L("minimum_dwell");let l=c?.minimumDwellMs??J.queuePlanner.minimumDwellMs;if(l<=0)return L("minimum_dwell");let d=Date.parse(t.timing.updatedAt),m=Date.parse(e.referenceTimestamp);if(Number.isNaN(d)||Number.isNaN(m)||m-d>=l)return L("minimum_dwell");let g=l-(m-d);return Ne("minimum_dwell",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),Ee(t),s.currentScore,[`recently surfaced work keeps focus for another ${g}ms to avoid a premature switch`])},QM=e=>{let t=e.evidence.currentFrame,{candidate:n,context:s,evidence:i,helpers:o}=e;return!t||!n.episodeId||!mp(t,n.episodeId)?L("same_episode"):n.blocking&&!bn(t)?Ne("same_episode",{kind:"activate",candidate:n},Ee(t),s.currentScore,["the current episode has progressed into an interruptive step that belongs in now"]):n.blocking&&ro(n.relationHints,"supersedes")&&up(n)!=="weak"?Ne("same_episode",{kind:"activate",candidate:n},Ee(t),s.currentScore,["the current episode has advanced to a superseding step that belongs in now"]):Wr(i.continuitySignalSummary)?L("same_episode"):Ne("same_episode",o.peripheralDecision(n,s.policyVerdict,i.surfaceCapabilities),Ee(t),s.currentScore,["related work stays bundled with the current episode already in now"])},eD=e=>{let t=e.evidence.currentFrame;return!t||t.interactionId!==e.candidate.interactionId?L("same_interaction"):Ne("same_interaction",{kind:"activate",candidate:e.candidate},null,null,["same interaction refreshes the existing frame"])},tD=e=>{let{candidate:t,context:n,evidence:s,helpers:i}=e;if(!t.episodeId||t.blocking||t.mode!=="status"&&(t.tone==="critical"||t.consequence==="high"))return L("visible_episode");let o=Je(s.attentionView,t.episodeId,{excludedInteractionId:t.interactionId}),a=s.attentionView.now!==null&&mp(s.attentionView.now,t.episodeId,t.interactionId);return t.mode==="status"&&(t.tone==="critical"||t.consequence==="high")&&!a||o.length===0||!(t.episodeState==="batched"||(t.episodeSize??1)>=2||o.length>=2)||Wr(s.continuitySignalSummary)?L("visible_episode"):Ne("visible_episode",i.batchedDecision(t,n.policyVerdict,s.attentionView,s.surfaceCapabilities),null,s.currentFrame?n.currentScore:null,[s.currentFrame?"related episode work is already building in the queue, so this interaction stays bundled with it":"related episode work is already visible, so this interaction batches with it instead of interrupting"])},nD=[tD,QM,XM,KM,eD,$M,HM,YM,GM],bp=class{plannerDefaults;constructor(e={}){this.plannerDefaults=e.plannerDefaults}explain(e,t,n){let s=n.referenceTimestamp??t.timestamp,i=this.resolveEvidenceContext(e,n,s),o=UM(t,n,i,this.plannerDefaults);return this.applyContinuity(t,n,i,o,s)}clear(){return{kind:"clear"}}preferredPeripheralBucket(e,t,n){return Sp(e,t,n)}applyContinuity(e,t,n,s,i){let o=new Set(this.plannerDefaults?.disabledContinuityRules??[]),a=nD.map(l=>{let d=l({candidate:e,context:t,evidence:n,routed:s,referenceTimestamp:i,plannerDefaults:this.plannerDefaults,helpers:{peripheralDecision:hn,batchedDecision:jM}});return o.has(d.rule)?L(d.rule,[`operator disabled the ${d.rule} continuity rule`]):d}),c=a.find(l=>l.kind==="override");return c?{decision:c.decision,currentPriority:c.currentPriority,currentScore:c.currentScore,reasons:[...s.reasons,...c.rationale],continuityEvaluations:a}:{...s,continuityEvaluations:a}}resolveEvidenceContext(e,t,n){return hp(e,oo(t),tr(n)??0)}},rD=class{runtime;constructor(e){this.runtime=e}assemble(e,t){let n=this.runtime.signals.summarize(e),s=this.runtime.signals.summarize(),i=pn(n),o=pn(s),a=this.runtime.getTaskView(e),c=this.runtime.getAttentionView(),l=this.runtime.getOperatorPresence();return hp(t,oo({currentFrame:t,currentTaskView:a,currentEpisode:this.runtime.episodes.readFrameEpisode(t),attentionView:c,taskSignalSummary:n,continuitySignalSummary:n,globalSignalSummary:s,taskAttentionState:i,globalAttentionState:o,surfaceCapabilities:this.runtime.getSurfaceCapabilities(),operatorPresence:l}),this.runtime.clock.nowMs())}augmentContinuitySignalSummary(e,t,n){let s=this.resolveContinuitySignalSummary(e,t,n.taskSignalSummary);return s===n.taskSignalSummary?n:{...n,continuitySignalSummary:s}}resolveContinuitySignalSummary(e,t,n){if(!t.episodeId)return n;let s=this.runtime.signals.list(e),i=this.runtime.signals.list().filter(o=>o.taskId!==e&&sD(o)===t.episodeId);return i.length===0?n:U_([...s,...i].sort((o,a)=>o.timestamp.localeCompare(a.timestamp)))}};function sD(e){let t=e.metadata?.episode;if(!t||typeof t!="object"||Array.isArray(t))return null;let n=t.id;return typeof n=="string"&&n.length>0?n:null}var H_=class extends Error{code;constructor(e,t){super(t),this.name=new.target.name,this.code=e}},ke=class extends H_{field;constructor(e,t={}){super(t.code??"validation_error",e),this.field=t.field}},iD=class extends H_{taskId;interactionId;expiredAt;constructor(e){super("response_expired",`response for interaction ${e.interactionId} expired at ${e.expiredAt} and must be revalidated before submission`),this.taskId=e.taskId,this.interactionId=e.interactionId,this.expiredAt=e.expiredAt}};function oD(e,t,n){let s=uD(e,n),i={taskId:e.taskId,interactionId:e.interactionId,timestamp:n,frameId:e.id,...e.source!==void 0?{source:e.source}:{},metadata:es(e)};return t.response.kind==="dismissed"?{kind:"dismissed",...i,...s!==void 0?{latencyMs:s}:{}}:{kind:"responded",...i,responseKind:t.response.kind,...s!==void 0?{latencyMs:s}:{}}}function aD(e,t,n){return{kind:"responded",taskId:e.taskId,interactionId:e.interactionId,timestamp:n,...e.source!==void 0?{source:e.source}:{},responseKind:t.response.kind==="dismissed"?"acknowledged":t.response.kind,metadata:{...vM(e),autoResolved:!0}}}function Di(e,t,n=e){return{kind:"deferred",taskId:n.taskId,interactionId:n.interactionId,timestamp:e.timing.updatedAt,frameId:e.id,...n.source!==void 0?{source:n.source}:{},reason:t,metadata:es(e)}}function W_(e,t,n){let s=e.now,i=t.now;return i?[...cD(s,i,n),...lD(e,i,n)]:[]}function Pi(e,t,n,s,i,o={}){return{kind:e,taskId:t,interactionId:n,timestamp:s,...i?.id!==void 0?{frameId:i.id}:{},...i?.source!==void 0?{source:i.source}:{},...i?{metadata:es(i)}:{},...o.surface!==void 0?{surface:o.surface}:{},...e==="context_expanded"&&o.section!==void 0?{section:o.section}:{},...e==="context_skipped"&&o.section!==void 0?{section:o.section}:{},...e==="timed_out"&&o.timeoutMs!==void 0?{timeoutMs:o.timeoutMs}:{}}}function cD(e,t,n){if(!e||Dd(e,t))return[];let s={kind:"attention_shifted",taskId:t.taskId,interactionId:t.interactionId,timestamp:n,frameId:t.id,...t.source!==void 0?{source:t.source}:{},fromInteractionId:e.interactionId,toInteractionId:t.interactionId};return e.taskId===t.taskId?[s]:[s,{kind:"attention_shifted",taskId:e.taskId,interactionId:e.interactionId,timestamp:n,frameId:e.id,...e.source!==void 0?{source:e.source}:{},fromInteractionId:e.interactionId,toInteractionId:t.interactionId}]}function lD(e,t,n){let s=e.next.some(i=>Dd(i,t))?"next":e.ambient.some(i=>Dd(i,t))?"ambient":null;return s?[{kind:"returned",taskId:t.taskId,interactionId:t.interactionId,timestamp:n,frameId:t.id,...t.source!==void 0?{source:t.source}:{},from:s,metadata:es(t)}]:[]}function uD(e,t){let n=Date.parse(e.timing.updatedAt),s=Date.parse(t);if(!(Number.isNaN(n)||Number.isNaN(s)))return Math.max(0,s-n)}function Dd(e,t){return e.id===t.id||e.taskId===t.taskId&&e.interactionId===t.interactionId}var dD=class{runtime;constructor(e){this.runtime=e}shouldRetireResolvedEpisodeFrames(e,t){return this.findResolvedEpisodeFrames(e,t).length>0}materializeResolvedEpisodeFrame(e,t){let n=this.findResolvedEpisodeFrames(e,t),s=this.runtime.getAttentionView();this.retireVisibleFrames(n);let i=this.applyResponseExpiry(this.runtime.planner.plan(e,null)),o=this.runtime.taskViews.addAmbient(e.taskId,i),a=this.runtime.getAttentionView();return this.recordAttentionTransition(s,a,e.timestamp),this.runtime.recordSignal(Di(i,"suppressed")),this.runtime.notifyTaskView(e.taskId,o),this.runtime.notifyAttentionView(),o.now??i}findResolvedEpisodeFrames(e,t){return mD(e,t,this.runtime.clock)}applyResponseExpiry(e){if(this.runtime.responseExpiryMs===void 0||e.responseSpec?.kind==="none")return e;let t=this.runtime.clock.add(e.timing.updatedAt,this.runtime.responseExpiryMs);return t===null?e:{...e,timing:{...e.timing,expiresAt:t}}}retireVisibleFrames(e){let t=new Set;for(let n of e){let s=`${n.taskId}::${n.interactionId}`;if(t.has(s))continue;t.add(s);let i=this.runtime.taskViews.discard(n.taskId,n.interactionId);this.runtime.clearOperatorEngagement(n.taskId,n.interactionId),this.runtime.notifyFrame(n.taskId,i.now),this.runtime.notifyTaskView(n.taskId,i)}}recordAttentionTransition(e,t,n){for(let s of W_(e,t,n))this.runtime.recordSignal(s)}};function pD(e,t){return!e.episodeId||!ro(e.relationHints,"supersedes")?[]:Je(t,e.episodeId,{excludedInteractionId:e.interactionId})}function mD(e,t,n){if(!fD(e)||!e.episodeId)return[];let s=Je(t,e.episodeId,{excludedInteractionId:e.interactionId});return s.length===0?[]:s.some(i=>gD(e,i,n))?[]:hD(e,s)?s:[]}function fD(e){return C_(e)}function gD(e,t,n){let s=n.parse(e.timestamp),i=n.parse(t.timing.updatedAt);return s!==null&&i!==null?s<i:e.timestamp<t.timing.updatedAt}function hD(e,t){if(t.every(s=>s.taskId===e.taskId))return!0;let n=Rd(e.relationHints);return n?t.every(s=>Rd(yD(s))===n):!1}function yD(e){let t=e.metadata?.semantic;if(!t||typeof t!="object"||!("relationHints"in t))return[];let n=t.relationHints;return Array.isArray(n)?n.filter(SD):[]}function SD(e){if(!e||typeof e!="object")return!1;let t=e.kind;return t==="same_issue"||t==="resolves"||t==="supersedes"||t==="repeats"||t==="escalates"}var bD=class{runtime;constructor(e){this.runtime=e}commitFrame(e,t=[]){let n=this.runtime.getAttentionView(),s=new Set;for(let a of t){let c=`${a.taskId}::${a.interactionId}`;if(s.has(c))continue;s.add(c);let l=this.runtime.taskViews.discard(a.taskId,a.interactionId);a.taskId!==e.taskId&&(this.runtime.notifyFrame(a.taskId,l.now),this.runtime.notifyTaskView(a.taskId,l))}let i=this.runtime.taskViews.setNow(e.taskId,e),o=this.runtime.getAttentionView();return this.recordAttentionTransition(n,o,e.timing.updatedAt),this.runtime.recordSignal({kind:"presented",taskId:e.taskId,interactionId:e.interactionId,timestamp:e.timing.updatedAt,frameId:e.id,...e.source!==void 0?{source:e.source}:{},metadata:es(e)}),this.runtime.notifyFrame(e.taskId,e),this.runtime.notifyTaskView(e.taskId,i),this.runtime.notifyAttentionView(),e}applyClear(e){let t=this.runtime.getAttentionView(),n=this.runtime.taskViews.get(e);if(!(n.now!==null||n.next.length>0||n.ambient.length>0))return null;for(let a of[n.now,...n.next,...n.ambient])a&&this.runtime.episodes.resolveInteraction(a.interactionId);this.runtime.clearOperatorEngagement(e);let i=this.runtime.taskViews.clear(e),o=this.runtime.getAttentionView();return this.recordAttentionTransition(t,o,this.runtime.clock.nowIso()),this.runtime.notifyFrame(e,null),this.runtime.notifyTaskView(e,i),this.runtime.notifyAttentionView(),null}queueFrame(e,t){this.clearEngagementIfDemotingNow(e,t.interactionId);let n=this.runtime.taskViews.addNext(e,t);return this.runtime.recordSignal(Di(t,"next")),this.runtime.notifyTaskView(e,n),this.runtime.notifyAttentionView(),n.now??t}addAmbientFrame(e,t){this.clearEngagementIfDemotingNow(e,t.interactionId);let n=this.runtime.taskViews.addAmbient(e,t);return this.runtime.recordSignal(Di(t,"suppressed")),this.runtime.notifyTaskView(e,n),this.runtime.notifyAttentionView(),n.now??t}materializePeripheralFrame(e,t,n){let s=e.episodeId?this.findPeripheralEpisodeFrame(e.episodeId,n):null;if(!s){let d=this.applyResponseExpiry(this.runtime.planner.plan(e,null));return t==="queue"?this.queueFrame(e.taskId,d):this.addAmbientFrame(e.taskId,d)}let i=s.bucket==="queue"||t==="queue"?"queue":"ambient",a={...this.applyResponseExpiry(this.runtime.planner.plan(e,s.frame)),id:s.frame.id},c=this.runtime.taskViews.discard(s.frame.taskId,s.frame.interactionId);this.runtime.notifyTaskView(s.frame.taskId,c);let l=i==="queue"?this.runtime.taskViews.addNext(a.taskId,a):this.runtime.taskViews.addAmbient(a.taskId,a);return this.runtime.recordSignal(Di(a,i==="queue"?"next":"suppressed",e)),this.runtime.notifyTaskView(a.taskId,l),this.runtime.notifyAttentionView(),a}promotePeripheralEpisodeFrame(e,t){return this.replaceVisibleEpisodeFrame(e,t)}refreshVisibleEpisodeFrame(e,t){return this.replaceVisibleEpisodeFrame(e,t)}submit(e){let t=this.findFrame(e.taskId,e.interactionId);if(!t)return;let n=this.readExpiredResponseTimestamp(t,this.runtime.clock.nowIso());if(n)throw new iD({taskId:e.taskId,interactionId:e.interactionId,expiredAt:n});let s=this.runtime.getAttentionView(),i=this.runtime.clock.nowIso();this.runtime.clearOperatorEngagement(e.taskId,e.interactionId),this.runtime.recordSignal(oD(t,e,i)),this.runtime.episodes.resolveInteraction(e.interactionId);let o=this.runtime.taskViews.resolve(e.taskId,e.interactionId),a=this.runtime.getAttentionView();this.recordAttentionTransition(s,a,i),this.runtime.notifyFrame(e.taskId,o.now??null),this.runtime.notifyTaskView(e.taskId,o),this.runtime.notifyAttentionView(),this.runtime.emitResponse(e)}applyAutoResponse(e,t){let n=this.runtime.clock.nowIso();return this.runtime.recordSignal(aD(e,t,n)),this.runtime.episodes.resolveInteraction(e.interactionId),this.runtime.emitResponse(t),null}findFrameByInteractionId(e,t){return this.findFrame(e,t)}shouldRetireSupersededEpisodeFrames(e,t){return this.findSupersededEpisodeFrames(e,t).length>0}findSupersededEpisodeFrames(e,t){return pD(e,t)}applyResponseExpiry(e){if(this.runtime.responseExpiryMs===void 0||e.responseSpec?.kind==="none")return e;let t=this.runtime.clock.add(e.timing.updatedAt,this.runtime.responseExpiryMs);return t===null?e:{...e,timing:{...e.timing,expiresAt:t}}}readExpiredResponseTimestamp(e,t){let n=e.timing.expiresAt;if(!n)return null;let s=this.runtime.clock.parse(n),i=this.runtime.clock.parse(t);return s===null||i===null||i<=s?null:n}findPeripheralEpisodeFrame(e,t){let n=Je(t,e,{lanes:["next"]})[0];if(n)return{frame:n,bucket:"queue"};let s=Je(t,e,{lanes:["ambient"]})[0];return s?{frame:s,bucket:"ambient"}:null}findNowEpisodeFrame(e,t){return Je(t,e,{lanes:["now"]})[0]??null}shouldPromotePeripheralEpisodeFrame(e){return e.continuityEvaluations?.some(t=>t.rule==="deferral_escalation"&&t.kind==="override"&&t.decision?.kind==="activate")??!1}findFrame(e,t){let n=this.runtime.taskViews.get(e);if(n.now?.interactionId===t)return n.now;let s=n.next.find(i=>i.interactionId===t);return s||(n.ambient.find(i=>i.interactionId===t)??null)}recordAttentionTransition(e,t,n){for(let s of W_(e,t,n))this.runtime.recordSignal(s)}replaceVisibleEpisodeFrame(e,t){let n=this.applyResponseExpiry(this.runtime.planner.plan(e,t));return this.commitFrame({...n,id:t.id},[t])}clearEngagementIfDemotingNow(e,t){this.runtime.taskViews.get(e).now?.interactionId===t&&this.runtime.clearOperatorEngagement(e,t)}},_D=12,kD=class{taskViews=new Map;get(e){return this.taskViews.get(e)??{now:null,next:[],ambient:[]}}setNow(e,t){let n=this.get(e),s=n.next.filter(a=>a.interactionId!==t.interactionId),i=n.now&&n.now.interactionId!==t.interactionId?n.now:null,o={now:t,next:i?[i,...s]:s,ambient:n.ambient.filter(a=>a.interactionId!==t.interactionId)};return this.persist(e,o)}addNext(e,t){return this.upsert(e,"next",t)}addAmbient(e,t){return this.upsert(e,"ambient",t)}clear(e){let t={now:null,next:[],ambient:[]};return this.taskViews.delete(e),t}discard(e,t){let n=this.get(e),s={now:n.now?.interactionId===t?null:n.now,next:n.next.filter(i=>i.interactionId!==t),ambient:n.ambient.filter(i=>i.interactionId!==t)};return this.persist(e,s)}resolve(e,t){let n=this.get(e),s=n.next.filter(c=>c.interactionId!==t),i=n.ambient.filter(c=>c.interactionId!==t),o=n.now;o?.interactionId===t&&(o=s.shift()??null);let a={now:o,next:s,ambient:i};return this.persist(e,a)}upsert(e,t,n){let s=this.get(e),i=s.next.filter(d=>d.interactionId!==n.interactionId),o=s.ambient.filter(d=>d.interactionId!==n.interactionId),l={now:s.now?.interactionId===n.interactionId?i.shift()??null:s.now,next:t==="next"?[n,...i]:i,ambient:t==="ambient"?[n,...o].slice(0,_D):o};return this.persist(e,l)}values(){return this.taskViews.values()}stats(){let e=0,t=0,n=0;for(let s of this.taskViews.values())s.now&&(e+=1),t+=s.next.length,n+=s.ambient.length;return{taskCount:this.taskViews.size,nowCount:e,nextCount:t,ambientCount:n,totalFrames:e+t+n}}persist(e,t){return vD(t)?this.taskViews.delete(e):this.taskViews.set(e,t),t}};function vD(e){return e.now===null&&e.next.length===0&&e.ambient.length===0}var Fd=Symbol("aperture.internal.subscribeTrace");function _p(e,t){let n=[];return Fi("",e,t,n),n}function Fi(e,t,n,s){if(!Object.is(t,n)){if(t==null&&Mi(n)){for(let i of Object.keys(n).sort()){let o=e.length>0?`${e}.${i}`:i;Fi(o,void 0,n[i],s)}return}if(n==null&&Mi(t)){for(let i of Object.keys(t).sort()){let o=e.length>0?`${e}.${i}`:i;Fi(o,t[i],void 0,s)}return}if(t===void 0||n===void 0){s.push({path:e,before:t,after:n});return}if(Array.isArray(t)||Array.isArray(n)){s.push({path:e,before:t,after:n});return}if(Mi(t)&&Mi(n)){let i=new Set([...Object.keys(t),...Object.keys(n)]);for(let o of[...i].sort()){let a=e.length>0?`${e}.${o}`:o;Fi(a,t[o],n[o],s)}return}s.push({path:e,before:t,after:n})}}function Mi(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}var ED=class{recordNoop(e){return{...e,evaluation:{kind:"noop"}}}recordClear(e,t){return{...e,evaluation:{kind:"clear",taskId:t}}}recordCandidate(e,t){let{original:n,adjusted:s,explanation:i,result:o}=t,a=t.suppressed===!0,c=xD(e.event,s),l=i.record,d=AD(l,e,s,a);return{...e,evaluation:{kind:"candidate",original:n,adjusted:s},candidateTransition:wD(n,s),frameTransition:ID(e.current,a?e.current:o),heuristics:{scoreOffset:s.attentionScoreOffset??0,rationale:s.attentionRationale??[]},...c!==void 0?{semantic:c}:{},episode:TD(s),decisionRecord:l,policy:l.policy.verdict,policyRules:{gateEvaluations:l.policy.gateEvaluations,criterion:l.policy.criterion,criterionEvaluations:l.policy.criterionEvaluations},utility:{candidate:l.value.breakdown,currentScore:l.value.currentScore,currentPriority:l.value.currentPriority},planner:{kind:l.planning.route,reasons:l.planning.reasons,reasonCodes:l.planning.reasonCodes,continuityEvaluations:l.planning.continuityEvaluations},coordination:{kind:d.kind,resultLane:d.resultLane,candidateScore:l.value.claimScore,currentScore:l.value.currentScore,currentPriority:l.value.currentPriority,criterion:l.policy.criterion,ambiguity:l.planning.ambiguity,reasons:d.reasons,reasonCodes:d.reasonCodes,continuityEvaluations:d.continuityEvaluations},pressureForecast:l.evidenceSnapshot.pressureForecast,attentionBurden:l.evidenceSnapshot.attentionBurden,result:o}}};function AD(e,t,n,s){return s?{kind:"suppressed",resultLane:"none",reasons:["stale event-time candidate was suppressed by episode lifecycle"],reasonCodes:[],continuityEvaluations:[]}:{kind:e.planning.route,resultLane:ND(t.attentionView,n.taskId,n.interactionId,e.planning.route),reasons:e.planning.reasons,reasonCodes:e.planning.reasonCodes,continuityEvaluations:e.planning.continuityEvaluations}}function wD(e,t){return{changedFields:_p(e,t)}}function ID(e,t){return{changedFields:_p(e,t)}}function TD(e){return e.episodeId?{id:e.episodeId,key:e.episodeKey??e.episodeId,state:e.episodeState??"emerging",size:e.episodeSize??1,evidenceScore:e.episodeEvidenceScore??0,evidenceReasons:e.episodeEvidenceReasons??[],lastInteractionId:e.interactionId,updatedAt:e.timestamp}:null}function xD(e,t){let n=e.semantic;if(!n)return;let s=k_(t)??Z_(e),i=__(t),o=xt(t),a=n1(t);return{intentFrame:n.intentFrame,...n.activityClass!==void 0?{activityClass:n.activityClass}:{},...n.toolFamily!==void 0?{toolFamily:n.toolFamily}:{},...n.consequence!==void 0?{consequence:n.consequence}:{},...o?.confidence!==void 0?{confidence:o.confidence}:{},...o?.abstained===!0?{abstained:!0}:{},...i!==null?{observation:RD(i)}:{},...a!==null?{observationalStatusConflict:a}:{},ontology:s,...n.whyNow!==void 0?{whyNow:n.whyNow}:{},relationHints:n.relationHints,factors:n.factors,reasons:n.reasons,influence:CD(e,t),impact:OD(e,t),...n.provenance!==void 0?{provenance:n.provenance}:{}}}function RD(e){return{kind:e.kind,polarity:e.polarity,owner:e.ownership.owner,...e.ownership.toolFamily!==void 0?{toolFamily:e.ownership.toolFamily}:{},subject:e.subject,evidenceLoss:e.evidenceLoss,evidenceStrength:e.evidenceStrength,semanticAgreement:e.semanticAgreement,...e.diagnosticClass!==void 0?{diagnosticClass:e.diagnosticClass}:{},...e.recoveryHint!==void 0?{recoveryHint:e.recoveryHint}:{},provenanceOrigin:e.provenance.origin,provenanceAuthority:e.provenance.authority,consequenceBaseline:e.consequenceBaseline}}function CD(e,t){let n=e.semantic;if(!n)return[];let s=k_(t)??Z_(e),i=[];return e.type==="task.updated"?(er(t)?i.push("engine-owned observational evidence resolved noisy failed-status routing as status handling"):i.push("task status stayed authoritative for candidate routing; semantic details still affected context, continuity, ambiguity handling, and ontology diagnostics"),"activityClass"in e&&e.activityClass===n.activityClass&&n.activityClass!==void 0&&i.push("activity class enriched canonical status facts"),e.toolFamily===n.toolFamily&&n.toolFamily!==void 0&&i.push(er(t)?"tool family helped identify the observational status conflict":"tool family enriched canonical status facts without changing the route"),n.relationHints.length>0&&i.push("relation hints informed continuity handling"),s.blocking!=="non_blocking"&&!t.blocking&&i.push(s.blocking==="blocking"?"semantic blocking marked the status as blocked-like for judgment routing while status handling stayed non-blocking":"semantic waiting stayed diagnostic because status updates still route as non-blocking candidates"),Hr(t)?i.push("semantic abstention can keep non-blocking status work peripheral until clearer evidence arrives"):Ui(t)==="low"&&i.push("low semantic confidence can keep non-blocking status work peripheral until the signal is clearer"),i):e.type==="human.input.requested"?("activityClass"in e&&e.activityClass===n.activityClass&&n.activityClass!==void 0&&i.push("activity class was projected into the canonical request"),e.consequence===n.consequence&&n.consequence!==void 0&&i.push("semantic consequence set the canonical human-input consequence"),n.toolFamily!==void 0&&(e.request.kind==="approval"?i.push("tool family remained decision-bearing on the approval path"):i.push("tool family stayed semantic-only on the question/form path")),n.relationHints.length>0&&i.push("relation hints informed continuity handling"),Hr(t)?i.push(t.blocking?"semantic abstention stayed visible but did not downgrade blocking work":"semantic abstention constrained non-blocking routing"):Ui(t)==="low"&&i.push(t.blocking?"semantic low confidence stayed visible but did not downgrade blocking work":"low semantic confidence constrained non-blocking routing"),i.length===0&&i.push("semantic interpretation stayed explanatory beyond the explicit request"),i):(i.push("semantic interpretation was recorded for explanation only"),i)}function Z_(e){let t=ap(e).ontology;if(!t)throw new Error("Trace semantic summary requires compiled attention ontology.");return t}function OD(e,t){let n=e.semantic,s=new Set,i=new Set,o=new Set,a=new Set,c=new Set,l=__(t),d=xt(t),m=LD(e);if(!n)return{routingAuthority:m,decisionBearing:[],explanatory:[],canonical:[],routing:[],continuity:[],ambiguity:[],contextOnly:[]};switch(c.add("intent"),n.activityClass!==void 0&&c.add("activity"),n.toolFamily!==void 0&&c.add("tool"),n.consequence!==void 0&&c.add("consequence"),n.whyNow!==void 0&&c.add("why now"),n.relationHints.length>0&&c.add("relations"),d?.confidence!==void 0&&c.add("confidence"),d?.abstained===!0&&c.add("abstention"),l!==null&&c.add("observation"),e.type){case"task.updated":"activityClass"in e&&e.activityClass===n.activityClass&&n.activityClass!==void 0&&Z(c,s,"activity","activity (canonical)"),n.toolFamily!==void 0&&e.toolFamily===n.toolFamily&&Z(c,s,"tool","tool (bounded)"),n.relationHints.length>0&&Z(c,o,"relations","relations (continuity)"),dp(t)&&Z(c,i,"intent","blocking (judgment routing)"),er(t)&&(Z(c,i,"observation","observation (judgment contract)"),Z(c,i,"consequence","observational status conflict (judgment routing)"),Z(c,i,"intent","intent (status-conflict routing)"),Z(c,i,"activity","activity (status-conflict routing)"),Z(c,i,"tool","tool (status-conflict routing)"),Z(c,i,"confidence","confidence (status-conflict routing)"));break;case"human.input.requested":"activityClass"in e&&e.activityClass===n.activityClass&&n.activityClass!==void 0&&Z(c,s,"activity","activity (canonical)"),n.consequence!==void 0&&e.consequence===n.consequence&&Z(c,s,"consequence","consequence (canonical)"),n.toolFamily!==void 0&&e.request.kind==="approval"&&Z(c,s,"tool","tool (approval path)"),n.relationHints.length>0&&Z(c,o,"relations","relations (continuity)");break;default:n.relationHints.length>0&&Z(c,o,"relations","relations (continuity)");break}return!t.blocking&&v_(t)&&Z(c,a,"confidence","confidence (ambiguity)"),!t.blocking&&Hr(t)&&Z(c,a,"abstention","abstention (ambiguity)"),{routingAuthority:m,decisionBearing:[...s,...i,...o,...a],explanatory:[...c],canonical:[...s],routing:[...i],continuity:[...o],ambiguity:[...a],contextOnly:[...c]}}function LD(e){switch(e.type){case"task.updated":return"status";case"human.input.requested":return"request";default:return"event"}}function Z(e,t,n,s){e.delete(n),t.add(s)}function ND(e,t,n,s){return s==="auto_approve"?"none":e.now&&e.now.taskId===t&&e.now.interactionId===n?"now":e.next.some(i=>i.taskId===t&&i.interactionId===n)?"next":e.ambient.some(i=>i.taskId===t&&i.interactionId===n)?"ambient":"none"}function PD(e,t,n){return{kind:e,original:t,finalized:n,changedFields:_p(t,n)}}var MD=class{constructor(e){this.timeSource=e}engagement=null;timer=null;engage(e,t,n={},s){let i=DD(n.durationMs);this.engagement={taskId:e,interactionId:t,expiresAtMs:this.timeSource()+i},this.scheduleExpiry(i,e,t,s)}readFocusedInteractionId(e){let t=this.engagement;return t?t.expiresAtMs<=this.timeSource()?(this.clear(),null):e(t.taskId,t.interactionId)?t.interactionId:(this.clear(),null):null}clear(e,t){let n=this.engagement;n&&(e!==void 0&&n.taskId!==e||t!==void 0&&n.interactionId!==t||(this.engagement=null,this.clearTimer()))}dispose(){this.engagement=null,this.clearTimer()}scheduleExpiry(e,t,n,s){this.clearTimer(),this.timer=setTimeout(()=>{if(!(this.engagement?.taskId!==t||this.engagement?.interactionId!==n)){if(s){s();return}this.clear()}},e),this.timer.unref?.()}clearTimer(){this.timer&&(clearTimeout(this.timer),this.timer=null)}};function HS(e,t){return e.now?.interactionId===t.now?.interactionId&&WS(e.next,t.next)&&WS(e.ambient,t.ambient)}function DD(e){return e===void 0?12e3:Math.max(25,Math.floor(e))}function WS(e,t){return e.length===t.length&&e.every((n,s)=>n.interactionId===t[s]?.interactionId)}function FD(e){return e.evaluation.kind==="candidate"}function $D(e){return FD(e)}function UD(e){if(e.evaluation.kind==="noop")return{timestamp:e.timestamp,event:e.event,eventTransition:e.eventTransition,evaluation:{kind:"noop"}};if(e.evaluation.kind==="clear")return{timestamp:e.timestamp,event:e.event,eventTransition:e.eventTransition,evaluation:{kind:"clear",taskId:e.evaluation.taskId}};if(!$D(e))throw new Error("Unexpected internal trace variant");return{timestamp:e.timestamp,event:e.event,eventTransition:e.eventTransition,evaluation:{kind:"candidate"},candidateTransition:e.candidateTransition,frameTransition:e.frameTransition,...e.semantic!==void 0?{semantic:e.semantic}:{},policyRules:{gateEvaluations:e.policyRules.gateEvaluations.map(t=>({rule:t.rule,kind:t.kind,rationale:[...t.rationale]})),criterion:e.policyRules.criterion?{criterion:{activationThreshold:e.policyRules.criterion.criterion.activationThreshold,promotionMargin:e.policyRules.criterion.criterion.promotionMargin},peripheralResolution:e.policyRules.criterion.peripheralResolution,ambiguity:e.policyRules.criterion.ambiguity?{kind:e.policyRules.criterion.ambiguity.kind,reason:e.policyRules.criterion.ambiguity.reason,resolution:e.policyRules.criterion.ambiguity.resolution}:null,rationale:[...e.policyRules.criterion.rationale]}:null,criterionEvaluations:e.policyRules.criterionEvaluations.map(t=>({rule:t.rule,kind:t.kind,rationale:[...t.rationale]}))},coordination:{kind:e.coordination.kind,resultLane:e.coordination.resultLane,candidateScore:e.coordination.candidateScore,currentScore:e.coordination.currentScore,currentPriority:e.coordination.currentPriority,ambiguity:e.coordination.ambiguity?{kind:e.coordination.ambiguity.kind,reason:e.coordination.ambiguity.reason,resolution:e.coordination.ambiguity.resolution}:null,reasons:[...e.coordination.reasons],continuityEvaluations:e.coordination.continuityEvaluations.map(t=>({rule:t.rule,kind:t.kind,rationale:[...t.rationale]}))}}}var jD=3,zD=25,qD=class{frameListeners=new Map;taskViewListeners=new Map;attentionViewListeners=new Set;responseListeners=new Set;signalListeners=new Set;traceListeners=new Set;internalTraceListeners=new Set;frameHealth=ln();taskViewHealth=ln();attentionViewHealth=ln();responseHealth=ln();signalHealth=ln();traceHealth=ln();internalTraceHealth=ln();subscribeFrame(e,t,n){let s=this.frameListeners.get(e)??new Set,i=cn(t);s.add(i),this.frameListeners.set(e,s);let o=()=>{s.delete(i),s.size===0&&this.frameListeners.delete(e)};try{t(n)}catch(a){throw o(),a}return o}subscribeTaskView(e,t,n){let s=this.taskViewListeners.get(e)??new Set,i=cn(t);s.add(i),this.taskViewListeners.set(e,s);let o=()=>{s.delete(i),s.size===0&&this.taskViewListeners.delete(e)};try{t(n)}catch(a){throw o(),a}return o}subscribeAttentionView(e,t){let n=cn(e);this.attentionViewListeners.add(n);try{e(t)}catch(s){throw this.attentionViewListeners.delete(n),s}return()=>{this.attentionViewListeners.delete(n)}}onResponse(e){let t=cn(e);return this.responseListeners.add(t),()=>{this.responseListeners.delete(t)}}onSignal(e){let t=cn(e);return this.signalListeners.add(t),()=>{this.signalListeners.delete(t)}}onTrace(e){let t=cn(e);return this.traceListeners.add(t),()=>{this.traceListeners.delete(t)}}[Fd](e){let t=cn(e);return this.internalTraceListeners.add(t),()=>{this.internalTraceListeners.delete(t)}}emitFrame(e,t){let n=this.frameListeners.get(e);n&&(this.emitRegistrations(n,this.frameHealth,s=>s(t)),n.size===0&&this.frameListeners.delete(e))}emitTaskView(e,t){let n=this.taskViewListeners.get(e);n&&(this.emitRegistrations(n,this.taskViewHealth,s=>s(t)),n.size===0&&this.taskViewListeners.delete(e))}emitAttentionView(e){this.emitRegistrations(this.attentionViewListeners,this.attentionViewHealth,t=>t(e))}emitResponse(e){this.emitRegistrations(this.responseListeners,this.responseHealth,t=>t(e))}emitSignal(e){this.emitRegistrations(this.signalListeners,this.signalHealth,t=>t(e))}emitTrace(e){this.emitRegistrations(this.internalTraceListeners,this.internalTraceHealth,n=>n(e));let t=UD(e);this.emitRegistrations(this.traceListeners,this.traceHealth,n=>n(t))}getHealthSnapshot(){let e=un(this.frameHealth,ZS(this.frameListeners)),t=un(this.taskViewHealth,ZS(this.taskViewListeners)),n=un(this.attentionViewHealth,this.attentionViewListeners.size),s=un(this.responseHealth,this.responseListeners.size),i=un(this.signalHealth,this.signalListeners.size),o=un(this.traceHealth,this.traceListeners.size),a=un(this.internalTraceHealth,this.internalTraceListeners.size);return{totalActive:e.active+t.active+n.active+s.active+i.active+o.active+a.active,frame:e,taskView:t,attentionView:n,response:s,signal:i,trace:o,internalTrace:a}}emitRegistrations(e,t,n){for(let s of[...e]){let i=gS.now();try{n(s.listener),s.consecutiveFailures=0}catch(o){s.consecutiveFailures+=1,t.failures+=1,t.lastErrorAt=new Date().toISOString(),t.lastErrorMessage=o instanceof Error?o.message:String(o),s.consecutiveFailures>=jD&&(e.delete(s),t.detached+=1)}finally{let o=gS.now()-i;t.emissions+=1,o>t.maxDeliveryMs&&(t.maxDeliveryMs=o),o>=zD&&(t.slowDeliveries+=1)}}}};function cn(e){return{listener:e,consecutiveFailures:0}}function ln(){return{emissions:0,failures:0,detached:0,slowDeliveries:0,maxDeliveryMs:0,lastErrorAt:null,lastErrorMessage:null}}function un(e,t){return{active:t,emissions:e.emissions,failures:e.failures,detached:e.detached,slowDeliveries:e.slowDeliveries,maxDeliveryMs:Number(e.maxDeliveryMs.toFixed(2)),lastErrorAt:e.lastErrorAt,lastErrorMessage:e.lastErrorMessage}}function ZS(e){let t=0;for(let n of e.values())t+=n.size;return t}function G_(e){let t=BD(e);return HD(t,e.semanticHints)}function BD(e){switch(e.type){case"task.started":return{intentFrame:"task_started",activityClass:"session_status",consequence:"low",factors:["task.started"],relationHints:[],confidence:"high",reasons:DS("task_started"),provenance:Y(["intentFrame","activityClass","consequence","confidence"])};case"task.updated":return VD(e);case"human.input.requested":return KD(e);case"task.completed":return{intentFrame:"completion",activityClass:"tool_completion",consequence:"low",factors:["task.completed"],relationHints:[],confidence:"high",reasons:DS("completion"),provenance:Y(["intentFrame","activityClass","consequence","confidence"])};case"task.cancelled":return{intentFrame:"cancellation",activityClass:"status_update",consequence:"low",...e.reason?{whyNow:mn("completed",{wasCancelled:!0})??"Work was cancelled and may need review."}:{},factors:["task.cancelled"],relationHints:[],confidence:"high",reasons:Gn("completed",{wasCancelled:!0}),provenance:{...Y(["intentFrame","activityClass","consequence","confidence"]),...e.reason?Y(["whyNow"]):{}}};default:return QD(e)}}function VD(e){let t=J_(e.title,e.summary),n=z(`${e.title} ${e.summary??""}`),s=rM(n),i=sM(n),o=M_(t),a=Q_(e.title,e.summary,e.toolFamily),c=e.status==="failed"?b_(e):null,l=c?.recoveryHint==="await_authorization",{toolFamily:d,source:m}=X_(a,!l),g=o.length>0?Y(["relationHints"]):{},h=L1(o),y=ub(c),_=c?.diagnosticClass==="expected";switch(e.status){case"failed":if(y){let v=c?.consequenceBaseline??"high",M=O1(v)??h;return{intentFrame:"status_update",activityClass:"status_update",...d?{toolFamily:d}:{},consequence:v,...M!==void 0?{whyNow:M}:{},factors:["task.updated","failed","observational_failure"],relationHints:o,confidence:"high",reasons:["task status indicates failure but the update reads like observational output"],provenance:{...Y(["intentFrame","activityClass","consequence",...M!==void 0?["whyNow"]:[],"confidence"]),...Yn(m),...g}}}return{intentFrame:"failure",activityClass:"tool_failure",...d?{toolFamily:d}:{},consequence:Ur(n,c?.consequenceBaseline??"high",d),whyNow:mn("failed")??"Work has failed and should be reviewed.",factors:["task.updated","failed"],relationHints:o,confidence:s?"medium":"high",reasons:_?[...Gn("failed",{impliedAsk:s}),"failure content looks like expected diagnostic output from repro work"]:Gn("failed",{impliedAsk:s}),provenance:{...Y(["intentFrame","activityClass","consequence","whyNow","confidence"]),...Yn(m),...g}};case"blocked":return{intentFrame:"blocked_work",activityClass:"status_update",...d?{toolFamily:d}:{},consequence:Ur(n,"medium",d),whyNow:mn("blocked")??"Work is blocked and may require operator attention.",factors:["task.updated","blocked"],relationHints:o,confidence:s?"medium":"high",reasons:Gn("blocked",{impliedAsk:s}),provenance:{...Y(["intentFrame","activityClass","consequence","whyNow","confidence"]),...Yn(m),...g}};case"running":case"waiting":case"completed":return e.status==="completed"&&i===null&&!s?{intentFrame:"completion",activityClass:e.activityClass??"tool_completion",...d?{toolFamily:d}:{},consequence:Ur(n,"low",d),...h!==void 0?{whyNow:h}:{},factors:["task.updated","completed"],relationHints:o,confidence:"high",reasons:N1(),provenance:{...Y(["intentFrame","consequence",...h!==void 0?["whyNow"]:[],"confidence"]),...e.activityClass===void 0?Y(["activityClass"]):Vi(["activityClass"]),...Yn(m),...g}}:{intentFrame:i==="blocking"?"blocked_work":"status_update",activityClass:"status_update",...d?{toolFamily:d}:{},consequence:Ur(n,i==="blocking"?"medium":"low",d),...(()=>{let v=i==="blocking"?mn("blocked"):s?mn(e.status,{impliedAsk:s}):h;return v!==void 0?{whyNow:v}:{}})(),factors:["task.updated",e.status,...i==="blocking"?["semantic blocking signal"]:[]],relationHints:o,confidence:i==="blocking"?"medium":s?"low":"high",reasons:i==="blocking"?[...Gn("blocked"),"status wording indicates work cannot continue yet"]:Gn(e.status,{impliedAsk:s}),provenance:{...Y(["intentFrame","activityClass","consequence","confidence"]),...Yn(m),...i==="blocking"||s||h!==void 0?Y(["whyNow"]):{},...g}};default:return eF(e.status)}}function KD(e){let t=Q_(e.title,e.summary,e.toolFamily),{toolFamily:n,source:s}=X_(t,e.request.kind==="approval"),i=J_(e.title,e.summary),o=z(i),a=M_(i),c=e.riskHint??XD(e.request.kind,n),l=Ur(o,c,n),d=a.length>0?Y(["relationHints"]):{},m=e.riskHint==="high",g=m?"high":e.request.kind==="approval"&&n?"medium":"low";return{intentFrame:x1(e.request.kind),activityClass:R1(e.request.kind),...n?{toolFamily:n}:{},consequence:l,whyNow:C1(e.request.kind,l),factors:["human.input.requested",e.request.kind],relationHints:a,confidence:g,reasons:[e.riskHint?"source provided an explicit risk hint":"request kind establishes an explicit operator decision point",...s==="explicit"?["tool family was supplied by the source event"]:s==="inferred"?["tool family was inferred from approval wording"]:[]],provenance:{...Y(["intentFrame","activityClass","whyNow"]),...Yn(s),...e.riskHint?{...Vi(["consequence"]),...m?Vi(["confidence"]):Y(["confidence"])}:Y(["consequence","confidence"]),...d}}}function Y(e){return Y_(e,"inferred")}function Vi(e){return Y_(e,"source")}function Y_(e,t){return Object.fromEntries(e.map(n=>[n,t]))}function Yn(e){switch(e){case"explicit":return Vi(["toolFamily"]);case"inferred":return Y(["toolFamily"]);case"none":return{};default:return nF(e)}}function J_(e,t){return t?`${e}. ${t}`:e}function X_(e,t){let n=eo(e);if(n)return{toolFamily:n,source:"explicit"};if(!t)return{source:"none"};let s=l_(e);return s?{toolFamily:s,source:"inferred"}:{source:"none"}}function HD(e,t){if(!t)return e;let n=ZD(t),s=GD(e.confidence,t.confidence),i=YD(e.relationHints,t.relationHints);return{...e,...n,confidence:s,factors:Od([...e.factors??[],...t.factors??[]]),relationHints:i,reasons:Od([...e.reasons??[],...t.reasons??[]]),provenance:{...e.provenance??{},...WD(e,{...n,confidence:s,relationHints:i},t)}}}function WD(e,t,n){return{...dn("intentFrame",e,t),...dn("activityClass",e,t),...dn("toolFamily",e,t),...dn("consequence",e,t),...dn("whyNow",e,t),...JD(e.relationHints,n.relationHints),...dn("confidence",e,t),...dn("abstained",e,t)}}function ZD(e){let t={};for(let[n,s]of Object.entries(e))s!==void 0&&n!=="confidence"&&n!=="factors"&&n!=="relationHints"&&n!=="reasons"&&(t[n]=s);return t}function GD(e,t){return t&&GS(t)<GS(e)?t:e}function GS(e){switch(e){case"low":return 1;case"medium":return 2;case"high":return 3;default:return rF(e)}}function YD(e,t){if(!t||t.length===0)return e;let n=new Set,s=[];for(let i of[...e,...t]){let o=Ki(i);if(n.has(o))continue;let a=s.findIndex(c=>c.kind===i.kind&&c.target===void 0);if(i.target!==void 0&&a>=0){n.delete(Ki(s[a])),s[a]=i,n.add(o);continue}i.target===void 0&&s.some(c=>c.kind===i.kind&&c.target!==void 0)||(n.add(o),s.push(i))}return s}function dn(e,t,n){return!(e in n)||n[e]===t[e]?{}:{[e]:"hint"}}function JD(e,t){if(!t||t.length===0)return{};let n=new Set(e.map(Ki));return t.some(i=>!n.has(Ki(i)))?{relationHints:"hint"}:{}}function Ki(e){return`${e.kind}:${e.target??""}`}function XD(e,t){switch(e){case"approval":return t==="read"||t==="search"?"low":"medium";case"choice":case"form":return"medium";default:return tF(e)}}function Q_(e,t,n){return{title:e,...t!==void 0?{summary:t}:{},...n!==void 0?{toolFamily:n}:{}}}function QD(e){throw new Error(`Unhandled source event in semantic interpreter: ${JSON.stringify(e)}`)}function eF(e){throw new Error(`Unhandled task status in semantic interpreter: ${e}`)}function tF(e){throw new Error(`Unhandled human input request kind in semantic interpreter: ${e}`)}function nF(e){throw new Error(`Unhandled tool family provenance source in semantic interpreter: ${e}`)}function rF(e){throw new Error(`Unhandled semantic confidence in semantic interpreter: ${e}`)}function sF(e){let t=G_(e),n=e.type==="human.input.requested"&&e.riskHint!==void 0?{riskHint:e.riskHint}:void 0;return ek(aF(e),t,n)}function YS(e,t={}){if(t.skipSemanticDefaults)return e;let n=e.semantic??G_(cF(e));return ek(e,n)}function iF(e){switch(e){case"high":return"critical";case"medium":case"low":return"focused";default:return uF(e)}}function ek(e,t,n={}){switch(e.type){case"task.started":return{...e,semantic:t};case"task.updated":return{...e,...e.activityClass===void 0&&t.activityClass!==void 0?{activityClass:t.activityClass}:{},semantic:t};case"task.completed":case"task.cancelled":return{...e,semantic:t};case"human.input.requested":return oF(e,t,n);default:return tk(e)}}function oF(e,t,n){let{toolFamily:s,...i}=e,o=e.consequence??t.consequence??n.riskHint??"medium",a=e.tone??iF(o),c=fp({base:e.provenance,semantic:t}),l=e.request.kind==="approval"?e.toolFamily??t.toolFamily:void 0;return{...i,...l!==void 0?{toolFamily:l}:{},...e.activityClass===void 0&&t.activityClass!==void 0?{activityClass:t.activityClass}:{},semantic:t,tone:a,consequence:o,...c!==void 0?{provenance:c}:{}}}function aF(e){switch(e.type){case"task.started":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{}};case"task.updated":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{},status:e.status,...e.progress!==void 0?{progress:e.progress}:{},...e.context!==void 0?{context:e.context}:{}};case"task.completed":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.summary!==void 0?{summary:e.summary}:{}};case"task.cancelled":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.reason!==void 0?{reason:e.reason}:{}};case"human.input.requested":return{id:e.id,type:e.type,taskId:e.taskId,interactionId:e.interactionId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},title:e.title,summary:e.summary,request:e.request,...e.context!==void 0?{context:e.context}:{},...e.provenance!==void 0?{provenance:e.provenance}:{}};default:return lF(e)}}function cF(e){switch(e.type){case"task.started":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{}};case"task.updated":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{},status:e.status,...e.progress!==void 0?{progress:e.progress}:{},...e.context!==void 0?{context:e.context}:{}};case"task.completed":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.summary!==void 0?{summary:e.summary}:{}};case"task.cancelled":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.reason!==void 0?{reason:e.reason}:{}};case"human.input.requested":return{id:e.id,type:e.type,taskId:e.taskId,interactionId:e.interactionId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},title:e.title,summary:e.summary,request:e.request,...e.context!==void 0?{context:e.context}:{},...e.consequence!==void 0?{riskHint:e.consequence}:{}};default:return tk(e)}}function tk(e){throw new Error(`Unhandled ApertureEvent in semantic normalizer: ${JSON.stringify(e)}`)}function lF(e){throw new Error(`Unhandled SourceEvent in semantic normalizer: ${JSON.stringify(e)}`)}function uF(e){throw new Error(`Unhandled consequence level in semantic normalizer: ${e}`)}function dF(e){return{originalEvent:e,finalizedEvent:sF(e),transitionKind:"source_normalized"}}function pF(e,t={}){let n=t.applySemanticDefaults!==!1;return{originalEvent:e,finalizedEvent:n?YS(e):YS(e,{skipSemanticDefaults:!0}),transitionKind:n?"direct_enriched":"direct_passthrough"}}async function $d(e,t,n){try{let s=await ix(e,"utf8"),i=n(s);return i===null?(JS(e,"Failed to parse markdown state. Falling back to the in-memory default."),t):i}catch(s){return gF(s)||JS(e,"Failed to read markdown state. Falling back to the in-memory default.",s),t}}async function mF(e,t){await ox(rx(e),{recursive:!0});let n=`${e}.${process.pid}.${sx(6).toString("hex")}.tmp`,s=await ax(n,"w",384),i=!1;try{await s.writeFile(t,"utf8"),await s.sync(),await s.close(),i=!0,await cx(n,e)}catch(o){throw i||await s.close().catch(()=>{}),await lx(n).catch(()=>{}),o}}function kp(e){let t=/^(#{1,3})\s+(.+?)\s*$/.exec(e.trim());if(!t)return null;let n=t[1];if(n===void 0)return null;let s=n.length;if(s<1||s>3)return null;let i=t[2]?.trim();return i?{level:s,text:i}:null}function vp(e){let t=e.trim();if(!t.startsWith("- "))return null;let n=t.slice(2).trim(),s=n.indexOf(":");if(s===-1)return n.length>0?{text:n}:null;let i=n.slice(0,s).trim(),o=n.slice(s+1).trim();return i.length===0?null:{key:i,value:o}}function yn(e){return e==="true"?!0:e==="false"?!1:/^-?\d+(?:\.\d+)?$/.test(e)?Number(e):e}function ie(e,t){return`- ${e}: ${String(t)}`}function fF(e){return`- ${e}`}function gF(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="ENOENT"}function JS(e,t,n){let s=n===void 0?"":` ${n instanceof Error?n.message:String(n)}`;console.warn(`[aperture] ${t} (${e})${s}`)}function Hi(e){switch(e){case"ambient":return"ambient";case"next":case"queue":return"next";case"now":case"active":return"now";default:return}}async function nk(e,t){return $d(Ed(e,"APERTURE.md"),t,hF)}function hF(e){let t=new Map,n=new Map,s=new Map,i=new Map,o=null,a=null;for(let d of e.split(`
|
|
12
|
+
`)){let m=kp(d);if(m){m.level===2?(o=m.text,a=null):m.level===3&&o==="Policy"&&(a=m.text,n.has(a)||n.set(a,{}));continue}let g=vp(d);if(!(!g||!("key"in g))){if(o==="Meta"){t.set(g.key,g.value);continue}if(o==="Policy"&&a){let h=yn(g.value),y=yF(Sd(g.key));n.set(a,{...n.get(a)??{},...y==="minimumLane"?(()=>{let _=Hi(h);return _===void 0?{}:{minimumLane:_}})():{[y]:h}});continue}if(o==="Planner Defaults"){let h=Sd(g.key);if(h==="disabledContinuityRules"){let _=vF(g.value);_.length>0&&i.set(h,_);continue}let y=yn(g.value);(typeof y=="boolean"||typeof y=="number")&&i.set(h,y);continue}if(o==="Ambiguity Defaults"){let h=yn(g.value);typeof h=="number"&&s.set(Sd(g.key),h)}}}let c=bF(t.get("version")),l=t.get("updated at");return c===null||!l?null:{version:c,updatedAt:l,...n.size>0?{policy:Object.fromEntries(n.entries())}:{},...s.size>0?{ambiguityDefaults:Object.fromEntries(s.entries())}:{},...i.size>0?{plannerDefaults:Object.fromEntries(i.entries())}:{}}}function yF(e){return e==="minimumPresentation"?"minimumLane":e}function SF(e){return e!==void 0&&/^-?\d+(?:\.\d+)?$/.test(e)?Number(e):null}function bF(e){let t=SF(e);return t===_n?t:null}function Sd(e){return e.replace(/\s+([a-z])/g,(t,n)=>n.toUpperCase())}var _F={same_interaction:!0,visible_episode:!0,same_episode:!0,minimum_dwell:!0,burst_dampening:!0,deferral_escalation:!0,conflicting_interrupt:!0,decision_stream_continuity:!0,context_patience:!0},kF=Object.keys(_F);function vF(e){let t=new Set;for(let n of e.split(",")){let s=n.trim();EF(s)&&t.add(s)}return[...t]}function EF(e){return kF.includes(e)}var AF=class{rootDir;constructor(e){this.rootDir=e}loadApertureProfile(e){return $d(this.aperturePath(),e,wF)}loadMemoryProfile(e){return $d(this.memoryPath(),e,TF)}saveMemoryProfile(e){return mF(this.memoryPath(),xF(e))}aperturePath(){return Ed(this.rootDir,"APERTURE.md")}memoryPath(){return Ed(this.rootDir,"MEMORY.md")}};function wF(e){let t=new Map,n=new Map,s=new Map,i=null,o=null;for(let m of e.split(`
|
|
13
|
+
`)){let g=kp(m);if(g){g.level===2?(i=g.text,o=null):g.level===3&&i==="Tool Overrides"&&(o=g.text,s.has(o)||s.set(o,{}));continue}let h=vp(m);if(!(!h||!("key"in h))){if(i==="Meta"){Ud(t,h.key,h.value);continue}if(i==="Preferences"){Ud(n,h.key,h.value);continue}if(i==="Tool Overrides"&&o){let y=yn(h.value),_=IF($i(h.key));s.set(o,{...s.get(o)??{},..._==="minimumLane"?(()=>{let v=Hi(y);return v===void 0?{}:{minimumLane:v}})():{[_]:y}})}}}let a=Et(t,"profile id"),c=Et(t,"updated at"),l=sk(Et(t,"version"));if(!a||!c||l===null)return null;let d=CF(Et(n,"control mode"));return{version:l,operatorId:a,updatedAt:c,...n.size>0?{preferences:{...d!==null?{controlMode:d}:{},...kt(n,"quiet hours").length>0?{quietHours:kt(n,"quiet hours")}:{},...kt(n,"prefer batching for").length>0?{preferBatchingFor:kt(n,"prefer batching for")}:{},...kt(n,"always expand context for").length>0?{alwaysExpandContextFor:kt(n,"always expand context for")}:{},...kt(n,"never auto approve").length>0?{neverAutoApprove:kt(n,"never auto approve")}:{}}}:{},...s.size>0?{overrides:{tools:Object.fromEntries(s.entries())}}:{}}}function IF(e){switch(e){case"defaultPresentation":case"minimumPresentation":return"minimumLane";default:return e}}function TF(e){let t=new Map,n=new Map,s=new Map,i=new Map,o=[],a=null,c=null;for(let h of e.split(`
|
|
14
|
+
`)){let y=kp(h);if(y){y.level===2?(a=y.text,c=null):y.level===3&&(c=y.text);continue}let _=vp(h);if(_){if(a==="Meta"&&"key"in _){Ud(t,_.key,_.value);continue}if(a==="Tool Families"&&c&&"key"in _){n.set(c,{...n.get(c)??RF(),[$i(_.key)]:yn(_.value)});continue}if(a==="Source Trust"&&c&&"key"in _){let[v,M]=c.split("/").map(U=>U.trim());if(!v||!M)continue;let D=s.get(v)??{};D[M]={...D[M]??{confirmations:0,disagreements:0,trustAdjustment:0},[$i(_.key)]:yn(_.value)},s.set(v,D);continue}if(a==="Consequence Profiles"&&c&&"key"in _){i.set(c,{...i.get(c)??{rejectionRate:0},[$i(_.key)]:yn(_.value)});continue}a==="Lessons"&&"text"in _&&o.push(_.text)}}let l=Et(t,"profile id"),d=Et(t,"updated at"),m=sk(Et(t,"version")),g=rk(Et(t,"session count"));return!l||!d||m===null||g===null?null:{version:m,operatorId:l,updatedAt:d,sessionCount:g,...n.size>0?{toolFamilies:Object.fromEntries(n.entries())}:{},...s.size>0?{sourceTrust:Object.fromEntries(s.entries())}:{},...i.size>0?{consequenceProfiles:Object.fromEntries(i.entries())}:{},...o.length>0?{lessons:o}:{}}}function xF(e){let t=["# Memory","","## Meta",ie("version",e.version),ie("profile id",e.operatorId),ie("updated at",e.updatedAt),ie("session count",e.sessionCount)];if(e.toolFamilies&&Object.keys(e.toolFamilies).length>0){t.push("","## Tool Families");for(let[n,s]of Object.entries(e.toolFamilies))t.push("",`### ${n}`),t.push(ie("presentations",s.presentations)),t.push(ie("responses",s.responses)),t.push(ie("dismissals",s.dismissals)),s.avgResponseLatencyMs!==void 0&&t.push(ie("avg response latency ms",s.avgResponseLatencyMs)),s.avgDismissalLatencyMs!==void 0&&t.push(ie("avg dismissal latency ms",s.avgDismissalLatencyMs)),s.contextExpansionRate!==void 0&&t.push(ie("context expansion rate",s.contextExpansionRate)),s.returnAfterDeferralRate!==void 0&&t.push(ie("return after deferral rate",s.returnAfterDeferralRate))}if(e.sourceTrust&&Object.keys(e.sourceTrust).length>0){t.push("","## Source Trust");for(let[n,s]of Object.entries(e.sourceTrust))for(let[i,o]of Object.entries(s))t.push("",`### ${n} / ${i}`),t.push(ie("confirmations",o.confirmations)),t.push(ie("disagreements",o.disagreements)),t.push(ie("trust adjustment",o.trustAdjustment))}if(e.consequenceProfiles&&Object.keys(e.consequenceProfiles).length>0){t.push("","## Consequence Profiles");for(let[n,s]of Object.entries(e.consequenceProfiles))t.push("",`### ${n}`),t.push(ie("rejection rate",s.rejectionRate)),s.reviewedCount!==void 0&&t.push(ie("reviewed count",s.reviewedCount))}if(e.lessons&&e.lessons.length>0){t.push("","## Lessons");for(let n of e.lessons)t.push(fF(n))}return t.push(""),t.join(`
|
|
15
|
+
`)}function RF(){return{presentations:0,responses:0,dismissals:0}}function Ud(e,t,n){let s=e.get(t)??[];s.push(n),e.set(t,s)}function Et(e,t){return e.get(t)?.[0]??null}function kt(e,t){return e.get(t)??[]}function rk(e){return e!==null&&/^-?\d+(?:\.\d+)?$/.test(e)?Number(e):null}function sk(e){let t=rk(e);return t===_n?t:null}function CF(e){switch(e){case"hands-on":case"standard":case"focus":return e;default:return null}}function $i(e){return e.replace(/\s+([a-z])/g,(t,n)=>n.toUpperCase())}async function OF(e){let t=new AF(e),[n,s,i]=await Promise.all([t.loadApertureProfile(ik()),t.loadMemoryProfile(PF()),nk(e,ok())]);return{profileStore:t,markdownRootDir:e,apertureProfile:n,memoryProfile:s,policyConfig:i}}async function LF(e){let[t,n,s]=await Promise.all([e.profileStore.loadApertureProfile(e.apertureProfile??ik()),e.profileStore.loadMemoryProfile(e.memoryProfile),nk(e.markdownRootDir,e.policyConfig??ok())]);return{apertureProfile:t,memoryProfile:n,policyConfig:s}}async function NF(e){if(!e.profileStore)return null;let t=j_(e.memoryProfile,e.signals,e.now);return await e.profileStore.saveMemoryProfile(t),t}function ik(){return{version:_n,operatorId:"default",updatedAt:nr(0)}}function PF(){return{version:_n,operatorId:"default",updatedAt:nr(0),sessionCount:0}}function ok(){return{version:_n,updatedAt:nr(0)}}function bd(e){let{timestamp:t,event:n,eventTransition:s,evidence:i,taskView:o,attentionView:a}=e;return{timestamp:t,event:n,eventTransition:s,taskSummary:i.taskSignalSummary,globalSummary:i.globalSignalSummary,taskAttentionState:i.taskAttentionState,globalAttentionState:i.globalAttentionState,pressureForecast:i.pressureForecast,attentionBurden:i.attentionBurden,current:i.currentFrame,taskView:o,attentionView:a}}var MF=1;function DF(e){let t=FF(e),n=$F(e);return{taskId:e.taskId,interactionId:e.interactionId,...e.source!==void 0?{source:e.source}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},mode:e.mode,tone:e.tone,consequence:e.consequence,title:e.title,...e.summary!==void 0?{summary:e.summary}:{},...e.context!==void 0?{context:e.context}:{},...e.provenance!==void 0?{provenance:e.provenance}:{},...t!==void 0?{judgment:t}:{},...e.relationHints!==void 0?{relationHints:e.relationHints}:{},responseSpec:e.responseSpec,priority:e.priority,blocking:e.blocking,timestamp:e.timestamp,...e.attentionScoreOffset!==void 0?{scoreAdjustment:e.attentionScoreOffset}:{},...e.attentionRationale!==void 0?{scoreRationale:e.attentionRationale}:{},...n!==void 0?{episode:n}:{}}}function FF(e){let t=e.judgmentInput,n={...t.ontology!==void 0?{ontology:t.ontology}:{},...t.semanticEvidence!==void 0?{semanticEvidence:{confidence:t.semanticEvidence.confidence,source:t.semanticEvidence.source,strength:t.semanticEvidence.strength,...t.semanticEvidence.abstained?{abstained:t.semanticEvidence.abstained}:{}}}:{},...t.relationEvidence!==void 0?{relationEvidence:t.relationEvidence}:{}};return Object.keys(n).length>0?n:void 0}function $F(e){if(!(e.episodeId===void 0||e.episodeKey===void 0||e.episodeState===void 0||e.episodeSize===void 0||e.episodeEvidenceScore===void 0||e.episodeEvidenceReasons===void 0))return{id:e.episodeId,key:e.episodeKey,state:e.episodeState,size:e.episodeSize,evidenceScore:e.episodeEvidenceScore,evidenceReasons:e.episodeEvidenceReasons,lastInteractionId:e.interactionId,updatedAt:e.timestamp}}function vt(e,t,n=new WeakSet){if(e===null)return e;let s=typeof e;if(s==="string"||s==="boolean")return e;if(s==="number"){if(!Number.isFinite(e))throw new RangeError(`Attention decision record cannot contain non-finite number at ${t}.`);return e}if(s==="undefined")throw new TypeError(`Attention decision record cannot contain undefined at ${t}.`);if(s==="bigint"||s==="function"||s==="symbol")throw new TypeError(`Attention decision record cannot contain ${s} at ${t}.`);if(Array.isArray(e))return UF(e,t,n);if(typeof e=="object")return jF(e,t,n);throw new TypeError(`Attention decision record cannot contain unsupported value at ${t}.`)}function UF(e,t,n){ak(e,t,n);let s=e.map((i,o)=>{if(i===void 0)throw new TypeError(`Attention decision record cannot contain undefined at ${t}[${o}].`);return vt(i,`${t}[${o}]`,n)});return n.delete(e),s}function jF(e,t,n){let s=Object.getPrototypeOf(e);if(s!==Object.prototype&&s!==null)throw new TypeError(`Attention decision record cannot contain non-plain object at ${t}.`);if(Object.getOwnPropertySymbols(e).length>0)throw new TypeError(`Attention decision record cannot contain symbol keys at ${t}.`);ak(e,t,n);let i={};for(let[o,a]of Object.entries(e).sort(zF))a!==void 0&&(i[o]=vt(a,`${t}.${o}`,n));return n.delete(e),i}function ak(e,t,n){if(n.has(e))throw new TypeError(`Attention decision record cannot contain circular reference at ${t}.`);n.add(e)}function zF([e],[t]){return e<t?-1:e>t?1:0}function qF(e,t){let n=new Set;n.add(`route:${e.decision.kind}`),n.add(`lane:${t}`),n.add(`policy:minimum_lane:${e.policy.minimumLane}`),n.add(`pressure:level:${e.evidence.pressureForecast.level}`),n.add(`pressure:overload:${e.evidence.pressureForecast.overloadRisk}`),n.add(`evidence:operator_presence:${e.evidence.operatorPresence}`),n.add(e.evidence.currentFrame?"evidence:current_frame:present":"evidence:current_frame:absent"),n.add(e.evidence.currentEpisode?"evidence:current_episode:present":"evidence:current_episode:absent"),e.policy.autoApprove&&n.add("policy:auto_approve"),e.policy.mayInterrupt?n.add("policy:may_interrupt"):n.add("policy:peripheral_only"),e.policy.requiresOperatorResponse&&n.add("policy:requires_operator_response"),e.criterion?.peripheralResolution&&n.add(`criterion:peripheral_resolution:${e.criterion.peripheralResolution}`),e.ambiguity&&n.add(`criterion:ambiguity:${e.ambiguity.reason}`);for(let s of e.policyGateEvaluations)n.add(`policy_gate:${s.rule}:${s.kind}`);for(let s of e.policyCriterionEvaluations)n.add(`policy_criterion:${s.rule}:${s.kind}`);for(let s of e.continuityEvaluations)s.kind==="override"&&n.add(`continuity:${s.rule}:override`);return[...n].sort()}function BF(e){switch(e.kind){case"activate":return"now";case"queue":return"next";case"ambient":return"ambient";case"auto_approve":case"clear":return"none";default:return ck(e)}}function VF(e){return BF(e)}function KF(e){switch(e.kind){case"auto_approve":return{kind:"auto_approve",response:e.response};case"activate":return{kind:"activate"};case"queue":return{kind:"queue"};case"ambient":return{kind:"ambient"};default:return ck(e)}}function HF(e){return e.map(t=>t.kind==="noop"?{rule:t.rule,kind:"noop",rationale:t.rationale}:{rule:t.rule,kind:"override",decision:{kind:WF(t.decision.kind)},currentPriority:t.currentPriority,currentScore:t.currentScore,rationale:t.rationale})}function WF(e){if(e==="clear")throw new Error("Attention decision record continuity cannot project a clear transition.");return e}function ck(e){throw new Error(`Unhandled attention decision in decision record: ${JSON.stringify(e)}`)}function _d(e){let t=ZF(e);return{decision:e.decision,evaluatedAt:e.evaluatedAt,policy:e.policy,policyGateEvaluations:e.policyGateEvaluations,utility:e.utility,criterion:e.criterion,policyCriterionEvaluations:e.policyCriterionEvaluations,pressureForecast:e.evidence.pressureForecast,attentionBurden:e.evidence.attentionBurden,candidateScore:e.candidateScore,currentScore:e.currentScore,currentPriority:e.currentPriority,ambiguity:e.ambiguity,reasons:e.reasons,reasonCodes:t.planning.reasonCodes,continuityEvaluations:e.continuityEvaluations,record:t}}function ZF(e){let t=VF(e.decision),n=qF(e,t);return{schemaVersion:MF,evaluatedAt:e.evaluatedAt,decision:vt(KF(e.decision),"decision"),claim:vt(e.recordClaim??DF(e.candidate),"claim"),evidenceSnapshot:vt({pressureForecast:e.evidence.pressureForecast,attentionBurden:e.evidence.attentionBurden,operatorPresence:e.evidence.operatorPresence,currentFrameId:e.evidence.currentFrame?.id??null,currentEpisodeId:e.evidence.currentEpisode?.id??null},"evidenceSnapshot"),policy:vt({verdict:e.policy,gateEvaluations:e.policyGateEvaluations,criterion:e.criterion,criterionEvaluations:e.policyCriterionEvaluations},"policy"),value:vt({breakdown:e.utility,claimScore:e.candidateScore,currentScore:e.currentScore,currentPriority:e.currentPriority},"value"),planning:vt({route:e.decision.kind,plannedLane:t,ambiguity:e.ambiguity,reasons:e.reasons,reasonCodes:n,continuityEvaluations:HF(e.continuityEvaluations)},"planning")}}function Zr(e,t=[]){return{rule:e,kind:"noop",rationale:t}}function mt(e,t,n=t.rationale){return{rule:e,kind:"verdict",verdict:t,rationale:n}}var GF=e=>e.candidate.priority!=="background"?Zr("background"):no(e.candidate)?Zr("background",["blocked-like status semantics are concrete enough to compete with ordinary attention rules"]):mt("background",{autoApprove:!1,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!0,rationale:["background work should remain peripheral by default"]}),YF=e=>e.candidate.blocking?mt("blocking",{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!0,minimumLane:"now",minimumLaneIsSticky:!1,rationale:["blocking interactions require explicit operator attention"]}):Zr("blocking");function JF(e,t){let n=e?.policy;if(!n)return;let s=XF(t);for(let i of s){let o=n[i];if(o)return o}}function lk(e){return uk(e)?gp(e):null}function XF(e){let t=[];if(!uk(e))return t;let n=lk(e),s=[e.title,e.summary??"",...e.context?.items?.flatMap(i=>[i.label,i.value??""])??[]].join(" ").toLowerCase();return e.consequence==="low"&&n==="read"&&t.push("lowRiskRead"),e.consequence==="low"&&n==="web"&&t.push("lowRiskWeb"),s.includes(".env")&&(n==="write"||n==="edit"||n==="bash")&&t.push("envWrite"),(n==="write"||n==="edit")&&t.push("fileWrite"),n==="bash"&&e.consequence==="high"&&t.push("destructiveBash"),t}function uk(e){return e.activityClass!==void 0?QF(e.activityClass):e.mode==="approval"}function QF(e){switch(e){case"permission_request":return!0;case"question_request":case"follow_up":case"tool_completion":case"tool_failure":case"session_status":case"status_update":return!1;default:return e}}var e$=e=>{let{candidate:t,policyConfig:n,apertureProfile:s}=e,i=s?.preferences?.controlMode??"standard",o=lk(t),a=o?s?.overrides?.tools?.[o]:void 0,c=JF(n,t),l=a?.requireContextExpansion===!0||c?.requireContextExpansion===!0,d=c?.autoApprove===!0&&t.mode==="approval"&&t.responseSpec.kind==="approval"&&!l,m=d&&i==="hands-on",g=d&&!m,h=Hi(a?.minimumLane??a?.defaultPresentation)??Hi(c?.minimumLane)??(m?"now":void 0)??(l?"now":void 0),y=c?.mayInterrupt,_=!g&&(t.blocking||h==="now"||l);if(h===void 0&&y===void 0&&!a&&!g)return Zr("configured_policy");let v=[];return o&&a&&v.push(`user override applies for ${o} interactions`),c&&v.push("configured judgment policy applies to this interaction"),m&&v.push("hands-on control mode keeps configured auto-approval in the attention surface"),g?(v.push("configured judgment policy auto-approves this bounded approval"),mt("configured_policy",{autoApprove:!0,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!0,rationale:v})):_?(v.push("operator-response work cannot remain passive without auto-resolution"),mt("configured_policy",{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!0,minimumLane:"now",minimumLaneIsSticky:!1,rationale:v})):mt("configured_policy",{autoApprove:!1,mayInterrupt:y??!1,requiresOperatorResponse:_,minimumLane:h??(t.blocking?"now":"next"),minimumLaneIsSticky:h!==void 0||y===!1,rationale:v})},t$=()=>mt("interruptive_default",{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!1,minimumLane:"next",minimumLaneIsSticky:!1,rationale:["urgent non-blocking work may compete for interruptive attention"]});function _e(e,t=[]){return{rule:e,kind:"noop",rationale:t}}function ve(e,t,n=t.rationale){return{rule:e,kind:"verdict",verdict:t,rationale:n}}function dk(e,t,n){return{rule:e,kind:"adjust",criterion:t,rationale:n}}function Gr(e,t=[]){return{criterion:e,peripheralResolution:null,ambiguity:null,rationale:t}}function pk(e,t,n=[]){return{criterion:e,peripheralResolution:t,ambiguity:null,rationale:n}}function qr(e,t,n,s){return{criterion:e,peripheralResolution:t,ambiguity:n,rationale:s}}var n$=e=>{let{evidence:t,criterion:n}=e,s=t.attentionBurden.thresholdOffset;return s<=0?_e("attention_budget"):dk("attention_budget",{activationThreshold:n.activationThreshold+s,promotionMargin:n.promotionMargin+s},["sustained attention burden raises the interrupt bar until the operator load eases"])},r$=e=>{let{candidate:t,policyVerdict:n,criterion:s,peripheralResolution:i,evidence:o}=e;return!n.mayInterrupt&&n.minimumLaneIsSticky?ve("interrupt_eligibility",pk(s,i$(t,i,o.surfaceCapabilities))):t.blocking||io(t)&&!r1(t)&&!s$(t,o.attentionView)||n.autoApprove||n.requiresOperatorResponse||n.minimumLane==="now"?ve("interrupt_eligibility",Gr(s)):_e("interrupt_eligibility")};function s$(e,t){return e.episodeId!==void 0&&Je(t,e.episodeId,{excludedInteractionId:e.interactionId}).length>0}function i$(e,t,n){if(t!=="ambient"||!n.topology.supportsAmbient)return"queue";switch(e.responseSpec.kind){case"approval":case"acknowledge":case"none":return"ambient";case"choice":return(e.responseSpec.selectionMode==="multiple"?n.responses.supportsMultipleChoice:n.responses.supportsSingleChoice)&&(!e.responseSpec.allowTextResponse||n.responses.supportsTextResponse)?"ambient":"queue";case"form":return n.responses.supportsForm?"ambient":"queue"}}function mk(e){return e.mode==="status"&&e.responseSpec.kind==="acknowledge"&&lp(e)?.limitedFailureStatus===!0}function o$(e,t){return e.mode==="status"&&!t.mayInterrupt&&(t.minimumLane==="ambient"?a$(e):t.minimumLane==="next"&&mk(e))}function a$(e){if(er(e))return!0;let t=lp(e);if(t!==null)return t.stableStatusEvidence;let n=xt(e);return n!==null&&n.strength!=="weak"&&!n.abstained}var c$=e=>{let{candidate:t,evidence:n,candidateScore:s,criterion:i,peripheralResolution:o}=e;return n.currentFrame||io(t)||t.episodeId!==void 0&&Je(n.attentionView,t.episodeId,{excludedInteractionId:t.interactionId}).length>0?_e("no_active_frame"):no(t)?ve("no_active_frame",Gr(i,["blocked-like status semantics are concrete enough to fill an empty attention slot"])):s>=i.activationThreshold?ve("no_active_frame",Gr(i)):o$(t,e.policyVerdict)?ve("no_active_frame",pk(i,o,["policy-peripheral status work stays peripheral without ambiguity"])):ve("no_active_frame",qr(i,o,{kind:"interrupt",reason:"low_signal",resolution:o},["uncertain interruptive work stays peripheral until its signal is stronger"]))},l$=e=>{let{evidence:t,criterion:n,peripheralResolution:s}=e;return t.operatorPresence!=="absent"?_e("operator_absence"):ve("operator_absence",{criterion:n,peripheralResolution:s,ambiguity:null,rationale:["operator absence keeps interruptive work peripheral until foreground attention returns"]})},u$=e=>{let{candidate:t}=e;return t.mode!=="status"||t.consequence==="high"||t.tone==="critical"||no(t)?Zr("peripheral_status"):t.responseSpec.kind!=="none"?mk(t)?mt("peripheral_status",{autoApprove:!1,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"next",minimumLaneIsSticky:!1,rationale:["non-critical status work that requires acknowledgement should stay visible"]}):mt("peripheral_status",{autoApprove:!1,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!1,rationale:er(t)?["observational status-conflict work should preserve peripheral routing"]:["non-critical status work should start in the periphery"]}):mt("peripheral_status",{autoApprove:!1,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!1,rationale:["non-critical status work should start in the periphery"]})},d$=e=>{let{candidate:t,criterion:n,evidence:s,peripheralResolution:i}=e,o=m$(t,s.attentionView,i);return t.blocking?_e("semantic_uncertainty"):no(t)?_e("semantic_uncertainty",["blocked-like status semantics are concrete enough to remain eligible for ordinary interrupt rules"]):er(t)?_e("semantic_uncertainty",["observational status-conflict evidence already owns peripheral status routing"]):p$(t)?_e("semantic_uncertainty",["visible diagnostic failure evidence is concrete enough for ordinary interrupt rules"]):Hr(t)?ve("semantic_uncertainty",qr(n,o,{kind:"interrupt",reason:"low_signal",resolution:o},["semantic interpretation abstained, so non-blocking work stays peripheral until stronger explicit evidence arrives"])):Ui(t)==="low"?ve("semantic_uncertainty",qr(n,o,{kind:"interrupt",reason:"low_signal",resolution:o},["low-confidence semantic interpretation keeps non-blocking work peripheral until the signal is clearer"])):cp(t)==="weak"?ve("semantic_uncertainty",qr(n,o,{kind:"interrupt",reason:"low_signal",resolution:o},["weak semantic evidence stays peripheral until stronger source-backed context arrives"])):_e("semantic_uncertainty",xt(t)!==null?["semantic evidence is strong enough to keep ordinary interrupt rules in play"]:[])};function p$(e){return lp(e)?.visibleDiagnosticFailure===!0}function m$(e,t,n){return n==="queue"&&e.mode==="status"&&e.episodeId!==void 0&&f$(e.episodeId,e.interactionId,t)?"ambient":n}function f$(e,t,n){return Je(n,e,{lanes:["now"],excludedInteractionId:t}).length>0}var g$=e=>{let{candidate:t,candidateScore:n,currentScore:s,criterion:i,peripheralResolution:o}=e;return io(t)?_e("small_score_gap"):s===null||n<=s||n>=s+i.promotionMargin?ve("small_score_gap",Gr(i)):ve("small_score_gap",qr(i,o,{kind:"interrupt",reason:"small_score_gap",resolution:o},["small score gaps resolve to the periphery instead of stealing focus immediately"]))},h$=2,Wi=6,y$=e=>{let{candidate:t,criterion:n,sourceTrustAdjustment:s}=e,i=S$(s),o=s1(t),a=Math.max(-Wi,Math.min(Wi,i+o));if(a===0)return _e("source_trust");let c={activationThreshold:Math.max(0,n.activationThreshold-a),promotionMargin:Math.max(0,n.promotionMargin-a)},l=[...i>0?["durable source trust lowers the interrupt bar for this source"]:i<0?["low-trust source signals need a clearer margin before interrupting"]:[],...o>0?["explicit semantic evidence lowers the interrupt bar slightly"]:o<0?["inferred semantic evidence needs a clearer margin before interrupting"]:[]];return dk("source_trust",c,l)};function S$(e){return e===0?0:Math.max(-Wi,Math.min(Wi,Math.trunc(e/h$)))}var b$=[e$,YF,GF,u$,t$],_$=[l$,r$,y$,n$,d$,c$,g$],Ep=class{policyConfig;apertureProfile;memoryProfile;controlMode;constructor(e={}){this.policyConfig=e.policyConfig,this.apertureProfile=e.apertureProfile,this.memoryProfile=e.memoryProfile,this.controlMode=e.apertureProfile?.preferences?.controlMode??"standard"}evaluateGates(e){return this.explainGates(e).verdict}explainGates(e){let t=this.buildPolicyGateInput(e),n=[];for(let i of b$){let o=i(t);if(n.push(o),o.kind==="verdict")return{verdict:o.verdict,evaluations:n}}return{verdict:{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!1,minimumLane:"next",minimumLaneIsSticky:!1,rationale:["urgent non-blocking work may compete for interruptive attention"]},evaluations:n}}evaluateInterruptCriterion(e,t,n,s,i,o={}){return this.explainInterruptCriterion(e,t,n,s,i,o).verdict}explainInterruptCriterion(e,t,n,s,i,o={}){let a=this.readInterruptCriterion(o.ambiguityDefaults),c=a.criterion,l=this.readPeripheralResolution(e,t),d=this.readSourceTrustAdjustment(e),m=[...a.rationale],g=[];for(let h of _$){let y=h(this.buildPolicyCriterionInput(e,t,n,s,i,c,d,l));if(g.push(y),y.kind==="adjust"){c=y.criterion,m.push(...y.rationale);continue}if(y.kind==="verdict")return{verdict:{...y.verdict,rationale:[...m,...y.verdict.rationale]},evaluations:g}}return{verdict:{criterion:c,peripheralResolution:null,ambiguity:null,rationale:m},evaluations:g}}readInterruptCriterion(e){let t={activationThreshold:e?.nonBlockingActivationThreshold??this.policyConfig?.ambiguityDefaults?.nonBlockingActivationThreshold??J.ambiguity.nonBlockingActivationThreshold,promotionMargin:e?.promotionMargin??this.policyConfig?.ambiguityDefaults?.promotionMargin??J.ambiguity.promotionMargin};return k$(t,this.controlMode)}readPeripheralResolution(e,t){return w_(e,t.minimumLane==="ambient"?"ambient":"queue")}readSourceTrustAdjustment(e){let t=e.source?.kind??e.source?.id;return t?this.memoryProfile?.sourceTrust?.[t]?.[e.consequence]?.trustAdjustment??0:0}buildPolicyGateInput(e){return{candidate:e,...this.policyConfig!==void 0?{policyConfig:this.policyConfig}:{},...this.apertureProfile!==void 0?{apertureProfile:this.apertureProfile}:{}}}buildPolicyCriterionInput(e,t,n,s,i,o,a,c){return{candidate:e,policyVerdict:t,evidence:n,candidateScore:s,currentScore:i,criterion:o,sourceTrustAdjustment:a,peripheralResolution:c}}};function k$(e,t){switch(t){case"hands-on":return{criterion:{activationThreshold:Math.max(0,e.activationThreshold-40),promotionMargin:Math.max(0,e.promotionMargin-10)},rationale:["hands-on control mode lowers the interrupt bar for non-blocking work"]};case"focus":return{criterion:{activationThreshold:e.activationThreshold+40,promotionMargin:e.promotionMargin+10},rationale:["focus control mode raises the interrupt bar for non-blocking work"]};case"standard":return{criterion:e,rationale:[]}}}var $=J.attentionValue,Ap=class{memoryProfile;constructor(e={}){this.memoryProfile=e.memoryProfile}scoreCandidate(e){let t=this.sourceTrustAdjustment(e),n=this.consequenceCalibrationAdjustment(e),s=this.responseAffinityAdjustment(e),i=this.contextCostAdjustment(e),o=this.deferralAffinityAdjustment(e),a={priority:v$(e.priority)*100,consequence:E$(e.consequence)*10,tone:A$(e.tone),blocking:e.blocking?1e3:0,heuristics:e.attentionScoreOffset??0,sourceTrust:t,consequenceCalibration:n,responseAffinity:s,contextCost:i,deferralAffinity:o},c=e.attentionRationale?[...e.attentionRationale]:[];return t!==0&&c.push("durable source trust adjusts this interaction's utility"),n>0&&c.push("memory suggests this consequence band is often understated and deserves more attention"),n<0&&c.push("memory suggests this consequence band is often overstated and should be tempered"),s>0&&c.push("memory suggests this kind of interaction usually resolves quickly"),i<0&&c.push("memory suggests this interaction usually needs extra context before action"),o>0&&c.push("memory suggests deferred interactions of this kind are usually resumed"),{total:a.priority+a.consequence+a.tone+a.blocking+a.heuristics+a.sourceTrust+a.consequenceCalibration+a.responseAffinity+a.contextCost+a.deferralAffinity,components:a,rationale:c}}scoreAttentionFrame(e,t={}){return{total:Ye(e,t),components:{attentionAdjustment:eb(e)}}}sourceTrustAdjustment(e){let t=e.source?.kind??e.source?.id;return t?this.memoryProfile?.sourceTrust?.[t]?.[e.consequence]?.trustAdjustment??0:0}responseAffinityAdjustment(e){let t=kd(e);if(!t)return 0;let n=this.memoryProfile?.toolFamilies?.[t];return!n||n.avgResponseLatencyMs===void 0||n.presentations<$.memorySufficiency.toolFamilyPresentations||n.responses<$.memorySufficiency.toolFamilyResponses?0:n.avgResponseLatencyMs<=$.responseAffinity.fastLatencyMs?$.responseAffinity.fastBoost:n.avgResponseLatencyMs<=$.responseAffinity.mediumLatencyMs?$.responseAffinity.mediumBoost:0}consequenceCalibrationAdjustment(e){let t=this.memoryProfile?.consequenceProfiles?.[e.consequence],n=t?.rejectionRate;if(n===void 0||(t?.reviewedCount??0)<$.memorySufficiency.consequenceReviewedCount)return 0;switch(e.consequence){case"low":return n>=$.consequenceCalibration.highRejectionRate?$.consequenceCalibration.adjustments.low.highRate:n>=$.consequenceCalibration.mediumRejectionRate?$.consequenceCalibration.adjustments.low.mediumRate:0;case"medium":return n>=$.consequenceCalibration.highRejectionRate?$.consequenceCalibration.adjustments.medium.highRate:n>=$.consequenceCalibration.mediumRejectionRate?$.consequenceCalibration.adjustments.medium.mediumRate:0;case"high":return n>=$.consequenceCalibration.highRejectionRate?$.consequenceCalibration.adjustments.high.highRate:n>=$.consequenceCalibration.mediumRejectionRate?$.consequenceCalibration.adjustments.high.mediumRate:0}}contextCostAdjustment(e){let t=kd(e);if(!t)return 0;let n=this.memoryProfile?.toolFamilies?.[t]?.contextExpansionRate;return n===void 0||(this.memoryProfile?.toolFamilies?.[t]?.presentations??0)<$.memorySufficiency.toolFamilyPresentations?0:n>=$.contextCost.highRate?$.contextCost.highPenalty:n>=$.contextCost.mediumRate?$.contextCost.mediumPenalty:0}deferralAffinityAdjustment(e){let t=kd(e);if(!t)return 0;let n=this.memoryProfile?.toolFamilies?.[t]?.returnAfterDeferralRate;return n===void 0||(this.memoryProfile?.toolFamilies?.[t]?.presentations??0)<$.memorySufficiency.toolFamilyPresentations?0:n>=$.deferralAffinity.highRate?$.deferralAffinity.highBoost:n>=$.deferralAffinity.mediumRate?$.deferralAffinity.mediumBoost:0}};function kd(e){return gp(e)}function v$(e){switch(e){case"background":return 0;case"normal":return 1;case"high":return 2}}function E$(e){switch(e){case"low":return 0;case"medium":return 1;case"high":return 2}}function A$(e){switch(e){case"ambient":return 0;case"focused":return 1;case"critical":return 2}}var w$=class{policyGates;utilityScore;queuePlanner;ambiguityDefaults;constructor(e=new Ep,t=new Ap,n=new bp,s={}){this.policyGates=e,this.utilityScore=t,this.queuePlanner=n,this.ambiguityDefaults=s.ambiguityDefaults}evaluate(e){return this.explain(e).record}explain(e){let t=e.current??null,n=e.candidate,s=this.resolveEvidenceContext(t,e.context??{},e.evaluatedAt),i=this.policyGates.explainGates(n),o=i.verdict,a=this.utilityScore.scoreCandidate(n),c=s.currentFrame?Ye(s.currentFrame,{now:e.evaluatedAt}):null,l=s.pressureForecast;if(o.autoApprove)return this.explainAutoApproval(n,s,i,a,c,e.evaluatedAt,e.recordClaim);let d=this.policyGates.explainInterruptCriterion(n,o,s,a.total,c,this.ambiguityDefaults!==void 0?{ambiguityDefaults:this.ambiguityDefaults}:{}),m=d.verdict;if(m.peripheralResolution)return _d({decision:{kind:m.peripheralResolution,candidate:n},candidate:n,evidence:s,policy:o,policyGateEvaluations:i.evaluations,utility:a,criterion:m,policyCriterionEvaluations:d.evaluations,candidateScore:a.total,currentScore:c,currentPriority:s.currentFrame?Ee(s.currentFrame):null,ambiguity:m.ambiguity,reasons:[...o.rationale,...m.rationale],continuityEvaluations:[],evaluatedAt:e.evaluatedAt,...e.recordClaim!==void 0?{recordClaim:e.recordClaim}:{}});let g=this.queuePlanner.explain(s.currentFrame,n,{...s,policyVerdict:o,utility:a,pressureForecast:l,candidateScore:a.total,currentScore:c,referenceTimestamp:e.evaluatedAt});return this.explainPlanning(n,s,i,d,a,g,e.evaluatedAt,e.recordClaim)}clear(){return this.queuePlanner.clear()}explainAutoApproval(e,t,n,s,i,o,a){let c=n.verdict;return _d({decision:{kind:"auto_approve",candidate:e,response:{taskId:e.taskId,interactionId:e.interactionId,response:{kind:"approved"}}},candidate:e,evidence:t,policy:c,policyGateEvaluations:n.evaluations,utility:s,criterion:null,policyCriterionEvaluations:[],candidateScore:s.total,currentScore:i,currentPriority:null,ambiguity:null,reasons:[...c.rationale,"bounded approval work is auto-resolved instead of entering the attention surface"],continuityEvaluations:[],evaluatedAt:o,...a!==void 0?{recordClaim:a}:{}})}explainPlanning(e,t,n,s,i,o,a,c){return _d({decision:I$(o.decision),candidate:e,evidence:t,policy:n.verdict,policyGateEvaluations:n.evaluations,utility:i,criterion:s.verdict,policyCriterionEvaluations:s.evaluations,candidateScore:i.total,currentScore:o.currentScore,currentPriority:o.currentPriority,ambiguity:null,reasons:o.reasons,continuityEvaluations:o.continuityEvaluations??[],evaluatedAt:a,...c!==void 0?{recordClaim:c}:{}})}resolveEvidenceContext(e,t,n){return hp(e,oo(t),tr(n)??0)}};function I$(e){if(e.kind==="clear")throw new Error("Attention claim evaluation cannot produce a clear transition.");return e}var T$=class{evaluator;constructor(e=new Ep,t=new Ap,n=new bp,s={}){this.evaluator=new w$(e,t,n,s)}coordinate(e,t,n={}){return this.explain(e,t,n).decision}explain(e,t,n={}){return this.evaluator.explain({current:e,candidate:t,context:n,evaluatedAt:t.timestamp})}clear(){return this.evaluator.clear()}};function x$(e={}){return{apertureProfile:e.apertureProfile,baseMemoryProfile:e.memoryProfile??R$(),policyConfig:e.policyConfig,surfaceCapabilities:jd(e.surfaceCapabilities),operatorPresence:e.operatorPresence??"present",responseExpiryMs:e.responseExpiryMs,timeSource:e.timeSource??Date.now}}function vd(e){return new T$(new Ep({...e.apertureProfile!==void 0?{apertureProfile:e.apertureProfile}:{},...e.policyConfig!==void 0?{policyConfig:e.policyConfig}:{},memoryProfile:e.baseMemoryProfile}),new Ap({memoryProfile:e.baseMemoryProfile}),new bp({...e.policyConfig?.plannerDefaults!==void 0?{plannerDefaults:e.policyConfig.plannerDefaults}:{}}))}function jd(e){let t=e??Bi;return{topology:{...t.topology},responses:{...t.responses}}}function R$(){return{version:_n,operatorId:"default",updatedAt:nr(0),sessionCount:0}}function C$(e){switch(j("event.id",e.id),j("event.taskId",e.taskId),wp("event.timestamp",e.timestamp),e.source!==void 0&&j("event.source.id",e.source.id),e.metadata!==void 0&&fk("event.metadata",e.metadata),e.type){case"task.started":case"task.updated":j("event.title",e.title);break;case"human.input.requested":j("event.interactionId",e.interactionId),j("event.title",e.title),j("event.summary",e.summary);break;case"task.completed":case"task.cancelled":break;default:return F$(e)}}function O$(e){switch(j("event.id",e.id),j("event.taskId",e.taskId),wp("event.timestamp",e.timestamp),e.source&&j("event.source.id",e.source.id),e.metadata!==void 0&&fk("event.metadata",e.metadata),e.type){case"task.started":j("event.title",e.title);return;case"task.updated":j("event.title",e.title),P$("event.status",e.status);return;case"task.completed":return;case"task.cancelled":e.reason!==void 0&&j("event.reason",e.reason);return;case"human.input.requested":j("event.interactionId",e.interactionId),j("event.title",e.title),j("event.summary",e.summary),D$("event.request",e.request),e.riskHint!==void 0&&M$("event.riskHint",e.riskHint);return;default:return $$(e)}}function L$(e){switch(j("response.taskId",e.taskId),j("response.interactionId",e.interactionId),e.response.kind){case"acknowledged":case"approved":case"rejected":case"dismissed":return;case"option_selected":if(e.response.optionIds.length===0)throw new ke("response.optionIds must contain at least one option id",{field:"response.optionIds"});return;case"text_submitted":j("response.text",e.response.text);return;case"form_submitted":if(e.response.values===null||typeof e.response.values!="object"||Array.isArray(e.response.values))throw new ke("response.values must be an object",{field:"response.values"});return}}function N$(e){j("signal.taskId",e.taskId),j("signal.interactionId",e.interactionId),wp("signal.timestamp",e.timestamp),e.source!==void 0&&j("signal.source.id",e.source.id)}function j(e,t){if(typeof t!="string"||t.trim().length===0)throw new ke(`${e} must be a non-empty string`,{field:e})}function fk(e,t){if(t===null||typeof t!="object"||Array.isArray(t))throw new ke(`${e} must be an object`,{field:e})}function wp(e,t){if(j(e,t),Number.isNaN(Date.parse(t)))throw new ke(`${e} must be a valid ISO timestamp`,{field:e})}function P$(e,t){if(!["running","blocked","waiting","completed","failed"].includes(t))throw new ke(`${e} must be a valid task status`,{field:e})}function M$(e,t){if(!["low","medium","high"].includes(t))throw new ke(`${e} must be a valid consequence level`,{field:e})}function D$(e,t){if(!t||typeof t!="object"||!("kind"in t))throw new ke(`${e} must be a valid human input request`,{field:e});switch(t.kind){case"approval":return;case"choice":if(!Array.isArray(t.options)||t.options.length===0)throw new ke(`${e}.options must contain at least one option`,{field:`${e}.options`});return;case"form":if(!Array.isArray(t.fields)||t.fields.length===0)throw new ke(`${e}.fields must contain at least one field`,{field:`${e}.fields`});return;default:throw new ke(`${e} must have a supported request kind`,{field:e})}}function F$(e){throw new ke(`Unhandled ApertureEvent in validation: ${JSON.stringify(e)}`,{field:"event.type",code:"unsupported_event_variant"})}function $$(e){throw new ke(`Unhandled SourceEvent in validation: ${JSON.stringify(e)}`,{field:"event.type",code:"unsupported_event_variant"})}var U$=Symbol("aperture.internal.readHealth"),gk=class hk{listeners=new qD;taskViews=new kD;heuristics=new _x;evaluation=new aM;traceRecorder=new ED;coordinator;planner=new gM;attentionEvidence;frameLifecycle;relationLifecycle;profileStore;markdownRootDir;baseMemoryProfile;apertureProfile;policyConfig;surfaceCapabilities;operatorPresence;responseExpiryMs;clock;signals;episodes;operatorEngagement;reloadInFlight=null;constructor(t={}){let n=x$(t);this.markdownRootDir=t.markdownRootDir,this.profileStore=t.profileStore,this.apertureProfile=n.apertureProfile,this.policyConfig=n.policyConfig,this.surfaceCapabilities=n.surfaceCapabilities,this.operatorPresence=n.operatorPresence,this.responseExpiryMs=n.responseExpiryMs,this.clock=so(n.timeSource),this.signals=new bM({clock:this.clock}),this.episodes=new m1({clock:this.clock}),this.operatorEngagement=new MD(n.timeSource),this.baseMemoryProfile=n.baseMemoryProfile,this.coordinator=vd(n),this.attentionEvidence=new rD({signals:this.signals,episodes:this.episodes,clock:this.clock,getTaskView:i=>this.getTaskView(i),getAttentionView:()=>this.getAttentionView(),getOperatorPresence:()=>this.getOperatorPresence(),getSurfaceCapabilities:()=>this.getSurfaceCapabilities()});let s={taskViews:this.taskViews,planner:this.planner,episodes:this.episodes,clock:this.clock,responseExpiryMs:this.responseExpiryMs,getAttentionView:()=>this.getAttentionView(),recordSignal:i=>this.recordSignal(i),clearOperatorEngagement:(i,o)=>this.operatorEngagement.clear(i,o),notifyFrame:(i,o)=>this.listeners.emitFrame(i,o),notifyTaskView:(i,o)=>this.listeners.emitTaskView(i,o),notifyAttentionView:()=>this.listeners.emitAttentionView(this.getAttentionView()),emitResponse:i=>this.listeners.emitResponse(i)};this.frameLifecycle=new bD(s),this.relationLifecycle=new dD(s)}static async fromMarkdown(t){let{profileStore:n,markdownRootDir:s,apertureProfile:i,memoryProfile:o,policyConfig:a}=await OF(t);return new hk({apertureProfile:i,memoryProfile:o,policyConfig:a,profileStore:n,markdownRootDir:s})}async reloadMarkdown(){if(!this.profileStore||!this.markdownRootDir)return!1;if(this.reloadInFlight)return this.reloadInFlight;this.reloadInFlight=this.performMarkdownReload();try{return await this.reloadInFlight}finally{this.reloadInFlight=null}}publishSourceEvent(t){return O$(t),this.publishPreparedEvent(dF(t))}publish(t,n={}){return C$(t),this.publishPreparedEvent(pF(t,n))}publishPreparedEvent(t){let{finalizedEvent:n,originalEvent:s,transitionKind:i}=t,o=PD(i,s,n),a=this.getFrame(n.taskId),c=this.attentionEvidence.assemble(n.taskId,a),l=c.taskSignalSummary,d=c.globalSignalSummary,m=c.attentionView,g=this.evaluation.evaluate(n);switch(g.kind){case"noop":return this.notifyTrace(this.traceRecorder.recordNoop(bd({timestamp:this.nowIso(),event:n,eventTransition:o,evidence:c,taskView:c.currentTaskView,attentionView:m}))),null;case"clear":{let h=this.frameLifecycle.applyClear(n.taskId),y=this.getAttentionView();return this.notifyTrace(this.traceRecorder.recordClear(bd({timestamp:this.nowIso(),event:n,eventTransition:o,evidence:c,taskView:this.getTaskView(n.taskId),attentionView:y}),n.taskId)),h}case"candidate":{let h=this.prepareCandidateForJudgment(g.candidate,l,d),y=this.explainCandidateDecision(n.taskId,h,c),_=XS(y.decision.candidate),v=this.applyCandidateDecision(y,c,m),M=this.getAttentionView();return this.notifyTrace(this.traceRecorder.recordCandidate(bd({timestamp:this.nowIso(),event:n,eventTransition:o,evidence:c,taskView:this.getTaskView(n.taskId),attentionView:M}),{original:g.candidate,adjusted:h,explanation:y,result:v,suppressed:_})),v}}}prepareCandidateForJudgment(t,n,s){return this.episodes.assign(this.heuristics.apply(t,n,s))}explainCandidateDecision(t,n,s){let i=this.attentionEvidence.augmentContinuitySignalSummary(t,n,s);return this.coordinator.explain(s.currentFrame,n,i)}applyCandidateDecision(t,n,s){if(XS(t.decision.candidate))return null;if(t.decision.kind!=="auto_approve"&&this.relationLifecycle.shouldRetireResolvedEpisodeFrames(t.decision.candidate,s))return this.relationLifecycle.materializeResolvedEpisodeFrame(t.decision.candidate,s);switch(t.decision.kind){case"auto_approve":return this.frameLifecycle.applyAutoResponse(t.decision.candidate,t.decision.response);case"ambient":return this.applyPeripheralDecision(t,"ambient",s);case"queue":return this.applyPeripheralDecision(t,"queue",s);case"activate":return this.applyActivationDecision(t,n,s)}}applyPeripheralDecision(t,n,s){let i=t.decision.candidate,o=i.episodeId?this.frameLifecycle.findNowEpisodeFrame(i.episodeId,s):null;return n==="queue"&&o&&t.ambiguity===null&&z$(t)&&j$(i,o)?this.frameLifecycle.refreshVisibleEpisodeFrame(i,o):this.frameLifecycle.materializePeripheralFrame(i,n,s)}applyActivationDecision(t,n,s){if(t.decision.kind!=="activate")return null;let i=t.decision.candidate;if(this.frameLifecycle.shouldRetireSupersededEpisodeFrames(i,s))return this.frameLifecycle.commitFrame(this.frameLifecycle.applyResponseExpiry(this.planner.plan(i,n.currentFrame)),this.frameLifecycle.findSupersededEpisodeFrames(i,s));let o=i.episodeId?this.frameLifecycle.findPeripheralEpisodeFrame(i.episodeId,s):null;return o&&this.frameLifecycle.shouldPromotePeripheralEpisodeFrame(t)?this.frameLifecycle.promotePeripheralEpisodeFrame(i,o.frame):o?this.frameLifecycle.materializePeripheralFrame(i,Sp(i,t.policy,n.surfaceCapabilities),s):this.frameLifecycle.commitFrame(this.frameLifecycle.applyResponseExpiry(this.planner.plan(i,n.currentFrame)))}getFrame(t){return this.taskViews.get(t).now??null}subscribe(t,n){return this.listeners.subscribeFrame(t,n,this.getFrame(t))}subscribeTaskView(t,n){return this.listeners.subscribeTaskView(t,n,this.getTaskView(t))}subscribeAttentionView(t){return this.listeners.subscribeAttentionView(t,this.getAttentionView())}onResponse(t){return this.listeners.onResponse(t)}onSignal(t){return this.listeners.onSignal(t)}onTrace(t){return this.listeners.onTrace(t)}[Fd](t){return this.listeners[Fd](t)}submit(t){L$(t),this.frameLifecycle.submit(t)}getTaskView(t){return this.taskViews.get(t)}getAttentionView(){return fx(this.taskViews.values(),{globalAttentionState:this.getAttentionState(),operatorPresence:this.getOperatorPresence(),focusedInteractionId:this.readOperatorEngagementInteractionId()})}getSignals(t){return this.signals.list(t)}getSignalSummary(t){return this.signals.summarize(t)}getAttentionState(t){return pn(this.signals.summarize(t))}[U$](){return{attentionState:this.getAttentionState(),operatorPresence:this.getOperatorPresence(),responseExpiryMs:this.responseExpiryMs??null,surfaceCapabilities:this.getSurfaceCapabilities(),listeners:this.listeners.getHealthSnapshot(),stores:{taskViews:this.taskViews.stats(),signals:this.signals.stats(),episodes:this.episodes.stats()}}}getSurfaceCapabilities(){return jd(this.surfaceCapabilities)}getOperatorPresence(){return this.operatorPresence}setOperatorPresence(t){this.operatorPresence=t}engage(t,n,s={}){if(!this.frameLifecycle.findFrameByInteractionId(t,n))return;let i=this.getAttentionView();this.operatorEngagement.engage(t,n,s,()=>{let a=this.getAttentionView();this.operatorEngagement.clear(t,n);let c=this.getAttentionView();HS(a,c)||this.notifyAttentionView()});let o=this.getAttentionView();HS(i,o)||this.notifyAttentionView()}setSurfaceCapabilities(t){this.surfaceCapabilities=jd(t)}snapshotMemoryProfile(t=this.nowIso()){return j_(this.baseMemoryProfile,this.signals.list(),t)}async checkpointMemory(t=this.nowIso()){let n=await NF({profileStore:this.profileStore,memoryProfile:this.baseMemoryProfile,signals:this.signals.list(),now:t});return n?(this.baseMemoryProfile=n,this.coordinator=vd({apertureProfile:this.apertureProfile,baseMemoryProfile:this.baseMemoryProfile,policyConfig:this.policyConfig}),n):null}markViewed(t,n,s={}){let i=this.frameLifecycle.findFrame(t,n);this.recordSignal(Pi("viewed",t,n,this.nowIso(),i,s))}markTimedOut(t,n,s={}){let i=this.frameLifecycle.findFrame(t,n);this.recordSignal(Pi("timed_out",t,n,this.nowIso(),i,s))}markContextExpanded(t,n,s={}){let i=this.frameLifecycle.findFrame(t,n);this.recordSignal(Pi("context_expanded",t,n,this.nowIso(),i,s))}markContextSkipped(t,n,s={}){let i=this.frameLifecycle.findFrame(t,n);this.recordSignal(Pi("context_skipped",t,n,this.nowIso(),i,s))}recordSignal(t){N$(t),this.signals.record(t),this.listeners.emitSignal(t)}notifyFrame(t,n){this.listeners.emitFrame(t,n)}notifyTaskView(t,n){this.listeners.emitTaskView(t,n)}notifyAttentionView(){this.listeners.emitAttentionView(this.getAttentionView())}readOperatorEngagementInteractionId(){return this.operatorEngagement.readFocusedInteractionId((t,n)=>this.frameLifecycle.findFrameByInteractionId(t,n)!==null)}notifyTrace(t){this.listeners.emitTrace(t)}nowIso(){return this.clock.nowIso()}async performMarkdownReload(){let{apertureProfile:t,memoryProfile:n,policyConfig:s}=await LF({profileStore:this.profileStore,markdownRootDir:this.markdownRootDir,apertureProfile:this.apertureProfile,memoryProfile:this.baseMemoryProfile,policyConfig:this.policyConfig}),i=vd({apertureProfile:t,baseMemoryProfile:n,policyConfig:s});return this.apertureProfile=t,this.baseMemoryProfile=n,this.policyConfig=s,this.coordinator=i,!0}};function XS(e){return e.episodeObsolete===!0}function j$(e,t){return e.mode==="status"&&t.mode==="status"&&QS(e.responseSpec.kind)&&QS(t.responseSpec?.kind)}function QS(e){return e==="none"||e==="acknowledge"}function z$(e){let t=e.continuityEvaluations.find(n=>n.kind==="override");return t!==void 0&&(t.rule==="visible_episode"||t.rule==="same_episode")&&t.decision.kind==="queue"}function Ip(e){return e?{id:e.id,taskId:e.taskId,interactionId:e.interactionId,source:e.source,version:e.version,mode:e.mode,tone:e.tone,consequence:e.consequence,title:e.title,summary:e.summary,context:e.context,responseSpec:e.responseSpec,provenance:e.provenance,timing:e.timing,metadata:e.metadata}:null}function we(e){return{companyId:e,updatedAt:new Date().toISOString(),now:null,next:[],ambient:[],counts:{now:0,next:0,ambient:0,total:0}}}function Rt(){return[]}function oe(e){return{companyId:e,updatedAt:new Date().toISOString(),frames:{}}}function Pe(e,t,n,s){let i=t,o=Ip("now"in t?t.now:i.active??null),a=("next"in t?t.next:i.queued??[]).map(l=>Ip(l)).filter(l=>l!==null),c=t.ambient.map(l=>Ip(l)).filter(l=>l!==null);return{companyId:e,updatedAt:s??new Date().toISOString(),now:o,next:a,ambient:c,counts:{now:o?1:0,next:a.length,ambient:c.length,total:(o?1:0)+a.length+c.length},...n?{lastEvent:n}:{}}}function rr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function Sk(e){let t=rr(e);return t&&typeof t.taskId=="string"&&typeof t.interactionId=="string"?t:null}function yk(e){return Array.isArray(e)?e.map(Sk).filter(t=>t!==null):[]}function sr(e,t){let n=rr(t);if(!n||n.companyId!==e||typeof n.updatedAt!="string")return null;let s=rr(n.counts),i=rr(n.review),o=rr(i?.unread),a=Sk(n.now??n.active??null),c=yk(n.next??n.queued??[]),l=yk(n.ambient);return{companyId:e,updatedAt:n.updatedAt,now:a,next:c,ambient:l,counts:{now:typeof s?.now=="number"?s.now:typeof s?.active=="number"?s.active:a?1:0,next:typeof s?.next=="number"?s.next:typeof s?.queued=="number"?s.queued:c.length,ambient:typeof s?.ambient=="number"?s.ambient:l.length,total:typeof s?.total=="number"?s.total:(a?1:0)+c.length+l.length},...i?{review:{...typeof i.lastSeenAt=="string"?{lastSeenAt:i.lastSeenAt}:{},unread:{now:typeof o?.now=="number"?o.now:typeof o?.active=="number"?o.active:0,next:typeof o?.next=="number"?o.next:typeof o?.queued=="number"?o.queued:0,ambient:typeof o?.ambient=="number"?o.ambient:0,total:typeof o?.total=="number"?o.total:0}}}:{},...rr(n.lastEvent)?{lastEvent:{eventType:String(n.lastEvent.eventType),...typeof n.lastEvent.entityId=="string"?{entityId:n.lastEvent.entityId}:{},...typeof n.lastEvent.entityType=="string"?{entityType:n.lastEvent.entityType}:{}}}:{}}}var ao={topology:{supportsAmbient:!0},responses:{supportsSingleChoice:!0,supportsMultipleChoice:!1,supportsForm:!1,supportsTextResponse:!0}};var q$=100,Tp=100,bk=1800*1e3,B$=15e3,lo=class{sessions=new Map;getHealth(){return{trackedCompanies:this.sessions.size,maxCompanySessions:Tp,idleSessionTtlMs:bk,faultedCompanies:[...this.sessions.values()].filter(t=>t.persistence.state==="faulted").length,hostCacheEntries:[...this.sessions.values()].reduce((t,n)=>t+n.hostCache.size,0),cachedReconciliations:[...this.sessions.values()].filter(t=>t.reconciledCandidates!==null).length}}getCoreDiagnostics(t){let n=this.sessions.get(t);if(!n)return null;this.touchSession(n);let s=this.syncSnapshotFromCore(t,n),i=s.now?{taskId:s.now.taskId,interactionId:s.now.interactionId,signalSummary:n.core.getSignalSummary(s.now.taskId),attentionState:n.core.getAttentionState(s.now.taskId)}:null;return{eventCount:n.eventCount,persistence:{...n.persistence},surfaceCapabilities:n.core.getSurfaceCapabilities(),operatorPresence:n.core.getOperatorPresence(),globalSignalSummary:n.core.getSignalSummary(),globalAttentionState:n.core.getAttentionState(),memoryProfile:n.core.snapshotMemoryProfile(s.updatedAt),ledger:K$(n.ledger),host:{cacheEntries:n.hostCache.size,hostDataRevision:n.hostDataRevision,approvalRecords:n.approvals.records?.length??0,approvalsDirty:n.approvals.dirty,approvalAdapterLastLoadedAt:n.approvals.lastLoadedAt,approvalAdapterLastError:n.approvals.lastError},currentNowTask:i}}hasSession(t){return this.sessions.has(t)}hydrate(t,n){let s=this.sessions.get(t);if(s)return this.touchSession(s),{snapshot:s.snapshot??Pe(t,s.core.getAttentionView()),review:s.review};let i=this.buildSession(t,n);return this.sessions.set(t,i),this.pruneSessions(),{snapshot:i.snapshot??Pe(t,i.core.getAttentionView()),review:i.review}}ingest(t,n,s){let i=this.ensureSession(t),o=i.core.publish(n);return i.eventCount+=1,i.snapshot=Pe(t,i.core.getAttentionView(),s),{frame:o,snapshot:i.snapshot}}submit(t,n,s){let i=this.ensureSession(t);return i.core.submit(n),i.snapshot=Pe(t,i.core.getAttentionView(),s),i.snapshot}getSnapshot(t){let n=this.sessions.get(t);return n?(this.touchSession(n),this.syncSnapshotFromCore(t,n)):null}getLedger(t){let n=this.sessions.get(t);return n&&this.touchSession(n),[...n?.ledger??[]]}getReview(t){let n=this.sessions.get(t);return n?(this.touchSession(n),n.review):null}hasPendingPersistence(t){return this.sessions.get(t)?.pendingPersistence??!1}markPersistencePending(t){let n=this.ensureSession(t);n.pendingPersistence=!0}getPersistableState(t){let n=this.sessions.get(t);return n?(this.touchSession(n),{ledger:this.getLedger(t),snapshot:this.syncSnapshotFromCore(t,n),review:n.review}):null}setReview(t,n){let s=this.ensureSession(t);return s.review=n,this.invalidateReconciled(t),s.review}getTraces(t){let n=this.sessions.get(t);return n&&this.touchSession(n),[...n?.traces??[]]}getCachedReconciledCandidates(t,n){let s=this.sessions.get(t);s&&this.touchSession(s);let i=s?.reconciledCandidates;return!i||i.key!==n?null:i.expiresAt<=Date.now()?(s&&(s.reconciledCandidates=null,s.hostDataRevision+=1),null):[...i.candidates]}setCachedReconciledCandidates(t,n,s){let i=this.ensureSession(t);return i.reconciledCandidates={key:n,candidates:[...s],expiresAt:Date.now()+B$},[...s]}getReconciledRevision(t){return this.sessions.get(t)?.hostDataRevision??0}invalidateReconciled(t){let n=this.sessions.get(t);n&&(n.reconciledCandidates=null,n.hostDataRevision+=1)}getCachedHostValue(t,n){let s=this.sessions.get(t);if(!s)return null;this.touchSession(s);let i=s.hostCache.get(n);return i?i.expiresAt<=Date.now()?(s.hostCache.delete(n),null):i.value:null}setCachedHostValue(t,n,s,i){return this.ensureSession(t).hostCache.set(n,{value:s,expiresAt:Date.now()+Math.max(1,i)}),s}invalidateHostCache(t,n={}){let s=this.sessions.get(t);if(!s)return;let{keys:i=[],prefixes:o=[],bumpRevision:a=!0}=n;for(let c of i)s.hostCache.delete(c);if(o.length>0)for(let c of[...s.hostCache.keys()])o.some(l=>c.startsWith(l))&&s.hostCache.delete(c);a&&this.invalidateReconciled(t)}getApprovals(t){return this.sessions.get(t)?.approvals.records??null}setApprovals(t,n){let s=this.ensureSession(t);return s.approvals={records:[...n],dirty:!1,lastLoadedAt:new Date().toISOString(),lastError:void 0},[...n]}approvalsDirty(t){let n=this.sessions.get(t);return n&&this.touchSession(n),n?.approvals.dirty??!0}invalidateApprovals(t){let n=this.sessions.get(t);n&&(n.approvals={records:n.approvals.records,dirty:!0,lastLoadedAt:n.approvals.lastLoadedAt,lastError:n.approvals.lastError})}markApprovalAdapterFailure(t,n){let s=this.ensureSession(t);s.approvals={records:s.approvals.records,dirty:!0,lastLoadedAt:s.approvals.lastLoadedAt,lastError:n}}restore(t,n){let s=this.buildSession(t,n,this.sessions.get(t));return this.sessions.set(t,s),{snapshot:s.snapshot??Pe(t,s.core.getAttentionView()),review:s.review}}markPersistenceHealthy(t){let n=this.sessions.get(t);n&&(n.pendingPersistence=!1,n.persistence={state:"healthy",updatedAt:new Date().toISOString()})}markPersistenceFault(t,n){let s=this.ensureSession(t);s.persistence={state:"faulted",updatedAt:new Date().toISOString(),lastError:n}}appendLedgerEntry(t,n){let s=this.ensureSession(t);return s.ledger=[...s.ledger,n],this.getLedger(t)}applyEvent(t,n){let s=this.ensureSession(t),i=s.ledger,o=s.snapshot,a=s.eventCount;s.ledger=[...s.ledger,n];try{let c=n.sourceEvent?s.core.publishSourceEvent(n.sourceEvent):s.core.publish(n.apertureEvent);return s.eventCount+=1,s.snapshot=Pe(t,s.core.getAttentionView(),n.source,n.occurredAt),s.reconciledCandidates=null,{frame:c,ledger:this.getLedger(t),snapshot:s.snapshot}}catch(c){throw s.ledger=i,s.snapshot=o,s.eventCount=a,c}}applyResponse(t,n){let s=this.ensureSession(t),i=s.ledger,o=s.snapshot,a=s.eventCount;s.ledger=[...s.ledger,n];try{return s.core.submit(n.apertureResponse),s.snapshot=Pe(t,s.core.getAttentionView(),n.source,n.occurredAt),s.reconciledCandidates=null,{ledger:this.getLedger(t),snapshot:s.snapshot}}catch(c){throw s.ledger=i,s.snapshot=o,s.eventCount=a,c}}applyOverlayResponse(t,n){let s=this.ensureSession(t);return s.ledger=[...s.ledger,n],s.reconciledCandidates=null,{ledger:this.getLedger(t),snapshot:this.syncSnapshotFromCore(t,s)}}applySignal(t,n){let s=this.ensureSession(t),i=this.syncSnapshotFromCore(t,s);s.ledger=[...s.ledger,n],s.core.recordSignal(n.apertureSignal);let o=this.syncSnapshotFromCore(t,s);return{ledger:this.getLedger(t),snapshot:o,changed:!co(i,o)}}replaceLedger(t,n){let s=this.ensureSession(t);return s.ledger=[...n],s.reconciledCandidates=null,this.getLedger(t)}rebuildFromLedger(t,n){let s=this.sessions.get(t)?.review??oe(t),i=this.buildSession(t,{ledger:n,review:s},this.sessions.get(t));return this.sessions.set(t,i),i.snapshot??Pe(t,i.core.getAttentionView())}getCompanyCount(){return this.sessions.size}engage(t,n,s,i={}){let o=this.ensureSession(t),a=this.syncSnapshotFromCore(t,o);o.core.engage(n,s,i);let c=this.syncSnapshotFromCore(t,o);return{snapshot:c,changed:!co(a,c)}}markViewed(t,n,s,i={}){let o=this.ensureSession(t),a=this.syncSnapshotFromCore(t,o);o.core.markViewed(n,s,i);let c=this.syncSnapshotFromCore(t,o);return{snapshot:c,changed:!co(a,c)}}markContextExpanded(t,n,s,i={}){let o=this.ensureSession(t),a=this.syncSnapshotFromCore(t,o);o.core.markContextExpanded(n,s,i);let c=this.syncSnapshotFromCore(t,o);return{snapshot:c,changed:!co(a,c)}}setOperatorPresence(t,n){let s=this.ensureSession(t);return s.core.setOperatorPresence(n),this.touchSession(s),s.core.getOperatorPresence()}ensureSession(t){let n=this.sessions.get(t);return n?(this.touchSession(n),n):(n=this.createSession(t),this.sessions.set(t,n),this.pruneSessions(),n)}buildSession(t,n,s){let i=this.createSession(t);if(i.ledger=[...n.ledger],i.review=n.review??oe(t),i.approvals={records:s?.approvals.records?[...s.approvals.records]:null,dirty:s?.approvals.dirty??!0,lastLoadedAt:s?.approvals.lastLoadedAt,lastError:s?.approvals.lastError},i.hostCache=s?new Map(s.hostCache):new Map,i.hostDataRevision=s?.hostDataRevision??0,i.persistence=s?.persistence??xp(),i.traces=s?[...s.traces]:[],n.ledger.length>0){let o,a;for(let c of n.ledger)o=c.source,a=c.occurredAt,c.kind==="event"?(c.sourceEvent?i.core.publishSourceEvent(c.sourceEvent):i.core.publish(c.apertureEvent),i.eventCount+=1):c.kind==="response"?i.core.submit(c.apertureResponse):c.kind==="signal"&&i.core.recordSignal(c.apertureSignal);i.snapshot=Pe(t,i.core.getAttentionView(),o,a)}else i.snapshot=n.snapshot??Pe(t,i.core.getAttentionView());return i.persistence=s?.persistence?.state==="faulted"?s.persistence:xp(),i}createSession(t){let n=new gk({surfaceCapabilities:ao}),s=Date.now(),i={core:n,snapshot:null,ledger:Rt(),review:oe(t),pendingPersistence:!1,eventCount:0,traces:[],reconciledCandidates:null,approvals:{records:null,dirty:!0},hostCache:new Map,hostDataRevision:0,persistence:xp(),lastTouchedAt:s};return n.onTrace(o=>{i.traces=[...i.traces.slice(-(q$-1)),o]}),i}touchSession(t){t.lastTouchedAt=Date.now()}pruneSessions(){let t=Date.now();for(let[s,i]of this.sessions.entries())t-i.lastTouchedAt>bk&&this.sessions.delete(s);if(this.sessions.size<=Tp)return;let n=[...this.sessions.entries()].sort((s,i)=>s[1].lastTouchedAt-i[1].lastTouchedAt);for(;this.sessions.size>Tp&&n.length>0;){let[s]=n.shift();this.sessions.delete(s)}}syncSnapshotFromCore(t,n){let s=n.core.getAttentionView(),i=n.snapshot;if(i&&V$(i,s))return i;let o=Pe(t,s,i?.lastEvent);return n.snapshot=o,o}};function co(e,t){return!e||!t?e===t:e.now?.interactionId===t.now?.interactionId&&uo(e.next,t.next)&&uo(e.ambient,t.ambient)}function V$(e,t){return e.now?.interactionId===t.now?.interactionId&&uo(e.next,t.next)&&uo(e.ambient,t.ambient)}function uo(e,t){return e.length===t.length&&e.every((n,s)=>n.interactionId===t[s]?.interactionId)}function K$(e){return{entries:e.length,eventEntries:e.filter(t=>t.kind==="event").length,responseEntries:e.filter(t=>t.kind==="response").length,overlayResponseEntries:e.filter(t=>t.kind==="overlay-response").length,signalEntries:e.filter(t=>t.kind==="signal").length,replayStrategy:"full-ledger",compactionRecommended:e.length>2e3}}function xp(){return{state:"healthy",updatedAt:new Date().toISOString()}}function Ct(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function Qe(e){return typeof e=="string"&&e.trim().length>0?e:void 0}function Rp(e){return e===null?null:Qe(e)}function po(e){if(!Array.isArray(e))return;let t=e.filter(n=>typeof n=="string"&&n.trim().length>0);return t.length>0?t:void 0}function H$(e){if(!Array.isArray(e))return;let t=e.filter(n=>{if(typeof n!="object"||n===null)return!1;let s=n;return s.kind==="same_issue"||s.kind==="resolves"||s.kind==="supersedes"||s.kind==="repeats"||s.kind==="escalates"});return t.length>0?t:void 0}function ts(e){let t=Ct(e.metadata),n=Ct(t?.attention),s=Ct(t?.semantic),i=Ct(t?.episode),o=Ct(t?.issueIntelligence),a=Ct(t?.decision);return{entityType:Qe(t?.entityType),issueStatus:Qe(t?.issueStatus),issuePriority:Qe(t?.issuePriority),approvalStatus:Qe(t?.approvalStatus),approvalType:Qe(t?.approvalType),agentStatus:Qe(t?.agentStatus),pauseReason:Rp(t?.pauseReason),liveReconciled:typeof t?.liveReconciled=="boolean"?t.liveReconciled:void 0,activityPath:Qe(t?.activityPath),attention:n?{rationale:po(n.rationale)}:void 0,semantic:s?{confidence:s.confidence==="low"||s.confidence==="medium"||s.confidence==="high"?s.confidence:void 0,relationHints:H$(s.relationHints)}:void 0,episode:i?{size:typeof i.size=="number"?i.size:void 0,state:Qe(i.state)}:void 0,issueIntelligence:o?{matchedRuleIds:po(o.matchedRuleIds),owner:Rp(o.owner),ownerKind:o.ownerKind==="agent"||o.ownerKind==="human"?o.ownerKind:o.ownerKind===null?null:void 0,blockingTarget:Rp(o.blockingTarget)}:void 0,decision:a?{owner:a.owner==="aperture_core"||a.owner==="paperclip_reconciliation"||a.owner==="approval_overlay"||a.owner==="display_merge"?a.owner:void 0,lane:a.lane==="now"||a.lane==="next"||a.lane==="ambient"?a.lane:void 0,sourcePolicy:Qe(a.sourcePolicy),rationale:po(a.rationale),promotedFromLane:a.promotedFromLane==="next"||a.promotedFromLane==="ambient"?a.promotedFromLane:void 0}:void 0}}function kn(e,t){let n=Ct(e.metadata)??{},s=Ct(n.decision)??{},i=[...po(s.rationale)??[],...t.rationale??[]].filter((o,a,c)=>c.indexOf(o)===a);return{...e,metadata:{...n,decision:{...s,...t,...i.length>0?{rationale:i}:{}}}}}function Cp(e){return{taskId:e.taskId,interactionId:e.interactionId,response:e.action==="dismiss"?{kind:"dismissed"}:e.action==="approve"?{kind:"approved"}:e.action==="reject"?{kind:"rejected"}:e.action==="request-revision"?{kind:"rejected",reason:"revision requested"}:{kind:"acknowledged"}}}function Op(e,t){let n=e.trim();if(!n)throw new Error(`${t} is required.`);return n}function _k(e){try{let t=decodeURIComponent(e);return t.trim().length>0?t:null}catch{return null}}function et(e,t){let n=Op(e,"task kind"),s=Op(t,"task id");return`${encodeURIComponent(n)}:${encodeURIComponent(s)}`}function ns(e){if(typeof e!="string")return null;let t=e.indexOf(":");if(t<=0||t>=e.length-1)return null;let n=_k(e.slice(0,t)),s=_k(e.slice(t+1));return!n||!s?null:{kind:n,id:s}}function kk(e){return ns(e)?.kind??null}function vk(e,t){return ns(e)?.kind===t}function tt(e,t){let n=Op(t,"interaction step");return`${e}:${encodeURIComponent(n)}`}function W$(e){return e instanceof Error?e.message.toLowerCase().includes("private/reserved ranges"):!1}function Ek(e){let t=typeof e.paperclipApiBase=="string"?e.paperclipApiBase.trim():"";if(t.length===0)return null;let n=new URL(t);if(n.protocol!=="http:"&&n.protocol!=="https:")throw new Error("paperclipApiBase must be an http(s) URL.");return n.toString()}async function Ak(e,t,n,s={}){let{expectJson:i=!0,retries:o=0,headers:a,...c}=s,l=Ek(t);if(!l)throw new Error("Paperclip approval API base is not configured.");let d=new URL(n,l).toString(),m=null;for(let g=0;g<=o;g+=1)try{let h=await e.http.fetch(d,{...c,headers:{Accept:"application/json","X-Requested-With":"XMLHttpRequest",...a??{}}});if(!h.ok){let y=await h.text().catch(()=>"");throw new Error(`Request failed (${h.status})${y?`: ${y.trim()}`:""}`)}return i?await h.json():void 0}catch(h){if(m=h instanceof Error?h:new Error(String(h)),g>=o)break;await new Promise(y=>setTimeout(y,250*(g+1)))}throw m??new Error("Request failed.")}async function wk(e,t,n){if(!Ek(n))return[];try{return await Ak(e,n,`/api/companies/${t}/approvals?status=pending`,{method:"GET",retries:2})}catch(s){if(W$(s))return[];throw s}}async function Ik(e,t,n,s){let i=n==="request-revision"?`/api/approvals/${t}/request-revision`:`/api/approvals/${t}/${n}`;await Ak(e,s,i,{method:"POST",expectJson:!1,headers:{"Content-Type":"application/json"},body:JSON.stringify({})})}var Z$=1,G$=2,xk=3;function mo(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function Y$(e){return!e||typeof e!="object"?!1:typeof e.eventType=="string"}function J$(e){if(!e||typeof e!="object")return!1;let t=e;return t.kind!=="event"&&t.kind!=="response"&&t.kind!=="overlay-response"&&t.kind!=="signal"||typeof t.id!="string"||typeof t.occurredAt!="string"||!Y$(t.source)?!1:t.kind==="event"?!!t.apertureEvent&&typeof t.apertureEvent=="object":t.kind==="response"?!!t.apertureResponse&&typeof t.apertureResponse=="object":t.kind==="overlay-response"?!!t.apertureResponse&&typeof t.apertureResponse=="object"&&!!t.overlay&&typeof t.overlay=="object":!!t.apertureSignal&&typeof t.apertureSignal=="object"}function ir(e){return Array.isArray(e)&&e.every(J$)}function rs(e,t){if(!e||typeof e!="object")return!1;let n=e;return n.companyId!==t||typeof n.updatedAt!="string"||!n.frames||typeof n.frames!="object"?!1:Object.values(n.frames).every(s=>{if(!s||typeof s!="object")return!1;let i=s;return(i.lastSeenAt===void 0||typeof i.lastSeenAt=="string")&&(i.suppressedAt===void 0||typeof i.suppressedAt=="string")})}function Rk(e,t){let n=t.snapshot??we(e),s=t.review??oe(e);return{schemaVersion:xk,payload:{companyId:e,ledger:[...t.ledger],snapshot:n,review:s,meta:fo(t.ledger)}}}function Ck(e,t){let n=mo(t);if(!n)return null;let s=n.schemaVersion;return s===xk||s===G$?Tk(e,n):s===Z$?X$(e,n):s===void 0?Q$(e,n):null}function fo(e,t=new Date().toISOString()){let n=e.length;return{persistedAt:t,ledgerEntries:n,eventEntries:e.filter(s=>s.kind==="event").length,responseEntries:e.filter(s=>s.kind==="response").length,overlayResponseEntries:e.filter(s=>s.kind==="overlay-response").length,signalEntries:e.filter(s=>s.kind==="signal").length,replayStrategy:"full-ledger",compactionRecommended:n>2e3}}function Tk(e,t){let n=mo(t.payload);if(!n||n.companyId!==e)return null;let s=ir(n.ledger)?n.ledger:Rt(),i=sr(e,n.snapshot),o=rs(n.review,e)?n.review:oe(e);return i?{companyId:e,ledger:s,snapshot:i,review:o,meta:eU(n.meta,s)}:null}function X$(e,t){let n=mo(t.payload);if(!n||n.companyId!==e)return null;let s=ir(n.ledger)?n.ledger:Rt(),i=sr(e,n.snapshot),o=rs(n.review,e)?n.review:oe(e);return i?{companyId:e,ledger:s,snapshot:i,review:o,meta:fo(s)}:null}function Q$(e,t){if(t.companyId!==e)return null;let n=ir(t.ledger)?t.ledger:Rt(),s=sr(e,t.snapshot),i=rs(t.review,e)?t.review:oe(e);return s?{companyId:e,ledger:n,snapshot:s,review:i,meta:fo(n)}:null}function eU(e,t){let n=mo(e);return n&&typeof n.persistedAt=="string"&&typeof n.ledgerEntries=="number"&&typeof n.eventEntries=="number"&&typeof n.responseEntries=="number"?{persistedAt:n.persistedAt,ledgerEntries:n.ledgerEntries,eventEntries:n.eventEntries,responseEntries:n.responseEntries,overlayResponseEntries:typeof n.overlayResponseEntries=="number"?n.overlayResponseEntries:t.filter(s=>s.kind==="overlay-response").length,signalEntries:typeof n.signalEntries=="number"?n.signalEntries:t.filter(s=>s.kind==="signal").length,replayStrategy:"full-ledger",compactionRecommended:typeof n.compactionRecommended=="boolean"?n.compactionRecommended:t.length>2e3}:fo(t)}var Lk="attention-state",Nk="attention-snapshot",Pk="attention-ledger",Mk="attention-review",Ok="attention-updates",go=new Map,Lp=[10,30];function le(e,t){let n=e[t];if(typeof n=="string"&&n.trim().length>0)return n;throw new Error(`${t} is required`)}function X(e){return le(e,"companyId")}function ho(e){let t=e instanceof Error?e.message:String(e);return t.includes("invocation scope")||t.includes("not allowed to perform")}async function Dk(e,t){let n=go.get(e)??Promise.resolve(),s,i=new Promise(a=>{s=a}),o=n.catch(()=>{}).then(()=>i);go.set(e,o),await n.catch(()=>{});try{return await t()}finally{s(),go.get(e)===o&&go.delete(e)}}async function ss(e,t){let n=await e.state.get({scopeKind:"company",scopeId:t,stateKey:Lk});return Ck(t,n)}async function Fk(e,t,n){await e.state.set({scopeKind:"company",scopeId:t,stateKey:Lk},Rk(t,n))}function vn(e,t){e.streams.open(Ok,t.companyId),e.streams.emit(Ok,t)}async function $k(e,t,n){return Dk(n,async()=>{if(!t.hasPendingPersistence(n))return!1;let s=t.getPersistableState(n);if(!s)return!1;try{return await Fk(e,n,s),t.markPersistenceHealthy(n),!0}catch(i){let o=i instanceof Error?i.message:String(i);return ho(i)?e.logger.warn("Aperture pending state could not be persisted in this host callback; will retry from the next scoped invocation.",{companyId:n,error:o}):(t.markPersistenceFault(n,o),e.logger.warn("Failed to persist pending Aperture event state.",{companyId:n,error:o})),!1}})}async function Uk(e,t){for(let n=0;n<=Lp.length;n+=1)try{await e();return}catch(s){let i=n===Lp.length;if(t(s,n+1,i),i)return;await new Promise(o=>{setTimeout(o,Lp[n])})}}async function En(e,t,n){await Uk(async()=>{await e.telemetry.track(t,{surface:"focus",...n??{}})},(s,i,o)=>{e.logger.warn(o?"Failed to emit Focus telemetry after retries":"Retrying Focus telemetry after failure",{eventName:t,attempt:i,error:s instanceof Error?s.message:String(s)})})}async function Np(e,t){await Uk(async()=>{await e.activity.log({companyId:t.companyId,message:t.message,...t.entityType?{entityType:t.entityType}:{},...t.entityId?{entityId:t.entityId}:{},...t.metadata?{metadata:t.metadata}:{}})},(n,s,i)=>{e.logger.warn(i?"Failed to write Focus activity log entry after retries":"Retrying Focus activity log entry after failure",{message:t.message,entityType:t.entityType,entityId:t.entityId,attempt:s,error:n instanceof Error?n.message:String(n)})})}async function An(e,t,n,s){return Dk(n,async()=>{let i=await ss(e,n),o=t.getLedger(n),a=t.getSnapshot(n)??we(n),c=t.getReview(n)??i?.review??oe(n),l=i??{companyId:n,ledger:o,snapshot:a,review:c};try{let d=await s();try{return d.review&&t.setReview(n,d.review),await Fk(e,n,{ledger:d.ledger,snapshot:d.snapshot,review:d.review??t.getReview(n)??c}),t.markPersistenceHealthy(n),d}catch(m){throw t.restore(n,l),t.markPersistenceFault(n,m instanceof Error?m.message:String(m)),m}}catch(d){throw t.restore(n,l),d}})}async function yo(e,t,n){let s=t.getReview(n);if(s)return s;let i=await ss(e,n);return i?.review?i.review:oe(n)}function So(e,t,n,s=!1){let i=new Date().toISOString(),o={...e,updatedAt:i,lastSeenAt:i,frames:{...e.frames}};for(let a of n){let c=o.frames[a]??{};o.frames[a]={...c,lastSeenAt:i,...s?{suppressedAt:i}:{}}}return o}function tU(e,t){return e?[...e.now?[e.now]:[],...e.next,...e.ambient].some(s=>s.taskId===t):!1}function jk(e){return kk(e)??"unknown"}function nU(e,t){return e?e.now?.taskId===t?"now":e.next.some(n=>n.taskId===t)?"next":e.ambient.some(n=>n.taskId===t)?"ambient":"ui_only":"ui_only"}function Pp(e){let t=e.occurredAt??new Date().toISOString();return{kind:"signal",id:`${e.taskId}:${e.signal.kind}:${t}`,occurredAt:t,source:{eventType:e.sourceEventType,entityId:e.sourceEntityId??e.taskId,entityType:jk(e.taskId)},apertureSignal:{...e.signal,taskId:e.taskId,interactionId:e.interactionId,timestamp:t}}}function is(e,t){let n=nU(e,t),s=jk(t),i=n==="ui_only"?null:n==="now"?e?.now??null:n==="next"?e?.next.find(a=>a.taskId===t)??null:e?.ambient.find(a=>a.taskId===t)??null,o={entityType:s,lane:n};if(i?.mode&&(o.mode=i.mode),i?.source?.kind&&(o.sourceKind=i.source.kind),i){let a=ts(i);typeof a.liveReconciled=="boolean"&&(o.liveReconciled=a.liveReconciled)}return o}function rU(e){let t=ns(e);return t?.kind==="approval"?t.id:null}function zk(e,t){e.actions.register("set-focus-presence",async n=>{let s=X(n),o=le(n,"presence")==="absent"?"absent":"present";return{ok:!0,operatorPresence:t.setOperatorPresence(s,o)}}),e.actions.register("mark-attention-viewed",async n=>{let s=X(n),i=le(n,"taskId"),o=le(n,"interactionId"),a=typeof n.surface=="string"&&n.surface.trim().length>0?n.surface.trim():"focus",c=t.getSnapshot(s),l=Pp({taskId:i,interactionId:o,sourceEventType:"plugin.local.viewed",signal:{kind:"viewed",surface:a}}),{snapshot:d,changed:m}=await An(e,t,s,()=>{let{ledger:g,snapshot:h,changed:y}=t.applySignal(s,l);return{ledger:g,snapshot:h,changed:y}});return m&&vn(e,{companyId:s,reason:"action",eventType:"plugin.local.viewed",updatedAt:d.updatedAt,counts:d.counts}),await En(e,"frame_viewed",{...is(c,i),surface:a}),{ok:!0,snapshot:d,changed:m}}),e.actions.register("engage-focus",async n=>{let s=X(n),i=le(n,"taskId"),o=le(n,"interactionId"),a=typeof n.durationMs=="number"&&Number.isFinite(n.durationMs)?Math.max(25,Math.floor(n.durationMs)):void 0,c=typeof n.reason=="string"&&n.reason.trim().length>0?n.reason.trim():"operator_interaction",l=t.getSnapshot(s),d=new Date().toISOString(),m=[Pp({taskId:i,interactionId:o,occurredAt:d,sourceEventType:"plugin.local.engage.viewed",signal:{kind:"viewed",surface:"focus"}}),...c==="show_context"||c==="comment_compose"?[Pp({taskId:i,interactionId:o,occurredAt:d,sourceEventType:"plugin.local.engage.context_expanded",signal:{kind:"context_expanded",surface:"focus",section:c==="show_context"?"now_context":"comment_compose"}})]:[]],{snapshot:g,changed:h}=await An(e,t,s,()=>{let y=t.engage(s,i,o,{durationMs:a}),_=t.getLedger(s),v=y.snapshot,M=!1;for(let D of m){let U=t.applySignal(s,D);_=U.ledger,v=U.snapshot,M||=U.changed}return{ledger:_,snapshot:v,changed:y.changed||M}});return h&&vn(e,{companyId:s,reason:"action",eventType:"plugin.local.engage",updatedAt:g.updatedAt,counts:g.counts}),await En(e,"focus_engaged",{...is(l,i),actionKind:"engage",reason:c,...a?{durationMs:a}:{}}),{ok:!0,snapshot:g,changed:h}}),e.actions.register("acknowledge-frame",async n=>{let s=X(n),i=le(n,"taskId"),o=le(n,"interactionId"),a=Cp({taskId:i,interactionId:o,action:"acknowledge"}),c={kind:"response",id:`${i}:acknowledge:${Date.now()}`,occurredAt:new Date().toISOString(),source:{eventType:"plugin.local.acknowledge",entityId:i},apertureResponse:a},l=t.getSnapshot(s),d=await yo(e,t,s),m=So(d,s,[i],!0),{snapshot:g}=await An(e,t,s,()=>{let{ledger:h,snapshot:y}=t.applyResponse(s,c);return{ledger:h,snapshot:y,review:m}});return vn(e,{companyId:s,reason:"action",eventType:"plugin.local.acknowledge",updatedAt:g.updatedAt,counts:g.counts}),await En(e,"frame_acknowledged",{...is(l,i)}),{ok:!0,snapshot:g}}),e.actions.register("comment-on-issue",async n=>{let s=X(n),i=le(n,"taskId"),o=le(n,"issueId"),a=le(n,"body").trim(),c=ns(i);if(!c||c.kind!=="issue")throw new Error("Comments can only be posted on issue-backed frames.");if(c.id!==o)throw new Error("Issue comment target does not match the selected frame.");let l=await e.issues.createComment(o,a,s),d=t.getSnapshot(s),m=await yo(e,t,s),g=So(m,s,[i],!1),{snapshot:h}=await An(e,t,s,()=>(t.invalidateHostCache(s,{keys:[`issue:${o}:detail`,`issue:${o}:comments`],prefixes:["issues:blocked","issues:in_review"]}),t.setReview(s,g),{ledger:t.getLedger(s),snapshot:t.getSnapshot(s)??we(s),review:g}));return vn(e,{companyId:s,reason:"action",eventType:"plugin.local.comment",updatedAt:h.updatedAt,counts:h.counts}),await En(e,"issue_comment_submitted",{...is(d,i),actionKind:"comment"}),await Np(e,{companyId:s,message:"Posted an issue comment from Focus.",entityType:"issue",entityId:o,metadata:{source:"focus",taskId:i}}),{ok:!0,comment:l,review:g}}),e.actions.register("record-approval-response",async n=>{let s=X(n),i=le(n,"taskId"),o=le(n,"interactionId"),a=le(n,"decision");if(!vk(i,"approval"))throw new Error("Approval responses can only be recorded for approval-backed frames.");if(!["approve","reject","request-revision"].includes(a))throw new Error("decision must be approve, reject, or request-revision.");let c=Cp({taskId:i,interactionId:o,action:a}),l={kind:"response",id:`${i}:${a}:${Date.now()}`,occurredAt:new Date().toISOString(),source:{eventType:`plugin.local.approval.${a}`,entityId:i},apertureResponse:c},d=rU(i);if(!d)throw new Error("Approval responses require a durable approval id.");let m=await e.config.get();await Ik(e,d,a,m),t.invalidateApprovals(s);let g=await yo(e,t,s),h=So(g,s,[i],!0),y=t.getSnapshot(s),_=tU(y,i),{snapshot:v}=await An(e,t,s,()=>{if(_){let{ledger:F,snapshot:te}=t.applyResponse(s,l);return{ledger:F,snapshot:te,review:h}}let M={kind:"overlay-response",id:l.id,occurredAt:l.occurredAt,source:l.source,apertureResponse:l.apertureResponse,overlay:{kind:"approval_overlay",reason:"Approval frame came from the Paperclip approvals display adapter, not the replayed Core snapshot."}},{ledger:D,snapshot:U}=t.applyOverlayResponse(s,M);return{ledger:D,snapshot:U,review:h}});return vn(e,{companyId:s,reason:"action",eventType:`plugin.local.approval.${a}`,updatedAt:v.updatedAt,counts:v.counts}),await En(e,"approval_response_recorded",{...is(y,i),decision:a==="request-revision"?"request_revision":a}),await Np(e,{companyId:s,message:a==="approve"?"Approved a Focus approval.":a==="reject"?"Rejected a Focus approval.":"Requested revision on a Focus approval.",entityType:"approval",entityId:d,metadata:{source:"focus",decision:a,taskId:i}}),{ok:!0,snapshot:v,review:h}}),e.actions.register("mark-attention-seen",async n=>{let s=X(n),i=Array.isArray(n.taskIds)?n.taskIds.filter(l=>typeof l=="string"&&l.trim().length>0):[];if(i.length===0)throw new Error("taskIds must include at least one frame task id.");let o=await yo(e,t,s),a=So(o,s,i),{snapshot:c}=await An(e,t,s,()=>(t.setReview(s,a),{ledger:t.getLedger(s),snapshot:t.getSnapshot(s)??we(s),review:a}));return vn(e,{companyId:s,reason:"action",eventType:"plugin.local.seen",updatedAt:c.updatedAt,counts:c.counts}),await En(e,"attention_seen_marked",{frameCount:i.length}),{ok:!0,review:a,snapshot:c}})}var q={approvalType:"approval-type",requestedAmount:"requested-amount",budgetReason:"budget-reason",decisionContext:"decision-context",linkedIssues:"linked-issues",needsActionFrom:"needs-action-from",blockedBy:"blocked-by",blocksTarget:"blocks-target",recommendedMove:"recommended-move",issueStatus:"issue-status",issuePriority:"issue-priority",issueWorkMode:"issue-work-mode",blockedReason:"blocked-reason",blockedSeverity:"blocked-severity",recoveryAction:"recovery-action",watchdog:"watchdog",documentLock:"document-lock",latestComment:"latest-comment",agentStatus:"agent-status",pauseReason:"pause-reason",agentTitle:"agent-title"};function B(e,t,n){return{id:e,label:t,value:n}}function Me(e){return e.split(/[_\-.]/g).filter(Boolean).map(t=>t.slice(0,1).toUpperCase()+t.slice(1)).join(" ")}function bo(e){return B(q.approvalType,"Type",e)}function _o(e){return B(q.requestedAmount,"Requested amount",e)}function ko(e){return B(q.budgetReason,"Reason",e)}function vo(e){return B(q.decisionContext,"Decision context",e)}function qk(e){return B(q.linkedIssues,"Linked issues",e)}function Bk(e){return B(q.needsActionFrom,"Needs action from",e)}function Vk(e){return B(q.blockedBy,"Blocked by",e)}function Kk(e){return B(q.blocksTarget,"Blocks",e)}function Hk(e){return B(q.recommendedMove,"Recommended move",e)}function Wk(e){return B(q.issueStatus,"Status",e)}function Zk(e){return B(q.issuePriority,"Priority",e)}function Gk(e){return B(q.issueWorkMode,"Mode",e)}function Yk(e){return B(q.blockedReason,"Blocked reason",e)}function Jk(e){return B(q.blockedSeverity,"Severity",e)}function Xk(e){return B(q.recoveryAction,"Recovery",e)}function Qk(e){return B(q.watchdog,"Watchdog",e)}function ev(e){return B(q.documentLock,"Document lock",e)}function tv(e){return B(q.latestComment,"Latest comment",e)}function nv(e){return B(q.agentStatus,"Status",e)}function rv(e){return B(q.pauseReason,"Pause reason",e)}function sv(e){return B(q.agentTitle,"Role",e)}var sU=300*1e3;function os(e,t){return e.timing.updatedAt||t}function iv(e){if(!e)return null;let t=Date.parse(e);return Number.isFinite(t)?t:null}function iU(e,t,n){let s=iv(os(e,t)),i=iv(n);return s===null||i===null?!1:i-s>sU}function ov(){return{now:0,next:0,ambient:0,total:0}}function av(e,t){return e?.frames[t]}function oU(e,t,n){let s=av(n,e.taskId)?.suppressedAt;return s?os(e,t).localeCompare(s)<=0:!1}function Mp(e,t,n){let s=os(e,t),i=av(n,e.taskId)?.lastSeenAt??n?.lastSeenAt;return i?s.localeCompare(i)>0:!0}function aU(e,t){let n=ov();return e.now&&Mp(e.now,e.updatedAt,t)&&(n.now+=1),n.next=e.next.filter(s=>Mp(s,e.updatedAt,t)).length,n.ambient=e.ambient.filter(s=>Mp(s,e.updatedAt,t)).length,n.total=n.now+n.next+n.ambient,n}function cU(e,t){return{...e,review:{lastSeenAt:t?.lastSeenAt,unread:aU(e,t)}}}function or(e,t,n,s,i=new Date().toISOString()){let o=e??{companyId:t,updatedAt:new Date().toISOString(),now:null,next:[],ambient:[],counts:ov()},a=new Set(n.map(F=>F.frame.taskId)),l=[...[...o.now?[{frame:o.now,lane:"now"}]:[],...o.next.map(F=>({frame:F,lane:"next"})),...o.ambient.map(F=>({frame:F,lane:"ambient"}))].filter(F=>!a.has(F.frame.taskId)),...n].filter(F=>!oU(F.frame,o.updatedAt,s)),d=F=>l.filter(te=>te.lane===F).sort((te,Te)=>os(Te.frame,o.updatedAt).localeCompare(os(te.frame,o.updatedAt))),m=d("now"),g=d("next"),h=d("ambient").filter(F=>!iU(F.frame,o.updatedAt,i)),y=m.shift()??null,_=y?null:g.shift()??null,v=y??_,M=[...m,...g].map(F=>F.frame),D=h.map(F=>F.frame),U=_?kn(_.frame,{owner:"display_merge",lane:"now",sourcePolicy:"mergeStoredFrames.promoteNextWhenNowEmpty",promotedFromLane:"next",rationale:["No explicit now candidate was available, so the highest next candidate became the active focus."]}):v?.frame??null;return cU({...o,now:U,next:M,ambient:D,counts:{now:U?1:0,next:M.length,ambient:D.length,total:(U?1:0)+M.length+D.length}},s)}function Eo(e){return e?"Budget controls are blocking work until a board decision lands.":"A board decision is blocking work in Paperclip."}function as(e){return e?"Budget controls are blocking work until a board decision lands.":"Paperclip is waiting on a human approval before work can continue."}function cv(e){return e.status==="error"?{whyNow:"This agent is in an error state and may have a failed or stalled run.",factors:["run failed","operator review"]}:e.status==="pending_approval"?{whyNow:"This agent is paused behind a human approval gate.",factors:["pending approval","waiting on human"]}:e.pauseReason==="budget"?{whyNow:"This agent is paused by budget controls.",factors:["budget stop","paused work"]}:{whyNow:"This agent is paused and may represent stale work.",factors:["paused work"]}}function lv(e){return e.status==="error"?"An agent needs operator attention after entering an error state.":e.status==="pending_approval"?"A human decision is required before this agent can continue.":e.pauseReason==="budget"?"Budget controls are holding this agent in a paused state.":"This agent is paused and may need a quick operator check."}function uv(e){return e.status==="error"?`${e.name} needs attention`:e.status==="pending_approval"?`${e.name} is waiting for approval`:`${e.name} is paused`}function dv(){return"An agent run failed and may need operator attention."}function pv(){return"A Paperclip-managed run failed and is now competing for operator attention."}function mv(){return"Agent waiting for approval"}function fv(){return"A Paperclip-managed agent cannot continue until a pending approval is resolved."}function Dp(){return"The agent is paused behind a Paperclip approval gate."}function lU(e){let t=e.payload??{},n=typeof t.title=="string"?t.title:typeof t.plan=="string"?t.plan:typeof t.name=="string"?t.name:null;return n||`${Me(e.type)} approval`}function Fp(e){return e.type==="budget_override_required"}function uU(e){return e?e.filter(t=>t.status==="pending"||t.status==="revision_requested").sort((t,n)=>{let s=Fp(t)?1:0,i=Fp(n)?1:0;return s!==i?i-s:(n.updatedAt??n.createdAt).localeCompare(t.updatedAt??t.createdAt)}):[]}function dU(e){let t=et("approval",e.id),n=e.payload??{},s=Fp(e),i=typeof n.requestedAmount=="string"?n.requestedAmount:void 0,o=typeof n.reason=="string"?n.reason:void 0,a=typeof n.decisionContext=="string"?n.decisionContext:void 0,c=typeof n.summary=="string"?n.summary:Eo(s),l=e.updatedAt??e.createdAt,d={whyNow:as(s),factors:s?["budget stop","approval","operator decision"]:["approval","operator decision"]};return kn({id:`approval-bootstrap:${e.id}`,taskId:t,interactionId:tt(t,"approval"),source:{id:"paperclip:approval",kind:"paperclip",label:"Paperclip approval"},version:1,mode:"approval",tone:"focused",consequence:s?"high":"medium",title:lU(e),summary:c,context:{items:[{...bo(Me(e.type))},...i?[_o(i)]:[],...o?[ko(o)]:[],...a?[vo(a)]:[]]},responseSpec:{kind:"approval",actions:[{id:"approve",label:"Approve",kind:"approve",emphasis:"primary"},{id:"reject",label:"Reject",kind:"reject",emphasis:"danger"},...s?[{id:"request-revision",label:"Request revision",kind:"cancel",emphasis:"secondary"}]:[]]},provenance:d,timing:{createdAt:e.createdAt,updatedAt:l},metadata:{entityType:"approval",approvalStatus:e.status,approvalType:e.type,attention:{rationale:d.factors},semantic:{confidence:"high"}}},{owner:"approval_overlay",lane:"next",sourcePolicy:"pendingApprovals.displayOverlay",rationale:["Pending approval fetched from Paperclip approvals adapter."]})}function $p(e,t,n,s){let i=uU(n).map(dU),o=e??we(t);return or(o,t,[...i.map(c=>({frame:c,lane:"next"}))],s)}var pU=[{id:"clarification.generic",key:"clarification",pattern:/\b(?:clarification|clarify|question|need(?:s|ed)?\s+(?:info|more|clarification|feedback)|waiting on|feedback needed)\b/i,description:"Signals that the thread is blocked on clarification or more information."},{id:"resolution.direction",key:"resolution",pattern:/final direction|lock these in|use these|not a request for iteration|you can proceed|ready to proceed|unblocked|resolved/i,description:"Signals that the latest guidance appears to resolve or unblock the thread."},{id:"artifact.share_with_board",key:"share_with_board",pattern:/share .* with the board/i,description:"Signals that a review artifact still needs to be shared with the board."},{id:"confirmation.explicit",key:"confirmation",pattern:/please review and confirm|review and confirm|confirm the direction|confirm whether|\bconfirm\b/i,description:"Signals an explicit confirmation step before work can continue."},{id:"board_instruction.explicit",key:"board_instruction",pattern:/(board should either .*?)(?:[.!?]|$)/i,description:"Signals explicit board-facing instructions in the latest operator text."},{id:"dependency.reference",key:"dependency_reference",pattern:/\b[A-Z]+-\d+\b/,description:"Signals a downstream dependency reference in the thread."}];function mU(e){return e.toUpperCase()===e?e:e.slice(0,1).toUpperCase()+e.slice(1).toLowerCase()}function fU(e){return e.toUpperCase()===e?e:e.toLowerCase()}function nt(e,t=180){let n=e.replace(/\s+/g," ").trim();return n.length<=t?n:`${n.slice(0,t-1).trimEnd()}\u2026`}function gU(e,t){return[t?.body,e.description].filter(n=>!!n).join(`
|
|
16
|
+
`)}function Ao(e){if(!e)return 0;if(e instanceof Date)return e.getTime();let t=Date.parse(e);return Number.isNaN(t)?0:t}function gv(e){return e?typeof e=="string"?e:e.toISOString():null}function hv(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function hU(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function wo(e){return et("issue",e)}function yU(e){let t=new Set,n=[];for(let s of pU)s.pattern.test(e)&&(t.add(s.key),n.push(s.id));return{intents:t,matchedRuleIds:n}}function SU(e,t){let n=t?.toUpperCase();return(e.match(/\b[A-Z]+-\d+\b/g)??[]).find(i=>i.toUpperCase()!==n)??null}function bU(e){return e.replace(/\s+/g," ").trim().match(/(board should either .*?)(?:[.!?]|$)/i)?.[1]??null}function _U(e){return e.has("resolution")||e.has("share_with_board")||e.has("confirmation")||e.has("board_instruction")?"high":e.has("clarification")?"medium":null}function kU(e,t){let n=[],s=t??void 0;return s&&n.push({kind:"same_issue",target:s}),e.has("resolution")?(n.push(s?{kind:"resolves",target:s}:{kind:"resolves"}),n):e.has("share_with_board")||e.has("confirmation")||e.has("board_instruction")?(n.push(s?{kind:"supersedes",target:s}:{kind:"supersedes"}),n):(e.has("clarification")&&n.push(s?{kind:"repeats",target:s}:{kind:"repeats"}),n)}function Up(e){let{intents:t,matchedRuleIds:n}=yU(e.text);return{text:e.text,blockingTarget:SU(e.text,e.identifier),intents:t,matchedRuleIds:n,explicitBoardInstruction:bU(e.text),semanticConfidence:_U(t),relationHints:kU(t,e.issueTarget)}}function vU(e,t){if(!t||t.agentNames.length===0)return null;let n=e.match(/needed from\s+@([a-z0-9_-]+)/i)??e.match(/@([a-z0-9_-]+)/i);if(n?.[1]){let s=hv(n[1]),i=t.agentNames.find(o=>hv(o)===s);if(i)return i}return[...t.agentNames].sort((s,i)=>i.length-s.length).find(s=>new RegExp(`\\b${hU(s)}\\b`,"i").test(e))??null}function yv(e,t,n){let s=gU(e,t),i=Up({text:s,identifier:e.identifier,issueTarget:wo(e.id)}),o=vU(s,n),a=s.match(/needed from\s+@([a-z0-9_-]+)/i)??s.match(/@([a-z0-9_-]+)/i),c=o??(a?.[1]?mU(a[1]):/board should|board can/i.test(s)?"Board":/ceo agent|@ceo|\bceo\b/i.test(s)?"CEO":/requires human|waiting on human|human review/i.test(s)?"Human":/operator intervention|operator review/i.test(s)?"Operator":null);return{...i,owner:c,ownerKind:o?"agent":c?"human":null}}function ue(e,t){return e.intents.has(t)}function cs(e,t){return t==="agent"?e:fU(e)}function EU(e){return e.length===0?null:[...e].sort((t,n)=>Ao(n.updatedAt)-Ao(t.updatedAt))[0]??null}function Sv(e,t,n){let s=EU(e),i=gv(s?.updatedAt),o=gv(s?.lockedAt),a=t?.updatedAt??null,c=e.filter(l=>!!l.lockedAt);return{hasDocuments:e.length>0,hasLockedDocuments:c.length>0,latestDocumentTitle:s?.title??null,latestDocumentUpdatedAt:i,latestDocumentLockedAt:o,latestDocumentLockOwnerKind:s?.lockedByAgentId?"agent":s?.lockedByUserId?"user":null,latestDocumentLockOwnerId:s?.lockedByAgentId??s?.lockedByUserId??null,resolvesArtifactRequest:ue(n,"share_with_board")&&!!s&&(!a||Ao(i)>=Ao(a))}}function bv(e,t,n){let s=t.text.replace(/\s+/g," ").trim();return n?.resolvesArtifactRequest?n.latestDocumentLockedAt?"Monitor the locked review snapshot now that the memo is attached.":"Monitor the review now that the memo is attached.":ue(t,"resolution")?"Monitor execution and confirm the team resumes work.":ue(t,"share_with_board")?"Share the memo with the board so review can continue.":t.explicitBoardInstruction?nt(t.explicitBoardInstruction,140):ue(t,"confirmation")?t.blockingTarget?`Confirm the direction so ${t.blockingTarget} can proceed.`:"Review the draft and confirm whether work should proceed.":/leave a comment/i.test(s)?"Leave a comment with enough context for work to resume.":/complete [A-Z]+-\d+/i.test(s)?"Complete the blocking dependency or add enough context to proceed.":e.status==="blocked"?"Unblock the dependency or add the missing context needed to continue.":e.status==="in_review"?"Review the issue and decide whether work can continue.":null}function _v(e,t,n){if(n?.resolvesArtifactRequest)return n.latestDocumentLockedAt?"The requested memo is attached and locked, so review should be able to continue from the preserved snapshot.":"The requested memo appears attached, so review should be able to continue.";if(ue(t,"resolution"))return"Latest operator guidance appears to unblock this issue.";if(ue(t,"share_with_board"))return"Board still needs the memo before review can continue.";if(ue(t,"confirmation")&&t.blockingTarget)return`Waiting on confirmation before ${t.blockingTarget} can proceed.`;let s=ue(t,"clarification"),i=t.owner;return e.status==="blocked"&&i?s?`Blocked on ${cs(i,t.ownerKind)} clarification before work can continue.`:`Blocked on ${cs(i,t.ownerKind)} action before work can continue.`:e.status==="blocked"?s?"Blocked issue waiting on clarification before work can continue.":"Blocked issue that may need operator intervention to move forward.":e.status==="in_review"?i?`Waiting on ${cs(i,t.ownerKind)} review before work can continue.`:"Issue is waiting on human review before work can continue.":e.description?nt(e.description):"This issue has new operator-relevant activity."}function kv(e,t,n){if(n?.resolvesArtifactRequest)return{whyNow:n.latestDocumentTitle?n.latestDocumentLockedAt?`${n.latestDocumentTitle} was attached and locked after the request, so the missing artifact appears preserved for review.`:`${n.latestDocumentTitle} was attached after the request, so the missing artifact appears resolved.`:n.latestDocumentLockedAt?"A review document was attached and locked after the request, so the missing artifact appears preserved for review.":"A review document was attached after the request, so the missing artifact appears resolved.",factors:n.latestDocumentLockedAt?["document attached","document locked","review can proceed"]:["document attached","review can proceed"]};if(ue(t,"resolution"))return{whyNow:"The latest comment appears to resolve the blocker; monitor execution rather than intervening.",factors:["comment follow-up"]};if(ue(t,"share_with_board"))return{whyNow:"The board still needs the memo before review can continue.",factors:["waiting on human","issue review"]};if(ue(t,"confirmation")&&t.blockingTarget)return{whyNow:`${t.blockingTarget} is waiting on explicit confirmation before work can continue.`,factors:["waiting on human","issue review"]};let s=t.owner;if(e.status==="blocked"){let i=ue(t,"clarification");return{whyNow:s?i?`This issue is blocked on clarification from ${cs(s,t.ownerKind)}.`:`This issue is blocked on action from ${cs(s,t.ownerKind)}.`:i?"This issue is blocked on clarification from a human.":"This issue is blocked and may need operator intervention.",factors:i?["blocked","needs clarification","waiting on human"]:["blocked","operator review"]}}return e.status==="in_review"?{whyNow:"This issue is waiting on human review before work can continue.",factors:["waiting on human","issue review"]}:{whyNow:"A recent issue comment added operator-relevant context.",factors:["comment follow-up"]}}var jp=6,AU=15e3,wU=15e3,IU=15e3,TU=15e3,xU=15e3;function RU(e,t){let n={...e?{confidence:e}:{},...t.length>0?{relationHints:t}:{}};return Object.keys(n).length>0?n:void 0}function he(e){if(e)return typeof e=="string"?e:e.toISOString()}function Io(e){if(!e)return 0;if(e instanceof Date)return e.getTime();let t=Date.parse(e);return Number.isNaN(t)?0:t}function Ot(e){return he(e)??null}function ae(e){return Me(e).toLowerCase()}function ar(e){return e?.status==="active"||e?.status==="escalated"}function Lt(e){if(e?.status!=="active"||!e.lastTriggeredAt)return!1;let t=Io(e.lastTriggeredAt);if(t===0)return!1;let n=Io(e.lastCompletedAt);return n===0||t>n}function Av(e){return e?e.identifier?`${e.identifier} ${e.title}`:e.title:null}function CU(e){let t=e.owner.label?.trim();return t||(e.owner.type==="unknown"?null:Me(e.owner.type))}function OU(e){return ar(e)?e.ownerType==="system"?"System":e.ownerType==="board"?"Board":e.ownerType==="agent"?e.ownerAgentId?`Agent ${e.ownerAgentId}`:"Agent":e.ownerUserId?`User ${e.ownerUserId}`:"User":null}function LU(e){return e.action.label||e.action.detail}function NU(e){return ar(e)?e.nextAction||`Resolve the ${ae(e.kind)} recovery action.`:null}function PU(e){return Lt(e)?"Review the watchdog-triggered follow-up before resuming work.":null}function MU(e){if(e.action.detail)return nt(e.action.detail);if(e.action.label)return nt(e.action.label);let t=Av(e.leafIssue??e.sourceIssue);return t?`${t} needs attention before this blocked issue can move.`:`Paperclip marked this blocked issue as ${ae(e.state)}.`}function DU(e){let t=e.nextAction?`: ${nt(e.nextAction,140)}`:".";return`Paperclip opened a ${ae(e.kind)} recovery action${t}`}function FU(e){let t=e.instructions?.trim();return t?`Paperclip watchdog triggered follow-up: ${nt(t,140)}`:"Paperclip watchdog triggered follow-up for this issue."}function $U(e){let t=e.action.detail||e.action.label;return{whyNow:t?`Paperclip Blocked Inbox marks this as ${ae(e.severity)} urgency for ${ae(e.reason)}: ${nt(t,140)}`:`Paperclip Blocked Inbox marks this as ${ae(e.severity)} urgency for ${ae(e.reason)}.`,factors:["blocked inbox",ae(e.reason),`${ae(e.severity)} urgency`]}}function UU(e){return{whyNow:e.nextAction?`Paperclip has an ${ae(e.status)} ${ae(e.kind)} recovery action: ${nt(e.nextAction,140)}`:`Paperclip has an ${ae(e.status)} ${ae(e.kind)} recovery action.`,factors:["recovery action",ae(e.kind),ae(e.status)]}}function jU(e){return{whyNow:e.lastTriggeredAt?`Paperclip watchdog triggered on ${he(e.lastTriggeredAt)??"the latest issue state"} and has not completed review.`:"Paperclip watchdog has active review state for this issue.",factors:["watchdog","triggered review",ae(e.status)]}}function zU(e){return e.severity==="critical"||e.severity==="high"?"high":e.severity==="medium"?"medium":"low"}function qU(e,t){return e.blockedInboxAttention?zU(e.blockedInboxAttention):e.activeRecoveryAction?.status==="escalated"||e.activeRecoveryAction?.status==="active"&&e.priority==="critical"?"high":Lt(e.watchdog)||e.status==="blocked"?vv(e):t==="ambient"?"low":"medium"}function BU(e,t){return e.blockedInboxAttention?.severity==="critical"||e.activeRecoveryAction?.status==="escalated"?"critical":Lt(e.watchdog)?e.priority==="critical"?"critical":"focused":e.status==="blocked"?"focused":t==="ambient"?"ambient":"focused"}function VU(e){return Av(e.leafIssue??e.sourceIssue)}function KU(e){return e.latestDocumentLockedAt?`Locked snapshot${e.latestDocumentLockOwnerKind?` by ${e.latestDocumentLockOwnerKind}`:""}`:null}function zp(e){return e?{id:e.id,identifier:e.identifier,title:e.title,status:e.status,priority:e.priority,assigneeAgentId:e.assigneeAgentId,assigneeUserId:e.assigneeUserId}:null}function HU(e){return{state:e.state,reason:e.reason,severity:e.severity,stoppedSinceAt:e.stoppedSinceAt,owner:e.owner,action:e.action,sourceIssue:zp(e.sourceIssue),leafIssue:zp(e.leafIssue),recoveryIssue:zp(e.recoveryIssue),approvalId:e.approvalId,interactionId:e.interactionId,sampleIssueIdentifier:e.sampleIssueIdentifier,redaction:e.redaction}}function WU(e){return{id:e.id,kind:e.kind,status:e.status,ownerType:e.ownerType,ownerAgentId:e.ownerAgentId,ownerUserId:e.ownerUserId,cause:e.cause,nextAction:e.nextAction,attemptCount:e.attemptCount,maxAttempts:e.maxAttempts,timeoutAt:Ot(e.timeoutAt),lastAttemptAt:Ot(e.lastAttemptAt),outcome:e.outcome,resolvedAt:Ot(e.resolvedAt),updatedAt:Ot(e.updatedAt)}}function ZU(e){return{id:e.id,companyId:e.companyId,issueId:e.issueId,watchdogAgentId:e.watchdogAgentId,instructions:e.instructions,status:e.status,watchdogIssueId:e.watchdogIssueId,lastObservedFingerprint:e.lastObservedFingerprint,lastReviewedFingerprint:e.lastReviewedFingerprint,lastTriggeredAt:Ot(e.lastTriggeredAt),lastCompletedAt:Ot(e.lastCompletedAt),triggerCount:e.triggerCount,createdAt:Ot(e.createdAt),updatedAt:Ot(e.updatedAt),pendingTrigger:Lt(e)}}function GU(e){return e.status!=="active"?null:Lt(e)?"Triggered":"Active"}function YU(e){return e.hasDocuments?{hasDocuments:e.hasDocuments,hasLockedDocuments:e.hasLockedDocuments,latestDocumentTitle:e.latestDocumentTitle,latestDocumentUpdatedAt:e.latestDocumentUpdatedAt,latestDocumentLockedAt:e.latestDocumentLockedAt,latestDocumentLockOwnerKind:e.latestDocumentLockOwnerKind,latestDocumentLockOwnerId:e.latestDocumentLockOwnerId,resolvesArtifactRequest:e.resolvesArtifactRequest}:null}function wv(){return{kind:"acknowledge",actions:[{id:"acknowledge",label:"Acknowledge",kind:"acknowledge",emphasis:"primary"}]}}function JU(e){return e.identifier?`${e.identifier} ${e.title}`:e.title}function XU(e){let t=e.filter(i=>!i.deletedAt);if(t.length===0)return null;let n=[...t].sort((i,o)=>Io(o.updatedAt)-Io(i.updatedAt))[0],s=he(n.updatedAt)??he(n.createdAt)??new Date(0).toISOString();return{body:nt(n.body),updatedAt:s}}function vv(e){return e.priority==="critical"||e.priority==="high"?"high":"medium"}function QU(e,t,n){if(e.blockedInboxAttention){let s=e.blockedInboxAttention;return s.severity==="critical"||s.severity==="high"||s.state==="needs_attention"||s.state==="recovery_open"||s.state==="missing_disposition"?"now":"next"}return e.activeRecoveryAction?.status==="escalated"?"now":ar(e.activeRecoveryAction)||Lt(e.watchdog)?e.priority==="critical"||e.priority==="high"?"now":"next":(e.status==="blocked"||e.status==="in_review")&&(ue(n.analysis,"resolution")||n.documentSignal.resolvesArtifactRequest)?t||e.isUnreadForMe||n.documentSignal.hasDocuments?"ambient":null:e.status==="blocked"?e.workMode==="planning"?"ambient":e.priority==="critical"?"now":"next":e.status==="in_review"?"next":t||e.isUnreadForMe?"ambient":null}function ej(e){return e.status==="done"||e.status==="cancelled"}function Iv(e){return e?.blockedBy.filter(t=>!ej(t))??[]}function Tv(e){return Iv(e)[0]??null}function Bp(e){return e.identifier?`${e.identifier} ${e.title}`:e.title}function tj(e){let t=Iv(e);if(t.length===0)return null;let[n,...s]=t,i=Bp(n);return s.length>0?`${i} +${s.length} more`:i}function nj(e){if(!e||e.blockedBy.length===0&&e.blocks.length===0)return;let t=n=>({id:n.id,identifier:n.identifier,title:n.title,status:n.status,priority:n.priority});return{blockedBy:e.blockedBy.map(t),blocks:e.blocks.map(t)}}function rj(e,t){if(e.blockedInboxAttention)return MU(e.blockedInboxAttention);if(ar(e.activeRecoveryAction))return DU(e.activeRecoveryAction);if(Lt(e.watchdog))return FU(e.watchdog);let n=Tv(t.relations);return n?`${Bp(n)} is a tracked blocker for this issue.`:_v(e,t.analysis,t.documentSignal)}function sj(e,t){if(e.blockedInboxAttention)return $U(e.blockedInboxAttention);if(ar(e.activeRecoveryAction))return UU(e.activeRecoveryAction);if(Lt(e.watchdog))return jU(e.watchdog);let n=kv(e,t.analysis,t.documentSignal),s=Tv(t.relations);return s?{...n,whyNow:`${Bp(s)} is linked as a blocker in Paperclip.`,factors:[...new Set([...n.factors??[],"blocked by issue relation"])]}:n}function ij(e,t,n){let s=[t?.updatedAt,he(e.lastExternalCommentAt),n.latestDocumentUpdatedAt,n.latestDocumentLockedAt,e.blockedInboxAttention?.stoppedSinceAt,he(e.activeRecoveryAction?.updatedAt),he(e.watchdog?.lastTriggeredAt),he(e.watchdog?.updatedAt)].filter(i=>!!i).sort();return s.length>0?s.at(-1):he(e.updatedAt)??he(e.createdAt)??new Date(0).toISOString()}function oj(e,t,n,s,i){let o=yv(e,t,i),a=Sv(n,t,o),c={analysis:o,documentSignal:a,relations:s},l=QU(e,t,c);if(!l)return null;let d=ij(e,t,a),m=sj(e,c),g=ue(o,"resolution")||a.resolvesArtifactRequest?null:e.blockedInboxAttention?CU(e.blockedInboxAttention):OU(e.activeRecoveryAction)??o.owner,h=e.blockedInboxAttention?LU(e.blockedInboxAttention):NU(e.activeRecoveryAction)??PU(e.watchdog)??bv(e,o,a),y=o.blockingTarget,_=RU(o.semanticConfidence,o.relationHints),v=et("issue",e.id),M=e.blockedInboxAttention?VU(e.blockedInboxAttention):tj(s),D=nj(s),U=KU(a),F=YU(a),te=e.watchdog?GU(e.watchdog):null;return{lane:l,frame:kn({id:`reconcile:issue:${e.id}:${d}`,taskId:v,interactionId:tt(v,e.status),source:{id:"paperclip:issue",kind:"paperclip",label:"Paperclip issue"},version:1,mode:"status",tone:BU(e,l),consequence:qU(e,l),title:JU(e),summary:rj(e,c),context:{items:[...g?[Bk(g)]:[],...M?[Vk(M)]:[],...y?[Kk(y)]:[],...h?[Hk(h)]:[],...e.blockedInboxAttention?[Yk(Me(e.blockedInboxAttention.reason)),Jk(Me(e.blockedInboxAttention.severity))]:[],...ar(e.activeRecoveryAction)?[Xk(Me(e.activeRecoveryAction.kind))]:[],...te?[Qk(te)]:[],...U?[ev(U)]:[],Wk(e.status.replace(/_/g," ")),Zk(e.priority),Gk(Me(e.workMode)),...t?[tv(t.body)]:[]]},responseSpec:wv(),provenance:m,timing:{createdAt:he(e.createdAt)??d,updatedAt:d},metadata:{entityType:"issue",issueStatus:e.status,issuePriority:e.priority,issueWorkMode:e.workMode,liveReconciled:!0,activityPath:t?"activity":void 0,attention:{rationale:m.factors??[]},issueIntelligence:{matchedRuleIds:o.matchedRuleIds,owner:o.owner,ownerKind:o.ownerKind,blockingTarget:o.blockingTarget},...e.blockedInboxAttention?{blockedInboxAttention:HU(e.blockedInboxAttention)}:{},...e.activeRecoveryAction?{activeRecoveryAction:WU(e.activeRecoveryAction)}:{},...e.watchdog?{watchdog:ZU(e.watchdog)}:{},...F?{issueDocuments:F}:{},...D?{issueRelations:D}:{},..._?{semantic:_}:{}}},{owner:"paperclip_reconciliation",lane:l,sourcePolicy:`issue.${e.status}.${e.priority}.${e.workMode}`,rationale:m.factors??[]})}}function aj(e){return e.status==="error"?"now":e.status==="pending_approval"||e.status==="paused"&&e.pauseReason==="budget"?"next":e.status==="paused"?"ambient":null}function cj(e){return cv(e)}function lj(e){return lv(e)}function uj(e){let t=aj(e);if(!t)return null;let n=he(e.updatedAt)??he(e.createdAt)??new Date(0).toISOString(),s=cj(e),i=et("agent",e.id);return{lane:t,frame:kn({id:`reconcile:agent:${e.id}:${n}`,taskId:i,interactionId:tt(i,e.status),source:{id:"paperclip:agent",kind:"paperclip",label:"Paperclip agent"},version:1,mode:"status",tone:e.status==="error"?"critical":e.pauseReason==="budget"||e.status==="pending_approval"?"focused":"ambient",consequence:e.status==="error"||e.pauseReason==="budget"?"high":e.status==="pending_approval"?"medium":"low",title:uv(e),summary:lj(e),context:{items:[nv(e.status.replace(/_/g," ")),...e.pauseReason?[rv(e.pauseReason)]:[],...e.title?[sv(e.title)]:[]]},responseSpec:wv(),provenance:s,timing:{createdAt:he(e.createdAt)??n,updatedAt:n},metadata:{entityType:"agent",agentStatus:e.status,pauseReason:e.pauseReason,liveReconciled:!0,activityPath:e.status==="error"?"activity":void 0,attention:{rationale:s.factors??[]},semantic:{confidence:"high"}}},{owner:"paperclip_reconciliation",lane:t,sourcePolicy:`agent.${e.status}${e.pauseReason?`.${e.pauseReason}`:""}`,rationale:s.factors??[]})}}async function dj(e,t){try{let n=await e.issues.listComments(t.id,t.companyId);return XU(n)}catch(n){return e.logger.warn("Failed to load issue comments during Aperture reconciliation",{issueId:t.id,error:n instanceof Error?n.message:String(n)}),null}}async function ls(e,t,n,s,i,o){if(!i?.fresh){let c=e.getCachedHostValue(t,n);if(c!==null)return c}let a=await o();return e.setCachedHostValue(t,n,a,s)}async function pj(e,t){try{return await e.issues.documents.list(t.id,t.companyId)}catch(n){return e.logger.warn("Failed to load issue documents during Aperture reconciliation",{issueId:t.id,error:n instanceof Error?n.message:String(n)}),[]}}async function mj(e,t){let n=t.blockedBy??[],s=t.blocks??[];if(n.length>0||s.length>0)return{blockedBy:n,blocks:s};try{return await e.issues.relations.get(t.id,t.companyId)}catch(i){return e.logger.warn("Failed to load issue relations during Aperture reconciliation",{issueId:t.id,error:i instanceof Error?i.message:String(i)}),null}}async function qp(e,t,n){if(e.length===0)return[];let s=new Array(e.length),i=0;async function o(){for(;i<e.length;){let c=i;i+=1,s[c]=await n(e[c],c)}}let a=Math.min(t,e.length);return await Promise.all(Array.from({length:a},()=>o())),s}async function Ev(e,t,n,s,i){return ls(t,n,`issues:${s}`,AU,{fresh:i?.freshHostData},async()=>await e.issues.list({companyId:n,status:s,includePluginOperations:!1,limit:25}))}async function fj(e,t,n,s){return ls(t,n,"agents:all",xU,{fresh:s?.freshHostData},async()=>await e.agents.list({companyId:n,limit:100}))}async function gj(e,t,n,s,i){let[o,a]=await Promise.all([Ev(e,t,n,"blocked",i),Ev(e,t,n,"in_review",i)]),c=[...o,...a],[l,d,m]=await Promise.all([qp(c,jp,h=>ls(t,n,`issue:${h.id}:comments`,wU,{fresh:i?.freshHostData},()=>dj(e,h))),qp(c,jp,h=>ls(t,n,`issue:${h.id}:documents`,IU,{fresh:i?.freshHostData},()=>pj(e,h))),qp(c,jp,h=>ls(t,n,`issue:${h.id}:relations`,TU,{fresh:i?.freshHostData},()=>mj(e,h)))]),g={agentNames:s.map(h=>h.name).filter(h=>typeof h=="string"&&h.trim().length>0)};return c.map((h,y)=>oj(h,l[y]??null,d[y]??[],m[y]??null,g)).filter(h=>h!==null)}function hj(e){return e.filter(t=>t.status==="pending_approval"||t.status==="error"||t.status==="paused").map(t=>uj(t)).filter(t=>t!==null)}async function xv(e,t,n,s,i){let o=await fj(e,t,n,i),a=s.captureIssueLifecycle===!1?Promise.resolve([]):gj(e,t,n,o,i),c=Promise.resolve(hj(o)),[l,d]=await Promise.all([a,c]);return[...l,...d]}function Vp(e){let t=[];e.now&&t.push([e.now.taskId,{frame:e.now,lane:"now"}]);for(let n of e.next)t.push([n.taskId,{frame:n,lane:"next"}]);for(let n of e.ambient)t.push([n.taskId,{frame:n,lane:"ambient"}]);return new Map(t)}function Rv(e,t,n){return t===n?null:t===null&&n!==null?{stage:e,kind:"introduced",fromLane:t,toLane:n}:t!==null&&n===null?{stage:e,kind:"removed",fromLane:t,toLane:n}:{stage:e,kind:"moved",fromLane:t,toLane:n}}function yj(e,t){return e?"core":t?"reconciled":"display_overlay"}function Sj(e,t){if(t==="display_overlay")return ts(e).entityType==="approval"?"approval_overlay":"display_overlay"}function Kp(e){let t=Vp(e.snapshot),n=Vp(e.reconciledSnapshot),s=Vp(e.displaySnapshot),o=[...new Set([...t.keys(),...n.keys(),...s.keys()])].sort().map(c=>{let l=t.get(c),d=n.get(c),m=s.get(c),g=m?.frame??d?.frame??l?.frame;if(!g)throw new Error(`Overlay diagnostics could not resolve representative frame for ${c}.`);let h=ts(g),y=[Rv("reconciled",l?.lane??null,d?.lane??null),Rv("display",d?.lane??null,m?.lane??null)].filter(v=>v!==null),_=yj(l,d);return{taskId:c,title:g.title,entityType:h.entityType,interactionIds:{...l?{core:l.frame.interactionId}:{},...d?{reconciled:d.frame.interactionId}:{},...m?{display:m.frame.interactionId}:{}},lanePath:{core:l?.lane??null,reconciled:d?.lane??null,display:m?.lane??null},canonicalSource:_,overlayKind:Sj(g,_),liveReconciled:h.liveReconciled,attentionRationale:h.attention?.rationale??[],matchedRuleIds:h.issueIntelligence?.matchedRuleIds??[],relationHintKinds:h.semantic?.relationHints?.map(v=>v.kind)??[],decision:h.decision,changes:y}}),a={coreFrames:t.size,reconciledFrames:n.size,displayFrames:s.size,introducedByReconciliation:o.filter(c=>c.changes.some(l=>l.stage==="reconciled"&&l.kind==="introduced")).length,removedByReconciliation:o.filter(c=>c.changes.some(l=>l.stage==="reconciled"&&l.kind==="removed")).length,movedByReconciliation:o.filter(c=>c.changes.some(l=>l.stage==="reconciled"&&l.kind==="moved")).length,introducedByDisplayOverlay:o.filter(c=>c.changes.some(l=>l.stage==="display"&&l.kind==="introduced")).length,removedByDisplayOverlay:o.filter(c=>c.changes.some(l=>l.stage==="display"&&l.kind==="removed")).length,movedByDisplayOverlay:o.filter(c=>c.changes.some(l=>l.stage==="display"&&l.kind==="moved")).length,approvalOverlayFrames:o.filter(c=>c.overlayKind==="approval_overlay").length};return{generatedAt:e.displaySnapshot.updatedAt,summary:a,frames:o}}var Cv=250,bj=50,Ov=1e3,_j=200;function Lv(e){return{eventCount:0,persistence:{state:"healthy"},surfaceCapabilities:ao,operatorPresence:"present",globalSignalSummary:{recentSignals:0,lifetimeSignals:0,counts:{presented:0,viewed:0,responded:0,dismissed:0,deferred:0,contextExpanded:0,contextSkipped:0,timedOut:0,returned:0,attentionShifted:0},deferred:{next:0,suppressed:0,manual:0},responseRate:0,dismissalRate:0,averageResponseLatencyMs:null,averageDismissalLatencyMs:null,lastSignalAt:null},globalAttentionState:"monitoring",memoryProfile:{version:1,operatorId:"unknown",updatedAt:e,sessionCount:0},ledger:{entries:0,eventEntries:0,responseEntries:0,overlayResponseEntries:0,signalEntries:0,replayStrategy:"full-ledger",compactionRecommended:!1},host:{cacheEntries:0,hostDataRevision:0,approvalRecords:0,approvalsDirty:!1},currentNowTask:null}}function To(e,t){return e?t?e.localeCompare(t)>=0?e:t:e:t}function Hp(e,t,n){if(typeof e!="number"||!Number.isFinite(e))return t;let s=Math.trunc(e);return s<=0?t:Math.min(s,n)}function Wp(e,t){let n=e.length,s=Math.max(1,t);return n<=s?{items:[...e],total:n,hasMoreBefore:!1}:{items:e.slice(-s),total:n,hasMoreBefore:!0}}function kj(e,t,n){let s=n?{...n,frames:Object.fromEntries(Object.entries(n.frames).map(([i,o])=>[i,{...o}]))}:oe(e);for(let i of t){if(i.kind!=="response"&&i.kind!=="overlay-response")continue;let o=i.occurredAt,a=i.apertureResponse.taskId,c=i.apertureResponse.response.kind,l=s.frames[a]??{};s.frames[a]={...l,lastSeenAt:To(l.lastSeenAt,o),...c==="acknowledged"||c==="dismissed"?{suppressedAt:To(l.suppressedAt,o)}:{}},s.lastSeenAt=To(s.lastSeenAt,o),s.updatedAt=To(s.updatedAt,o)??o}return s}function Nv(e,t){return{baseLedger:e.getLedger(t),snapshot:e.getSnapshot(t)??we(t),reviewState:e.getReview(t)??oe(t)}}async function Nt(e,t,n){if(t.hasSession(n))return await $k(e,t,n),Nv(t,n);try{let s=await ss(e,n);if(s){let{snapshot:g}=t.hydrate(n,{ledger:s.ledger,snapshot:s.snapshot,review:s.review});return{baseLedger:s.ledger,snapshot:g,reviewState:s.review}}let i=await e.state.get({scopeKind:"company",scopeId:n,stateKey:Pk}),o=await e.state.get({scopeKind:"company",scopeId:n,stateKey:Nk}),a=await e.state.get({scopeKind:"company",scopeId:n,stateKey:Mk}),c=ir(i)?i:Rt(),l=sr(n,o),d=kj(n,c,rs(a,n)?a:null),{snapshot:m}=t.hydrate(n,{ledger:c,snapshot:l,review:d});return!ir(i)&&l&&e.logger.warn("Legacy snapshot found without replay ledger; rebuilt state may be partial until new events arrive.",{companyId:n}),{baseLedger:c,snapshot:m,reviewState:d}}catch(s){if(!ho(s))throw s;return e.logger.warn("Aperture persisted state unavailable in this host callback; using in-memory attention state.",{companyId:n,error:s instanceof Error?s.message:String(s)}),Nv(t,n)}}function vj(e,t,n){return JSON.stringify({reconciliationRevision:e.getReconciledRevision(t),captureIssueLifecycle:n.captureIssueLifecycle!==!1,captureRunFailures:n.captureRunFailures!==!1})}async function Zp(e,t,n,s,i,o={}){let a=await e.config.get(),c=vj(t,n,a);if(o.preferCache&&!o.freshHostData){let m=t.getCachedReconciledCandidates(n,c);if(m)return or(s,n,m,i)}let l;try{l=await xv(e,t,n,a,{freshHostData:o.freshHostData})}catch(m){if(!ho(m))throw m;return e.logger.warn("Aperture host reconciliation unavailable in this host callback; using current attention snapshot.",{companyId:n,error:m instanceof Error?m.message:String(m)}),s}let d=or(s,n,l,i);return o.preferCache&&!o.freshHostData&&t.setCachedReconciledCandidates(n,c,l),d}async function Mv(e,t,n){let s=t.getApprovals(n);if(!t.approvalsDirty(n)&&s)return s;let i=await e.config.get();try{let o=await wk(e,n,i);return t.setApprovals(n,o)}catch(o){let a=o instanceof Error?o.message:String(o);return t.markApprovalAdapterFailure(n,a),e.logger.warn("Failed to load pending approvals for Focus display",{companyId:n,error:a}),s||t.setApprovals(n,[])}}async function Pv(e,t,n,s,i){let o=await Zp(e,t,n,s,i,{preferCache:!0}),a=await Mv(e,t,n);return{reconciledSnapshot:o,displaySnapshot:$p(o,n,a,i)}}function Dv(e,t){e.data.register("health",async()=>{let n=t.getHealth();return{status:"ok",checkedAt:new Date().toISOString(),trackedCompanies:n.trackedCompanies,maxCompanySessions:n.maxCompanySessions,idleSessionTtlMs:n.idleSessionTtlMs,faultedCompanies:n.faultedCompanies,hostCacheEntries:n.hostCacheEntries,cachedReconciliations:n.cachedReconciliations}}),e.data.register("attention-diagnostics",async n=>{let s=X(n);return await Nt(e,t,s),t.getCoreDiagnostics(s)??Lv(new Date().toISOString())}),e.data.register("attention-overlay-diagnostics",async n=>{let s=X(n),{snapshot:i,reviewState:o}=await Nt(e,t,s),{reconciledSnapshot:a,displaySnapshot:c}=await Pv(e,t,s,i,o);return Kp({snapshot:i,reconciledSnapshot:a,displaySnapshot:c})}),e.data.register("attention-summary",async n=>{let s=X(n),{snapshot:i,reviewState:o}=await Nt(e,t,s);return await Zp(e,t,s,i,o,{freshHostData:!0})??we(s)}),e.data.register("attention-display",async n=>{let s=X(n),{snapshot:i,reviewState:o}=await Nt(e,t,s),{displaySnapshot:a}=await Pv(e,t,s,i,o);return{companyId:s,snapshot:a??we(s),reviewState:o}}),e.data.register("attention-export",async n=>{let s=X(n),i=Hp(n.limit,Cv,Ov),o=Hp(n.traceLimit,bj,_j),a=new Date().toISOString(),{baseLedger:c,snapshot:l,reviewState:d}=await Nt(e,t,s),m=await Zp(e,t,s,l,d,{freshHostData:!0}),g=await Mv(e,t,s),h=$p(m,s,g,d),y=Wp(c,i),_=Wp(t.getTraces(s),o);return{companyId:s,exportedAt:a,ledger:y.items,eventEntries:y.items.filter(v=>v.kind==="event"),responseEntries:y.items.filter(v=>v.kind==="response"),overlayResponseEntries:y.items.filter(v=>v.kind==="overlay-response"),signalEntries:y.items.filter(v=>v.kind==="signal"),traces:_.items,window:{entryLimit:i,traceLimit:o,totalLedgerEntries:y.total,returnedLedgerEntries:y.items.length,totalTraces:_.total,returnedTraces:_.items.length,hasMoreBefore:y.hasMoreBefore||_.hasMoreBefore},snapshot:l,reconciledSnapshot:m,displaySnapshot:h,review:d,coreDiagnostics:t.getCoreDiagnostics(s)??Lv(a),overlayDiagnostics:Kp({snapshot:l,reconciledSnapshot:m,displaySnapshot:h})}}),e.data.register("attention-traces",async n=>{let s=X(n);return await Nt(e,t,s),t.getTraces(s)}),e.data.register("attention-replay-scenario",async n=>{let s=X(n),i=Hp(n.limit,Cv,Ov),{baseLedger:o,snapshot:a}=await Nt(e,t,s),c=Wp(o,i);return{id:`paperclip-attention-${s}`,title:`Paperclip attention replay for ${s}`,description:"Replay scenario exported from the Paperclip Aperture plugin ledger.",doctrineTags:["paperclip","aperture","replay-export"],window:{entryLimit:i,totalLedgerEntries:c.total,returnedSteps:c.items.length,hasMoreBefore:c.hasMoreBefore},expectations:{finalNowInteractionId:a.now?.interactionId??null,nextInteractionIds:a.next.map(l=>l.interactionId),ambientInteractionIds:a.ambient.map(l=>l.interactionId),resultLaneCounts:{now:a.counts.now,next:a.counts.next,ambient:a.counts.ambient}},steps:c.items.map(l=>l.kind==="event"?{kind:"publish",event:l.apertureEvent,label:`${l.source.eventType} @ ${l.occurredAt}`}:l.kind==="response"?{kind:"submit",response:l.apertureResponse,label:`${l.source.eventType} @ ${l.occurredAt}`}:l.kind==="signal"?{kind:"signal",signal:l.apertureSignal,label:`${l.source.eventType} @ ${l.occurredAt}`}:{kind:"overlay-response",response:l.apertureResponse,overlay:l.overlay,label:`${l.source.eventType} @ ${l.occurredAt}`})}}),e.data.register("attention-review",async n=>{let s=X(n),{reviewState:i}=await Nt(e,t,s);return i})}var Ej=["need your input","need your approval","need your review","need your sign off","need your sign-off","should i continue","can you approve","can you review","what should i do"],Aj=[/\b(?:can|could|would|will) you (?:please )?(?:approve|check|choose|confirm|decide|provide|review|select|share|tell|verify)\b/,/\bplease (?:approve|choose|confirm|decide|provide|select|verify)\b/],oE=["no action needed","no approval needed","approval is not needed","approval not needed","sign off not needed","sign-off not needed","no input needed","for awareness only","for your awareness","continuing automatically"],wj=["cannot continue","can't continue","cannot proceed","can't proceed","unable to continue","unable to proceed","blocked on","blocked until","stuck on","requires operator input before continuing","needs operator input before continuing","must be provided before continuing"],Ij=["waiting for approval","approval required","awaiting approval","waiting on approval","pending approval","waiting for input","awaiting input","waiting on input","awaiting review","waiting for review"],Tj=["production","prod","force push","git push --force","rm -rf","drop table","delete database","delete prod","sudo","chmod 777","kill process","migrate"],am=["result of running cat -n","result of running sed -n","result of running grep","result of running ls","result of running find","here s the result of running cat -n","here s the result of running sed -n"],xj=["observation","contents of","showing first","showing top","found"],aE=["path","type file","content"],Rj=["ran successfully and did not produce any output","command ran successfully and did not produce any output","your command ran successfully and did not produce any output","completed successfully and did not produce any output","exit code 0","exited with code 0","command exited with code 0","process exited with code 0","completed with exit code 0"],Cj=["tool-output","dmesg"],Oj=["makefile","spdx-license-identifier","patchlevel","sublevel","extraversion"],Ss=/(?:^|\s)\/[a-z0-9._-]+(?:\/[a-z0-9._-]+)+(?:\s|$)/,Lj=/\bfound\s+\d+\s+match(?:es)?\b|\bshowing\s+(?:first|top)\s+\d+\b|\bmatch(?:es)?\s+in\s+\d+\s+files?\b/,Nj=/\b(import|from|export|class|def|function|const|let|var|return)\b/,Pj=/\b\d+\s+(?:import|from|export|class|def|function|const|let|var|return)\b/,cm=/\/[a-z0-9._/-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)(?:\b|\/)/,lm=/\b[a-z0-9.-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)\b/,Mj=/\b(static|struct|enum|typedef|void|int|char|bool|return)\b/,Dj=/\b\d+\s+(?:static|struct|enum|typedef|void|int|char|bool|return)\b/,Fj=/\b\d+\s+\[\s*\d+\.\d+\]\s+[a-z0-9_.:-]+/,$j=/\b(?:version|patchlevel|sublevel|extraversion)\b/,Uj=["form is valid false","form without instance is valid false","form errors","errorlist","decompress result","no exception occurred","no exceptions occurred","expected exception","expected exception was caught","caught expected exception"],jj=["traceback","exception","permission denied","command not found","segmentation fault","apply_patch verification failed","no such file or directory","file does not exist","unrecognized arguments","symbol lookup error","assertion failed","tests failed","test failed","failed tests"],zj=["still","again","back again","came back","continues","continuing","returned","returning","remains","persisting","retrying","recurred"],qj=["did not repeat","didn t repeat","did not return","didn t return","did not recur","didn t recur","not repeated","not returning","not recurring","no repeat"],Bj=["resolved","fixed","unblocked","no longer blocked"],Vj=["not resolved","did not resolve","didn t resolve","not fixed","did not fix","didn t fix","not recovered","did not recover","didn t recover"],Kj=["recovered","completed successfully","succeeded after"],Hj=["supersedes","superseded","replaced by"],Wj=["worse","worsened","escalating","regression","regressed","spread","broader impact","degraded further","critical now","now failing"],Zj=["did not regress","didn t regress","no regression","not worsening","did not worsen","didn t worsen","not escalating","did not escalate","didn t escalate"],cE=["fail","failed","failing","failure","error","broken","blocked","stalled","stall","incident","issue","outage","degraded","regression","retry","rollback"];function V(e){return e.toLowerCase().replace(/[^a-z0-9/._-]+/g," ").trim()}function Gj(e){return e.toLowerCase().replace(/[^a-z0-9]+/g," ").trim()}function Ie(e,t){return t.some(n=>lE(e,n))}function lE(e,t){let n=V(t);return n?n.includes(" ")?st(e,n):us(e,n):!1}function st(e,t){let n=V(e),s=V(t);return s?new RegExp(`(?:^|[^a-z0-9_])${uE(s)}(?:$|[^a-z0-9_])`).test(n):!1}function us(e,t){let n=V(e),s=V(t);return!s||s.includes(" ")?!1:new RegExp(`(?:^|[^a-z0-9_])${uE(s)}(?:$|[^a-z0-9_])`).test(n)}function uE(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var Yj=new Set(["jq"]),Jj=/(?:^|[\r\n]|\s)(?:\d+:\s*)?\[\s*\d+(?:\.\d+)?][^\r\n]*(?:\*ERROR\*|\b(?:error|failed|failure|fault)\b|\bkernel panic\b|\bBUG:\s*(?:soft|hard) lockup\b)/i;function Po(e){return Jj.test(e)}function dE(e){return Po(e)||Xj(e)||Qj(e)||ez(e)}function Xj(e){return/(?:^|[\r\n])\s*rg:\s+\S[^\r\n]*:\s+IO error for operation on\s+\S[^\r\n]*(?=$|[\r\n])/i.test(e)}function Qj(e){let n=/^([a-z0-9][a-z0-9_.-]{0,60}):[ \t]+parse error:[^\r\n]{0,240}\b(?:at|on)[ \t]+line[ \t]+\d+\b[^\r\n]*(?=$|[\r\n])/i.exec(e.replace(/^[ \t]+/,""))?.[1]?.toLowerCase();return n!==void 0&&Yj.has(n)}function ez(e){return/(?:^|[\r\n])\s*usage:\s+[^\r\n]{1,200}/i.test(e)&&/(?:^|[\r\n]|\s)[a-z0-9_.-]+:\s+error:\s+\S/i.test(e)}function tz(e){return[...e.matchAll(/(?:^|[\r\n])[^\S\r\n]*panic:([^\r\n]+)/gi),...e.matchAll(/(?:^|[\r\n])[^\S\r\n]*failed to execute:\s+[^\r\n]*;\s*panic:([^\r\n]+)/gi)].some(n=>nz(n[1]??""))}function nz(e){let t=e.trim();return t.length>0&&!rz(t)}function rz(e){return/^(?:return|goto|break|continue|if|for|while|switch)\b/i.test(e)||/^[a-z_][a-z0-9_.]*\s*(?::=|[-+*/%]?=)\s*\S/i.test(e)||/^[a-z_][a-z0-9_]*\s*\([^)]*\)\s*;?\s*$/i.test(e)||/;\s*$/.test(e)}function sz(e){return/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\)?[^\s:\r\n]+\.[a-zA-Z0-9]{1,8}:\d+(?::\d+)?:\s*(?:(?:tests?|build|command|process|subprocess)\s+failed\s*:|failed\s+(?:tests?|build|command|process|subprocess)\s*:|assertion\s+failed\s*:|(?:E\s+)?(?:AssertionError|RuntimeError|ValueError|TypeError|Exception):\s+\S|(?:FAIL|FAILED|ERROR)\b[:\s]\s*\S)/i.test(e)}function iz(e){let n=/^File[ \t]+"[^"\u0000-\u0008\u000a-\u001f\u007f-\u009f\u2028\u2029]{1,260}\.py",[ \t]+line[ \t]+\d+\b([^\u0000-\u0008\u000a-\u001f\u007f-\u009f\u2028\u2029]{0,800})/i.exec(e.replace(/^[ \t]+/,""))?.[1]??"";return/(?:^|[ \t])\^[ \t]*(?:AssertionError|ImportError|IndentationError|ModuleNotFoundError|NameError|RuntimeError|SyntaxError|TypeError|ValueError)[ \t]*:/i.test(n)}function oz(e){let t=e.trim();return!/[\r\n]/.test(t)&&/^(?:OBSERVATION:\s*)?(?:[a-z_][\w]*(?:\.[a-z_][\w]*)*\.)?ExceptionGroup:\s+\S[^\r\n]{0,260}\(\s*[1-9]\d*\s+sub-exceptions?\s*\)$/i.test(t)}function az(e){return iz(e)||oz(e)}function cz(e){return new RegExp(`(?:^|[\\r\\n])\\s*(?:[a-z0-9_./-]+:\\s*)?${dz}\\b`,"i").test(e)}function lz(e){return[new RegExp(`\\b${pz}:\\s+\\S`,"gi"),/\b[a-z0-9_./-]+\.(?:c|cc|cpp|cxx|cu|cuh|h|hpp|ts|tsx|js|jsx|py|rs|go|java|kt|swift):\d+(?::\d+)?:\s*(?:fatal\s+)?error\b/gi].some(t=>uz(e,t))}function uz(e,t){for(let n of e.matchAll(t))if(!/[="'`]\s*$/.test(e.slice(Math.max(0,n.index-3),n.index)))return!0;return!1}var dz="(?:assertionerror|importerror|modulenotfounderror|referenceerror|runtimeerror|syntaxerror|typeerror|valueerror)",pz="(?:assertionerror|filenotfounderror|importerror|indentationerror|keyerror|modulenotfounderror|nameerror|oserror|permissionerror|referenceerror|runtimeerror|syntaxerror|timeouterror|typeerror|valueerror)";function pE(e){return[/(?:^|[\r\n])\s*(?:Failure|Failed|Panicked)\s*\[[^\]\r\n]{1,80}]/i,/(?:^|[\r\n])\s*•\s*(?:Failure|Failed|Panicked)\b/i,/(?:^|[\r\n])\s*\S+::\S+[^\r\n]{0,160}\sFAILED\b/].some(t=>t.test(e))}function mz(e){let t=hz(e);return fz(t)||gz(t)}function fz(e){return/\bRunning Suite:\s+\S[\s\S]{0,400}\bWill run\s+\d+\s+of\s+\d+\s+specs?\b/i.test(e)&&/(?:^|[\s\S])(?:•|\+|PASS\b|SUCCESS\b)/i.test(e)}function gz(e){return/(?:^|[\r\n])\s*=+\s*test session starts\s*=+/i.test(e)&&/\bplatform\s+\S+[\s\S]{0,240}\bpytest-\d/i.test(e)&&(/\bcollected\s+\d+\s+items?\b/i.test(e)||/\bcachedir:\s+\.pytest_cache\b/i.test(e)||/\brootdir:\s+\S/i.test(e))}function hz(e){return e.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"")}function ur(e){return gs(e)||dE(e)}function yz(e){if(!/\bweb search results for\b/i.test(e))return!1;let t=bz(e);return t===null?_z(e):kz(t)}function gs(e){return[/\btraceback\s+\(most recent call last\)/i,/\bapply_patch verification failed\b/i,/\bsegmentation fault\b/i,/\bsymbol lookup error\b/i,/\blibrary load error\b/i,/\bcannot open shared object file\b/i,/\bcommand not found\b/i,/(?:^|[\r\n])\s*(?:[^\r\n:]+:\s*)*(?:permission denied|operation not permitted)\b/i,/(?:^|[\r\n])\s*(?:uncaught|unhandled)\s+exception\b/i,/(?:^|[\r\n])\s*(?:fatal\s+error|compiler\s+error)\b/i,/(?:^|[\r\n])\s*error:\s+\S/i,/(?:^|[\r\n])\s*(?:npm\s+err!?|pnpm\s+err!?|yarn\s+error\b|err_pnpm_)/i,/\beconnrefused\b/i,/\bthread\b[^\r\n]*\bpanicked at\b/i,/(?:^|[\r\n])\s*terminate called after throwing\b/i,/(?:^|[\r\n])\s*(?:tests?\s+failed|failed\s+tests)\b/i,/\bassertion failed\b/i,/(?:^|[\r\n])\s*(?:[a-z0-9_./-]+:\s*)+\s*no such file or directory\b/i,/(?:^|[\r\n])\s*(?:file does not exist|unrecognized arguments)\b/i,/\b(?:exit code|exit_code|exit-code|exited with code|exit status|exited with status|return code|return_code|returned code)\s*(?:is|was)?\s*-?[1-9]\d*\b/i].some(t=>t.test(e))||sz(e)||tz(e)||Sz(e)||vz(e)||pE(e)||az(e)||cz(e)}function Sz(e){let t=/CMake Error at \S+:\d+\s+\(/i;return/(?:^|[\r\n])\s*CMake Error at \S+:\d+\s+\(/i.test(e)||/(?:^|[\r\n])\s*total output lines:\s*\d+\b/i.test(e)&&t.test(e)}function bz(e){return/^\s*web search results for\s+(?:"[^"]+"|'[^']+'|`[^`]+`|[^:\r\n]{1,200})\s*:\s+([\s\S]+)$/i.exec(e)?.[1]??null}function _z(e){return/\b(?:backend\s+(?:is\s+)?unavailable|could\s+not\s+be\s+retrieved|couldn['’]?t\s+be\s+retrieved|failed\s+because|request\s+failed|search\s+failed|timed?\s+out|timeout)\b/i.test(e)}function kz(e){return/^\s*(?:backend\s+(?:is\s+)?unavailable\b|could\s+not\s+be\s+retrieved\b|couldn['’]?t\s+be\s+retrieved\b|failed\s+because\b|request\s+failed\b|search\s+failed\b|timed?\s+out\b|timeout\b)/i.test(e)}function vz(e){return[/(?:^|[\r\n])\s*(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+(?:\.[a-z0-9]{1,8})?:\d+(?::\d+)?\s*:\s*(?:(?:fatal\s+)?error\b|fatal:\s+\S)/i,/\b(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.(?:ts|tsx|js|jsx)\(\d+,\d+\):\s*error\s+TS\d+\b/i,/(?:^|[\r\n])\s*(?:clang|gcc|g\+\+|cc|c\+\+|ld|make(?:\[\d+\])?)\s*:\s*(?:fatal\s+)?error\b/i,/(?:^|[\r\n])\s*error\s+(?:ts)?\d+\b/i,/(?:^|[\r\n])\s*fatal:\s+\S/i,/(?:^|[\r\n])\s*make(?:\[\d+\])?:\s+\*\*\*/i].some(t=>t.test(e))}function Ez(...e){for(let t of e){let n=Az(t);if(n!==null){if(Iz(n))return"failure";if(Tz(n))return"applied"}}return null}function Az(e){let t=wz(e??"");return t.length===0?null:/^<tool_use_error>\s*([\s\S]{1,500})\s*<\/tool_use_error>\s*$/i.exec(t)?.[1]??t}function wz(e){return e.trim().replace(/^(?:edit|tool)\s+failure\s+(?:[-\u2013\u2014]\s*)?/i,"").replace(/^OBSERVATION:\s*/i,"").replace(/^<tool_output_masked>\s*/i,"").trim()}function Iz(e){return/^(?:apply_patch|edit|write) error$/i.test(e)||/^file has (?:not been read yet|been modified since read)\b[\s\S]{0,260}\bread it (?:first|again)\b[\s\S]{0,160}\bbefore\b/i.test(e)||/^could not find (?:the exact text|edits\[\d+]) in\s+\S[\s\S]{0,300}\.\s+the old\s?text must match exactly\b/i.test(e)||/^found \d+ occurrences of (?:the )?text in\s+\S[\s\S]{0,300}\.\s+the text must be unique\b/i.test(e)||/^no replacement was performed\b/i.test(e)}function Tz(e){let n=e.trim().toLowerCase(),s="successfully modified file:",i="successfully created and wrote to new file:",o="edit applied successfully. lsp errors detected";return n.startsWith(s)&&n.slice(s.length).trim().length>0||n.startsWith(i)&&n.slice(i.length).trim().length>0||n==="edit applied successfully"||n.startsWith(o)&&n.length<=o.length+200}function xz(e){let t=e.trim();if(t.length===0||Nz(t))return!1;let n=Cz(t),s=n.filter(i=>i.lineNumber!==void 0);return s.length>0?s.length>=3&&Fz(s)&&Oz(s):Lz(n)}function Rz(e){let t=e.trim(),n=fE(t);return gE(t)||n?.hasOperandEvidence===!0}function Cz(e){let t=[];for(let n of e.split(/\r?\n/)){let s=Mz(n).trim();if(s.length===0||$z(s))continue;let i=Dz(n);t.push({body:s,...i!==void 0?{lineNumber:i}:{}})}return t}function Oz(e){let t=mE(e);return t.statements>=3&&t.instructions>=1&&t.operandInstructions>=1}function Lz(e){let t=mE(e);return t.statements>=4&&t.instructions>=1&&(t.labels+t.directives>=1&&t.operandInstructions>=1||t.instructions>=4&&t.distinctMnemonics>=2&&t.operandInstructions>=4)}function mE(e){let t=new Set,n=0,s=0,i=0,o=0;for(let a of e){let c=fE(a.body);n+=Uz(a.body)?1:0,s+=gE(a.body)?1:0,i+=c!==null?1:0,o+=c?.hasOperandEvidence===!0?1:0,c!==null&&t.add(c.mnemonic)}return{labels:n,directives:s,instructions:i,operandInstructions:o,distinctMnemonics:t.size,statements:n+s+i}}function fE(e){let t=/^([a-z][a-z0-9_.]*)(?:\s+(.+))?$/i.exec(e.trim()),n=t?.[1]?.toLowerCase(),s=t?.[2]??"";return n===void 0||!qz.test(n)?null:{mnemonic:n,hasOperandEvidence:s.length>0&&Bz.test(jz(s))}}function Nz(e){return/^\s*(?:\{|\[|")/.test(e)||Pz(e)||/(?:^|[\r\n])\s*(?:make(?:\[\d+])?:|CMake (?:Error|Warning)\b|\[\s*\d+%]\s+\S|(?:error|fatal|warning):\b|Traceback\b|[$#>]\s+\S)/i.test(e)}function Pz(e){return/(?:^|[\r\n])\s*(?:\d{1,6}:\s*)?\[\s*\d+(?:\.\d+)?]\s+\S/.test(e)}function Mz(e){return e.replace(/^\s*\d{1,6}(?:[ \t]+|:\s*)/,"")}function Dz(e){let t=/^\s*(\d{1,6})(?:[ \t]+|:\s*)/.exec(e);return t?Number.parseInt(t[1],10):void 0}function Fz(e){return e.every((t,n)=>n===0||(t.lineNumber??0)>(e[n-1]?.lineNumber??0))}function $z(e){return/^\s*(?:\/\/|#|;)(?:\s|$)/.test(e)}function Uz(e){return!/^(?:error|fatal|warning):$/i.test(e.trim())&&/^\.?[a-z_.$][\w.$]*:\s*$/i.test(e.trim())}function gE(e){return zz.test(e.trim())}function jz(e){return e.replace(/\s*(?:(?:\/\/|#|;).*)$/,"")}var zz=/^\.(?:if|ifdef|ifndef|elseif|else|endif|set|equ|macro|endm|section|text|data|bss|globl|global|type|size|align|p2align|long|word|byte|quad|file|loc|cfi_[a-z_]+)\b/i,qz=/^(?:(?:s|v)_[a-z0-9_]+|(?:flat|buffer|global|ds|scratch|image|tbuffer)_[a-z0-9_]+|(?:mov|add|sub|mul|imul|div|idiv|cmp|jmp|call|ret|push|pop|ldr|str|ldp|stp|adr|lea|xor|and|or|test|inc|dec|nop)[a-z0-9_.]*)$/i,Bz=/(?:0x[0-9a-f]+|\b\d+\b|[,\[\]()\\]|%[a-z0-9]+|\b(?:r\d+|x\d+|w\d+|v\d+|s\d+|ttmp\d+|exec(?:_lo|_hi)?|m0|sp|fp|lr|pc|eax|ebx|ecx|edx|rax|rbx|rcx|rdx|esi|edi|rsi|rdi|rbp|rsp|al|ah|bl|bh|cl|ch|dl|dh)\b|\.[a-z_.$][\w.$]*)/i;function dr(e){return/^(?:public|private|protected):$/.test(e)?{category:"access",strongAnchor:!0,nontrivialAnchor:!0}:/^[{}]\s*;?$/.test(e)||/^\}\s*(?:else\b|while\s*\().*/.test(e)?{category:"brace",strongAnchor:!1,nontrivialAnchor:!1}:/^(?:if|for|while|switch)\s*\(.+\)\s*\{?$/.test(e)||/^(?:case\s+.+|default):\s*$/.test(e)?{category:"control",strongAnchor:/[{};]|->|::|\bstd::/.test(e),nontrivialAnchor:!0}:/^(?:return|break|continue)\b.*;$/.test(e)?{category:"return",strongAnchor:/[A-Z_]{3,}|->|::|\bstd::/.test(e),nontrivialAnchor:!1}:Vz(e)?{category:"declaration",strongAnchor:!0,nontrivialAnchor:/(?:\bstd::|->|::|[*&<>]|\b(?:size_t|uint\d+_t|int\d+_t)\b)/.test(e)}:Kz(e)?{category:"assignment",strongAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*|\[[^\]]+])|\b[A-Z_]{3,}\b/i.test(e),nontrivialAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*)/i.test(e)}:Hz(e)?{category:"call",strongAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*|\b[A-Z_]{3,}\s*\()/i.test(e),nontrivialAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*)/i.test(e)}:Wz(e)?{category:"call",strongAnchor:/(?:->|::|\.|\[[^\]]+]|\bsizeof\s*\()/i.test(e),nontrivialAnchor:/(?:->|::|\.|\[[^\]]+])/i.test(e)}:null}function Mo(e){let t=e.replace(/\.\.\.\s*$/,"").trim();return Yz(t)?{category:"return",strongAnchor:!1,nontrivialAnchor:!1}:Zz(t)?{category:"assignment",strongAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*|\[[^\]]+])|\b[A-Z_]{3,}\b/i.test(t),nontrivialAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*)/i.test(t)}:Gz(t)?{category:"call",strongAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*|\b[A-Z_]{3,}\s*\(|\bstd::)/i.test(t),nontrivialAnchor:/(?:->|::|\.[a-z_][a-z0-9_]*)/i.test(t)}:null}function bs(e){return/^(?:(?:\/\/|#|;)\s*|\/\*+|\*\/?)/.test(e)}function Vz(e){return[/^(?:(?:const|static|inline|extern|volatile|mutable|constexpr)\s+)*(?:std::)?[a-z_][a-z0-9_:<>]*(?:\s*[*&]|\s+)+[a-z_][a-z0-9_:~]*(?:\s*[({=;[]|\s+\{)/i,/^(?:(?:const|static|inline|extern|volatile|mutable|constexpr)\s+)*(?:struct|enum|class)\s+[a-z_][a-z0-9_:<>]*\s+[*&\s]*[a-z_][a-z0-9_]*\s*(?:[=;,{]|\[[^\]]+])/i,/^(?=.*\()(?:(?:static|inline|extern|const|virtual)\s+)*(?:(?:struct|enum|class)\s+)?[a-z_][a-z0-9_:<>]*(?:\s*[*&]|\s+)+[~a-z_][a-z0-9_:<>]*\s*\([^;]*(?:\{|,\s*)?$/i,/^(?=.*[,)]\s*(?:const\s*)?(?:\{)?$)\s*(?:const\s+)?[a-z_][a-z0-9_:<>]*(?:\s*[*&]+|\s+)[^;{}]+[,)]\s*(?:const\s*)?(?:\{)?$/i].some(t=>t.test(e))}function Kz(e){return/^[a-z_][a-z0-9_]*(?:(?:->|\.|::)[a-z_][a-z0-9_]*|\[[^\]]+])*\s*(?:=|\+=|-=|\*=|\/=|%=|&=|\|=|<<=|>>=).+;$/i.test(e)}function Hz(e){return!/;$/.test(e)||/^(?:please|then|now|maybe|should|must|can)\b/i.test(e)?!1:/^(?:(?:[a-z_][a-z0-9_]*)(?:->|\.|::))?[a-z_][a-z0-9_:]*\s*\(.*\)\s*;$/i.test(e)}function Wz(e){return/^(?=.*;\s*$)(?=.*(?:\)|]|\bsizeof\s*\())[\w\s.,:[\]()*&<>\-]+;\s*$/i.test(e)}function Zz(e){return/^[a-z_][a-z0-9_]*(?:(?:->|\.|::)[a-z_][a-z0-9_]*|\[[^\]]+])*\s*(?:=|\+=|-=|\*=|\/=|%=|&=|\|=|<<=|>>=)\s*\S.+$/i.test(e)}function Gz(e){return/^(?:please|then|now|maybe|should|must|can)\b/i.test(e)?!1:/^(?:(?:[a-z_][a-z0-9_]*)(?:->|\.|::))?[a-z_][a-z0-9_:]*\s*\(.+\S$/i.test(e)}function Yz(e){return/^retu(?:r(?:n)?)?(?:\b|$)/i.test(e)}var Jz=/^(?:bash|edit|read|search|tool)\s+failure\s+/i,Xz=/(?:\.\.\.|…)\s*$/;function de(e){return e.trim().replace(Jz,"")}function ye(e){return Xz.test(e.trim())}function Qz(e){let t=e.trim();return t.length>0&&!iq(t)&&(eq(t)||tq(t))}function eq(e){return hE(e,{allowClippedFinalLine:!1,minLines:4})}function tq(e){return ye(e)&&hE(e,{allowClippedFinalLine:!0,minLines:3})}function nq(e){if(!ye(e))return!1;let t=e.split(/\r?\n/).map(n=>n.trim()).filter(n=>n.length>0&&!bs(n));return t.length>=5&&t.filter(rq).length>=3&&t.filter(sq).length>=2&&t.some(n=>/^\)\s*;?\s*$/.test(n))&&t.some(n=>dr(n)!==null||Mo(n)!==null)}function rq(e){return/^[a-z0-9_()[\].:&*>\s,-]+,\s*(?:(?:\/\/|\/\*)[^\r\n]*)?$/i.test(e)&&/(?:[_()[\].:]|->|::|\b\d+\b)/.test(e)}function sq(e){return/(?:->|::|\.|\[[^\]]+])/.test(e)}function hE(e,t){let n=e.split(/\r?\n/),s=uq(n),i=[];for(let[o,a]of n.entries()){let c=a.trim();if(c.length===0||bs(c))continue;let l=dr(c)??(t.allowClippedFinalLine&&o===s?Mo(c):null);if(l===null){if(Fv(i,t.minLines))return!0;i=[];continue}i.push(l)}return Fv(i,t.minLines)}function Fv(e,t){let n=new Set(e.map(i=>i.category)),s=e.filter(i=>i.strongAnchor).length;return e.length>=t&&n.size>=2&&s>=2&&e.some(i=>i.nontrivialAnchor)}function iq(e){return/^\s*(?:\{|\[|")/.test(e)||lq(e)||oq(e)||aq(e)||cq(e)||/(?:^|[\r\n])\s*(?:make(?:\[\d+])?:|CMake (?:Error|Warning)\b|\[\s*\d+%]\s+\S|(?:error|fatal|warning):\b|Traceback\b|[$#>]\s+\S)/i.test(e)}function oq(e){return/(?:^|[\r\n])\s*(?:\d{1,6}:\s*)?\[\s*\d+(?:\.\d+)?]\s+\S/.test(e)}function aq(e){return/(?:^|[\r\n])\s*(?:#{1,6}\s+\S|[-*]\s+\S|```|\|.+\|)/.test(e)}function cq(e){return/(?:^|[\r\n])\s*\S+\.(?:c|cc|cpp|cxx|cu|cuh|h|hpp|hh|s|asm|ts|tsx|js|jsx|py):\d+(?::\d+)?:/i.test(e)}function lq(e){return/(?:^|[\r\n])\s*\d{1,6}(?:[ \t]+|:\s*)\S/.test(e)}function uq(e){for(let t=e.length-1;t>=0;t-=1){let n=e[t]?.trim()??"";if(n.length>0&&!bs(n))return t}return-1}function dq(e){if(pq(e))return[];let t=[],n=/(?:^|[\r\n]|\s)(\d{1,6})\u2192([\s\S]*?)(?=(?:[\r\n]|\s)\d{1,6}\u2192|$)/g,s;for(;(s=n.exec(e))!==null;){let i=Number.parseInt(s[1]??"",10),o=(s[2]??"").trim();Number.isSafeInteger(i)&&o.length>0&&t.push({line:i,body:o.slice(0,160)})}return t}function pq(e){return/(?:^|[\r\n]|\s)\d{1,6}(?:[ \t]+|:\s+)\S/.test(e)}function um(e){return/^(?:[a-z0-9-]+\.)+[a-z]{2,}(?:$|[/:]\S*)/i.test(e)?!1:fq(e)||gq(e)||hq(e)||vq(e)||wq(e)}function mq(e){return SE(e)||yE(e)||bE(e)||Iq(e)}function fq(e){return[/^#!\/(?:usr\/bin\/env\s+)?[a-z0-9_.+-]+\b/,/^[{}]\s*;?$/,/^(?:case\s+.+|default):\s*$/,/^#include\s*(?:<[^>]+>|"[^"]+")/].some(t=>t.test(e))}function gq(e){return[/^set\s+-euo\s+pipefail\b/,/^(?:export\s+|readonly\s+|local\s+)?[A-Za-z_$][A-Za-z0-9_$]*=(?=\S)(?=.*(?:["'`$(){}]|\S+$)).+$/,/^[A-Za-z_$][A-Za-z0-9_$]*\s*\(\)\s*\{$/].some(t=>t.test(e))}function hq(e){return yE(e)||/^(?:if|for|while|switch)\s*\(/.test(e)||/^(?:break|continue)(?:\s+[a-zA-Z_$][a-zA-Z0-9_$]*)?\s*;?$/.test(e)||/^return\s+\([^)]{1,100}\)\s*\S.*;?$/.test(e)||/^return(?:\s+(?:[a-zA-Z_$][a-zA-Z0-9_$.]*(?:\([^)]*\))?|-?\d+(?:\.\d+)?|true|false|null|nullptr|none))?\s*;?$/.test(e)||/^[a-zA-Z_$][a-zA-Z0-9_$]*\s*(?:=|:=)\s*\S.*;\s*$/.test(e)||/^[a-zA-Z_$][a-zA-Z0-9_$:<>]*(?:->|::)[a-zA-Z_$][a-zA-Z0-9_$:]*/.test(e)||/^(?:this|[a-zA-Z_$][a-zA-Z0-9_$]*)\.[a-zA-Z_$][a-zA-Z0-9_$]*(?:\s*\(|\s*(?:=|\+=|-=|\*=|\/=))/.test(e)}function yE(e){return yq(e)||bq(e)||_q(e)||kq(e)||/^export\s+\{[^}\r\n]+\}\s+from\s+["'][^"'\r\n]+["']\s*;?$/.test(e)}function yq(e){let t=/^(?:export\s+)?(?:const|let|var)\s+[a-zA-Z_$][a-zA-Z0-9_$]*\s*=\s*(\S[\s\S]*)$/u.exec(e);return t!==null&&Sq(t[1]??"")}function Sq(e){let t=e.replace(/;\s*$/,"").trim();return t.length===0?!1:/^(?:["'`{[(]|\d|true\b|false\b|null\b|undefined\b|new\s+[A-Z_$])/.test(t)||/^[a-zA-Z_$][a-zA-Z0-9_$.]*(?:\([^)]*\))?$/.test(t)?!0:/(?:=>|::|->|[.[\]{}(),?:+\-*/%]|&&|\|\||[!<>=]=?)/.test(t)}function bq(e){let t=/^(?:(?:export\s+(?:default\s+)?(?:async\s+)?)|(?:async\s+))?function\s+[a-zA-Z_$][a-zA-Z0-9_$]*\s*\(([^)]*)\)\s*(?::\s*[^;{\r\n]+)?\s*(?:;|\{[^\r\n]*)\s*$/.exec(e);return t!==null&&_E(t[1]??"")}function _q(e){return/^(?:export\s+)?(?:class|interface)\s+[a-zA-Z_$][a-zA-Z0-9_$]*(?:<[^>\r\n]+>)?(?:\s+(?:extends|implements)\b[^{\r\n]*)?\s*\{/.test(e)}function kq(e){return/^(?:export\s+)?type\s+[a-zA-Z_$][a-zA-Z0-9_$]*(?:<[^>\r\n]+>)?\s*=/.test(e)}function vq(e){return SE(e)||bE(e)}function SE(e){return Eq(e)||Aq(e)}function Eq(e){return[/^from\s+(?:\.{1,3}[a-zA-Z_][a-zA-Z0-9_.]*|\.{1,3}|[a-zA-Z_][a-zA-Z0-9_.]*)\s+import\s+(?:\*|[a-zA-Z_][a-zA-Z0-9_]*(?:\s+as\s+[a-zA-Z_][a-zA-Z0-9_]*)?(?:\s*,\s*[a-zA-Z_][a-zA-Z0-9_]*(?:\s+as\s+[a-zA-Z_][a-zA-Z0-9_]*)?)*)$/,/^import\s+[a-zA-Z_][a-zA-Z0-9_.]*(?:\s+as\s+[a-zA-Z_][a-zA-Z0-9_]*)?(?:\s*,\s*[a-zA-Z_][a-zA-Z0-9_.]*(?:\s+as\s+[a-zA-Z_][a-zA-Z0-9_]*)?)*$/].some(t=>t.test(e))}function Aq(e){return[/^import\s+["'][^"'\r\n]+["']\s*;?$/,/^import\s+(?:type\s+)?(?:[a-zA-Z_$][a-zA-Z0-9_$]*\s*,\s*)?(?:\{[^}\r\n]+\}|\*\s+as\s+[a-zA-Z_$][a-zA-Z0-9_$]*|[a-zA-Z_$][a-zA-Z0-9_$]*)\s+from\s+["'][^"'\r\n]+["']\s*;?$/].some(t=>t.test(e))}function bE(e){let t=/^(?:async\s+)?def\s+[a-zA-Z_][a-zA-Z0-9_]*\s*\(([^)]*)\)\s*(?:->\s*[^:\r\n]+)?\s*:\s*$/.exec(e);return t!==null&&_E(t[1]??"")||/^class\s+[a-zA-Z_][a-zA-Z0-9_]*(?:\([^)]*\))?:\s*$/.test(e)}function _E(e){let t=e.trim();return!!(t.length===0||/^(?:this|self|cls)$/.test(t)||/[,:=*[\]{}]|(?:^|\s)(?:readonly|public|private|protected)\s+/.test(t)||/^[a-zA-Z_$][a-zA-Z0-9_$]*(?:\s*,\s*[a-zA-Z_$][a-zA-Z0-9_$]*)*$/.test(t))}function wq(e){return[/^(?=.*(?:\b[a-z_$][a-z0-9_$:<>]*_t\b|::|[<&*]|\b(?:static|inline|extern|const|virtual|void|int|char|bool|auto|struct|enum)\b))(?:[a-z_$][a-z0-9_$:<>*&,]*\s+)+[*&\s]*[~a-z_$][a-z0-9_$:<>]*\s*\([^)]*\)\s*(?:\{|;|const\b|override\b)/,/^(?:(?:const|static|inline|extern|volatile|mutable|constexpr)\s+)*(?:struct|enum|class)\s+[a-z_$][a-z0-9_$:<>]*\s+[*&\s]*[a-z_$][a-z0-9_$]*\s*(?:[=;,{]|\[[^\]]+])/,/^(?:(?:static|inline|extern|const)\s+)*(?:struct|enum|typedef|void|int|char|bool|[a-z_$][a-z0-9_$:<>]*_t)\s+[*&\s]*[a-z_$][a-z0-9_$]*\s*(?:\([^)]*\)|[=;,[{])/].some(t=>t.test(e))}function Iq(e){if(/^(?:struct|enum)\s+[a-z_][a-z0-9_:<>]*\s*(?:[{:;])/.test(e))return!0;let t=dr(e);return t?.category==="declaration"&&(t.nontrivialAnchor||Tq(e))}function Tq(e){return/^(?:(?:const|static|inline|extern|volatile|mutable|constexpr|virtual)\s+)*(?:(?:struct|enum|class)\s+)?(?:void|int|char|bool|auto|size_t|u?int\d+_t|[a-z_][a-z0-9_]*_t)\b/.test(e)}function em(e,t={minSourceStatements:2}){return e.length<3||!Cq(e)?!1:Oq(e,t,um)>=t.minSourceStatements?!0:t.allowClippedSourceContext===!0&&Lq(e)}function xq(e){let t=[],n=/(?:^|[\r\n]|\s)(\d{1,6})[ \t]+([\s\S]*?)(?=(?:[\r\n]|\s)\d{1,6}[ \t]+|$)/g,s;for(;(s=n.exec(e))!==null;){let i=Number.parseInt(s[1]??"",10),o=(s[2]??"").trim();Number.isSafeInteger(i)&&o.length>0&&t.push({line:i,body:o.slice(0,160)})}return t}function Rq(e){let t=[];for(let n of e.split(/\r?\n/)){let s=/^\s*(\d{1,6})(?:[ \t]+|:\s*)(\S[\s\S]*)$/.exec(n);s&&t.push({line:Number.parseInt(s[1],10),body:s[2].trim().slice(0,160)})}return t}function Cq(e){return e.every((t,n)=>n===0||t.line>e[n-1].line)}function Oq(e,t,n){return e.filter((s,i)=>!(t.ignoreTruncatedFinalSpan===!0&&i===e.length-1)&&n(s.body)).length}function Lq(e){if(e.length<4)return!1;let t=e.length-1,n=[],s=0,i=0,o=0;for(let[l,d]of e.entries()){if(bs(d.body)){s+=1,o+=1;continue}let m=l===t?Mo(d.body)??dr(d.body):dr(d.body);m!==null&&(s+=1,n.push(m),l!==t&&(i+=1))}let a=new Set(n.map(l=>l.category)),c=n.filter(l=>l.strongAnchor).length;return s>=4&&i>=2&&a.size>=2&&c>=2&&n.some(l=>l.nontrivialAnchor)||s>=4&&i>=2&&o>=2&&a.has("brace")&&a.has("declaration")&&c>=1}function Nq(e){return kE(e)?em(dq(e)):/^\s*\d+\.\s+\S/m.test(e)||/(?:^|\s)\d+:\s+\S/.test(e)||Mq(e)?!1:em(xq(e))}function Pq(e){if(kE(e))return!1;let t=ye(e);return!/^\s*(?:\{|\[|")/.test(e)&&em(Rq(e),{allowClippedSourceContext:t,ignoreTruncatedFinalSpan:t,minSourceStatements:t?3:2})}function Mq(e){return/[\r\n]\s*\d{1,6}[ \t]+\S/.test(e)}function kE(e){return/(?:^|[\r\n]|\s)\d{1,6}\u2192/.test(e)}function Dq(e){let t=e.trim();if(!/^#include\s*(?:<[^>\r\n]+>|"[^"\r\n]+")/i.test(t))return!1;let n=[...t.matchAll(/(?:^|\s)#include\s*(<[^>\r\n]+>|"[^"\r\n]+")/gi)].map(i=>i[1]?.toLowerCase()),s=new Set(n.filter(i=>i!==void 0));return s.size>=5||s.size>=3&&/\b(?:namespace|std::|class|struct|template|using|void|int|auto|const|public:|private:|[a-z_][a-z0-9_:]*::[a-z_][a-z0-9_]*)\b/i.test(t)}function Fq(e){let t=e.split(/\r?\n/).map(s=>s.trim());return t.filter(s=>/^\d{1,6}\s+(?:(?:(?:\/\/|\/\*|\*)\s*)|\/\/{5,})/i.test(s)).length>=2&&t.some(s=>/^\d{1,6}\s+(?:(?:\/\/\s*)?SPDX-License-Identifier:|(?:(?:\/\/|\/\*|\*)\s*)?(?:copyright|permission is hereby granted|open source license))/i.test(s))}function $q(e){let t=e.trim(),n=/^\s*\/\*([\s\S]{0,900}?)\*\//.exec(t);return/^\s*\/\/\s*SPDX-License-Identifier:\s*\S/i.test(t)||n!==null&&dm.test(n[1]??"")||Uq(t)||jq(t)}function Uq(e){let t=e.split(/\r?\n/).slice(0,12);return t.filter(s=>/^\s*(?:\/\/+|#)\s*(?:\S|$)/.test(s)).length>=3&&dm.test(t.join(`
|
|
17
|
+
`))}function jq(e){return/^\s*(?:\/\/|#)\s+/.test(e)?[...e.slice(0,900).matchAll(/(?:^|\s)(?:\/\/|#)\s+/g)].length>=3&&dm.test(e.slice(0,900)):!1}var dm=/\b(?:SPDX-License-Identifier|copyright|permission is hereby granted|open source license)\b/i;function it(e){let t=de(e);return t.length===0?!1:zq(t)||xz(t)||Qz(t)||Pq(t)||$q(t)||Fq(t)||Kq(t)||Hq(t)||Vq(t)||Dq(t)||Wq(t)||Nq(t)||Gq(t)>=2||Qq(t)>=3}function zq(e){let t=qq(e);return Bq(t)||mq(t)}function qq(e){return e.split(/\r?\n/).find(t=>t.trim().length>0)?.trim()??""}function Bq(e){return/^(?:#!\/|diff\s+--git\b|---\s+\S|@@\s+|#ifndef\b|#pragma\s+once\b|cmake_minimum_required\s*\()/i.test(e)}function Vq(e){let t=[...e.matchAll(/(?:^|[\r\n])\s*#include\s*(<[^>\r\n]+>|"[^"\r\n]+")/gi)].map(n=>n[1]?.toLowerCase());return new Set(t.filter(n=>n!==void 0)).size>=2}function Kq(e){return/(?:^|[\r\n])\s*(?:\/\/|#|\/\*)[^\r\n]*(?:$|[\r\n])/i.test(e)&&/(?:^|[\r\n])\s*(?:export\s+(?:const|function|class)\b|(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=|return\s+[^;\r\n]+;|function\s+[a-z_$][a-z0-9_$]*\s*\(|class\s+[a-z_$][a-z0-9_$]*\b|def\s+[a-z_][a-z0-9_]*\s*\()/i.test(e)}function Hq(e){return/(?:^|[\r\n])\s*@[a-zA-Z_][a-zA-Z0-9_.]*(?:\([^)\r\n]*\))?\s*(?:[\r\n]+)\s*(?:(?:async\s+)?def\s+[a-zA-Z_][a-zA-Z0-9_]*\s*\(|(?:export\s+)?(?:class|function)\s+[a-zA-Z_$][a-zA-Z0-9_$]*)/i.test(e)}function Wq(e){return/(?:^|[\r\n])\s*diff --git a\/\S+ b\/\S+/i.test(e)&&/(?:^|[\r\n])\s*index [a-f0-9]{6,}\.\.[a-f0-9]{6,}/i.test(e)}function Zq(e){let t=vE(e);return t.length===1&&ye(e)&&Jq(e)&&Yq(t[0].body)}function Gq(e){return vE(e).length}function vE(e){return[...e.matchAll(Xq)].map(t=>({body:(t[1]??"").trim()}))}function Yq(e){return um(e)||Rz(e)}function Jq(e){return e.split(/\r?\n/).slice(1).some(t=>/^\s*(?:\/|\.\.?\/|[a-z0-9_.-]+\/)\S*\/\S*\.\.\.\s*$/i.test(t))}var Xq=/(?:^|[\r\n])\s*[^\s:\r\n]+\.(?:c|cc|cpp|cxx|cu|cuh|h|hpp|hh|s|asm|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift):\d+(?::\d+)?:\s*([^\r\n]*)/gi;function Qq(e){return[/#include\b/i,/\bnamespace\s+[a-z_][a-z0-9_:]*\s*\{/i,/\bstd::[a-z_][a-z0-9_]*/i,/\b(?:class|struct)\s+[a-z_][a-z0-9_]*/i,/\btemplate\s*</i,/\bint\s+main\s*\(/i,/\bcmake_minimum_required\s*\(/i,/\bproject\s*\(/i,/\bset\s*\([a-z0-9_]+/i,/\bdef\s+[a-z_][a-z0-9_]*\s*\(/i,/\bfunction\s+[a-z_$][a-z0-9_$]*\s*\(/i,/\b(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=/i,/\breturn\s+[^.;{}]+[.;]/i].reduce((n,s)=>n+(s.test(e)?1:0),0)}function eB(e){let t=e.trim().replace(/^(?:bash|edit|read|search|tool)\s+failure\s+/,""),n=/^\s*<NOTE>([\s\S]{1,600}?)<\/NOTE>\s+([\s\S]+)$/i.exec(t);if(!n)return!1;let s=n[1]??"",i=n[2]?.trim()??"";return tB(s)&&(it(i)||[...i.matchAll(cB)].length>=2)}function tB(e){return nB.test(e)&&(rB.test(e)||sB.test(e)||iB.test(e))&&oB.test(e)&&aB.test(e)}var nB=/\b(?:file|source|content|output|document|payload|result|text|artifact|log)\b/i,rB=/\b(?:exceeds?|exceeded|larger\s+than|longer\s+than|over)\b[\s\S]{0,100}\b(?:display|show|render|view|viewer|capture|context|output)?[\s-]*(?:limit|limits|window|max(?:imum)?|allowed|capacity)\b/i,sB=/\btoo\s+(?:large|long)\s+to\s+(?:display|show|render|view|print|return|include)\s+(?:entirely|fully|in\s+full|completely)?\b/i,iB=/\b(?:larger|longer)\s+than\b[\s\S]{0,80}\b(?:viewer|display|view|window|context|tool|system)\b[\s\S]{0,80}\b(?:show|display|render|view|include|return|capture)\b/i,oB=/\b(?:abbreviated|abridged|shortened|truncated|partial|compact|limited|excerpt|preview)\b/i,aB=/\b(?:start_line|end_line|line_range|view_range|line\s+range|line\s+ranges|selected\s+lines|specific\s+lines|specific\s+portions|specific\s+sections|specific\s+ranges|fetch\s+lines|read\s+lines|show\s+lines|request\s+lines|inspect\s+lines|offset|limit|chunk|slice)\b/i,cB=/(?:^|\s)\d{1,6}\s+(?:#|from\b|import\b|class\b|def\b|function\b|export\b|const\b|let\b|var\b|interface\b|type\b|struct\b|enum\b|static\b)/gi;function Mt(e){return lB(e)||dB(e)||pB(e)||uB(e)}function lB(e){return/^\s*(?:(?:expected|example|sample|reference|illustrative|previous|golden|baseline|canonical|fixture|desired)(?:\s+(?:[a-z][\w.-]{0,40}|from\s+[a-z][\w.-]{0,40})){0,3}\s+(?:output|stdout|stderr|diagnostics?|results?|reports?)(?:\s+from\s+[a-z][\w.-]{0,40})?|(?:sample|reference|example|fixture)\s+from\s+[a-z][\w.-]{0,40}|(?:expected|example|sample|reference|illustrative|previous|golden|baseline|canonical|fixture|desired)(?:\s+[a-z][\w.-]{0,40})?|fixture)\s*:/i.test(e)}function uB(e){return/^\s*(?:(?:(?:const|let|var)\s+)?[a-z_$][\w$]*\s*=\s*(?:(?:new\s+)?[A-Z][A-Za-z0-9_$]{1,80}\s*\(\s*)?["'`]|(?:print|console\.log|assert(?:\.\w+)?|expect)\s*\(|(?:throw\s+)?new\s+[A-Z][A-Za-z0-9_$]{1,80}\s*\(\s*["'`]|raise\s+[A-Z][A-Za-z0-9_$]{1,80}\s*\(\s*["'`]|(?:[a-z_$][\w$]*\.)+[a-z_$][\w$]*\s*\(\s*["'`]|[A-Z][A-Za-z0-9_$]{1,80}\s*\(\s*["'`]|["'`][^"'`\n]{0,160}\b(?:expected\s+)?(?:exception|failed|failure|tests?\s+failed)\b|\/\/|#\s*fixture\b|return\s+["'`])/i.test(e)}function dB(e){return/^\s*(?:expected\s+(?:error|failure|exception)|(?:(?:test|case|probe|scenario)(?:\s+\d+)?[^\n:]{0,80}:?\s+)?(?:failed|failure|error|exception)\s+as\s+expected|(?:error|failure|exception)\s+occurred\s+as\s+expected)\b/i.test(e)||/^\s*(?:error|failure|exception)[^\n:]{0,120}\(expected\):/i.test(e)}function pB(e){return/^\s*(?:for\s+example\b|for\s+reference\s*[,:]|output\s+format\s*:|(?:source|fixture|sample|example)\s+(?:text|code|snippet|fixture)\s*:|this\s+(?:example|sample|fixture)\s+(?:shows?|uses?|contains?|demonstrates?)\s*:|documentation\s+(?:output|results?|reports?|diagnostics?)\s*:|the\s+(?:output|results?|reports?|diagnostics?)\s*:|(?:according\s+to\s+)?(?:the\s+)?[^\n:]{0,80}\b(?:documentation|docs?)\b(?:[^\n:]{0,80}\b(?:displays?|says?|shows?)\b|[^\n:]{0,80}[,:]))/i.test(e)}var mB=[/(?:^|[\r\n])\s*(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.[a-z0-9]{1,8}\s+\d+:\d+\s+(?:error|fatal)\b/i,/(?:^|[\r\n])\s*(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.[a-z0-9]{1,8}:\d+:\d+:\s+(?:(?:\[(?:error|fatal)\])|(?:error|fatal)\b)\s+\S/i,/(?:^|[\r\n])\s*(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.[a-z0-9]{1,8}\(\d+,\d+\):\s+(?:error|fatal)\b\s+\S/i,/(?:^|[\r\n])\s*\d+:\d+\s+(?:error|fatal)\b[^\n]{0,160}\([a-z][a-z0-9-]+\)/i,/(?:^|[\r\n])\s*(?:[a-z][\w.-]*(?:lint|test|check|build|compil|type|format|validat|audit|scan|parse|command|tool)[\w.-]*\s+)?(?:results?|output|report|diagnostics?|problems?):\s+[^\n]{0,160}(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.[a-z0-9]{1,8}\s+\d+:\d+\s+(?:error|fatal)\b/i,/(?:^|[\r\n])\s*(?:[a-z][\w.-]*(?:lint|test|check|build|compil|type|format|validat|audit|scan|parse|command|tool)[\w.-]*\s+)?(?:results?|output|report|diagnostics?|problems?):\s+[^\n]{0,160}(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.[a-z0-9]{1,8}:\d+:\d+:\s+(?:(?:\[(?:error|fatal)\])|(?:error|fatal)\b)\s+\S/i,/\bcommand\s+output:\s+[^\n]{0,240}(?:[A-Za-z]:[\\/])?(?:[./\\\w-]+[\\/])?[\w.-]+\.[a-z0-9]{1,8}:\d+:\d+:\s+(?:(?:\[(?:error|fatal)\])|(?:error|fatal)\b)\s+\S/i,/\bline\s+\d+:\s+syntax\s+error\b[^\n]{0,160}\(level:\s*error\)/i,/\b(?:error(?:\s+parsing\s+[a-z0-9_. -]+)?):\s+[^\n]{0,240}\bline\s+\d+,\s+column\s+\d+\b/i,/\b(?:parseerror|parsing\s+error|invalid\s+syntax)\b[^\n]{0,240}\bline\s+\d+,\s+column\s+\d+\b/i,/(?:^|[\r\n])\s*E\s+AssertionError\b/i],fB=/\b(?:no\s+errors?|0\s+errors?|no\s+failures?|0\s+failures?)\b/i;function EE(e){let t=gB(e).trim();return t.length===0||Mt(t)||fB.test(t)?!1:mB.some(n=>n.test(t))}function gB(e){return e.replace(/\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])/g,"")}function pm(e){let t=hB(e)??yB(e),n=t?.[1]?.trim()??"",s=t?.[2]?.trim()??"";return s.length>0?{section:s,preamble:n}:null}function hB(e){return/^([\s\S]*?)(?:^|[\r\n])\s*(?:actual|received)\s+(?:output|stdout|stderr|diagnostics?|errors?|failures?|results?|reports?)\s*:\s*([\s\S]+)$/i.exec(e)}function yB(e){return/^(\s*(?:expected|example|sample|reference|illustrative|previous|golden|baseline|canonical|fixture|desired)(?:\s+(?:[a-z][\w.-]{0,40}|from\s+[a-z][\w.-]{0,40})){0,3}\s+(?:output|stdout|stderr|diagnostics?|errors?|failures?|results?|reports?)(?:\s+from\s+[a-z][\w.-]{0,40})?\s*:\s+[\s\S]{0,800})\s+(?:actual|received)\s+(?:output|stdout|stderr|diagnostics?|errors?|failures?|results?|reports?)\s*:\s*([\s\S]+)$/i.exec(e)}function mm(e){let t=e.split(/\r?\n/).map(n=>n.trim()).filter(n=>n.length>0);return t.length>0&&t.every(n=>wE(n))}function AE(e){return mm(e)||Mt(e)||/^\s*expected(?:\s+[a-z][\w.-]{0,40})?\s*:/i.test(e)}function SB(e){return!bB(e)&&Mt(e)&&!vB(e)}function bB(e){return/:\s*\S/.test(e)&&!wE(e)}function _B(e){let n=e.split(/\r?\n/).map(s=>s.trim()).filter(s=>s.length>0).at(-1)??"";return/\bresult of running\s+`?cat\s+-n\b/i.test(e)||/(?:^|[\r\n])\s*```\w*\s*$/i.test(e)||/(?:^|[\r\n])\s*(?:(?:source|raw|literal|code|fixture|sample|example)\s+){0,3}(?:source|fixture|snippet|code|text)\s*:\s*$/i.test(e)||/^\s*(?:const|let|var)\s+[a-z_$][\w$]*\s*=\s*`$/i.test(n)||/^\s*[a-z_$][\w$]*\s*=\s*(?:'''|""")$/i.test(n)}function kB(e,t){let n=t+1;for(;n<e.length;){let s=e[n]?.trim()??"";if(s.length===0)return n;if(EB(s))return n-1;n+=1}return e.length-1}function wE(e){return/^\s*(?:for\s+(?:example|reference)|here\s+is\s+an?\s+example|in\s+(?:the\s+)?(?:docs?|documentation)|as\s+shown\s+in\s+(?:the\s+)?(?:docs?|documentation)|according\s+to(?:\s+(?:the\s+)?(?:docs?|documentation))?|(?:the\s+)?(?:docs?|documentation)|(?:the\s+)?[^\n:]{0,80}\b(?:docs?|documentation)\b[^\n:]{0,80}\b(?:displays?|format|says?|shows?)|(?:example|sample|reference|illustrative|previous|golden|baseline|canonical|fixture|desired)(?:\s+[a-z][\w.-]{0,40})?)\s*:\s*$/i.test(e)}function vB(e){return/^\s*(?:(?:(?:const|let|var)\s+)?[a-z_$][\w$]*\s*=|(?:print|console\.log|assert(?:\.\w+)?|expect)\s*\(|(?:throw\s+)?new\s+[A-Z][A-Za-z0-9_$]{1,80}\s*\(|raise\s+[A-Z][A-Za-z0-9_$]{1,80}\s*\(|(?:[a-z_$][\w$]*\.)+[a-z_$][\w$]*\s*\(|[A-Z][A-Za-z0-9_$]{1,80}\s*\(|["'`]|\/\/|#\s*fixture\b|return\s+["'`])/i.test(e)}function EB(e){return/^(?:(?:actual|received|command|tool|test|pytest|unittest|build|compiler|typecheck|lint|linter)\s+)?(?:output|stdout|stderr|diagnostics?|errors?|failures?|results?|reports?)\s*:/i.test(e)||AB(e)||wB(e)||/^\s*E\s+AssertionError\b/i.test(e)}function AB(e){return/(?:\btraceback\s+\(most recent call last\)|(?:^|[\r\n])\s*(?:AssertionError|ImportError|ModuleNotFoundError|ReferenceError|RuntimeError|SyntaxError|TypeError|ValueError):|(?:^|[\r\n])\s*(?:FAIL|ERROR):\s+\S|\bsegmentation fault\b|\bcommand not found\b|\bapply_patch verification failed\b)/i.test(e)}function wB(e){return/(?:^|[\r\n])\s*(?:FAIL|ERROR):\s+\S|\bFAILED\s+\([^)]*\b(?:failures|errors)=[1-9]\d*|\b(?:failures|errors)=[1-9]\d*\b|\b[1-9]\d*\s+failed\b/i.test(e)}function fm(e){let t=[];$v.lastIndex=0;let n;for(;(n=$v.exec(e))!==null;){let s=Number.parseInt(n[1]??"",10);Number.isSafeInteger(s)&&t.push({line:s,body:(n[2]??"").trimEnd(),index:n.index})}return t}function IB(e){return/(?:^|[\r\n]|\s)\d{1,6}(?:[ \t]+|:\s+)\S/.test(e)}var $v=/(?:^|[\r\n]|\s)(\d{1,6})\u2192([\s\S]*?)(?=(?:[\r\n]|\s)\d{1,6}\u2192|$)/g;function IE(e){let t=[];for(let n of e.split(/\r?\n/)){let s=/^\s*(\d{1,6})(?:[ \t]+|:\s+)(.*)$/.exec(n);s&&t.push({line:Number.parseInt(s[1],10),body:s[2].trimEnd()})}return t}function TE(e){return IB(e)?[]:fm(e).map(({line:t,body:n})=>({line:t,body:n}))}function gm(e){return e.every((t,n)=>n===0||t.line>e[n-1].line)}function hm(e){return/(?:^|[\r\n]|\s)\d{1,6}\u2192/.test(e)}function TB(e){let t=de(e);return hm(t)?xE(t):RE(IE(t),t)}function xE(e){let t=de(e);return RE(TE(t),t)}function RE(e,t){return e.length<4||!gm(e)?!1:xB(e.map(n=>n.body).join(`
|
|
18
|
+
`),{clipped:ye(t)})}function xB(e,t){let n=[...e.matchAll(/(?:^|[\r\n])\s{0,3}#{1,6}\s+\S/g)].length,s=[...e.matchAll(/(?:^|[\r\n])\s*(?:[-*]\s+\S|\d+\.\s+\S)/g)].length,i=t.clipped?1:2;return n>=2&&(s>=i||/(?:^|[\r\n])\s*```/.test(e)||RB(e))}function RB(e){let t=e.split(/\r?\n/).map(n=>n.trim());return t.some((n,s)=>Gp(n)&&/^\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(t[s+1]??"")&&Gp(t[s+2]??"")&&Gp(t[s+3]??""))}function Gp(e){return/^\|.+\|\s*$/.test(e)}function CE(e){let t=de(e),n=[...t.matchAll(/(?:^|[\r\n])\s{0,3}#{1,6}\s+\S/g)].length,s=[...t.matchAll(/(?:^|[\r\n])\s*(?:[-*]\s+\S|\d+\.\s+\S)/g)].length,i=/(?:^|[\r\n])\s*```/.test(t);return t.length>=160&&n>=2&&(s>=2||i)}function CB(e){let t=de(e);return OB(t)||TB(t)||CE(e)}function OB(e){let t=e.split(/\r?\n/).map(n=>n.trim());return t.some((n,s)=>{let i=t[s+1]??"",o=t[s+2]??"",a=t[s+3]??"";if(!Yp(n)||!/^\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(i)||!Yp(o)||!Yp(a))return!1;let c=xo(n);return c>=2&&xo(i)===c&&xo(o)===c&&xo(a)===c})}function Yp(e){return/^\|.+\|\s*$/.test(e)}function xo(e){return e.replace(/^\|/,"").replace(/\|$/,"").split("|").length}function LB(e){let t=de(e);if(!hm(t)||!ye(t))return!1;let n=TE(t);return n.length>=3&&(n[0]?.line??1)>1&&gm(n)&&NB(n)&&PB(n)>=2}function NB(e){return e.every((t,n)=>n===0||t.line===e[n-1].line+1)}function PB(e){return e.filter(t=>t.body.trim().length>0).length}function ym(e){let t=e.trim().replace(/^(?:bash|edit|read|search|tool)\s+failure\s+/,""),n=MB.exec(t);if(n===null)return!1;let s=Number.parseInt(n[1]??"",10),i=Number.parseInt(n[2]??"",10),o=Number.parseInt(n[3]??"",10);return Number.isSafeInteger(s)&&Number.isSafeInteger(i)&&Number.isSafeInteger(o)&&s>=1&&i>=s&&o>=i}var MB=/^IMPORTANT:\s+The file content has been truncated\.\s+Status:\s+Showing lines\s+(\d+)-(\d+)\s+of\s+(\d+)\s+total lines\.\s+Action:\s+To read more of the file,\s+you can use the (?:'offset' and 'limit'|'start_line' and 'end_line') parameters(?:\.?\s*| in a subsequent 'read_file' call\.\s+For example,\s+(?:(?:t(?:o(?: read(?: th?)?)?)?)\.{3}|to read [^,\r\n]{1,120},\s+call read_file with (?:offset \d+ and limit \d+|start_line \d+ and end_line \d+)\.{3})\s*)$/i;function DB(e){let t=e.trim();return $B.test(t)?!1:jB.some(n=>n.test(t))||FB(t)}function FB(e){return UB.test(e)}var $B=/^(?:[a-z][a-z0-9+.-]*:\/\/|(?:[a-z0-9-]+\.)+[a-z]{2,}(?:$|[/:]\S*)|[{\["]|\d{1,2}:\d{2}(?::\d{2})?\b|\d+(?:\.\d+){1,}\b)/i,UB=/(?:\b[A-Z][A-Z0-9_]{2,}\b|\b[A-Za-z]*[a-z][A-Za-z0-9]*[A-Z][A-Za-z0-9]*\b|\b[a-z][a-z0-9]*_[a-z0-9_]+\b|\b\d+-bit\b|0x[0-9a-fA-F]+\b|`[^`]+`|[a-zA-Z_$][\w.-]*=)/,jB=[/^\/[/*]/,/^#(?:include|define|if|ifdef|ifndef|endif|pragma)\b/,/^\.[a-z_][\w.]*(?:\s|$)/i,/^(?:if|for|while|switch|catch)\s*\(/,/^(?:return(?:\s+(?:[a-z_$][\w$.]*(?:\([^)]*\))?|-?\d+(?:\.\d+)?|true|false|null|nullptr))?|break|continue)\s*;?$/i,/^(?=.*(?:\b[a-z_$][\w$:<>]*_t\b|::|[<&*]|\b(?:static|inline|extern|const|virtual|void|int|char|bool|auto|struct|enum)\b))(?:[a-z_$][\w$:<>*&,]*\s+)+[*&\s]*[~a-z_$][\w$:<>]*\s*\([^)]*\)\s*(?:\{|;|const\b|override\b)/i,/^[a-z_$][\w$:<>]*(?:->|::)[a-z_$][\w$:]*/i,/^(?:this|[a-z_$][\w$]*)\.[a-z_$][\w$]*(?:\s*\(|\s*(?:=|\+=|-=|\*=|\/=))/i,/^[a-z_$][\w$]*(?:\[[^\]]+])?\s*(?:=|\+=|-=|\*=|\/=)\s*\S.*;$/i];function Sm(e){let t=[];for(let n of e.split(/\r?\n/)){let s=n.trim(),i=zB(s);i!==null&&t.push(i)}return qB(t)}function zB(e){if(BB.test(e))return{kind:"source_location",line:e};if(VB.test(e))return{kind:"path_line",line:e};let t=/^(\d{1,6}):\s*\[\s*\d+(?:\.\d+)?]\s+\S/.exec(e);if(t)return{kind:"kernel_log",line:e,lineNumber:Number.parseInt(t[1],10)};let n=/^(\d{1,6}):(?!\s)(\S[\s\S]*)$/.exec(e);return n?DB(n[2]??"")?{kind:"grep",line:e,lineNumber:Number.parseInt(n[1],10),requiresMonotone:!0}:null:/^\d{1,6}[-:](?:\||\s+\S)/.test(e)?{kind:"grep",line:e}:/^\[\s*\d+(?:\.\d+)?]\s+\S/.test(e)?{kind:"kernel_log",line:e}:/^(?:#{1,6}\s+\S|```)/.test(e)?{kind:"markdown",line:e}:null}function qB(e){let t=new Set;return e.filter(n=>{let s=`${n.kind}:${n.line}`;return t.has(s)?!1:(t.add(s),!0)})}var BB=/^[^\s:\r\n]+\.(?:c|cc|cpp|cxx|cu|cuh|h|hpp|hh|s|asm|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift):\d+(?::\d+)?:\s*\S/i,VB=/^(?!(?:[a-z][a-z0-9+.-]*:\/\/))(?:(?:(?:\/|\.{1,2}\/|[^\s:\r\n]+\/)[^\s:\r\n]*\.(?:md|markdown|txt|rst|adoc|json|jsonl|ya?ml|toml|ini|cfg|cmake|ll|td))|(?:Makefile|GNUmakefile|CMakeLists\.txt)):\d+(?::\d+)?:\s*\S/i;function OE(e){let t=de(e);if(t.length===0)return!1;let n=Sm(t);return LE(n)||!NE(n)?!1:n.length>=2||ZB(t)&&n.length>=1}function KB(e){return OE(e)}function HB(e){let t=de(e);if(!ye(t))return!1;let n=Sm(t);return n.length>=3||WB(n)}function WB(e){if(LE(e)||!NE(e))return!1;let t=new Map;for(let n of e)t.set(n.kind,(t.get(n.kind)??0)+1);return[...t.values()].some(n=>n>=2)}function LE(e){return e.some(t=>t.kind==="kernel_log"&&Po(t.line))}function NE(e){let t=e.filter(n=>n.requiresMonotone===!0);return t.every((n,s)=>s===0||(n.lineNumber??0)>(t[s-1]?.lineNumber??0))}function ZB(e){return/(?:^|[\r\n])\s*total output lines:\s*\d+\b/i.test(e)}function GB(e){let t=fm(e),n=new Set(t.map(i=>i.line)),s=t[0]?.index??-1;return s>0&&YB(e.slice(0,s))?!0:t.some((i,o)=>JB({body:i.body,currentLine:i.line,nextLine:t[o+1]?.line,arrowLines:n}))}function YB(e){let t=/(?:^|[\r\n]|\s)\d{1,6}(?:[ \t]+|:\s+)([#*/@|-]|\S+)/g;for(let n of e.matchAll(t))if(tm.test(n[1]??""))return!0;return!1}function JB(e){let t=/(?:^|[\r\n]|\s)(\d{1,6})(?:[ \t]+|:\s+)([#*/@|-]|\S+)/g;for(let n of e.body.matchAll(t)){let s=Number.parseInt(n[1]??"",10),i=n[2]??"";if(Number.isSafeInteger(s)&&!(e.arrowLines.has(s)&&!tm.test(i))&&(s>e.currentLine&&e.nextLine!==void 0&&s<e.nextLine||tm.test(i)))return!0}return!1}var tm=/^(?:[#*/@|-])/;function bm(e){let t=de(e);return eV(t)||nV(t)||lz(t)}function XB(e){let t=de(e);return t.length===0||bm(t)?!1:QB(t)}function QB(e){if(!hm(e)||!ye(e)||GB(e))return!1;let t=fm(e).map(({line:n,body:s})=>({line:n,body:s}));return t.length>=3&&gm(t)&&tV(t)&&t.filter(n=>n.body.trim().length>0).length>=2}function eV(e){return/^(?:read\s+failed\b|failed to (?:read|open)\b|could not (?:read|open)\b|unable to (?:read|open)\b)/i.test(e.trim().replace(/^(?:read|tool)\s+failure\s+/i,"").replace(/^#{1,6}\s+/,""))}function tV(e){return e.every((t,n)=>n===0||t.line===e[n-1].line+1)}function nV(e){return rV(e,/\b(?:read failed|failed to (?:read|open)|could not (?:read|open)|unable to (?:read|open))\b/gi)}function rV(e,t){for(let n of e.matchAll(t))if(!/[="'`]\s*$/.test(e.slice(Math.max(0,n.index-3),n.index)))return!0;return!1}function sV(e){return it(e)||XB(e)}function iV(e){return it(e)||lV(e)||Dt(e)||ym(e)||CB(e)||OE(e)||pV(e)||mV(e)}function _m(e){return it(e)||Dt(e)||ym(e)||xE(e)||LB(e)||CE(e)}function Dt(e){let t=de(e);return t.length===0?!1:[/\b(?:make|cmake|ninja|pytest|unittest|dkms)[^\r\n]{0,80}\.log\b/i,/\btotal output lines:\s*\d+\b/i,/(?:^|[\r\n])\s*\[\s*\d+%]\s+(?:building|linking|generating)\b/i,/(?:^|[\r\n])\s*checking for a\b/i,/(?:^|[\r\n])\s*building module\(s\)(?=\s|$)/i,/(?:^|[\r\n])\s*building [a-z0-9_ -]*object\b/i,/(?:^|[\r\n])\s*linking [a-z0-9_ -]*target\b/i,/(?:^|[\r\n])\s*[^\r\n:]+:\d+:\s*(?:userwarning|warning):\s+\S/i].filter(s=>s.test(t)).length>=2||oV(t)>=2||aV(t)||cV(t)||dV(t)}function oV(e){return[...e.matchAll(/(?:^|[\r\n])\s*(?:checking for a\b|building module\(s\)(?=\s|$)|building [a-z0-9_ -]*object\b|linking [a-z0-9_ -]*target\b|\[\s*\d+%]\s+(?:building|linking|generating)\b)/gi)].length}function aV(e){return/\b(?:make|cmake|ninja|pytest|unittest|dkms)[^\r\n]{0,80}\.log\b/i.test(e)&&/\bbuilding module\(s\)(?=\s|$)|\b(?:building|linking) [a-z0-9_ -]*(?:object|target)\b/i.test(e)&&/\b(?:command:\s*['"]?(?:make|cmake|ninja)\b|kernelver=|checking for a [a-z0-9 -]+\.{3})/i.test(e)}function cV(e){return Po(e)?!1:uV(e)>=2||/\btotal output lines:\s*\d+\b/i.test(e)&&PE(e)>=2}function lV(e){return!Po(e)&&PE(e)>=2}function uV(e){return[...e.matchAll(/(?:^|[\r\n]|\s)\[\s*\d+(?:\.\d+)?]\s+\S/g)].length}function PE(e){return[...e.matchAll(/(?:^|[\r\n]|\s)\d+:\s*\[\s*\d+(?:\.\d+)?]\s+\S/g)].length}function dV(e){return/\btotal output lines:\s*\d+\b/i.test(e)&&/\bCMake (?:Deprecation )?Warning at (?:[^\s:]+\/)*CMakeLists\.txt:\d+\s+\(/i.test(e)&&!/\bCMake Error at\b/i.test(e)}function pV(e){return/(?:^|[\r\n])\s*CMake (?:Deprecation )?Warning at (?:[^\s:]+\/)*(?:CMakeLists\.txt|[^\s:]+\.cmake):\d+\s+\(/i.test(e)&&!/\bCMake Error at\b/i.test(e)}function mV(e){return/(?:^|[\r\n])\s*make\[\d+]:\s+Entering directory\b/i.test(e)&&/(?:^|[\r\n])\s*(?:warning:\s+\S[^\r\n]*|(?:CC|LD)\s+\[M\])/i.test(e)&&!/(?:^|[\r\n])\s*make(?:\[\d+\])?:\s+\*\*\*/i.test(e)}function fV(e){let t=gV(e);return t!==null&&ME(t)}function ME(e){return!hV(e)&&it(e)}function gV(e){return/^\s*={2,}\s*Testing\b[^=\r\n]{1,180}={2,}\s*([\s\S]+)$/i.exec(e)?.[1]?.trim()??null}function hV(e){return/^(?:FAIL\b|ERROR\b|FAILED\b|AssertionError\b|Traceback\b|[1-9]\d*\s+fail(?:ed|ures?)\b|(?:failures|errors)\s*[:=]\s*[1-9]\d*\b|exited\s+with\s+(?:code|status)\s+[1-9]\d*\b)/i.test(e)}function DE(e){let t=[...e.matchAll(/={2,}\s*Testing\b[^=\r\n]{1,180}={2,}/gi)];if(t.length===0||t[0]?.index!==0)return null;let n=[];for(let s=0;s<t.length;s+=1){let i=t[s],o=e.slice((i.index??0)+i[0].length,t[s+1]?.index).trim();if(o.length===0)return null;n.push(o)}return n}function yV(e){let t=e.trim();if(t.length===0||UE(t))return null;let n=DE(t);if(n===null)return null;let s=!1;for(let i of n){let o=$E(i);if(o===null||o==="failure")return null;s||=o==="concrete"}return s?"concrete":"success"}function FE(e){let t=e.trim();if(t.length===0)return!1;let n=DE(t);return n!==null&&n.some(s=>$E(s)==="failure")}function $E(e){return SV(e)?"failure":bV(e)?null:_V(e)?"failure":kV(e)?"concrete":vV(e)?"success":null}function SV(e){return/^(?:\s|[\r\n])*(?:Traceback\s+\(most recent call last\)|(?:FAIL|ERROR|FAILED)\b|[a-z0-9_.-]+\s+\.\.\.\s+(?:FAIL|ERROR)\b|AssertionError\b|[1-9]\d*\s+fail(?:ed|ures?)\b|(?:failures|errors)\s*[:=]\s*[1-9]\d*\b|exited\s+with\s+(?:code|status)\s+[1-9]\d*\b)/i.test(e)}function bV(e){return ME(e)||UE(e)||/\b(?:confirm|ensure|verify|validate|make\s+sure|we\s+expect|the\s+output\s+should|review\s+requirement|requirement:|please|check\s+that|reviewer\s+should|should\s+(?:check|confirm|ensure|verify)|must\s+(?:check|ensure|confirm|verify|appear)|for\s+reference|as\s+a\s+reference|refer\s+to|reference:)\b|^\s*(?:check|validate|expect)\b/i.test(e)}function _V(e){return/(?:\bTraceback\s+\(most recent call last\)|\b(?:FAIL|ERROR):|(?:^|\s)(?:FAIL|ERROR|FAILED)\b|\b[a-z0-9_.-]+\s+\.\.\.\s+(?:FAIL|ERROR)\b|\bAssertionError\b|\b[1-9]\d*\s+fail(?:ed|ures?)\b|\b(?:failures|errors)\s*[:=]\s*[1-9]\d*\b|\bexited\s+with\s+(?:code|status)\s+[1-9]\d*\b)/i.test(e)}function kV(e){return/\b[a-z_][a-z0-9_.]*\([^)]{0,200}\)\s*=\s*(?:true|false|[-+]?\d+(?:\.\d+)?|["'][^"']{0,80}["']|\S{1,80})\b/i.test(e)||/\bProblems?\s+found:\s+(?!No\s+problems?\s+found\b)\S/i.test(e)}function vV(e){return/\b(?:All\s+[a-z0-9_. _-]{1,160}\s+tests?\s+passed!?|Problems?\s+found:\s+No\s+problems?\s+found|Test\s+PASSED)\b/i.test(e)}function UE(e){return/\b(?:expected\s+output|should\s+(?:say|report|end|be)|after\s+the\s+patch|before\s+(?:you\s+continue|submission)|then\s+submit|must\s+appear|final\s+response)\b/i.test(e)}function jE(e){let t=e.trim();if(zE(t))return null;let n=yV(t);return n!==null?{consequenceBaseline:n==="success"?"low":"high"}:EV(t)||AV(t)||wV(t)||IV(t)?{consequenceBaseline:"low"}:mz(t)?{consequenceBaseline:"medium"}:null}function zE(e){return pE(e)||[/\bFAILED\s+\([^)]*\b(?:failures|errors)=[1-9]\d*/i,/(?:^|[\r\n])\s*(?:FAIL|ERROR):\s+\S/i,/\b(?:failures|errors)=[1-9]\d*\b/i,/\b[1-9]\d*\s+failed\b/i,/\b[1-9]\d*\s+errors?\b/i,/(?:^|[\r\n])\s*=+\s*(?:FAILURES|ERRORS)\s*=+/i].some(t=>t.test(e))}function EV(e){return/^\s*===\s*Testing\b[^=\r\n]{1,160}===\s*All\s+[a-z0-9_. _-]{1,160}\s+tests?\s+passed!?\s*$/i.test(e)}function AV(e){return/(?:^|[\r\n]|\s)Ran\s+\d+\s+tests?\s+in\s+[\d.]+s\s+OK\s*$/i.test(e)}function wV(e){return/(?:^|[\r\n=])\s*=*\s*\d+\s+passed(?:,?\s+\d+\s+(?:skipped|warnings?))*\s+in\s+[\d.]+s\s*=*\s*$/i.test(e)}function IV(e){return/^\s*running\s+(?:command|[a-z0-9_.-]+)[^\r\n]{0,160}\s+output:\s+[\s\S]{1,1200}\b(?:test passed(?::\s+[^\r\n.]+)?|tests passed|all checks passed|all [a-z0-9_. -]{1,160} tests passed|no problems found)[.!]?\s*$/i.test(e)}function qE(e){let t=V(e).replace(/[.]+$/g,"").replace(/\s+/g," ");return xV.some(n=>n.test(t))}var TV=String.raw`(?:(?:no output|without output|no stdout\s+no stderr|no stderr\s+no stdout|empty stdout\s+empty stderr|stdout empty\s+stderr empty)\s+)`,Uv=String.raw`${TV}(?:(?:command|process|tool|subprocess)\s+)?`,xV=[new RegExp(String.raw`^${Uv}(?:exit code|exit_code|exit-code|exited with code|exit status|exited with status|return code|return_code|returned code)\s*(?:is|was)?\s*-?[1-9]\d*$`),new RegExp(String.raw`^${Uv}(?:failed\s+with\s+)?(?:a\s+)?(?:non-zero|nonzero|non zero)\s+exit$`)];function km(e){return OV(e)||hs(e,"subprocess failed",ys)?!0:jj.some(t=>hs(e,t,LV(t)))}function RV(e){return VE(e,t=>t===0)}function CV(e){let t=NV(PV(e));return cE.some(n=>hs(t,n,FV))}function OV(e){return VE(e,t=>t!==0)||hs(e,"non-zero exit",ys)||hs(e,"nonzero exit",ys)}function LV(e){switch(e){case"exception":return $V;case"traceback":return UV;default:return ys(e)}}var BE=String.raw`\b(?:exit code|exit_code|exit-code|exited with code|exit status|exited with status|return code|return_code|returned code)\s*(?:is|was)?\s*(-?\d+)\b`;function VE(e,t){for(let n of e.matchAll(new RegExp(BE,"g"))){let s=Number.parseInt(n[1]??"",10);if(Number.isFinite(s)&&t(s))return!0}return!1}function NV(e){return e.replace(new RegExp(BE,"g")," ")}function PV(e){return e.replace(/^(?:observation|bash failure|bash observation|tool failure|tool observation)\s+/,"")}function hs(e,t,n){let s=typeof n=="function"?n(t):n;for(let i of MV(e,t))if(!DV(e,i.start,i.end,s))return!0;return!1}function MV(e,t){let n=V(t);if(!n)return[];let s=new RegExp(`(^|[^a-z0-9_])(${vm(n)})(?=$|[^a-z0-9_])`,"g"),i=[];for(let o of e.matchAll(s)){let a=(o.index??0)+(o[1]?.length??0);i.push({start:a,end:a+n.length})}return i}function DV(e,t,n,s){for(let i of s)for(let o of e.matchAll(new RegExp(i.source,"g"))){let a=o.index??0,c=a+o[0].length;if(t>=a&&n<=c)return!0}return!1}function ys(e){let t=vm(V(e));return[new RegExp(String.raw`\bno ${t}\b`),new RegExp(String.raw`\bwithout ${t}\b`)]}function FV(e){let t=vm(V(e));return[...ys(e),new RegExp(String.raw`\bnot ${t}\b`),new RegExp(String.raw`\bdidn t ${t}\b`),new RegExp(String.raw`\bdid not ${t}\b`)]}var $V=[/\bno exceptions?(?: occurred| raised| reported| found| seen| present)?\b/,/\bwithout (?:an? )?exceptions?\b/,/\bexpected exceptions?(?: was| were)? (?:caught|handled|raised)\b/,/\b(?:caught|handled) (?:the )?expected exceptions?\b/,/\bexceptions?(?: was| were)? expected\b/],UV=[/\bno tracebacks?(?: occurred| raised| reported| found| seen| present)?\b/,/\bwithout (?:a )?tracebacks?\b/,/\bexpected tracebacks?(?: was| were)? (?:caught|handled|raised|produced)\b/,/\btracebacks?(?: was| were)? expected\b/];function vm(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Em(e){let t=pm(e);if(t!==null){let n=KE(t.section);return n===null||_B(t.preamble)||mm(t.preamble)&&!gs(n)?null:n}return!e.includes(`
|
|
19
|
+
`)&&!Mt(e)&&Do(e)?e:HE(e)}function KE(e){return HE(e)}function HE(e){let t=e.trim();if(t.length===0)return null;let n=t.split(/\r?\n/);for(let s=0;s<n.length;s+=1){let o=(n[s]??"").trim();if(AE(o)){SB(o)&&(s=kB(n,s));continue}if(o.length>0&&!Mt(o)&&Do(o))return o;let a=jV(n,s);if(a!==null)return a}return null}function jV(e,t){let n=e[t]?.trim()??"";if(!/^={2,}\s*[^=\n][^\n]*\s*={2,}$/.test(n))return null;let s=e.slice(t+1).find(o=>o.trim().length>0)?.trim();if(s===void 0||AE(s))return null;let i=`${n}
|
|
20
|
+
${s}`;return Do(i)?i:null}function Do(e){return km(V(e))||gs(e)||zE(e)||FE(e)||EE(e)||dE(e)}function Am(e){let t=Em(e);return t!==null&&Do(t)}function Ft(e){let n=/^\s*OBSERVATION:\s*([\s\S]+)$/i.exec(e)?.[1]?.trim()??"";return n.length>0&&n!=="{}"?n:null}function WE(e){return/^\s*(?:error|syntaxerror|typeerror|runtimeerror|valueerror|assertionerror):\s+\S/i.test(e)}function ZE(e,t){return HV(t)||zV(t)||Lj.test(e)||Ss.test(e)&&/\bmatch(?:es)?\b/.test(e)}function zV(e){let t=qV(e),n=t.filter(i=>i.path===void 0);return n.length>=3&&jv(n)&&VV(n)?!0:[...BV(t.filter(i=>i.path!==void 0)).values()].some(i=>i.length>=2&&jv(i))}function qV(e){return[...e.matchAll(KV)].map(t=>({...t.groups?.path?{path:t.groups.path}:{},line:Number.parseInt(t.groups?.line??"",10),separator:t.groups?.separator??"",body:t.groups?.body?.trim()??""}))}function jv(e){return e.every((t,n)=>!Number.isSafeInteger(t.line)||t.body.length===0?!1:n===0||t.line>e[n-1].line)}function BV(e){let t=new Map;for(let n of e)n.path!==void 0&&t.set(n.path,[...t.get(n.path)??[],n]);return t}function VV(e){return e.some(t=>t.separator==="--"||t.separator.includes("|"))}var KV=/(?:^|\s)(?:(?<path>\S+\.[a-z0-9]+)-)?(?<line>\d{1,6})(?<separator>--|[-:]\||-)\s+(?<body>\S[\s\S]*?)(?=(?:\s(?:\S+\.[a-z0-9]+-)?\d{1,6}(?:--|[-:]\||-)\s+\S)|$)/gi;function HV(e){return/^\s*web search results for\s+(?:"[^"]+"|'[^']+'|`[^`]+`|[^:\r\n]{1,200})\s*:\s+\S/i.test(e)}function WV(e){return/^\s*(?:source\s+)?fixture\s*:\s*```[\s\S]+```\s*$/i.test(e)||/^\s*(?:const|let|var)\s+[a-z_$][\w$]*\s*=\s*`[\s\S]+`\s*;?\s*$/i.test(e)||/^\s*[a-z_][\w]*\s*=\s*(?:'''|""")[\s\S]+(?:'''|""")\s*$/i.test(e)}function ZV(e){let t=V(e);if(t.length<80||t.length>1800||GV(t))return!1;let n=zv(t,[/\bplease\b/,/\b(?:follow|complete|perform)\s+(?:the\s+)?(?:steps?|checks?)\b/,/\bsteps?\s+below\b/,/\bif\s+you\s+(?:made|make|changed|change|ran|run)\b/,/\b(?:run|rerun)\s+the\s+(?:reproduction|reproducer|verification)\s+(?:script|command)\b/,/\breview\s+(?:your\s+)?changes\b/,/\b(?:verify|confirm|ensure)\s+(?:the\s+)?(?:issue|fix|changes?|behavior)\b/]),s=zv(t,[/\breproduction\s+(?:script|command)\b/,/\breproducer\b/,/\bverification\s+(?:script|command)\b/]);return n>=2&&s>=1}function zv(e,t){return t.reduce((n,s)=>n+(s.test(e)?1:0),0)}function GV(e){return[/\btraceback\b/,/\b(?:syntaxerror|typeerror|assertionerror|exceptiongroup|exception)\b/,/\b(?:segmentation fault|segfault|core dumped|crash(?:ed|es|ing)?)\b/,/\bpermission\s+denied\b/,/\b(?:timed?\s+out|timeout)\b/,/\b(?:fail(?:ed|ing|s|ure)?|errors?|errored)\b/,/\b(?:unresolved|not\s+resolved|still\s+(?:broken|failing|does\s+not\s+work|doesn\s+t\s+work))\b/,/\b(?:does\s+not|did\s+not|doesn\s+t|didn\s+t)\s+pass\b/,/\bexit\s+code\s+[1-9]\d*\b/,/\b(?:exited|returned)\s+(?:with\s+)?(?:code\s+)?[1-9]\d*\b/,/\b(?:returned|returning)\s+non[-\s]?zero\b/,/(?:^|\s)(?:fail|error):\s+\S/,/\b(?:failures|errors)=[1-9]\d*\b/,/\b[1-9]\d*\s+(?:failed|errors?)\b/,/\bno\s+replacement\s+was\s+performed\b/,/\bold_str\b/,/\bnew_string\b/].some(t=>t.test(e))}function YV(e){return Ie(e,aE)&&Ss.test(e)}function Fo(e){return JV.some(t=>t.test(e))}var JV=[/^(?:expected|example|sample|reference|desired|golden|baseline|canonical|fixture|documentation)\b[^\r\n:]{0,80}\b(?:output|results?|report|diagnostics?|errors?|failures?)\b[^\r\n:]{0,80}:/i,/^(?:expected|example|sample)\b[^\r\n:]{0,80}:\s*(?:actual|received)\s+(?:output|results?|report|diagnostics?|errors?|failures?)\b/i,/^(?:for reference|for example|here is an example|in the docs|as shown in the docs|according to\b[^\r\n:]{0,80}|the\b[^\r\n:]{0,80}documentation\b[^\r\n:]{0,80}|the report|source text|this example shows)\b/i,/^(?:output format|expected error|for example,|(?:test\b[^\r\n:]{0,80}|probe|error occurred)\s+failed as expected|error occurred as expected|error reading\b[^\r\n:]{0,80}\(expected\)|the\b[^\r\n:]{0,80}\bdocs?\b[^\r\n:]{0,80}(?:show|shows|display|says)|according to\b[^\r\n:]{0,80}\bdocs?\b)/i];function GE(e,t){let n=XV(e);return[...e.matchAll(t)].filter(s=>!QV(s.index,s.index+s[0].length,n)).length}function Tn(e,t){return GE(e,t)>0}function XV(e){let t=[],n=null,s=-1;for(let i=0;i<e.length;i+=1){let o=e[i],a=n===null?eK(e,i):null;a!==null?(n=a,s=i):n!==null&&o==="\\"?i+=1:n!==null&&o===n&&!nK(e,i,n)&&(t.push([s,i+1]),n=null,s=-1)}return n!==null&&t.push([s,e.length]),t}function QV(e,t,n){return n.some(([s,i])=>e<i&&t>s)}function eK(e,t){let n=e[t];return n==='"'||n==="`"||n==="'"&&!tK(e,t)?n:null}function tK(e,t){if(!fs(e[t-1]))return!1;let n=e[t+1];return fs(n)?!0:n!==void 0&&/\s/.test(n)?/s/i.test(e[t-1]??"")&&fs(rK(e,t+1)):!1}function nK(e,t,n){return n==="'"&&fs(e[t-1])&&fs(e[t+1])}function fs(e){return e!==void 0&&/[A-Za-z0-9_]/.test(e)}function rK(e,t){for(let n=t;n<e.length;n+=1)if(!/\s/.test(e[n]??""))return e[n]}function sK(e){return/^\s*(?:(?:const|let|var)\s+)?[a-z_$][\w$]*\s*=\s*["'`][\s\S]*["'`]\s*;?\s*$/i.test(e)||/^\s*(?:print|console\.(?:log|warn|error)|logger\.[a-z_$][\w$]*|process\.stdout\.write)\s*\(\s*["'`][\s\S]*["'`]\s*\)\s*;?\s*$/i.test(e)}function iK(e){let t=e.trim();if(t.length===0||aK(t)||Fo(t)||sK(t)||cK(t))return!1;let n=oK(t);return n>=2||n>=1&&/\b(?:running|output|lint|linter|problems?\s+found)\b/i.test(t)}function oK(e){return GE(e,uK)}function aK(e){return/\b(?:please|should|must|expected output|final response|review your changes|follow the steps)\b/i.test(e)}function cK(e){return YE(e)&&!/\bTest PASSED\b[\s\S]{0,240}\b(?:error|reported)\b/i.test(e)}function lK(e){return Tn(e,/(?:^|[\r\n]|\s)warning\b/gi)}function YE(e){return Tn(e,/(?:^|[\r\n]|\s)(?:error|fatal)\b/gi)||Tn(e,/\b(?:\[[^\]]*error[^\]]*]|level:\s*error)\b/gi)}var uK=/(?:^|[\r\n]|\s)(?:(?:\.{0,2}\/|\/)?[a-z0-9_./-]+\.(?:ya?ml|json|toml|ini|cfg|conf|md|txt|py|ts|tsx|js|jsx|rb|go|rs|java|kt|swift)\s+)?(?:line\s+)?\d{1,6}(?::\d{1,4}|,\s*column\s+\d{1,4}):?\s+(?:warning\s+|error\s+|found\s+|missing\s+|too\s+|forbidden\s+|undefined\s+|duplicate\s+|trailing\s+|wrong\s+)\S/gi;function qv(e){let t=de(e);return t.length===0?!1:dK(t)}function dK(e){let t=e.replace(/\s+/g," "),n=/^diff --git a\/(\S+) b\/(\S+) index [a-f0-9]{6,}\.\.[a-f0-9]{6,}(?: \d+)? --- a\/(\S+) \+\+\+ b\/(\S+) @@ -\d+(?:,\d+)? \+\d+(?:,\d+)? @@(?: |$)/i.exec(t);return n!==null&&n[1]===n[3]&&n[2]===n[4]&&n[1]===n[2]}function JE(e){let t=e.trim();return t.length>0&&ye(t)&&!Fo(t)&&!ur(t)&&!fK(t)&&(pK(t)||mK(t))}function pK(e){return Tn(e,gK)}function mK(e){return Tn(e,hK)||Tn(e,yK)}function fK(e){return Tn(e,SK)}var gK=/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\)?[^\s:\r\n]+\.[a-zA-Z0-9]{1,8}:\d+(?::\d+)?:\s*(?:[A-Za-z_][A-Za-z0-9_]*Warning|warning):\s+\S/gi,hK=/(?:^|[\r\n])\s*(?:clang|gcc|g\+\+|cc|c\+\+|ld|nvcc|hipcc)\s*:\s*warning:\s+\S/gi,yK=/(?:^|[\r\n])\s*CMake (?:Deprecation )?Warning at \S+:\d+\s+\(/gi,SK=/(?:^|[\r\n])\s*(?:(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\)?[^\s:\r\n]+\.[a-zA-Z0-9]{1,8}:\d+(?::\d+)?:\s*)?(?:error|fatal):\s+\S/gi;function $o(e,t={}){let n=de(e);if(n.length===0||bK(n)||t.rejectCommandTextWrappers===!0&&_K(n))return null;let s=jE(n);if(s!==null&&!ur(n))return{shape:"test",consequenceBaseline:s.consequenceBaseline,source:!1};if(AK(n)||t.allowNonWarningLinterFindings===!0&&XE(n))return{shape:"linter",consequenceBaseline:"high",source:!1};if(JE(n))return{shape:"readback",consequenceBaseline:"medium",source:!1};if(/^\s*diff --git\b/i.test(n)&&!qv(n))return null;if(qv(n))return{shape:"diff",consequenceBaseline:"high",source:!0};let i=t.allowReadOwnedFlattenedFilePayloads===!0?IK(n):wK(n);return it(n)&&(t.allowReadOwnedFlattenedFilePayloads!==!0||NK(n))||i?{shape:"source",consequenceBaseline:"high",source:!0}:_m(n)?{shape:"readback",consequenceBaseline:Dt(n)?"medium":"high",source:!1}:xK(n)||t.allowReadOwnedFlattenedFilePayloads===!0&&TK(n)?{shape:"document",consequenceBaseline:"medium",source:!1}:null}function bK(e){return[/^\s*no replacement was performed\b/i,/^\s*old_str\b[\s\S]{0,240}\bwas not found\b/i,/^\s*could not find\b[\s\S]{0,240}\b(?:exact text|old_str|replacement)\b/i,/^\s*failed to apply\b/i,/^\s*file has not been read\b/i,/^\s*read it first before writing\b/i,/^\s*(?:failed|unable|could not|couldn't) to read\b/i,/^\s*(?:failed|unable|could not|couldn't) to open\b/i].some(t=>t.test(e))}function _K(e){return Fo(e)||EK(e)||kK(e)||vK(e)}function kK(e){return e.split(/\r?\n/).filter(n=>n.trim().length>0).length<=3&&/^\s*(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=\s*["'`][\s\S]*["'`]\s*;?\s*(?:\r?\n\s*return\b[\s\S]*)?$/i.test(e)}function vK(e){return/^\s*(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=\s*["'`][\s\S]*\bdiff --git\b/i.test(e)}function EK(e){return/^\s*---\s+expected\b[\s\S]*^\s*\+\+\+\s+actual\b/im.test(e)}function AK(e){return XE(e)&&lK(e)}function XE(e){return iK(e)&&!YE(e)}function wK(e){if(Uo(e)||!ye(e)||wm(e))return!1;let t=Q(e,PK),n=Q(e,DK),s=Q(e,QE),i=Q(e,FK),o=Q(e,eA),a=Q(e,$K),c=Q(e,tA),l=Q(e,nA),d=t+n*2+s+i+o+a+c+Math.min(l,3);return n>=1&&d>=4||t>=3&&d>=5||a>=3&&(o>=1||n>=1)}function IK(e){if(Uo(e)||!ye(e)||wm(e))return!1;let t=Q(e,MK),n=Q(e,QE),s=Q(e,eA),i=Q(e,tA),o=Q(e,nA),a=t*2+s+i,c=n+s+i+Math.min(o,3);return LK(e)&&t>=2&&a>=4||o>=3&&(n>=1||s>=1||i>=1)&&c>=6}function TK(e){if(Uo(e)||!ye(e)||e.length<160||wm(e))return!1;let t=Q(e,UK),n=Q(e,jK),s=Q(e,zK),i=Q(e,qK);return/^\s{0,3}#{1,6}\s+\S/.test(e)&&t>=2&&(n>=2||s>=2||n>=1&&i>=2)}function xK(e){if(!ye(e)||ur(e))return!1;let t=RK(e);if(t.length<3||!OK(t))return!1;let n=t.filter(c=>/^\|[\s\S]*\|/.test(c.body.trim())).length,s=t.filter(c=>um(c.body.trim())).length,i=t.filter(c=>/^\d+(?:\.\d+){1,}\.?\s+\S/.test(c.body.trim())).length,o=t.filter(c=>/^\d+\s+of\s+\d+\s*$/.test(c.body.trim())).length,a=t.filter(c=>/\b[A-Z][A-Z0-9_]{2,}\b/.test(c.body)).length;return n>=2||s>=2||i>=1&&(o>=1||a>=1)||i>=2&&a>=1}function RK(e){let t=IE(e).filter(n=>n.body.trim().length>0);return t.length>=2?t:CK(e)}function CK(e){let t=[],n=/(?:^|\s)(\d{1,6})[:|-]\s*([\s\S]*?)(?=\s+\d{1,6}[:|-]\s*\S|$)/g,s;for(;(s=n.exec(e))!==null;){let i=Number.parseInt(s[1]??"",10),o=(s[2]??"").trim();Number.isSafeInteger(i)&&o.length>0&&t.push({line:i,body:o.slice(0,200)})}return t}function OK(e){return e.every((t,n)=>n===0||t.line>e[n-1].line)}function Q(e,t){return[...e.matchAll(t)].length}function Uo(e){return/[\r\n]/.test(e)}function wm(e){return/^\s*(?:please|should|must|expected output|final response|review your changes|follow the steps)\b/i.test(e)}function LK(e){return/^\s*(?:\/\*|\/\/|#!\/|import\s+(?:type\s+)?(?:\{|\*|[A-Za-z_$]))/.test(e)}function NK(e){return Uo(e)||/(?:^|\s)\d{1,6}\u2192\S/.test(e)}var PK=/(?:^|\s)(?:from\s+(?!report\b|notes\b|the\b)[a-zA-Z_][a-zA-Z0-9_.]*\s+import\s+(?!settings\b|values\b|packages\b|the\b)(?:[a-zA-Z_*][a-zA-Z0-9_.*]*|\{[^}]{1,160}\})|import\s+(?:(?:(?:type\s+)?\{[^}]{1,160}\}|(?:type\s+)?[a-zA-Z_$][a-zA-Z0-9_$]*|\*\s+as\s+[a-zA-Z_$][a-zA-Z0-9_$]*)\s+from\s+(?:"[^"]+"|'[^']+'|[a-zA-Z_][a-zA-Z0-9_.:/-]*)|(?!the\b|packages\b|settings\b|values\b|class\b)[a-zA-Z_][a-zA-Z0-9_.]*))\b/g,MK=/(?:^|\s)import\s+(?:(?:type\s+)?\{[^}]{1,160}\}|(?:type\s+)?[a-zA-Z_$][a-zA-Z0-9_$]*|\*\s+as\s+[a-zA-Z_$][a-zA-Z0-9_$]*)\s+from\s+(?:"[^"]+"|'[^']+')/g,DK=/(?:^|\s)(?:@[a-zA-Z_][a-zA-Z0-9_.]*(?:\([^)]*\))?\s+)?(?:async\s+)?def\s+[a-zA-Z_][a-zA-Z0-9_]*\s*\([^)]*\)\s*:|(?:^|\s)class\s+[a-zA-Z_][a-zA-Z0-9_]*(?:\([^)]*\))?\s*:|(?:^|\s)(?:export\s+)?(?:async\s+)?function\s+[a-zA-Z_$][a-zA-Z0-9_$]*\s*\(|(?:^|\s)(?:export\s+)?(?:const|let|var)\s+[a-zA-Z_$][a-zA-Z0-9_$]*\s*=|(?:^|\s)#include\s*(?:<[^>]+>|"[^"]+")/g,QE=/(?:^|\s)(?:if|for|while|with)\s*\(|(?:^|\s)(?:yield|return)\s+[a-zA-Z_({][^\s;)]*|(?:^|\s)isinstance\s*\(/g,FK=/(?:^|\s)[A-Za-z_][A-Za-z0-9_]*\s*=\s*(?:["'({[]|[A-Za-z_][A-Za-z0-9_.]*\()/g,eA=/(?:^|\s)[A-Za-z_][A-Za-z0-9_]*(?:\.[A-Za-z_][A-Za-z0-9_]*){2,}|\b[A-Za-z_][A-Za-z0-9_]*::[A-Za-z_][A-Za-z0-9_]*|\b[A-Za-z_][A-Za-z0-9_]*->[A-Za-z_][A-Za-z0-9_]*/g,$K=/(?:^|\s)(?:std::[A-Za-z_][A-Za-z0-9_]*|[A-Za-z_][A-Za-z0-9_]*->|[A-Za-z_][A-Za-z0-9_]*\.[A-Za-z_][A-Za-z0-9_]*|return\s+[A-Z_][A-Z0-9_]*;|(?:void|int|char|bool|auto|size_t)\s+[A-Za-z_][A-Za-z0-9_]*\s*\()/g,tA=/(?:^|\s)(?:typeof\s+[A-Za-z_$][A-Za-z0-9_$]*|}\s+as\s+[A-Z][A-Za-z0-9_]*(?:<[^>]+>)?|as\s+const\b|\[[^\]]{1,120}\]\.map\s*\()/g,nA=/(?:^|\s)[A-Za-z_$][A-Za-z0-9_$]*:\s*(?:null|true|false|["'[{(]|[A-Za-z_$][A-Za-z0-9_$]*(?:[,.}]|\s*=>))/g,UK=/(?:^|\s)#{1,6}\s+\S/g,jK=/(?:^|\s)(?:[-*]\s+\S|\d+\.\s+\S)/g,zK=/`[^`]{1,120}`/g,qK=/\b(?:api|cli|sdk|typescript|javascript|package|framework|rendering|configuration|options|interface|component|terminal|runtime|schema|server|client)\b/gi,BK=/^the\s+user\s+(?:doesn['’]?t|does\s+not)\s+want\s+to\s+(proceed\s+with\s+this\s+tool\s+use|take\s+this\s+action(?:\s+right\s+now)?)\b/i,VK=/^(?:the\s+)?tool\s+use\s+(?:was\s+)?rejected\b/i,KK=/^stop\b[\s\S]*\bwait\b[\s\S]*\buser\b[\s\S]*\bproceed\b\s*[.!?]?$/i;function _s(e){return/\btool\s+use\s+was\s+rejected\b/i.test(e)||/\buser\s+doesn['’]?t\s+want\s+to\s+proceed\b/i.test(e)||/\buser\s+doesn['’]?t\s+want\s+to\s+take\s+this\s+action\s+right\s+now\b/i.test(e)||/\bstop\s+what\s+you\s+are\s+doing\s+and\s+wait\b/i.test(e)}function HK(e){let t=e.trim().replace(/^OBSERVATION:\s*/i,"").trim(),n=BK.exec(t);if(!n)return!1;let s=Bv(t.slice(n[0].length));if(/\btool\s+use\b/i.test(n[1]??"")){let i=WK(s);if(i===null)return!1;s=Bv(i)}return KK.test(s)}function WK(e){let t=VK.exec(e);return t?ZK(e.slice(t[0].length)):null}function Bv(e){return e.replace(/^\s*[.!?]\s*/u,"")}function ZK(e){let t=/^\s*\(([^()]*)\)\s*/u.exec(e);if(!t)return e;let n=t[1]??"";return n.length>240||!/(?:\beg\b|\be\.g\.|\bfor example\b|\bif\b)/i.test(n)?e:e.slice(t[0].length)}function nm(e){let t=Ft(e);return t===null||_s(t)?null:rA(t)}function Vv(e){let t=Ft(e);return t!==null&&!_s(t)&&rA(t)===null&&Am(t)}function rA(e){let t=V(e),n=jE(e);if(n!==null)return Am(e)?null:{shape:n.consequenceBaseline==="low"?"successful_test":"concrete_test_result",consequenceBaseline:n.consequenceBaseline};if(eB(e))return{shape:"abbreviated_file_view",consequenceBaseline:"low"};if(Ie(t,am)||WV(e))return{shape:"existing_observation",consequenceBaseline:"high"};if(FE(e)||EE(e)||WE(e))return null;if(ZV(e))return{shape:"procedural_harness_observation",consequenceBaseline:"low"};let s=$o(e,{allowNonWarningLinterFindings:!0});return s!==null?{shape:s.shape==="test"?"concrete_test_result":"existing_observation",consequenceBaseline:s.consequenceBaseline}:YV(t)||fV(e)||ZE(t,e)?{shape:"existing_observation",consequenceBaseline:"high"}:null}function GK(e){let t=Ft(e);return t===null||_s(t)||Am(t)?null:nm(e)}function YK(e){let t=Ft(e);if(t===null||_s(t))return!1;let n=pm(t);return n===null?(Mt(t)||Kv(t))&&Em(t)===null:mm(n.preamble)||KE(n.section)===null&&(Mt(t)||Kv(n.section))}function JK(e){let t=Ft(e);return t===null||_s(t)?!1:pm(t)!==null&&Em(t)!==null}function Kv(e){return e.split(/\r?\n/).some(t=>Mt(t.trim()))}function Im(e){return QK(e.toolFamily)}function XK(e){let t=Im(e);if(t)return t;let n=V(`${e.title} ${e.summary??""}`),s=[];return(st(n,"wants to read")||st(n,"wants to inspect")||us(n,"read")||us(n,"inspect"))&&s.push({toolFamily:"read",risk:1,order:0}),(st(n,"search files")||st(n,"search file contents"))&&s.push({toolFamily:"search",risk:1,order:1}),st(n,"search the web")&&s.push({toolFamily:"web",risk:2,order:2}),(st(n,"wants to write")||us(n,"write"))&&s.push({toolFamily:"write",risk:3,order:3}),(st(n,"wants to edit")||us(n,"edit"))&&s.push({toolFamily:"edit",risk:3,order:4}),(st(n,"shell command")||st(n,"wants to run"))&&s.push({toolFamily:"bash",risk:3,order:5}),s.sort((i,o)=>o.risk-i.risk||i.order-o.order)[0]?.toolFamily??null}function ze(e){return e==="bash"||e==="exec_command"||e==="run_shell_command"}function QK(e){if(!e)return null;let t=e.trim().toLowerCase();return t.length>0?t:null}function eH(e){return ze(e)||e==="edit"?"native":tH(e)?"unsupported":"exact"}function tH(e){return e==="read"||e==="search"||e==="web"||e==="write"}function nH(e,t={}){if(e===void 0)return null;let n=ks(e);if(n===null||typeof n.wall_time!="string"||typeof n.output!="string"||!jo(n.wall_time)||iH(n)||n.output.trim().length===0)return null;let s=sA(n,t);return s==="invalid"?null:{output:n.output,wallTime:n.wall_time,...s!==void 0?{exitCode:s}:{}}}function rH(e){if(e===void 0)return!1;if(/^\s*\{\s*(?:"exit_code"\s*:|"wall_time"\s*:|"output"\s*:)/.test(e))return!0;let t=ks(e);return t?.truncated===!0?!0:t!==null&&Object.prototype.hasOwnProperty.call(t,"wall_time")&&Object.prototype.hasOwnProperty.call(t,"output")}function ks(e){try{let t=JSON.parse(e);return t===null||typeof t!="object"||Array.isArray(t)?null:t}catch{return null}}function sH(e){if(e===void 0)return!1;let t=ks(e);return t!==null&&Object.keys(t).length===0}function jo(e){return/^\d+(?:\.\d+)?\s*(?:ms|s|sec|secs|second|seconds)$/i.test(e.trim())}function iH(e){let t=new Set(["exit_code","output","wall_time"]);return Object.keys(e).some(n=>!t.has(n))}function sA(e,t={}){if(!Object.prototype.hasOwnProperty.call(e,"exit_code"))return;let n=e.exit_code;return typeof n=="number"&&Number.isInteger(n)?n:t.coerceStringExitCode!==!1&&typeof n=="string"&&/^-?\d+$/.test(n.trim())?Number.parseInt(n,10):"invalid"}function Ro(e,t){if(t.invalid===!0||t.wallTime!==void 0&&!jo(t.wallTime))return null;let n=uH(e);if(n.text.trim().length===0)return null;let s=oH(n.suffix);if(s===null||t.exitCode!==void 0&&s.exitCode!==void 0||t.wallTime!==void 0&&s.wallTime!==void 0)return null;let i=t.exitCode??s.exitCode,o=t.wallTime??s.wallTime;return{output:n.text,...o!==void 0?{wallTime:o}:{},...i!==void 0?{exitCode:i}:{}}}function rm(e){let t=e.replace(/^"|"$/g,"").trim();return/^-?\d+$/.test(t)?Number.parseInt(t,10):null}function oH(e){let t=e.trim(),n={};for(;t.length>0;){if(t==="}")return n;let s=/^,\s*"([a-z_]+)"\s*:\s*/.exec(t);if(!s)return null;switch(t=t.slice(s[0].length),s[1]){case"exit_code":{let i=aH(t);if(i===null||n.exitCode!==void 0)return null;n.exitCode=i.exitCode,t=i.rest;break}case"wall_time":{let i=cH(t);if(i===null||n.wallTime!==void 0)return null;n.wallTime=i.wallTime,t=i.rest;break}case"truncated":{let i=lH(t);if(i===null)return null;t=i;break}default:return null}}return n}function aH(e){let t=/^(?:"([+-]?\d+)"|([+-]?\d+))/.exec(e),n=t?rm(t[1]??t[2]??""):null;return t===null||n===null?null:{exitCode:n,rest:e.slice(t[0].length).trim()}}function cH(e){let t=/^"([^"]+)"/.exec(e),n=t?.[1]??"";return!t||!jo(n)?null:{wallTime:n,rest:e.slice(t[0].length).trim()}}function lH(e){let t=/^true\b/.exec(e);return t?e.slice(t[0].length).trim():null}function uH(e){let t="";for(let n=0;n<e.length;n+=1){let s=e[n];if(s==='"')return{text:t,suffix:e.slice(n+1)};if(s!=="\\"){t+=s;continue}let i=e[n+1];if(i===void 0)break;switch(n+=1,i){case"n":t+=`
|
|
21
|
+
`;break;case"r":t+="\r";break;case"t":t+=" ";break;case"u":t+=dH(e,n),n+=pH(e,n)?4:0;break;default:t+=i;break}}return{text:t,suffix:""}}function dH(e,t){let n=e.slice(t+1,t+5);return/^[0-9a-f]{4}$/i.test(n)?String.fromCharCode(Number.parseInt(n,16)):"u"}function pH(e,t){return/^[0-9a-f]{4}$/i.test(e.slice(t+1,t+5))}function mH(e){if(e===void 0)return null;let t=gH(e);return t!==null?t:ks(e)!==null?null:fH(e)}function fH(e){let t=/^\s*\{\s*"exit_code"\s*:\s*("[+-]?\d+"|-?\d+)\s*,\s*"wall_time"\s*:\s*"([^"]+)"\s*,\s*"output"\s*:\s*"/.exec(e);if(t){let o=rm(t[1]??""),a=t[2]??"";return Ro(e.slice(t[0].length),{...o!==null?{exitCode:o}:{invalid:!0},wallTime:a})}let n=/^\s*\{\s*"wall_time"\s*:\s*"([^"]+)"\s*,\s*"exit_code"\s*:\s*("[+-]?\d+"|-?\d+)\s*,\s*"output"\s*:\s*"/.exec(e);if(n){let o=rm(n[2]??"");return Ro(e.slice(n[0].length),{...o!==null?{exitCode:o}:{invalid:!0},wallTime:n[1]??""})}let s=/^\s*\{\s*"wall_time"\s*:\s*"([^"]+)"\s*,\s*"output"\s*:\s*"/.exec(e);if(s)return Ro(e.slice(s[0].length),{wallTime:s[1]??""});let i=/^\s*\{\s*"output"\s*:\s*"/.exec(e);return i?Ro(e.slice(i[0].length),{}):null}function gH(e){let t=ks(e);if(t===null||t.truncated!==!0||typeof t.wall_time!="string"||typeof t.output!="string"||!jo(t.wall_time)||hH(t)||t.output.trim().length===0)return null;let n=sA(t);return n==="invalid"?null:{output:t.output,wallTime:t.wall_time,...n!==void 0?{exitCode:n}:{}}}function hH(e){let t=new Set(["exit_code","output","truncated","wall_time"]);return Object.keys(e).some(n=>!t.has(n))}function yH(e,t){if(t==="unsupported")return{kind:"unsupported"};let n=nH(e,{coerceStringExitCode:t==="native"});if(n!==null)return{kind:"valid",output:n};if(!rH(e))return{kind:"raw"};if(t==="exact")return{kind:"invalid"};let s=mH(e);return s===null?{kind:"invalid"}:{kind:"recovered",output:s}}var SH=/^(?:(?:file|source|document|read)\s+)?(?:content|output|payload|window)\b|^(?:file|source|document|read)\b/i,bH=/\((?:(?:\d+(?:\.\d+)?\s*(?:kb|mb|gb|b))|(?:\d+\s*tokens?))\)/i,_H=/\b(?:exceeds?|exceeded|larger than|too large for|over|above)\s+(?:the\s+)?(?:maximum|max|allowed|configured|read)(?:\s+(?:allowed|read|token))?\s+(?:size|tokens?|limit|window)\b|\b(?:maximum|max|allowed|configured|read)(?:\s+(?:allowed|read|token))?\s+(?:size|tokens?|limit|window)\s+(?:is|was)?\s*(?:exceeded|reached)\b/i,kH=/\buse (?:offset and limit|start_line and end_line) parameters?\b|\bsearch for specific content\b/i,iA=/\b(?:permission denied|operation not permitted|no such file or directory|failed to read|failed to open|could not read|could not open|unable to read|unable to open)\b/i;function vH(e){if(e===void 0)return!1;let t=e.trim().replace(/\s+/g," ");return oA(t)&&!iA.test(t)}function EH(e){if(e===void 0)return!1;let t=e.trim().replace(/\s+/g," ");return oA(t)&&iA.test(t)}function oA(e){return SH.test(e)&&bH.test(e)&&_H.test(e)&&kH.test(e)}function AH(e){return Fo(e)||WE(e)||TH(e)||wH(e)||IH(e)}function wH(e){return e.split(/\r?\n/).filter(n=>n.trim().length>0).length<=3&&/^\s*(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=\s*["'`][\s\S]*["'`]\s*;?\s*(?:\r?\n\s*return\b[\s\S]*)?$/i.test(e)}function IH(e){return/^\s*(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=\s*["'`][\s\S]*\bdiff --git\b/i.test(e)}function TH(e){return/^\s*---\s+expected\b[\s\S]*^\s*\+\+\+\s+actual\b/im.test(e)}function xH(e){return Zq(e)||nq(e)||RH(e)}function RH(e){let t=e.trim();if(!/\.\.\.\s*$/.test(t)||!/(?:^|[\r\n])\s*std::c(?:out|err|log)\s*<</.test(t))return!1;let n=t.split(/\r?\n/).map(s=>s.trim()).filter(s=>s.length>0&&!bs(s)).map(s=>dr(s)??Mo(s)).filter(s=>s!==null);return n.length>=3&&n.filter(s=>s.strongAnchor).length>=2&&n.some(s=>s.nontrivialAnchor)}function CH(e){if(!e.commandExecutionToolFamily||!e.recoveredEnvelope||e.output===void 0)return OH;let t=xH(e.output),n=LH(e.output);return{source:t,readback:n,any:t||n}}var OH={source:!1,readback:!1,any:!1};function LH(e){let t=e.trim(),n=Hv(t,PH),s=Hv(t,MH);return t.length>0&&ye(t)&&!ur(t)&&(JE(t)||n>=2||s>=2||s>=1&&NH(t))}function Hv(e,t){return[...e.matchAll(t)].length}function NH(e){return/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\|[a-z0-9_.-]+\/)\S*\.\.\.\s*$/i.test(e)}var PH=/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\)?[^\s:\r\n]+\.(?:md|markdown|rst|txt|adoc):\d+(?::\d+)?:\s*\S/gi,MH=/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\)?[^\s:\r\n]+\.(?:c|cc|cpp|cxx|cu|cuh|h|hpp|hh|s|asm|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift):\d+(?::\d+)?:\s*\S/gi;function DH(e){let t=de(e);if(t.length===0||FH(t)||$H(t))return null;let n=t.split(/\r?\n/).map(o=>o.trim()).filter(o=>o.length>0);if(n.length!==1)return null;let s=Sm(t);if(s.length!==1||s[0]?.line!==n[0])return null;let i=s[0];if(i===void 0)return null;switch(i.kind){case"source_location":return{consequenceBaseline:"high",source:!0};case"path_line":return{consequenceBaseline:"medium",source:!1};default:return null}}function FH(e){return/^\s*(?:see|refer to|open|read|check)\s+\S/i.test(e)}function $H(e){let t=UH(e);return/:\d+(?::\d+)?:\s*(?:(?:fatal\s+)?error|fatal|userwarning|warning):\s+\S/i.test(e)||t!==null&&jH(t)}function UH(e){return/:\d+(?::\d+)?:\s*(\S[\s\S]*)$/.exec(e)?.[1]??null}function jH(e){let t=e.trim();return zH(t)?!1:[/^(?:tests?|build|command|process|subprocess)\s+failed\b/i,/^failed\s+(?:tests?|build|command|process|subprocess)\b/i,/^assertion\s+failed\s*:/i,/^(?:uncaught|unhandled)\s+exception\b/i,/^(?:E\s+)?(?:AssertionError|RuntimeError|ValueError|TypeError|Exception):\s+\S/i,/^(?:FAIL|FAILED|ERROR)\b[:\s]\s*\S/i].some(n=>n.test(t))}function zH(e){return/^(?:tests?|build|command|process|subprocess)\s+failed\s+(?:is|are|was|were)\s+(?:documented|described|noted|mentioned)\b/i.test(e)}function qH(e){if(bm(e))return null;let t=HH(e);if(ym(e))return je(!1,"low");if(t!==null)return t;if(Wv(e)&&sV(e))return je(!0,"high");if(HB(e))return je(!1,"high");if(_m(e))return je(it(e),Dt(e)?"low":"high");let n=GH(e);if(n!==null)return n;let s=Wv(e)?null:$o(e,{allowReadOwnedFlattenedFilePayloads:!0});return s===null?null:je(s.source,KH(s,e))}function BH(e){let t=YH(e),n=t.length===0||AH(t)?null:$o(t,{rejectCommandTextWrappers:!0});return n===null?null:je(n.source,n.consequenceBaseline)}function VH(e){let t=CH({commandExecutionToolFamily:e.commandExecutionToolFamily,recoveredEnvelope:e.recoveredEnvelope,output:e.output}),n=$o(e.output),s=e.commandExecutionToolFamily&&e.exitCode===0?DH(e.output):null,i=it(e.output)||t.source||n?.source===!0||s?.source===!0;return iV(e.output)||t.any||n!==null||s!==null||e.recoveredEnvelope&&KB(e.output)?je(i,i?"high":"medium"):null}function je(e,t){return{consequenceBaseline:t,source:e}}function KH(e,t){return e.shape==="readback"&&Dt(t)?"low":e.consequenceBaseline}function HH(e){let t=WH(e);return t===null?null:ZH(t.path,t.content)?je(!1,"low"):aA(t.path)||it(t.content)?je(!0,"high"):je(!1,"high")}function WH(e){let t=Jp(e.trim(),"path",0);if(t===null)return null;let n=Jp(e,"type",t.end),s=Jp(e,"content",n?.end??t.end,{allowOpenEnded:!0});return n?.value.toLowerCase()==="file"&&s!==null?{content:s.value,path:t.value}:null}function Jp(e,t,n,s={}){let i=e.toLowerCase(),o=`<${t}>`,a=`</${t}>`,c=i.indexOf(o,n);if(c<0)return null;let l=i.indexOf(a,c+o.length),d=l<0&&s.allowOpenEnded===!0?e.length:l,m=d<0?"":e.slice(c+o.length,d).trim(),g=l<0?e.length:l+a.length;return m.length>0?{end:g,value:m}:null}function ZH(e,t){let n=e.toLowerCase(),s=t.toLowerCase();return n.endsWith(".log")||Dt(t)||(n.endsWith("/makefile")||n.endsWith("/cmakelists.txt")||n.endsWith(".cmake"))&&["spdx-license-identifier","version =","patchlevel =","sublevel =","project("].some(i=>s.includes(i))}function aA(e){let t=e.toLowerCase();return cm.test(t)||lm.test(t)}function GH(e){let t=Ft(e)??e,n=t.toLowerCase(),s=V(t),i=aA(t)||it(t),o=n.includes("contents of")||n.includes("content of")||n.includes("observation path")||n.includes("showing first")||n.includes("showing top")||n.includes("top")&&n.includes("lines"),a=am.some(l=>s.includes(l));if(!i&&!Ss.test(n)||!o&&!a)return null;let c=n.includes(".log")||Dt(t);return je(i&&!c,i&&!c?"high":"low")}function YH(e){let t=de(e);return Ft(t)??t}function Wv(e){return e.includes(`
|
|
22
|
+
`)||e.includes("\r")||e.includes("\u2192")}function JH(e){if(e.toolFamily==="read"){let s=Xp(qH(e.summary),"read_output","document","read");if(s!==null)return s}if(ze(e.toolFamily)&&e.structuredOutputEnvelope.kind==="raw")return Xp(BH(e.summary),"command_output","document",e.toolFamily);let t=e.structuredOutputEnvelope;if(t.kind!=="valid"&&t.kind!=="recovered")return null;let n=t.output;return Xp(VH({commandExecutionToolFamily:ze(e.toolFamily),exitCode:n.exitCode,output:n.output,recoveredEnvelope:t.kind==="recovered"}),"structured_output","tool",e.toolFamily)}function Xp(e,t,n,s){return e===null?null:{origin:t,fallbackSubject:n,payload:e,...s!==void 0?{toolFamily:s}:{}}}function XH(e){if(e.missingToolObservationTranscript)return Zv(e.missingToolObservationTranscript);if(e.commandObservationTranscript)return Zv(e.commandObservationTranscript,e.toolFamily);if(e.rejectedToolUseOutcome)return eW("status_text","await_authorization",e.toolFamily);if(e.editOutputOutcome==="applied")return sm("semantic_evidence","tool","high",e.toolFamily);if(e.readAbbreviatedFileViewObservation)return sm("read_output","source",e.readAbbreviatedFileViewObservation.consequenceBaseline,"read");let t=JH({summary:e.summary,structuredOutputEnvelope:e.structuredOutputEnvelope,toolFamily:e.toolFamily});return t!==null?{kind:"payload",...t}:e.structuredOutputZeroExitSuccess?QH("structured_output",e.commandExecutionToolFamily?"command":"tool","low",e.toolFamily):null}function Zv(e,t){return sm("transcript",e.shape==="abbreviated_file_view"?"source":e.shape==="concrete_test_result"||e.shape==="successful_test"?"document":"tool",e.consequenceBaseline,t)}function sm(e,t,n,s){return{kind:"payload",origin:e,fallbackSubject:t,payload:{source:t==="source",consequenceBaseline:n},...s!==void 0?{toolFamily:s}:{}}}function QH(e,t,n,s){return{kind:"outcome",origin:e,subject:t,consequenceBaseline:n,...s!==void 0?{toolFamily:s}:{}}}function eW(e,t,n){return{kind:"control",origin:e,recoveryHint:t,...n!==void 0?{toolFamily:n}:{}}}function tW(e){let t=e.summary??"",n=ze(e.toolFamily),s=eH(e.toolFamily),i=yH(e.summary,s),o=i.kind==="valid"||i.kind==="recovered"?i.output:null,a=e.toolFamily!=="edit"||i.kind==="invalid"?null:Ez(i.kind==="raw"?t:void 0,o?.output),c=o!==null&&ur(o.output),l=e.toolFamily==="read"&&o===null?nm(t):null,d=o?.exitCode!==void 0&&o.exitCode!==0,m=o?.exitCode===0&&s==="exact",g=n?GK(t):null,h=l?.shape==="abbreviated_file_view"?l:null,y=e.toolFamily===void 0?nm(t):null,_=HK(t),v=XH({commandObservationTranscript:g,editOutputOutcome:a,missingToolObservationTranscript:y,readAbbreviatedFileViewObservation:h,rejectedToolUseOutcome:_,commandExecutionToolFamily:n,structuredOutputEnvelope:i,structuredOutputZeroExitSuccess:m,summary:t,toolFamily:e.toolFamily}),M=gs(t),D=Gv(v,"read_output"),U=D&&Yv(v)==="source",F=Gv(v,"structured_output")&&Yv(v)==="source",te=e.toolFamily==="read"&&!D&&!M&&vH(t),Te=e.toolFamily==="read"&&!D&&EH(t),S=e.toolFamily==="read"&&(bm(t)||te||Te||M&&!U);return{structuredOutputEnvelope:i,unsafeStructuredToolOutputEnvelope:i.kind==="recovered"||i.kind==="invalid",diagnosticStructuredToolOutput:o,structuredOutputExitFailure:d,structuredOutputZeroExitSuccess:m,editOutputOutcome:a,searchFailureDiagnostic:e.toolFamily==="search"&&yz(t),readFailureDiagnostic:S,sourceWindowLimitFailure:te,structuredOutputFailureDiagnostic:c,rawToolOutputFailureDiagnostic:s==="native"&&o===null&&i.kind==="raw"&&ur(t),strongSourceRuntimeDiagnostic:i.kind==="valid"&&F&&gs(i.output.output)||D&&M,diagnosticObservationTranscript:e.toolFamily===void 0&&Vv(t),commandDiagnosticObservationTranscript:n&&Vv(t),commandActualDiagnosticObservationTranscript:n&&JK(t),commandDiagnosticReferenceObservationTranscript:n&&YK(t),observationSyntax:v}}function Gv(e,t){return e?.kind==="payload"&&e.origin===t}function Yv(e){return e?.kind!=="payload"?e?.kind==="outcome"?e.subject:null:e.payload.source?"source":e.fallbackSubject}function nW(e){if(!sW(e))return null;let t=rW(e);return{failureDetail:t,...uA(e)?{terminalShape:"bare_nonzero_exit"}:{},consequenceBaseline:t==="outcome_only"||t==="source_window_limit"?"medium":"high"}}function rW(e){if(cA(e))return"outcome_only";if(e.signals.sourceWindowLimitFailure)return"source_window_limit";let t=e.signals;return lA(t)||t.rawToolOutputFailureDiagnostic||t.structuredOutputEnvelope.kind==="raw"&&ze(e.toolFamily)&&km(V(e.summary??""))&&!qE(e.summary??"")?"diagnostic":"indeterminate"}function cA(e){let t=e.signals.diagnosticStructuredToolOutput;return uA(e)||ze(e.toolFamily)&&Jv(e.summary??"")||e.signals.structuredOutputEnvelope.kind==="valid"&&t?.exitCode!==void 0&&t.exitCode!==0&&Jv(t.output)}function lA(e){return e.strongSourceRuntimeDiagnostic||e.structuredOutputFailureDiagnostic||e.editOutputOutcome==="failure"||e.searchFailureDiagnostic||e.readFailureDiagnostic||e.diagnosticObservationTranscript||e.commandActualDiagnosticObservationTranscript||!!(e.commandDiagnosticObservationTranscript&&!e.commandDiagnosticReferenceObservationTranscript)}function sW(e){let t=e.signals;return t.structuredOutputExitFailure||lA(t)||!!(t.rawToolOutputFailureDiagnostic&&!t.commandDiagnosticReferenceObservationTranscript)||cA(e)||iW(e)}function iW(e){let t=e.signals.observationSyntax;return e.terminalFailureText&&!e.signals.commandDiagnosticReferenceObservationTranscript&&!(t?.origin==="transcript"&&t.toolFamily===void 0)&&!(e.toolFamily==="search"&&e.searchResultText)&&(!(t?.kind==="payload"&&(t.origin==="read_output"||t.origin==="structured_output"))||e.signals.strongSourceRuntimeDiagnostic)}function uA(e){return ze(e.toolFamily)&&qE(e.summary??"")}function Jv(e){let t=V(e).replace(/[.]+$/g,"").replace(/\s+/g," ");return/^(?:no output|without output|no stdout no stderr|no stderr no stdout|empty stdout empty stderr|stdout empty stderr empty|no tests? found(?: exiting with code -?\d+)?|no test files(?: were)? found|no files matching .+ (?:were )?found|collected 0 items|found 0 tests?|0 tests? found)$/.test(t)}function oW(e){let t=Ft(e??"");return t===null?null:aW(t)}function aW(e){let t=e.trim();if(t.length===0||/[\r\n]/.test(t)||cW(t))return null;let n=Xv(t,[/^file\s+created(?:\s+successfully)?\s+at:\s+(\S+?)(?:\.)?$/i,/^(?:successfully\s+)?(?:created|wrote|saved)\s+(?:new\s+)?file(?:\s+at)?:?\s+(\S+?)(?:\.)?$/i,/^file\s+(\S+?)\s+(?:was\s+)?(?:created|written|saved)(?:\s+successfully)?(?:\.)?$/i]);if(n!==void 0&&Qv(n))return{kind:"file_created",consequenceBaseline:"low"};let s=Xv(t,[/^the\s+file\s+(\S+?)\s+has\s+been\s+(?:edited|updated|modified)(?:\.)?$/i,/^(?:successfully\s+)?(?:edited|updated|modified)\s+file:?\s+(\S+?)(?:\.)?$/i,/^file\s+(\S+?)\s+(?:was|has\s+been)\s+(?:edited|updated|modified)(?:\s+successfully)?(?:\.)?$/i]);return s!==void 0&&Qv(s)?{kind:"file_edited",consequenceBaseline:"low"}:null}function Xv(e,t){for(let n of t){let s=n.exec(e)?.[1];if(s!==void 0)return s}}function Qv(e){return/^(?:[A-Za-z]:[\\/]|\/|\.{1,2}\/|~\/)/.test(e)&&!/["'`<>[\]{}]/.test(e)&&!/(?:^|:)\/\//.test(e)&&!/(?:\.\.\.|…)$/.test(e)&&!/[.,;:]$/.test(e)}function cW(e){return/(?:expected|sample|fixture|reference|example|desired|golden|baseline)\s+(?:output|result|diagnostic)s?\s*:/i.test(e)||/^```/.test(e)||/\bnot\s+(?:be\s+|been\s+|was\s+|were\s+)?(?:created|written|saved|edited|updated|modified)\b/i.test(e)}function dA(e,t){let n=V(e),s=km(n),i=ze(t),o=bW(n,t),a=[];return i&&(SW(n,t)||RV(o)&&!CV(o))&&!s&&a.push("routine_success"),s?a.push("terminal_failure"):i&&Ie(n,Uj)&&a.push("expected_diagnostic"),Ie(n,am)&&a.push("observational_readback"),gW(n)&&a.push("tagged_file"),(fW(n)||t==="read"&&_m(e))&&a.push("read_payload"),ZE(n,e)&&a.push("search_result"),hW(n)&&a.push("source_code"),yW(n,e)&&a.push("log"),($j.test(n)||Ie(n,Oj))&&a.push("build_metadata"),{shapes:a}}function lW(e,t){let n=dA(e,t).shapes;return s=>n.includes(s)}function uW(e){if(e.type!=="task.updated"||e.status!=="failed"||e.title===void 0)return null;let t=Im({title:e.title,...e.summary!==void 0?{summary:e.summary}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{}})??void 0,n=dA(t==="search"?e.summary??e.title:`${e.title} ${e.summary??""}`,t),s=tW({summary:e.summary,toolFamily:t});return{...dW({summary:e.summary,signals:s,text:n,toolFamily:t}),text:n}}function dW(e){let{signals:t,summary:n,text:s,toolFamily:i}=e,o=s.shapes.includes.bind(s.shapes),a=nW({summary:n,signals:t,toolFamily:i,searchResultText:o("search_result"),terminalFailureText:o("terminal_failure")});if(a!==null){let{failureDetail:l,terminalShape:d}=a;return{kind:"terminal_failure",failureDetail:l,...d!==void 0?{terminalShape:d}:{},...i!==void 0?{toolFamily:i}:{},readsAsObservation:!1,consequenceBaseline:a.consequenceBaseline}}if(i!==void 0&&sH(n))return{kind:"empty_failure_payload",failureDetail:"absent_evidence",toolFamily:i,readsAsObservation:!1,consequenceBaseline:"medium"};let c=i===void 0?oW(n):null;return c?{kind:"operation_success_observation",readsAsObservation:!0,consequenceBaseline:c.consequenceBaseline}:t.observationSyntax!==null?pW(t.observationSyntax):ze(i)&&o("routine_success")&&(!t.unsafeStructuredToolOutputEnvelope||t.diagnosticStructuredToolOutput?.exitCode===0)?{kind:"routine_bash_success_observation",...i!==void 0?{toolFamily:i}:{},readsAsObservation:!0,consequenceBaseline:"low"}:ze(i)&&o("expected_diagnostic")?{kind:"expected_diagnostic_failure",...i!==void 0?{toolFamily:i}:{},readsAsObservation:!1,consequenceBaseline:"medium"}:i==="search"&&o("search_result")?{kind:"routine_search_output",toolFamily:i,readsAsObservation:!0,consequenceBaseline:o("terminal_failure")?"high":"low"}:i==="edit"&&t.structuredOutputEnvelope.kind!=="invalid"&&(o("observational_readback")||o("tagged_file")||o("read_payload")||t.editOutputOutcome==="applied")?{kind:"observational_payload",toolFamily:i,readsAsObservation:!0,consequenceBaseline:"high"}:{kind:"unclassified_failure",failureDetail:"indeterminate",...i!==void 0?{toolFamily:i}:{},readsAsObservation:!1,consequenceBaseline:"high"}}function pW(e){return{kind:mW(e),...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},observationSyntax:e,readsAsObservation:!0,consequenceBaseline:e.kind==="control"?"low":e.kind==="payload"?e.payload.consequenceBaseline:e.consequenceBaseline}}function mW(e){return e.kind==="control"?"rejected_tool_use_observation":e.kind==="outcome"?"structured_execution_success_observation":e.origin==="structured_output"?"structured_tool_output_observation":"observational_payload"}function fW(e){return Ss.test(e)?Ie(e,xj)||(cm.test(e)||lm.test(e))&&Nj.test(e)||Pj.test(e):!1}function gW(e){return Ie(e,aE)&&Ss.test(e)}function hW(e){return cm.test(e)||lm.test(e)||Mj.test(e)||Dj.test(e)}function yW(e,t){return Fj.test(e)||Dt(t)||Ie(e,Cj)}function SW(e,t){let n=e.replace(/\.+$/,""),s=n.indexOf(" observation "),i=s>0&&!n.slice(0,s).includes(" ")?n.slice(s+13):n,o=Rj.map(a=>V(a));return pA(t).some(a=>o.some(c=>{let l=a.length>0?`${a} ${c}`:c;return i===l}))}function bW(e,t){for(let n of pA(t).filter(Boolean)){if(e===n)return"";if(e.startsWith(`${n} `))return e.slice(n.length+1)}return e}function pA(e){let t=["","observation","bash failure","tool failure"];return e&&e!=="bash"?[...t,`${e} failure`]:t}function _W(e){if(e.isQuestion)return[];let t=e.tokens,n=[],s=kW(t);if(s===null)return n;if(t[s]==="replace"){let i=t.indexOf("with",s+1);return i===-1?[]:[{start:s,end:i+1,kind:"supersedes",order:0,polarity:"asserted"}]}for(let i=0;i<t.length;i+=1)t[i]==="instead"&&t[i+1]!=="of"&&n.push({start:i,end:i+1,kind:"supersedes",order:0,polarity:vW(t,i)?"negated":"asserted"});return n}function kW(e){if(EW(e,[["do","not"],["don","t"],["dont"],["never"],["not"]]))return null;let t=e[0]==="please"?1:0;return["use","follow","switch","adopt","replace"].includes(e[t]??"")?t:null}function vW(e,t){let n=e.slice(Math.max(0,t-4),t);return n.includes("not")||n.includes("never")||n.at(-1)==="no"||Co(n,["do","not"])||Co(n,["don","t"])||Co(n,["did","not"])||Co(n,["didn","t"])}function EW(e,t){return t.some(n=>n.every((s,i)=>e[i]===s))}function Co(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(t.every((s,i)=>e[n+i]===s))return!0;return!1}function AW(e){let t=new Set,n=[];for(let s of e){let i=`${s.kind}:${s.target??""}`;t.has(i)||(t.add(i),n.push(s))}return n}var wW=12,IW=new Set(["never","not"]),TW=new Set(["could","expected","hopefully","may","might","should","would"]),xW=new Set(["check","confirm","determine","ensure","see","validate","verify"]),RW=new Set(["can","could","need","needed","needs","please","rerun","retry","run","should","to","try","trying","will","would"]),mA=new Set(["if","that","whether"]),CW=[["are","we"],["can","you"],["could","you"],["did","it"],["do","you"],["does","it"],["is","it"],["should","i"],["should","we"],["was","it"],["would","you"]];function eE(e,t){let s=e.tokens.slice(Math.max(0,t-wW),t),i=s.slice(-4);return OW(i)?"negated":e.isQuestion||NW(s)?"prospective":LW(i)?"modal":PW(s)?"prospective":"asserted"}function OW(e){return e.some(t=>IW.has(t))||im(e,["did","n","t"])||im(e,["did","not"])}function LW(e){return e.some(t=>TW.has(t))}function NW(e){return CW.some(t=>im(e,t))}function PW(e){for(let t=0;t<e.length;t+=1){let n=e[t];if(!xW.has(n))continue;let s=e[t-1],i=e[t+1];if(s===void 0||DW(s)||RW.has(s)||i!==void 0&&mA.has(i)||MW(e,t))return!0}return!1}function MW(e,t){return e.slice(t+1,t+5).some(n=>mA.has(n))}function DW(e){return/^\d+$/.test(e)}function im(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(t.every((s,i)=>e[n+i]===s))return!0;return!1}var tE=new Map([["repeats",0],["supersedes",1],["escalates",2]]);function fA(e){let t=jW(e),n=$W(e,cE,[])||t.some(d=>d.polarity==="asserted"&&(d.kind==="escalates"||d.kind==="supersedes")),s=zW(t),i=[...s.values()].sort((d,m)=>d.order-m.order).filter(d=>d.polarity==="asserted"&&(d.kind==="resolves"||n)&&(d.kind!=="resolves"||d.direct||n)),o=i.at(-1);if(o===void 0)return[];if(o.kind==="resolves")return[{kind:"same_issue"},{kind:"resolves"}];let a=s.get("resolves"),c=a?.polarity==="asserted"?a.order:void 0,l=i.filter(d=>d.kind!=="resolves"&&(c===void 0||d.order>c)).sort(FW).map(d=>({kind:d.kind}));return l.length===0?[]:AW([{kind:"same_issue"},...l])}function FW(e,t){return(tE.get(e.kind)??Number.MAX_SAFE_INTEGER)-(tE.get(t.kind)??Number.MAX_SAFE_INTEGER)||e.order-t.order}function $W(e,t,n){for(let s of UW(e,t,n))if(s.polarity==="asserted")return!0;return!1}function UW(e,t,n){let s=[];for(let{tokens:i}of gA(e)){let o=n.flatMap(c=>In(i,Pt(c))),a=o.map(c=>({start:c.start,polarity:"negated"}));for(let c of t)for(let l of In(i,Pt(c)))a.push({start:l.start,polarity:Oo(l,o)||hA(i,l.start)?"negated":"asserted"});a.sort((c,l)=>c.start-l.start).forEach(c=>s.push({polarity:c.polarity}))}return s}function jW(e){let t=[],n=0;for(let s of gA(e)){let i=[...Qp(s,"repeats",zj,qj),...qW(s),...Qp(s,"supersedes",Hj,[]),..._W(s),...Qp(s,"escalates",Wj,Zj)].sort((o,a)=>o.start-a.start||o.end-a.end);for(let o of i)t.push({kind:o.kind,order:n,polarity:o.polarity,...o.direct!==void 0?{direct:o.direct}:{}}),n+=1}return t}function zW(e){let t=new Map;for(let n of e)t.set(n.kind,n);return t}function Qp(e,t,n,s){let i=s.flatMap(a=>In(e.tokens,Pt(a))),o=i.map(a=>({...a,kind:t,order:0,polarity:"negated"}));for(let a of n)for(let c of In(e.tokens,Pt(a)))o.push({...c,kind:t,order:0,polarity:Oo(c,i)||hA(e.tokens,c.start)?"negated":"asserted"});return o}function qW(e){let t=Vj.flatMap(s=>In(e.tokens,Pt(s))),n=t.map(s=>({...s,kind:"resolves",order:0,polarity:"negated"}));for(let s of Bj)for(let i of In(e.tokens,Pt(s)))n.push({...i,kind:"resolves",order:0,polarity:Oo(i,t)?"negated":eE(e,i.start),direct:!0});for(let s of Kj)for(let i of In(e.tokens,Pt(s)))n.push({...i,kind:"resolves",order:0,polarity:Oo(i,t)?"negated":eE(e,i.start),direct:!1});return n}function gA(e){let t=[],n=0;for(let i of e.matchAll(/[!?;:]+|\.+(?=\s|$)|\b(?:but|however|yet)\b/gi)){let o=i.index,a=nE(e.slice(n,o),i[0].includes("?"));a!==null&&t.push(a),n=o+i[0].length}let s=nE(e.slice(n),!1);return s!==null&&t.push(s),t}function nE(e,t){let n=Pt(e);return n.length===0?null:{tokens:n,isQuestion:t}}function Pt(e){return Gj(e).match(/[a-z0-9]+/g)??[]}function In(e,t){if(t.length===0||t.length>e.length)return[];let n=[];for(let s=0;s<=e.length-t.length;s+=1)t.every((i,o)=>e[s+o]===i)&&n.push({start:s,end:s+t.length});return n}function Oo(e,t){return t.some(n=>e.start>=n.start&&e.end<=n.end)}function hA(e,t){let n=e.slice(Math.max(0,t-4),t);return n.includes("not")||n.includes("never")||n.at(-1)==="no"||rE(n,["did","not"])||rE(n,["didn","t"])}function rE(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(t.every((s,i)=>e[n+i]===s))return!0;return!1}function om(e){return[...new Set(e)]}function BW(e){if(Ie(e,oE))return!1;if(Ie(e,Ej))return!0;let t=V(e);return Aj.some(n=>n.test(t))}function VW(e){return Ie(e,oE)?null:Ie(e,wj)?"blocking":Ie(e,Ij)?"waiting":null}function ds(e,t,n){return lW(e,n)("routine_success")||n==="read"||n==="search"?t:KW(e,Tj)?"high":(n==="write"||n==="edit"||ze(n))&&t==="low"?"medium":t}function KW(e,t){return t.some(n=>HW(e,n))}function HW(e,t){return lE(e,t)}function WW(e){switch(e){case"approval":return"approval_request";case"choice":return"question_request";case"form":return"form_request"}}function ZW(e){switch(e){case"approval":return"permission_request";case"choice":case"form":return"question_request"}}function GW(e,t){switch(e){case"approval":return t==="high"?"A high-risk action needs explicit operator approval.":"Approval is required before work can continue.";case"choice":return"A decision is required before work can continue.";case"form":return"Additional input is required before work can continue."}}function ps(e,t){if(t?.wasCancelled)return"Work was cancelled and may need review.";switch(e){case"failed":return"Work has failed and should be reviewed.";case"blocked":return"Work is blocked and may require operator attention.";case"running":case"waiting":case"completed":return t?.impliedAsk?"Status text implies the operator may need to respond.":void 0}}function YW(e){switch(e){case"high":return"A failed status carried high-consequence observation output that should be reviewed.";case"medium":case"low":return}}function JW(e){if(e.some(t=>t.kind==="resolves"))return"A related episode appears resolved and can update attention state."}function cr(e,t){if(t?.wasCancelled)return["task cancellation is an explicit lifecycle fact"];switch(e){case"failed":return["task status explicitly indicates failure"];case"blocked":return["task status explicitly indicates blocked work"];case"running":case"waiting":case"completed":return t?.impliedAsk?["status wording suggests an implied operator request"]:["task update carries a non-blocking lifecycle status"]}}function sE(e){switch(e){case"task_started":return["task start is an explicit lifecycle fact"];case"completion":return["task completion is an explicit lifecycle fact"]}}function XW(){return["task update status explicitly indicates completed work"]}function QW(e){return e?.polarity==="neutral"||e?.polarity==="success"}var e9={absent_evidence:"absent",source_window_limit:"partial",indeterminate:"unknown"},t9={absent:"request_evidence",partial:"narrow_evidence_scope",unknown:"inspect_original_evidence"},n9={routine_bash_success_observation:rt("command_success","outcome","success"),structured_execution_success_observation:rt("structured_execution_success","outcome","success"),operation_success_observation:rt("operation_success","outcome","success"),structured_tool_output_observation:rt("structured_output","payload","neutral"),empty_failure_payload:rt("empty_payload","outcome","failure","absent_evidence"),observational_payload:rt("payload","payload","neutral"),routine_search_output:rt("search_output","payload","neutral"),expected_diagnostic_failure:rt("expected_diagnostic","diagnostic","failure"),terminal_failure:l9,rejected_tool_use_observation:rt("rejected_tool_use","control","neutral"),unclassified_failure:rt("unknown_failure","unknown","failure","indeterminate")};function r9(e){return e.observationSyntax!==void 0?i9(e.observationSyntax):n9[e.kind](e)}function s9(e){return r9(e).observationSemantics}function i9(e){let t=e.toolFamily,n={kind:e.kind,polarity:e.kind==="outcome"?"success":"neutral",ownership:{owner:e.kind==="control"?"tool":t===void 0?"source":"tool",...t!==void 0?{toolFamily:t}:{}},subject:a9(e),evidenceLoss:"none",provenance:{origin:e.origin},consequenceBaseline:c9(e),evidenceCertainty:"determinate",...e.kind==="control"?{recoveryHint:e.recoveryHint}:{}};return{observationExtractorId:o9(e),observationSemantics:n}}function o9(e){return e.kind==="control"?"rejected_tool_use":e.kind==="outcome"?"structured_execution_success":e.origin==="structured_output"?"structured_output":"payload"}function a9(e){return e.kind==="control"?"tool":e.kind==="outcome"?e.subject:e.payload.source?"source":e.fallbackSubject}function c9(e){return e.kind==="control"?"low":e.kind==="payload"?e.payload.consequenceBaseline:e.consequenceBaseline}function l9(e){switch(e.failureDetail){case"source_window_limit":return ms(e,"read_truncated_source","diagnostic","failure");case"diagnostic":return ms(e,"terminal_diagnostic","diagnostic","failure");case"outcome_only":return ms(e,"terminal_outcome","outcome","failure");default:return ms(e,"unknown_failure","unknown","failure","indeterminate")}}function rt(e,t,n,s){return i=>ms(i,e,t,n,s)}function ms(e,t,n,s,i){let o=i??e.failureDetail,a=e9[o??"outcome_only"]??"none",c=null;e.kind==="expected_diagnostic_failure"?c="expected":n==="diagnostic"&&(c=o==="source_window_limit"?"source_limit":"runtime");let l=e.kind==="rejected_tool_use_observation"?"await_authorization":p9(a,c),d={kind:n,polarity:s,ownership:{owner:u9(e)},subject:d9(e,t,o),evidenceLoss:a,provenance:{origin:"semantic_evidence"},consequenceBaseline:e.consequenceBaseline,evidenceCertainty:e.kind==="terminal_failure"&&o==="indeterminate"?"indeterminate":"determinate"};return e.toolFamily!==void 0&&(d.ownership.toolFamily=e.toolFamily),c!==null&&(d.diagnosticClass=c),l!==null&&(d.recoveryHint=l),{observationExtractorId:t,observationSemantics:d}}function u9(e){return e.toolFamily!==void 0?"tool":e.readsAsObservation?"source":e.kind==="unclassified_failure"?"unknown":"engine"}function d9(e,t,n){return t==="command_success"||t==="structured_execution_success"?"command":t==="search_output"||e.toolFamily==="search"?"search":n==="source_window_limit"?"source":e.toolFamily!==void 0?"tool":"unknown"}function p9(e,t){return t9[e]??(t!==null?"inspect_diagnostic":null)}function m9(e){let t=uW(e);return t!==null?s9(t):null}function Tm(e){let t=f9(e);return y9(t,e.semanticHints)}function f9(e){switch(e.type){case"task.started":return{intentFrame:"task_started",activityClass:"session_status",consequence:"low",factors:["task.started"],relationHints:[],confidence:"high",reasons:sE("task_started"),provenance:ee(["intentFrame","activityClass","consequence","confidence"])};case"task.updated":return g9(e);case"human.input.requested":return h9(e);case"task.completed":return{intentFrame:"completion",activityClass:"tool_completion",consequence:"low",factors:["task.completed"],relationHints:[],confidence:"high",reasons:sE("completion"),provenance:ee(["intentFrame","activityClass","consequence","confidence"])};case"task.cancelled":return{intentFrame:"cancellation",activityClass:"status_update",consequence:"low",...e.reason?{whyNow:ps("completed",{wasCancelled:!0})??"Work was cancelled and may need review."}:{},factors:["task.cancelled"],relationHints:[],confidence:"high",reasons:cr("completed",{wasCancelled:!0}),provenance:{...ee(["intentFrame","activityClass","consequence","confidence"]),...e.reason?ee(["whyNow"]):{}}};default:return A9(e)}}function g9(e){let t=SA(e.title,e.summary),n=V(`${e.title} ${e.summary??""}`),s=BW(n),i=VW(n),o=fA(t),a=_A(e.title,e.summary,e.toolFamily),c=e.status==="failed"?m9(e):null,l=c?.recoveryHint==="await_authorization",{toolFamily:d,source:m}=bA(a,!l),g=o.length>0?ee(["relationHints"]):{},h=JW(o),y=QW(c),_=c?.diagnosticClass==="expected";switch(e.status){case"failed":if(y){let v=c?.consequenceBaseline??"high",M=YW(v)??h;return{intentFrame:"status_update",activityClass:"status_update",...d?{toolFamily:d}:{},consequence:v,...M!==void 0?{whyNow:M}:{},factors:["task.updated","failed","observational_failure"],relationHints:o,confidence:"high",reasons:["task status indicates failure but the update reads like observational output"],provenance:{...ee(["intentFrame","activityClass","consequence",...M!==void 0?["whyNow"]:[],"confidence"]),...lr(m),...g}}}return{intentFrame:"failure",activityClass:"tool_failure",...d?{toolFamily:d}:{},consequence:ds(n,c?.consequenceBaseline??"high",d),whyNow:ps("failed")??"Work has failed and should be reviewed.",factors:["task.updated","failed"],relationHints:o,confidence:s?"medium":"high",reasons:_?[...cr("failed",{impliedAsk:s}),"failure content looks like expected diagnostic output from repro work"]:cr("failed",{impliedAsk:s}),provenance:{...ee(["intentFrame","activityClass","consequence","whyNow","confidence"]),...lr(m),...g}};case"blocked":return{intentFrame:"blocked_work",activityClass:"status_update",...d?{toolFamily:d}:{},consequence:ds(n,"medium",d),whyNow:ps("blocked")??"Work is blocked and may require operator attention.",factors:["task.updated","blocked"],relationHints:o,confidence:s?"medium":"high",reasons:cr("blocked",{impliedAsk:s}),provenance:{...ee(["intentFrame","activityClass","consequence","whyNow","confidence"]),...lr(m),...g}};case"running":case"waiting":case"completed":return e.status==="completed"&&i===null&&!s?{intentFrame:"completion",activityClass:e.activityClass??"tool_completion",...d?{toolFamily:d}:{},consequence:ds(n,"low",d),...h!==void 0?{whyNow:h}:{},factors:["task.updated","completed"],relationHints:o,confidence:"high",reasons:XW(),provenance:{...ee(["intentFrame","consequence",...h!==void 0?["whyNow"]:[],"confidence"]),...e.activityClass===void 0?ee(["activityClass"]):Lo(["activityClass"]),...lr(m),...g}}:{intentFrame:i==="blocking"?"blocked_work":"status_update",activityClass:"status_update",...d?{toolFamily:d}:{},consequence:ds(n,i==="blocking"?"medium":"low",d),...(()=>{let v=i==="blocking"?ps("blocked"):s?ps(e.status,{impliedAsk:s}):h;return v!==void 0?{whyNow:v}:{}})(),factors:["task.updated",e.status,...i==="blocking"?["semantic blocking signal"]:[]],relationHints:o,confidence:i==="blocking"?"medium":s?"low":"high",reasons:i==="blocking"?[...cr("blocked"),"status wording indicates work cannot continue yet"]:cr(e.status,{impliedAsk:s}),provenance:{...ee(["intentFrame","activityClass","consequence","confidence"]),...lr(m),...i==="blocking"||s||h!==void 0?ee(["whyNow"]):{},...g}};default:return w9(e.status)}}function h9(e){let t=_A(e.title,e.summary,e.toolFamily),{toolFamily:n,source:s}=bA(t,e.request.kind==="approval"),i=SA(e.title,e.summary),o=V(i),a=fA(i),c=e.riskHint??E9(e.request.kind,n),l=ds(o,c,n),d=a.length>0?ee(["relationHints"]):{},m=e.riskHint==="high",g=m?"high":e.request.kind==="approval"&&n?"medium":"low";return{intentFrame:WW(e.request.kind),activityClass:ZW(e.request.kind),...n?{toolFamily:n}:{},consequence:l,whyNow:GW(e.request.kind,l),factors:["human.input.requested",e.request.kind],relationHints:a,confidence:g,reasons:[e.riskHint?"source provided an explicit risk hint":"request kind establishes an explicit operator decision point",...s==="explicit"?["tool family was supplied by the source event"]:s==="inferred"?["tool family was inferred from approval wording"]:[]],provenance:{...ee(["intentFrame","activityClass","whyNow"]),...lr(s),...e.riskHint?{...Lo(["consequence"]),...m?Lo(["confidence"]):ee(["confidence"])}:ee(["consequence","confidence"]),...d}}}function ee(e){return yA(e,"inferred")}function Lo(e){return yA(e,"source")}function yA(e,t){return Object.fromEntries(e.map(n=>[n,t]))}function lr(e){switch(e){case"explicit":return Lo(["toolFamily"]);case"inferred":return ee(["toolFamily"]);case"none":return{};default:return T9(e)}}function SA(e,t){return t?`${e}. ${t}`:e}function bA(e,t){let n=Im(e);if(n)return{toolFamily:n,source:"explicit"};if(!t)return{source:"none"};let s=XK(e);return s?{toolFamily:s,source:"inferred"}:{source:"none"}}function y9(e,t){if(!t)return e;let n=b9(t),s=_9(e.confidence,t.confidence),i=k9(e.relationHints,t.relationHints);return{...e,...n,confidence:s,factors:om([...e.factors??[],...t.factors??[]]),relationHints:i,reasons:om([...e.reasons??[],...t.reasons??[]]),provenance:{...e.provenance??{},...S9(e,{...n,confidence:s,relationHints:i},t)}}}function S9(e,t,n){return{...wn("intentFrame",e,t),...wn("activityClass",e,t),...wn("toolFamily",e,t),...wn("consequence",e,t),...wn("whyNow",e,t),...v9(e.relationHints,n.relationHints),...wn("confidence",e,t),...wn("abstained",e,t)}}function b9(e){let t={};for(let[n,s]of Object.entries(e))s!==void 0&&n!=="confidence"&&n!=="factors"&&n!=="relationHints"&&n!=="reasons"&&(t[n]=s);return t}function _9(e,t){return t&&iE(t)<iE(e)?t:e}function iE(e){switch(e){case"low":return 1;case"medium":return 2;case"high":return 3;default:return x9(e)}}function k9(e,t){if(!t||t.length===0)return e;let n=new Set,s=[];for(let i of[...e,...t]){let o=No(i);if(n.has(o))continue;let a=s.findIndex(c=>c.kind===i.kind&&c.target===void 0);if(i.target!==void 0&&a>=0){n.delete(No(s[a])),s[a]=i,n.add(o);continue}i.target===void 0&&s.some(c=>c.kind===i.kind&&c.target!==void 0)||(n.add(o),s.push(i))}return s}function wn(e,t,n){return!(e in n)||n[e]===t[e]?{}:{[e]:"hint"}}function v9(e,t){if(!t||t.length===0)return{};let n=new Set(e.map(No));return t.some(i=>!n.has(No(i)))?{relationHints:"hint"}:{}}function No(e){return`${e.kind}:${e.target??""}`}function E9(e,t){switch(e){case"approval":return t==="read"||t==="search"?"low":"medium";case"choice":case"form":return"medium";default:return I9(e)}}function _A(e,t,n){return{title:e,...t!==void 0?{summary:t}:{},...n!==void 0?{toolFamily:n}:{}}}function A9(e){throw new Error(`Unhandled source event in semantic interpreter: ${JSON.stringify(e)}`)}function w9(e){throw new Error(`Unhandled task status in semantic interpreter: ${e}`)}function I9(e){throw new Error(`Unhandled human input request kind in semantic interpreter: ${e}`)}function T9(e){throw new Error(`Unhandled tool family provenance source in semantic interpreter: ${e}`)}function x9(e){throw new Error(`Unhandled semantic confidence in semantic interpreter: ${e}`)}function R9(e={}){let t=e.base,n=e.semantic,s=t?.whyNow??n?.whyNow??e.fallbackWhyNow,i=om([...t?.factors??[],...n?.factors??[],...e.extraFactors??[]]);if(!(t===void 0&&s===void 0&&i.length===0))return{...t??{},...s!==void 0?{whyNow:s}:{},...i.length>0?{factors:i}:{}}}function kA(e){let t=Tm(e),n=e.type==="human.input.requested"&&e.riskHint!==void 0?{riskHint:e.riskHint}:void 0;return O9(N9(e),t,n)}function C9(e){switch(e){case"high":return"critical";case"medium":case"low":return"focused";default:return D9(e)}}function O9(e,t,n={}){switch(e.type){case"task.started":return{...e,semantic:t};case"task.updated":return{...e,...e.activityClass===void 0&&t.activityClass!==void 0?{activityClass:t.activityClass}:{},semantic:t};case"task.completed":case"task.cancelled":return{...e,semantic:t};case"human.input.requested":return L9(e,t,n);default:return P9(e)}}function L9(e,t,n){let{toolFamily:s,...i}=e,o=e.consequence??t.consequence??n.riskHint??"medium",a=e.tone??C9(o),c=R9({base:e.provenance,semantic:t}),l=e.request.kind==="approval"?e.toolFamily??t.toolFamily:void 0;return{...i,...l!==void 0?{toolFamily:l}:{},...e.activityClass===void 0&&t.activityClass!==void 0?{activityClass:t.activityClass}:{},semantic:t,tone:a,consequence:o,...c!==void 0?{provenance:c}:{}}}function N9(e){switch(e.type){case"task.started":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{}};case"task.updated":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{},status:e.status,...e.progress!==void 0?{progress:e.progress}:{},...e.context!==void 0?{context:e.context}:{}};case"task.completed":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.summary!==void 0?{summary:e.summary}:{}};case"task.cancelled":return{id:e.id,type:e.type,taskId:e.taskId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.reason!==void 0?{reason:e.reason}:{}};case"human.input.requested":return{id:e.id,type:e.type,taskId:e.taskId,interactionId:e.interactionId,timestamp:e.timestamp,...e.source!==void 0?{source:e.source}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...e.activityClass!==void 0?{activityClass:e.activityClass}:{},title:e.title,summary:e.summary,request:e.request,...e.context!==void 0?{context:e.context}:{},...e.provenance!==void 0?{provenance:e.provenance}:{}};default:return M9(e)}}function P9(e){throw new Error(`Unhandled ApertureEvent in semantic normalizer: ${JSON.stringify(e)}`)}function M9(e){throw new Error(`Unhandled SourceEvent in semantic normalizer: ${JSON.stringify(e)}`)}function D9(e){throw new Error(`Unhandled consequence level in semantic normalizer: ${e}`)}function F9(e){return typeof e=="string"&&e.trim().length>0?e:void 0}function vA(e,t){if(!e||typeof e!="object")return;let n=e[t];return Array.isArray(n)&&n.every(s=>typeof s=="string")?n:void 0}function C(e,t){if(!(!e||typeof e!="object"))return F9(e[t])}function Cm(e){return e?Me(e):void 0}function $9(e){let t=e.entityType??"event",n=e.entityId??e.eventId;return et(t,n)}function U9(e){let t=C(e,"issueId")??C(e,"sourceIssueId")??C(e,"parentIssueId")??vA(e,"issueIds")?.[0];return t?et("issue",t):null}function j9(e){let t=e.entityType??"event";switch(t){case"approval":return{id:`paperclip:${t}`,kind:"paperclip",label:"Paperclip approval"};case"issue":return{id:`paperclip:${t}`,kind:"paperclip",label:"Paperclip issue"};case"run":return{id:`paperclip:${t}`,kind:"paperclip",label:"Paperclip run"};case"agent":return{id:`paperclip:${t}`,kind:"paperclip",label:"Paperclip agent"};default:return{id:`paperclip:${e.eventType}`,kind:"paperclip",label:"Paperclip"}}}function xm(e){let t=C(e,"status")?.toLowerCase(),n=[C(e,"summary"),C(e,"description"),C(e,"bodySnippet"),C(e,"title"),C(e,"issueTitle")].filter(s=>!!s).join(" ").toLowerCase();return t?.includes("block")?"blocked":t?.includes("wait")?"waiting":t?.includes("done")||t?.includes("complete")||t?.includes("closed")?"completed":t?.includes("fail")?"failed":n.includes("blocked")||n.includes("clarification")?"blocked":n.includes("waiting")?"waiting":"running"}function z9(e){let t=C(e,"status")?.toLowerCase();return t?t.includes("approval")||t.includes("block")?"blocked":t.includes("wait")||t.includes("pause")?"waiting":t.includes("fail")||t.includes("error")?"failed":t.includes("done")||t.includes("complete")?"completed":"running":"running"}function q9(e){let t=C(e.payload,"title")??C(e.payload,"plan")??C(e.payload,"name");if(t)return t;let n=Cm(C(e.payload,"type"));return n?`${n} approval`:"Approval requested"}function EA(e){return C(e.payload,"type")}function B9(e){return EA(e)==="budget_override_required"}function Rm(e,t){let n=C(e.payload,"identifier"),s=C(e.payload,"issueTitle")??C(e.payload,"title");return n&&s?`${n} ${s}`:n?`${n} ${t}`:s||t}function V9(e){if(!(!e||e.length===0))return{relationHints:e.map(t=>({kind:"same_issue",target:wo(t)}))}}function K9(e){return[C(e,"bodySnippet"),C(e,"summary"),C(e,"description"),C(e,"title"),C(e,"issueTitle")].filter(t=>!!t).join(`
|
|
23
|
+
`)}function zo(e){if(e.entityType!=="issue"||!e.entityId)return;let t=Up({text:K9(e.payload),identifier:C(e.payload,"identifier"),issueTarget:wo(e.entityId)});return{...t.semanticConfidence?{confidence:t.semanticConfidence}:{},...t.relationHints.length>0?{relationHints:t.relationHints}:{}}}function H9(e,t){return{whyNow:as(e),factors:e?["budget stop","approval","operator decision"]:["approval","operator decision"],...V9(t)??{}}}function W9(){return{whyNow:Dp(),factors:["pending approval"]}}function Z9(){return{intentFrame:"failure",whyNow:pv(),factors:["run failed","operator review"]}}function $t(e){return Tm(e)}function Om(e){let t=e.eventType,n=$9(e),s=j9(e);switch(t){case"approval.created":{let i=EA(e),o=B9(e),a=C(e.payload,"requestedAmount"),c=C(e.payload,"reason"),l=C(e.payload,"decisionContext"),d=vA(e.payload,"issueIds"),m=q9(e),g=C(e.payload,"summary")??Eo(o),h=$t({id:`${e.eventId}:approval`,type:"human.input.requested",taskId:n,interactionId:tt(n,"approval"),timestamp:e.occurredAt,source:s,toolFamily:"paperclip",activityClass:"permission_request",title:m,summary:g,request:{kind:"approval"},riskHint:o?"high":"medium",semanticHints:H9(o,d)});return{id:`${e.eventId}:approval`,type:"human.input.requested",taskId:n,interactionId:tt(n,"approval"),timestamp:e.occurredAt,source:s,toolFamily:"paperclip",activityClass:"permission_request",title:m,summary:g,consequence:o?"high":"medium",tone:"focused",request:{kind:"approval"},semantic:h,context:{items:[...Cm(i)?[bo(Cm(i))]:[],...a?[_o(a)]:[],...c?[ko(c)]:[],...l?[vo(l)]:[],...d?.length?[qk(String(d.length))]:[]]},provenance:{whyNow:as(o),factors:o?["budget stop","approval","operator decision"]:["approval","operator decision"]}}}case"approval.decided":case"approval.approved":case"approval.rejected":case"approval.revision_requested":return{id:`${e.eventId}:resolved`,type:"task.completed",taskId:n,timestamp:e.occurredAt,source:s,summary:C(e.payload,"status")??(t==="approval.approved"?"Approval approved":t==="approval.rejected"?"Approval rejected":t==="approval.revision_requested"?"Revision requested":"Approval resolved")};case"issue.created":{let i=Rm(e,"Issue created"),o=C(e.payload,"description")??"A new issue entered Paperclip.",a=xm(e.payload);return a==="running"?{id:`${e.eventId}:issue-created`,type:"task.started",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,semantic:$t({id:`${e.eventId}:issue-created`,type:"task.started",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,semanticHints:zo(e)})}:{id:`${e.eventId}:issue-created-status`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,activityClass:"status_update",status:a,semantic:$t({id:`${e.eventId}:issue-created-status`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,activityClass:"status_update",status:a,semanticHints:zo(e)})}}case"issue.updated":{let i=Rm(e,"Issue updated"),o=C(e.payload,"summary")??C(e.payload,"description"),a=xm(e.payload);return{id:`${e.eventId}:issue-updated`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,activityClass:"status_update",status:a,semantic:$t({id:`${e.eventId}:issue-updated`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:i,...o!==void 0?{summary:o}:{},activityClass:"status_update",status:a,semanticHints:zo(e)})}}case"issue.comment.created":case"issue.comment_added":{let i=Rm(e,"Issue comment"),o=C(e.payload,"bodySnippet")??"A comment added new context in Paperclip.",a=xm(e.payload);return{id:`${e.eventId}:issue-comment`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,activityClass:"follow_up",status:a,progress:void 0,semantic:$t({id:`${e.eventId}:issue-comment`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:i,summary:o,activityClass:"follow_up",status:a,semanticHints:zo(e)})}}case"agent.run.started":return{id:`${e.eventId}:run-started`,type:"task.started",taskId:n,timestamp:e.occurredAt,source:s,title:C(e.payload,"title")??"Agent run started",summary:C(e.payload,"summary")??"A Paperclip agent began a new run."};case"agent.run.failed":{let i=U9(e.payload)??n,o=C(e.payload,"title")??"Agent run failed",a=C(e.payload,"summary")??dv();return{id:`${e.eventId}:run-failed`,type:"task.updated",taskId:i,timestamp:e.occurredAt,source:s,toolFamily:"paperclip",activityClass:"tool_failure",status:"failed",title:o,summary:a,semantic:$t({id:`${e.eventId}:run-failed`,type:"task.updated",taskId:i,timestamp:e.occurredAt,source:s,toolFamily:"paperclip",activityClass:"tool_failure",title:o,summary:a,status:"failed",semanticHints:Z9()})}}case"agent.run.finished":return{id:`${e.eventId}:run-finished`,type:"task.completed",taskId:n,timestamp:e.occurredAt,source:s,summary:C(e.payload,"summary")??"Agent run finished"};case"agent.run.cancelled":return{id:`${e.eventId}:run-cancelled`,type:"task.cancelled",taskId:n,timestamp:e.occurredAt,source:s,reason:C(e.payload,"summary")??"Agent run cancelled"};case"agent.error_cleared":{let i=C(e.payload,"summary")??"The agent error state was cleared in Paperclip.";return{id:`${e.eventId}:error-cleared`,type:"task.completed",taskId:n,timestamp:e.occurredAt,source:s,summary:i}}case"agent.status_changed":{let i=C(e.payload,"status")?.toLowerCase();if(i==="pending_approval"){let l=mv(),d=fv();return{id:`${e.eventId}:status-pending-approval`,type:"human.input.requested",taskId:n,interactionId:tt(n,"pending-approval"),timestamp:e.occurredAt,source:s,toolFamily:"paperclip",activityClass:"permission_request",title:l,summary:d,consequence:"medium",tone:"focused",request:{kind:"approval"},semantic:$t({id:`${e.eventId}:status-pending-approval`,type:"human.input.requested",taskId:n,interactionId:tt(n,"pending-approval"),timestamp:e.occurredAt,source:s,toolFamily:"paperclip",activityClass:"permission_request",title:l,summary:d,request:{kind:"approval"},riskHint:"medium",semanticHints:W9()}),provenance:{whyNow:Dp(),factors:["pending approval"]}}}let o=z9(e.payload),a="Agent status changed",c=i?`Agent status is now ${i}.`:"Agent status changed.";return{id:`${e.eventId}:status-updated`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:a,summary:c,activityClass:"session_status",status:o,semantic:$t({id:`${e.eventId}:status-updated`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:s,title:a,summary:c,activityClass:"session_status",status:o})}}default:return null}}function G9(e){let t={...e.semantic?.confidence?{confidence:e.semantic.confidence}:{},...e.semantic?.relationHints?.length?{relationHints:e.semantic.relationHints}:{},...e.semantic?.whyNow?{whyNow:e.semantic.whyNow}:{},...e.semantic?.factors?.length?{factors:e.semantic.factors}:{},...e.semantic?.intentFrame?{intentFrame:e.semantic.intentFrame}:{}};return Object.keys(t).length>0?t:void 0}function AA(e){let t=Om(e);if(!t)return null;let n={id:t.id,taskId:t.taskId,timestamp:t.timestamp,source:t.source,semanticHints:G9(t)};switch(t.type){case"task.started":return{...n,type:"task.started",title:t.title,...t.summary?{summary:t.summary}:{}};case"task.updated":return{...n,type:"task.updated",title:t.title,...t.summary?{summary:t.summary}:{},...t.toolFamily?{toolFamily:t.toolFamily}:{},...t.activityClass?{activityClass:t.activityClass}:{},status:t.status,...typeof t.progress=="number"?{progress:t.progress}:{},...t.context?{context:t.context}:{}};case"human.input.requested":return{...n,type:"human.input.requested",interactionId:t.interactionId,...t.toolFamily?{toolFamily:t.toolFamily}:{},...t.activityClass?{activityClass:t.activityClass}:{},title:t.title,summary:t.summary,request:t.request,...t.context?{context:t.context}:{},...t.provenance?{provenance:t.provenance}:{},...t.consequence?{riskHint:t.consequence}:{}};case"task.completed":return{...n,type:"task.completed",...t.summary?{summary:t.summary}:{}};case"task.cancelled":return{...n,type:"task.cancelled",...t.reason?{reason:t.reason}:{}};default:return null}}var Y9=["activity.logged","approval.created","approval.decided","approval.approved","approval.rejected","approval.revision_requested","issue.created","issue.updated","issue.comment.created","issue.comment_added","agent.run.started","agent.run.failed","agent.run.finished","agent.run.cancelled","agent.status_changed","agent.error_cleared"],J9=new Set(["issue.document_created","issue.document_updated","issue.document_deleted"]);function X9(e,t){return!((t==="issue.created"||t==="issue.updated"||t==="issue.comment.created"||t==="issue.comment_added")&&e.captureIssueLifecycle===!1||t==="agent.run.failed"&&e.captureRunFailures===!1)}async function Q9(e,t,n,s){if(!X9(s,n.eventType))return;if(n.eventType==="activity.logged"){let l=n.payload&&typeof n.payload=="object"?n.payload:{},d=typeof l.action=="string"?l.action:void 0,m=typeof l.entityType=="string"?l.entityType:n.entityType;m==="issue"&&d&&J9.has(d)&&(t.invalidateHostCache(n.companyId,{keys:n.entityId?[`issue:${n.entityId}:documents`,`issue:${n.entityId}:relations`]:[],prefixes:["issues:blocked","issues:in_review"]}),e.logger.info("Triggered Focus refresh from activity log event",{companyId:n.companyId,action:d,entityId:n.entityId,entityType:m}));return}n.entityType==="issue"&&n.entityId?t.invalidateHostCache(n.companyId,{keys:[`issue:${n.entityId}:detail`,`issue:${n.entityId}:comments`,`issue:${n.entityId}:relations`],prefixes:["issues:blocked","issues:in_review"]}):n.entityType==="agent"&&t.invalidateHostCache(n.companyId,{keys:["agents:all"]});let i=n,o=AA(i),a=o?kA(o):Om(i);if(!a)return;i.entityType==="approval"&&t.invalidateApprovals(i.companyId);let c={kind:"event",id:`${i.eventId}:event`,occurredAt:i.occurredAt,source:{eventType:i.eventType,entityId:i.entityId,entityType:i.entityType},...o?{sourceEvent:o}:{},apertureEvent:a};t.applyEvent(i.companyId,c),t.markPersistencePending(i.companyId),e.logger.info("Captured Paperclip event for Aperture",{companyId:i.companyId,eventType:i.eventType,entityId:i.entityId,mappedType:a.type})}function wA(e,t,n=()=>({})){for(let s of Y9)e.events.on(s,async i=>{await Q9(e,t,i,n())})}function IA(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}var qo={},TA=Ko({async setup(e){let t=new lo;try{qo=IA(await e.config.get())}catch(n){qo={},e.logger.warn("Failed to load initial Focus config; event handlers will use defaults.",{error:n instanceof Error?n.message:String(n)})}Dv(e,t),zk(e,t),wA(e,t,()=>qo)},async onConfigChanged(e){qo=IA(e)},async onHealth(){return{status:"ok",message:"Paperclip Aperture worker is running"}}}),Z8=TA;pd(TA,import.meta.url);export{Z8 as default};
|