@tomismeta/paperclip-aperture 0.4.8 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -2
- package/dist/manifest.js +1 -1
- package/dist/worker.js +27 -11
- package/package.json +3 -3
package/dist/worker.js
CHANGED
|
@@ -1,11 +1,27 @@
|
|
|
1
|
-
var pb=Object.defineProperty;var mb=(e,t)=>{for(var r in t)pb(e,r,{get:t[r],enumerable:!0})};function ys(e){return Object.freeze({definition:e})}var n={};mb(n,{BRAND:()=>Fb,DIRTY:()=>pt,EMPTY_PATH:()=>yb,INVALID:()=>A,NEVER:()=>EI,OK:()=>X,ParseStatus:()=>z,Schema:()=>C,ZodAny:()=>Xe,ZodArray:()=>Ke,ZodBigInt:()=>gt,ZodBoolean:()=>ft,ZodBranded:()=>On,ZodCatch:()=>wt,ZodDate:()=>ht,ZodDefault:()=>At,ZodDiscriminatedUnion:()=>_r,ZodEffects:()=>ye,ZodEnum:()=>Et,ZodError:()=>se,ZodFirstPartyTypeKind:()=>w,ZodFunction:()=>wr,ZodIntersection:()=>It,ZodIssueCode:()=>y,ZodLazy:()=>vt,ZodLiteral:()=>kt,ZodMap:()=>nn,ZodNaN:()=>sn,ZodNativeEnum:()=>_t,ZodNever:()=>Ee,ZodNull:()=>St,ZodNullable:()=>Ce,ZodNumber:()=>mt,ZodObject:()=>oe,ZodOptional:()=>fe,ZodParsedType:()=>k,ZodPipeline:()=>Pn,ZodPromise:()=>Qe,ZodReadonly:()=>Tt,ZodRecord:()=>Ar,ZodSchema:()=>C,ZodSet:()=>rn,ZodString:()=>Je,ZodSymbol:()=>en,ZodTransformer:()=>ye,ZodTuple:()=>Re,ZodType:()=>C,ZodUndefined:()=>yt,ZodUnion:()=>bt,ZodUnknown:()=>Ve,ZodVoid:()=>tn,addIssueToContext:()=>I,any:()=>Gb,array:()=>Xb,bigint:()=>Vb,boolean:()=>ld,coerce:()=>kI,custom:()=>od,date:()=>Kb,datetimeRegex:()=>id,defaultErrorMap:()=>Be,discriminatedUnion:()=>nI,effect:()=>gI,enum:()=>dI,function:()=>cI,getErrorMap:()=>Jt,getParsedType:()=>xe,instanceof:()=>Bb,intersection:()=>rI,isAborted:()=>kr,isAsync:()=>Xt,isDirty:()=>Er,isValid:()=>Ze,late:()=>qb,lazy:()=>lI,literal:()=>uI,makeIssue:()=>Cn,map:()=>oI,nan:()=>$b,nativeEnum:()=>pI,never:()=>Zb,null:()=>zb,nullable:()=>hI,number:()=>cd,object:()=>Qb,objectUtil:()=>Ss,oboolean:()=>vI,onumber:()=>II,optional:()=>fI,ostring:()=>bI,pipeline:()=>SI,preprocess:()=>yI,promise:()=>mI,quotelessJson:()=>gb,record:()=>sI,set:()=>aI,setErrorMap:()=>hb,strictObject:()=>eI,string:()=>ad,symbol:()=>Hb,transformer:()=>gI,tuple:()=>iI,undefined:()=>Wb,union:()=>tI,unknown:()=>Yb,util:()=>N,void:()=>Jb});var N;(function(e){e.assertEqual=s=>{};function t(s){}e.assertIs=t;function r(s){throw new Error}e.assertNever=r,e.arrayToEnum=s=>{let o={};for(let a of s)o[a]=a;return o},e.getValidEnumValues=s=>{let o=e.objectKeys(s).filter(c=>typeof s[s[c]]!="number"),a={};for(let c of o)a[c]=s[c];return e.objectValues(a)},e.objectValues=s=>e.objectKeys(s).map(function(o){return s[o]}),e.objectKeys=typeof Object.keys=="function"?s=>Object.keys(s):s=>{let o=[];for(let a in s)Object.prototype.hasOwnProperty.call(s,a)&&o.push(a);return o},e.find=(s,o)=>{for(let a of s)if(o(a))return a},e.isInteger=typeof Number.isInteger=="function"?s=>Number.isInteger(s):s=>typeof s=="number"&&Number.isFinite(s)&&Math.floor(s)===s;function i(s,o=" | "){return s.map(a=>typeof a=="string"?`'${a}'`:a).join(o)}e.joinValues=i,e.jsonStringifyReplacer=(s,o)=>typeof o=="bigint"?o.toString():o})(N||(N={}));var Ss;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(Ss||(Ss={}));var k=N.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),xe=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=N.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"]),gb=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=i=>{this.issues=[...this.issues,i]},this.addIssues=(i=[])=>{this.issues=[...this.issues,...i]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=t}format(t){let r=t||function(o){return o.message},i={_errors:[]},s=o=>{for(let a of o.issues)if(a.code==="invalid_union")a.unionErrors.map(s);else if(a.code==="invalid_return_type")s(a.returnTypeError);else if(a.code==="invalid_arguments")s(a.argumentsError);else if(a.path.length===0)i._errors.push(r(a));else{let c=i,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(r(a))):c[p]=c[p]||{_errors:[]},c=c[p],u++}}};return s(this),i}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,N.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=r=>r.message){let r={},i=[];for(let s of this.issues)if(s.path.length>0){let o=s.path[0];r[o]=r[o]||[],r[o].push(t(s))}else i.push(t(s));return{formErrors:i,fieldErrors:r}}get formErrors(){return this.flatten()}};se.create=e=>new se(e);var fb=(e,t)=>{let r;switch(e.code){case y.invalid_type:e.received===k.undefined?r="Required":r=`Expected ${e.expected}, received ${e.received}`;break;case y.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,N.jsonStringifyReplacer)}`;break;case y.unrecognized_keys:r=`Unrecognized key(s) in object: ${N.joinValues(e.keys,", ")}`;break;case y.invalid_union:r="Invalid input";break;case y.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${N.joinValues(e.options)}`;break;case y.invalid_enum_value:r=`Invalid enum value. Expected ${N.joinValues(e.options)}, received '${e.received}'`;break;case y.invalid_arguments:r="Invalid function arguments";break;case y.invalid_return_type:r="Invalid function return type";break;case y.invalid_date:r="Invalid date";break;case y.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:N.assertNever(e.validation):e.validation!=="regex"?r=`Invalid ${e.validation}`:r="Invalid";break;case y.too_small:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="bigint"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:r="Invalid input";break;case y.too_big:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?r=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:r="Invalid input";break;case y.custom:r="Invalid input";break;case y.invalid_intersection_types:r="Intersection results could not be merged";break;case y.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case y.not_finite:r="Number must be finite";break;default:r=t.defaultError,N.assertNever(e)}return{message:r}},Be=fb;var Qu=Be;function hb(e){Qu=e}function Jt(){return Qu}var Cn=e=>{let{data:t,path:r,errorMaps:i,issueData:s}=e,o=[...r,...s.path||[]],a={...s,path:o};if(s.message!==void 0)return{...s,path:o,message:s.message};let c="",u=i.filter(p=>!!p).slice().reverse();for(let p of u)c=p(a,{data:t,defaultError:c}).message;return{...s,path:o,message:c}},yb=[];function I(e,t){let r=Jt(),i=Cn({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,r,r===Be?void 0:Be].filter(s=>!!s)});e.common.issues.push(i)}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,r){let i=[];for(let s of r){if(s.status==="aborted")return A;s.status==="dirty"&&t.dirty(),i.push(s.value)}return{status:t.value,value:i}}static async mergeObjectAsync(t,r){let i=[];for(let s of r){let o=await s.key,a=await s.value;i.push({key:o,value:a})}return e.mergeObjectSync(t,i)}static mergeObjectSync(t,r){let i={};for(let s of r){let{key:o,value:a}=s;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"||s.alwaysSet)&&(i[o.value]=a.value)}return{status:t.value,value:i}}},A=Object.freeze({status:"aborted"}),pt=e=>({status:"dirty",value:e}),X=e=>({status:"valid",value:e}),kr=e=>e.status==="aborted",Er=e=>e.status==="dirty",Ze=e=>e.status==="valid",Xt=e=>typeof Promise<"u"&&e instanceof Promise;var E;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(E||(E={}));var he=class{constructor(t,r,i,s){this._cachedPath=[],this.parent=t,this.data=r,this._path=i,this._key=s}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}},ed=(e,t)=>{if(Ze(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 r=new se(e.common.issues);return this._error=r,this._error}}};function x(e){if(!e)return{};let{errorMap:t,invalid_type_error:r,required_error:i,description:s}=e;if(t&&(r||i))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:s}:{errorMap:(a,c)=>{let{message:u}=e;return a.code==="invalid_enum_value"?{message:u??c.defaultError}:typeof c.data>"u"?{message:u??i??c.defaultError}:a.code!=="invalid_type"?{message:c.defaultError}:{message:u??r??c.defaultError}},description:s}}var C=class{get description(){return this._def.description}_getType(t){return xe(t.data)}_getOrReturnCtx(t,r){return r||{common:t.parent.common,data:t.data,parsedType:xe(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:xe(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let r=this._parse(t);if(Xt(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(t){let r=this._parse(t);return Promise.resolve(r)}parse(t,r){let i=this.safeParse(t,r);if(i.success)return i.data;throw i.error}safeParse(t,r){let i={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:xe(t)},s=this._parseSync({data:t,path:i.path,parent:i});return ed(i,s)}"~validate"(t){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:xe(t)};if(!this["~standard"].async)try{let i=this._parseSync({data:t,path:[],parent:r});return Ze(i)?{value:i.value}:{issues:r.common.issues}}catch(i){i?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:t,path:[],parent:r}).then(i=>Ze(i)?{value:i.value}:{issues:r.common.issues})}async parseAsync(t,r){let i=await this.safeParseAsync(t,r);if(i.success)return i.data;throw i.error}async safeParseAsync(t,r){let i={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:xe(t)},s=this._parse({data:t,path:i.path,parent:i}),o=await(Xt(s)?s:Promise.resolve(s));return ed(i,o)}refine(t,r){let i=s=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(s):r;return this._refinement((s,o)=>{let a=t(s),c=()=>o.addIssue({code:y.custom,...i(s)});return typeof Promise<"u"&&a instanceof Promise?a.then(u=>u?!0:(c(),!1)):a?!0:(c(),!1)})}refinement(t,r){return this._refinement((i,s)=>t(i)?!0:(s.addIssue(typeof r=="function"?r(i,s):r),!1))}_refinement(t){return new ye({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:r=>this["~validate"](r)}}optional(){return fe.create(this,this._def)}nullable(){return Ce.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ke.create(this)}promise(){return Qe.create(this,this._def)}or(t){return bt.create([this,t],this._def)}and(t){return It.create(this,t,this._def)}transform(t){return new ye({...x(this._def),schema:this,typeName:w.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let r=typeof t=="function"?t:()=>t;return new At({...x(this._def),innerType:this,defaultValue:r,typeName:w.ZodDefault})}brand(){return new On({typeName:w.ZodBranded,type:this,...x(this._def)})}catch(t){let r=typeof t=="function"?t:()=>t;return new wt({...x(this._def),innerType:this,catchValue:r,typeName:w.ZodCatch})}describe(t){let r=this.constructor;return new r({...this._def,description:t})}pipe(t){return Pn.create(this,t)}readonly(){return Tt.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Sb=/^c[^\s-]{8,}$/i,bb=/^[0-9a-z]+$/,Ib=/^[0-9A-HJKMNP-TV-Z]{26}$/i,vb=/^[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,kb=/^[a-z0-9_-]{21}$/i,Eb=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,_b=/^[-+]?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)?)??$/,Ab=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,wb="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",bs,Tb=/^(?:(?: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])$/,xb=/^(?:(?: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])$/,Rb=/^(([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]))$/,Cb=/^(([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])$/,Ob=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Pb=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nd="((\\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])))",Nb=new RegExp(`^${nd}$`);function rd(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`);let r=e.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${r}`}function Mb(e){return new RegExp(`^${rd(e)}$`)}function id(e){let t=`${nd}T${rd(e)}`,r=[];return r.push(e.local?"Z?":"Z"),e.offset&&r.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${r.join("|")})`,new RegExp(`^${t}$`)}function Lb(e,t){return!!((t==="v4"||!t)&&Tb.test(e)||(t==="v6"||!t)&&Rb.test(e))}function Db(e,t){if(!Eb.test(e))return!1;try{let[r]=e.split(".");if(!r)return!1;let i=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),s=JSON.parse(atob(i));return!(typeof s!="object"||s===null||"typ"in s&&s?.typ!=="JWT"||!s.alg||t&&s.alg!==t)}catch{return!1}}function Ub(e,t){return!!((t==="v4"||!t)&&xb.test(e)||(t==="v6"||!t)&&Cb.test(e))}var Je=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 i=new z,s;for(let o of this._def.checks)if(o.kind==="min")t.data.length<o.value&&(s=this._getOrReturnCtx(t,s),I(s,{code:y.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),i.dirty());else if(o.kind==="max")t.data.length>o.value&&(s=this._getOrReturnCtx(t,s),I(s,{code:y.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),i.dirty());else if(o.kind==="length"){let a=t.data.length>o.value,c=t.data.length<o.value;(a||c)&&(s=this._getOrReturnCtx(t,s),a?I(s,{code:y.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):c&&I(s,{code:y.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),i.dirty())}else if(o.kind==="email")Ab.test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"email",code:y.invalid_string,message:o.message}),i.dirty());else if(o.kind==="emoji")bs||(bs=new RegExp(wb,"u")),bs.test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"emoji",code:y.invalid_string,message:o.message}),i.dirty());else if(o.kind==="uuid")vb.test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"uuid",code:y.invalid_string,message:o.message}),i.dirty());else if(o.kind==="nanoid")kb.test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"nanoid",code:y.invalid_string,message:o.message}),i.dirty());else if(o.kind==="cuid")Sb.test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"cuid",code:y.invalid_string,message:o.message}),i.dirty());else if(o.kind==="cuid2")bb.test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"cuid2",code:y.invalid_string,message:o.message}),i.dirty());else if(o.kind==="ulid")Ib.test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"ulid",code:y.invalid_string,message:o.message}),i.dirty());else if(o.kind==="url")try{new URL(t.data)}catch{s=this._getOrReturnCtx(t,s),I(s,{validation:"url",code:y.invalid_string,message:o.message}),i.dirty()}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"regex",code:y.invalid_string,message:o.message}),i.dirty())):o.kind==="trim"?t.data=t.data.trim():o.kind==="includes"?t.data.includes(o.value,o.position)||(s=this._getOrReturnCtx(t,s),I(s,{code:y.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),i.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)||(s=this._getOrReturnCtx(t,s),I(s,{code:y.invalid_string,validation:{startsWith:o.value},message:o.message}),i.dirty()):o.kind==="endsWith"?t.data.endsWith(o.value)||(s=this._getOrReturnCtx(t,s),I(s,{code:y.invalid_string,validation:{endsWith:o.value},message:o.message}),i.dirty()):o.kind==="datetime"?id(o).test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{code:y.invalid_string,validation:"datetime",message:o.message}),i.dirty()):o.kind==="date"?Nb.test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{code:y.invalid_string,validation:"date",message:o.message}),i.dirty()):o.kind==="time"?Mb(o).test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{code:y.invalid_string,validation:"time",message:o.message}),i.dirty()):o.kind==="duration"?_b.test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"duration",code:y.invalid_string,message:o.message}),i.dirty()):o.kind==="ip"?Lb(t.data,o.version)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"ip",code:y.invalid_string,message:o.message}),i.dirty()):o.kind==="jwt"?Db(t.data,o.alg)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"jwt",code:y.invalid_string,message:o.message}),i.dirty()):o.kind==="cidr"?Ub(t.data,o.version)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"cidr",code:y.invalid_string,message:o.message}),i.dirty()):o.kind==="base64"?Ob.test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"base64",code:y.invalid_string,message:o.message}),i.dirty()):o.kind==="base64url"?Pb.test(t.data)||(s=this._getOrReturnCtx(t,s),I(s,{validation:"base64url",code:y.invalid_string,message:o.message}),i.dirty()):N.assertNever(o);return{status:i.value,value:t.data}}_regex(t,r,i){return this.refinement(s=>t.test(s),{validation:r,code:y.invalid_string,...E.errToObj(i)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...E.errToObj(t)})}url(t){return this._addCheck({kind:"url",...E.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...E.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...E.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...E.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...E.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...E.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...E.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...E.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...E.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...E.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...E.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...E.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,...E.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,...E.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...E.errToObj(t)})}regex(t,r){return this._addCheck({kind:"regex",regex:t,...E.errToObj(r)})}includes(t,r){return this._addCheck({kind:"includes",value:t,position:r?.position,...E.errToObj(r?.message)})}startsWith(t,r){return this._addCheck({kind:"startsWith",value:t,...E.errToObj(r)})}endsWith(t,r){return this._addCheck({kind:"endsWith",value:t,...E.errToObj(r)})}min(t,r){return this._addCheck({kind:"min",value:t,...E.errToObj(r)})}max(t,r){return this._addCheck({kind:"max",value:t,...E.errToObj(r)})}length(t,r){return this._addCheck({kind:"length",value:t,...E.errToObj(r)})}nonempty(t){return this.min(1,E.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 r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxLength(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}};Je.create=e=>new Je({checks:[],typeName:w.ZodString,coerce:e?.coerce??!1,...x(e)});function jb(e,t){let r=(e.toString().split(".")[1]||"").length,i=(t.toString().split(".")[1]||"").length,s=r>i?r:i,o=Number.parseInt(e.toFixed(s).replace(".","")),a=Number.parseInt(t.toFixed(s).replace(".",""));return o%a/10**s}var mt=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 i,s=new z;for(let o of this._def.checks)o.kind==="int"?N.isInteger(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{code:y.invalid_type,expected:"integer",received:"float",message:o.message}),s.dirty()):o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(i=this._getOrReturnCtx(t,i),I(i,{code:y.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),s.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(i=this._getOrReturnCtx(t,i),I(i,{code:y.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),s.dirty()):o.kind==="multipleOf"?jb(t.data,o.value)!==0&&(i=this._getOrReturnCtx(t,i),I(i,{code:y.not_multiple_of,multipleOf:o.value,message:o.message}),s.dirty()):o.kind==="finite"?Number.isFinite(t.data)||(i=this._getOrReturnCtx(t,i),I(i,{code:y.not_finite,message:o.message}),s.dirty()):N.assertNever(o);return{status:s.value,value:t.data}}gte(t,r){return this.setLimit("min",t,!0,E.toString(r))}gt(t,r){return this.setLimit("min",t,!1,E.toString(r))}lte(t,r){return this.setLimit("max",t,!0,E.toString(r))}lt(t,r){return this.setLimit("max",t,!1,E.toString(r))}setLimit(t,r,i,s){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:i,message:E.toString(s)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:E.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:E.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:E.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:E.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:E.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:E.toString(r)})}finite(t){return this._addCheck({kind:"finite",message:E.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:E.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:E.toString(t)})}get minValue(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}get isInt(){return!!this._def.checks.find(t=>t.kind==="int"||t.kind==="multipleOf"&&N.isInteger(t.value))}get isFinite(){let t=null,r=null;for(let i of this._def.checks){if(i.kind==="finite"||i.kind==="int"||i.kind==="multipleOf")return!0;i.kind==="min"?(r===null||i.value>r)&&(r=i.value):i.kind==="max"&&(t===null||i.value<t)&&(t=i.value)}return Number.isFinite(r)&&Number.isFinite(t)}};mt.create=e=>new mt({checks:[],typeName:w.ZodNumber,coerce:e?.coerce||!1,...x(e)});var gt=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 i,s=new z;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?t.data<o.value:t.data<=o.value)&&(i=this._getOrReturnCtx(t,i),I(i,{code:y.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),s.dirty()):o.kind==="max"?(o.inclusive?t.data>o.value:t.data>=o.value)&&(i=this._getOrReturnCtx(t,i),I(i,{code:y.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),s.dirty()):o.kind==="multipleOf"?t.data%o.value!==BigInt(0)&&(i=this._getOrReturnCtx(t,i),I(i,{code:y.not_multiple_of,multipleOf:o.value,message:o.message}),s.dirty()):N.assertNever(o);return{status:s.value,value:t.data}}_getInvalidInput(t){let r=this._getOrReturnCtx(t);return I(r,{code:y.invalid_type,expected:k.bigint,received:r.parsedType}),A}gte(t,r){return this.setLimit("min",t,!0,E.toString(r))}gt(t,r){return this.setLimit("min",t,!1,E.toString(r))}lte(t,r){return this.setLimit("max",t,!0,E.toString(r))}lt(t,r){return this.setLimit("max",t,!1,E.toString(r))}setLimit(t,r,i,s){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:i,message:E.toString(s)}]})}_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:E.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:E.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:E.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:E.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:E.toString(r)})}get minValue(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t}};gt.create=e=>new gt({checks:[],typeName:w.ZodBigInt,coerce:e?.coerce??!1,...x(e)});var ft=class extends C{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==k.boolean){let i=this._getOrReturnCtx(t);return I(i,{code:y.invalid_type,expected:k.boolean,received:i.parsedType}),A}return X(t.data)}};ft.create=e=>new ft({typeName:w.ZodBoolean,coerce:e?.coerce||!1,...x(e)});var ht=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 i=new z,s;for(let o of this._def.checks)o.kind==="min"?t.data.getTime()<o.value&&(s=this._getOrReturnCtx(t,s),I(s,{code:y.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),i.dirty()):o.kind==="max"?t.data.getTime()>o.value&&(s=this._getOrReturnCtx(t,s),I(s,{code:y.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),i.dirty()):N.assertNever(o);return{status:i.value,value:new Date(t.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(t,r){return this._addCheck({kind:"min",value:t.getTime(),message:E.toString(r)})}max(t,r){return this._addCheck({kind:"max",value:t.getTime(),message:E.toString(r)})}get minDate(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.value<t)&&(t=r.value);return t!=null?new Date(t):null}};ht.create=e=>new ht({checks:[],coerce:e?.coerce||!1,typeName:w.ZodDate,...x(e)});var en=class extends C{_parse(t){if(this._getType(t)!==k.symbol){let i=this._getOrReturnCtx(t);return I(i,{code:y.invalid_type,expected:k.symbol,received:i.parsedType}),A}return X(t.data)}};en.create=e=>new en({typeName:w.ZodSymbol,...x(e)});var yt=class extends C{_parse(t){if(this._getType(t)!==k.undefined){let i=this._getOrReturnCtx(t);return I(i,{code:y.invalid_type,expected:k.undefined,received:i.parsedType}),A}return X(t.data)}};yt.create=e=>new yt({typeName:w.ZodUndefined,...x(e)});var St=class extends C{_parse(t){if(this._getType(t)!==k.null){let i=this._getOrReturnCtx(t);return I(i,{code:y.invalid_type,expected:k.null,received:i.parsedType}),A}return X(t.data)}};St.create=e=>new St({typeName:w.ZodNull,...x(e)});var Xe=class extends C{constructor(){super(...arguments),this._any=!0}_parse(t){return X(t.data)}};Xe.create=e=>new Xe({typeName:w.ZodAny,...x(e)});var Ve=class extends C{constructor(){super(...arguments),this._unknown=!0}_parse(t){return X(t.data)}};Ve.create=e=>new Ve({typeName:w.ZodUnknown,...x(e)});var Ee=class extends C{_parse(t){let r=this._getOrReturnCtx(t);return I(r,{code:y.invalid_type,expected:k.never,received:r.parsedType}),A}};Ee.create=e=>new Ee({typeName:w.ZodNever,...x(e)});var tn=class extends C{_parse(t){if(this._getType(t)!==k.undefined){let i=this._getOrReturnCtx(t);return I(i,{code:y.invalid_type,expected:k.void,received:i.parsedType}),A}return X(t.data)}};tn.create=e=>new tn({typeName:w.ZodVoid,...x(e)});var Ke=class e extends C{_parse(t){let{ctx:r,status:i}=this._processInputParams(t),s=this._def;if(r.parsedType!==k.array)return I(r,{code:y.invalid_type,expected:k.array,received:r.parsedType}),A;if(s.exactLength!==null){let a=r.data.length>s.exactLength.value,c=r.data.length<s.exactLength.value;(a||c)&&(I(r,{code:a?y.too_big:y.too_small,minimum:c?s.exactLength.value:void 0,maximum:a?s.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:s.exactLength.message}),i.dirty())}if(s.minLength!==null&&r.data.length<s.minLength.value&&(I(r,{code:y.too_small,minimum:s.minLength.value,type:"array",inclusive:!0,exact:!1,message:s.minLength.message}),i.dirty()),s.maxLength!==null&&r.data.length>s.maxLength.value&&(I(r,{code:y.too_big,maximum:s.maxLength.value,type:"array",inclusive:!0,exact:!1,message:s.maxLength.message}),i.dirty()),r.common.async)return Promise.all([...r.data].map((a,c)=>s.type._parseAsync(new he(r,a,r.path,c)))).then(a=>z.mergeArray(i,a));let o=[...r.data].map((a,c)=>s.type._parseSync(new he(r,a,r.path,c)));return z.mergeArray(i,o)}get element(){return this._def.type}min(t,r){return new e({...this._def,minLength:{value:t,message:E.toString(r)}})}max(t,r){return new e({...this._def,maxLength:{value:t,message:E.toString(r)}})}length(t,r){return new e({...this._def,exactLength:{value:t,message:E.toString(r)}})}nonempty(t){return this.min(1,t)}};Ke.create=(e,t)=>new Ke({type:e,minLength:null,maxLength:null,exactLength:null,typeName:w.ZodArray,...x(t)});function Qt(e){if(e instanceof oe){let t={};for(let r in e.shape){let i=e.shape[r];t[r]=fe.create(Qt(i))}return new oe({...e._def,shape:()=>t})}else return e instanceof Ke?new Ke({...e._def,type:Qt(e.element)}):e instanceof fe?fe.create(Qt(e.unwrap())):e instanceof Ce?Ce.create(Qt(e.unwrap())):e instanceof Re?Re.create(e.items.map(t=>Qt(t))):e}var oe=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(),r=N.objectKeys(t);return this._cached={shape:t,keys:r},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:i,ctx:s}=this._processInputParams(t),{shape:o,keys:a}=this._getCached(),c=[];if(!(this._def.catchall instanceof Ee&&this._def.unknownKeys==="strip"))for(let p in s.data)a.includes(p)||c.push(p);let u=[];for(let p of a){let m=o[p],h=s.data[p];u.push({key:{status:"valid",value:p},value:m._parse(new he(s,h,s.path,p)),alwaysSet:p in s.data})}if(this._def.catchall instanceof Ee){let p=this._def.unknownKeys;if(p==="passthrough")for(let m of c)u.push({key:{status:"valid",value:m},value:{status:"valid",value:s.data[m]}});else if(p==="strict")c.length>0&&(I(s,{code:y.unrecognized_keys,keys:c}),i.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=s.data[m];u.push({key:{status:"valid",value:m},value:p._parse(new he(s,h,s.path,m)),alwaysSet:m in s.data})}}return s.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(i,p)):z.mergeObjectSync(i,u)}get shape(){return this._def.shape()}strict(t){return E.errToObj,new e({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(r,i)=>{let s=this._def.errorMap?.(r,i).message??i.defaultError;return r.code==="unrecognized_keys"?{message:E.errToObj(t).message??s}:{message:s}}}:{}})}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,r){return this.augment({[t]:r})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let r={};for(let i of N.objectKeys(t))t[i]&&this.shape[i]&&(r[i]=this.shape[i]);return new e({...this._def,shape:()=>r})}omit(t){let r={};for(let i of N.objectKeys(this.shape))t[i]||(r[i]=this.shape[i]);return new e({...this._def,shape:()=>r})}deepPartial(){return Qt(this)}partial(t){let r={};for(let i of N.objectKeys(this.shape)){let s=this.shape[i];t&&!t[i]?r[i]=s:r[i]=s.optional()}return new e({...this._def,shape:()=>r})}required(t){let r={};for(let i of N.objectKeys(this.shape))if(t&&!t[i])r[i]=this.shape[i];else{let o=this.shape[i];for(;o instanceof fe;)o=o._def.innerType;r[i]=o}return new e({...this._def,shape:()=>r})}keyof(){return sd(N.objectKeys(this.shape))}};oe.create=(e,t)=>new oe({shape:()=>e,unknownKeys:"strip",catchall:Ee.create(),typeName:w.ZodObject,...x(t)});oe.strictCreate=(e,t)=>new oe({shape:()=>e,unknownKeys:"strict",catchall:Ee.create(),typeName:w.ZodObject,...x(t)});oe.lazycreate=(e,t)=>new oe({shape:e,unknownKeys:"strip",catchall:Ee.create(),typeName:w.ZodObject,...x(t)});var bt=class extends C{_parse(t){let{ctx:r}=this._processInputParams(t),i=this._def.options;function s(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 r.common.issues.push(...c.ctx.common.issues),c.result;let a=o.map(c=>new se(c.ctx.common.issues));return I(r,{code:y.invalid_union,unionErrors:a}),A}if(r.common.async)return Promise.all(i.map(async o=>{let a={...r,common:{...r.common,issues:[]},parent:null};return{result:await o._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(s);{let o,a=[];for(let u of i){let p={...r,common:{...r.common,issues:[]},parent:null},m=u._parseSync({data:r.data,path:r.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 r.common.issues.push(...o.ctx.common.issues),o.result;let c=a.map(u=>new se(u));return I(r,{code:y.invalid_union,unionErrors:c}),A}}get options(){return this._def.options}};bt.create=(e,t)=>new bt({options:e,typeName:w.ZodUnion,...x(t)});var $e=e=>e instanceof vt?$e(e.schema):e instanceof ye?$e(e.innerType()):e instanceof kt?[e.value]:e instanceof Et?e.options:e instanceof _t?N.objectValues(e.enum):e instanceof At?$e(e._def.innerType):e instanceof yt?[void 0]:e instanceof St?[null]:e instanceof fe?[void 0,...$e(e.unwrap())]:e instanceof Ce?[null,...$e(e.unwrap())]:e instanceof On||e instanceof Tt?$e(e.unwrap()):e instanceof wt?$e(e._def.innerType):[],_r=class e extends C{_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==k.object)return I(r,{code:y.invalid_type,expected:k.object,received:r.parsedType}),A;let i=this.discriminator,s=r.data[i],o=this.optionsMap.get(s);return o?r.common.async?o._parseAsync({data:r.data,path:r.path,parent:r}):o._parseSync({data:r.data,path:r.path,parent:r}):(I(r,{code:y.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[i]}),A)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,r,i){let s=new Map;for(let o of r){let a=$e(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(s.has(c))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(c)}`);s.set(c,o)}}return new e({typeName:w.ZodDiscriminatedUnion,discriminator:t,options:r,optionsMap:s,...x(i)})}};function Is(e,t){let r=xe(e),i=xe(t);if(e===t)return{valid:!0,data:e};if(r===k.object&&i===k.object){let s=N.objectKeys(t),o=N.objectKeys(e).filter(c=>s.indexOf(c)!==-1),a={...e,...t};for(let c of o){let u=Is(e[c],t[c]);if(!u.valid)return{valid:!1};a[c]=u.data}return{valid:!0,data:a}}else if(r===k.array&&i===k.array){if(e.length!==t.length)return{valid:!1};let s=[];for(let o=0;o<e.length;o++){let a=e[o],c=t[o],u=Is(a,c);if(!u.valid)return{valid:!1};s.push(u.data)}return{valid:!0,data:s}}else return r===k.date&&i===k.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}var It=class extends C{_parse(t){let{status:r,ctx:i}=this._processInputParams(t),s=(o,a)=>{if(kr(o)||kr(a))return A;let c=Is(o.value,a.value);return c.valid?((Er(o)||Er(a))&&r.dirty(),{status:r.value,value:c.data}):(I(i,{code:y.invalid_intersection_types}),A)};return i.common.async?Promise.all([this._def.left._parseAsync({data:i.data,path:i.path,parent:i}),this._def.right._parseAsync({data:i.data,path:i.path,parent:i})]).then(([o,a])=>s(o,a)):s(this._def.left._parseSync({data:i.data,path:i.path,parent:i}),this._def.right._parseSync({data:i.data,path:i.path,parent:i}))}};It.create=(e,t,r)=>new It({left:e,right:t,typeName:w.ZodIntersection,...x(r)});var Re=class e extends C{_parse(t){let{status:r,ctx:i}=this._processInputParams(t);if(i.parsedType!==k.array)return I(i,{code:y.invalid_type,expected:k.array,received:i.parsedType}),A;if(i.data.length<this._def.items.length)return I(i,{code:y.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),A;!this._def.rest&&i.data.length>this._def.items.length&&(I(i,{code:y.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let o=[...i.data].map((a,c)=>{let u=this._def.items[c]||this._def.rest;return u?u._parse(new he(i,a,i.path,c)):null}).filter(a=>!!a);return i.common.async?Promise.all(o).then(a=>z.mergeArray(r,a)):z.mergeArray(r,o)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};Re.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Re({items:e,typeName:w.ZodTuple,rest:null,...x(t)})};var Ar=class e extends C{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:r,ctx:i}=this._processInputParams(t);if(i.parsedType!==k.object)return I(i,{code:y.invalid_type,expected:k.object,received:i.parsedType}),A;let s=[],o=this._def.keyType,a=this._def.valueType;for(let c in i.data)s.push({key:o._parse(new he(i,c,i.path,c)),value:a._parse(new he(i,i.data[c],i.path,c)),alwaysSet:c in i.data});return i.common.async?z.mergeObjectAsync(r,s):z.mergeObjectSync(r,s)}get element(){return this._def.valueType}static create(t,r,i){return r instanceof C?new e({keyType:t,valueType:r,typeName:w.ZodRecord,...x(i)}):new e({keyType:Je.create(),valueType:t,typeName:w.ZodRecord,...x(r)})}},nn=class extends C{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:r,ctx:i}=this._processInputParams(t);if(i.parsedType!==k.map)return I(i,{code:y.invalid_type,expected:k.map,received:i.parsedType}),A;let s=this._def.keyType,o=this._def.valueType,a=[...i.data.entries()].map(([c,u],p)=>({key:s._parse(new he(i,c,i.path,[p,"key"])),value:o._parse(new he(i,u,i.path,[p,"value"]))}));if(i.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")&&r.dirty(),c.set(p.value,m.value)}return{status:r.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")&&r.dirty(),c.set(p.value,m.value)}return{status:r.value,value:c}}}};nn.create=(e,t,r)=>new nn({valueType:t,keyType:e,typeName:w.ZodMap,...x(r)});var rn=class e extends C{_parse(t){let{status:r,ctx:i}=this._processInputParams(t);if(i.parsedType!==k.set)return I(i,{code:y.invalid_type,expected:k.set,received:i.parsedType}),A;let s=this._def;s.minSize!==null&&i.data.size<s.minSize.value&&(I(i,{code:y.too_small,minimum:s.minSize.value,type:"set",inclusive:!0,exact:!1,message:s.minSize.message}),r.dirty()),s.maxSize!==null&&i.data.size>s.maxSize.value&&(I(i,{code:y.too_big,maximum:s.maxSize.value,type:"set",inclusive:!0,exact:!1,message:s.maxSize.message}),r.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"&&r.dirty(),p.add(m.value)}return{status:r.value,value:p}}let c=[...i.data.values()].map((u,p)=>o._parse(new he(i,u,i.path,p)));return i.common.async?Promise.all(c).then(u=>a(u)):a(c)}min(t,r){return new e({...this._def,minSize:{value:t,message:E.toString(r)}})}max(t,r){return new e({...this._def,maxSize:{value:t,message:E.toString(r)}})}size(t,r){return this.min(t,r).max(t,r)}nonempty(t){return this.min(1,t)}};rn.create=(e,t)=>new rn({valueType:e,minSize:null,maxSize:null,typeName:w.ZodSet,...x(t)});var wr=class e extends C{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==k.function)return I(r,{code:y.invalid_type,expected:k.function,received:r.parsedType}),A;function i(c,u){return Cn({data:c,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Jt(),Be].filter(p=>!!p),issueData:{code:y.invalid_arguments,argumentsError:u}})}function s(c,u){return Cn({data:c,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Jt(),Be].filter(p=>!!p),issueData:{code:y.invalid_return_type,returnTypeError:u}})}let o={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof Qe){let c=this;return X(async function(...u){let p=new se([]),m=await c._def.args.parseAsync(u,o).catch(b=>{throw p.addIssue(i(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(s(h,b)),p})})}else{let c=this;return X(function(...u){let p=c._def.args.safeParse(u,o);if(!p.success)throw new se([i(u,p.error)]);let m=Reflect.apply(a,this,p.data),h=c._def.returns.safeParse(m,o);if(!h.success)throw new se([s(m,h.error)]);return h.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:Re.create(t).rest(Ve.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,r,i){return new e({args:t||Re.create([]).rest(Ve.create()),returns:r||Ve.create(),typeName:w.ZodFunction,...x(i)})}},vt=class extends C{get schema(){return this._def.getter()}_parse(t){let{ctx:r}=this._processInputParams(t);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};vt.create=(e,t)=>new vt({getter:e,typeName:w.ZodLazy,...x(t)});var kt=class extends C{_parse(t){if(t.data!==this._def.value){let r=this._getOrReturnCtx(t);return I(r,{received:r.data,code:y.invalid_literal,expected:this._def.value}),A}return{status:"valid",value:t.data}}get value(){return this._def.value}};kt.create=(e,t)=>new kt({value:e,typeName:w.ZodLiteral,...x(t)});function sd(e,t){return new Et({values:e,typeName:w.ZodEnum,...x(t)})}var Et=class e extends C{_parse(t){if(typeof t.data!="string"){let r=this._getOrReturnCtx(t),i=this._def.values;return I(r,{expected:N.joinValues(i),received:r.parsedType,code:y.invalid_type}),A}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(t.data)){let r=this._getOrReturnCtx(t),i=this._def.values;return I(r,{received:r.data,code:y.invalid_enum_value,options:i}),A}return X(t.data)}get options(){return this._def.values}get enum(){let t={};for(let r of this._def.values)t[r]=r;return t}get Values(){let t={};for(let r of this._def.values)t[r]=r;return t}get Enum(){let t={};for(let r of this._def.values)t[r]=r;return t}extract(t,r=this._def){return e.create(t,{...this._def,...r})}exclude(t,r=this._def){return e.create(this.options.filter(i=>!t.includes(i)),{...this._def,...r})}};Et.create=sd;var _t=class extends C{_parse(t){let r=N.getValidEnumValues(this._def.values),i=this._getOrReturnCtx(t);if(i.parsedType!==k.string&&i.parsedType!==k.number){let s=N.objectValues(r);return I(i,{expected:N.joinValues(s),received:i.parsedType,code:y.invalid_type}),A}if(this._cache||(this._cache=new Set(N.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let s=N.objectValues(r);return I(i,{received:i.data,code:y.invalid_enum_value,options:s}),A}return X(t.data)}get enum(){return this._def.values}};_t.create=(e,t)=>new _t({values:e,typeName:w.ZodNativeEnum,...x(t)});var Qe=class extends C{unwrap(){return this._def.type}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==k.promise&&r.common.async===!1)return I(r,{code:y.invalid_type,expected:k.promise,received:r.parsedType}),A;let i=r.parsedType===k.promise?r.data:Promise.resolve(r.data);return X(i.then(s=>this._def.type.parseAsync(s,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Qe.create=(e,t)=>new Qe({type:e,typeName:w.ZodPromise,...x(t)});var ye=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:r,ctx:i}=this._processInputParams(t),s=this._def.effect||null,o={addIssue:a=>{I(i,a),a.fatal?r.abort():r.dirty()},get path(){return i.path}};if(o.addIssue=o.addIssue.bind(o),s.type==="preprocess"){let a=s.transform(i.data,o);if(i.common.async)return Promise.resolve(a).then(async c=>{if(r.value==="aborted")return A;let u=await this._def.schema._parseAsync({data:c,path:i.path,parent:i});return u.status==="aborted"?A:u.status==="dirty"?pt(u.value):r.value==="dirty"?pt(u.value):u});{if(r.value==="aborted")return A;let c=this._def.schema._parseSync({data:a,path:i.path,parent:i});return c.status==="aborted"?A:c.status==="dirty"?pt(c.value):r.value==="dirty"?pt(c.value):c}}if(s.type==="refinement"){let a=c=>{let u=s.refinement(c,o);if(i.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(i.common.async===!1){let c=this._def.schema._parseSync({data:i.data,path:i.path,parent:i});return c.status==="aborted"?A:(c.status==="dirty"&&r.dirty(),a(c.value),{status:r.value,value:c.value})}else return this._def.schema._parseAsync({data:i.data,path:i.path,parent:i}).then(c=>c.status==="aborted"?A:(c.status==="dirty"&&r.dirty(),a(c.value).then(()=>({status:r.value,value:c.value}))))}if(s.type==="transform")if(i.common.async===!1){let a=this._def.schema._parseSync({data:i.data,path:i.path,parent:i});if(!Ze(a))return A;let c=s.transform(a.value,o);if(c instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:c}}else return this._def.schema._parseAsync({data:i.data,path:i.path,parent:i}).then(a=>Ze(a)?Promise.resolve(s.transform(a.value,o)).then(c=>({status:r.value,value:c})):A);N.assertNever(s)}};ye.create=(e,t,r)=>new ye({schema:e,typeName:w.ZodEffects,effect:t,...x(r)});ye.createWithPreprocess=(e,t,r)=>new ye({schema:t,effect:{type:"preprocess",transform:e},typeName:w.ZodEffects,...x(r)});var fe=class extends C{_parse(t){return this._getType(t)===k.undefined?X(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};fe.create=(e,t)=>new fe({innerType:e,typeName:w.ZodOptional,...x(t)});var Ce=class extends C{_parse(t){return this._getType(t)===k.null?X(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};Ce.create=(e,t)=>new Ce({innerType:e,typeName:w.ZodNullable,...x(t)});var At=class extends C{_parse(t){let{ctx:r}=this._processInputParams(t),i=r.data;return r.parsedType===k.undefined&&(i=this._def.defaultValue()),this._def.innerType._parse({data:i,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};At.create=(e,t)=>new At({innerType:e,typeName:w.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...x(t)});var wt=class extends C{_parse(t){let{ctx:r}=this._processInputParams(t),i={...r,common:{...r.common,issues:[]}},s=this._def.innerType._parse({data:i.data,path:i.path,parent:{...i}});return Xt(s)?s.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new se(i.common.issues)},input:i.data})})):{status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new se(i.common.issues)},input:i.data})}}removeCatch(){return this._def.innerType}};wt.create=(e,t)=>new wt({innerType:e,typeName:w.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...x(t)});var sn=class extends C{_parse(t){if(this._getType(t)!==k.nan){let i=this._getOrReturnCtx(t);return I(i,{code:y.invalid_type,expected:k.nan,received:i.parsedType}),A}return{status:"valid",value:t.data}}};sn.create=e=>new sn({typeName:w.ZodNaN,...x(e)});var Fb=Symbol("zod_brand"),On=class extends C{_parse(t){let{ctx:r}=this._processInputParams(t),i=r.data;return this._def.type._parse({data:i,path:r.path,parent:r})}unwrap(){return this._def.type}},Pn=class e extends C{_parse(t){let{status:r,ctx:i}=this._processInputParams(t);if(i.common.async)return(async()=>{let o=await this._def.in._parseAsync({data:i.data,path:i.path,parent:i});return o.status==="aborted"?A:o.status==="dirty"?(r.dirty(),pt(o.value)):this._def.out._parseAsync({data:o.value,path:i.path,parent:i})})();{let s=this._def.in._parseSync({data:i.data,path:i.path,parent:i});return s.status==="aborted"?A:s.status==="dirty"?(r.dirty(),{status:"dirty",value:s.value}):this._def.out._parseSync({data:s.value,path:i.path,parent:i})}}static create(t,r){return new e({in:t,out:r,typeName:w.ZodPipeline})}},Tt=class extends C{_parse(t){let r=this._def.innerType._parse(t),i=s=>(Ze(s)&&(s.value=Object.freeze(s.value)),s);return Xt(r)?r.then(s=>i(s)):i(r)}unwrap(){return this._def.innerType}};Tt.create=(e,t)=>new Tt({innerType:e,typeName:w.ZodReadonly,...x(t)});function td(e,t){let r=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof r=="string"?{message:r}:r}function od(e,t={},r){return e?Xe.create().superRefine((i,s)=>{let o=e(i);if(o instanceof Promise)return o.then(a=>{if(!a){let c=td(t,i),u=c.fatal??r??!0;s.addIssue({code:"custom",...c,fatal:u})}});if(!o){let a=td(t,i),c=a.fatal??r??!0;s.addIssue({code:"custom",...a,fatal:c})}}):Xe.create()}var qb={object:oe.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 Bb=(e,t={message:`Input not instance of ${e.name}`})=>od(r=>r instanceof e,t),ad=Je.create,cd=mt.create,$b=sn.create,Vb=gt.create,ld=ft.create,Kb=ht.create,Hb=en.create,Wb=yt.create,zb=St.create,Gb=Xe.create,Yb=Ve.create,Zb=Ee.create,Jb=tn.create,Xb=Ke.create,Qb=oe.create,eI=oe.strictCreate,tI=bt.create,nI=_r.create,rI=It.create,iI=Re.create,sI=Ar.create,oI=nn.create,aI=rn.create,cI=wr.create,lI=vt.create,uI=kt.create,dI=Et.create,pI=_t.create,mI=Qe.create,gI=ye.create,fI=fe.create,hI=Ce.create,yI=ye.createWithPreprocess,SI=Pn.create,bI=()=>ad().optional(),II=()=>cd().optional(),vI=()=>ld().optional(),kI={string:(e=>Je.create({...e,coerce:!0})),number:(e=>mt.create({...e,coerce:!0})),boolean:(e=>ft.create({...e,coerce:!0})),bigint:(e=>gt.create({...e,coerce:!0})),date:(e=>ht.create({...e,coerce:!0}))};var EI=A;var vs=["active","paused","archived"];var ks=["local_trusted","authenticated"],Es=["private","public"],_s=["loopback","lan","tailnet","custom"],As=["auto","explicit"],ws=["active","paused","idle","running","error","pending_approval","terminated"],Nn=["process","http","acpx_local","claude_local","codex_local","cursor_cloud","gemini_local","hermes_gateway","hermes_local","opencode_local","pi_local","cursor","openclaw_gateway"],Ts=["ceo","cto","cmo","cfo","security","engineer","designer","pm","qa","devops","researcher","general"];var xs=["cheap"],Rs=["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"],Cs=["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"],Mn=["backlog","todo","in_progress","in_review","done","blocked","cancelled"],ud=["backlog","todo","in_progress","in_review","blocked","done"],Os=ud.join(","),Oe=["critical","high","medium","low"],Tr=["standard","ask","planning"],dd=1024,Ps=["user","agent","system"],Ns=["message","system_notice"],Ms=["neutral","info","success","warning","danger"],Ls=["text","code","key_value","issue_link","agent_link","run_link"];function Ds(e){return typeof e!="number"||!Number.isFinite(e)?0:Math.min(dd,Math.max(0,Math.floor(e)))}var Us=["suggest_tasks","ask_user_questions","request_confirmation","request_checkbox_confirmation"],on=200,js=["pending","accepted","rejected","answered","cancelled","expired","failed"],Fs=["none","wake_assignee","wake_assignee_on_accept"];var qs=["product_bug","platform_bug"],Bs=["default","plugin_operation"],$s=["missing_disposition","stranded_assigned_issue","workspace_validation","configuration_validation","active_run_watchdog","issue_graph_liveness"],Vs=["active","escalated","resolved","cancelled"],Ks=["agent","user","board","system"],Hs=["restored","delegated","false_positive","blocked","escalated","cancelled"];var Ws=["pause","resume","cancel","restore"];var zs=["manual","after_active_runs_finish"],pd="continuation-summary",md="pipeline-case-body";var gd=[pd,md],kC=new Set(gd);var Gs=["open","resolved"],Ys=["active","stale","orphaned"],Zs=["exact","duplicate","fuzzy","ambiguous","missing"],Js=["unknown","open","waiting","running","succeeded","failed","blocked","closed","archived","auth_required","unreachable"],Xs=["neutral","info","success","warning","danger","muted"],Qs=["unknown","fresh","stale","auth_required","unreachable"],eo=["title","description","comment","document","property","plugin"],to=["exact","likely","possible"],no=["normal","auto"],xr=["review","approval"],Rr=["assignee","board"],Cr=["external_service"],Or=["wake_owner","create_recovery_issue","escalate_to_board"],ro=["idle","pending","changes_requested","completed"],io=["scheduled","triggered","cleared"],so=["manual","triggered","done","cancelled","invalid_status","invalid_assignee","dispatch_skipped","timeout_exceeded","max_attempts_exhausted"],oo=["approved","changes_requested"],ao=["company","team","agent","task"],co=["planned","active","achieved","cancelled"],lo=["backlog","planned","in_progress","completed","cancelled"],uo=["local","ssh","sandbox","plugin"],po=["active","archived"],mo=["active","released","expired","failed","retained","pending_cleanup"];var go=["pending","success","failed"],fo=["snapshot","image","provider_template","unknown"],ho=["active","superseded","revoked","failed"],yo=["starting","waiting_for_user","capturing","promoted","cancelled","timed_out","failed"],So=["ssh","browser_terminal","unknown"],an=["active","paused","archived"],cn=["coalesce_if_active","always_enqueue","skip_if_active"],ln=["skip_missed","enqueue_missed_with_cap"],Ln=["schedule","webhook","api"],xt=["bearer","hmac_sha256","github_hmac","none"],bo=["text","textarea","number","boolean","select","date"];var Io=["hire_agent","approve_ceo_strategy","budget_override_required","request_board_approval"];var et=["local_encrypted","aws_secrets_manager","gcp_secret_manager","vault"],Pr=["ready","warning","coming_soon","disabled"];var Nr=["active","disabled","archived","deleted"];var vo=["paperclip_managed","external_reference"];var fd=["agent","project","environment","routine","plugin","issue","run","system"];var ko=["local_disk","s3"],Eo=["metered_api","subscription_included","subscription_overage","credits","fixed","unknown"],_o=["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"],Ao=["debit","credit"],wo=["input_token","output_token","cached_input_token","request","credit_usd","credit_unit","model_unit_minute","model_unit_hour","gb_month","train_token","unknown"],To=["company","agent","project"],xo=["billed_cents"],Ro=["calendar_month_utc","lifetime"];var Co=["keep_paused","raise_budget_and_resume"];var un=["owner","admin","operator","viewer"];var Oo=["human","agent","both"],Mr=["human","agent"],Po=["pending_approval","approved","rejected"],Lr=["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 Dr=["installed","ready","disabled","error","upgrade_pending","uninstalled"],Ur=["connector","workspace","automation","ui"],jr=["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 No=["companies","projects","goals","agents","issues","issue_documents","issue_relations","issue_comments","heartbeat_runs","cost_events","approvals","issue_approvals","budget_incidents"],Mo=["GET","POST","PATCH","DELETE"],Lo=["board","agent","board-or-agent","webhook"],Do=["none","required-for-agent-in-progress","always-for-agent"],Fr=["page","detailTab","taskDetailView","dashboardWidget","sidebar","routeSidebar","sidebarPanel","projectSidebarItem","globalToolbarButton","toolbarButton","contextMenuItem","commentAnnotation","commentContextMenuItem","settingsPage","companySettingsPage"],Uo=50,jo=100;var hd=["dashboard","onboarding","companies","company","settings","plugins","org","agents","projects","issues","goals","approvals","costs","activity","inbox","workspaces","design-guide","tests"],qr=["general","environments","access","members","invites","secrets","instance"],Fo=["page","detailTab","taskDetailView","dashboardWidget","sidebar","sidebarPanel","projectSidebarItem","globalToolbarButton","toolbarButton","contextMenuItem","commentAnnotation","commentContextMenuItem","settingsPage"],qo=["navigate","openModal","openDrawer","openPopover","performAction","deepLink"],Bo=["inline","compact","default","wide","full"],$o=["hostInline","hostOverlay","hostRoute","external","iframe"],Dn=["project","issue","agent","goal","run","comment","execution_workspace","project_workspace"],dn=["instance","company","project","project_workspace","agent","issue","goal","run"];var Vo=n.string().trim().min(1).default("process").describe(`Known built-in adapters: ${Nn.join(", ")}. External adapters may register additional non-empty string types at runtime.`),Ko=n.string().trim().min(1).optional();var Br=["standard","low_trust_review"];var Un="low_trust_review";var $r="quarantine";function pn(e){let t=e?.trim();return t||void 0}function Ho(e){let t=pn(e)?.toLowerCase();return t==="127.0.0.1"||t==="localhost"||t==="::1"}function Wo(e){let t=pn(e)?.toLowerCase();return t==="0.0.0.0"||t==="::"}function yd(e,t){let r=pn(e),i=pn(t?.tailnetBindHost);return!r||Ho(r)?"loopback":Wo(r)?"lan":i&&r===i?"tailnet":"custom"}function zo(e){let t=e.bind??yd(e.host),r=pn(e.customBindHost),i=[];if(e.deploymentMode==="local_trusted"&&t!=="loopback"&&i.push("local_trusted requires server.bind=loopback"),t==="custom"&&!r){let s=pn(e.host);(!s||Ho(s)||Wo(s))&&i.push("server.customBindHost is required when server.bind=custom")}return e.deploymentMode==="authenticated"&&e.deploymentExposure==="public"&&t==="tailnet"&&i.push("server.bind=tailnet is only supported for authenticated/private deployments"),i}var Vr=[3,7,14],Kr=[1,2,4],Hr=[1,3,6],Wr=24,jn=1,Fn=720,Rt={dailyDays:7,weeklyWeeks:4,monthlyMonths:1};var zr=["all","issues","comments","documents","artifacts","agents","projects"];var Gr=["joined","left"];var Sd=n.string().uuid(),bd=n.object({orderedIds:n.array(Sd),updatedAt:n.coerce.date().nullable()}),Id=n.object({orderedIds:n.array(Sd)});var Yo=n.enum(Gr),vd=n.object({state:Yo.optional(),starred:n.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 Yr=n.enum(["active","idle","in_review","archived","cleanup_failed"]),xI=n.preprocess(e=>{if(e==null)return;let r=(Array.isArray(e)?e:[e]).flatMap(i=>typeof i!="string"?[]:i.split(",").map(s=>s.trim()).filter(Boolean));return r.length>0?r:void 0},n.array(Yr).optional()),kd=n.object({projectId:n.string().uuid().optional(),status:xI,limit:n.coerce.number().int().min(1).max(jo).optional().default(Uo),offset:n.coerce.number().int().min(0).optional().default(0)}).strict(),Ed=n.object({environmentId:n.string().uuid().optional().nullable(),provisionCommand:n.string().optional().nullable(),teardownCommand:n.string().optional().nullable(),cleanupCommand:n.string().optional().nullable(),workspaceRuntime:n.record(n.string(),n.unknown()).optional().nullable(),desiredState:n.enum(["running","stopped","manual"]).optional().nullable(),serviceStates:n.record(n.enum(["running","stopped","manual"])).optional().nullable()}).strict(),RI=n.object({workspaceCommandId:n.string().min(1).optional().nullable(),runtimeServiceId:n.string().uuid().optional().nullable(),serviceIndex:n.number().int().nonnegative().optional().nullable()}).strict(),Zo=n.enum(["ready","ready_with_warnings","blocked"]),Jo=n.enum(["archive_record","stop_runtime_services","cleanup_command","teardown_command","git_worktree_remove","git_branch_delete","remove_local_directory"]),Xo=n.object({kind:Jo,label:n.string(),description:n.string(),command:n.string().nullable()}).strict(),Qo=n.object({id:n.string().uuid(),identifier:n.string().nullable(),title:n.string(),status:n.string(),isTerminal:n.boolean()}).strict(),ea=n.object({repoRoot:n.string().nullable(),workspacePath:n.string().nullable(),branchName:n.string().nullable(),baseRef:n.string().nullable(),hasDirtyTrackedFiles:n.boolean(),hasUntrackedFiles:n.boolean(),dirtyEntryCount:n.number().int().nonnegative(),untrackedEntryCount:n.number().int().nonnegative(),aheadCount:n.number().int().nonnegative().nullable(),behindCount:n.number().int().nonnegative().nullable(),isMergedIntoBase:n.boolean().nullable(),createdByRuntime:n.boolean()}).strict(),CI=n.object({id:n.string(),companyId:n.string().uuid(),projectId:n.string().uuid().nullable(),projectWorkspaceId:n.string().uuid().nullable(),executionWorkspaceId:n.string().uuid().nullable(),issueId:n.string().uuid().nullable(),scopeType:n.enum(["project_workspace","execution_workspace","run","agent"]),scopeId:n.string().nullable(),serviceName:n.string(),status:n.enum(["starting","running","stopped","failed"]),lifecycle:n.enum(["shared","ephemeral"]),reuseKey:n.string().nullable(),command:n.string().nullable(),cwd:n.string().nullable(),port:n.number().int().nullable(),url:n.string().nullable(),provider:n.enum(["local_process","adapter_managed"]),providerRef:n.string().nullable(),ownerAgentId:n.string().uuid().nullable(),startedByRunId:n.string().uuid().nullable(),lastUsedAt:n.coerce.date(),startedAt:n.coerce.date(),stoppedAt:n.coerce.date().nullable(),stopPolicy:n.record(n.string(),n.unknown()).nullable(),healthStatus:n.enum(["unknown","healthy","unhealthy"]),configIndex:n.number().int().nonnegative().nullable().optional(),createdAt:n.coerce.date(),updatedAt:n.coerce.date()}).strict(),_d=n.object({workspaceId:n.string().uuid(),state:Zo,blockingReasons:n.array(n.string()),warnings:n.array(n.string()),linkedIssues:n.array(Qo),plannedActions:n.array(Xo),isDestructiveCloseAllowed:n.boolean(),isSharedWorkspace:n.boolean(),isProjectPrimaryWorkspace:n.boolean(),git:ea.nullable(),runtimeServices:n.array(CI)}).strict(),Ad=n.object({name:n.string().min(1).optional(),cwd:n.string().optional().nullable(),repoUrl:n.string().optional().nullable(),baseRef:n.string().optional().nullable(),branchName:n.string().optional().nullable(),providerRef:n.string().optional().nullable(),status:Yr.optional(),cleanupEligibleAt:n.string().datetime().optional().nullable(),cleanupReason:n.string().optional().nullable(),config:Ed.optional().nullable(),metadata:n.record(n.string(),n.unknown()).optional().nullable()}).strict();var ta=["issue_comment","issue_document_revision"],na=["up","down"],ra=["allowed","not_allowed","prompt"],ia="prompt",sa=["local_only","pending","sent","failed"];var oa=n.enum(ta),wd=n.enum(sa),aa=n.enum(na),ca=n.enum(ra),Td=n.object({targetType:oa,targetId:n.string().uuid(),vote:aa,reason:n.string().trim().max(1e3).optional(),allowSharing:n.boolean().optional()});function la(e,t){return n.number().refine(r=>e.includes(r),{message:`${t} must be one of: ${e.join(", ")}`})}var OI=n.object({dailyDays:la(Vr,"dailyDays").default(Rt.dailyDays),weeklyWeeks:la(Kr,"weeklyWeeks").default(Rt.weeklyWeeks),monthlyMonths:la(Hr,"monthlyMonths").default(Rt.monthlyMonths)}),Zr=n.object({censorUsernameInLogs:n.boolean().default(!1),keyboardShortcuts:n.boolean().default(!1),feedbackDataSharingPreference:ca.default(ia),backupRetention:OI.default(Rt),executionMode:n.enum(["kubernetes","any"]).optional()}).strict(),xd=Zr.partial(),Jr=n.object({enableEnvironments:n.boolean().default(!1),enableIsolatedWorkspaces:n.boolean().default(!1),enableStreamlinedLeftNavigation:n.boolean().default(!0),enablePipelines:n.boolean().default(!1),enableConferenceRoomChat:n.boolean().default(!1),enableTaskWatchdogs:n.boolean().default(!1),enableIssuePlanDecompositions:n.boolean().default(!1),enableExperimentalFileViewer:n.boolean().default(!1),enableCloudSync:n.boolean().default(!1),enableExternalObjects:n.boolean().default(!1),enableServerInfoDebugView:n.boolean().default(!1),autoRestartDevServerWhenIdle:n.boolean().default(!1),enableIssueGraphLivenessAutoRecovery:n.boolean().default(!1),enableWorkspaceBranchReconcileForward:n.boolean().default(!1),issueGraphLivenessAutoRecoveryLookbackHours:n.number().int().min(jn).max(Fn).default(Wr)}).strict(),Rd=Jr.partial(),Cd=n.object({defaultEnvironmentId:n.string().uuid().nullable().optional()}).strict(),Od=n.object({lookbackHours:n.number().int().min(jn).max(Fn).optional()}).strict(),Pd=n.object({id:n.string().uuid(),defaultEnvironmentId:n.string().uuid().nullable(),general:Zr,experimental:Jr,createdAt:n.union([n.date(),n.string().datetime()]),updatedAt:n.union([n.date(),n.string().datetime()])}).strict();var Nd=n.object({scopeType:n.enum(To),scopeId:n.string().uuid(),metric:n.enum(xo).optional().default("billed_cents"),windowKind:n.enum(Ro).optional().default("calendar_month_utc"),amount:n.number().int().nonnegative(),warnPercent:n.number().int().min(1).max(99).optional().default(80),hardStopEnabled:n.boolean().optional().default(!0),notifyEnabled:n.boolean().optional().default(!0),isActive:n.boolean().optional().default(!0)}),Md=n.object({action:n.enum(Co),amount:n.number().int().nonnegative().optional(),decisionNote:n.string().optional().nullable()}).superRefine((e,t)=>{e.action==="raise_budget_and_resume"&&typeof e.amount!="number"&&t.addIssue({code:n.ZodIssueCode.custom,message:"amount is required when raising a budget",path:["amount"]})});var Ld=n.string().uuid().nullable().optional(),Dd=n.string().regex(/^#[0-9a-fA-F]{6}$/).nullable().optional(),PI=n.string().min(1).nullable().optional(),Ud=n.number().int().min(1).max(1073741824),ua=n.object({name:n.string().min(1),description:n.string().optional().nullable(),budgetMonthlyCents:n.number().int().nonnegative().optional().default(0),attachmentMaxBytes:Ud.optional(),defaultResponsibleUserId:n.string().min(1).nullable().optional()}),jd=ua.partial().extend({status:n.enum(vs).optional(),spentMonthlyCents:n.number().int().nonnegative().optional(),requireBoardApprovalForNewAgents:n.boolean().optional(),feedbackDataSharingEnabled:n.boolean().optional(),feedbackDataSharingConsentAt:n.coerce.date().nullable().optional(),feedbackDataSharingConsentByUserId:n.string().min(1).nullable().optional(),feedbackDataSharingTermsVersion:PI,brandColor:Dd,logoAssetId:Ld,attachmentMaxBytes:Ud.optional()}),Fd=n.object({name:n.string().min(1).optional(),description:n.string().nullable().optional(),brandColor:Dd,logoAssetId:Ld}).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 mn=n.string().trim().min(1).max(120).regex(/^[a-zA-Z0-9_.-]+$/),Qr=n.union([n.literal("latest"),n.number().int().positive()]),NI=n.enum(["active","disabled","archived"]),da=n.object({type:n.literal("plain"),value:n.string()}),pa=n.object({type:n.literal("secret_ref"),secretId:n.string().uuid(),version:Qr.optional()}),ma=n.object({type:n.literal("user_secret_ref"),key:mn,version:Qr.optional(),required:n.boolean().optional().default(!0),allowMissingOverride:n.boolean().optional().default(!1)}),ga=n.union([n.string(),da,pa,ma]),de=n.record(n.string(),ga),qd=n.object({name:n.string().min(1),key:mn.optional(),provider:n.enum(et).optional(),providerConfigId:n.string().uuid().optional().nullable(),managedMode:n.enum(vo).optional(),value:n.string().min(1).optional().nullable(),description:n.string().optional().nullable(),externalRef:n.string().optional().nullable(),providerMetadata:n.record(n.string(),n.unknown()).optional().nullable(),providerVersionRef:n.string().optional().nullable()}).superRefine((e,t)=>{if((e.managedMode??"paperclip_managed")==="external_reference"){e.externalRef?.trim()||t.addIssue({code:n.ZodIssueCode.custom,path:["externalRef"],message:"External reference secrets require externalRef"});return}e.externalRef?.trim()&&t.addIssue({code:n.ZodIssueCode.custom,path:["externalRef"],message:"Managed secrets cannot set externalRef"}),e.value?.trim()||t.addIssue({code:n.ZodIssueCode.custom,path:["value"],message:"Managed secrets require value"})});function Bd(e,t){!e.value?.trim()&&!e.externalRef?.trim()&&e.providerVersionRef==null&&e.providerConfigId==null&&t.addIssue({code:n.ZodIssueCode.custom,path:["value"],message:"Secret rotation requires value, externalRef, providerVersionRef, or providerConfigId"})}var $d=n.object({value:n.string().min(1).optional().nullable(),externalRef:n.string().optional().nullable(),providerVersionRef:n.string().optional().nullable(),providerConfigId:n.string().uuid().optional().nullable()}).superRefine(Bd),Vd=n.object({name:n.string().min(1).optional(),key:mn.optional(),status:n.enum(Nr).optional(),providerConfigId:n.string().uuid().optional().nullable(),description:n.string().optional().nullable(),externalRef:n.string().optional().nullable(),providerMetadata:n.record(n.string(),n.unknown()).optional().nullable()}),ei=n.object({targetType:n.enum(fd),targetId:n.string().min(1),configPath:n.string().min(1)}),Kd=ei.extend({secretId:n.string().uuid(),versionSelector:Qr.default("latest"),required:n.boolean().default(!0),label:n.string().optional().nullable()}),Hd=n.object({key:mn,name:n.string().trim().min(1).max(160),description:n.string().trim().max(500).optional().nullable(),status:NI.optional(),provider:n.enum(et).optional(),providerConfigId:n.string().uuid().optional().nullable(),managedMode:n.enum(vo).optional(),providerMetadata:n.record(n.string(),n.unknown()).optional().nullable(),usageGuidance:n.string().trim().max(1e3).optional().nullable()}),Wd=n.object({name:n.string().trim().min(1).max(160).optional(),description:n.string().trim().max(500).optional().nullable(),status:n.enum(Nr).optional(),providerConfigId:n.string().uuid().optional().nullable(),providerMetadata:n.record(n.string(),n.unknown()).optional().nullable(),usageGuidance:n.string().trim().max(1e3).optional().nullable()}),zd=n.object({definitionKey:mn.optional(),definitionId:n.string().uuid().optional(),value:n.string().min(1).optional().nullable(),externalRef:n.string().optional().nullable(),providerVersionRef:n.string().optional().nullable(),providerConfigId:n.string().uuid().optional().nullable()}).superRefine((e,t)=>{!e.definitionKey&&!e.definitionId&&t.addIssue({code:n.ZodIssueCode.custom,path:["definitionId"],message:"User secret value requires definitionId or definitionKey"}),!e.value?.trim()&&!e.externalRef?.trim()&&t.addIssue({code:n.ZodIssueCode.custom,path:["value"],message:"User secret value requires value or externalRef"})}),Gd=n.object({status:n.enum(Nr).optional(),value:n.string().min(1).optional().nullable(),externalRef:n.string().min(1).optional().nullable(),providerVersionRef:n.string().min(1).optional().nullable(),providerConfigId:n.string().uuid().optional().nullable()}),Yd=n.object({value:n.string().min(1).optional().nullable(),externalRef:n.string().min(1).optional().nullable(),providerVersionRef:n.string().min(1).optional().nullable(),providerConfigId:n.string().uuid().optional().nullable()}).superRefine(Bd),Zd=ei.extend({definitionKey:mn,envKey:n.string().trim().min(1),versionSelector:Qr.default("latest"),required:n.boolean().default(!0),allowMissingOverride:n.boolean().default(!1),label:n.string().optional().nullable()}),MI=n.string().trim().min(1).max(160),Pe=MI.optional().nullable(),LI=/^(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 fa(e,t){if(!(!e||typeof e!="object"||Array.isArray(e)))for(let r of Object.keys(e))LI.test(r)&&t.addIssue({code:n.ZodIssueCode.custom,path:["config",r],message:`Provider vault config cannot persist sensitive field: ${r}`})}var ha=n.object({backupReminderAcknowledged:n.boolean().optional()}).strict(),ya=n.object({region:n.string().trim().regex(/^[a-z]{2}(?:-gov)?-[a-z]+-\d+$/,"Invalid AWS region"),namespace:Pe,secretNamePrefix:Pe,kmsKeyId:n.string().trim().min(1).max(512).optional().nullable(),ownerTag:Pe,environmentTag:Pe}).strict(),Sa=n.object({projectId:n.string().trim().min(1).max(128).regex(/^[a-z][a-z0-9-]{4,127}$/).optional().nullable(),location:Pe,namespace:Pe,secretNamePrefix:Pe}).strict(),Jd=n.preprocess(e=>typeof e=="string"?e.trim():e,n.string().url().superRefine((e,t)=>{let r;try{r=new URL(e)}catch{return}let i=r.pathname!==""&&r.pathname!=="/";(r.protocol!=="http:"&&r.protocol!=="https:"||r.username||r.password||r.search||r.hash||i)&&t.addIssue({code:n.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 DI(e,t){if(e==null)return;let r=Jd.safeParse(e);if(!r.success)for(let i of r.error.issues)t.addIssue({...i,path:["config","address",...i.path]})}var ba=n.object({address:Jd.optional().nullable(),namespace:Pe,mountPath:Pe,secretPathPrefix:Pe}).strict(),ti=n.discriminatedUnion("provider",[n.object({provider:n.literal("local_encrypted"),config:ha}),n.object({provider:n.literal("aws_secrets_manager"),config:ya}),n.object({provider:n.literal("gcp_secret_manager"),config:Sa}),n.object({provider:n.literal("vault"),config:ba})]),Xd=n.object({provider:n.enum(et),displayName:n.string().trim().min(1).max(120),status:n.enum(Pr).optional(),isDefault:n.boolean().optional(),config:n.record(n.string(),n.unknown()).default({})}).superRefine((e,t)=>{fa(e.config,t);let r=ti.safeParse({provider:e.provider,config:e.config});if(!r.success)for(let s of r.error.issues)t.addIssue({...s,path:s.path[0]==="config"?s.path:["config",...s.path]});let i=e.status??(["gcp_secret_manager","vault"].includes(e.provider)?"coming_soon":"ready");(e.provider==="gcp_secret_manager"||e.provider==="vault")&&i!=="coming_soon"&&i!=="disabled"&&t.addIssue({code:n.ZodIssueCode.custom,path:["status"],message:`${e.provider} provider vaults are locked while coming soon`}),(i==="coming_soon"||i==="disabled")&&e.isDefault&&t.addIssue({code:n.ZodIssueCode.custom,path:["isDefault"],message:"Only ready or warning provider vaults can be default"})}),Qd=n.object({displayName:n.string().trim().min(1).max(120).optional(),status:n.enum(Pr).optional(),isDefault:n.boolean().optional(),config:n.record(n.string(),n.unknown()).optional()}).superRefine((e,t)=>{e.config!==void 0&&(fa(e.config,t),DI(e.config.address,t)),(e.status==="coming_soon"||e.status==="disabled")&&e.isDefault&&t.addIssue({code:n.ZodIssueCode.custom,path:["isDefault"],message:"Only ready or warning provider vaults can be default"})}),ep=n.object({providerConfigId:n.string().uuid(),query:n.string().trim().max(200).optional().nullable(),nextToken:n.string().trim().min(1).max(4096).optional().nullable(),pageSize:n.number().int().min(1).max(100).optional()}),tp=n.object({provider:n.enum(et),config:n.record(n.unknown()).default({}),query:n.string().trim().max(200).optional().nullable(),nextToken:n.string().trim().min(1).max(4096).optional().nullable(),pageSize:n.number().int().min(1).max(100).optional()}).superRefine((e,t)=>{fa(e.config,t);let r=ti.safeParse({provider:e.provider,config:e.config});if(!r.success)for(let i of r.error.issues)t.addIssue({...i,path:i.path[0]==="config"?i.path:["config",...i.path]})}),Ia=n.object({externalRef:n.string().trim().min(1).max(2048),name:n.string().trim().min(1).max(160).optional().nullable(),key:n.string().trim().min(1).max(120).regex(/^[a-zA-Z0-9_.-]+$/).optional().nullable(),description:n.string().trim().max(500).optional().nullable(),providerVersionRef:n.string().trim().min(1).max(512).optional().nullable(),providerMetadata:n.record(n.string(),n.unknown()).optional().nullable()}),np=n.object({providerConfigId:n.string().uuid(),secrets:n.array(Ia).min(1).max(100)});var qn=n.enum(uo),ni=n.enum(po),rp=n.enum(mo),ip=n.enum(go),UI={name:n.string().min(1),description:n.string().optional().nullable(),driver:qn,status:ni.optional().default("active"),config:n.record(n.string(),n.unknown()).optional().default({}),envVars:de.optional().default({}),metadata:n.record(n.string(),n.unknown()).optional().nullable()},sp=n.object(UI).strict(),op=n.object({name:n.string().min(1).optional(),description:n.string().optional().nullable(),driver:qn.optional(),status:ni.optional(),config:n.record(n.string(),n.unknown()).optional(),envVars:de.optional(),metadata:n.record(n.string(),n.unknown()).optional().nullable()}).strict(),ap=n.object({name:n.string().min(1).optional(),description:n.string().optional().nullable(),driver:qn,config:n.record(n.string(),n.unknown()).optional().default({}),envVars:de.optional().default({}),metadata:n.record(n.string(),n.unknown()).optional().nullable()}).strict();var He=n.union([n.date(),n.string().datetime()]),cp=n.string().min(1).max(200),lp=n.record(n.string(),n.unknown()).optional().nullable(),va=n.enum(fo),ka=n.enum(ho),Ea=n.enum(yo),_a=n.enum(So),Aa=n.object({type:_a,username:n.string().min(1).max(200).optional().nullable(),hostRedacted:n.literal(!0).optional().default(!0),portRedacted:n.literal(!0).optional().default(!0),label:n.string().min(1).max(200).optional().nullable(),instructions:n.string().min(1).max(1e3).optional().nullable()}).strict(),up=n.object({id:n.string().uuid(),environmentId:n.string().uuid(),provider:cp,templateKind:va,templateRef:n.string().min(1).nullable(),sourceTemplateRef:n.string().min(1).nullable(),sourceEnvironmentConfigFingerprint:n.string().min(1).nullable(),status:ka,createdByUserId:n.string().min(1).nullable(),createdByAgentId:n.string().uuid().nullable(),capturedAt:He.nullable(),lastUsedAt:He.nullable(),supersededByTemplateId:n.string().uuid().nullable(),metadata:lp,createdAt:He,updatedAt:He}).strict(),dp=n.object({id:n.string().uuid(),environmentId:n.string().uuid(),templateId:n.string().uuid().nullable(),promotedTemplateId:n.string().uuid().nullable(),provider:cp,providerLeaseId:n.string().min(1).nullable(),environmentLeaseId:n.string().uuid().nullable(),status:Ea,startedByUserId:n.string().min(1).nullable(),startedByAgentId:n.string().uuid().nullable(),baseTemplateRef:n.string().min(1).nullable(),expiresAt:He.nullable(),finishedAt:He.nullable(),failureReason:n.string().min(1).nullable(),connectionSummary:Aa.nullable(),connectionSecretRef:n.string().min(1).nullable(),metadata:lp,createdAt:He,updatedAt:He}).strict(),pp=n.object({templateId:n.string().uuid().optional().nullable(),ttlSeconds:n.number().int().min(60).max(1440*60).optional()}).strict(),mp=n.object({metadata:n.record(n.string(),n.unknown()).optional()}).strict(),gp=n.object({reason:n.string().min(1).max(1e3).optional()}).strict(),fp=n.object({}).strict().default({}),hp=n.object({id:n.string().min(1),token:n.string().min(32),expiresAt:He,setupSessionId:n.string().min(1),environmentId:n.string().min(1),connectionType:n.literal("ssh"),websocketPath:n.string().min(1)}).strict();var yp=n.enum(Js),Sp=n.enum(Xs),bp=n.enum(Qs),wa=n.enum(eo),Ip=n.enum(to),ri=n.string().trim().min(1).max(80).regex(/^[a-z][a-z0-9_.-]*$/),ii=n.string().trim().min(1).max(80).regex(/^[a-z][a-z0-9_]*$/),vp=n.object({scheme:n.enum(["http","https"]),host:n.string().trim().min(1),path:n.string().trim().min(1),queryParamHashes:n.record(n.string().regex(/^[a-f0-9]{64}$/)).optional()}).strict(),kp=n.object({sourceKind:wa,documentKey:n.string().trim().min(1).optional().nullable(),propertyKey:n.string().trim().min(1).optional().nullable()}).strict();var Ta=n.enum(["local_path","github","url","catalog","skills_sh"]),si=n.enum(["markdown_only","assets","scripts_executables"]),oi=n.enum(["compatible","unknown","invalid"]),ai=n.enum(["paperclip","github","local","url","catalog","skills_sh"]),Ot=n.enum(["private","company","public_link"]),xa=n.enum(["alphabetical","recent","installs","stars","agents","forks"]),ci=n.object({path:n.string().min(1),kind:n.enum(["skill","markdown","reference","script","asset","other"])}),Ra=ci.extend({content:n.string()}),Ct=n.object({id:n.string().uuid(),companyId:n.string().uuid(),key:n.string().min(1),slug:n.string().min(1),name:n.string().min(1),description:n.string().nullable(),markdown:n.string(),sourceType:Ta,sourceLocator:n.string().nullable(),sourceRef:n.string().nullable(),trustLevel:si,compatibility:oi,fileInventory:n.array(ci).default([]),iconUrl:n.string().nullable(),color:n.string().nullable(),tagline:n.string().nullable(),authorName:n.string().nullable(),homepageUrl:n.string().nullable(),categories:n.array(n.string().min(1)).default([]),sharingScope:Ot,publicShareToken:n.string().nullable(),forkedFromSkillId:n.string().uuid().nullable(),forkedFromCompanyId:n.string().uuid().nullable(),starCount:n.number().int().nonnegative(),installCount:n.number().int().nonnegative(),forkCount:n.number().int().nonnegative(),currentVersionId:n.string().uuid().nullable(),metadata:n.record(n.string(),n.unknown()).nullable(),createdAt:n.coerce.date(),updatedAt:n.coerce.date()}),Ep=Ct.extend({attachedAgentCount:n.number().int().nonnegative(),editable:n.boolean(),editableReason:n.string().nullable(),sourceLabel:n.string().nullable(),sourceBadge:ai,catalogKind:n.enum(["bundled","optional"]).nullable(),originHash:n.string().nullable(),packageName:n.string().nullable(),packageVersion:n.string().nullable()}),Ca=n.object({id:n.string().uuid(),name:n.string().min(1),urlKey:n.string().min(1),adapterType:n.string().min(1),desired:n.boolean(),actualState:n.string().nullable().describe("Runtime adapter skill state when explicitly fetched; company skill detail reads return null without probing agent runtimes."),versionId:n.string().uuid().nullable()}),_p=n.object({q:n.string().min(1).optional(),sort:xa.optional(),categories:n.array(n.string().min(1)).optional(),scope:Ot.optional()}),Ap=n.object({slug:n.string().min(1),count:n.number().int().nonnegative()}),Oa=n.object({id:n.string().uuid(),companyId:n.string().uuid(),companySkillId:n.string().uuid(),revisionNumber:n.number().int().positive(),label:n.string().nullable(),fileInventory:n.array(Ra).default([]),authorAgentId:n.string().uuid().nullable(),authorUserId:n.string().nullable(),createdAt:n.coerce.date()}),wp=Ct.extend({attachedAgentCount:n.number().int().nonnegative(),usedByAgents:n.array(Ca).default([]),editable:n.boolean(),editableReason:n.string().nullable(),sourceLabel:n.string().nullable(),sourceBadge:ai,currentVersion:Oa.nullable(),starredByCurrentActor:n.boolean()}),Tp=n.object({label:n.string().trim().min(1).nullable().optional()}).default({}),xp=n.object({skillId:n.string().uuid(),starred:n.boolean(),starCount:n.number().int().nonnegative()}),Rp=n.object({id:n.string().uuid(),companyId:n.string().uuid(),companySkillId:n.string().uuid(),parentCommentId:n.string().uuid().nullable(),authorAgentId:n.string().uuid().nullable(),authorUserId:n.string().nullable(),body:n.string(),deletedAt:n.coerce.date().nullable(),createdAt:n.coerce.date(),updatedAt:n.coerce.date()}),Cp=n.object({body:n.string().min(1),parentCommentId:n.string().uuid().nullable().optional()}),Op=n.object({body:n.string().min(1)}),Pp=n.object({name:n.string().min(1).nullable().optional(),slug:n.string().min(1).nullable().optional(),sharingScope:Ot.optional()}).default({}),Np=n.object({description:n.string().nullable().optional(),iconUrl:n.string().nullable().optional(),color:n.string().nullable().optional(),tagline:n.string().max(120).nullable().optional(),authorName:n.string().nullable().optional(),homepageUrl:n.string().nullable().optional(),categories:n.array(n.string().min(1)).optional(),sharingScope:Ot.optional()}).default({}),Mp=n.object({supported:n.boolean(),reason:n.string().nullable(),trackingRef:n.string().nullable(),currentRef:n.string().nullable(),latestRef:n.string().nullable(),hasUpdate:n.boolean(),installedHash:n.string().nullable(),originHash:n.string().nullable(),userModifiedAt:n.string().nullable(),updateHoldReason:n.enum(["local_modifications","audit_hard_stop","origin_unavailable","compatibility_invalid","operator_hold"]).nullable(),auditVerdict:n.enum(["pass","warning","fail"]).nullable(),auditCodes:n.array(n.string())}),Pa=n.object({code:n.string().min(1),severity:n.enum(["warning","error"]),message:n.string().min(1),path:n.string().nullable()}),Lp=n.object({skillId:n.string().uuid(),installedHash:n.string().nullable(),originHash:n.string().nullable(),verdict:n.enum(["pass","warning","fail"]),codes:n.array(n.string()),findings:n.array(Pa),scannedAt:n.string().min(1),scanVersion:n.string().min(1)}),Dp=n.object({force:n.boolean().optional()}).default({}),Up=n.object({force:n.boolean().optional()}).default({}),jp=n.object({source:n.string().min(1)}),Fp=n.object({projectIds:n.array(n.string().uuid()).optional(),workspaceIds:n.array(n.string().uuid()).optional()}),Na=n.object({projectId:n.string().uuid(),projectName:n.string().min(1),workspaceId:n.string().uuid().nullable(),workspaceName:n.string().nullable(),path:n.string().nullable(),reason:n.string().min(1)}),Ma=n.object({slug:n.string().min(1),key:n.string().min(1),projectId:n.string().uuid(),projectName:n.string().min(1),workspaceId:n.string().uuid(),workspaceName:n.string().min(1),path:n.string().min(1),existingSkillId:n.string().uuid(),existingSkillKey:n.string().min(1),existingSourceLocator:n.string().nullable(),reason:n.string().min(1)}),qp=n.object({scannedProjects:n.number().int().nonnegative(),scannedWorkspaces:n.number().int().nonnegative(),discovered:n.number().int().nonnegative(),imported:n.array(Ct),updated:n.array(Ct),skipped:n.array(Na),conflicts:n.array(Ma),warnings:n.array(n.string())}),Bp=n.object({name:n.string().min(1),slug:n.string().min(1).nullable().optional(),description:n.string().nullable().optional(),markdown:n.string().nullable().optional(),iconUrl:n.string().nullable().optional(),color:n.string().nullable().optional(),tagline:n.string().max(120).nullable().optional(),authorName:n.string().nullable().optional(),homepageUrl:n.string().nullable().optional(),categories:n.array(n.string().min(1)).optional(),sharingScope:Ot.optional(),forkedFromSkillId:n.string().uuid().nullable().optional()}),$p=n.object({skillId:n.string().uuid(),path:n.string().min(1),kind:n.enum(["skill","markdown","reference","script","asset","other"]),content:n.string(),language:n.string().nullable(),markdown:n.boolean(),editable:n.boolean()}),Vp=n.object({path:n.string().min(1),content:n.string()}),li=n.enum(["bundled","optional"]),La=n.object({path:n.string().min(1),kind:n.enum(["skill","markdown","reference","script","asset","other"]),sizeBytes:n.number().int().nonnegative(),sha256:n.string().min(1)}),Da=n.object({type:n.literal("github"),hostname:n.string().min(1),owner:n.string().min(1),repo:n.string().min(1),ref:n.string().min(1),commit:n.string().regex(/^[0-9a-f]{40}$/i),path:n.string(),url:n.string().url()}),Ua=Da,ja=n.object({id:n.string().min(1),key:n.string().min(1),kind:li,category:n.string().min(1),slug:n.string().min(1),name:n.string().min(1),description:n.string(),path:n.string().min(1),entrypoint:n.literal("SKILL.md"),trustLevel:si,compatibility:oi,defaultInstall:n.boolean(),recommendedForRoles:n.array(n.string()),requires:n.array(n.string()),tags:n.array(n.string()),files:n.array(La),contentHash:n.string().min(1),source:Ua.optional(),packageName:n.string().min(1).optional(),packageVersion:n.string().min(1).optional()}),Kp=n.object({kind:li.optional(),category:n.string().min(1).optional(),q:n.string().min(1).optional()}),Hp=n.object({catalogSkillId:n.string().min(1),path:n.string().min(1),kind:n.enum(["skill","markdown","reference","script","asset","other"]),content:n.string(),language:n.string().nullable(),markdown:n.boolean()}),Wp=n.object({catalogSkillId:n.string().min(1),slug:n.string().min(1).nullable().optional(),force:n.boolean().optional()}),zp=n.object({action:n.enum(["created","updated","unchanged"]),skill:Ct,catalogSkill:ja,warnings:n.array(n.string())});function jI(e){return e.replace(/\\r\\n/g,`
|
|
2
|
-
`).replace(/\\n/g,`
|
|
3
|
-
`).replace(/\\r/g,`
|
|
4
|
-
`)}var H=n.string().transform(jI);var Pt=n.enum(Br),FI=n.object({type:n.literal("issue"),issueId:n.string().uuid()}).strict(),Fa=n.object({mode:n.literal(Un),companyId:n.string().uuid().optional(),projectIds:n.array(n.string().uuid()).optional(),rootIssueId:n.string().uuid().optional(),issueIds:n.array(n.string().uuid()).optional(),allowedAgentIds:n.array(n.string().uuid()).optional(),allowedSecretBindingIds:n.array(n.string().uuid()).optional(),allowedToolClasses:n.array(n.string().trim().min(1)).optional(),outputPromotionTarget:FI.optional()}).strict(),Bn=n.object({id:n.literal(Un),version:n.literal(1),rawOutputDisposition:n.literal($r)}).strict(),We=n.object({trustPreset:Pt.optional(),reviewPreset:Bn.optional(),trustBoundary:Fa.optional()}).catchall(n.unknown()),Gp=n.enum(["issue","comment","document","work_product"]),qI=n.object({preset:Pt,disposition:n.enum(["quarantined","promoted"]),sourceIssueId:n.string().uuid().nullable().optional(),sourceRunId:n.string().uuid().nullable().optional(),sourceAgentId:n.string().uuid().nullable().optional(),promotedFrom:n.object({artifactKind:Gp,artifactId:n.string().uuid(),issueId:n.string().uuid().nullable().optional()}).strict().nullable().optional(),promotedByActorType:n.enum(["agent","user","system"]).nullable().optional(),promotedByActorId:n.string().trim().min(1).nullable().optional(),promotedAt:n.string().datetime({offset:!0}).nullable().optional()}).strict();var qa=n.enum(["needs_attention","awaiting_decision","external_wait","recovery_open","missing_disposition"]),Ba=n.enum(["critical","high","medium","low"]),$a=n.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"]),$n=n.object({id:n.string().uuid(),identifier:n.string().nullable(),title:n.string(),status:n.enum(Mn),priority:n.enum(Oe),assigneeAgentId:n.string().uuid().nullable(),assigneeUserId:n.string().nullable()}).strict(),Zp=n.object({kind:n.literal("blocked"),state:qa,reason:$a,severity:Ba,stoppedSinceAt:n.string().datetime().nullable(),owner:n.object({type:n.enum(["agent","user","board","external","unknown"]),agentId:n.string().uuid().nullable(),userId:n.string().nullable(),label:n.string().nullable()}).strict(),action:n.object({label:n.string().trim().min(1),detail:n.string().nullable()}).strict(),sourceIssue:$n.nullable(),leafIssue:$n.nullable(),recoveryIssue:$n.nullable(),approvalId:n.string().uuid().nullable(),interactionId:n.string().uuid().nullable(),sampleIssueIdentifier:n.string().nullable(),redaction:n.object({externalDetailsRedacted:n.boolean(),secretFieldsOmitted:n.literal(!0)}).strict()}).strict(),Nt=["inherit","shared_workspace","isolated_workspace","operator_branch","reuse_existing","agent_default"],BI=n.object({type:n.enum(["project_primary","git_worktree","adapter_managed","cloud_sandbox"]).optional(),baseRef:n.string().optional().nullable(),branchTemplate:n.string().optional().nullable(),worktreeParentDir:n.string().optional().nullable(),provisionCommand:n.string().optional().nullable(),teardownCommand:n.string().optional().nullable()}).strict(),tt=n.object({mode:n.enum(Nt).optional(),environmentId:n.string().uuid().optional().nullable(),workspaceStrategy:BI.optional().nullable(),workspaceRuntime:n.record(n.string(),n.unknown()).optional().nullable()}).strict(),$I=n.object({modelProfile:n.enum(xs).optional(),adapterConfig:n.record(n.string(),n.unknown()).optional(),useProjectWorkspace:n.boolean().optional()}).strict(),Jp=n.object({type:n.enum(["agent","user"]),agentId:n.string().uuid().optional().nullable(),userId:n.string().optional().nullable()}),Yp=Jp.superRefine((e,t)=>{if(e.type==="agent"){e.agentId||t.addIssue({code:n.ZodIssueCode.custom,message:"Agent participants require agentId",path:["agentId"]}),e.userId&&t.addIssue({code:n.ZodIssueCode.custom,message:"Agent participants cannot set userId",path:["userId"]});return}e.userId||t.addIssue({code:n.ZodIssueCode.custom,message:"User participants require userId",path:["userId"]}),e.agentId&&t.addIssue({code:n.ZodIssueCode.custom,message:"User participants cannot set agentId",path:["agentId"]})}),VI=Jp.extend({id:n.string().uuid().optional()}).superRefine((e,t)=>{if(e.type==="agent"){e.agentId||t.addIssue({code:n.ZodIssueCode.custom,message:"Agent participants require agentId",path:["agentId"]}),e.userId&&t.addIssue({code:n.ZodIssueCode.custom,message:"Agent participants cannot set userId",path:["userId"]});return}e.userId||t.addIssue({code:n.ZodIssueCode.custom,message:"User participants require userId",path:["userId"]}),e.agentId&&t.addIssue({code:n.ZodIssueCode.custom,message:"User participants cannot set agentId",path:["agentId"]})}),KI=n.object({id:n.string().uuid().optional(),type:n.enum(xr),approvalsNeeded:n.literal(1).optional().default(1),participants:n.array(VI).default([])}),HI=n.object({nextCheckAt:n.string().datetime(),notes:n.string().max(500).optional().nullable().default(null),scheduledBy:n.enum(Rr).optional().default("assignee"),kind:n.enum(Cr).optional().nullable().default(null),serviceName:n.string().trim().min(1).max(120).optional().nullable().default(null),externalRef:n.string().trim().min(1).max(500).optional().nullable().default(null),timeoutAt:n.string().datetime().optional().nullable().default(null),maxAttempts:n.number().int().positive().max(100).optional().nullable().default(null),recoveryPolicy:n.enum(Or).optional().nullable().default(null)}),Va=n.object({mode:n.enum(no).optional().default("normal"),commentRequired:n.boolean().optional().default(!0),stages:n.array(KI).default([]),monitor:HI.optional().nullable(),reviewPreset:Bn.optional(),authorizationPolicy:We.optional()}),WI=n.object({status:n.enum(io),nextCheckAt:n.string().datetime().nullable(),lastTriggeredAt:n.string().datetime().nullable(),attemptCount:n.number().int().nonnegative().default(0),notes:n.string().max(500).nullable(),scheduledBy:n.enum(Rr).nullable(),kind:n.enum(Cr).nullable().optional().default(null),serviceName:n.string().trim().min(1).max(120).nullable().optional().default(null),externalRef:n.string().trim().min(1).max(500).nullable().optional().default(null),timeoutAt:n.string().datetime().nullable().optional().default(null),maxAttempts:n.number().int().positive().max(100).nullable().optional().default(null),recoveryPolicy:n.enum(Or).nullable().optional().default(null),clearedAt:n.string().datetime().nullable(),clearReason:n.enum(so).nullable()}),ui=n.object({instructions:n.string().trim().min(1).max(2e4)}).strict(),Xp=n.object({status:n.enum(ro),currentStageId:n.string().uuid().nullable(),currentStageIndex:n.number().int().nonnegative().nullable(),currentStageType:n.enum(xr).nullable(),currentParticipant:Yp.nullable(),returnAssignee:Yp.nullable(),reviewRequest:ui.nullable().optional().default(null),completedStageIds:n.array(n.string().uuid()).default([]),lastDecisionId:n.string().uuid().nullable(),lastDecisionOutcome:n.enum(oo).nullable(),monitor:WI.optional().nullable()}),zI=n.object({id:n.string().uuid(),companyId:n.string().uuid(),sourceIssueId:n.string().uuid(),recoveryIssueId:n.string().uuid().nullable(),kind:n.enum($s),status:n.enum(Vs),ownerType:n.enum(Ks),ownerAgentId:n.string().uuid().nullable(),ownerUserId:n.string().nullable(),previousOwnerAgentId:n.string().uuid().nullable(),returnOwnerAgentId:n.string().uuid().nullable(),cause:n.string().min(1),fingerprint:n.string().min(1),evidence:n.record(n.string(),n.unknown()),nextAction:n.string().min(1),wakePolicy:n.record(n.string(),n.unknown()).nullable(),monitorPolicy:n.record(n.string(),n.unknown()).nullable(),attemptCount:n.number().int().nonnegative(),maxAttempts:n.number().int().positive().nullable(),timeoutAt:n.union([n.date(),n.string().datetime()]).nullable(),lastAttemptAt:n.union([n.date(),n.string().datetime()]).nullable(),outcome:n.enum(Hs).nullable(),resolutionNote:n.string().nullable(),resolvedAt:n.union([n.date(),n.string().datetime()]).nullable(),createdAt:n.union([n.date(),n.string().datetime()]),updatedAt:n.union([n.date(),n.string().datetime()])}),GI=["restored","false_positive","blocked","cancelled"],Qp=n.object({actionId:n.string().uuid().optional(),outcome:n.enum(GI),sourceIssueStatus:n.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:n.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:n.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:n.ZodIssueCode.custom,message:"This recovery outcome requires sourceIssueStatus to be done or in_review",path:["sourceIssueStatus"]});return}}),em=n.number().int().nonnegative().transform(e=>Ds(e));function Ka(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 tm(e){return n.preprocess(t=>{if(!t||typeof t!="object"||Array.isArray(t))return t;let r=t;return r.status!==void 0?t:{...r,status:Ka(r).status}},e)}var Vn=n.object({projectId:n.string().uuid().optional().nullable(),projectWorkspaceId:n.string().uuid().optional().nullable(),goalId:n.string().uuid().optional().nullable(),parentId:n.string().uuid().optional().nullable(),blockedByIssueIds:n.array(n.string().uuid()).optional(),inheritExecutionWorkspaceFromIssueId:n.string().uuid().optional().nullable(),title:n.string().min(1),description:H.optional().nullable(),status:n.enum(Mn),workMode:n.enum(Tr).optional().default("standard"),priority:n.enum(Oe).optional().default("medium"),assigneeAgentId:n.string().uuid().optional().nullable(),assigneeUserId:n.string().optional().nullable(),requestDepth:em.optional().default(0),createdByUserId:n.string().optional().nullable(),responsibleUserId:n.string().optional().nullable(),billingCode:n.string().optional().nullable(),assigneeAdapterOverrides:$I.optional().nullable(),executionPolicy:Va.optional().nullable(),executionWorkspaceId:n.string().uuid().optional().nullable(),executionWorkspacePreference:n.enum(Nt).optional().nullable(),executionWorkspaceSettings:tt.optional().nullable(),labelIds:n.array(n.string().uuid()).optional(),watchdogDiscovery:n.object({kind:n.enum(qs),evidenceMarkdown:H.optional().nullable()}).strict().optional().nullable(),watchdog:n.object({agentId:n.string().uuid(),instructions:H.optional().nullable()}).strict().optional().nullable()}),nm=Vn.extend({status:Vn.shape.status.optional()}),rm=tm(Vn),im=n.object({agentId:n.string().uuid(),instructions:H.optional().nullable()}).strict(),Ha=tm(Vn.omit({parentId:!0,inheritExecutionWorkspaceFromIssueId:!0,watchdogDiscovery:!0}).extend({acceptanceCriteria:n.array(n.string().trim().min(1).max(500)).max(20).optional(),blockParentUntilDone:n.boolean().optional().default(!1)})),sm=n.object({acceptedPlanRevisionId:n.string().uuid(),children:n.array(Ha).min(1).max(25)}),om=n.object({name:n.string().trim().min(1).max(48),color:n.string().regex(/^#(?:[0-9a-fA-F]{6})$/,"Color must be a 6-digit hex value")}),am=Vn.omit({createdByUserId:!0,responsibleUserId:!0,watchdog:!0}).partial().extend({requestDepth:em.optional(),assigneeAgentId:n.string().trim().min(1).optional().nullable(),comment:H.pipe(n.string().min(1)).optional(),reviewRequest:ui.optional().nullable(),reopen:n.boolean().optional(),resume:n.boolean().optional(),interrupt:n.boolean().optional(),hiddenAt:n.string().datetime().nullable().optional()}),cm=n.object({agentId:n.string().uuid(),expectedStatuses:n.array(n.enum(Mn)).nonempty()}),lm=n.string().trim().min(1).max(120),um=n.string().trim().min(1).max(2e3),Kn=n.enum(Ps),Hn=n.object({kind:n.enum(Ns).default("message"),tone:n.enum(Ms).default("neutral"),title:n.string().trim().min(1).max(160).nullable().optional(),detailsDefaultOpen:n.boolean().optional().default(!1)}).strict(),fn=n.object({type:n.enum(Ls),label:lm.nullable().optional()}),YI=fn.extend({type:n.literal("text"),text:um}).strict(),ZI=fn.extend({type:n.literal("code"),code:n.string().min(1).max(4e3),language:n.string().trim().min(1).max(40).nullable().optional()}).strict(),JI=fn.extend({type:n.literal("key_value"),label:lm,value:um}).strict(),XI=fn.extend({type:n.literal("issue_link"),issueId:n.string().uuid().nullable().optional(),identifier:n.string().trim().min(1).max(80).nullable().optional(),title:n.string().trim().min(1).max(240).nullable().optional()}).strict(),QI=fn.extend({type:n.literal("agent_link"),agentId:n.string().uuid(),name:n.string().trim().min(1).max(160).nullable().optional()}).strict(),ev=fn.extend({type:n.literal("run_link"),runId:n.string().uuid(),title:n.string().trim().min(1).max(160).nullable().optional()}).strict(),Wa=n.discriminatedUnion("type",[YI,ZI,JI,XI,QI,ev]).superRefine((e,t)=>{e.type==="issue_link"&&!e.issueId&&!e.identifier&&t.addIssue({code:n.ZodIssueCode.custom,message:"Issue link rows require issueId or identifier",path:["issueId"]})}),za=n.object({title:n.string().trim().min(1).max(160).nullable().optional(),rows:n.array(Wa).min(1).max(50)}).strict(),Wn=n.object({version:n.literal(1),sourceRunId:n.string().uuid().nullable().optional(),sections:n.array(za).min(1).max(20)}).strict(),dm=n.object({body:H.pipe(n.string().min(1)),authorType:Kn.optional(),presentation:Hn.nullable().optional(),metadata:Wn.nullable().optional(),reopen:n.boolean().optional(),resume:n.boolean().optional(),interrupt:n.boolean().optional()}),pm=n.enum(js),mm=n.enum(Us),gn=n.enum(Fs),Ga=n.string().trim().min(1).max(64).regex(/^[a-z0-9][a-z0-9_-]*$/,"Document key must be lowercase letters, numbers, _ or -"),Ya=n.object({clientKey:n.string().trim().min(1).max(120),parentClientKey:n.string().trim().min(1).max(120).nullable().optional(),parentId:n.string().uuid().nullable().optional(),title:n.string().trim().min(1).max(240),description:H.pipe(n.string().trim().max(2e4)).nullable().optional(),priority:n.enum(Oe).nullable().optional(),workMode:n.enum(Tr).nullable().optional(),assigneeAgentId:n.string().uuid().nullable().optional(),assigneeUserId:n.string().trim().min(1).nullable().optional(),projectId:n.string().uuid().nullable().optional(),goalId:n.string().uuid().nullable().optional(),billingCode:n.string().trim().max(120).nullable().optional(),labels:n.array(n.string().trim().min(1).max(48)).max(20).optional(),hiddenInPreview:n.boolean().optional()}).superRefine((e,t)=>{e.assigneeAgentId&&e.assigneeUserId&&t.addIssue({code:n.ZodIssueCode.custom,message:"Suggested tasks can only target one assignee",path:["assigneeAgentId"]})}),Za=n.object({version:n.literal(1),defaultParentId:n.string().uuid().nullable().optional(),tasks:n.array(Ya).min(1).max(50)}).superRefine((e,t)=>{let r=new Set;for(let[i,s]of e.tasks.entries()){if(r.has(s.clientKey)){t.addIssue({code:n.ZodIssueCode.custom,message:"clientKey must be unique within one interaction",path:["tasks",i,"clientKey"]});continue}r.add(s.clientKey)}}),Ja=n.object({clientKey:n.string().trim().min(1).max(120),issueId:n.string().uuid(),identifier:n.string().trim().min(1).nullable().optional(),title:n.string().trim().min(1).nullable().optional(),parentIssueId:n.string().uuid().nullable().optional(),parentIdentifier:n.string().trim().min(1).nullable().optional()}),gm=n.object({version:n.literal(1),createdTasks:n.array(Ja).max(50).optional(),skippedClientKeys:n.array(n.string().trim().min(1).max(120)).max(50).optional(),rejectionReason:n.string().trim().max(4e3).nullable().optional()}),Xa=n.object({id:n.string().trim().min(1).max(120),label:n.string().trim().min(1).max(120),description:n.string().trim().max(500).nullable().optional()}),Qa=n.object({id:n.string().trim().min(1).max(120),prompt:n.string().trim().min(1).max(500),helpText:n.string().trim().max(1e3).nullable().optional(),selectionMode:n.enum(["single","multi"]),required:n.boolean().optional(),options:n.array(Xa).min(1).max(10)}),ec=n.object({version:n.literal(1),title:n.string().trim().max(240).nullable().optional(),submitLabel:n.string().trim().max(120).nullable().optional(),supersedeOnUserComment:n.boolean().optional(),questions:n.array(Qa).min(1).max(10)}).superRefine((e,t)=>{let r=new Set;for(let[i,s]of e.questions.entries()){r.has(s.id)&&t.addIssue({code:n.ZodIssueCode.custom,message:"Question ids must be unique within one interaction",path:["questions",i,"id"]}),r.add(s.id);let o=new Set;for(let[a,c]of s.options.entries())o.has(c.id)&&t.addIssue({code:n.ZodIssueCode.custom,message:"Option ids must be unique within one question",path:["questions",i,"options",a,"id"]}),o.add(c.id)}}),di=n.object({questionId:n.string().trim().min(1).max(120),optionIds:n.array(n.string().trim().min(1).max(120)).max(20),otherText:H.pipe(n.string().trim().max(4e3)).nullable().optional()}),fm=n.object({version:n.literal(1),answers:n.array(di).max(20),cancelled:n.literal(!0).optional(),cancellationReason:n.string().trim().max(4e3).nullable().optional(),expirationReason:n.literal("superseded_by_comment").optional(),commentId:n.string().uuid().nullable().optional(),summaryMarkdown:n.string().max(2e4).nullable().optional()}),tv=n.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"),hm=n.object({label:n.string().trim().min(1).max(120).nullable().optional(),href:tv.nullable().optional()}),tc=hm.extend({type:n.literal("issue_document"),issueId:n.string().uuid().nullable().optional(),documentId:n.string().uuid().nullable().optional(),key:Ga,revisionId:n.string().uuid(),revisionNumber:n.number().int().positive().nullable().optional()}),nc=hm.extend({type:n.literal("custom"),key:n.string().trim().min(1).max(120),revisionId:n.string().trim().min(1).max(255).nullable().optional(),revisionNumber:n.number().int().positive().nullable().optional()}),zn=n.discriminatedUnion("type",[tc,nc]),rc=n.object({version:n.literal(1),prompt:n.string().trim().min(1).max(1e3),acceptLabel:n.string().trim().min(1).max(80).nullable().optional(),rejectLabel:n.string().trim().min(1).max(80).nullable().optional(),rejectRequiresReason:n.boolean().optional(),rejectReasonLabel:n.string().trim().min(1).max(160).nullable().optional(),allowDeclineReason:n.boolean().optional().default(!0),declineReasonPlaceholder:n.string().trim().min(1).max(240).nullable().optional(),detailsMarkdown:n.string().max(2e4).nullable().optional(),supersedeOnUserComment:n.boolean().optional(),target:zn.nullable().optional()}),ic=n.object({id:n.string().trim().min(1).max(120),label:n.string().trim().min(1).max(120),description:n.string().trim().max(500).nullable().optional()}),sc=n.object({version:n.literal(1),prompt:n.string().trim().min(1).max(1e3),detailsMarkdown:n.string().max(2e4).nullable().optional(),options:n.array(ic).min(1).max(on),defaultSelectedOptionIds:n.array(n.string().trim().min(1).max(120)).max(on).optional().default([]),minSelected:n.number().int().min(0).optional().default(0),maxSelected:n.number().int().min(0).nullable().optional(),acceptLabel:n.string().trim().min(1).max(80).nullable().optional(),rejectLabel:n.string().trim().min(1).max(80).nullable().optional(),rejectRequiresReason:n.boolean().optional(),rejectReasonLabel:n.string().trim().min(1).max(160).nullable().optional(),allowDeclineReason:n.boolean().optional().default(!0),declineReasonPlaceholder:n.string().trim().min(1).max(240).nullable().optional(),supersedeOnUserComment:n.boolean().optional(),target:zn.nullable().optional()}).superRefine((e,t)=>{let r=new Set;for(let[o,a]of e.options.entries())r.has(a.id)&&t.addIssue({code:n.ZodIssueCode.custom,message:"Option ids must be unique within one checkbox confirmation",path:["options",o,"id"]}),r.add(a.id);let i=new Set;for(let[o,a]of e.defaultSelectedOptionIds.entries()){if(i.has(a)){t.addIssue({code:n.ZodIssueCode.custom,message:"defaultSelectedOptionIds must be unique",path:["defaultSelectedOptionIds",o]});continue}i.add(a),r.has(a)||t.addIssue({code:n.ZodIssueCode.custom,message:"defaultSelectedOptionIds must reference existing option ids",path:["defaultSelectedOptionIds",o]})}let s=e.maxSelected??null;e.minSelected>e.options.length&&t.addIssue({code:n.ZodIssueCode.custom,message:"minSelected cannot exceed the option count",path:["minSelected"]}),e.defaultSelectedOptionIds.length<e.minSelected&&t.addIssue({code:n.ZodIssueCode.custom,message:"defaultSelectedOptionIds must satisfy minSelected",path:["defaultSelectedOptionIds"]}),s!=null&&(s<e.minSelected&&t.addIssue({code:n.ZodIssueCode.custom,message:"maxSelected must be greater than or equal to minSelected",path:["maxSelected"]}),s>e.options.length&&t.addIssue({code:n.ZodIssueCode.custom,message:"maxSelected cannot exceed the option count",path:["maxSelected"]}),e.defaultSelectedOptionIds.length>s&&t.addIssue({code:n.ZodIssueCode.custom,message:"defaultSelectedOptionIds cannot exceed maxSelected",path:["defaultSelectedOptionIds"]}))}),oc=n.object({version:n.literal(1),outcome:n.enum(["accepted","rejected","superseded_by_comment","stale_target"]),reason:n.string().trim().max(4e3).nullable().optional(),commentId:n.string().uuid().nullable().optional(),staleTarget:zn.nullable().optional()}),ym=oc.extend({selectedOptionIds:n.array(n.string().trim().min(1).max(120)).max(on).optional()}).superRefine((e,t)=>{let r=e.selectedOptionIds??[],i=new Set;for(let[s,o]of r.entries())i.has(o)&&t.addIssue({code:n.ZodIssueCode.custom,message:"selectedOptionIds must be unique",path:["selectedOptionIds",s]}),i.add(o)}),Sm=n.discriminatedUnion("kind",[n.object({kind:n.literal("suggest_tasks"),idempotencyKey:n.string().trim().max(255).nullable().optional(),sourceCommentId:n.string().uuid().nullable().optional(),sourceRunId:n.string().uuid().nullable().optional(),title:n.string().trim().max(240).nullable().optional(),summary:n.string().trim().max(1e3).nullable().optional(),continuationPolicy:gn.optional().default("wake_assignee"),payload:Za}),n.object({kind:n.literal("ask_user_questions"),idempotencyKey:n.string().trim().max(255).nullable().optional(),sourceCommentId:n.string().uuid().nullable().optional(),sourceRunId:n.string().uuid().nullable().optional(),title:n.string().trim().max(240).nullable().optional(),summary:n.string().trim().max(1e3).nullable().optional(),continuationPolicy:gn.optional().default("wake_assignee"),payload:ec}),n.object({kind:n.literal("request_confirmation"),idempotencyKey:n.string().trim().max(255).nullable().optional(),sourceCommentId:n.string().uuid().nullable().optional(),sourceRunId:n.string().uuid().nullable().optional(),title:n.string().trim().max(240).nullable().optional(),summary:n.string().trim().max(1e3).nullable().optional(),continuationPolicy:gn.optional().default("none"),payload:rc}),n.object({kind:n.literal("request_checkbox_confirmation"),idempotencyKey:n.string().trim().max(255).nullable().optional(),sourceCommentId:n.string().uuid().nullable().optional(),sourceRunId:n.string().uuid().nullable().optional(),title:n.string().trim().max(240).nullable().optional(),summary:n.string().trim().max(1e3).nullable().optional(),continuationPolicy:gn.optional().default("wake_assignee"),payload:sc})]),bm=n.object({selectedClientKeys:n.array(n.string().trim().min(1).max(120)).min(1).max(50).optional(),selectedOptionIds:n.array(n.string().trim().min(1).max(120)).max(on).optional()}).superRefine((e,t)=>{let r=new Set;for(let[s,o]of(e.selectedClientKeys??[]).entries()){if(r.has(o)){t.addIssue({code:n.ZodIssueCode.custom,message:"selectedClientKeys must be unique",path:["selectedClientKeys",s]});continue}r.add(o)}let i=new Set;for(let[s,o]of(e.selectedOptionIds??[]).entries()){if(i.has(o)){t.addIssue({code:n.ZodIssueCode.custom,message:"selectedOptionIds must be unique",path:["selectedOptionIds",s]});continue}i.add(o)}}),Im=n.object({reason:n.string().trim().max(4e3).optional()}),vm=n.object({reason:n.string().trim().max(4e3).optional()}),km=n.object({answers:n.array(di).max(20),summaryMarkdown:H.pipe(n.string().max(2e4)).nullable().optional()}),Em=n.object({approvalId:n.string().uuid()}),_m=n.object({issueCommentId:n.string().uuid().optional().nullable()}),nv=["markdown"],ac=n.enum(nv),Am=n.object({title:n.string().trim().max(200).nullable().optional(),format:ac,body:H.pipe(n.string().max(524288)),changeSummary:n.string().trim().max(500).nullable().optional(),baseRevisionId:n.string().uuid().nullable().optional()}),wm=n.object({});var WO=new Intl.DateTimeFormat("en-US",{year:"numeric",month:"long",day:"numeric",hour:"numeric",minute:"2-digit",hour12:!0,timeZone:"UTC",timeZoneName:"short"});function cc(e){let t=/^(\d{4})-(\d{2})-(\d{2})$/.exec(e);if(!t)return!1;let r=Number(t[1]),i=Number(t[2]),s=Number(t[3]);if(i<1||i>12)return!1;let a=[31,r%4===0&&(r%100!==0||r%400===0)?29:28,31,30,31,30,31,31,30,31,30,31][i-1];return s>=1&&s<=a}var Tm=n.union([n.string(),n.number().finite(),n.boolean()]),nt=n.object({name:n.string().trim().regex(/^[A-Za-z][A-Za-z0-9_]*$/),label:n.string().trim().max(120).optional().nullable(),type:n.enum(bo).optional().default("text"),defaultValue:Tm.optional().nullable(),required:n.boolean().optional().default(!0),options:n.array(n.string().trim().min(1).max(120)).max(50).optional().default([])}).superRefine((e,t)=>{e.type==="select"&&e.options.length===0&&t.addIssue({code:n.ZodIssueCode.custom,path:["options"],message:"Select variables require at least one option"}),e.type!=="select"&&e.options.length>0&&t.addIssue({code:n.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:n.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"||!cc(e.defaultValue))&&t.addIssue({code:n.ZodIssueCode.custom,path:["defaultValue"],message:"Date variable defaults must be valid YYYY-MM-DD calendar dates"})}),uc=n.object({projectId:n.string().uuid().optional().nullable(),goalId:n.string().uuid().optional().nullable(),parentIssueId:n.string().uuid().optional().nullable(),title:n.string().trim().min(1).max(200),description:n.string().optional().nullable(),assigneeAgentId:n.string().uuid().optional().nullable(),priority:n.enum(Oe).optional().default("medium"),status:n.enum(an).optional().default("active"),concurrencyPolicy:n.enum(cn).optional().default("coalesce_if_active"),catchUpPolicy:n.enum(ln).optional().default("skip_missed"),variables:n.array(nt).optional().default([]),env:de.optional().nullable()}),xm=uc.partial().extend({baseRevisionId:n.string().uuid().optional().nullable()}),dc=n.object({id:n.string().uuid(),companyId:n.string().uuid(),projectId:n.string().uuid().nullable(),goalId:n.string().uuid().nullable(),parentIssueId:n.string().uuid().nullable(),title:n.string().trim().min(1).max(200),description:n.string().nullable(),assigneeAgentId:n.string().uuid().nullable(),priority:n.enum(Oe),status:n.enum(an),concurrencyPolicy:n.enum(cn),catchUpPolicy:n.enum(ln),variables:n.array(nt),env:de.nullable().default(null),responsibleUserId:n.string().nullable().default(null)}).strict(),pc=n.object({id:n.string().uuid(),kind:n.enum(Ln),label:n.string().nullable(),enabled:n.boolean(),cronExpression:n.string().nullable(),timezone:n.string().nullable(),publicId:n.string().nullable(),signingMode:n.enum(xt).nullable(),replayWindowSec:n.number().int().min(30).max(86400).nullable()}).strict(),Rm=n.object({version:n.literal(1),routine:dc,triggers:n.array(pc)}).strict();var lc=n.object({label:n.string().trim().max(120).optional().nullable(),enabled:n.boolean().optional().default(!0)}),Cm=n.discriminatedUnion("kind",[lc.extend({kind:n.literal("schedule"),cronExpression:n.string().trim().min(1),timezone:n.string().trim().min(1).default("UTC")}),lc.extend({kind:n.literal("webhook"),signingMode:n.enum(xt).optional().default("bearer"),replayWindowSec:n.number().int().min(30).max(86400).optional().default(300)}),lc.extend({kind:n.literal("api")})]),Om=n.object({label:n.string().trim().max(120).optional().nullable(),enabled:n.boolean().optional(),cronExpression:n.string().trim().min(1).optional().nullable(),timezone:n.string().trim().min(1).optional().nullable(),signingMode:n.enum(xt).optional().nullable(),replayWindowSec:n.number().int().min(30).max(86400).optional().nullable()}),Pm=n.object({triggerId:n.string().uuid().optional().nullable(),payload:n.record(n.string(),n.unknown()).optional().nullable(),variables:n.record(n.string(),Tm).optional().nullable(),projectId:n.string().uuid().optional().nullable(),projectWorkspaceId:n.string().uuid().optional().nullable(),assigneeAgentId:n.string().uuid().optional().nullable(),idempotencyKey:n.string().trim().max(255).optional().nullable(),source:n.enum(["manual","api"]).optional().default("manual"),executionWorkspaceId:n.string().uuid().optional().nullable(),executionWorkspacePreference:n.enum(Nt).optional().nullable(),executionWorkspaceSettings:tt.optional().nullable()}),Nm=n.object({});var hn=n.object({company:n.boolean().optional(),agents:n.boolean().optional(),projects:n.boolean().optional(),issues:n.boolean().optional(),skills:n.boolean().optional()}).partial(),mc=n.object({key:n.string().min(1),description:n.string().nullable(),agentSlug:n.string().min(1).nullable(),projectSlug:n.string().min(1).nullable(),kind:n.enum(["secret","plain"]),requirement:n.enum(["required","optional"]),defaultValue:n.string().nullable(),portability:n.enum(["portable","system_dependent"])}),rv=n.union([n.string(),n.object({encoding:n.literal("base64"),data:n.string(),contentType:n.string().min(1).optional().nullable()})]),gc=n.object({path:n.string().min(1),name:n.string().min(1),description:n.string().nullable(),brandColor:n.string().nullable(),logoPath:n.string().nullable(),attachmentMaxBytes:n.number().int().min(1).max(1073741824).nullable().default(null),requireBoardApprovalForNewAgents:n.boolean(),feedbackDataSharingEnabled:n.boolean().default(!1),feedbackDataSharingConsentAt:n.string().datetime().nullable().default(null),feedbackDataSharingConsentByUserId:n.string().nullable().default(null),feedbackDataSharingTermsVersion:n.string().nullable().default(null)}),pi=n.object({agents:n.array(n.string().min(1)).default([]),projects:n.array(n.string().min(1)).default([])}),fc=n.object({slug:n.string().min(1),name:n.string().min(1),path:n.string().min(1),skills:n.array(n.string().min(1)).default([]),role:n.string().min(1),title:n.string().nullable(),icon:n.string().nullable(),capabilities:n.string().nullable(),reportsToSlug:n.string().min(1).nullable(),adapterType:n.string().min(1),adapterConfig:n.record(n.string(),n.unknown()),runtimeConfig:n.record(n.string(),n.unknown()),permissions:n.record(n.string(),n.unknown()),budgetMonthlyCents:n.number().int().nonnegative(),metadata:n.record(n.string(),n.unknown()).nullable()}),Mm=n.object({key:n.string().min(1),slug:n.string().min(1),name:n.string().min(1),path:n.string().min(1),description:n.string().nullable(),sourceType:n.string().min(1),sourceLocator:n.string().nullable(),sourceRef:n.string().nullable(),trustLevel:n.string().nullable(),compatibility:n.string().nullable(),metadata:n.record(n.string(),n.unknown()).nullable(),fileInventory:n.array(n.object({path:n.string().min(1),kind:n.string().min(1)})).default([])}),iv=n.object({slug:n.string().min(1),name:n.string().min(1),path:n.string().min(1),description:n.string().nullable(),ownerAgentSlug:n.string().min(1).nullable(),leadAgentSlug:n.string().min(1).nullable(),targetDate:n.string().nullable(),color:n.string().nullable(),status:n.string().nullable(),executionWorkspacePolicy:n.record(n.string(),n.unknown()).nullable(),workspaces:n.array(n.object({key:n.string().min(1),name:n.string().min(1),sourceType:n.string().nullable(),repoUrl:n.string().nullable(),repoRef:n.string().nullable(),defaultRef:n.string().nullable(),visibility:n.string().nullable(),setupCommand:n.string().nullable(),cleanupCommand:n.string().nullable(),metadata:n.record(n.string(),n.unknown()).nullable(),isPrimary:n.boolean()})).default([]),metadata:n.record(n.string(),n.unknown()).nullable()}),sv=n.object({kind:n.string().min(1),label:n.string().nullable(),enabled:n.boolean(),cronExpression:n.string().nullable(),timezone:n.string().nullable(),signingMode:n.string().nullable(),replayWindowSec:n.number().int().nullable()}),ov=n.object({concurrencyPolicy:n.string().nullable(),catchUpPolicy:n.string().nullable(),variables:n.array(nt).nullable().optional(),triggers:n.array(sv).default([])}),av=n.object({body:n.string().min(1),authorType:Kn,authorAgentSlug:n.string().min(1).nullable(),authorUserId:n.string().nullable(),presentation:Hn.nullable(),metadata:Wn.nullable(),createdAt:n.string().datetime().nullable()}),cv=n.object({slug:n.string().min(1),identifier:n.string().min(1).nullable(),title:n.string().min(1),path:n.string().min(1),projectSlug:n.string().min(1).nullable(),projectWorkspaceKey:n.string().min(1).nullable(),assigneeAgentSlug:n.string().min(1).nullable(),description:n.string().nullable(),recurring:n.boolean().default(!1),routine:ov.nullable(),legacyRecurrence:n.record(n.string(),n.unknown()).nullable(),status:n.string().nullable(),priority:n.string().nullable(),labelIds:n.array(n.string().min(1)).default([]),billingCode:n.string().nullable(),executionWorkspaceSettings:n.record(n.string(),n.unknown()).nullable(),assigneeAdapterOverrides:n.record(n.string(),n.unknown()).nullable(),comments:n.array(av).default([]),metadata:n.record(n.string(),n.unknown()).nullable()}),Lm=n.object({schemaVersion:n.number().int().positive(),generatedAt:n.string().datetime(),source:n.object({companyId:n.string().uuid(),companyName:n.string().min(1)}).nullable(),includes:n.object({company:n.boolean(),agents:n.boolean(),projects:n.boolean(),issues:n.boolean(),skills:n.boolean()}),company:gc.nullable(),sidebar:pi.nullable(),agents:n.array(fc),skills:n.array(Mm).default([]),projects:n.array(iv).default([]),issues:n.array(cv).default([]),envInputs:n.array(mc).default([])}),hc=n.discriminatedUnion("type",[n.object({type:n.literal("inline"),rootPath:n.string().min(1).optional().nullable(),files:n.record(n.string(),rv)}),n.object({type:n.literal("github"),url:n.string().url()})]),yc=n.discriminatedUnion("mode",[n.object({mode:n.literal("new_company"),newCompanyName:n.string().min(1).optional().nullable()}),n.object({mode:n.literal("existing_company"),companyId:n.string().uuid()})]),Gn=n.union([n.literal("all"),n.array(n.string().min(1))]),Yn=n.enum(["rename","skip","replace"]),Dm=n.object({include:hn.optional(),agents:n.array(n.string().min(1)).optional(),skills:n.array(n.string().min(1)).optional(),projects:n.array(n.string().min(1)).optional(),issues:n.array(n.string().min(1)).optional(),projectIssues:n.array(n.string().min(1)).optional(),selectedFiles:n.array(n.string().min(1)).optional(),expandReferencedSkills:n.boolean().optional(),sidebarOrder:pi.partial().optional()}),Sc=n.object({source:hc,include:hn.optional(),target:yc,agents:Gn.optional(),collisionStrategy:Yn.optional(),nameOverrides:n.record(n.string().min(1),n.string().min(1)).optional(),selectedFiles:n.array(n.string().min(1)).optional()}),bc=n.object({adapterType:n.string().min(1),adapterConfig:n.record(n.string(),n.unknown()).optional()}),Um=Sc.extend({adapterOverrides:n.record(n.string().min(1),bc).optional(),secretValues:n.record(n.string().min(1),n.string()).optional()});var mi=n.enum(["bundled","optional"]),Ic=n.enum(["markdown_only","assets","scripts_executables","external_sources"]),vc=n.enum(["compatible","unknown","invalid"]),gi=n.enum(["team","agent","project","task","skill","extension","readme","reference","script","asset","markdown","other"]),fi=n.enum(["catalog","local","skills_sh","github","url","local_path","agent_package"]),kc=n.object({type:fi,ref:n.string().min(1),agentSlugs:n.array(n.string().min(1)),resolved:n.boolean(),catalogSkillId:n.string().min(1).optional(),catalogSkillKey:n.string().min(1).optional(),localPath:n.string().min(1).optional(),sourceLocator:n.string().min(1).optional(),sourceRef:n.string().min(1).optional()}),Ec=n.object({key:n.string().min(1),agentSlug:n.string().min(1).nullable(),projectSlug:n.string().min(1).nullable(),kind:n.enum(["secret","plain"]),requirement:n.enum(["required","optional"])}),_c=n.object({type:n.enum(["skills_sh","github","url","local_path","agent_package","include"]),ref:n.string().min(1),pinned:n.boolean()}),Ac=n.object({path:n.string().min(1),kind:gi,sizeBytes:n.number().int().nonnegative(),sha256:n.string().min(1)}),jm=n.object({id:n.string().min(1),key:n.string().min(1),kind:mi,category:n.string().min(1),slug:n.string().min(1),name:n.string().min(1),description:n.string(),path:n.string().min(1),entrypoint:n.literal("TEAM.md"),schema:n.literal("agentcompanies/v1"),defaultInstall:n.boolean(),recommendedForCompanyTypes:n.array(n.string()),tags:n.array(n.string()),counts:n.object({agents:n.number().int().nonnegative(),projects:n.number().int().nonnegative(),tasks:n.number().int().nonnegative(),routines:n.number().int().nonnegative(),localSkills:n.number().int().nonnegative(),catalogSkills:n.number().int().nonnegative(),externalSkillSources:n.number().int().nonnegative()}),rootAgentSlugs:n.array(n.string()),agentSlugs:n.array(n.string()),projectSlugs:n.array(n.string()),requiredSkills:n.array(kc),envInputs:n.array(Ec),sourceRefs:n.array(_c),files:n.array(Ac),trustLevel:Ic,compatibility:vc,contentHash:n.string().min(1),packageName:n.string().min(1).optional(),packageVersion:n.string().min(1).optional()}),Fm=n.object({kind:mi.optional(),category:n.string().min(1).optional(),q:n.string().min(1).optional()}),qm=n.object({catalogTeamId:n.string().min(1),path:n.string().min(1),kind:gi,content:n.string(),language:n.string().nullable(),markdown:n.boolean()}),wc=n.object({allowExternalSources:n.boolean().optional(),allowUnpinnedOptionalSources:n.boolean().optional(),allowLocalPathSources:n.boolean().optional()}).strict(),Tc=n.object({targetManagerAgentId:n.string().min(1).nullable().optional(),targetManagerSlug:n.string().min(1).nullable().optional(),include:hn.omit({company:!0}).strict().optional(),agents:Gn.optional(),collisionStrategy:Yn.optional(),nameOverrides:n.record(n.string().min(1),n.string().min(1)).optional(),selectedFiles:n.array(n.string().min(1)).optional(),sourcePolicy:wc.optional()}).strict(),Bm=Tc.extend({adapterOverrides:n.record(n.string().min(1),bc).optional(),secretValues:n.record(n.string().min(1),n.string()).optional()}).strict(),$m=n.object({type:fi,ref:n.string().min(1),agentSlugs:n.array(n.string().min(1)),action:n.enum(["already_in_package","catalog_install_required","external_import_required","blocked"]),catalogSkillId:n.string().min(1).nullable(),catalogSkillKey:n.string().min(1).nullable(),sourceLocator:n.string().min(1).nullable(),sourceRef:n.string().min(1).nullable(),reason:n.string().min(1).nullable()});var xc=n.enum(["available","configured","installed","missing","stale","external"]),lv=n.enum(["company_managed","user_installed","external_unknown"]),Rc=n.enum(["unsupported","persistent","ephemeral"]),hi=n.object({key:n.string().min(1),versionId:n.string().uuid().nullable()}),Zn=n.union([n.string().min(1),hi]),Cc=n.object({key:n.string().min(1),runtimeName:n.string().min(1).nullable(),versionId:n.string().uuid().nullable().optional(),currentVersionId:n.string().uuid().nullable().optional(),desired:n.boolean(),managed:n.boolean(),state:xc,origin:lv.optional(),originLabel:n.string().nullable().optional(),locationLabel:n.string().nullable().optional(),readOnly:n.boolean().optional(),sourcePath:n.string().nullable().optional(),targetPath:n.string().nullable().optional(),detail:n.string().nullable().optional()}),Vm=n.object({adapterType:n.string().min(1),supported:n.boolean(),mode:Rc,desiredSkills:n.array(n.string().min(1)),desiredSkillEntries:n.array(hi).optional(),entries:n.array(Cc),warnings:n.array(n.string())}),Km=n.object({desiredSkills:n.array(Zn)});var Oc=n.object({canCreateAgents:n.boolean().optional().default(!1),canCreateSkills:n.boolean().optional().default(!0),trustPreset:Pt.optional(),authorizationPolicy:We.optional()}).catchall(n.unknown()),Pc=n.enum(["managed","external"]),Hm=n.object({mode:Pc.optional(),rootPath:n.string().trim().min(1).nullable().optional(),entryFile:n.string().trim().min(1).optional(),clearLegacyPromptTemplate:n.boolean().optional().default(!1)}),Wm=n.object({path:n.string().trim().min(1),content:n.string(),clearLegacyPromptTemplate:n.boolean().optional().default(!1)}),Nc=n.record(n.string(),n.unknown()).superRefine((e,t)=>{let r=e.env;if(r===void 0)return;de.safeParse(r).success||t.addIssue({code:n.ZodIssueCode.custom,message:"adapterConfig.env must be a map of valid env bindings",path:["env"]})}),uv=n.object({entryFile:n.string().trim().min(1).optional(),files:n.record(n.string(),n.string()).refine(e=>Object.keys(e).length>0,{message:"instructionsBundle.files must contain at least one file"})}),dv=n.object({enabled:n.boolean().optional(),label:n.string().trim().min(1).optional(),adapterConfig:Nc}).strict(),zm=n.object({modelProfiles:n.object({cheap:dv.optional()}).strict().optional()}).catchall(n.unknown()),yi=n.object({name:n.string().min(1),role:n.enum(Ts).optional().default("general"),title:n.string().optional().nullable(),icon:n.enum(Rs).optional().nullable(),reportsTo:n.string().uuid().optional().nullable(),capabilities:n.string().optional().nullable(),desiredSkills:n.array(Zn).optional(),adapterType:Vo,adapterConfig:Nc.optional().default({}),instructionsBundle:uv.optional(),runtimeConfig:zm.optional().default({}),defaultEnvironmentId:n.string().uuid().optional().nullable(),budgetMonthlyCents:n.number().int().nonnegative().optional().default(0),permissions:Oc.optional(),metadata:n.record(n.string(),n.unknown()).optional().nullable()}),Gm=yi.extend({sourceIssueId:n.string().uuid().optional().nullable(),sourceIssueIds:n.array(n.string().uuid()).optional()}),Ym=yi.omit({permissions:!0}).partial().extend({permissions:n.never().optional(),replaceAdapterConfig:n.boolean().optional(),status:n.enum(ws).optional(),spentMonthlyCents:n.number().int().nonnegative().optional()}),Zm=n.object({path:n.string().trim().min(1).nullable(),adapterConfigKey:n.string().trim().min(1).optional()}),Mc=n.object({kind:n.literal("task_bridge"),projectId:n.string().uuid().optional().nullable(),projectIds:n.array(n.string().uuid()).max(50).optional(),parentIssueId:n.string().uuid().optional().nullable(),parentIssueIds:n.array(n.string().uuid()).max(50).optional(),allowedAssigneeAgentIds:n.array(n.string().uuid()).max(50).optional()}).strict().superRefine((e,t)=>{let r=!!e.projectId||!!e.projectIds?.length,i=!!e.parentIssueId||!!e.parentIssueIds?.length;!r&&!i&&t.addIssue({code:n.ZodIssueCode.custom,message:"task_bridge keys require at least one project or parent issue boundary",path:["projectId"]})}),Lc=n.object({kind:n.literal("standard")}).strict(),Dc=n.union([Lc,Mc]);var Jm=n.object({name:n.string().min(1).default("default"),scope:Dc.optional().default({kind:"standard"})}),Xm=n.object({userId:n.string().trim().min(1),status:n.string().trim().min(1).optional().default(Os)}),Qm=n.object({source:n.enum(["timer","assignment","on_demand","automation"]).optional().default("on_demand"),triggerDetail:n.enum(["manual","ping","callback","system"]).optional(),reason:n.string().optional().nullable(),payload:n.record(n.string(),n.unknown()).optional().nullable(),idempotencyKey:n.string().optional().nullable(),forceFreshSession:n.preprocess(e=>e===null?void 0:e,n.boolean().optional().default(!1))}),eg=n.object({taskKey:n.string().min(1).optional().nullable()}),tg=n.object({adapterConfig:Nc.optional().default({}),environmentId:n.string().uuid().optional().nullable()}),ng=n.object({canCreateAgents:n.boolean(),canCreateSkills:n.boolean().optional(),canAssignTasks:n.boolean(),trustPreset:Pt.optional(),authorizationPolicy:We.optional()});var pv=n.object({type:n.enum(["project_primary","git_worktree","adapter_managed","cloud_sandbox"]).optional(),baseRef:n.string().optional().nullable(),branchTemplate:n.string().optional().nullable(),worktreeParentDir:n.string().optional().nullable(),provisionCommand:n.string().optional().nullable(),teardownCommand:n.string().optional().nullable()}).strict(),Uc=n.object({enabled:n.boolean(),defaultMode:n.enum(["shared_workspace","isolated_workspace","operator_branch","adapter_default"]).optional(),allowIssueOverride:n.boolean().optional(),defaultProjectWorkspaceId:n.string().uuid().optional().nullable(),environmentId:n.string().uuid().optional().nullable(),workspaceStrategy:pv.optional().nullable(),workspaceRuntime:n.record(n.string(),n.unknown()).optional().nullable(),branchPolicy:n.record(n.string(),n.unknown()).optional().nullable(),pullRequestPolicy:n.record(n.string(),n.unknown()).optional().nullable(),runtimePolicy:n.record(n.string(),n.unknown()).optional().nullable(),cleanupPolicy:n.record(n.string(),n.unknown()).optional().nullable(),authorizationPolicy:We.optional().nullable()}).strict(),rg=n.object({workspaceRuntime:n.record(n.string(),n.unknown()).optional().nullable(),desiredState:n.enum(["running","stopped","manual"]).optional().nullable(),serviceStates:n.record(n.enum(["running","stopped","manual"])).optional().nullable()}).strict(),mv=n.enum(["local_path","git_repo","remote_managed","non_git_path"]),gv=n.enum(["default","advanced"]),ig={name:n.string().min(1).optional(),sourceType:mv.optional(),cwd:n.string().min(1).optional().nullable(),repoUrl:n.string().url().optional().nullable(),repoRef:n.string().optional().nullable(),defaultRef:n.string().optional().nullable(),visibility:gv.optional(),setupCommand:n.string().optional().nullable(),cleanupCommand:n.string().optional().nullable(),remoteProvider:n.string().optional().nullable(),remoteWorkspaceRef:n.string().optional().nullable(),sharedWorkspaceKey:n.string().optional().nullable(),metadata:n.record(n.string(),n.unknown()).optional().nullable(),runtimeConfig:rg.optional().nullable()};function fv(e,t){let r=e.sourceType??"local_path",i=typeof e.cwd=="string"&&e.cwd.trim().length>0,s=typeof e.repoUrl=="string"&&e.repoUrl.trim().length>0,o=typeof e.remoteWorkspaceRef=="string"&&e.remoteWorkspaceRef.trim().length>0;if(r==="remote_managed"){!o&&!s&&t.addIssue({code:n.ZodIssueCode.custom,message:"Remote-managed workspace requires remoteWorkspaceRef or repoUrl.",path:["remoteWorkspaceRef"]});return}!i&&!s&&t.addIssue({code:n.ZodIssueCode.custom,message:"Workspace requires at least one of cwd or repoUrl.",path:["cwd"]})}var jc=n.object({...ig,isPrimary:n.boolean().optional().default(!1)}).superRefine(fv),sg=n.object({...ig,isPrimary:n.boolean().optional()}).partial(),og={goalId:n.string().uuid().optional().nullable(),goalIds:n.array(n.string().uuid()).optional(),name:n.string().min(1),description:n.string().optional().nullable(),status:n.enum(lo).optional().default("backlog"),leadAgentId:n.string().uuid().optional().nullable(),targetDate:n.string().optional().nullable(),color:n.string().optional().nullable(),icon:n.enum(Cs).optional().nullable(),env:de.optional().nullable(),executionWorkspacePolicy:Uc.optional().nullable(),archivedAt:n.string().datetime().optional().nullable()},ag=n.object({...og,workspace:jc.optional()}),cg=n.object(og).partial();var Fc=n.enum(Gs),lg=n.enum(Ys),ug=n.enum(Zs),qc=n.object({exact:n.string().min(1).max(1e4),prefix:n.string().max(1e3).default(""),suffix:n.string().max(1e3).default("")}).strict(),Bc=n.object({normalizedStart:n.number().int().nonnegative(),normalizedEnd:n.number().int().nonnegative(),markdownStart:n.number().int().nonnegative(),markdownEnd:n.number().int().nonnegative()}).strict().superRefine((e,t)=>{e.normalizedEnd<=e.normalizedStart&&t.addIssue({code:n.ZodIssueCode.custom,message:"normalizedEnd must be greater than normalizedStart",path:["normalizedEnd"]}),e.markdownEnd<=e.markdownStart&&t.addIssue({code:n.ZodIssueCode.custom,message:"markdownEnd must be greater than markdownStart",path:["markdownEnd"]})}),$c=n.object({quote:qc,position:Bc}).strict(),dg=n.object({baseRevisionId:n.string().uuid(),baseRevisionNumber:n.number().int().positive(),selector:$c,body:H.pipe(n.string().min(1).max(2e4)),issueCommentId:n.string().uuid().nullable().optional()}).strict(),pg=n.object({body:H.pipe(n.string().min(1).max(2e4)),issueCommentId:n.string().uuid().nullable().optional()}).strict(),mg=n.object({status:Fc.optional()}).strict().refine(e=>e.status!=null,{message:"At least one field must be provided"});var Kc=200;var Hc=20,Wc=50,zc=200;function Vc(e){return Array.isArray(e)?e[0]:e}function gg(e,t,r,i){let s=Vc(e),o=typeof s=="number"?s:typeof s=="string"&&s.trim().length>0?Number.parseInt(s,10):Number.NaN;return Number.isFinite(o)?Math.min(i,Math.max(r,Math.floor(o))):t}var fg=n.object({q:n.preprocess(Vc,n.string().optional().default("")).transform(e=>e.slice(0,Kc)),scope:n.preprocess(Vc,n.enum(zr).catch("all")).optional().default("all"),limit:n.unknown().optional().transform(e=>gg(e,Hc,1,Wc)),offset:n.unknown().optional().transform(e=>gg(e,0,0,zc))});var Si=n.enum(Ws),Jn=n.object({strategy:n.enum(zs).default("manual"),note:n.string().trim().min(1).max(500).optional().nullable()}).strict(),hg=n.object({mode:Si,releasePolicy:Jn.optional().nullable()}).strict(),yg=n.object({mode:Si,reason:n.string().trim().min(1).max(1e3).optional().nullable(),releasePolicy:Jn.optional().nullable(),metadata:n.record(n.string(),n.unknown()).optional().nullable()}).strict(),Sg=n.object({reason:n.string().trim().min(1).max(1e3).optional().nullable(),releasePolicy:Jn.optional().nullable(),metadata:n.record(n.string(),n.unknown()).optional().nullable()}).strict();var hv=128;function yv(e){return new TextEncoder().encode(e).length}var bi=n.enum(["execution_workspace","project_workspace"]),Ii=n.enum(["auto","execution","project"]).default("auto"),Gc=n.enum(["all","recent","changed"]).default("all"),Yc=n.enum(["text","image","video","pdf","unsupported"]),Zc=n.enum(["file","directory","remote_resource"]),vi=n.object({kind:n.literal("workspace_file"),issueId:n.string().uuid().optional(),projectId:n.string().uuid().optional(),projectName:n.string().min(1).optional(),workspaceKind:bi,workspaceId:n.string().uuid(),relativePath:n.string().min(1),line:n.number().int().positive().nullable().optional(),column:n.number().int().positive().nullable().optional(),displayPath:n.string().min(1)}),bg=n.object({projectId:n.string().uuid().optional(),workspaceId:n.string().uuid().optional(),path:n.string().min(1).refine(e=>!/[\x00-\x1f\x7f]/.test(e),{message:"Workspace file path contains an invalid character",params:{code:"invalid_path"}}),workspace:Ii.optional()}).refine(e=>!!e.projectId==!!e.workspaceId,{message:"Workspace file target requires both projectId and workspaceId",path:["workspaceId"],params:{code:"invalid_target"}}),Ig=n.object({projectId:n.string().uuid().optional(),workspaceId:n.string().uuid().optional(),workspace:Ii.optional(),path:n.string().min(1).refine(e=>!/[\x00-\x1f\x7f]/.test(e),{message:"Workspace folder path contains an invalid character",params:{code:"invalid_path"}}).optional(),mode:Gc.optional(),q:n.string().refine(e=>!/[\x00-\x1f\x7f]/.test(e),{message:"Workspace file search contains an invalid character",params:{code:"invalid_query"}}).refine(e=>yv(e.trim())<=hv,{message:"Workspace file search is too long",params:{code:"invalid_query"}}).optional(),limit:n.coerce.number().int().min(1).max(100).default(25),offset:n.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"}}),Jc=n.object({kind:Zc,provider:n.string().min(1),title:n.string().min(1),displayPath:n.string().min(1),workspaceLabel:n.string().min(1),workspaceKind:bi,workspaceId:n.string().uuid(),projectId:n.string().uuid().nullable().optional(),projectName:n.string().min(1).nullable().optional(),contentType:n.string().nullable().optional(),byteSize:n.number().int().nonnegative().nullable().optional(),previewKind:Yc,denialReason:n.string().nullable().optional(),capabilities:n.object({preview:n.boolean(),download:n.boolean(),listChildren:n.boolean()})}),vg=n.object({resource:Jc,content:n.object({encoding:n.enum(["utf8","base64"]),data:n.string()})});function Sv(e){return`/api/attachments/${e}/content`}var Xc=n.enum(["preview_url","runtime_service","pull_request","branch","commit","artifact","document"]),Qc=n.enum(["active","ready_for_review","approved","changes_requested","merged","closed","failed","archived","draft"]),el=n.enum(["none","needs_board_review","approved","changes_requested"]),kg=n.object({attachmentId:n.string().uuid(),contentType:n.string().min(1),byteSize:n.number().int().nonnegative(),contentPath:n.string().min(1),openPath:n.string().min(1),downloadPath:n.string().min(1),originalFilename:n.string().optional().nullable()}).superRefine((e,t)=>{let r=Sv(e.attachmentId);e.contentPath!==r&&t.addIssue({code:n.ZodIssueCode.custom,path:["contentPath"],message:"contentPath must point to the same-origin attachment content route"}),e.openPath!==r&&t.addIssue({code:n.ZodIssueCode.custom,path:["openPath"],message:"openPath must point to the same-origin attachment content route"}),e.downloadPath!==`${r}?download=1`&&t.addIssue({code:n.ZodIssueCode.custom,path:["downloadPath"],message:"downloadPath must point to the same-origin attachment download route"})}),tl=n.object({resourceRef:vi.optional().nullable()}).passthrough(),nl=n.object({projectId:n.string().uuid().optional().nullable(),executionWorkspaceId:n.string().uuid().optional().nullable(),runtimeServiceId:n.string().uuid().optional().nullable(),type:Xc,provider:n.string().min(1),externalId:n.string().optional().nullable(),title:n.string().min(1),url:n.string().url().optional().nullable(),status:Qc.default("active"),reviewState:el.optional().default("none"),isPrimary:n.boolean().optional().default(!1),healthStatus:n.enum(["unknown","healthy","unhealthy"]).optional().default("unknown"),summary:n.string().optional().nullable(),metadata:tl.optional().nullable(),createdByRunId:n.string().uuid().optional().nullable()}),Eg=nl.partial();var rl=30,il=100,sl=160,ol=n.enum(["document","attachment","work_product"]),Ei=n.enum(["image","video","text","document","file","empty"]),_i=n.enum(["none","task","parent_task"]),_g=n.object({kind:n.enum(["image","video","text","document","file","all"]).optional().default("all"),projectId:n.string().uuid().optional(),q:n.string().trim().max(sl).optional(),groupBy:_i.optional().default("none"),groupIssueId:n.string().uuid().optional(),limit:n.coerce.number().int().min(1).max(il).optional().default(rl),cursor:n.string().min(1).optional()}),Ai=n.object({id:n.string().min(1),source:ol,mediaKind:Ei,title:n.string(),previewText:n.string().nullable(),contentType:n.string().nullable(),contentPath:n.string().nullable(),openPath:n.string().nullable(),downloadPath:n.string().nullable(),issue:n.object({id:n.string().uuid(),identifier:n.string(),title:n.string()}),project:n.object({id:n.string().uuid(),name:n.string()}).nullable(),createdByAgent:n.object({id:n.string().uuid(),name:n.string()}).nullable(),updatedAt:n.string().datetime(),href:n.string().min(1)}),ki=n.object({id:n.string().min(1),groupBy:_i.exclude(["none"]),issue:n.object({id:n.string().uuid(),identifier:n.string(),title:n.string()}),title:n.string(),count:n.number().int().min(0),mediaKinds:n.array(Ei),previewArtifacts:n.array(Ai),updatedAt:n.string().datetime(),href:n.string().min(1)}),Ag=n.object({artifacts:n.array(Ai),groups:n.array(ki).optional(),selectedGroup:ki.nullable().optional(),nextCursor:n.string().nullable()});var al=n.object({title:n.string().min(1),description:n.string().optional().nullable(),level:n.enum(ao).optional().default("task"),status:n.enum(co).optional().default("planned"),parentId:n.string().uuid().optional().nullable(),ownerAgentId:n.string().uuid().optional().nullable()}),wg=al.partial();var Tg=n.object({type:n.enum(Io),requestedByAgentId:n.string().uuid().optional().nullable(),payload:n.record(n.string(),n.unknown()),issueIds:n.array(n.string().uuid()).optional()}),xg=n.object({decisionNote:H.optional().nullable()}),Rg=n.object({decisionNote:H.optional().nullable()}),Cg=n.object({payload:n.record(n.string(),n.unknown()).optional()}),Og=n.object({body:H.pipe(n.string().min(1))});var Pg=n.object({agentId:n.string().uuid(),issueId:n.string().uuid().optional().nullable(),projectId:n.string().uuid().optional().nullable(),goalId:n.string().uuid().optional().nullable(),heartbeatRunId:n.string().uuid().optional().nullable(),billingCode:n.string().optional().nullable(),provider:n.string().min(1),biller:n.string().min(1).optional(),billingType:n.enum(Eo).optional().default("unknown"),model:n.string().min(1),inputTokens:n.number().int().nonnegative().optional().default(0),cachedInputTokens:n.number().int().nonnegative().optional().default(0),outputTokens:n.number().int().nonnegative().optional().default(0),costCents:n.number().int().nonnegative(),occurredAt:n.string().datetime()}).transform(e=>({...e,biller:e.biller??e.provider})),Ng=n.object({budgetMonthlyCents:n.number().int().nonnegative()});var Mg=n.object({agentId:n.string().uuid().optional().nullable(),issueId:n.string().uuid().optional().nullable(),projectId:n.string().uuid().optional().nullable(),goalId:n.string().uuid().optional().nullable(),heartbeatRunId:n.string().uuid().optional().nullable(),costEventId:n.string().uuid().optional().nullable(),billingCode:n.string().optional().nullable(),description:n.string().max(500).optional().nullable(),eventKind:n.enum(_o),direction:n.enum(Ao).optional().default("debit"),biller:n.string().min(1),provider:n.string().min(1).optional().nullable(),executionAdapterType:n.enum(Nn).optional().nullable(),pricingTier:n.string().min(1).optional().nullable(),region:n.string().min(1).optional().nullable(),model:n.string().min(1).optional().nullable(),quantity:n.number().int().nonnegative().optional().nullable(),unit:n.enum(wo).optional().nullable(),amountCents:n.number().int().nonnegative(),currency:n.string().length(3).optional().default("USD"),estimated:n.boolean().optional().default(!1),externalInvoiceId:n.string().optional().nullable(),metadataJson:n.record(n.string(),n.unknown()).optional().nullable(),occurredAt:n.string().datetime()}).transform(e=>({...e,currency:e.currency.toUpperCase()}));var Lg=n.object({namespace:n.string().trim().min(1).max(120).regex(/^[a-zA-Z0-9/_-]+$/).optional()});var wi=n.string().trim().regex(/^[A-Za-z][A-Za-z0-9_]*$/),Dg=n.enum(["working","review","done","cancelled"]),nP=n.enum(["open","working","review","done","cancelled"]),cl=n.object({kind:n.enum(["any_human","user","agent"]).optional().default("any_human"),id:n.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:n.ZodIssueCode.custom,path:["id"],message:"Specific stage approvers require an id"})}),ll=n.object({type:n.literal("run_routine"),routineId:n.string().uuid(),id:n.string().trim().min(1).max(200).optional(),projectId:n.string().uuid().optional().nullable(),projectWorkspaceId:n.string().uuid().optional().nullable(),executionWorkspaceId:n.string().uuid().optional().nullable(),executionWorkspacePreference:n.enum(Nt).optional().nullable(),executionWorkspaceSettings:tt.optional().nullable()}).passthrough(),ul=n.object({routineId:n.string().uuid().optional().nullable(),assigneeAgentId:n.string().uuid().optional().nullable(),instructionsBody:n.string().optional().nullable(),projectId:n.string().uuid().optional().nullable(),projectWorkspaceId:n.string().uuid().optional().nullable(),executionWorkspaceId:n.string().uuid().optional().nullable(),executionWorkspacePreference:n.enum(Nt).optional().nullable(),executionWorkspaceSettings:tt.optional().nullable()}).passthrough(),bv=n.object({version:n.literal(1).default(1),mode:n.enum(["all_except","only"]).default("all_except"),includeFields:n.array(wi).max(100).default([]),excludeFields:n.array(wi).max(100).default([])}),Iv=n.object({targetPipelineId:n.string().uuid(),targetStageKey:n.string().trim().min(1).max(120),pieceNoun:n.string().trim().min(1).max(80).default("piece"),carryOverPolicy:bv.optional(),inheritFields:n.array(wi).max(100).default([]),advanceTo:n.string().trim().min(1).max(120).optional(),waitForPieces:n.boolean().optional().default(!1),whenFinishedMoveTo:n.string().trim().min(1).max(120).optional()}).superRefine((e,t)=>{e.waitForPieces&&!e.whenFinishedMoveTo&&t.addIssue({code:n.ZodIssueCode.custom,path:["whenFinishedMoveTo"],message:"Breakdown stages that wait for pieces need a destination stage"})}),dl=n.object({key:wi,label:n.string().trim().max(120),type:n.enum(["select","text","multiline"]).default("text"),options:n.array(n.string().trim().min(1).max(120)).max(50).optional().default([]),required:n.boolean().optional().default(!1),showInAddForm:n.boolean().optional().default(!1)}).superRefine((e,t)=>{e.type==="select"&&e.options.length===0&&t.addIssue({code:n.ZodIssueCode.custom,path:["options"],message:"Select variables require at least one option"}),e.type!=="select"&&e.options.length>0&&t.addIssue({code:n.ZodIssueCode.custom,path:["options"],message:"Only select variables can define options"})}),Ug=n.object({variables:n.array(dl).default([]),disabled:n.boolean().optional(),disabledReason:n.string().trim().max(1e3).nullable().optional(),requireApproval:n.boolean().optional(),approver:cl.optional(),reviewerKind:n.enum(["human","any"]).optional(),whatHappensHere:n.string().trim().max(1e4).optional(),onEnter:ll.optional(),automation:ul.optional(),breakdown:Iv.optional(),approveToStageKey:n.string().trim().min(1).max(120).optional(),rejectToStageKey:n.string().trim().min(1).max(120).optional(),requestChangesToStageKey:n.string().trim().min(1).max(120).optional(),requireRejectReason:n.boolean().optional(),requireRequestChangesReason:n.boolean().optional(),requireChildrenTerminal:n.boolean().optional(),requireNoUnresolvedDrift:n.boolean().optional()}).passthrough().superRefine((e,t)=>{let r=new Set;e.variables.forEach((i,s)=>{r.has(i.key)&&t.addIssue({code:n.ZodIssueCode.custom,path:["variables",s,"key"],message:"Pipeline stage variable keys must be unique"}),r.add(i.key)})}),pl=n.enum(["current_stage","previous_stage"]),ml=n.object({retireDirectChildren:n.boolean().default(!0),retireDescendants:n.boolean().default(!0),cancelLinkedAutomationIssues:n.boolean().default(!0)}),jg=n.object({scope:pl,targetStageId:n.string().uuid().nullable().optional(),expectedVersion:n.number().int().positive(),cleanup:ml.default({retireDirectChildren:!0,retireDescendants:!0,cancelLinkedAutomationIssues:!0})});var Fg=n.object({allowedJoinTypes:n.enum(Oo).default("both"),humanRole:n.enum(un).optional().nullable(),defaultsPayload:n.record(n.string(),n.unknown()).optional().nullable(),agentMessage:n.string().max(4e3).optional().nullable()}),qg=n.object({agentMessage:n.string().max(4e3).optional().nullable()}),Bg=n.object({requestType:n.enum(Mr),agentName:n.string().min(1).max(120).optional(),adapterType:Ko,capabilities:n.string().max(4e3).optional().nullable(),agentDefaultsPayload:n.record(n.string(),n.unknown()).optional().nullable(),responsesWebhookUrl:n.string().max(4e3).optional().nullable(),responsesWebhookMethod:n.string().max(32).optional().nullable(),responsesWebhookHeaders:n.record(n.string(),n.unknown()).optional().nullable(),paperclipApiUrl:n.string().max(4e3).optional().nullable(),webhookAuthHeader:n.string().max(4e3).optional().nullable()}),$g=n.object({status:n.enum(Po).optional(),requestType:n.enum(Mr).optional()}),Vg=n.object({state:n.enum(["active","revoked","accepted","expired"]).optional(),limit:n.coerce.number().int().min(1).max(100).optional().default(20),offset:n.coerce.number().int().min(0).optional().default(0)}),Kg=n.object({claimSecret:n.string().min(16).max(256)}),gl=n.enum(["board","instance_admin_required"]),Hg=n.object({command:n.string().min(1).max(240),clientName:n.string().max(120).optional().nullable(),requestedAccess:gl.default("board"),requestedCompanyId:n.string().uuid().optional().nullable()}),Wg=n.object({token:n.string().min(16).max(256)}),zg=n.object({name:n.string().trim().min(1).max(120).default("paperclipai cli"),expiresAt:n.coerce.date().optional().nullable(),requestedCompanyId:n.string().uuid().optional().nullable()}),fl=n.object({grants:n.array(n.object({permissionKey:n.enum(Lr),scope:n.record(n.string(),n.unknown()).optional().nullable()}))}),Gg=["pending","active","suspended"],Yg=n.object({membershipRole:n.enum(un).optional().nullable(),status:n.enum(Gg).optional()}).refine(e=>e.membershipRole!==void 0||e.status!==void 0,{message:"membershipRole or status is required"}),Zg=n.object({membershipRole:n.enum(un).optional().nullable(),status:n.enum(Gg).optional(),grants:fl.shape.grants.default([])}).refine(e=>e.membershipRole!==void 0||e.status!==void 0,{message:"membershipRole or status is required"}),Jg=n.object({reassignment:n.object({assigneeAgentId:n.string().uuid().optional().nullable(),assigneeUserId:n.string().uuid().optional().nullable()}).optional().nullable()}).superRefine((e,t)=>{e.reassignment?.assigneeAgentId&&e.reassignment.assigneeUserId&&t.addIssue({code:n.ZodIssueCode.custom,message:"Choose either an agent or user reassignment target",path:["reassignment"]})}),Xg=n.object({companyIds:n.array(n.string().uuid()).default([])}),Qg=n.object({query:n.string().trim().max(120).optional().default("")}),vv=/^\/api\/assets\/[^/?#]+\/content(?:\?[^#]*)?(?:#.*)?$/;function kv(e){if(vv.test(e))return!0;try{let t=new URL(e);return t.protocol==="https:"||t.protocol==="http:"}catch{return!1}}var ef=n.string().trim().min(1).max(4e3).refine(kv,{message:"Invalid profile image URL"}),hl=n.object({id:n.string().min(1),email:n.string().email().nullable(),name:n.string().min(1).max(120).nullable(),image:ef.nullable()}),tf=n.object({session:n.object({id:n.string().min(1),userId:n.string().min(1)}),user:hl}),nf=n.object({name:n.string().trim().min(1).max(120),image:n.union([ef,n.literal(""),n.null()]).optional().transform(e=>e===""?null:e)});var Xn=n.record(n.string(),n.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)"}),Ev=/^(\*(?:\/[0-9]+)?|[0-9]+(?:-[0-9]+)?(?:\/[0-9]+)?)(?:,(\*(?:\/[0-9]+)?|[0-9]+(?:-[0-9]+)?(?:\/[0-9]+)?))*$/;function _v(e){let t=e.trim();if(!t)return!1;let r=t.split(/\s+/);return r.length!==5?!1:r.every(i=>Ev.test(i))}var Sl=n.object({jobKey:n.string().min(1),displayName:n.string().min(1),description:n.string().optional(),schedule:n.string().refine(e=>_v(e),{message:"schedule must be a valid 5-field cron expression (e.g. '*/15 * * * *')"}).optional()}),bl=n.object({endpointKey:n.string().min(1),displayName:n.string().min(1),description:n.string().optional()}),Il=n.object({name:n.string().min(1),displayName:n.string().min(1),description:n.string().min(1),parametersSchema:Xn}),rf=n.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"}),Av=n.object({field:rf,unsetFields:n.array(rf).max(20).optional()}).strict().superRefine((e,t)=>{let r=e.unsetFields??[],i=new Set;for(let[s,o]of r.entries())o===e.field&&t.addIssue({code:n.ZodIssueCode.custom,message:"Template config binding cannot unset the same field it sets",path:["unsetFields",s]}),i.has(o)&&t.addIssue({code:n.ZodIssueCode.custom,message:"Template config binding unsetFields must be unique",path:["unsetFields",s]}),i.add(o)}),vl=n.object({driverKey:n.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:n.enum(["environment_driver","sandbox_provider"]).optional(),displayName:n.string().min(1).max(100),description:n.string().max(500).optional(),supportsReusableLeases:n.boolean().optional(),supportsInteractiveSetup:n.boolean().optional(),interactiveSetupConnectionTypes:n.array(n.string().min(1).max(100)).max(10).optional(),supportsTemplateCapture:n.boolean().optional(),templateRefKind:n.string().min(1).max(100).optional(),templateConfigBinding:Av.optional(),supportsTemplateDelete:n.boolean().optional(),configSchema:Xn}),wv=n.object({agentKey:n.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:n.string().min(1).max(100),role:n.string().min(1).max(100).optional(),title:n.string().max(200).nullable().optional(),icon:n.string().max(100).nullable().optional(),capabilities:n.string().max(2e3).nullable().optional(),adapterType:n.string().min(1).max(100).optional(),adapterPreference:n.array(n.string().min(1).max(100)).max(10).optional(),adapterConfig:n.record(n.string(),n.unknown()).optional(),runtimeConfig:n.record(n.string(),n.unknown()).optional(),permissions:n.record(n.string(),n.unknown()).optional(),status:n.enum(["idle","paused"]).optional(),budgetMonthlyCents:n.number().int().min(0).optional(),instructions:n.object({entryFile:n.string().min(1).max(200).optional(),content:n.string().max(2e5).optional(),files:n.record(n.string().max(2e5)).optional(),assetPath:n.string().min(1).max(500).optional()}).optional()}),Tv=n.object({projectKey:n.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:n.string().min(1).max(120),description:n.string().max(2e3).nullable().optional(),status:n.enum(["backlog","planned","in_progress","completed","cancelled"]).optional(),color:n.string().max(32).nullable().optional(),settings:n.record(n.string(),n.unknown()).optional()}),sf=n.object({pluginKey:n.string().min(1).max(100).optional(),resourceKind:n.enum(["agent","project","routine","skill"]),resourceKey:n.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"})}),xv=n.object({routineKey:n.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:n.string().trim().min(1).max(200),description:n.string().max(1e4).nullable().optional(),assigneeRef:sf.extend({resourceKind:n.literal("agent")}).nullable().optional(),projectRef:sf.extend({resourceKind:n.literal("project")}).nullable().optional(),goalId:n.string().uuid().nullable().optional(),status:n.enum(an).optional(),priority:n.enum(Oe).optional(),concurrencyPolicy:n.enum(cn).optional(),catchUpPolicy:n.enum(ln).optional(),variables:n.array(nt).optional(),triggers:n.array(n.object({kind:n.enum(Ln),label:n.string().trim().max(120).nullable().optional(),enabled:n.boolean().optional(),cronExpression:n.string().trim().min(1).optional().nullable(),timezone:n.string().trim().min(1).optional().nullable(),signingMode:n.enum(xt).optional().nullable(),replayWindowSec:n.number().int().min(30).max(86400).optional().nullable()})).max(20).optional(),issueTemplate:n.object({surfaceVisibility:n.enum(Bs).optional(),originId:n.string().trim().max(255).nullable().optional(),billingCode:n.string().trim().max(200).nullable().optional()}).optional()}),yl=n.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"}),Rv=n.object({folderKey:n.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:n.string().min(1).max(100),description:n.string().max(500).optional(),access:n.enum(["read","readWrite"]).optional(),requiredDirectories:n.array(yl).optional(),requiredFiles:n.array(yl).optional()}),of=n.object({path:yl.refine(e=>e.toLowerCase()!=="skill.md",{message:"managed skill files cannot replace SKILL.md; use markdown for the main skill file"}),content:n.string().max(2e5)}),af=n.object({skillKey:n.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:n.string().min(1).max(100),slug:n.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:n.string().max(2e3).nullable().optional(),markdown:n.string().max(2e5).optional(),files:n.array(of).max(50).optional()}).superRefine((e,t)=>{let r=(e.files??[]).map(s=>s.path),i=r.filter((s,o)=>r.indexOf(s)!==o);i.length>0&&t.addIssue({code:n.ZodIssueCode.custom,message:`Duplicate managed skill file paths: ${[...new Set(i)].join(", ")}`,path:["files"]})}),kl=n.object({type:n.enum(Fr),id:n.string().min(1),displayName:n.string().min(1),exportName:n.string().min(1),entityTypes:n.array(n.enum(Dn)).optional(),routePath:n.string().regex(/^[a-z0-9][a-z0-9-]*$/,{message:"routePath must be a lowercase single-segment slug (letters, numbers, hyphens)"}).optional(),order:n.number().int().optional()}).superRefine((e,t)=>{["detailTab","taskDetailView","contextMenuItem","commentAnnotation","commentContextMenuItem","projectSidebarItem"].includes(e.type)&&(!e.entityTypes||e.entityTypes.length===0)&&t.addIssue({code:n.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:n.ZodIssueCode.custom,message:'projectSidebarItem slots require entityTypes to include "project"',path:["entityTypes"]}),e.type==="commentAnnotation"&&e.entityTypes&&!e.entityTypes.includes("comment")&&t.addIssue({code:n.ZodIssueCode.custom,message:'commentAnnotation slots require entityTypes to include "comment"',path:["entityTypes"]}),e.type==="commentContextMenuItem"&&e.entityTypes&&!e.entityTypes.includes("comment")&&t.addIssue({code:n.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:n.ZodIssueCode.custom,message:"routePath is only supported for page, routeSidebar, and companySettingsPage slots",path:["routePath"]}),e.type==="routeSidebar"&&!e.routePath&&t.addIssue({code:n.ZodIssueCode.custom,message:"routeSidebar slots require routePath",path:["routePath"]}),e.type==="companySettingsPage"&&!e.routePath&&t.addIssue({code:n.ZodIssueCode.custom,message:"companySettingsPage slots require routePath",path:["routePath"]}),e.routePath&&hd.includes(e.routePath)&&t.addIssue({code:n.ZodIssueCode.custom,message:`routePath "${e.routePath}" is reserved by the host`,path:["routePath"]}),e.type==="companySettingsPage"&&e.routePath&&qr.includes(e.routePath)&&t.addIssue({code:n.ZodIssueCode.custom,message:`company settings routePath "${e.routePath}" is reserved by the host`,path:["routePath"]})}),Cv=["detailTab","taskDetailView","contextMenuItem","commentAnnotation","commentContextMenuItem","projectSidebarItem"],Ov={hostInline:["inline","compact","default"],hostOverlay:["compact","default","wide","full"],hostRoute:["default","wide","full"],external:[],iframe:["compact","default","wide","full"]},El=n.object({type:n.enum(qo),target:n.string().min(1),params:n.record(n.string(),n.unknown()).optional()}).superRefine((e,t)=>{e.type==="performAction"&&e.target.includes("/")&&t.addIssue({code:n.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:n.ZodIssueCode.custom,message:"navigate launchers must target a host route, not an absolute URL",path:["target"]})}),_l=n.object({environment:n.enum($o),bounds:n.enum(Bo).optional()}).superRefine((e,t)=>{if(!e.bounds)return;Ov[e.environment].includes(e.bounds)||t.addIssue({code:n.ZodIssueCode.custom,message:`bounds "${e.bounds}" is not supported for render environment "${e.environment}"`,path:["bounds"]})}),Ti=n.object({id:n.string().min(1),displayName:n.string().min(1),description:n.string().optional(),placementZone:n.enum(Fo),exportName:n.string().min(1).optional(),entityTypes:n.array(n.enum(Dn)).optional(),order:n.number().int().optional(),action:El,render:_l.optional()}).superRefine((e,t)=>{Cv.some(r=>r===e.placementZone)&&(!e.entityTypes||e.entityTypes.length===0)&&t.addIssue({code:n.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:n.ZodIssueCode.custom,message:'projectSidebarItem launchers require entityTypes to include "project"',path:["entityTypes"]}),e.action.type==="performAction"&&e.render&&t.addIssue({code:n.ZodIssueCode.custom,message:"performAction launchers cannot declare render hints",path:["render"]}),["openModal","openDrawer","openPopover"].includes(e.action.type)&&!e.render&&t.addIssue({code:n.ZodIssueCode.custom,message:`${e.action.type} launchers require render metadata`,path:["render"]}),e.action.type==="openModal"&&e.render?.environment==="hostInline"&&t.addIssue({code:n.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:n.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:n.ZodIssueCode.custom,message:"openPopover launchers cannot use the hostRoute render environment",path:["render","environment"]})}),Al=n.object({namespaceSlug:n.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:n.string().min(1).refine(e=>!e.startsWith("/")&&!e.includes("..")&&!/[\\]/.test(e),{message:"migrationsDir must be a relative package path without '..' or backslashes"}),coreReadTables:n.array(n.enum(No)).optional()}),wl=n.object({routeKey:n.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:n.enum(Mo),path:n.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:n.enum(Lo),capability:n.literal("api.routes.register"),checkoutPolicy:n.enum(Do).optional(),companyResolution:n.discriminatedUnion("from",[n.object({from:n.literal("body"),key:n.string().min(1)}),n.object({from:n.literal("query"),key:n.string().min(1)}),n.object({from:n.literal("issue"),param:n.string().min(1)})]).optional()}),Pv=n.object({defaultTtlSeconds:n.number().int().positive().max(86400).optional(),staleAfterSeconds:n.number().int().positive().max(604800).optional()}).superRefine((e,t)=>{e.defaultTtlSeconds!=null&&e.staleAfterSeconds!=null&&e.staleAfterSeconds<e.defaultTtlSeconds&&t.addIssue({code:n.ZodIssueCode.custom,message:"staleAfterSeconds must be greater than or equal to defaultTtlSeconds",path:["staleAfterSeconds"]})}),Nv=n.object({providerKey:ri,displayName:n.string().min(1).max(100),objectTypes:n.array(ii).min(1),urlPatterns:n.array(n.string().trim().min(1).max(500)).optional(),refreshPolicy:Pv.optional(),webhookEndpointKeys:n.array(n.string().min(1)).optional()}).superRefine((e,t)=>{let r=e.objectTypes.filter((o,a)=>e.objectTypes.indexOf(o)!==a);r.length>0&&t.addIssue({code:n.ZodIssueCode.custom,message:`Duplicate objectTypes: ${[...new Set(r)].join(", ")}`,path:["objectTypes"]});let i=e.webhookEndpointKeys??[],s=i.filter((o,a)=>i.indexOf(o)!==a);s.length>0&&t.addIssue({code:n.ZodIssueCode.custom,message:`Duplicate webhookEndpointKeys: ${[...new Set(s)].join(", ")}`,path:["webhookEndpointKeys"]})}),cf=n.object({id:n.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:n.literal(1),version:n.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:n.string().min(1).max(100),description:n.string().min(1).max(500),author:n.string().min(1).max(200),categories:n.array(n.enum(Ur)).min(1),minimumHostVersion:n.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:n.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:n.array(n.enum(jr)).min(1),entrypoints:n.object({worker:n.string().min(1),ui:n.string().min(1).optional()}),instanceConfigSchema:Xn.optional(),jobs:n.array(Sl).optional(),webhooks:n.array(bl).optional(),tools:n.array(Il).optional(),database:Al.optional(),apiRoutes:n.array(wl).optional(),environmentDrivers:n.array(vl).optional(),agents:n.array(wv).optional(),projects:n.array(Tv).optional(),routines:n.array(xv).optional(),skills:n.array(af).optional(),localFolders:n.array(Rv).optional(),objectReferences:n.array(Nv).optional(),launchers:n.array(Ti).optional(),ui:n.object({slots:n.array(kl).min(1).optional(),launchers:n.array(Ti).optional()}).optional()}).superRefine((e,t)=>{let r=(e.ui?.slots?.length??0)>0,i=(e.ui?.launchers?.length??0)>0;if((r||i)&&!e.entrypoints.ui&&t.addIssue({code:n.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:n.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:n.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:n.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:n.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:n.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:n.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:n.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:n.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:n.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:n.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:n.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:n.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 u of c.webhookEndpointKeys??[])o.has(u)||t.addIssue({code:n.ZodIssueCode.custom,message:`objectReferences webhookEndpointKey "${u}" must match a declared webhook endpoint`,path:["objectReferences",a,"webhookEndpointKeys"]})}if(e.database){let o=["database.namespace.migrate","database.namespace.read"];for(let u of o)e.capabilities.includes(u)||t.addIssue({code:n.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:n.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:n.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:n.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:n.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:n.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:n.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:n.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:n.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:n.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:n.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:n.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:n.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,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:n.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,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:n.ZodIssueCode.custom,message:`Duplicate UI slot ids: ${[...new Set(a)].join(", ")}`,path:["ui","slots"]})}let s=[...e.launchers??[],...e.ui?.launchers??[]];if(s.length>0){let o=s.map(c=>c.id),a=o.filter((c,u)=>o.indexOf(c)!==u);a.length>0&&t.addIssue({code:n.ZodIssueCode.custom,message:`Duplicate launcher ids: ${[...new Set(a)].join(", ")}`,path:e.ui?.launchers?["ui","launchers"]:["launchers"]})}}),lf=n.object({packageName:n.string().min(1),version:n.string().min(1).optional(),packagePath:n.string().min(1).optional()}),uf=n.object({configJson:n.record(n.string(),n.unknown())}),df=n.object({configJson:n.record(n.string(),n.unknown())}),pf=n.object({status:n.enum(Dr),lastError:n.string().nullable().optional()}),mf=n.object({removeData:n.boolean().optional().default(!1)}),gf=n.object({scopeKind:n.enum(dn),scopeId:n.string().min(1).optional(),namespace:n.string().min(1).optional(),stateKey:n.string().min(1)}),ff=n.object({scopeKind:n.enum(dn),scopeId:n.string().min(1).optional(),namespace:n.string().min(1).optional(),stateKey:n.string().min(1),value:n.unknown()}),hf=n.object({scopeKind:n.enum(dn).optional(),scopeId:n.string().min(1).optional(),namespace:n.string().min(1).optional()});var O="/api",Uv={health:`${O}/health`,companies:`${O}/companies`,agents:`${O}/agents`,projects:`${O}/projects`,environments:`${O}/environments`,environmentCustomImageTemplate:`${O}/environments/:environmentId/custom-image-template`,environmentCustomImageTemplateDisable:`${O}/environments/:environmentId/custom-image-template`,environmentCustomImageTemplateRollback:`${O}/environments/:environmentId/custom-image-template/rollback`,environmentCustomImageSetupSessions:`${O}/environments/:environmentId/custom-image-setup-sessions`,environmentCustomImageSetupSession:`${O}/environment-custom-image-setup-sessions/:sessionId`,environmentCustomImageSetupSessionTerminalToken:`${O}/environment-custom-image-setup-sessions/:sessionId/terminal-session-token`,environmentCustomImageSetupSessionTerminalWs:`${O}/environment-custom-image-setup-sessions/:sessionId/terminal/ws`,environmentCustomImageSetupSessionFinish:`${O}/environment-custom-image-setup-sessions/:sessionId/finish`,environmentCustomImageSetupSessionCancel:`${O}/environment-custom-image-setup-sessions/:sessionId/cancel`,issues:`${O}/issues`,issueWatchdog:`${O}/issues/:issueId/watchdog`,issueTreeControl:`${O}/issues/:issueId/tree-control`,issueTreeHolds:`${O}/issues/:issueId/tree-holds`,goals:`${O}/goals`,approvals:`${O}/approvals`,secrets:`${O}/secrets`,userSecretDefinitions:`${O}/companies/:companyId/user-secret-definitions`,userSecretDefinition:`${O}/companies/:companyId/user-secret-definitions/:definitionId`,userSecretDefinitionCoverage:`${O}/companies/:companyId/user-secret-definitions/:definitionId/coverage`,myUserSecrets:`${O}/companies/:companyId/me/user-secrets`,myUserSecret:`${O}/companies/:companyId/me/user-secrets/:secretId`,secretProviderConfigs:`${O}/secret-provider-configs`,secretProviderConfigDiscoveryPreview:`${O}/companies/:companyId/secret-provider-configs/discovery/preview`,costs:`${O}/costs`,activity:`${O}/activity`,dashboard:`${O}/dashboard`,sidebarBadges:`${O}/sidebar-badges`,sidebarPreferences:`${O}/sidebar-preferences`,resourceMemberships:`${O}/resource-memberships`,invites:`${O}/invites`,joinRequests:`${O}/join-requests`,members:`${O}/members`,admin:`${O}/admin`};var yf=n.object({version:n.literal(1),updatedAt:n.string(),source:n.enum(["onboard","configure","doctor"])}),Sf=n.object({provider:n.enum(["claude","openai"]),apiKey:n.string().optional()}),bf=n.object({enabled:n.boolean().default(!0),intervalMinutes:n.number().int().min(1).max(10080).default(60),retentionDays:n.number().int().min(1).max(3650).default(7),dir:n.string().default("~/.paperclip/instances/default/data/backups")}),If=n.object({mode:n.enum(["embedded-postgres","postgres"]).default("embedded-postgres"),connectionString:n.string().optional(),embeddedPostgresDataDir:n.string().default("~/.paperclip/instances/default/db"),embeddedPostgresPort:n.number().int().min(1).max(65535).default(54329),backup:bf.default({enabled:!0,intervalMinutes:60,retentionDays:7,dir:"~/.paperclip/instances/default/data/backups"})}),vf=n.object({mode:n.enum(["file","cloud"]),logDir:n.string().default("~/.paperclip/instances/default/logs")}),kf=n.object({deploymentMode:n.enum(ks).default("local_trusted"),exposure:n.enum(Es).default("private"),bind:n.enum(_s).optional(),customBindHost:n.string().optional(),host:n.string().default("127.0.0.1"),port:n.number().int().min(1).max(65535).default(3100),allowedHostnames:n.array(n.string().min(1)).default([]),serveUi:n.boolean().default(!0)}),Ef=n.object({baseUrlMode:n.enum(As).default("auto"),publicBaseUrl:n.string().url().optional(),disableSignUp:n.boolean().default(!1)}),_f=n.object({baseDir:n.string().default("~/.paperclip/instances/default/data/storage")}),Af=n.object({bucket:n.string().min(1).default("paperclip"),region:n.string().min(1).default("us-east-1"),endpoint:n.string().optional(),prefix:n.string().default(""),forcePathStyle:n.boolean().default(!1)}),wf=n.object({provider:n.enum(ko).default("local_disk"),localDisk:_f.default({baseDir:"~/.paperclip/instances/default/data/storage"}),s3:Af.default({bucket:"paperclip",region:"us-east-1",prefix:"",forcePathStyle:!1})}),Tf=n.object({keyFilePath:n.string().default("~/.paperclip/instances/default/secrets/master.key")}),xf=n.object({provider:n.enum(et).default("local_encrypted"),strictMode:n.boolean().default(!1),localEncrypted:Tf.default({keyFilePath:"~/.paperclip/instances/default/secrets/master.key"})}),Rf=n.object({enabled:n.boolean().default(!0)}).default({}),jv=n.object({$meta:yf,llm:Sf.optional(),database:If,logging:vf,server:kf,telemetry:Rf,auth:Ef.default({baseUrlMode:"auto",disableSignUp:!1}),storage:wf.default({provider:"local_disk",localDisk:{baseDir:"~/.paperclip/instances/default/data/storage"},s3:{bucket:"paperclip",region:"us-east-1",prefix:"",forcePathStyle:!1}}),secrets:xf.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:n.ZodIssueCode.custom,message:"server.exposure must be private when deploymentMode is local_trusted",path:["server","exposure"]});for(let r of zo({deploymentMode:e.server.deploymentMode,deploymentExposure:e.server.exposure,bind:e.server.bind,host:e.server.host,customBindHost:e.server.customBindHost}))t.addIssue({code:n.ZodIssueCode.custom,message:r,path:r.includes("customBindHost")?["server","customBindHost"]:["server","bind"]});e.auth.baseUrlMode==="explicit"&&!e.auth.publicBaseUrl&&t.addIssue({code:n.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:n.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:n.ZodIssueCode.custom,message:"auth.publicBaseUrl is required when deploymentMode=authenticated and exposure=public",path:["auth","publicBaseUrl"]})});var Cf=n.object({adapterType:n.string().min(1),enabled:n.boolean().default(!0),runtimeImage:n.string().optional(),envKeys:n.array(n.string()).optional(),allowFqdns:n.array(n.string()).optional(),probeCommand:n.array(n.string()).optional(),defaultEnv:n.record(n.string()).optional()}).strict(),Fv=n.array(Cf);import Xv from"node:fs";import{AsyncLocalStorage as Qv}from"node:async_hooks";import ek from"node:path";import{createInterface as tk}from"node:readline";import{fileURLToPath as nk}from"node:url";var xi={PARSE_ERROR:-32700,INVALID_REQUEST:-32600,METHOD_NOT_FOUND:-32601,INVALID_PARAMS:-32602,INTERNAL_ERROR:-32603},Se={WORKER_UNAVAILABLE:-32e3,CAPABILITY_DENIED:-32001,WORKER_ERROR:-32002,TIMEOUT:-32003,METHOD_NOT_IMPLEMENTED:-32004,INVOCATION_SCOPE_DENIED:-32005,UNKNOWN:-32099};var Tl=1,Jv=Number.MAX_SAFE_INTEGER-1;function xl(e,t,r){return Tl>=Jv&&(Tl=1),{jsonrpc:"2.0",id:r??Tl++,method:e,params:t}}function Rl(e,t){return{jsonrpc:"2.0",id:e,result:t}}function Sn(e,t,r,i){return{jsonrpc:"2.0",id:e,error:i!==void 0?{code:t,message:r,data:i}:{code:t,message:r}}}function Cl(e,t){return{jsonrpc:"2.0",method:e,params:t}}function Ol(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 Pl(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 Nl(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 Ml(e){return"result"in e&&!("error"in e&&e.error!==void 0)}function Ll(e){return"error"in e&&e.error!==void 0}var Of=`
|
|
5
|
-
`;function Dl(e){return JSON.stringify(e)+Of}function Ul(e){let t=e.trim();if(t.length===0)throw new ze("Empty message");let r;try{r=JSON.parse(t)}catch{throw new ze(`Invalid JSON: ${t.slice(0,200)}`)}if(typeof r!="object"||r===null)throw new ze("Message must be a JSON object");let i=r;if(i.jsonrpc!=="2.0")throw new ze(`Invalid or missing jsonrpc version (expected "2.0", got ${JSON.stringify(i.jsonrpc)})`);return r}var ze=class extends Error{name="JsonRpcParseError";constructor(t){super(t)}},yn=class extends Error{name="JsonRpcCallError";code;data;constructor(t){super(t.message),this.code=t.code,this.data=t.data}};var rk=3e4;function Pf(e){let t=ek.resolve(e);try{return Xv.realpathSync.native(t)}catch{return t}}function ik(e,t){let r=Pf(nk(t)),i=Pf(e);return r===i}function Fl(e,t,r){if(r?.stdin!=null&&r?.stdout!=null)return jl({plugin:e,stdin:r.stdin,stdout:r.stdout});let i=process.argv[1];typeof i=="string"&&ik(i,t)&&jl({plugin:e})}function jl(e){let{plugin:t}=e,r=e.stdin??process.stdin,i=e.stdout??process.stdout,s=e.rpcTimeoutMs??rk,o=!0,a=!1,c=null,u={},p=null,m=new Qv,h=[],f=new Map,b=new Map,v=new Map,M=new Map,W=new Map,V=new Map,q=new Map,D=1,Te=Number.MAX_SAFE_INTEGER-1;function Ye(l){if(!o)return;let d=Dl(l);i.write(d)}function S(l,d,g){return new Promise((_,T)=>{if(!o){T(new Error(`Cannot call "${l}" \u2014 worker RPC host is not running`));return}D>=Te&&(D=1);let J=D++,ie=g??s,Ju=!1,Rn=(ue,hs)=>{Ju||(Ju=!0,clearTimeout(Xu),q.delete(J),ue(hs))},Xu=setTimeout(()=>{Rn(T,new yn({code:Se.TIMEOUT,message:`Worker\u2192host call "${l}" timed out after ${ie}ms`}))},ie);q.set(J,{resolve:ue=>{Ml(ue)?Rn(_,ue.result):Ll(ue)?Rn(T,new yn(ue.error)):Rn(T,new Error(`Unexpected response format for "${l}"`))},timer:Xu});try{let ue=m.getStore(),hs={...xl(l,d,J),...ue?{paperclipInvocationId:ue.id}:{}};Ye(hs)}catch(ue){Rn(T,ue instanceof Error?ue:new Error(String(ue)))}})}function ge(l,d){try{let g=m.getStore();Ye({...Cl(l,d),...g?{paperclipInvocationId:g.id}:{}})}catch{}}function CS(){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,_){return S("localFolders.writeTextAtomic",{companyId:l,folderKey:d,relativePath:g,contents:_})},async deleteFile(l,d,g){return S("localFolders.deleteFile",{companyId:l,folderKey:d,relativePath:g})}},events:{on(l,d,g){let _;if(typeof d=="function")_={name:l,fn:d};else{if(!g)throw new Error("Event handler function is required");_={name:l,filter:d,fn:g}}return h.push(_),S("events.subscribe",{eventPattern:l,filter:_.filter??null}).catch(T=>{ge("log",{level:"warn",message:`Failed to subscribe to event "${l}" on host: ${T instanceof Error?T.message:String(T)}`})}),()=>{let T=h.indexOf(_);T!==-1&&h.splice(T,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 T={};d.headers.forEach((J,ie)=>{T[ie]=J}),g.headers=T}else if(Array.isArray(d.headers)){let T={};for(let[J,ie]of d.headers)T[J]=ie;g.headers=T}else g.headers=d.headers;d.body!==void 0&&d.body!==null&&(g.body=typeof d.body=="string"?d.body:String(d.body))}let _=await S("http.fetch",{url:l,init:Object.keys(g).length>0?g:void 0});return new Response(_.body,{status:_.status,statusText:_.statusText,headers:_.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,_){return S("issues.update",{issueId:l,patch:{...d,actorAgentId:_?.actorAgentId,actorUserId:_?.actorUserId,actorRunId:_?.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,_){return S("issues.createComment",{issueId:l,body:d,companyId:g,authorAgentId:_?.authorAgentId})},async createInteraction(l,d,g,_){return S("issues.createInteraction",{issueId:l,companyId:g,interaction:d,authorAgentId:_?.authorAgentId})},async suggestTasks(l,d,g,_){return S("issues.createInteraction",{issueId:l,companyId:g,interaction:{...d,kind:"suggest_tasks"},authorAgentId:_?.authorAgentId})},async askUserQuestions(l,d,g,_){return S("issues.createInteraction",{issueId:l,companyId:g,interaction:{...d,kind:"ask_user_questions"},authorAgentId:_?.authorAgentId})},async requestConfirmation(l,d,g,_){return S("issues.createInteraction",{issueId:l,companyId:g,interaction:{...d,kind:"request_confirmation"},authorAgentId:_?.authorAgentId})},async requestCheckboxConfirmation(l,d,g,_){return S("issues.createInteraction",{issueId:l,companyId:g,interaction:{...d,kind:"request_checkbox_confirmation"},authorAgentId:_?.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,_){return S("issues.relations.setBlockedBy",{issueId:l,companyId:g,blockedByIssueIds:d,actorAgentId:_?.actorAgentId,actorUserId:_?.actorUserId,actorRunId:_?.actorRunId})},async addBlockers(l,d,g,_){return S("issues.relations.addBlockers",{issueId:l,companyId:g,blockerIssueIds:d,actorAgentId:_?.actorAgentId,actorUserId:_?.actorUserId,actorRunId:_?.actorRunId})},async removeBlockers(l,d,g,_){return S("issues.relations.removeBlockers",{issueId:l,companyId:g,blockerIssueIds:d,actorAgentId:_?.actorAgentId,actorUserId:_?.actorUserId,actorRunId:_?.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&&V.set(l,g.onEvent);try{return await S("agents.sessions.sendMessage",{sessionId:l,companyId:d,prompt:g.prompt,reason:g.reason})}catch(_){throw V.delete(l),_}},async close(l,d){V.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){M.set(l,d)}},streams:(()=>{let l=new Map;return{open(d,g){l.set(d,g),ge("streams.open",{channel:d,companyId:g})},emit(d,g){let _=l.get(d)??"";ge("streams.emit",{channel:d,companyId:_,event:g})},close(d){let g=l.get(d)??"";l.delete(d),ge("streams.close",{channel:d,companyId:g})}}})(),tools:{register(l,d,g){W.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){ge("log",{level:"info",message:l,meta:d})},warn(l,d){ge("log",{level:"warn",message:l,meta:d})},error(l,d){ge("log",{level:"error",message:l,meta:d})},debug(l,d){ge("log",{level:"debug",message:l,meta:d})}}}}let OS=CS();async function PS(l){let{id:d,method:g,params:_}=l;try{let T=()=>NS(g,_),J=l.paperclipInvocation?await m.run(l.paperclipInvocation,T):await T();Ye(Rl(d,J??null))}catch(T){let J=T instanceof Error?T.message:String(T),ie=typeof T?.code=="number"?T.code:Se.WORKER_ERROR;Ye(Sn(d,ie,J))}}async function NS(l,d){switch(l){case"initialize":return MS(d);case"health":return LS();case"shutdown":return DS();case"validateConfig":return US(d);case"configChanged":return jS(d);case"onEvent":return Zu(d);case"runJob":return FS(d);case"handleWebhook":return qS(d);case"handleApiRequest":return BS(d);case"getData":return $S(d);case"performAction":return HS(d);case"executeTool":return WS(d);case"detectExternalObjects":return zS(d);case"resolveExternalObject":return GS(d);case"refreshExternalObjects":return YS(d);case"environmentValidateConfig":return ZS(d);case"environmentProbe":return JS(d);case"environmentAcquireLease":return XS(d);case"environmentResumeLease":return QS(d);case"environmentReleaseLease":return eb(d);case"environmentDestroyLease":return tb(d);case"environmentRealizeWorkspace":return nb(d);case"environmentExecute":return rb(d);case"environmentStartInteractiveSetup":return ib(d);case"environmentGetInteractiveSetup":return sb(d);case"environmentCaptureTemplate":return ob(d);case"environmentCancelInteractiveSetup":return ab(d);case"environmentDeleteTemplate":return cb(d);default:throw Object.assign(new Error(`Unknown method: ${l}`),{code:xi.METHOD_NOT_FOUND})}}async function MS(l){if(a)throw new Error("Worker already initialized");c=l.manifest,u=l.config,p=l.databaseNamespace??null,await t.definition.setup(OS),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.onDetectExternalObjects&&d.push("detectExternalObjects"),t.definition.onResolveExternalObject&&d.push("resolveExternalObject"),t.definition.onRefreshExternalObjects&&d.push("refreshExternalObjects"),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"),t.definition.onEnvironmentStartInteractiveSetup&&d.push("environmentStartInteractiveSetup"),t.definition.onEnvironmentGetInteractiveSetup&&d.push("environmentGetInteractiveSetup"),t.definition.onEnvironmentCaptureTemplate&&d.push("environmentCaptureTemplate"),t.definition.onEnvironmentCancelInteractiveSetup&&d.push("environmentCancelInteractiveSetup"),t.definition.onEnvironmentDeleteTemplate&&d.push("environmentDeleteTemplate"),{ok:!0,supportedMethods:d}}async function LS(){return t.definition.onHealth?t.definition.onHealth():{status:"ok"}}async function DS(){t.definition.onShutdown&&await t.definition.onShutdown(),setImmediate(()=>{fs(),!e.stdin&&!e.stdout&&process.exit(0)})}async function US(l){if(!t.definition.onValidateConfig)throw Object.assign(new Error("validateConfig is not implemented by this plugin"),{code:Se.METHOD_NOT_IMPLEMENTED});return t.definition.onValidateConfig(l.config)}async function jS(l){u=l.config,t.definition.onConfigChanged&&await t.definition.onConfigChanged(l.config)}async function Zu(l){let d=l.event;for(let g of h){let _=g.name===d.eventType,T=g.name==="plugin.*"&&d.eventType.startsWith("plugin."),J=g.name.endsWith(".*")&&d.eventType.startsWith(g.name.slice(0,-1));if(!(!_&&!T&&!J)&&!(g.filter&&!lb(g.filter,d)))try{await g.fn(d)}catch(ie){ge("log",{level:"error",message:`Event handler for "${g.name}" failed: ${ie instanceof Error?ie.message:String(ie)}`,meta:{eventType:d.eventType,stack:ie instanceof Error?ie.stack:void 0}})}}}async function FS(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 qS(l){if(!t.definition.onWebhook)throw Object.assign(new Error("handleWebhook is not implemented by this plugin"),{code:Se.METHOD_NOT_IMPLEMENTED});await t.definition.onWebhook(l)}async function BS(l){if(!t.definition.onApiRequest)throw Object.assign(new Error("handleApiRequest is not implemented by this plugin"),{code:Se.METHOD_NOT_IMPLEMENTED});return t.definition.onApiRequest(l)}async function $S(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 vr(l){return typeof l=="string"&&l.trim().length>0?l.trim():null}function VS(l){return l==="user"||l==="agent"||l==="system"?l:"system"}function KS(l){let d=l.actorContext&&typeof l.actorContext=="object"?l.actorContext:null,g=Object.freeze({type:VS(d?.type),userId:vr(d?.userId),agentId:vr(d?.agentId),runId:vr(d?.runId),companyId:vr(d?.companyId)});return Object.freeze({actor:g,companyId:g.companyId})}async function HS(l){let d=M.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}},KS(l))}async function WS(l){let d=W.get(l.toolName);if(!d)throw new Error(`No tool handler registered for "${l.toolName}"`);return d.fn(l.parameters,l.runContext)}async function zS(l){if(!t.definition.onDetectExternalObjects)throw Z("detectExternalObjects");return t.definition.onDetectExternalObjects(l)}async function GS(l){if(!t.definition.onResolveExternalObject)throw Z("resolveExternalObject");return t.definition.onResolveExternalObject(l)}async function YS(l){if(!t.definition.onRefreshExternalObjects)throw Z("refreshExternalObjects");return t.definition.onRefreshExternalObjects(l)}function Z(l){return Object.assign(new Error(`${l} is not implemented by this plugin`),{code:Se.METHOD_NOT_IMPLEMENTED})}async function ZS(l){if(!t.definition.onEnvironmentValidateConfig)throw Z("environmentValidateConfig");return t.definition.onEnvironmentValidateConfig(l)}async function JS(l){if(!t.definition.onEnvironmentProbe)throw Z("environmentProbe");return t.definition.onEnvironmentProbe(l)}async function XS(l){if(!t.definition.onEnvironmentAcquireLease)throw Z("environmentAcquireLease");return t.definition.onEnvironmentAcquireLease(l)}async function QS(l){if(!t.definition.onEnvironmentResumeLease)throw Z("environmentResumeLease");return t.definition.onEnvironmentResumeLease(l)}async function eb(l){if(!t.definition.onEnvironmentReleaseLease)throw Z("environmentReleaseLease");return t.definition.onEnvironmentReleaseLease(l)}async function tb(l){if(!t.definition.onEnvironmentDestroyLease)throw Z("environmentDestroyLease");return t.definition.onEnvironmentDestroyLease(l)}async function nb(l){if(!t.definition.onEnvironmentRealizeWorkspace)throw Z("environmentRealizeWorkspace");return t.definition.onEnvironmentRealizeWorkspace(l)}async function rb(l){if(!t.definition.onEnvironmentExecute)throw Z("environmentExecute");return t.definition.onEnvironmentExecute(l)}async function ib(l){if(!t.definition.onEnvironmentStartInteractiveSetup)throw Z("environmentStartInteractiveSetup");return t.definition.onEnvironmentStartInteractiveSetup(l)}async function sb(l){if(!t.definition.onEnvironmentGetInteractiveSetup)throw Z("environmentGetInteractiveSetup");return t.definition.onEnvironmentGetInteractiveSetup(l)}async function ob(l){if(!t.definition.onEnvironmentCaptureTemplate)throw Z("environmentCaptureTemplate");return t.definition.onEnvironmentCaptureTemplate(l)}async function ab(l){if(!t.definition.onEnvironmentCancelInteractiveSetup)throw Z("environmentCancelInteractiveSetup");return t.definition.onEnvironmentCancelInteractiveSetup(l)}async function cb(l){if(!t.definition.onEnvironmentDeleteTemplate)throw Z("environmentDeleteTemplate");return t.definition.onEnvironmentDeleteTemplate(l)}function lb(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 ub(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 db(l){if(!l.trim())return;let d;try{d=Ul(l)}catch(g){g instanceof ze&&Ye(Sn(null,xi.PARSE_ERROR,`Parse error: ${g.message}`));return}if(Nl(d))ub(d);else if(Ol(d))PS(d).catch(g=>{let _=g instanceof Error?g.message:String(g),T=g?.code??Se.WORKER_ERROR;try{Ye(Sn(d.id,typeof T=="number"?T:Se.WORKER_ERROR,_))}catch{}});else if(Pl(d)){let g=d,_=T=>g.paperclipInvocation?m.run(g.paperclipInvocation,T):T();if(g.method==="agents.sessions.event"&&g.params){let T=g.params,J=V.get(T.sessionId);J&&J(T)}else g.method==="onEvent"&&g.params&&Promise.resolve(_(()=>Zu(g.params))).catch(T=>{ge("log",{level:"error",message:`Failed to handle event notification: ${T instanceof Error?T.message:String(T)}`})})}}function fs(){o=!1,xn&&(xn.close(),xn=null);for(let[l,d]of q)clearTimeout(d.timer),d.resolve(Sn(l,Se.WORKER_UNAVAILABLE,"Worker RPC host is shutting down"));q.clear(),V.clear()}let xn=tk({input:r,crlfDelay:1/0});return xn.on("line",db),xn.on("close",()=>{o&&(fs(),!e.stdin&&!e.stdout&&process.exit(0))}),!e.stdin&&!e.stdout&&(process.on("uncaughtException",l=>{ge("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;ge("log",{level:"error",message:`Unhandled rejection: ${d}`,meta:{stack:g}})})),{get running(){return o},stop(){fs()}}}import{performance as Nf}from"perf_hooks";import{join as zl,dirname as sk}from"path";import{randomBytes as ok}from"crypto";import{readFile as ak,mkdir as ck,open as lk,rename as uk,unlink as dk}from"fs/promises";function pk(e){return Zf(e.priority)*100+Jf(e.consequence)*10+Xf(e.tone)+(e.blocking?1e3:0)+(e.attentionScoreOffset??0)}function Le(e,t={}){return Zf(pe(e))*100+Jf(e.consequence)*10+Xf(e.tone)+(Ht(e)?1e3:0)+Yf(e)+mk(e,t.now)}function pe(e){return e.mode==="status"?e.tone==="critical"||e.consequence==="high"?"high":e.tone==="focused"||e.consequence==="medium"?"normal":"background":"high"}function Yf(e){let t=e.metadata?.attention;return t&&typeof t=="object"&&"scoreOffset"in t&&typeof t.scoreOffset=="number"?t.scoreOffset:0}function Ht(e){return e.mode!=="status"&&e.responseSpec?.kind!=="none"}function Zf(e){switch(e){case"background":return 0;case"normal":return 1;case"high":return 2}}function Jf(e){switch(e){case"low":return 0;case"medium":return 1;case"high":return 2}}function Xf(e){switch(e){case"ambient":return 0;case"focused":return 1;case"critical":return 2}}function mk(e,t){let r=t??e.timing.updatedAt,i=Date.parse(e.timing.updatedAt),s=Date.parse(r);if(Number.isNaN(i)||Number.isNaN(s)||s<=i)return 0;let o=s-i,a=gk(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 gk(e){return Ht(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 fk=250;function hk(e,t={}){let r=[],i=[];for(let a of e)a.now&&(yk(a.now)?i.push(a.now):r.push(a.now)),r.push(...a.next),i.push(...a.ambient);let s=t.now??bk([...r,...i]);if(Sk([...r,...i])>=2){let a=[],c=[];for(let u of r)!Qf(u)&&Le(u,{now:s})<200?c.push(u):a.push(u);r=a,i=[...i,...c]}if(r.sort((a,c)=>Mf(a,c,s)),i.sort((a,c)=>Mf(a,c,s)),t.operatorPresence==="absent")return{now:null,next:r,ambient:i};let o=Ik(r,i,t.focusedInteractionId??null,s);if(o){let a=r.some(c=>c.interactionId===o.interactionId);return{now:o,next:a?r.filter(c=>c.interactionId!==o.interactionId):r,ambient:i.filter(c=>c.interactionId!==o.interactionId)}}if(r.length>0){let[a,...c]=r;return{now:a??null,next:c,ambient:i}}if(i.length>0){let[a,...c]=i;return a&&(Le(a,{now:s})<=0||t.globalAttentionState==="overloaded"&&Le(a,{now:s})<200)?{now:null,next:[],ambient:i}:{now:a??null,next:[],ambient:c}}return{now:null,next:[],ambient:[]}}function yk(e){return e.mode==="status"||e.tone==="ambient"}function Qf(e){return e.mode!=="status"||e.tone==="critical"||e.consequence==="high"}function Sk(e){return e.filter(Qf).length}function Mf(e,t,r){let i=Le(t,{now:r})-Le(e,{now:r});return i!==0?i:e.timing.createdAt.localeCompare(t.timing.createdAt)}function bk(e){let t="1970-01-01T00:00:00.000Z";for(let r of e){let i=r.timing.updatedAt;i.localeCompare(t)>0&&(t=i)}return t}function Ik(e,t,r,i){if(!r)return null;let s=e.find(a=>a.interactionId===r)??t.find(a=>a.interactionId===r)??null;if(!s)return null;let o=e[0]??t[0]??null;return!o||o.interactionId===s.interactionId?s:vk(s,o,i)?null:s}function vk(e,t,r){return t.tone==="critical"&&e.tone!=="critical"||t.mode!=="status"&&t.consequence==="high"&&e.consequence!=="high"?!0:Le(t,{now:r})-Le(e,{now:r})>=fk}function Ut(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 Ri(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 kk=class{apply(e,t,r=t){let i=this.scoreOffset(e,t,r),s=this.rationale(e,t,r,i);return{...e,...i!==0?{attentionScoreOffset:i}:{},...s.length>0?{attentionRationale:s}:{}}}scoreOffset(e,t,r){let i=0,s=Ut(t),o=Ut(r),a=Ri(t),c=Ri(r);if(e.mode==="status"){let u=e.consequence==="high"||e.tone==="critical";t.dismissalRate>=.5&&(i-=15),t.deferred.suppressed>=2&&(i-=10),u&&(i+=20),!u&&s==="overloaded"&&(i-=10),!u&&s==="avoiding"&&(i-=10),!u&&s!=="overloaded"&&o==="overloaded"&&(i-=5),!u&&c.includes("fragmented_attention")&&(i-=5)}return e.blocking&&t.counts.contextExpanded>=2&&(i+=10),e.blocking&&t.responseRate>=.75&&t.averageResponseLatencyMs!==null&&t.averageResponseLatencyMs<=1e4&&(i+=5),e.blocking&&s==="hesitating"&&(i+=5),e.blocking&&a.includes("defer_then_return")&&(i+=5),i}rationale(e,t,r,i){let s=[],o=Ut(t),a=Ut(r),c=Ri(t),u=Ri(r);return e.mode==="status"&&t.dismissalRate>=.5&&s.push("status updates for this task are often dismissed"),e.mode==="status"&&t.deferred.suppressed>=2&&s.push("similar task updates have repeatedly remained ambient"),e.mode==="status"&&(e.consequence==="high"||e.tone==="critical")&&s.push("high-consequence status should remain more visible"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&o==="overloaded"&&s.push("recent task activity suggests attention is already saturated"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&o==="avoiding"&&s.push("recent behavior suggests low-value updates should stay quiet"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&o!=="overloaded"&&a==="overloaded"&&s.push("overall operator activity suggests attention is already saturated"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&u.includes("fragmented_attention")&&s.push("recent attention has already shifted repeatedly across work"),e.blocking&&t.counts.contextExpanded>=2&&s.push("this task often requires deeper context before action"),e.blocking&&t.responseRate>=.75&&t.averageResponseLatencyMs!==null&&t.averageResponseLatencyMs<=1e4&&s.push("similar blocking interactions usually receive quick responses"),e.blocking&&o==="hesitating"&&s.push("similar blocking interactions appear to require more deliberation"),e.blocking&&c.includes("defer_then_return")&&s.push("similar interactions are often deferred and resumed later"),i===0?[]:s}},Ek=["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"],_k=["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"],Ak=["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"],wk=["production","prod","force push","git push --force","rm -rf","drop table","delete database","delete prod","sudo","chmod 777","kill process","migrate"],Tk=["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"],xk=["observation","contents of","showing first","showing top","found"],Rk=["path","type file","content"],Ck=["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"],Ok=["tool-output","dmesg"],Pk=["makefile","spdx-license-identifier","patchlevel","sublevel","extraversion"],Nk=/(?:^|\s)\/[a-z0-9._-]+(?:\/[a-z0-9._-]+)+(?:\s|$)/,Mk=/\bfound\s+\d+\s+match(?:es)?\b|\bshowing\s+(?:first|top)\s+\d+\b|\bmatch(?:es)?\s+in\s+\d+\s+files?\b/,Lk=/\b(import|from|export|class|def|function|const|let|var|return)\b/,Dk=/\b\d+\s+(?:import|from|export|class|def|function|const|let|var|return)\b/,Uk=/\/[a-z0-9._/-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)(?:\b|\/)/,jk=/\b[a-z0-9.-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)\b/,Fk=/\b(static|struct|enum|typedef|void|int|char|bool|return)\b/,qk=/\b\d+\s+(?:static|struct|enum|typedef|void|int|char|bool|return)\b/,Bk=/\b\d+\s+\[\s*\d+\.\d+\]\s+[a-z0-9_.:-]+/,$k=/\b(?:version|patchlevel|sublevel|extraversion)\b/,Vk=["form is valid false","form without instance is valid false","form errors","errorlist","decompress result"],Kk=["traceback","exception","permission denied","command not found","segmentation fault"],Hk=["still","again","back again","came back","continues","continuing","returned","returning","remains","persisting","retrying","recurred"],Wk=["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"],zk=["resolved","fixed","unblocked","no longer blocked"],Lf=["not resolved","did not resolve","didn t resolve","not fixed","did not fix","didn t fix","not recovered","did not recover","didn t recover"],Gk=["recovered","completed successfully","succeeded after"],Df=["instead","supersedes","superseded","replaced by","use this plan instead","follow this plan instead"],Yk=["worse","worsened","escalating","regression","regressed","spread","broader impact","degraded further","critical now","now failing"],Zk=["did not regress","didn t regress","no regression","not worsening","did not worsen","didn t worsen","not escalating","did not escalate","didn t escalate"],Jk=["fail","failed","failing","failure","error","broken","blocked","stalled","stall","incident","issue","outage","degraded","regression","retry","rollback"];function sr(e){return e.toLowerCase().replace(/[^a-z0-9/._-]+/g," ").trim()}function Gl(e){return[...new Set(e)]}function su(e){return ql(e.toolFamily)??ql(uE(e.metadata))??ql(dE(e.context))}function th(e){let t=su(e);if(t)return t;let r=sr(`${e.title} ${e.summary??""}`);return Ne(r,"wants to read")||Ne(r,"wants to inspect")||er(r,"read")||er(r,"inspect")?"read":Ne(r,"wants to write")||er(r,"write")?"write":Ne(r,"wants to edit")||er(r,"edit")?"edit":Ne(r,"shell command")||Ne(r,"wants to run")?"bash":Ne(r,"search the web")?"web":Ne(r,"search files")||Ne(r,"search file contents")?"search":null}function Xk(e){return U(e,eh)?!1:U(e,Ek)}function Qk(e){return U(e,eh)?null:U(e,_k)?"blocking":U(e,Ak)?"waiting":null}function nh(e){let t=[],r=U(e,Hk)&&!U(e,Wk),i=U(e,zk)&&!U(e,Lf),s=U(e,Gk)&&!U(e,Lf),o=U(e,Yk)&&!U(e,Zk),a=U(e,Jk)||U(e,Df)||o;return r&&a&&t.push({kind:"same_issue"},{kind:"repeats"}),(i||s&&a)&&t.push({kind:"same_issue"},{kind:"resolves"}),U(e,Df)&&t.push({kind:"same_issue"},{kind:"supersedes"}),o&&t.push({kind:"same_issue"},{kind:"escalates"}),mE(t)}function Qn(e,t,r){return pE(e)||r==="read"||r==="search"?t:rE(e,wk)?"high":(r==="write"||r==="edit"||r==="bash")&&t==="low"?"medium":t}function eE(e,t){return t!=="edit"&&t!=="read"?!1:U(e,Tk)||sh(e)||ih(e)}function tE(e,t){return t==="search"?Uf(e):t==="read"?Uf(e)?!0:!sh(e)&&!ih(e)||aE(e)?!1:cE(e)||lE(e):!1}function nE(e,t){return t!=="bash"?!1:U(e,Vk)&&!U(e,Kk)}function U(e,t){return t.some(r=>rh(e,r))}function rE(e,t){return t.some(r=>iE(e,r))}function rh(e,t){let r=sr(t);return r?r.includes(" ")?Ne(e,r):er(e,r):!1}function iE(e,t){return rh(e,t)}function ih(e){return ou(e)?U(e,xk)||sE(e)||oE(e):!1}function sh(e){return U(e,Rk)&&ou(e)}function Uf(e){return Mk.test(e)||ou(e)&&/\bmatch(?:es)?\b/.test(e)}function ou(e){return Nk.test(e)}function sE(e){return Lk.test(e)}function oE(e){return Dk.test(e)}function aE(e){return Uk.test(e)||jk.test(e)||Fk.test(e)||qk.test(e)}function cE(e){return Bk.test(e)||U(e,Ok)}function lE(e){return $k.test(e)||U(e,Pk)}function uE(e){let t=e?.toolFamily;return typeof t=="string"?t:null}function dE(e){if(!e?.items)return null;for(let t of e.items){let r=t.id.toLowerCase(),i=t.label.toLowerCase();if(r==="toolfamily"||r==="tool_family"||r==="tool"||i==="tool family")return t.value??null}return null}function ql(e){if(!e)return null;let t=e.trim().toLowerCase();return t.length>0?t:null}function Ne(e,t){let r=sr(t);return r?new RegExp(`(?:^|[^a-z0-9_])${oh(r)}(?:$|[^a-z0-9_])`).test(e):!1}function er(e,t){return new RegExp(`(?:^|[^a-z0-9_])${oh(t)}(?:$|[^a-z0-9_])`).test(e)}function oh(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function pE(e){return U(e,Ck)}function mE(e){let t=new Set,r=[];for(let i of e){let s=`${i.kind}:${i.target??""}`;t.has(s)||(t.add(s),r.push(i))}return r}function gE(e){switch(e){case"approval":return"approval_request";case"choice":return"question_request";case"form":return"form_request"}}function fE(e){switch(e){case"approval":return"permission_request";case"choice":case"form":return"question_request"}}function hE(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 jt(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 bn(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 jf(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 ah(e){let t=yE(e);return IE(t,e.semanticHints)}function yE(e){switch(e.type){case"task.started":return{intentFrame:"task_started",activityClass:"session_status",consequence:"low",factors:["task.started"],relationHints:[],confidence:"high",reasons:jf("task_started"),provenance:ae(["intentFrame","activityClass","consequence","confidence"])};case"task.updated":return SE(e);case"human.input.requested":return bE(e);case"task.completed":return{intentFrame:"completion",activityClass:"tool_completion",consequence:"low",factors:["task.completed"],relationHints:[],confidence:"high",reasons:jf("completion"),provenance:ae(["intentFrame","activityClass","consequence","confidence"])};case"task.cancelled":return{intentFrame:"cancellation",activityClass:"status_update",consequence:"low",...e.reason?{whyNow:jt("completed",{wasCancelled:!0})??"Work was cancelled and may need review."}:{},factors:["task.cancelled"],relationHints:[],confidence:"high",reasons:bn("completed",{wasCancelled:!0}),provenance:{...ae(["intentFrame","activityClass","consequence","confidence"]),...e.reason?ae(["whyNow"]):{}}};default:return _E(e)}}function SE(e){let t=sr(`${e.title} ${e.summary??""}`),r=Xk(t),i=Qk(t),s=nh(t),o=dh(e.title,e.summary,e.toolFamily,e.context),{toolFamily:a,source:c}=uh(o,!0),u=s.length>0?ae(["relationHints"]):{},p=e.status==="failed"&&eE(t,a),m=e.status==="failed"&&tE(t,a),h=e.status==="failed"&&nE(t,a);switch(e.status){case"failed":return p?{intentFrame:"status_update",activityClass:"status_update",...a?{toolFamily:a}:{},consequence:Qn(t,m?"low":"high",a),factors:["task.updated","failed","observational_failure"],relationHints:s,confidence:"high",reasons:["task status indicates failure but the update reads like observational output"],provenance:{...ae(["intentFrame","activityClass","consequence","confidence"]),...tr(c),...u}}:{intentFrame:"failure",activityClass:"tool_failure",...a?{toolFamily:a}:{},consequence:Qn(t,m?"low":h?"medium":"high",a),whyNow:jt("failed")??"Work has failed and should be reviewed.",factors:["task.updated","failed"],relationHints:s,confidence:r?"medium":"high",reasons:h?[...bn("failed",{impliedAsk:r}),"failure content looks like expected diagnostic output from repro work"]:bn("failed",{impliedAsk:r}),provenance:{...ae(["intentFrame","activityClass","consequence","whyNow","confidence"]),...tr(c),...u}};case"blocked":return{intentFrame:"blocked_work",activityClass:"status_update",...a?{toolFamily:a}:{},consequence:Qn(t,"medium",a),whyNow:jt("blocked")??"Work is blocked and may require operator attention.",factors:["task.updated","blocked"],relationHints:s,confidence:r?"medium":"high",reasons:bn("blocked",{impliedAsk:r}),provenance:{...ae(["intentFrame","activityClass","consequence","whyNow","confidence"]),...tr(c),...u}};case"running":case"waiting":case"completed":return{intentFrame:i==="blocking"?"blocked_work":"status_update",activityClass:"status_update",...a?{toolFamily:a}:{},consequence:Qn(t,"low",a),...(()=>{let f=i==="blocking"?jt("blocked"):r?jt(e.status,{impliedAsk:r}):void 0;return f!==void 0?{whyNow:f}:{}})(),factors:["task.updated",e.status,...i==="blocking"?["semantic blocking signal"]:[]],relationHints:s,confidence:i==="blocking"?"medium":r?"low":"high",reasons:i==="blocking"?[...bn("blocked"),"status wording indicates work cannot continue yet"]:bn(e.status,{impliedAsk:r}),provenance:{...ae(["intentFrame","activityClass","consequence","confidence"]),...tr(c),...i==="blocking"||r?ae(["whyNow"]):{},...u}};default:return AE(e.status)}}function bE(e){let t=dh(e.title,e.summary,e.toolFamily,e.context),{toolFamily:r,source:i}=uh(t,e.request.kind==="approval"),s=sr(`${e.title} ${e.summary}`),o=nh(s),a=e.riskHint??EE(e.request.kind,r),c=Qn(s,a,r),u=o.length>0?ae(["relationHints"]):{};return{intentFrame:gE(e.request.kind),activityClass:fE(e.request.kind),...r?{toolFamily:r}:{},consequence:c,whyNow:hE(e.request.kind,c),factors:["human.input.requested",e.request.kind],relationHints:o,confidence:e.riskHint?"high":e.request.kind==="approval"&&r?"medium":"low",reasons:[e.riskHint?"source provided an explicit risk hint":"request kind establishes an explicit operator decision point",...i==="explicit"?["tool family was supplied by the source or context"]:i==="inferred"?["tool family was inferred from approval wording"]:[]],provenance:{...ae(["intentFrame","activityClass","whyNow"]),...tr(i),...e.riskHint?ch(["consequence","confidence"]):ae(["consequence","confidence"]),...u}}}function ae(e){return lh(e,"inferred")}function ch(e){return lh(e,"source")}function lh(e,t){return Object.fromEntries(e.map(r=>[r,t]))}function tr(e){switch(e){case"explicit":return ch(["toolFamily"]);case"inferred":return ae(["toolFamily"]);case"none":return{};default:return TE(e)}}function uh(e,t){let r=su(e);if(r)return{toolFamily:r,source:"explicit"};if(!t)return{source:"none"};let i=th(e);return i?{toolFamily:i,source:"inferred"}:{source:"none"}}function IE(e,t){return t?{...e,...kE(t),factors:Gl([...e.factors??[],...t.factors??[]]),relationHints:[...t.relationHints??e.relationHints],reasons:Gl([...e.reasons??[],...t.reasons??[]]),provenance:{...e.provenance??{},...vE(t)}}:e}function vE(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 kE(e){let t={};for(let[r,i]of Object.entries(e))i!==void 0&&r!=="factors"&&r!=="relationHints"&&r!=="reasons"&&(t[r]=i);return t}function EE(e,t){switch(e){case"approval":return t==="read"||t==="search"?"low":"medium";case"choice":case"form":return"medium";default:return wE(e)}}function dh(e,t,r,i){return{title:e,...t!==void 0?{summary:t}:{},...r!==void 0?{toolFamily:r}:{},...i?.items!==void 0?{context:{items:i.items}}:{}}}function _E(e){throw new Error(`Unhandled source event in semantic interpreter: ${JSON.stringify(e)}`)}function AE(e){throw new Error(`Unhandled task status in semantic interpreter: ${e}`)}function wE(e){throw new Error(`Unhandled human input request kind in semantic interpreter: ${e}`)}function TE(e){throw new Error(`Unhandled tool family provenance source in semantic interpreter: ${e}`)}function au(e,t){return{ask:xE(e,t),activity:RE(e,t),...t.consequence!==void 0?{consequence:t.consequence}:{},blocking:CE(e,t),episode:OE(e,t),confidence:t.confidence,source:NE(e,t)}}function xE(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 Vi(e)}}function RE(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 Vi(e)}}function CE(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 Vi(e)}}function OE(e,t){let r=new Set(t.relationHints.map(i=>i.kind));return r.has("resolves")?"resolved":r.has("same_issue")&&PE(t.relationHints)?"resurfaced":r.has("same_issue")?"same_issue":e.type==="human.input.requested"||e.type==="task.started"?"new":"unknown"}function PE(e){return e.some(t=>t.kind==="repeats"||t.kind==="escalates"||t.kind==="supersedes")}function NE(e,t){let r=Object.values(t.provenance??{});return r.includes("hint")?"hinted":ME(e,t)?e.type==="task.updated"&&t.intentFrame==="status_update"&&t.confidence==="low"&&t.provenance?.confidence==="inferred"?"inferred":"explicit":r.includes("source")?"explicit":r.includes("inferred")?"inferred":"explicit"}function ME(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 LE(e.status)}default:return Vi(e)}}function Vi(e){throw new Error(`Unhandled semantic ontology event: ${JSON.stringify(e)}`)}function LE(e){throw new Error(`Unhandled task status in semantic ontology: ${e}`)}function DE(e){if(!e.semantic)return{blockedLikeStatus:!1};let t=au(e,e.semantic),r=e.semantic.abstained===!0;return{ontology:t,semanticEvidence:{confidence:t.confidence,source:t.source,strength:hh(t.confidence,t.source,r),abstained:r},...e.semantic.relationHints.length>0?{relationEvidence:{source:yh(e.semantic),strength:qE(e.semantic,r)}}:{},blockedLikeStatus:e.type==="task.updated"&&t.blocking==="blocking"&&e.status!=="blocked"}}function ph(e){return Wt(e)?.strength??null}function Wt(e){return e.judgmentInput.semanticEvidence??null}function UE(e){return e.judgmentInput.relationEvidence??null}function mh(e){return UE(e)?.strength??null}function gh(e){return e.judgmentInput.ontology??null}function Li(e){return Wt(e)?.confidence??null}function Di(e){return Wt(e)?.abstained===!0}function jE(e){return Li(e)==="low"}function FE(e){let t=ph(e),r=Wt(e)?.source;if(!t||!r)return 0;if(r==="inferred")switch(t){case"weak":return-2;case"qualified":return-1;case"strong":return 0}return(r==="explicit"||r==="hinted")&&t==="strong"?1:0}function cu(e){return e.judgmentInput.blockedLikeStatus}function fh(e,t){return t==="ambient"&&cu(e)?"queue":t}function hh(e,t,r){if(r)return"weak";switch(e){case"low":return"weak";case"medium":return t==="inferred"?"weak":"qualified";case"high":return t==="inferred"?"qualified":"strong"}}function yh(e){switch(e.provenance?.relationHints){case"source":return"explicit";case"hint":return"hinted";case"inferred":return"inferred";default:return"inferred"}}function qE(e,t){switch(yh(e)){case"explicit":return"strong";case"hinted":return t?"weak":"qualified";case"inferred":return hh(e.confidence,"inferred",t)}}var BE=1,st=BE,G={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 Sh(e,t){return(e??[]).some(r=>r.kind===t)}function $E(e){return(e??[]).find(r=>typeof r.target=="string"&&r.target.length>0)?.target??null}function Ki(e=Date.now){return{nowMs:()=>e(),nowIso:()=>vn(e()),parse:rr,add:VE,diff:lu}}function rr(e){let t=Date.parse(e);return Number.isNaN(t)?null:t}function vn(e){return new Date(e).toISOString()}function VE(e,t){let r=rr(e);return r===null?null:vn(r+t)}function lu(e,t){let r=rr(e),i=rr(t);return r===null||i===null?null:r-i}var Ae=G.episodeEvidence,KE=1440*6e4,HE=1024,WE=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??Ki(),this.dormantRetentionMs=e.dormantRetentionMs??KE,this.maxDormantEpisodes=e.maxDormantEpisodes??HE}assign(e){let t=this.clock.parse(e.timestamp);t!==null&&(this.latestObservedAtMs===null||t>this.latestObservedAtMs)&&(this.latestObservedAtMs=t);let r=zE(e),i=this.byInteractionId.get(e.interactionId),s=i?this.byId.get(i):void 0,o=s?null:this.byKey.get(r),a=s??this.resolveAssignableRecord(r,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 r=this.byId.get(t);if(r){this.byKey.get(r.key)?.id===r.id&&this.byKey.delete(r.key),this.byId.delete(r.id);for(let i of r.interactions)this.byInteractionId.delete(i)}}readFrameEpisode(e){if(!e)return null;let t=e.metadata?.episode;if(!t||typeof t!="object")return null;let r=In(t,"id"),i=In(t,"key"),s=Ih(t,"state"),o=Ff(t,"size"),a=Ff(t,"evidenceScore")??0,c=QE(t,"evidenceReasons"),u=In(t,"lastInteractionId"),p=In(t,"updatedAt");return!r||!i||!s||o===null||!u||!p?null:{id:r,key:i,state:s,size:o,evidenceScore:a,evidenceReasons:c,lastInteractionId:u,updatedAt:p}}stats(){let e=0,t=0,r=null;for(let i of this.byId.values())this.isActiveRecord(i)?e+=1:t+=1,(r===null||i.updatedAt>r)&&(r=i.updatedAt);return{activeRecords:e,dormantRecords:t,retainedRecords:this.byId.size,boundInteractions:this.byInteractionId.size,dormantRetentionMs:this.dormantRetentionMs,maxDormantRecords:this.maxDormantEpisodes,prunedRecords:this.prunedRecords,latestEpisodeAt:r}}createRecord(e,t){let r=(this.nextSequenceByKey.get(e)??0)+1;this.nextSequenceByKey.set(e,r);let i=bh(t)?(t.relationHints??[]).map(s=>s.kind):[];return{id:`episode:${e}:${r}`,key:e,state:t.blocking?"actionable":"emerging",size:0,evidenceScore:t.blocking?Ae.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(i)}}resolveAssignableRecord(e,t,r){if(!t)return this.createRecord(e,r);if(this.shouldRollEpisode(t,r.timestamp)){let i={...t,state:"stale"};return this.byId.set(i.id,i),this.createRecord(e,r)}return t}shouldRollEpisode(e,t){if(Ge(e.state))return!0;let r=this.clock.parse(e.updatedAt),i=this.clock.parse(t);return r===null||i===null?!1:i-r>=Ae.staleAfterMs}evolveRecord(e,t){let r=new Set(e.interactions);r.add(t.interactionId);let i=new Set(e.modes);i.add(t.mode);let s=JE(e.relationKinds,t),o={...e,lastInteractionId:t.interactionId,updatedAt:t.timestamp,size:r.size,interactions:r,modes:i,relationKinds:s,blockingSignals:e.blockingSignals+(t.blocking?1:0),highSignals:e.highSignals+(t.consequence==="high"||t.tone==="critical"?1:0)},a=ZE(o,t);return{...o,evidenceScore:a.score,evidenceReasons:a.reasons,state:YE(e.state,t,o,a.score)}}pruneDormantRecords(){let e=[...this.byId.values()].filter(i=>!this.isActiveRecord(i));if(this.latestObservedAtMs!==null)for(let i of e){let s=this.clock.parse(i.updatedAt);s!==null&&this.latestObservedAtMs-s>this.dormantRetentionMs&&this.deleteRecord(i)}let t=[...this.byId.values()].filter(i=>!this.isActiveRecord(i)).sort((i,s)=>i.updatedAt.localeCompare(s.updatedAt));if(t.length<=this.maxDormantEpisodes)return;let r=t.length-this.maxDormantEpisodes;for(let i of t.slice(0,r))this.deleteRecord(i)}isActiveRecord(e){return this.byKey.get(e.key)?.id===e.id&&!Ge(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 zE(e){let t=e.source?.kind??e.source?.id??"unknown",r=GE(e),i=e.blocking?"interruptive":"status";return XE([t,i,r].join(":"))}function qt(e){return e?In(e.metadata?.episode,"id"):null}function Bt(e){return e?Ih(e.metadata?.episode,"state"):null}function Ge(e){return e==="stale"||e==="resolved"}function GE(e){let t=$E(e.relationHints);if(t)return t;let i=(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(i?.value)return i.value;let s=e.summary??e.title;return s.length>0?s:e.taskId}function YE(e,t,r,i){return t.blocking||i>=Ae.actionableThreshold?"actionable":e==="actionable"?"waiting":r.size>=2?"batched":"emerging"}function ZE(e,t){let r=0,i=[];return t.blocking&&(r+=Ae.blockingBoost,i.push("operator-facing work makes this episode immediately actionable")),e.size>=2&&(r+=Ae.recurringEpisodeBoost,i.push("multiple related interactions have accumulated in this episode")),e.size>=3&&(r+=Ae.persistentEpisodeBoost,i.push("the same episode keeps recurring without resolution")),e.highSignals>=1&&(r+=Ae.highSignalBoost,i.push("at least one related interaction carried high consequence or critical tone")),e.modes.size>=2&&(r+=Ae.multiModeBoost,i.push("related work has spread across multiple interaction modes")),e.highSignals>=1&&e.size>=2&&(r+=Ae.stackingBoost,i.push("high-signal evidence is stacking up across the episode")),e.relationKinds.has("repeats")&&(r+=Ae.relationRepeatBoost,i.push("semantic relation hints indicate this issue is recurring")),e.relationKinds.has("escalates")&&(r+=Ae.relationEscalationBoost,i.push("semantic relation hints indicate this issue is escalating")),{score:r,reasons:i}}function JE(e,t){let r=new Set(e);if(!bh(t))return r;for(let i of t.relationHints??[])r.add(i.kind);return r}function XE(e){return e.toLowerCase().replace(/[^a-z0-9:/._-]+/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,"").slice(0,120)}function bh(e){let t=mh(e);return t===null||t!=="weak"}function In(e,t){if(!e||typeof e!="object"||!(t in e))return null;let r=e[t];return typeof r=="string"&&r.length>0?r:null}function Ff(e,t){if(!e||typeof e!="object"||!(t in e))return null;let r=e[t];return typeof r=="number"?r:null}function Ih(e,t){let r=In(e,t);switch(r){case"emerging":case"actionable":case"batched":case"waiting":case"stale":case"resolved":return r;default:return null}}function QE(e,t){if(!e||typeof e!="object"||!(t in e))return[];let r=e[t];return Array.isArray(r)?r.filter(i=>typeof i=="string"&&i.length>0):[]}function uu(e={}){let t=e.base,r=e.semantic,i=t?.whyNow??r?.whyNow??e.fallbackWhyNow,s=Gl([...t?.factors??[],...r?.factors??[],...e.extraFactors??[]]);if(!(t===void 0&&i===void 0&&s.length===0))return{...t??{},...i!==void 0?{whyNow:i}:{},...s.length>0?{factors:s}:{}}}var e_=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}:{},...Bl(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 r_(e)}}evaluateTaskUpdate(e){let t=this.priorityForStatus(e.status),r=this.toneForStatus(e.status),i=this.consequenceForStatus(e.status),s=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:r,consequence:i,title:e.title,responseSpec:s,priority:t,blocking:!1,timestamp:e.timestamp,...e.summary!==void 0?{summary:e.summary}:{},...e.semantic?.relationHints?.length?{relationHints:e.semantic.relationHints}:{},...Bl(e),...t_(e),...n_(e)}}evaluateHumanInput(e){let t=this.createActions(e),r=this.createResponseSpec(e,t),i=e.request.kind==="approval"?e.toolFamily:void 0;return{taskId:e.taskId,interactionId:e.interactionId,...e.source!==void 0?{source:e.source}:{},...i!==void 0?{toolFamily:i}:{},...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:r,priority:this.priorityForHumanInput(e),blocking:!0,timestamp:e.timestamp,...Bl(e),...e.context!==void 0?{context:e.context}:{},...(()=>{let s=uu({base:e.provenance,semantic:e.semantic});return s!==void 0?{provenance:s}:{}})()}}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 qf(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 qf(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 Ci(e)}}priorityForStatus(e){switch(e){case"blocked":return"normal";case"failed":return"high";case"running":case"waiting":case"completed":return"background";default:return Ci(e)}}toneForStatus(e){switch(e){case"blocked":return"focused";case"failed":return"critical";case"running":case"waiting":case"completed":return"ambient";default:return Ci(e)}}consequenceForStatus(e){switch(e){case"blocked":return"medium";case"failed":return"high";case"running":case"waiting":case"completed":return"low";default:return Ci(e)}}};function t_(e){let t=e.context,r=t?.items,i=r!==void 0&&r.length>0;return e.progress===void 0&&t?.stage===void 0&&!i?{}:{context:{...t?.stage!==void 0?{stage:t.stage}:{},...e.progress!==void 0?{progress:e.progress}:{},...i?{items:r}:{}}}}function n_(e){let t=uu({semantic:e.semantic,fallbackWhyNow:e.status==="blocked"?jt("blocked"):e.status==="failed"?jt("failed"):void 0,extraFactors:e.status==="blocked"||e.status==="failed"?[e.status]:[]});return t===void 0?{}:{provenance:t}}function Bl(e){return{judgmentInput:DE(e)}}function r_(e){throw new Error(`Unhandled ApertureEvent in event evaluator: ${JSON.stringify(e)}`)}function qf(e){throw new Error(`Unhandled human input request in event evaluator: ${JSON.stringify(e)}`)}function Ci(e){throw new Error(`Unhandled task status in event evaluator: ${e}`)}var i_=class{plan(e,t){let r=t?.interactionId===e.interactionId,i=t?.metadata?.attention,s={...i&&typeof i=="object"?i:{},score:pk(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:r?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:s,...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}:{}}}},s_=1800*1e3,Bf=256,o_=1440*6e4,a_=1024,c_=class{byTaskId=new Map;clock;taskRetentionMs;maxTrackedTasks;latestObservedAtMs=null;prunedTasks=0;constructor(e={}){this.clock=e.clock??Ki(),this.taskRetentionMs=e.taskRetentionMs??o_,this.maxTrackedTasks=e.maxTrackedTasks??a_}record(e){let r=[...this.byTaskId.get(e.taskId)??[],e];this.byTaskId.set(e.taskId,r.length>Bf?r.slice(-Bf):r);let i=this.clock.parse(e.timestamp);i!==null&&(this.latestObservedAtMs===null||i>this.latestObservedAtMs)&&(this.latestObservedAtMs=i),this.prune()}list(e){return e!==void 0?[...this.byTaskId.get(e)??[]]:[...this.byTaskId.values()].flat().sort((t,r)=>t.timestamp.localeCompare(r.timestamp))}summarize(e){return vh(this.list(e),this.clock)}stats(){let e=0,t=null,r=null;for(let i of this.byTaskId.values()){e+=i.length;let s=i[0]?.timestamp??null,o=i[i.length-1]?.timestamp??null;s&&(t===null||s<t)&&(t=s),o&&(r===null||o>r)&&(r=o)}return{taskCount:this.byTaskId.size,signalCount:e,oldestSignalAt:t,latestSignalAt:r,taskRetentionMs:this.taskRetentionMs,maxTrackedTasks:this.maxTrackedTasks,prunedTasks:this.prunedTasks}}prune(){if(this.latestObservedAtMs!==null)for(let[r,i]of this.byTaskId.entries()){let s=i[i.length-1],o=s?this.clock.parse(s.timestamp):null;o!==null&&this.latestObservedAtMs-o>this.taskRetentionMs&&(this.byTaskId.delete(r),this.prunedTasks+=1)}if(this.byTaskId.size<=this.maxTrackedTasks)return;let e=this.byTaskId.size-this.maxTrackedTasks,t=[...this.byTaskId.entries()].map(([r,i])=>({taskId:r,latestAt:i[i.length-1]?.timestamp??""})).sort((r,i)=>r.latestAt.localeCompare(i.latestAt)).slice(0,e);for(let r of t)this.byTaskId.delete(r.taskId),this.prunedTasks+=1}};function vh(e,t=Ki()){let r=l_(e,t),i={presented:0,viewed:0,responded:0,dismissed:0,deferred:0,contextExpanded:0,contextSkipped:0,timedOut:0,returned:0,attentionShifted:0},s={next:0,suppressed:0,manual:0},o=0,a=0,c=0,u=0;for(let p of r)switch(p.kind){case"presented":i.presented+=1;break;case"viewed":i.viewed+=1;break;case"responded":i.responded+=1,p.latencyMs!==void 0&&(o+=p.latencyMs,a+=1);break;case"dismissed":i.dismissed+=1,p.latencyMs!==void 0&&(c+=p.latencyMs,u+=1);break;case"deferred":i.deferred+=1,p.reason!==void 0&&(s[p.reason]+=1);break;case"context_expanded":i.contextExpanded+=1;break;case"context_skipped":i.contextSkipped+=1;break;case"timed_out":i.timedOut+=1;break;case"returned":i.returned+=1;break;case"attention_shifted":i.attentionShifted+=1;break}return{recentSignals:r.length,lifetimeSignals:e.length,counts:i,deferred:s,responseRate:i.presented>0?i.responded/i.presented:0,dismissalRate:i.presented>0?i.dismissed/i.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 l_(e,t){let r=e.slice(-32),i=r[r.length-1]?.timestamp;if(i===void 0)return r;let s=t.parse(i);if(s===null)return r;let o=r.filter(a=>{let c=t.parse(a.timestamp);return c===null?!0:s-c<=s_});return o.length>0?o:r}function Yl(e){return su(e)}function u_(e){return th(e)}function du(e){return e.mode==="status"?Yl(e):e.mode!=="approval"||e.activityClass!==void 0&&e.activityClass!=="permission_request"?null:u_(e)}function Ui(e){return e?e.kind??e.id:null}function kh(e,t,r){let i=p_(e,t),s=m_(e,t),o=g_(e,t);return{...e,version:st,updatedAt:r,sessionCount:e.sessionCount+1,...Object.keys(i).length>0?{toolFamilies:i}:{},...Object.keys(s).length>0?{sourceTrust:s}:{},...Object.keys(o).length>0?{consequenceProfiles:o}:{}}}function or(e){let t={consequence:e.consequence},r=Eh(e);r&&(t.toolFamily=r);let i=Ui(e.source);i&&(t.sourceKey=i);let s=e.metadata?.episode;return s&&typeof s=="object"&&!Array.isArray(s)&&(t.episode=s),t}function d_(e){let t={consequence:e.consequence},r=Eh(e);r&&(t.toolFamily=r);let i=Ui(e.source);return i&&(t.sourceKey=i),t}function Eh(e){return du(e)}function p_(e,t){let r={...e.toolFamilies??{}},i=new Map,s=new Map;for(let o of t){let a=ji(o.metadata,"toolFamily");if(!a)continue;let c=`${a}::${o.interactionId}`,u=s.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}s.set(c,u)}for(let o of s.values()){let a=i.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)),i.set(o.toolFamily,a)}for(let[o,a]of i.entries()){let c=r[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;r[o]={presentations:u,responses:p,dismissals:m,...h!==void 0?{avgResponseLatencyMs:$f(c.avgResponseLatencyMs,c.responses,h,a.responseLatencyCount)}:c.avgResponseLatencyMs!==void 0?{avgResponseLatencyMs:c.avgResponseLatencyMs}:{},...f!==void 0?{avgDismissalLatencyMs:$f(c.avgDismissalLatencyMs,c.dismissals,f,a.dismissalLatencyCount)}:c.avgDismissalLatencyMs!==void 0?{avgDismissalLatencyMs:c.avgDismissalLatencyMs}:{},...u>0?{contextExpansionRate:Zl((b+v)/u)}:c.contextExpansionRate!==void 0?{contextExpansionRate:c.contextExpansionRate}:{},...a.deferrals>0?{returnAfterDeferralRate:Zl(a.returns/a.deferrals)}:c.returnAfterDeferralRate!==void 0?{returnAfterDeferralRate:c.returnAfterDeferralRate}:{}}}return r}function m_(e,t){let r=structuredClone(e.sourceTrust??{}),i=new Map;for(let s of t){let o=ji(s.metadata,"sourceKey"),a=ji(s.metadata,"consequence");if(!o||a!=="low"&&a!=="medium"&&a!=="high")continue;let c=`${o}::${a}::${s.interactionId}`,u=i.get(c)??{source:o,consequence:a,responded:!1,rejected:!1,dismissed:!1};s.kind==="responded"?(u.responded=!0,u.dismissed=!1,u.rejected=s.responseKind==="rejected"):s.kind==="dismissed"&&(u.responded||(u.dismissed=!0)),i.set(c,u)}for(let s of i.values()){let o=r[s.source]?.[s.consequence]??{confirmations:0,disagreements:0,trustAdjustment:0};s.responded?s.rejected?o.disagreements+=1:o.confirmations+=1:s.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,r[s.source]={...r[s.source]??{},[s.consequence]:o}}return r}function g_(e,t){let r={...e.consequenceProfiles??{}},i=new Map;for(let o of t){let a=ji(o.metadata,"consequence");a!=="low"&&a!=="medium"&&a!=="high"||o.kind==="responded"&&i.set(`${a}::${o.interactionId}`,{consequence:a,rejected:o.responseKind==="rejected"})}let s=new Map;for(let o of i.values()){let a=s.get(o.consequence)??{reviewed:0,rejected:0};a.reviewed+=1,o.rejected&&(a.rejected+=1),s.set(o.consequence,a)}for(let[o,a]of s.entries()){let c=r[o]??{rejectionRate:0,reviewedCount:0},u=(c.reviewedCount??0)+a.reviewed;r[o]={rejectionRate:u>0?Zl(((c.reviewedCount??0)*c.rejectionRate+a.rejected)/u):0,reviewedCount:u}}return r}function ji(e,t){let r=e?.[t];return typeof r=="string"&&r.length>0?r:null}function Zl(e){return Math.round(e*1e3)/1e3}function $f(e,t,r,i){let s=t+i;if(s<=0)return Math.round(r);let o=(e??0)*t,a=r*i;return Math.round((o+a)/s)}function f_(e,t,r,i="present",s){if(i==="absent")return _h();let o=G.attentionBudget,a=h_(e,s),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=r??"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 h_(e,t){let r=e?.lastSignalAt;if(!r||t===void 0)return!0;let i=Date.parse(r),s=y_(t);return Number.isNaN(i)||s===null?!0:s-i<=G.pressureForecast.freshness.residualMs}function y_(e){if(typeof e=="number")return Number.isFinite(e)?e:null;if(e instanceof Date){let r=e.getTime();return Number.isFinite(r)?r:null}let t=Date.parse(e);return Number.isNaN(t)?null:t}function _h(){return{level:"light",thresholdOffset:0,metrics:{recentDecisions:0,deferredCount:0,averageResponseLatencyMs:null,interruptiveVisible:0,pressureLevel:"steady",attentionState:"monitoring"},reasons:[]}}function S_(e,t,r){let i=k_(t),s=[],o=0,a=G.pressureForecast,c=b_(e,r),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,M=p?e?.counts.presented??0:0;return i>=a.visibleInterruptiveBoost.highCount?(o+=2,s.push("multiple interruptive frames are already visible")):i>=a.visibleInterruptiveBoost.elevatedCount&&(o+=1,s.push("interruptive work is already visible")),m>=a.recentDemand.highCount?(o+=2,s.push("incoming demand is arriving quickly")):m>=a.recentDemand.elevatedCount&&(o+=1,s.push("incoming demand is climbing")),h!==null&&h>=a.responseLatencyMs.high?(o+=2,s.push("recent response latency is slow")):h!==null&&h>=a.responseLatencyMs.elevated&&(o+=1,s.push("recent response latency is rising")),b>=a.deferredPressure.highSuppressedCount||f>=a.deferredPressure.highDeferredCount?(o+=2,s.push("recent deferrals suggest operator capacity is tightening")):(b>=a.deferredPressure.elevatedSuppressedCount||f>=a.deferredPressure.elevatedDeferredCount)&&(o+=1,s.push("recent deferrals suggest operator capacity is tightening")),M>=a.slowClearance.presentedCount&&v<=a.slowClearance.responseRate&&(o+=1,s.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:i,averageResponseLatencyMs:h,deferredCount:f,suppressedCount:b},reasons:s}}function b_(e,t){let r=e?.lastSignalAt;if(!r||t===void 0)return null;let i=Date.parse(r),s=I_(t);return Number.isNaN(i)||s===null?null:Math.max(0,s-i)}function I_(e){if(typeof e=="number")return Number.isFinite(e)?e:null;if(e instanceof Date){let r=e.getTime();return Number.isFinite(r)?r:null}let t=Date.parse(e);return Number.isNaN(t)?null:t}function v_(){return{level:"steady",overloadRisk:"low",score:0,metrics:{recentDemand:0,interruptiveVisible:0,averageResponseLatencyMs:null,deferredCount:0,suppressedCount:0},reasons:[]}}function k_(e){return e?[e.now,...e.next].filter(t=>t!==null).filter(E_).length:0}function E_(e){return e.mode!=="status"||e.consequence==="high"||e.tone==="critical"}var Fi={topology:{supportsAmbient:!0},responses:{supportsSingleChoice:!0,supportsMultipleChoice:!1,supportsForm:!0,supportsTextResponse:!1}};function Vf(e={}){let t=e.taskSignalSummary??Jl();return{currentFrame:e.currentFrame??null,currentTaskView:e.currentTaskView??A_(),currentEpisode:e.currentEpisode??null,attentionView:e.attentionView??w_(),taskSignalSummary:t,continuitySignalSummary:e.continuitySignalSummary??t,globalSignalSummary:e.globalSignalSummary??Jl(),taskAttentionState:e.taskAttentionState??"monitoring",globalAttentionState:e.globalAttentionState??"monitoring",pressureForecast:e.pressureForecast??v_(),attentionBurden:e.attentionBurden??_h(),surfaceCapabilities:e.surfaceCapabilities?{topology:{...e.surfaceCapabilities.topology},responses:{...e.surfaceCapabilities.responses}}:{topology:{...Fi.topology},responses:{...Fi.responses}},operatorPresence:e.operatorPresence??"present"}}function Hi(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 pu(e,t={},r){let i=Hi(t);if(__(i))return i.currentFrame===e?i:Vf({...i,currentFrame:e});let s=i.globalSignalSummary??Jl(),o=i.pressureForecast??S_(s,i.attentionView,r),a=i.operatorPresence??"present";return Vf({...i,currentFrame:e,globalSignalSummary:s,pressureForecast:o,attentionBurden:i.attentionBurden??f_(s,o,i.globalAttentionState,a,r),operatorPresence:a})}function __(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 A_(){return{now:null,next:[],ambient:[]}}function w_(){return{now:null,next:[],ambient:[]}}function Jl(){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 Ie(e,t,r,i,s){return{rule:e,kind:"override",decision:t,currentPriority:r,currentScore:i,rationale:s}}var T_=e=>{let{candidate:t,context:r,evidence:i}=e,s=i.attentionView.now??i.currentFrame;if(!s)return P("deferral_escalation");let o=s===i.currentFrame?r.currentScore:Le(s,{now:t.timestamp});return o===null||t.blocking||t.priority==="background"||Ht(s)||!ir(i.continuitySignalSummary)||r.candidateScore<o-G.queuePlanner.escalationScoreSlack?P("deferral_escalation"):Ie("deferral_escalation",{kind:"activate",candidate:t},pe(s),o,["repeated deferral or resurfacing makes this task more deserving of current focus"])};function ir(e){return e.counts.deferred>=G.queuePlanner.deferredEscalationThreshold||e.counts.returned>=G.queuePlanner.returnedEscalationThreshold}var mu=G.queuePlanner;function x_(e,t,r,i){return r.currentFrame?P_(r.currentFrame,e,t,r,i):O_(e,t,r)}function $t(e,t,r){return{kind:gu(e,t,r),candidate:e}}function R_(e,t,r,i){return Th(e,r)?{kind:"queue",candidate:e}:$t(e,t,i)}function Xl(e,t,r,i){return(r.components.deferralAffinity>0||r.components.consequenceCalibration>0)&&t.minimumLane!=="now"?{kind:"queue",candidate:e}:$t(e,t,i)}function gu(e,t,r=Fi){return fh(e,t.minimumLane==="ambient"?"ambient":"queue")==="ambient"&&C_(e,r)?"ambient":"queue"}function C_(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 O_(e,t,r){let i=[];return wh(e)?r.pressureForecast.overloadRisk==="high"?(i.push("the episode has become actionable, but predicted overload keeps it in next instead of surfacing it now"),K({kind:"queue",candidate:e},i)):t.policyVerdict.mayInterrupt?(i.push("the episode has accumulated enough evidence to deserve interruptive attention"),K({kind:"activate",candidate:e},i)):(i.push("the episode has become actionable, so it stays visible even though policy still prevents interrupting"),K({kind:"queue",candidate:e},i)):Ah(e,t.policyVerdict,r.pressureForecast)?(i.push("predicted overload keeps lower-value work peripheral before the queue spikes"),K(Xl(e,t.policyVerdict,t.utility,r.surfaceCapabilities),i)):!t.policyVerdict.mayInterrupt&&t.policyVerdict.minimumLane==="ambient"?cu(e)?(i.push("status routing stays non-blocking, but blocked-like semantics keep it visible in next"),K({kind:"queue",candidate:e},i)):(i.push("policy keeps this interaction ambient until stronger context arrives"),K($t(e,t.policyVerdict,r.surfaceCapabilities),i)):(i.push("nothing is in now for this task"),K({kind:"activate",candidate:e},i))}function P_(e,t,r,i,s){let o=[],a=wh(t),c=Ht(e),u=pe(e),p=r.currentScore;if(a)return c||i.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,u,p)):p!==null&&r.candidateScore<p-mu.actionableEpisodeScoreSlack?(o.push("actionable episode evidence keeps this work visible even though the current frame is still stronger"),K({kind:"queue",candidate:t},o,u,p)):r.policyVerdict.mayInterrupt?(o.push("the episode has accumulated enough evidence to compete for current focus"),K({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"),K({kind:"queue",candidate:t},o,u,p));if(c&&!t.blocking)return ir(i.continuitySignalSummary)?(o.push("blocking work keeps resurfacing backlog in next so it stays visible until focus can return"),K({kind:"queue",candidate:t},o,u,p)):(o.push("blocking work keeps non-blocking updates in the periphery"),K($t(t,r.policyVerdict,i.surfaceCapabilities),o));if(!c&&t.blocking)return o.push("blocking work interrupts non-blocking activity"),K({kind:"activate",candidate:t},o);if(Ah(t,r.policyVerdict,i.pressureForecast))return o.push("predicted overload keeps lower-value work peripheral before the queue spikes"),K(Xl(t,r.policyVerdict,r.utility,i.surfaceCapabilities),o,u,p);if(N_(t,i.attentionView,t.timestamp,s))return ir(i.continuitySignalSummary)?(o.push("existing urgent backlog keeps resurfacing work in next so it remains visible"),K({kind:"queue",candidate:t},o,u,p)):(o.push(r.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(Xl(t,r.policyVerdict,r.utility,i.surfaceCapabilities),o,u,p));if(p!==null&&r.candidateScore<p)return o.push("current work still outranks the new candidate"),K($t(t,r.policyVerdict,i.surfaceCapabilities),o,u,p);if(p!==null&&r.candidateScore===p){let m=lu(t.timestamp,e.timing.updatedAt);if(m!==null&&m<0)return o.push("older work yields when scores tie"),K($t(t,r.policyVerdict,i.surfaceCapabilities),o,u,p)}return o.push("new work outranks the current frame"),K({kind:"activate",candidate:t},o,u,p)}function K(e,t,r=null,i=null){return{decision:e,currentPriority:r,currentScore:i,reasons:t}}function N_(e,t,r,i){return i?.deferLowValueDuringPressure===!1||e.blocking||e.consequence==="high"||e.tone==="critical"||!t?!1:Th(e,t)?!0:[t.now,...t.next].filter(o=>o!==null).filter(o=>o.interactionId===e.interactionId?!1:Ht(o)||o.consequence==="high"||o.tone==="critical").filter(o=>{let a=lu(r,o.timing.updatedAt);return a===null?!0:a<=mu.urgentBacklogWindowMs}).length>=2}function Ah(e,t,r){return r.overloadRisk==="low"||e.blocking||t.requiresOperatorResponse||t.minimumLane==="now"||e.consequence==="high"||e.tone==="critical"?!1:r.overloadRisk==="high"?!0:e.mode==="status"||e.priority==="background"||e.consequence==="low"}function wh(e){return!e.blocking&&e.episodeState==="actionable"&&(e.episodeEvidenceScore??0)>=mu.actionableEpisodeEvidenceThreshold}function Th(e,t){return e.episodeId!==void 0&&[t?.now,...t?.next??[]].filter(r=>r!==null).some(r=>r.interactionId!==e.interactionId&&qt(r)===e.episodeId&&!Ge(Bt(r)))}var M_=e=>{let t=e.evidence.currentFrame,{candidate:r,context:i,evidence:s,helpers:o,plannerDefaults:a,routed:c}=e;if(!t||c.decision.kind!=="activate"||a?.batchStatusBursts===!1||t.taskId!==r.taskId||t.mode!=="status"||r.mode!=="status"||r.blocking||r.consequence==="high"||r.tone==="critical")return P("burst_dampening");let u=Date.parse(t.timing.updatedAt),p=Date.parse(r.timestamp);return Number.isNaN(u)||Number.isNaN(p)||p-u>G.queuePlanner.statusBurstWindowMs?P("burst_dampening"):Ie("burst_dampening",o.peripheralDecision(r,i.policyVerdict,s.surfaceCapabilities),pe(t),i.currentScore,[`rapid successive updates within ${p-u}ms stay bundled instead of stealing focus`])},Me={STATUS_ONLY:0,NON_STATUS:1,CRITICAL_CONSEQUENCE:2,BLOCKING_OR_REQUIRED:3},L_=e=>{let t=e.evidence.currentFrame,{candidate:r,context:i,evidence:s,helpers:o,routed:a,plannerDefaults:c}=e;if(!t||a.decision.kind!=="activate"||i.currentScore===null)return P("conflicting_interrupt");let u=D_(t),p=U_(r,i.policyVerdict);if(u===Me.STATUS_ONLY||p===Me.STATUS_ONLY||p>u)return P("conflicting_interrupt");if(p<u)return Ie("conflicting_interrupt",o.peripheralDecision(r,i.policyVerdict,s.surfaceCapabilities),pe(t),i.currentScore,["the current interrupt is more urgent, so the challenger waits instead of stealing focus"]);let m=c?.conflictingInterruptMargin??G.queuePlanner.conflictingInterruptMargin;return m<=0||i.candidateScore>=i.currentScore+m?P("conflicting_interrupt"):Ie("conflicting_interrupt",o.peripheralDecision(r,i.policyVerdict,s.surfaceCapabilities),pe(t),i.currentScore,["equally interruptive work needs a clear advantage before it can replace the current interrupt"])};function D_(e){return e.mode!=="status"&&e.responseSpec?.kind!=="none"?Me.BLOCKING_OR_REQUIRED:e.tone==="critical"||e.consequence==="high"?Me.CRITICAL_CONSEQUENCE:e.mode!=="status"?Me.NON_STATUS:Me.STATUS_ONLY}function U_(e,t){return e.blocking||t.requiresOperatorResponse||t.minimumLane==="now"?Me.BLOCKING_OR_REQUIRED:e.tone==="critical"||e.consequence==="high"?Me.CRITICAL_CONSEQUENCE:e.mode!=="status"?Me.NON_STATUS:Me.STATUS_ONLY}var j_=e=>{let t=e.evidence.currentFrame,{candidate:r,context:i,evidence:s,helpers:o}=e;if(!t||i.currentScore===null||r.blocking||Ht(t)||r.consequence==="high"||r.tone==="critical"||i.candidateScore<=i.currentScore)return P("context_patience");let{contextCost:a}=i.utility.components,c=a<=-6?G.queuePlanner.highContextQueueMargin:a<=-3?G.queuePlanner.mediumContextQueueMargin:null;if(c===null||i.candidateScore>=i.currentScore+c)return P("context_patience");let u=i.candidateScore-i.currentScore;return Ie("context_patience",o.peripheralDecision(r,i.policyVerdict,s.surfaceCapabilities),pe(t),i.currentScore,[`memory suggests this interaction usually needs context, so it stays peripheral until it clears the ${c}-point margin (gap: ${u})`])},F_=e=>{let t=e.evidence.currentFrame,{candidate:r,context:i,evidence:s,helpers:o,routed:a,plannerDefaults:c}=e;if(!t||a.decision.kind!=="activate"||i.currentScore===null||r.blocking||r.consequence==="high"||r.tone==="critical"||t.consequence==="high"||t.tone==="critical"||q_(t,r))return P("decision_stream_continuity");let u=c?.streamContinuityMargin??G.queuePlanner.streamContinuityMargin;if(u<=0||i.candidateScore>=i.currentScore+u)return P("decision_stream_continuity");let p=i.candidateScore-i.currentScore;return Ie("decision_stream_continuity",o.peripheralDecision(r,i.policyVerdict,s.surfaceCapabilities),pe(t),i.currentScore,[`the current decision stream stays active until cross-stream work clears the ${u}-point margin (gap: ${p})`])};function q_(e,t){let r=Ui(e.source),i=Ui(t.source);if(r&&i&&r!==i)return!1;if(r&&i&&r===i)return!0;let s=Yl(e),o=Yl(t);return s&&o&&s!==o?!1:!!(s&&o&&s===o||e.taskId===t.taskId)}var B_=e=>{let t=e.evidence.currentFrame,{candidate:r,context:i,evidence:s,helpers:o,routed:a,plannerDefaults:c}=e;if(!t||a.decision.kind!=="activate"||r.blocking||r.consequence==="high"||r.tone==="critical")return P("minimum_dwell");let u=c?.minimumDwellMs??G.queuePlanner.minimumDwellMs;if(u<=0)return P("minimum_dwell");let p=Date.parse(t.timing.updatedAt),m=Date.parse(r.timestamp);if(Number.isNaN(p)||Number.isNaN(m)||m-p>=u)return P("minimum_dwell");let h=u-(m-p);return Ie("minimum_dwell",o.peripheralDecision(r,i.policyVerdict,s.surfaceCapabilities),pe(t),i.currentScore,[`recently surfaced work keeps focus for another ${h}ms to avoid a premature switch`])},$_=e=>{let t=e.evidence.currentFrame,{candidate:r,context:i,evidence:s,helpers:o}=e;if(!t||!r.episodeId)return P("same_episode");let a=qt(t);return!a||a!==r.episodeId||Ge(Bt(t))?P("same_episode"):r.blocking&&!Ht(t)?Ie("same_episode",{kind:"activate",candidate:r},pe(t),i.currentScore,["the current episode has progressed into an interruptive step that belongs in now"]):r.blocking&&Sh(r.relationHints,"supersedes")&&mh(r)!=="weak"?Ie("same_episode",{kind:"activate",candidate:r},pe(t),i.currentScore,["the current episode has advanced to a superseding step that belongs in now"]):ir(s.continuitySignalSummary)?P("same_episode"):Ie("same_episode",o.peripheralDecision(r,i.policyVerdict,s.surfaceCapabilities),pe(t),i.currentScore,["related work stays bundled with the current episode already in now"])},V_=e=>{let t=e.evidence.currentFrame;return!t||t.interactionId!==e.candidate.interactionId?P("same_interaction"):Ie("same_interaction",{kind:"activate",candidate:e.candidate},null,null,["same interaction refreshes the existing frame"])},K_=e=>{let{candidate:t,context:r,evidence:i,helpers:s}=e;if(!t.episodeId||t.blocking||t.consequence==="high"||t.tone==="critical")return P("visible_episode");let o=[i.attentionView.now,...i.attentionView.next,...i.attentionView.ambient].filter(a=>a!==null).filter(a=>a.interactionId!==t.interactionId&&qt(a)===t.episodeId&&!Ge(Bt(a)));return o.length===0||!(t.episodeState==="batched"||(t.episodeSize??1)>=2||o.length>=2)||ir(i.continuitySignalSummary)?P("visible_episode"):Ie("visible_episode",s.batchedDecision(t,r.policyVerdict,i.attentionView,i.surfaceCapabilities),null,i.currentFrame?r.currentScore:null,[i.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"])},H_=[K_,$_,B_,M_,V_,T_,L_,F_,j_],xh=class{plannerDefaults;constructor(e={}){this.plannerDefaults=e.plannerDefaults}explain(e,t,r){let i=this.resolveEvidenceContext(e,r,t.timestamp),s=x_(t,r,i,this.plannerDefaults);return this.applyContinuity(t,r,i,s)}clear(){return{kind:"clear"}}preferredPeripheralBucket(e,t,r){return gu(e,t,r)}applyContinuity(e,t,r,i){let s=new Set(this.plannerDefaults?.disabledContinuityRules??[]),o=H_.map(c=>{let u=c({candidate:e,context:t,evidence:r,routed:i,plannerDefaults:this.plannerDefaults,helpers:{peripheralDecision:$t,batchedDecision:R_}});return s.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:[...i.reasons,...a.rationale],continuityEvaluations:o}:{...i,continuityEvaluations:o}}resolveEvidenceContext(e,t,r){return pu(e,Hi(t),rr(r)??0)}},W_=class{runtime;constructor(e){this.runtime=e}assemble(e,t){let r=this.runtime.signals.summarize(e),i=this.runtime.signals.summarize(),s=Ut(r),o=Ut(i),a=this.runtime.getTaskView(e),c=this.runtime.getAttentionView(),u=this.runtime.getOperatorPresence();return pu(t,Hi({currentFrame:t,currentTaskView:a,currentEpisode:this.runtime.episodes.readFrameEpisode(t),attentionView:c,taskSignalSummary:r,continuitySignalSummary:r,globalSignalSummary:i,taskAttentionState:s,globalAttentionState:o,surfaceCapabilities:this.runtime.getSurfaceCapabilities(),operatorPresence:u}),this.runtime.clock.nowMs())}augmentContinuitySignalSummary(e,t,r){let i=this.resolveContinuitySignalSummary(e,t,r.taskSignalSummary);return i===r.taskSignalSummary?r:{...r,continuitySignalSummary:i}}resolveContinuitySignalSummary(e,t,r){if(!t.episodeId)return r;let i=this.runtime.signals.list(e),s=this.runtime.signals.list().filter(o=>o.taskId!==e&&z_(o)===t.episodeId);return s.length===0?r:vh([...i,...s].sort((o,a)=>o.timestamp.localeCompare(a.timestamp)))}};function z_(e){let t=e.metadata?.episode;if(!t||typeof t!="object"||Array.isArray(t))return null;let r=t.id;return typeof r=="string"&&r.length>0?r:null}var Rh=class extends Error{code;constructor(e,t){super(t),this.name=new.target.name,this.code=e}},be=class extends Rh{field;constructor(e,t={}){super(t.code??"validation_error",e),this.field=t.field}},G_=class extends Rh{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 Y_(e,t,r){let i=eA(e,r),s={taskId:e.taskId,interactionId:e.interactionId,timestamp:r,frameId:e.id,...e.source!==void 0?{source:e.source}:{},metadata:or(e)};return t.response.kind==="dismissed"?{kind:"dismissed",...s,...i!==void 0?{latencyMs:i}:{}}:{kind:"responded",...s,responseKind:t.response.kind,...i!==void 0?{latencyMs:i}:{}}}function Z_(e,t,r){return{kind:"responded",taskId:e.taskId,interactionId:e.interactionId,timestamp:r,...e.source!==void 0?{source:e.source}:{},responseKind:t.response.kind==="dismissed"?"acknowledged":t.response.kind,metadata:{...d_(e),autoResolved:!0}}}function $l(e,t,r=e){return{kind:"deferred",taskId:r.taskId,interactionId:r.interactionId,timestamp:e.timing.updatedAt,frameId:e.id,...r.source!==void 0?{source:r.source}:{},reason:t,metadata:or(e)}}function J_(e,t,r){let i=e.now,s=t.now;return s?[...X_(i,s,r),...Q_(e,s,r)]:[]}function Oi(e,t,r,i,s,o={}){return{kind:e,taskId:t,interactionId:r,timestamp:i,...s?.id!==void 0?{frameId:s.id}:{},...s?.source!==void 0?{source:s.source}:{},...s?{metadata:or(s)}:{},...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 X_(e,t,r){if(!e||Ql(e,t))return[];let i={kind:"attention_shifted",taskId:t.taskId,interactionId:t.interactionId,timestamp:r,frameId:t.id,...t.source!==void 0?{source:t.source}:{},fromInteractionId:e.interactionId,toInteractionId:t.interactionId};return e.taskId===t.taskId?[i]:[i,{kind:"attention_shifted",taskId:e.taskId,interactionId:e.interactionId,timestamp:r,frameId:e.id,...e.source!==void 0?{source:e.source}:{},fromInteractionId:e.interactionId,toInteractionId:t.interactionId}]}function Q_(e,t,r){let i=e.next.some(s=>Ql(s,t))?"next":e.ambient.some(s=>Ql(s,t))?"ambient":null;return i?[{kind:"returned",taskId:t.taskId,interactionId:t.interactionId,timestamp:r,frameId:t.id,...t.source!==void 0?{source:t.source}:{},from:i,metadata:or(t)}]:[]}function eA(e,t){let r=Date.parse(e.timing.updatedAt),i=Date.parse(t);if(!(Number.isNaN(r)||Number.isNaN(i)))return Math.max(0,i-r)}function Ql(e,t){return e.id===t.id||e.taskId===t.taskId&&e.interactionId===t.interactionId}var tA=class{runtime;constructor(e){this.runtime=e}commitFrame(e,t=[]){let r=this.runtime.getAttentionView(),i=new Set;for(let a of t){let c=`${a.taskId}::${a.interactionId}`;if(i.has(c))continue;i.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 s=this.runtime.taskViews.setNow(e.taskId,e),o=this.runtime.getAttentionView();return this.recordAttentionTransition(r,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:or(e)}),this.runtime.notifyFrame(e.taskId,e),this.runtime.notifyTaskView(e.taskId,s),this.runtime.notifyAttentionView(),e}applyClear(e){let t=this.runtime.getAttentionView(),r=this.runtime.taskViews.get(e);if(!(r.now!==null||r.next.length>0||r.ambient.length>0))return null;for(let a of[r.now,...r.next,...r.ambient])a&&this.runtime.episodes.resolveInteraction(a.interactionId);this.runtime.clearOperatorEngagement(e);let s=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,s),this.runtime.notifyAttentionView(),null}queueFrame(e,t){let r=this.runtime.taskViews.addNext(e,t);return this.runtime.recordSignal($l(t,"next")),this.runtime.notifyTaskView(e,r),this.runtime.notifyAttentionView(),r.now??t}addAmbientFrame(e,t){let r=this.runtime.taskViews.addAmbient(e,t);return this.runtime.recordSignal($l(t,"suppressed")),this.runtime.notifyTaskView(e,r),this.runtime.notifyAttentionView(),r.now??t}materializePeripheralFrame(e,t,r){let i=e.episodeId?this.findPeripheralEpisodeFrame(e.episodeId,r):null;if(!i){let p=this.applyResponseExpiry(this.runtime.planner.plan(e,null));return t==="queue"?this.queueFrame(e.taskId,p):this.addAmbientFrame(e.taskId,p)}let s=i.bucket==="queue"||t==="queue"?"queue":"ambient",a={...this.applyResponseExpiry(this.runtime.planner.plan(e,i.frame)),id:i.frame.id},c=this.runtime.taskViews.discard(i.frame.taskId,i.frame.interactionId);this.runtime.notifyTaskView(i.frame.taskId,c);let u=s==="queue"?this.runtime.taskViews.addNext(a.taskId,a):this.runtime.taskViews.addAmbient(a.taskId,a);return this.runtime.recordSignal($l(a,s==="queue"?"next":"suppressed",e)),this.runtime.notifyTaskView(a.taskId,u),this.runtime.notifyAttentionView(),a}promotePeripheralEpisodeFrame(e,t){let i={...this.applyResponseExpiry(this.runtime.planner.plan(e,t)),id:t.id};return this.commitFrame(i,[t])}submit(e){let t=this.findFrame(e.taskId,e.interactionId);if(!t)return;let r=this.readExpiredResponseTimestamp(t,this.runtime.clock.nowIso());if(r)throw new G_({taskId:e.taskId,interactionId:e.interactionId,expiredAt:r});let i=this.runtime.getAttentionView(),s=this.runtime.clock.nowIso();this.runtime.clearOperatorEngagement(e.taskId,e.interactionId),this.runtime.recordSignal(Y_(t,e,s)),this.runtime.episodes.resolveInteraction(e.interactionId);let o=this.runtime.taskViews.resolve(e.taskId,e.interactionId),a=this.runtime.getAttentionView();this.recordAttentionTransition(i,a,s),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 r=this.runtime.clock.nowIso();return this.runtime.recordSignal(Z_(e,t,r)),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||!Sh(e.relationHints,"supersedes")?[]:[t.now,...t.next,...t.ambient].filter(r=>r!==null&&r.interactionId!==e.interactionId&&qt(r)===e.episodeId&&!Ge(Bt(r)))}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 r=e.timing.expiresAt;if(!r)return null;let i=this.runtime.clock.parse(r),s=this.runtime.clock.parse(t);return i===null||s===null||s<=i?null:r}findPeripheralEpisodeFrame(e,t){let r=t.next.find(s=>qt(s)===e&&!Ge(Bt(s)));if(r)return{frame:r,bucket:"queue"};let i=t.ambient.find(s=>qt(s)===e&&!Ge(Bt(s)));return i?{frame:i,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 r=this.runtime.taskViews.get(e);if(r.now?.interactionId===t)return r.now;let i=r.next.find(s=>s.interactionId===t);return i||(r.ambient.find(s=>s.interactionId===t)??null)}recordAttentionTransition(e,t,r){for(let i of J_(e,t,r))this.runtime.recordSignal(i)}},nA=12,rA=class{taskViews=new Map;get(e){return this.taskViews.get(e)??{now:null,next:[],ambient:[]}}setNow(e,t){let r=this.get(e),i=r.next.filter(a=>a.interactionId!==t.interactionId),s=r.now&&r.now.interactionId!==t.interactionId?r.now:null,o={now:t,next:s?[s,...i]:i,ambient:r.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 r=this.get(e),i={now:r.now?.interactionId===t?null:r.now,next:r.next.filter(s=>s.interactionId!==t),ambient:r.ambient.filter(s=>s.interactionId!==t)};return this.persist(e,i)}resolve(e,t){let r=this.get(e),i=r.next.filter(c=>c.interactionId!==t),s=r.ambient.filter(c=>c.interactionId!==t),o=r.now;o?.interactionId===t&&(o=i.shift()??null);let a={now:o,next:i,ambient:s};return this.persist(e,a)}upsert(e,t,r){let i=this.get(e),s=i.next.filter(p=>p.interactionId!==r.interactionId),o=i.ambient.filter(p=>p.interactionId!==r.interactionId),u={now:i.now?.interactionId===r.interactionId?s.shift()??null:i.now,next:t==="next"?[r,...s]:s,ambient:t==="ambient"?[r,...o].slice(0,nA):o};return this.persist(e,u)}values(){return this.taskViews.values()}stats(){let e=0,t=0,r=0;for(let i of this.taskViews.values())i.now&&(e+=1),t+=i.next.length,r+=i.ambient.length;return{taskCount:this.taskViews.size,nowCount:e,nextCount:t,ambientCount:r,totalFrames:e+t+r}}persist(e,t){return iA(t)?this.taskViews.delete(e):this.taskViews.set(e,t),t}};function iA(e){return e.now===null&&e.next.length===0&&e.ambient.length===0}var eu=Symbol("aperture.internal.subscribeTrace");function fu(e,t){let r=[];return Ni("",e,t,r),r}function Ni(e,t,r,i){if(!Object.is(t,r)){if(t==null&&Pi(r)){for(let s of Object.keys(r).sort()){let o=e.length>0?`${e}.${s}`:s;Ni(o,void 0,r[s],i)}return}if(r==null&&Pi(t)){for(let s of Object.keys(t).sort()){let o=e.length>0?`${e}.${s}`:s;Ni(o,t[s],void 0,i)}return}if(t===void 0||r===void 0){i.push({path:e,before:t,after:r});return}if(Array.isArray(t)||Array.isArray(r)){i.push({path:e,before:t,after:r});return}if(Pi(t)&&Pi(r)){let s=new Set([...Object.keys(t),...Object.keys(r)]);for(let o of[...s].sort()){let a=e.length>0?`${e}.${o}`:o;Ni(a,t[o],r[o],i)}return}i.push({path:e,before:t,after:r})}}function Pi(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}var sA=class{recordNoop(e){return{...e,evaluation:{kind:"noop"}}}recordClear(e,t){return{...e,evaluation:{kind:"clear",taskId:t}}}recordCandidate(e,t){let{original:r,adjusted:i,explanation:s,result:o}=t,a=lA(e.event,i);return{...e,evaluation:{kind:"candidate",original:r,adjusted:i},candidateTransition:oA(r,i),frameTransition:aA(e.current,o),heuristics:{scoreOffset:i.attentionScoreOffset??0,rationale:i.attentionRationale??[]},...a!==void 0?{semantic:a}:{},episode:cA(i),policy:s.policy,policyRules:{gateEvaluations:s.policyGateEvaluations,criterion:s.criterion,criterionEvaluations:s.policyCriterionEvaluations},utility:{candidate:s.utility,currentScore:s.currentScore,currentPriority:s.currentPriority},planner:{kind:s.decision.kind,reasons:s.reasons,continuityEvaluations:s.continuityEvaluations},coordination:{kind:s.decision.kind,resultLane:mA(e.attentionView,i.taskId,i.interactionId,s.decision.kind),candidateScore:s.candidateScore,currentScore:s.currentScore,currentPriority:s.currentPriority,criterion:s.criterion,ambiguity:s.ambiguity,reasons:s.reasons,continuityEvaluations:s.continuityEvaluations},pressureForecast:s.pressureForecast,attentionBurden:s.attentionBurden,result:o}}};function oA(e,t){return{changedFields:fu(e,t)}}function aA(e,t){return{changedFields:fu(e,t)}}function cA(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 lA(e,t){let r=e.semantic;if(!r)return;let i=gh(t)??au(e,r),s=Wt(t);return{intentFrame:r.intentFrame,...r.activityClass!==void 0?{activityClass:r.activityClass}:{},...r.toolFamily!==void 0?{toolFamily:r.toolFamily}:{},...r.consequence!==void 0?{consequence:r.consequence}:{},...s?.confidence!==void 0?{confidence:s.confidence}:{},...s?.abstained===!0?{abstained:!0}:{},ontology:i,...r.whyNow!==void 0?{whyNow:r.whyNow}:{},relationHints:r.relationHints,factors:r.factors,reasons:r.reasons,influence:uA(e,t),impact:dA(e,t),...r.provenance!==void 0?{provenance:r.provenance}:{}}}function uA(e,t){let r=e.semantic;if(!r)return[];let i=gh(t)??au(e,r),s=[];return e.type==="task.updated"?(s.push("task status stayed authoritative for candidate routing; semantic details still affected context, continuity, ambiguity handling, and ontology diagnostics"),"activityClass"in e&&e.activityClass===r.activityClass&&r.activityClass!==void 0&&s.push("activity class enriched canonical status facts"),e.toolFamily===r.toolFamily&&r.toolFamily!==void 0&&s.push("tool family enriched canonical status facts without changing the route"),r.relationHints.length>0&&s.push("relation hints informed continuity handling"),i.blocking!=="non_blocking"&&!t.blocking&&s.push(i.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"),Di(t)?s.push("semantic abstention can keep non-blocking status work peripheral until clearer evidence arrives"):Li(t)==="low"&&s.push("low semantic confidence can keep non-blocking status work peripheral until the signal is clearer"),s):e.type==="human.input.requested"?("activityClass"in e&&e.activityClass===r.activityClass&&r.activityClass!==void 0&&s.push("activity class was projected into the canonical request"),e.consequence===r.consequence&&r.consequence!==void 0&&s.push("semantic consequence set the canonical human-input consequence"),r.toolFamily!==void 0&&(e.request.kind==="approval"?s.push("tool family remained decision-bearing on the approval path"):s.push("tool family stayed context-only on the question/form path")),r.relationHints.length>0&&s.push("relation hints informed continuity handling"),Di(t)?s.push(t.blocking?"semantic abstention stayed visible but did not downgrade blocking work":"semantic abstention constrained non-blocking routing"):Li(t)==="low"&&s.push(t.blocking?"semantic low confidence stayed visible but did not downgrade blocking work":"low semantic confidence constrained non-blocking routing"),s.length===0&&s.push("semantic interpretation mostly stayed context-only beyond the explicit request"),s):(s.push("semantic interpretation was recorded for explanation only"),s)}function dA(e,t){let r=e.semantic,i=new Set,s=new Set,o=new Set,a=new Set,c=new Set,u=Wt(t),p=pA(e);if(!r)return{routingAuthority:p,decisionBearing:[],explanatory:[],canonical:[],routing:[],continuity:[],ambiguity:[],contextOnly:[]};switch(c.add("intent"),r.activityClass!==void 0&&c.add("activity"),r.toolFamily!==void 0&&c.add("tool"),r.consequence!==void 0&&c.add("consequence"),r.whyNow!==void 0&&c.add("why now"),r.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===r.activityClass&&r.activityClass!==void 0&&_e(c,i,"activity","activity (canonical)"),r.toolFamily!==void 0&&e.toolFamily===r.toolFamily&&_e(c,i,"tool","tool (bounded)"),r.relationHints.length>0&&_e(c,o,"relations","relations (continuity)"),cu(t)&&_e(c,s,"intent","blocking (peripheral routing)");break;case"human.input.requested":"activityClass"in e&&e.activityClass===r.activityClass&&r.activityClass!==void 0&&_e(c,i,"activity","activity (canonical)"),r.consequence!==void 0&&e.consequence===r.consequence&&_e(c,i,"consequence","consequence (canonical)"),r.toolFamily!==void 0&&e.request.kind==="approval"&&_e(c,i,"tool","tool (approval path)"),r.relationHints.length>0&&_e(c,o,"relations","relations (continuity)");break;default:r.relationHints.length>0&&_e(c,o,"relations","relations (continuity)");break}return!t.blocking&&jE(t)&&_e(c,a,"confidence","confidence (ambiguity)"),!t.blocking&&Di(t)&&_e(c,a,"abstention","abstention (ambiguity)"),{routingAuthority:p,decisionBearing:[...i,...s,...o,...a],explanatory:[...c],canonical:[...i],routing:[...s],continuity:[...o],ambiguity:[...a],contextOnly:[...c]}}function pA(e){switch(e.type){case"task.updated":return"status";case"human.input.requested":return"request";default:return"event"}}function _e(e,t,r,i){e.delete(r),t.add(i)}function mA(e,t,r,i){return i==="auto_approve"||i==="clear"?"none":e.now&&e.now.taskId===t&&e.now.interactionId===r?"now":e.next.some(s=>s.taskId===t&&s.interactionId===r)?"next":e.ambient.some(s=>s.taskId===t&&s.interactionId===r)?"ambient":"none"}function gA(e,t,r){return{kind:e,original:t,finalized:r,changedFields:fu(t,r)}}var fA=class{constructor(e){this.timeSource=e}engagement=null;timer=null;engage(e,t,r={},i){let s=hA(r.durationMs);this.engagement={taskId:e,interactionId:t,expiresAtMs:this.timeSource()+s},this.scheduleExpiry(s,e,t,i)}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 r=this.engagement;r&&(e!==void 0&&r.taskId!==e||t!==void 0&&r.interactionId!==t||(this.engagement=null,this.clearTimer()))}dispose(){this.engagement=null,this.clearTimer()}scheduleExpiry(e,t,r,i){this.clearTimer(),this.timer=setTimeout(()=>{if(!(this.engagement?.taskId!==t||this.engagement?.interactionId!==r)){if(i){i();return}this.clear()}},e),this.timer.unref?.()}clearTimer(){this.timer&&(clearTimeout(this.timer),this.timer=null)}};function Kf(e,t){return e.now?.interactionId===t.now?.interactionId&&Hf(e.next,t.next)&&Hf(e.ambient,t.ambient)}function hA(e){return e===void 0?12e3:Math.max(25,Math.floor(e))}function Hf(e,t){return e.length===t.length&&e.every((r,i)=>r.interactionId===t[i]?.interactionId)}function yA(e){return e.evaluation.kind==="candidate"}function SA(e){return yA(e)}function bA(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(!SA(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 IA=3,vA=25,kA=class{frameListeners=new Map;taskViewListeners=new Map;attentionViewListeners=new Set;responseListeners=new Set;signalListeners=new Set;traceListeners=new Set;internalTraceListeners=new Set;frameHealth=Lt();taskViewHealth=Lt();attentionViewHealth=Lt();responseHealth=Lt();signalHealth=Lt();traceHealth=Lt();internalTraceHealth=Lt();subscribeFrame(e,t,r){let i=this.frameListeners.get(e)??new Set,s=Mt(t);i.add(s),this.frameListeners.set(e,i);let o=()=>{i.delete(s),i.size===0&&this.frameListeners.delete(e)};try{t(r)}catch(a){throw o(),a}return o}subscribeTaskView(e,t,r){let i=this.taskViewListeners.get(e)??new Set,s=Mt(t);i.add(s),this.taskViewListeners.set(e,i);let o=()=>{i.delete(s),i.size===0&&this.taskViewListeners.delete(e)};try{t(r)}catch(a){throw o(),a}return o}subscribeAttentionView(e,t){let r=Mt(e);this.attentionViewListeners.add(r);try{e(t)}catch(i){throw this.attentionViewListeners.delete(r),i}return()=>{this.attentionViewListeners.delete(r)}}onResponse(e){let t=Mt(e);return this.responseListeners.add(t),()=>{this.responseListeners.delete(t)}}onSignal(e){let t=Mt(e);return this.signalListeners.add(t),()=>{this.signalListeners.delete(t)}}onTrace(e){let t=Mt(e);return this.traceListeners.add(t),()=>{this.traceListeners.delete(t)}}[eu](e){let t=Mt(e);return this.internalTraceListeners.add(t),()=>{this.internalTraceListeners.delete(t)}}emitFrame(e,t){let r=this.frameListeners.get(e);r&&(this.emitRegistrations(r,this.frameHealth,i=>i(t)),r.size===0&&this.frameListeners.delete(e))}emitTaskView(e,t){let r=this.taskViewListeners.get(e);r&&(this.emitRegistrations(r,this.taskViewHealth,i=>i(t)),r.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,r=>r(e));let t=bA(e);this.emitRegistrations(this.traceListeners,this.traceHealth,r=>r(t))}getHealthSnapshot(){let e=Dt(this.frameHealth,Wf(this.frameListeners)),t=Dt(this.taskViewHealth,Wf(this.taskViewListeners)),r=Dt(this.attentionViewHealth,this.attentionViewListeners.size),i=Dt(this.responseHealth,this.responseListeners.size),s=Dt(this.signalHealth,this.signalListeners.size),o=Dt(this.traceHealth,this.traceListeners.size),a=Dt(this.internalTraceHealth,this.internalTraceListeners.size);return{totalActive:e.active+t.active+r.active+i.active+s.active+o.active+a.active,frame:e,taskView:t,attentionView:r,response:i,signal:s,trace:o,internalTrace:a}}emitRegistrations(e,t,r){for(let i of[...e]){let s=Nf.now();try{r(i.listener),i.consecutiveFailures=0}catch(o){i.consecutiveFailures+=1,t.failures+=1,t.lastErrorAt=new Date().toISOString(),t.lastErrorMessage=o instanceof Error?o.message:String(o),i.consecutiveFailures>=IA&&(e.delete(i),t.detached+=1)}finally{let o=Nf.now()-s;t.emissions+=1,o>t.maxDeliveryMs&&(t.maxDeliveryMs=o),o>=vA&&(t.slowDeliveries+=1)}}}};function Mt(e){return{listener:e,consecutiveFailures:0}}function Lt(){return{emissions:0,failures:0,detached:0,slowDeliveries:0,maxDeliveryMs:0,lastErrorAt:null,lastErrorMessage:null}}function Dt(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 Wf(e){let t=0;for(let r of e.values())t+=r.size;return t}function EA(e){let t=ah(e),r=e.type==="human.input.requested"&&e.riskHint!==void 0?{riskHint:e.riskHint}:void 0;return Ch(wA(e),t,r)}function zf(e,t={}){if(t.skipSemanticDefaults)return e;let r=e.semantic??ah(TA(e));return Ch(e,r)}function _A(e){switch(e){case"high":return"critical";case"medium":case"low":return"focused";default:return RA(e)}}function Ch(e,t,r={}){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 AA(e,t,r);default:return Oh(e)}}function AA(e,t,r){let{toolFamily:i,...s}=e,o=e.consequence??t.consequence??r.riskHint??"medium",a=e.tone??_A(o),c=uu({base:e.provenance,semantic:t}),u=e.request.kind==="approval"?e.toolFamily??t.toolFamily:void 0;return{...s,...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 wA(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 xA(e)}}function TA(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 Oh(e)}}function Oh(e){throw new Error(`Unhandled ApertureEvent in semantic normalizer: ${JSON.stringify(e)}`)}function xA(e){throw new Error(`Unhandled SourceEvent in semantic normalizer: ${JSON.stringify(e)}`)}function RA(e){throw new Error(`Unhandled consequence level in semantic normalizer: ${e}`)}function CA(e){return{originalEvent:e,finalizedEvent:EA(e),transitionKind:"source_normalized"}}function OA(e,t={}){let r=t.applySemanticDefaults!==!1;return{originalEvent:e,finalizedEvent:r?zf(e):zf(e,{skipSemanticDefaults:!0}),transitionKind:r?"direct_enriched":"direct_passthrough"}}async function tu(e,t,r){try{let i=await ak(e,"utf8"),s=r(i);return s===null?(Gf(e,"Failed to parse markdown state. Falling back to the in-memory default."),t):s}catch(i){return MA(i)||Gf(e,"Failed to read markdown state. Falling back to the in-memory default.",i),t}}async function PA(e,t){await ck(sk(e),{recursive:!0});let r=`${e}.${process.pid}.${ok(6).toString("hex")}.tmp`,i=await lk(r,"w",384),s=!1;try{await i.writeFile(t,"utf8"),await i.sync(),await i.close(),s=!0,await uk(r,e)}catch(o){throw s||await i.close().catch(()=>{}),await dk(r).catch(()=>{}),o}}function hu(e){let t=/^(#{1,3})\s+(.+?)\s*$/.exec(e.trim());if(!t)return null;let r=t[1];if(r===void 0)return null;let i=r.length;if(i<1||i>3)return null;let s=t[2]?.trim();return s?{level:i,text:s}:null}function yu(e){let t=e.trim();if(!t.startsWith("- "))return null;let r=t.slice(2).trim(),i=r.indexOf(":");if(i===-1)return r.length>0?{text:r}:null;let s=r.slice(0,i).trim(),o=r.slice(i+1).trim();return s.length===0?null:{key:s,value:o}}function Vt(e){return e==="true"?!0:e==="false"?!1:/^-?\d+(?:\.\d+)?$/.test(e)?Number(e):e}function Q(e,t){return`- ${e}: ${String(t)}`}function NA(e){return`- ${e}`}function MA(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="ENOENT"}function Gf(e,t,r){let i=r===void 0?"":` ${r instanceof Error?r.message:String(r)}`;console.warn(`[aperture] ${t} (${e})${i}`)}function qi(e){switch(e){case"ambient":return"ambient";case"next":case"queue":return"next";case"now":case"active":return"now";default:return}}async function Ph(e,t){return tu(zl(e,"JUDGMENT.md"),t,LA)}function LA(e){let t=new Map,r=new Map,i=new Map,s=new Map,o=null,a=null;for(let p of e.split(`
|
|
6
|
-
`)){let m=hu(p);if(m){m.level===2?(o=m.text,a=null):m.level===3&&o==="Policy"&&(a=m.text,r.has(a)||r.set(a,{}));continue}let h=yu(p);if(!(!h||!("key"in h))){if(o==="Meta"){t.set(h.key,h.value);continue}if(o==="Policy"&&a){let f=Vt(h.value),b=DA(Vl(h.key));r.set(a,{...r.get(a)??{},...b==="minimumLane"?(()=>{let v=qi(f);return v===void 0?{}:{minimumLane:v}})():{[b]:f}});continue}if(o==="Planner Defaults"){let f=Vl(h.key);if(f==="disabledContinuityRules"){let v=qA(h.value);v.length>0&&s.set(f,v);continue}let b=Vt(h.value);(typeof b=="boolean"||typeof b=="number")&&s.set(f,b);continue}if(o==="Ambiguity Defaults"){let f=Vt(h.value);typeof f=="number"&&i.set(Vl(h.key),f)}}}let c=UA(t.get("version")),u=t.get("updated at");return c===null||c!==st||!u?null:{version:c,updatedAt:u,...r.size>0?{policy:Object.fromEntries(r.entries())}:{},...i.size>0?{ambiguityDefaults:Object.fromEntries(i.entries())}:{},...s.size>0?{plannerDefaults:Object.fromEntries(s.entries())}:{}}}function DA(e){return e==="minimumPresentation"?"minimumLane":e}function UA(e){return e!==void 0&&/^-?\d+(?:\.\d+)?$/.test(e)?Number(e):null}function Vl(e){return e.replace(/\s+([a-z])/g,(t,r)=>r.toUpperCase())}var jA={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},FA=Object.keys(jA);function qA(e){let t=new Set;for(let r of e.split(",")){let i=r.trim();BA(i)&&t.add(i)}return[...t]}function BA(e){return FA.includes(e)}var $A=class{rootDir;constructor(e){this.rootDir=e}loadUserProfile(e){return tu(this.userPath(),e,VA)}loadMemoryProfile(e){return tu(this.memoryPath(),e,HA)}saveMemoryProfile(e){return PA(this.memoryPath(),WA(e))}userPath(){return zl(this.rootDir,"USER.md")}memoryPath(){return zl(this.rootDir,"MEMORY.md")}};function VA(e){let t=new Map,r=new Map,i=new Map,s=null,o=null;for(let p of e.split(`
|
|
7
|
-
|
|
8
|
-
`)
|
|
9
|
-
`)}function zA(){return{presentations:0,responses:0,dismissals:0}}function nu(e,t,r){let i=e.get(t)??[];i.push(r),e.set(t,i)}function Ft(e,t){return e.get(t)?.[0]??null}function rt(e,t){return e.get(t)??[]}function ru(e){return e!==null&&/^-?\d+(?:\.\d+)?$/.test(e)?Number(e):null}function Mi(e){return e.replace(/\s+([a-z])/g,(t,r)=>r.toUpperCase())}async function GA(e){let t=new $A(e),[r,i,s]=await Promise.all([t.loadUserProfile(Nh()),t.loadMemoryProfile(JA()),Ph(e,Mh())]);return{profileStore:t,markdownRootDir:e,userProfile:r,memoryProfile:i,judgmentConfig:s}}async function YA(e){let[t,r,i]=await Promise.all([e.profileStore.loadUserProfile(e.userProfile??Nh()),e.profileStore.loadMemoryProfile(e.memoryProfile),Ph(e.markdownRootDir,e.judgmentConfig??Mh())]);return{userProfile:t,memoryProfile:r,judgmentConfig:i}}async function ZA(e){if(!e.profileStore)return null;let t=kh(e.memoryProfile,e.signals,e.now);return await e.profileStore.saveMemoryProfile(t),t}function Nh(){return{version:st,operatorId:"default",updatedAt:vn(0)}}function JA(){return{version:st,operatorId:"default",updatedAt:vn(0),sessionCount:0}}function Mh(){return{version:st,updatedAt:vn(0)}}function Kl(e){let{timestamp:t,event:r,eventTransition:i,evidence:s,taskView:o,attentionView:a}=e;return{timestamp:t,event:r,eventTransition:i,taskSummary:s.taskSignalSummary,globalSummary:s.globalSignalSummary,taskAttentionState:s.taskAttentionState,globalAttentionState:s.globalAttentionState,pressureForecast:s.pressureForecast,attentionBurden:s.attentionBurden,current:s.currentFrame,taskView:o,attentionView:a}}function Wi(e,t=[]){return{rule:e,kind:"noop",rationale:t}}function Kt(e,t,r=t.rationale){return{rule:e,kind:"verdict",verdict:t,rationale:r}}var XA=e=>e.candidate.priority!=="background"?Wi("background"):Kt("background",{autoApprove:!1,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!0,rationale:["background work should remain peripheral by default"]}),QA=e=>e.candidate.blocking?Kt("blocking",{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!0,minimumLane:"now",minimumLaneIsSticky:!1,rationale:["blocking interactions require explicit operator attention"]}):Wi("blocking");function ew(e,t){let r=e?.policy;if(!r)return;let i=tw(t);for(let s of i){let o=r[s];if(o)return o}}function Lh(e){return Dh(e)?du(e):null}function tw(e){let t=[];if(!Dh(e))return t;let r=Lh(e),i=[e.title,e.summary??"",...e.context?.items?.flatMap(s=>[s.label,s.value??""])??[]].join(" ").toLowerCase();return e.consequence==="low"&&r==="read"&&t.push("lowRiskRead"),e.consequence==="low"&&r==="web"&&t.push("lowRiskWeb"),i.includes(".env")&&(r==="write"||r==="edit"||r==="bash")&&t.push("envWrite"),(r==="write"||r==="edit")&&t.push("fileWrite"),r==="bash"&&e.consequence==="high"&&t.push("destructiveBash"),t}function Dh(e){return e.activityClass!==void 0?nw(e.activityClass):e.mode==="approval"}function nw(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 rw=e=>{let{candidate:t,judgmentConfig:r,userProfile:i}=e,s=Lh(t),o=s?i?.overrides?.tools?.[s]:void 0,a=ew(r,t),c=o?.requireContextExpansion===!0||a?.requireContextExpansion===!0,u=a?.autoApprove===!0&&t.mode==="approval"&&t.responseSpec.kind==="approval"&&!c,p=qi(o?.minimumLane??o?.defaultPresentation)??qi(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 Wi("configured_policy");let f=[];return s&&o&&f.push(`user override applies for ${s} interactions`),a&&f.push("configured judgment policy applies to this interaction"),u?(f.push("configured judgment policy auto-approves this bounded approval"),Kt("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"),Kt("configured_policy",{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!0,minimumLane:"now",minimumLaneIsSticky:!1,rationale:f})):Kt("configured_policy",{autoApprove:!1,mayInterrupt:m??!1,requiresOperatorResponse:h,minimumLane:p??(t.blocking?"now":"next"),minimumLaneIsSticky:p!==void 0||m===!1,rationale:f})},iw=()=>Kt("interruptive_default",{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!1,minimumLane:"next",minimumLaneIsSticky:!1,rationale:["urgent non-blocking work may compete for interruptive attention"]});function it(e,t=[]){return{rule:e,kind:"noop",rationale:t}}function we(e,t,r=t.rationale){return{rule:e,kind:"verdict",verdict:t,rationale:r}}function Uh(e,t,r){return{rule:e,kind:"adjust",criterion:t,rationale:r}}function Bi(e){return{criterion:e,peripheralResolution:null,ambiguity:null,rationale:[]}}function sw(e,t,r=[]){return{criterion:e,peripheralResolution:t,ambiguity:null,rationale:r}}function nr(e,t,r,i){return{criterion:e,peripheralResolution:t,ambiguity:r,rationale:i}}var ow=e=>{let{evidence:t,criterion:r}=e,i=t.attentionBurden.thresholdOffset;return i<=0?it("attention_budget"):Uh("attention_budget",{activationThreshold:r.activationThreshold+i,promotionMargin:r.promotionMargin+i},["sustained attention burden raises the interrupt bar until the operator load eases"])},aw=e=>{let{candidate:t,policyVerdict:r,criterion:i,peripheralResolution:s,evidence:o}=e;return!r.mayInterrupt&&r.minimumLaneIsSticky?we("interrupt_eligibility",sw(i,cw(t,s,o.surfaceCapabilities))):t.blocking||t.episodeState==="actionable"||r.autoApprove||r.requiresOperatorResponse||r.minimumLane==="now"?we("interrupt_eligibility",Bi(i)):it("interrupt_eligibility")};function cw(e,t,r){if(t!=="ambient"||!r.topology.supportsAmbient)return"queue";switch(e.responseSpec.kind){case"approval":case"acknowledge":case"none":return"ambient";case"choice":return(e.responseSpec.selectionMode==="multiple"?r.responses.supportsMultipleChoice:r.responses.supportsSingleChoice)&&(!e.responseSpec.allowTextResponse||r.responses.supportsTextResponse)?"ambient":"queue";case"form":return r.responses.supportsForm?"ambient":"queue"}}var lw=e=>{let{candidate:t,evidence:r,candidateScore:i,criterion:s,peripheralResolution:o}=e;return r.currentFrame||t.episodeId!==void 0&&[r.attentionView.now,...r.attentionView.next,...r.attentionView.ambient].filter(a=>a!==null).some(a=>a.interactionId!==t.interactionId&&qt(a)===t.episodeId&&!Ge(Bt(a)))?it("no_active_frame"):i>=s.activationThreshold?we("no_active_frame",Bi(s)):we("no_active_frame",nr(s,o,{kind:"interrupt",reason:"low_signal",resolution:o},["uncertain interruptive work stays peripheral until its signal is stronger"]))},uw=e=>{let{evidence:t,criterion:r,peripheralResolution:i}=e;return t.operatorPresence!=="absent"?it("operator_absence"):we("operator_absence",{criterion:r,peripheralResolution:i,ambiguity:null,rationale:["operator absence keeps interruptive work peripheral until foreground attention returns"]})},dw=e=>{let{candidate:t}=e;return t.mode!=="status"||t.consequence==="high"||t.tone==="critical"?Wi("peripheral_status"):Kt("peripheral_status",{autoApprove:!1,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!1,rationale:["non-critical status work should start in the periphery"]})},pw=e=>{let{candidate:t,criterion:r,peripheralResolution:i}=e;return t.blocking?it("semantic_uncertainty"):Di(t)?we("semantic_uncertainty",nr(r,i,{kind:"interrupt",reason:"low_signal",resolution:i},["semantic interpretation abstained, so non-blocking work stays peripheral until stronger explicit evidence arrives"])):Li(t)==="low"?we("semantic_uncertainty",nr(r,i,{kind:"interrupt",reason:"low_signal",resolution:i},["low-confidence semantic interpretation keeps non-blocking work peripheral until the signal is clearer"])):ph(t)==="weak"?we("semantic_uncertainty",nr(r,i,{kind:"interrupt",reason:"low_signal",resolution:i},["inferred semantic evidence stays peripheral until stronger source-backed context arrives"])):it("semantic_uncertainty",Wt(t)!==null?["semantic evidence is strong enough to keep ordinary interrupt rules in play"]:[])},mw=e=>{let{candidateScore:t,currentScore:r,criterion:i,peripheralResolution:s}=e;return r===null||t<=r||t>=r+i.promotionMargin?we("small_score_gap",Bi(i)):we("small_score_gap",nr(i,s,{kind:"interrupt",reason:"small_score_gap",resolution:s},["small score gaps resolve to the periphery instead of stealing focus immediately"]))},gw=2,$i=6,fw=e=>{let{candidate:t,criterion:r,sourceTrustAdjustment:i}=e,s=hw(i),o=FE(t),a=Math.max(-$i,Math.min($i,s+o));if(a===0)return it("source_trust");let c={activationThreshold:Math.max(0,r.activationThreshold-a),promotionMargin:Math.max(0,r.promotionMargin-a)},u=[...s>0?["durable source trust lowers the interrupt bar for this source"]:s<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 Uh("source_trust",c,u)};function hw(e){return e===0?0:Math.max(-$i,Math.min($i,Math.trunc(e/gw)))}var yw=[rw,QA,XA,dw,iw],Sw=[uw,aw,fw,ow,pw,lw,mw],jh=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),r=[];for(let s of yw){let o=s(t);if(r.push(o),o.kind==="verdict")return{verdict:o.verdict,evaluations:r}}return{verdict:{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!1,minimumLane:"next",minimumLaneIsSticky:!1,rationale:["urgent non-blocking work may compete for interruptive attention"]},evaluations:r}}evaluateInterruptCriterion(e,t,r,i,s,o={}){return this.explainInterruptCriterion(e,t,r,i,s,o).verdict}explainInterruptCriterion(e,t,r,i,s,o={}){let a=this.readInterruptCriterion(o.ambiguityDefaults),c=this.readPeripheralResolution(e,t),u=this.readSourceTrustAdjustment(e),p=[],m=[];for(let h of Sw){let f=h(this.buildPolicyCriterionInput(e,t,r,i,s,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??G.ambiguity.nonBlockingActivationThreshold,promotionMargin:e?.promotionMargin??this.judgmentConfig?.ambiguityDefaults?.promotionMargin??G.ambiguity.promotionMargin}}readPeripheralResolution(e,t){return fh(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,r,i,s,o,a,c){return{candidate:e,policyVerdict:t,evidence:r,candidateScore:i,currentScore:s,criterion:o,sourceTrustAdjustment:a,peripheralResolution:c}}},L=G.attentionValue,Fh=class{memoryProfile;constructor(e={}){this.memoryProfile=e.memoryProfile}scoreCandidate(e){let t=this.sourceTrustAdjustment(e),r=this.consequenceCalibrationAdjustment(e),i=this.responseAffinityAdjustment(e),s=this.contextCostAdjustment(e),o=this.deferralAffinityAdjustment(e),a={priority:bw(e.priority)*100,consequence:Iw(e.consequence)*10,tone:vw(e.tone),blocking:e.blocking?1e3:0,heuristics:e.attentionScoreOffset??0,sourceTrust:t,consequenceCalibration:r,responseAffinity:i,contextCost:s,deferralAffinity:o},c=e.attentionRationale?[...e.attentionRationale]:[];return t!==0&&c.push("durable source trust adjusts this interaction's utility"),r>0&&c.push("memory suggests this consequence band is often understated and deserves more attention"),r<0&&c.push("memory suggests this consequence band is often overstated and should be tempered"),i>0&&c.push("memory suggests this kind of interaction usually resolves quickly"),s<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:Le(e,t),components:{attentionAdjustment:Yf(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=Hl(e);if(!t)return 0;let r=this.memoryProfile?.toolFamilies?.[t];return!r||r.avgResponseLatencyMs===void 0||r.presentations<L.memorySufficiency.toolFamilyPresentations||r.responses<L.memorySufficiency.toolFamilyResponses?0:r.avgResponseLatencyMs<=L.responseAffinity.fastLatencyMs?L.responseAffinity.fastBoost:r.avgResponseLatencyMs<=L.responseAffinity.mediumLatencyMs?L.responseAffinity.mediumBoost:0}consequenceCalibrationAdjustment(e){let t=this.memoryProfile?.consequenceProfiles?.[e.consequence],r=t?.rejectionRate;if(r===void 0||(t?.reviewedCount??0)<L.memorySufficiency.consequenceReviewedCount)return 0;switch(e.consequence){case"low":return r>=L.consequenceCalibration.highRejectionRate?L.consequenceCalibration.adjustments.low.highRate:r>=L.consequenceCalibration.mediumRejectionRate?L.consequenceCalibration.adjustments.low.mediumRate:0;case"medium":return r>=L.consequenceCalibration.highRejectionRate?L.consequenceCalibration.adjustments.medium.highRate:r>=L.consequenceCalibration.mediumRejectionRate?L.consequenceCalibration.adjustments.medium.mediumRate:0;case"high":return r>=L.consequenceCalibration.highRejectionRate?L.consequenceCalibration.adjustments.high.highRate:r>=L.consequenceCalibration.mediumRejectionRate?L.consequenceCalibration.adjustments.high.mediumRate:0}}contextCostAdjustment(e){let t=Hl(e);if(!t)return 0;let r=this.memoryProfile?.toolFamilies?.[t]?.contextExpansionRate;return r===void 0||(this.memoryProfile?.toolFamilies?.[t]?.presentations??0)<L.memorySufficiency.toolFamilyPresentations?0:r>=L.contextCost.highRate?L.contextCost.highPenalty:r>=L.contextCost.mediumRate?L.contextCost.mediumPenalty:0}deferralAffinityAdjustment(e){let t=Hl(e);if(!t)return 0;let r=this.memoryProfile?.toolFamilies?.[t]?.returnAfterDeferralRate;return r===void 0||(this.memoryProfile?.toolFamilies?.[t]?.presentations??0)<L.memorySufficiency.toolFamilyPresentations?0:r>=L.deferralAffinity.highRate?L.deferralAffinity.highBoost:r>=L.deferralAffinity.mediumRate?L.deferralAffinity.mediumBoost:0}};function Hl(e){return du(e)}function bw(e){switch(e){case"background":return 0;case"normal":return 1;case"high":return 2}}function Iw(e){switch(e){case"low":return 0;case"medium":return 1;case"high":return 2}}function vw(e){switch(e){case"ambient":return 0;case"focused":return 1;case"critical":return 2}}var kw=class{policyGates;utilityScore;queuePlanner;ambiguityDefaults;constructor(e=new jh,t=new Fh,r=new xh,i={}){this.policyGates=e,this.utilityScore=t,this.queuePlanner=r,this.ambiguityDefaults=i.ambiguityDefaults}coordinate(e,t,r={}){return this.explain(e,t,r).decision}explain(e,t,r={}){let i=this.resolveEvidenceContext(e,r,t.timestamp),s=this.policyGates.explainGates(t),o=s.verdict,a=this.utilityScore.scoreCandidate(t),c=i.currentFrame?Le(i.currentFrame,{now:t.timestamp}):null,u=i.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:s.evaluations,utility:a,criterion:null,policyCriterionEvaluations:[],pressureForecast:u,attentionBurden:i.attentionBurden,candidateScore:a.total,currentScore:c,currentPriority:null,ambiguity:null,reasons:f,continuityEvaluations:[]}}let p=this.policyGates.explainInterruptCriterion(t,o,i,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:s.evaluations,utility:a,criterion:m,policyCriterionEvaluations:p.evaluations,pressureForecast:u,attentionBurden:i.attentionBurden,candidateScore:a.total,currentScore:c,currentPriority:i.currentFrame?pe(i.currentFrame):null,ambiguity:m.ambiguity,reasons:f,continuityEvaluations:[]}}let h=this.queuePlanner.explain(i.currentFrame,t,{...i,policyVerdict:o,utility:a,pressureForecast:u,candidateScore:a.total,currentScore:c});return{decision:h.decision,policy:o,policyGateEvaluations:s.evaluations,utility:a,criterion:m,policyCriterionEvaluations:p.evaluations,pressureForecast:u,attentionBurden:i.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,r){return pu(e,Hi(t),Ew(r))}};function Ew(e){let t=Date.parse(e);return Number.isNaN(t)?0:t}function _w(e={}){return{userProfile:e.userProfile,baseMemoryProfile:e.memoryProfile??Aw(),judgmentConfig:e.judgmentConfig,surfaceCapabilities:iu(e.surfaceCapabilities),operatorPresence:e.operatorPresence??"present",responseExpiryMs:e.responseExpiryMs,timeSource:e.timeSource??Date.now}}function Wl(e){return new kw(new jh({...e.userProfile!==void 0?{userProfile:e.userProfile}:{},...e.judgmentConfig!==void 0?{judgmentConfig:e.judgmentConfig}:{},memoryProfile:e.baseMemoryProfile}),new Fh({memoryProfile:e.baseMemoryProfile}),new xh({...e.judgmentConfig?.plannerDefaults!==void 0?{plannerDefaults:e.judgmentConfig.plannerDefaults}:{}}))}function iu(e){let t=e??Fi;return{topology:{...t.topology},responses:{...t.responses}}}function Aw(){return{version:st,operatorId:"default",updatedAt:vn(0),sessionCount:0}}function ww(e){switch(F("event.id",e.id),F("event.taskId",e.taskId),Su("event.timestamp",e.timestamp),e.source!==void 0&&F("event.source.id",e.source.id),e.type){case"task.started":case"task.updated":F("event.title",e.title);break;case"human.input.requested":F("event.interactionId",e.interactionId),F("event.title",e.title),F("event.summary",e.summary);break;case"task.completed":case"task.cancelled":break;default:return Nw(e)}}function Tw(e){switch(F("event.id",e.id),F("event.taskId",e.taskId),Su("event.timestamp",e.timestamp),e.source&&F("event.source.id",e.source.id),e.type){case"task.started":F("event.title",e.title);return;case"task.updated":F("event.title",e.title),Cw("event.status",e.status);return;case"task.completed":return;case"task.cancelled":e.reason!==void 0&&F("event.reason",e.reason);return;case"human.input.requested":F("event.interactionId",e.interactionId),F("event.title",e.title),F("event.summary",e.summary),Pw("event.request",e.request),e.riskHint!==void 0&&Ow("event.riskHint",e.riskHint);return;default:return Mw(e)}}function xw(e){switch(F("response.taskId",e.taskId),F("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 be("response.optionIds must contain at least one option id",{field:"response.optionIds"});return;case"text_submitted":F("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 be("response.values must be an object",{field:"response.values"});return}}function Rw(e){F("signal.taskId",e.taskId),F("signal.interactionId",e.interactionId),Su("signal.timestamp",e.timestamp),e.source!==void 0&&F("signal.source.id",e.source.id)}function F(e,t){if(typeof t!="string"||t.trim().length===0)throw new be(`${e} must be a non-empty string`,{field:e})}function Su(e,t){if(F(e,t),Number.isNaN(Date.parse(t)))throw new be(`${e} must be a valid ISO timestamp`,{field:e})}function Cw(e,t){if(!["running","blocked","waiting","completed","failed"].includes(t))throw new be(`${e} must be a valid task status`,{field:e})}function Ow(e,t){if(!["low","medium","high"].includes(t))throw new be(`${e} must be a valid consequence level`,{field:e})}function Pw(e,t){if(!t||typeof t!="object"||!("kind"in t))throw new be(`${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 be(`${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 be(`${e}.fields must contain at least one field`,{field:`${e}.fields`});return;default:throw new be(`${e} must have a supported request kind`,{field:e})}}function Nw(e){throw new be(`Unhandled ApertureEvent in validation: ${JSON.stringify(e)}`,{field:"event.type",code:"unsupported_event_variant"})}function Mw(e){throw new be(`Unhandled SourceEvent in validation: ${JSON.stringify(e)}`,{field:"event.type",code:"unsupported_event_variant"})}var Lw=Symbol("aperture.internal.readHealth"),qh=class Bh{listeners=new kA;taskViews=new rA;heuristics=new kk;evaluation=new e_;traceRecorder=new sA;coordinator;planner=new i_;attentionEvidence;frameLifecycle;profileStore;markdownRootDir;baseMemoryProfile;userProfile;judgmentConfig;surfaceCapabilities;operatorPresence;responseExpiryMs;clock;signals;episodes;operatorEngagement;reloadInFlight=null;constructor(t={}){let r=_w(t);this.markdownRootDir=t.markdownRootDir,this.profileStore=t.profileStore,this.userProfile=r.userProfile,this.judgmentConfig=r.judgmentConfig,this.surfaceCapabilities=r.surfaceCapabilities,this.operatorPresence=r.operatorPresence,this.responseExpiryMs=r.responseExpiryMs,this.clock=Ki(r.timeSource),this.signals=new c_({clock:this.clock}),this.episodes=new WE({clock:this.clock}),this.operatorEngagement=new fA(r.timeSource),this.baseMemoryProfile=r.baseMemoryProfile,this.coordinator=Wl(r),this.attentionEvidence=new W_({signals:this.signals,episodes:this.episodes,clock:this.clock,getTaskView:i=>this.getTaskView(i),getAttentionView:()=>this.getAttentionView(),getOperatorPresence:()=>this.getOperatorPresence(),getSurfaceCapabilities:()=>this.getSurfaceCapabilities()}),this.frameLifecycle=new tA({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,s)=>this.operatorEngagement.clear(i,s),notifyFrame:(i,s)=>this.listeners.emitFrame(i,s),notifyTaskView:(i,s)=>this.listeners.emitTaskView(i,s),notifyAttentionView:()=>this.listeners.emitAttentionView(this.getAttentionView()),emitResponse:i=>this.listeners.emitResponse(i)})}static async fromMarkdown(t){let{profileStore:r,markdownRootDir:i,userProfile:s,memoryProfile:o,judgmentConfig:a}=await GA(t);return new Bh({userProfile:s,memoryProfile:o,judgmentConfig:a,profileStore:r,markdownRootDir:i})}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 Tw(t),this.publishPreparedEvent(CA(t))}publish(t,r={}){return ww(t),this.publishPreparedEvent(OA(t,r))}publishPreparedEvent(t){let{finalizedEvent:r,originalEvent:i,transitionKind:s}=t,o=gA(s,i,r),a=this.getFrame(r.taskId),c=this.attentionEvidence.assemble(r.taskId,a),u=c.taskSignalSummary,p=c.globalSignalSummary,m=c.attentionView,h=this.evaluation.evaluate(r);switch(h.kind){case"noop":return this.notifyTrace(this.traceRecorder.recordNoop(Kl({timestamp:this.nowIso(),event:r,eventTransition:o,evidence:c,taskView:c.currentTaskView,attentionView:m}))),null;case"clear":{let f=this.frameLifecycle.applyClear(r.taskId),b=this.getAttentionView();return this.notifyTrace(this.traceRecorder.recordClear(Kl({timestamp:this.nowIso(),event:r,eventTransition:o,evidence:c,taskView:this.getTaskView(r.taskId),attentionView:b}),r.taskId)),f}case"candidate":{let f=this.prepareCandidateForJudgment(h.candidate,u,p),b=this.explainCandidateDecision(r.taskId,f,c),v=this.applyCandidateDecision(r.taskId,b,c,m),M=this.getAttentionView();return this.notifyTrace(this.traceRecorder.recordCandidate(Kl({timestamp:this.nowIso(),event:r,eventTransition:o,evidence:c,taskView:this.getTaskView(r.taskId),attentionView:M}),{original:h.candidate,adjusted:f,explanation:b,result:v})),v}}}prepareCandidateForJudgment(t,r,i){return this.episodes.assign(this.heuristics.apply(t,r,i))}explainCandidateDecision(t,r,i){let s=this.attentionEvidence.augmentContinuitySignalSummary(t,r,i);return this.coordinator.explain(i.currentFrame,r,s)}applyCandidateDecision(t,r,i,s){switch(r.decision.kind){case"auto_approve":return this.frameLifecycle.applyAutoResponse(r.decision.candidate,r.decision.response);case"clear":return this.frameLifecycle.applyClear(t);case"ambient":return this.frameLifecycle.materializePeripheralFrame(r.decision.candidate,"ambient",s);case"queue":return this.frameLifecycle.materializePeripheralFrame(r.decision.candidate,"queue",s);case"activate":return this.applyActivationDecision(r,i,s)}}applyActivationDecision(t,r,i){if(t.decision.kind!=="activate")return null;let s=t.decision.candidate;if(this.frameLifecycle.shouldRetireSupersededEpisodeFrames(s,i))return this.frameLifecycle.commitFrame(this.frameLifecycle.applyResponseExpiry(this.planner.plan(s,r.currentFrame)),this.frameLifecycle.findSupersededEpisodeFrames(s,i));let o=s.episodeId?this.frameLifecycle.findPeripheralEpisodeFrame(s.episodeId,i):null;return o&&this.frameLifecycle.shouldPromotePeripheralEpisodeFrame(t)?this.frameLifecycle.promotePeripheralEpisodeFrame(s,o.frame):o?this.frameLifecycle.materializePeripheralFrame(s,gu(s,t.policy,r.surfaceCapabilities),i):this.frameLifecycle.commitFrame(this.frameLifecycle.applyResponseExpiry(this.planner.plan(s,r.currentFrame)))}getFrame(t){return this.taskViews.get(t).now??null}subscribe(t,r){return this.listeners.subscribeFrame(t,r,this.getFrame(t))}subscribeTaskView(t,r){return this.listeners.subscribeTaskView(t,r,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)}[eu](t){return this.listeners[eu](t)}submit(t){xw(t),this.frameLifecycle.submit(t)}getTaskView(t){return this.taskViews.get(t)}getAttentionView(){return hk(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 Ut(this.signals.summarize(t))}[Lw](){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 iu(this.surfaceCapabilities)}getOperatorPresence(){return this.operatorPresence}setOperatorPresence(t){this.operatorPresence=t}engage(t,r,i={}){if(!this.frameLifecycle.findFrameByInteractionId(t,r))return;let s=this.getAttentionView();this.operatorEngagement.engage(t,r,i,()=>{let a=this.getAttentionView();this.operatorEngagement.clear(t,r);let c=this.getAttentionView();Kf(a,c)||this.notifyAttentionView()});let o=this.getAttentionView();Kf(s,o)||this.notifyAttentionView()}setSurfaceCapabilities(t){this.surfaceCapabilities=iu(t)}snapshotMemoryProfile(t=this.nowIso()){return kh(this.baseMemoryProfile,this.signals.list(),t)}async checkpointMemory(t=this.nowIso()){let r=await ZA({profileStore:this.profileStore,memoryProfile:this.baseMemoryProfile,signals:this.signals.list(),now:t});return r?(this.baseMemoryProfile=r,this.coordinator=Wl({userProfile:this.userProfile,baseMemoryProfile:this.baseMemoryProfile,judgmentConfig:this.judgmentConfig}),r):null}markViewed(t,r,i={}){let s=this.frameLifecycle.findFrame(t,r);this.recordSignal(Oi("viewed",t,r,this.nowIso(),s,i))}markTimedOut(t,r,i={}){let s=this.frameLifecycle.findFrame(t,r);this.recordSignal(Oi("timed_out",t,r,this.nowIso(),s,i))}markContextExpanded(t,r,i={}){let s=this.frameLifecycle.findFrame(t,r);this.recordSignal(Oi("context_expanded",t,r,this.nowIso(),s,i))}markContextSkipped(t,r,i={}){let s=this.frameLifecycle.findFrame(t,r);this.recordSignal(Oi("context_skipped",t,r,this.nowIso(),s,i))}recordSignal(t){Rw(t),this.signals.record(t),this.listeners.emitSignal(t)}notifyFrame(t,r){this.listeners.emitFrame(t,r)}notifyTaskView(t,r){this.listeners.emitTaskView(t,r)}notifyAttentionView(){this.listeners.emitAttentionView(this.getAttentionView())}readOperatorEngagementInteractionId(){return this.operatorEngagement.readFocusedInteractionId((t,r)=>this.frameLifecycle.findFrameByInteractionId(t,r)!==null)}notifyTrace(t){this.listeners.emitTrace(t)}nowIso(){return this.clock.nowIso()}async performMarkdownReload(){let{userProfile:t,memoryProfile:r,judgmentConfig:i}=await YA({profileStore:this.profileStore,markdownRootDir:this.markdownRootDir,userProfile:this.userProfile,memoryProfile:this.baseMemoryProfile,judgmentConfig:this.judgmentConfig}),s=Wl({userProfile:t,baseMemoryProfile:r,judgmentConfig:i});return this.userProfile=t,this.baseMemoryProfile=r,this.judgmentConfig=i,this.coordinator=s,!0}};function bu(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 me(e){return{companyId:e,updatedAt:new Date().toISOString(),now:null,next:[],ambient:[],counts:{now:0,next:0,ambient:0,total:0}}}function ot(){return[]}function ee(e){return{companyId:e,updatedAt:new Date().toISOString(),frames:{}}}function ve(e,t,r,i){let s=t,o=bu("now"in t?t.now:s.active??null),a=("next"in t?t.next:s.queued??[]).map(u=>bu(u)).filter(u=>u!==null),c=t.ambient.map(u=>bu(u)).filter(u=>u!==null);return{companyId:e,updatedAt:i??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},...r?{lastEvent:r}:{}}}function kn(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function Vh(e){let t=kn(e);return t&&typeof t.taskId=="string"&&typeof t.interactionId=="string"?t:null}function $h(e){return Array.isArray(e)?e.map(Vh).filter(t=>t!==null):[]}function En(e,t){let r=kn(t);if(!r||r.companyId!==e||typeof r.updatedAt!="string")return null;let i=kn(r.counts),s=kn(r.review),o=kn(s?.unread),a=Vh(r.now??r.active??null),c=$h(r.next??r.queued??[]),u=$h(r.ambient);return{companyId:e,updatedAt:r.updatedAt,now:a,next:c,ambient:u,counts:{now:typeof i?.now=="number"?i.now:typeof i?.active=="number"?i.active:a?1:0,next:typeof i?.next=="number"?i.next:typeof i?.queued=="number"?i.queued:c.length,ambient:typeof i?.ambient=="number"?i.ambient:u.length,total:typeof i?.total=="number"?i.total:(a?1:0)+c.length+u.length},...s?{review:{...typeof s.lastSeenAt=="string"?{lastSeenAt:s.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}}}:{},...kn(r.lastEvent)?{lastEvent:{eventType:String(r.lastEvent.eventType),...typeof r.lastEvent.entityId=="string"?{entityId:r.lastEvent.entityId}:{},...typeof r.lastEvent.entityType=="string"?{entityType:r.lastEvent.entityType}:{}}}:{}}}var zi={topology:{supportsAmbient:!0},responses:{supportsSingleChoice:!0,supportsMultipleChoice:!1,supportsForm:!1,supportsTextResponse:!0}};var Dw=100,Iu=100,Kh=1800*1e3,Uw=15e3,Yi=class{sessions=new Map;getHealth(){return{trackedCompanies:this.sessions.size,maxCompanySessions:Iu,idleSessionTtlMs:Kh,faultedCompanies:[...this.sessions.values()].filter(t=>t.persistence.state==="faulted").length,hostCacheEntries:[...this.sessions.values()].reduce((t,r)=>t+r.hostCache.size,0),cachedReconciliations:[...this.sessions.values()].filter(t=>t.reconciledCandidates!==null).length}}getCoreDiagnostics(t){let r=this.sessions.get(t);if(!r)return null;this.touchSession(r);let i=this.syncSnapshotFromCore(t,r),s=i.now?{taskId:i.now.taskId,interactionId:i.now.interactionId,signalSummary:r.core.getSignalSummary(i.now.taskId),attentionState:r.core.getAttentionState(i.now.taskId)}:null;return{eventCount:r.eventCount,persistence:{...r.persistence},surfaceCapabilities:r.core.getSurfaceCapabilities(),operatorPresence:r.core.getOperatorPresence(),globalSignalSummary:r.core.getSignalSummary(),globalAttentionState:r.core.getAttentionState(),memoryProfile:r.core.snapshotMemoryProfile(i.updatedAt),ledger:Fw(r.ledger),host:{cacheEntries:r.hostCache.size,hostDataRevision:r.hostDataRevision,approvalRecords:r.approvals.records?.length??0,approvalsDirty:r.approvals.dirty,approvalAdapterLastLoadedAt:r.approvals.lastLoadedAt,approvalAdapterLastError:r.approvals.lastError},currentNowTask:s}}hasSession(t){return this.sessions.has(t)}hydrate(t,r){let i=this.sessions.get(t);if(i)return this.touchSession(i),{snapshot:i.snapshot??ve(t,i.core.getAttentionView()),review:i.review};let s=this.buildSession(t,r);return this.sessions.set(t,s),this.pruneSessions(),{snapshot:s.snapshot??ve(t,s.core.getAttentionView()),review:s.review}}ingest(t,r,i){let s=this.ensureSession(t),o=s.core.publish(r);return s.eventCount+=1,s.snapshot=ve(t,s.core.getAttentionView(),i),{frame:o,snapshot:s.snapshot}}submit(t,r,i){let s=this.ensureSession(t);return s.core.submit(r),s.snapshot=ve(t,s.core.getAttentionView(),i),s.snapshot}getSnapshot(t){let r=this.sessions.get(t);return r?(this.touchSession(r),this.syncSnapshotFromCore(t,r)):null}getLedger(t){let r=this.sessions.get(t);return r&&this.touchSession(r),[...r?.ledger??[]]}getReview(t){let r=this.sessions.get(t);return r?(this.touchSession(r),r.review):null}hasPendingPersistence(t){return this.sessions.get(t)?.pendingPersistence??!1}markPersistencePending(t){let r=this.ensureSession(t);r.pendingPersistence=!0}getPersistableState(t){let r=this.sessions.get(t);return r?(this.touchSession(r),{ledger:this.getLedger(t),snapshot:this.syncSnapshotFromCore(t,r),review:r.review}):null}setReview(t,r){let i=this.ensureSession(t);return i.review=r,this.invalidateReconciled(t),i.review}getTraces(t){let r=this.sessions.get(t);return r&&this.touchSession(r),[...r?.traces??[]]}getCachedReconciledCandidates(t,r){let i=this.sessions.get(t);i&&this.touchSession(i);let s=i?.reconciledCandidates;return!s||s.key!==r?null:s.expiresAt<=Date.now()?(i&&(i.reconciledCandidates=null,i.hostDataRevision+=1),null):[...s.candidates]}setCachedReconciledCandidates(t,r,i){let s=this.ensureSession(t);return s.reconciledCandidates={key:r,candidates:[...i],expiresAt:Date.now()+Uw},[...i]}getReconciledRevision(t){return this.sessions.get(t)?.hostDataRevision??0}invalidateReconciled(t){let r=this.sessions.get(t);r&&(r.reconciledCandidates=null,r.hostDataRevision+=1)}getCachedHostValue(t,r){let i=this.sessions.get(t);if(!i)return null;this.touchSession(i);let s=i.hostCache.get(r);return s?s.expiresAt<=Date.now()?(i.hostCache.delete(r),null):s.value:null}setCachedHostValue(t,r,i,s){return this.ensureSession(t).hostCache.set(r,{value:i,expiresAt:Date.now()+Math.max(1,s)}),i}invalidateHostCache(t,r={}){let i=this.sessions.get(t);if(!i)return;let{keys:s=[],prefixes:o=[],bumpRevision:a=!0}=r;for(let c of s)i.hostCache.delete(c);if(o.length>0)for(let c of[...i.hostCache.keys()])o.some(u=>c.startsWith(u))&&i.hostCache.delete(c);a&&this.invalidateReconciled(t)}getApprovals(t){return this.sessions.get(t)?.approvals.records??null}setApprovals(t,r){let i=this.ensureSession(t);return i.approvals={records:[...r],dirty:!1,lastLoadedAt:new Date().toISOString(),lastError:void 0},[...r]}approvalsDirty(t){let r=this.sessions.get(t);return r&&this.touchSession(r),r?.approvals.dirty??!0}invalidateApprovals(t){let r=this.sessions.get(t);r&&(r.approvals={records:r.approvals.records,dirty:!0,lastLoadedAt:r.approvals.lastLoadedAt,lastError:r.approvals.lastError})}markApprovalAdapterFailure(t,r){let i=this.ensureSession(t);i.approvals={records:i.approvals.records,dirty:!0,lastLoadedAt:i.approvals.lastLoadedAt,lastError:r}}restore(t,r){let i=this.buildSession(t,r,this.sessions.get(t));return this.sessions.set(t,i),{snapshot:i.snapshot??ve(t,i.core.getAttentionView()),review:i.review}}markPersistenceHealthy(t){let r=this.sessions.get(t);r&&(r.pendingPersistence=!1,r.persistence={state:"healthy",updatedAt:new Date().toISOString()})}markPersistenceFault(t,r){let i=this.ensureSession(t);i.persistence={state:"faulted",updatedAt:new Date().toISOString(),lastError:r}}appendLedgerEntry(t,r){let i=this.ensureSession(t);return i.ledger=[...i.ledger,r],this.getLedger(t)}applyEvent(t,r){let i=this.ensureSession(t),s=i.ledger,o=i.snapshot,a=i.eventCount;i.ledger=[...i.ledger,r];try{let c=r.sourceEvent?i.core.publishSourceEvent(r.sourceEvent):i.core.publish(r.apertureEvent);return i.eventCount+=1,i.snapshot=ve(t,i.core.getAttentionView(),r.source,r.occurredAt),i.reconciledCandidates=null,{frame:c,ledger:this.getLedger(t),snapshot:i.snapshot}}catch(c){throw i.ledger=s,i.snapshot=o,i.eventCount=a,c}}applyResponse(t,r){let i=this.ensureSession(t),s=i.ledger,o=i.snapshot,a=i.eventCount;i.ledger=[...i.ledger,r];try{return i.core.submit(r.apertureResponse),i.snapshot=ve(t,i.core.getAttentionView(),r.source,r.occurredAt),i.reconciledCandidates=null,{ledger:this.getLedger(t),snapshot:i.snapshot}}catch(c){throw i.ledger=s,i.snapshot=o,i.eventCount=a,c}}applyOverlayResponse(t,r){let i=this.ensureSession(t);return i.ledger=[...i.ledger,r],i.reconciledCandidates=null,{ledger:this.getLedger(t),snapshot:this.syncSnapshotFromCore(t,i)}}applySignal(t,r){let i=this.ensureSession(t),s=this.syncSnapshotFromCore(t,i);i.ledger=[...i.ledger,r],i.core.recordSignal(r.apertureSignal);let o=this.syncSnapshotFromCore(t,i);return{ledger:this.getLedger(t),snapshot:o,changed:!Gi(s,o)}}replaceLedger(t,r){let i=this.ensureSession(t);return i.ledger=[...r],i.reconciledCandidates=null,this.getLedger(t)}rebuildFromLedger(t,r){let i=this.sessions.get(t)?.review??ee(t),s=this.buildSession(t,{ledger:r,review:i},this.sessions.get(t));return this.sessions.set(t,s),s.snapshot??ve(t,s.core.getAttentionView())}getCompanyCount(){return this.sessions.size}engage(t,r,i,s={}){let o=this.ensureSession(t),a=this.syncSnapshotFromCore(t,o);o.core.engage(r,i,s);let c=this.syncSnapshotFromCore(t,o);return{snapshot:c,changed:!Gi(a,c)}}markViewed(t,r,i,s={}){let o=this.ensureSession(t),a=this.syncSnapshotFromCore(t,o);o.core.markViewed(r,i,s);let c=this.syncSnapshotFromCore(t,o);return{snapshot:c,changed:!Gi(a,c)}}markContextExpanded(t,r,i,s={}){let o=this.ensureSession(t),a=this.syncSnapshotFromCore(t,o);o.core.markContextExpanded(r,i,s);let c=this.syncSnapshotFromCore(t,o);return{snapshot:c,changed:!Gi(a,c)}}setOperatorPresence(t,r){let i=this.ensureSession(t);return i.core.setOperatorPresence(r),this.touchSession(i),i.core.getOperatorPresence()}ensureSession(t){let r=this.sessions.get(t);return r?(this.touchSession(r),r):(r=this.createSession(t),this.sessions.set(t,r),this.pruneSessions(),r)}buildSession(t,r,i){let s=this.createSession(t);if(s.ledger=[...r.ledger],s.review=r.review??ee(t),s.approvals={records:i?.approvals.records?[...i.approvals.records]:null,dirty:i?.approvals.dirty??!0,lastLoadedAt:i?.approvals.lastLoadedAt,lastError:i?.approvals.lastError},s.hostCache=i?new Map(i.hostCache):new Map,s.hostDataRevision=i?.hostDataRevision??0,s.persistence=i?.persistence??vu(),s.traces=i?[...i.traces]:[],r.ledger.length>0){let o,a;for(let c of r.ledger)o=c.source,a=c.occurredAt,c.kind==="event"?(c.sourceEvent?s.core.publishSourceEvent(c.sourceEvent):s.core.publish(c.apertureEvent),s.eventCount+=1):c.kind==="response"?s.core.submit(c.apertureResponse):c.kind==="signal"&&s.core.recordSignal(c.apertureSignal);s.snapshot=ve(t,s.core.getAttentionView(),o,a)}else s.snapshot=r.snapshot??ve(t,s.core.getAttentionView());return s.persistence=i?.persistence?.state==="faulted"?i.persistence:vu(),s}createSession(t){let r=new qh({surfaceCapabilities:zi}),i=Date.now(),s={core:r,snapshot:null,ledger:ot(),review:ee(t),pendingPersistence:!1,eventCount:0,traces:[],reconciledCandidates:null,approvals:{records:null,dirty:!0},hostCache:new Map,hostDataRevision:0,persistence:vu(),lastTouchedAt:i};return r.onTrace(o=>{s.traces=[...s.traces.slice(-(Dw-1)),o]}),s}touchSession(t){t.lastTouchedAt=Date.now()}pruneSessions(){let t=Date.now();for(let[i,s]of this.sessions.entries())t-s.lastTouchedAt>Kh&&this.sessions.delete(i);if(this.sessions.size<=Iu)return;let r=[...this.sessions.entries()].sort((i,s)=>i[1].lastTouchedAt-s[1].lastTouchedAt);for(;this.sessions.size>Iu&&r.length>0;){let[i]=r.shift();this.sessions.delete(i)}}syncSnapshotFromCore(t,r){let i=r.core.getAttentionView(),s=r.snapshot;if(s&&jw(s,i))return s;let o=ve(t,i,s?.lastEvent);return r.snapshot=o,o}};function Gi(e,t){return!e||!t?e===t:e.now?.interactionId===t.now?.interactionId&&Zi(e.next,t.next)&&Zi(e.ambient,t.ambient)}function jw(e,t){return e.now?.interactionId===t.now?.interactionId&&Zi(e.next,t.next)&&Zi(e.ambient,t.ambient)}function Zi(e,t){return e.length===t.length&&e.every((r,i)=>r.interactionId===t[i]?.interactionId)}function Fw(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 vu(){return{state:"healthy",updatedAt:new Date().toISOString()}}function at(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function De(e){return typeof e=="string"&&e.trim().length>0?e:void 0}function ku(e){return e===null?null:De(e)}function Ji(e){if(!Array.isArray(e))return;let t=e.filter(r=>typeof r=="string"&&r.trim().length>0);return t.length>0?t:void 0}function qw(e){if(!Array.isArray(e))return;let t=e.filter(r=>{if(typeof r!="object"||r===null)return!1;let i=r;return i.kind==="same_issue"||i.kind==="resolves"||i.kind==="supersedes"||i.kind==="repeats"||i.kind==="escalates"});return t.length>0?t:void 0}function ar(e){let t=at(e.metadata),r=at(t?.attention),i=at(t?.semantic),s=at(t?.episode),o=at(t?.issueIntelligence),a=at(t?.decision);return{entityType:De(t?.entityType),issueStatus:De(t?.issueStatus),issuePriority:De(t?.issuePriority),approvalStatus:De(t?.approvalStatus),approvalType:De(t?.approvalType),agentStatus:De(t?.agentStatus),pauseReason:ku(t?.pauseReason),liveReconciled:typeof t?.liveReconciled=="boolean"?t.liveReconciled:void 0,activityPath:De(t?.activityPath),attention:r?{rationale:Ji(r.rationale)}:void 0,semantic:i?{confidence:i.confidence==="low"||i.confidence==="medium"||i.confidence==="high"?i.confidence:void 0,relationHints:qw(i.relationHints)}:void 0,episode:s?{size:typeof s.size=="number"?s.size:void 0,state:De(s.state)}:void 0,issueIntelligence:o?{matchedRuleIds:Ji(o.matchedRuleIds),owner:ku(o.owner),ownerKind:o.ownerKind==="agent"||o.ownerKind==="human"?o.ownerKind:o.ownerKind===null?null:void 0,blockingTarget:ku(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:De(a.sourcePolicy),rationale:Ji(a.rationale),promotedFromLane:a.promotedFromLane==="next"||a.promotedFromLane==="ambient"?a.promotedFromLane:void 0}:void 0}}function zt(e,t){let r=at(e.metadata)??{},i=at(r.decision)??{},s=[...Ji(i.rationale)??[],...t.rationale??[]].filter((o,a,c)=>c.indexOf(o)===a);return{...e,metadata:{...r,decision:{...i,...t,...s.length>0?{rationale:s}:{}}}}}function Eu(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 _u(e,t){let r=e.trim();if(!r)throw new Error(`${t} is required.`);return r}function Hh(e){try{let t=decodeURIComponent(e);return t.trim().length>0?t:null}catch{return null}}function Ue(e,t){let r=_u(e,"task kind"),i=_u(t,"task id");return`${encodeURIComponent(r)}:${encodeURIComponent(i)}`}function cr(e){if(typeof e!="string")return null;let t=e.indexOf(":");if(t<=0||t>=e.length-1)return null;let r=Hh(e.slice(0,t)),i=Hh(e.slice(t+1));return!r||!i?null:{kind:r,id:i}}function Wh(e){return cr(e)?.kind??null}function zh(e,t){return cr(e)?.kind===t}function je(e,t){let r=_u(t,"interaction step");return`${e}:${encodeURIComponent(r)}`}function Bw(e){return e instanceof Error?e.message.toLowerCase().includes("private/reserved ranges"):!1}function Gh(e){let t=typeof e.paperclipApiBase=="string"?e.paperclipApiBase.trim():"";if(t.length===0)return null;let r=new URL(t);if(r.protocol!=="http:"&&r.protocol!=="https:")throw new Error("paperclipApiBase must be an http(s) URL.");return r.toString()}async function Yh(e,t,r,i={}){let{expectJson:s=!0,retries:o=0,headers:a,...c}=i,u=Gh(t);if(!u)throw new Error("Paperclip approval API base is not configured.");let p=new URL(r,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 s?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 Zh(e,t,r){if(!Gh(r))return[];try{return await Yh(e,r,`/api/companies/${t}/approvals?status=pending`,{method:"GET",retries:2})}catch(i){if(Bw(i))return[];throw i}}async function Jh(e,t,r,i){let s=r==="request-revision"?`/api/approvals/${t}/request-revision`:`/api/approvals/${t}/${r}`;await Yh(e,i,s,{method:"POST",expectJson:!1,headers:{"Content-Type":"application/json"},body:JSON.stringify({})})}var $w=1,Vw=2,Qh=3;function Xi(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function Kw(e){return!e||typeof e!="object"?!1:typeof e.eventType=="string"}function Hw(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"||!Kw(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 _n(e){return Array.isArray(e)&&e.every(Hw)}function lr(e,t){if(!e||typeof e!="object")return!1;let r=e;return r.companyId!==t||typeof r.updatedAt!="string"||!r.frames||typeof r.frames!="object"?!1:Object.values(r.frames).every(i=>{if(!i||typeof i!="object")return!1;let s=i;return(s.lastSeenAt===void 0||typeof s.lastSeenAt=="string")&&(s.suppressedAt===void 0||typeof s.suppressedAt=="string")})}function ey(e,t){let r=t.snapshot??me(e),i=t.review??ee(e);return{schemaVersion:Qh,payload:{companyId:e,ledger:[...t.ledger],snapshot:r,review:i,meta:Qi(t.ledger)}}}function ty(e,t){let r=Xi(t);if(!r)return null;let i=r.schemaVersion;return i===Qh||i===Vw?Xh(e,r):i===$w?Ww(e,r):i===void 0?zw(e,r):null}function Qi(e,t=new Date().toISOString()){let r=e.length;return{persistedAt:t,ledgerEntries:r,eventEntries:e.filter(i=>i.kind==="event").length,responseEntries:e.filter(i=>i.kind==="response").length,overlayResponseEntries:e.filter(i=>i.kind==="overlay-response").length,signalEntries:e.filter(i=>i.kind==="signal").length,replayStrategy:"full-ledger",compactionRecommended:r>2e3}}function Xh(e,t){let r=Xi(t.payload);if(!r||r.companyId!==e)return null;let i=_n(r.ledger)?r.ledger:ot(),s=En(e,r.snapshot),o=lr(r.review,e)?r.review:ee(e);return s?{companyId:e,ledger:i,snapshot:s,review:o,meta:Gw(r.meta,i)}:null}function Ww(e,t){let r=Xi(t.payload);if(!r||r.companyId!==e)return null;let i=_n(r.ledger)?r.ledger:ot(),s=En(e,r.snapshot),o=lr(r.review,e)?r.review:ee(e);return s?{companyId:e,ledger:i,snapshot:s,review:o,meta:Qi(i)}:null}function zw(e,t){if(t.companyId!==e)return null;let r=_n(t.ledger)?t.ledger:ot(),i=En(e,t.snapshot),s=lr(t.review,e)?t.review:ee(e);return i?{companyId:e,ledger:r,snapshot:i,review:s,meta:Qi(r)}:null}function Gw(e,t){let r=Xi(e);return r&&typeof r.persistedAt=="string"&&typeof r.ledgerEntries=="number"&&typeof r.eventEntries=="number"&&typeof r.responseEntries=="number"?{persistedAt:r.persistedAt,ledgerEntries:r.ledgerEntries,eventEntries:r.eventEntries,responseEntries:r.responseEntries,overlayResponseEntries:typeof r.overlayResponseEntries=="number"?r.overlayResponseEntries:t.filter(i=>i.kind==="overlay-response").length,signalEntries:typeof r.signalEntries=="number"?r.signalEntries:t.filter(i=>i.kind==="signal").length,replayStrategy:"full-ledger",compactionRecommended:typeof r.compactionRecommended=="boolean"?r.compactionRecommended:t.length>2e3}:Qi(t)}var ry="attention-state",iy="attention-snapshot",sy="attention-ledger",oy="attention-review",ny="attention-updates",es=new Map,Au=[10,30];function ne(e,t){let r=e[t];if(typeof r=="string"&&r.trim().length>0)return r;throw new Error(`${t} is required`)}function Y(e){return ne(e,"companyId")}function ts(e){let t=e instanceof Error?e.message:String(e);return t.includes("invocation scope")||t.includes("not allowed to perform")}async function ay(e,t){let r=es.get(e)??Promise.resolve(),i,s=new Promise(a=>{i=a}),o=r.catch(()=>{}).then(()=>s);es.set(e,o),await r.catch(()=>{});try{return await t()}finally{i(),es.get(e)===o&&es.delete(e)}}async function ur(e,t){let r=await e.state.get({scopeKind:"company",scopeId:t,stateKey:ry});return ty(t,r)}async function cy(e,t,r){await e.state.set({scopeKind:"company",scopeId:t,stateKey:ry},ey(t,r))}function Gt(e,t){e.streams.open(ny,t.companyId),e.streams.emit(ny,t)}async function ly(e,t,r){return ay(r,async()=>{if(!t.hasPendingPersistence(r))return!1;let i=t.getPersistableState(r);if(!i)return!1;try{return await cy(e,r,i),t.markPersistenceHealthy(r),!0}catch(s){let o=s instanceof Error?s.message:String(s);return ts(s)?e.logger.warn("Aperture pending state could not be persisted in this host callback; will retry from the next scoped invocation.",{companyId:r,error:o}):(t.markPersistenceFault(r,o),e.logger.warn("Failed to persist pending Aperture event state.",{companyId:r,error:o})),!1}})}async function uy(e,t){for(let r=0;r<=Au.length;r+=1)try{await e();return}catch(i){let s=r===Au.length;if(t(i,r+1,s),s)return;await new Promise(o=>{setTimeout(o,Au[r])})}}async function Yt(e,t,r){await uy(async()=>{await e.telemetry.track(t,{surface:"focus",...r??{}})},(i,s,o)=>{e.logger.warn(o?"Failed to emit Focus telemetry after retries":"Retrying Focus telemetry after failure",{eventName:t,attempt:s,error:i instanceof Error?i.message:String(i)})})}async function wu(e,t){await uy(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}:{}})},(r,i,s)=>{e.logger.warn(s?"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:i,error:r instanceof Error?r.message:String(r)})})}async function Zt(e,t,r,i){return ay(r,async()=>{let s=await ur(e,r),o=t.getLedger(r),a=t.getSnapshot(r)??me(r),c=t.getReview(r)??s?.review??ee(r),u=s??{companyId:r,ledger:o,snapshot:a,review:c};try{let p=await i();try{return p.review&&t.setReview(r,p.review),await cy(e,r,{ledger:p.ledger,snapshot:p.snapshot,review:p.review??t.getReview(r)??c}),t.markPersistenceHealthy(r),p}catch(m){throw t.restore(r,u),t.markPersistenceFault(r,m instanceof Error?m.message:String(m)),m}}catch(p){throw t.restore(r,u),p}})}async function ns(e,t,r){let i=t.getReview(r);if(i)return i;let s=await ur(e,r);return s?.review?s.review:ee(r)}function rs(e,t,r,i=!1){let s=new Date().toISOString(),o={...e,updatedAt:s,lastSeenAt:s,frames:{...e.frames}};for(let a of r){let c=o.frames[a]??{};o.frames[a]={...c,lastSeenAt:s,...i?{suppressedAt:s}:{}}}return o}function Yw(e,t){return e?[...e.now?[e.now]:[],...e.next,...e.ambient].some(i=>i.taskId===t):!1}function dy(e){return Wh(e)??"unknown"}function Zw(e,t){return e?e.now?.taskId===t?"now":e.next.some(r=>r.taskId===t)?"next":e.ambient.some(r=>r.taskId===t)?"ambient":"ui_only":"ui_only"}function Tu(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:dy(e.taskId)},apertureSignal:{...e.signal,taskId:e.taskId,interactionId:e.interactionId,timestamp:t}}}function dr(e,t){let r=Zw(e,t),i=dy(t),s=r==="ui_only"?null:r==="now"?e?.now??null:r==="next"?e?.next.find(a=>a.taskId===t)??null:e?.ambient.find(a=>a.taskId===t)??null,o={entityType:i,lane:r};if(s?.mode&&(o.mode=s.mode),s?.source?.kind&&(o.sourceKind=s.source.kind),s){let a=ar(s);typeof a.liveReconciled=="boolean"&&(o.liveReconciled=a.liveReconciled)}return o}function Jw(e){let t=cr(e);return t?.kind==="approval"?t.id:null}function py(e,t){e.actions.register("set-focus-presence",async r=>{let i=Y(r),o=ne(r,"presence")==="absent"?"absent":"present";return{ok:!0,operatorPresence:t.setOperatorPresence(i,o)}}),e.actions.register("mark-attention-viewed",async r=>{let i=Y(r),s=ne(r,"taskId"),o=ne(r,"interactionId"),a=typeof r.surface=="string"&&r.surface.trim().length>0?r.surface.trim():"focus",c=t.getSnapshot(i),u=Tu({taskId:s,interactionId:o,sourceEventType:"plugin.local.viewed",signal:{kind:"viewed",surface:a}}),{snapshot:p,changed:m}=await Zt(e,t,i,()=>{let{ledger:h,snapshot:f,changed:b}=t.applySignal(i,u);return{ledger:h,snapshot:f,changed:b}});return m&&Gt(e,{companyId:i,reason:"action",eventType:"plugin.local.viewed",updatedAt:p.updatedAt,counts:p.counts}),await Yt(e,"frame_viewed",{...dr(c,s),surface:a}),{ok:!0,snapshot:p,changed:m}}),e.actions.register("engage-focus",async r=>{let i=Y(r),s=ne(r,"taskId"),o=ne(r,"interactionId"),a=typeof r.durationMs=="number"&&Number.isFinite(r.durationMs)?Math.max(25,Math.floor(r.durationMs)):void 0,c=typeof r.reason=="string"&&r.reason.trim().length>0?r.reason.trim():"operator_interaction",u=t.getSnapshot(i),p=new Date().toISOString(),m=[Tu({taskId:s,interactionId:o,occurredAt:p,sourceEventType:"plugin.local.engage.viewed",signal:{kind:"viewed",surface:"focus"}}),...c==="show_context"||c==="comment_compose"?[Tu({taskId:s,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 Zt(e,t,i,()=>{let b=t.engage(i,s,o,{durationMs:a}),v=t.getLedger(i),M=b.snapshot,W=!1;for(let V of m){let q=t.applySignal(i,V);v=q.ledger,M=q.snapshot,W||=q.changed}return{ledger:v,snapshot:M,changed:b.changed||W}});return f&&Gt(e,{companyId:i,reason:"action",eventType:"plugin.local.engage",updatedAt:h.updatedAt,counts:h.counts}),await Yt(e,"focus_engaged",{...dr(u,s),actionKind:"engage",reason:c,...a?{durationMs:a}:{}}),{ok:!0,snapshot:h,changed:f}}),e.actions.register("acknowledge-frame",async r=>{let i=Y(r),s=ne(r,"taskId"),o=ne(r,"interactionId"),a=Eu({taskId:s,interactionId:o,action:"acknowledge"}),c={kind:"response",id:`${s}:acknowledge:${Date.now()}`,occurredAt:new Date().toISOString(),source:{eventType:"plugin.local.acknowledge",entityId:s},apertureResponse:a},u=t.getSnapshot(i),p=await ns(e,t,i),m=rs(p,i,[s],!0),{snapshot:h}=await Zt(e,t,i,()=>{let{ledger:f,snapshot:b}=t.applyResponse(i,c);return{ledger:f,snapshot:b,review:m}});return Gt(e,{companyId:i,reason:"action",eventType:"plugin.local.acknowledge",updatedAt:h.updatedAt,counts:h.counts}),await Yt(e,"frame_acknowledged",{...dr(u,s)}),{ok:!0,snapshot:h}}),e.actions.register("comment-on-issue",async r=>{let i=Y(r),s=ne(r,"taskId"),o=ne(r,"issueId"),a=ne(r,"body").trim(),c=cr(s);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,i),p=t.getSnapshot(i),m=await ns(e,t,i),h=rs(m,i,[s],!1),{snapshot:f}=await Zt(e,t,i,()=>(t.invalidateHostCache(i,{keys:[`issue:${o}:detail`,`issue:${o}:comments`],prefixes:["issues:blocked","issues:in_review"]}),t.setReview(i,h),{ledger:t.getLedger(i),snapshot:t.getSnapshot(i)??me(i),review:h}));return Gt(e,{companyId:i,reason:"action",eventType:"plugin.local.comment",updatedAt:f.updatedAt,counts:f.counts}),await Yt(e,"issue_comment_submitted",{...dr(p,s),actionKind:"comment"}),await wu(e,{companyId:i,message:"Posted an issue comment from Focus.",entityType:"issue",entityId:o,metadata:{source:"focus",taskId:s}}),{ok:!0,comment:u,review:h}}),e.actions.register("record-approval-response",async r=>{let i=Y(r),s=ne(r,"taskId"),o=ne(r,"interactionId"),a=ne(r,"decision");if(!zh(s,"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=Eu({taskId:s,interactionId:o,action:a}),u={kind:"response",id:`${s}:${a}:${Date.now()}`,occurredAt:new Date().toISOString(),source:{eventType:`plugin.local.approval.${a}`,entityId:s},apertureResponse:c},p=Jw(s);if(!p)throw new Error("Approval responses require a durable approval id.");let m=await e.config.get();await Jh(e,p,a,m),t.invalidateApprovals(i);let h=await ns(e,t,i),f=rs(h,i,[s],!0),b=t.getSnapshot(i),v=Yw(b,s),{snapshot:M}=await Zt(e,t,i,()=>{if(v){let{ledger:D,snapshot:Te}=t.applyResponse(i,u);return{ledger:D,snapshot:Te,review:f}}let W={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:V,snapshot:q}=t.applyOverlayResponse(i,W);return{ledger:V,snapshot:q,review:f}});return Gt(e,{companyId:i,reason:"action",eventType:`plugin.local.approval.${a}`,updatedAt:M.updatedAt,counts:M.counts}),await Yt(e,"approval_response_recorded",{...dr(b,s),decision:a==="request-revision"?"request_revision":a}),await wu(e,{companyId:i,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:s}}),{ok:!0,snapshot:M,review:f}}),e.actions.register("mark-attention-seen",async r=>{let i=Y(r),s=Array.isArray(r.taskIds)?r.taskIds.filter(u=>typeof u=="string"&&u.trim().length>0):[];if(s.length===0)throw new Error("taskIds must include at least one frame task id.");let o=await ns(e,t,i),a=rs(o,i,s),{snapshot:c}=await Zt(e,t,i,()=>(t.setReview(i,a),{ledger:t.getLedger(i),snapshot:t.getSnapshot(i)??me(i),review:a}));return Gt(e,{companyId:i,reason:"action",eventType:"plugin.local.seen",updatedAt:c.updatedAt,counts:c.counts}),await Yt(e,"attention_seen_marked",{frameCount:s.length}),{ok:!0,review:a,snapshot:c}})}var B={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 $(e,t,r){return{id:e,label:t,value:r}}function ke(e){return e.split(/[_\-.]/g).filter(Boolean).map(t=>t.slice(0,1).toUpperCase()+t.slice(1)).join(" ")}function is(e){return $(B.approvalType,"Type",e)}function ss(e){return $(B.requestedAmount,"Requested amount",e)}function os(e){return $(B.budgetReason,"Reason",e)}function as(e){return $(B.decisionContext,"Decision context",e)}function my(e){return $(B.linkedIssues,"Linked issues",e)}function gy(e){return $(B.needsActionFrom,"Needs action from",e)}function fy(e){return $(B.blockedBy,"Blocked by",e)}function hy(e){return $(B.blocksTarget,"Blocks",e)}function yy(e){return $(B.recommendedMove,"Recommended move",e)}function Sy(e){return $(B.issueStatus,"Status",e)}function by(e){return $(B.issuePriority,"Priority",e)}function Iy(e){return $(B.issueWorkMode,"Mode",e)}function vy(e){return $(B.blockedReason,"Blocked reason",e)}function ky(e){return $(B.blockedSeverity,"Severity",e)}function Ey(e){return $(B.recoveryAction,"Recovery",e)}function _y(e){return $(B.watchdog,"Watchdog",e)}function Ay(e){return $(B.documentLock,"Document lock",e)}function wy(e){return $(B.latestComment,"Latest comment",e)}function Ty(e){return $(B.agentStatus,"Status",e)}function xy(e){return $(B.pauseReason,"Pause reason",e)}function Ry(e){return $(B.agentTitle,"Role",e)}var Xw=300*1e3;function pr(e,t){return e.timing.updatedAt||t}function Cy(e){if(!e)return null;let t=Date.parse(e);return Number.isFinite(t)?t:null}function Qw(e,t,r){let i=Cy(pr(e,t)),s=Cy(r);return i===null||s===null?!1:s-i>Xw}function Oy(){return{now:0,next:0,ambient:0,total:0}}function Py(e,t){return e?.frames[t]}function eT(e,t,r){let i=Py(r,e.taskId)?.suppressedAt;return i?pr(e,t).localeCompare(i)<=0:!1}function xu(e,t,r){let i=pr(e,t),s=Py(r,e.taskId)?.lastSeenAt??r?.lastSeenAt;return s?i.localeCompare(s)>0:!0}function tT(e,t){let r=Oy();return e.now&&xu(e.now,e.updatedAt,t)&&(r.now+=1),r.next=e.next.filter(i=>xu(i,e.updatedAt,t)).length,r.ambient=e.ambient.filter(i=>xu(i,e.updatedAt,t)).length,r.total=r.now+r.next+r.ambient,r}function nT(e,t){return{...e,review:{lastSeenAt:t?.lastSeenAt,unread:tT(e,t)}}}function An(e,t,r,i,s=new Date().toISOString()){let o=e??{companyId:t,updatedAt:new Date().toISOString(),now:null,next:[],ambient:[],counts:Oy()},a=new Set(r.map(D=>D.frame.taskId)),u=[...[...o.now?[{frame:o.now,lane:"now"}]:[],...o.next.map(D=>({frame:D,lane:"next"})),...o.ambient.map(D=>({frame:D,lane:"ambient"}))].filter(D=>!a.has(D.frame.taskId)),...r].filter(D=>!eT(D.frame,o.updatedAt,i)),p=D=>u.filter(Te=>Te.lane===D).sort((Te,Ye)=>pr(Ye.frame,o.updatedAt).localeCompare(pr(Te.frame,o.updatedAt))),m=p("now"),h=p("next"),f=p("ambient").filter(D=>!Qw(D.frame,o.updatedAt,s)),b=m.shift()??null,v=b?null:h.shift()??null,M=b??v,W=[...m,...h].map(D=>D.frame),V=f.map(D=>D.frame),q=v?zt(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."]}):M?.frame??null;return nT({...o,now:q,next:W,ambient:V,counts:{now:q?1:0,next:W.length,ambient:V.length,total:(q?1:0)+W.length+V.length}},i)}function cs(e){return e?"Budget controls are blocking work until a board decision lands.":"A board decision is blocking work in Paperclip."}function mr(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 Ny(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 My(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 Ly(e){return e.status==="error"?`${e.name} needs attention`:e.status==="pending_approval"?`${e.name} is waiting for approval`:`${e.name} is paused`}function Dy(){return"An agent run failed and may need operator attention."}function Uy(){return"A Paperclip-managed run failed and is now competing for operator attention."}function jy(){return"Agent waiting for approval"}function Fy(){return"A Paperclip-managed agent cannot continue until a pending approval is resolved."}function Ru(){return"The agent is paused behind a Paperclip approval gate."}function rT(e){let t=e.payload??{},r=typeof t.title=="string"?t.title:typeof t.plan=="string"?t.plan:typeof t.name=="string"?t.name:null;return r||`${ke(e.type)} approval`}function Cu(e){return e.type==="budget_override_required"}function iT(e){return e?e.filter(t=>t.status==="pending"||t.status==="revision_requested").sort((t,r)=>{let i=Cu(t)?1:0,s=Cu(r)?1:0;return i!==s?s-i:(r.updatedAt??r.createdAt).localeCompare(t.updatedAt??t.createdAt)}):[]}function sT(e){let t=Ue("approval",e.id),r=e.payload??{},i=Cu(e),s=typeof r.requestedAmount=="string"?r.requestedAmount:void 0,o=typeof r.reason=="string"?r.reason:void 0,a=typeof r.decisionContext=="string"?r.decisionContext:void 0,c=typeof r.summary=="string"?r.summary:cs(i),u=e.updatedAt??e.createdAt,p={whyNow:mr(i),factors:i?["budget stop","approval","operator decision"]:["approval","operator decision"]};return zt({id:`approval-bootstrap:${e.id}`,taskId:t,interactionId:je(t,"approval"),source:{id:"paperclip:approval",kind:"paperclip",label:"Paperclip approval"},version:1,mode:"approval",tone:"focused",consequence:i?"high":"medium",title:rT(e),summary:c,context:{items:[{...is(ke(e.type))},...s?[ss(s)]:[],...o?[os(o)]:[],...a?[as(a)]:[]]},responseSpec:{kind:"approval",actions:[{id:"approve",label:"Approve",kind:"approve",emphasis:"primary"},{id:"reject",label:"Reject",kind:"reject",emphasis:"danger"},...i?[{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 Ou(e,t,r,i){let s=iT(r).map(sT),o=e??me(t);return An(o,t,[...s.map(c=>({frame:c,lane:"next"}))],i)}var oT=[{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 aT(e){return e.toUpperCase()===e?e:e.slice(0,1).toUpperCase()+e.slice(1).toLowerCase()}function cT(e){return e.toUpperCase()===e?e:e.toLowerCase()}function Fe(e,t=180){let r=e.replace(/\s+/g," ").trim();return r.length<=t?r:`${r.slice(0,t-1).trimEnd()}\u2026`}function lT(e,t){return[t?.body,e.description].filter(r=>!!r).join(`
|
|
10
|
-
`)}function ls(e){if(!e)return 0;if(e instanceof Date)return e.getTime();let t=Date.parse(e);return Number.isNaN(t)?0:t}function qy(e){return e?typeof e=="string"?e:e.toISOString():null}function By(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function uT(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function us(e){return Ue("issue",e)}function dT(e){let t=new Set,r=[];for(let i of oT)i.pattern.test(e)&&(t.add(i.key),r.push(i.id));return{intents:t,matchedRuleIds:r}}function pT(e,t){let r=t?.toUpperCase();return(e.match(/\b[A-Z]+-\d+\b/g)??[]).find(s=>s.toUpperCase()!==r)??null}function mT(e){return e.replace(/\s+/g," ").trim().match(/(board should either .*?)(?:[.!?]|$)/i)?.[1]??null}function gT(e){return e.has("resolution")||e.has("share_with_board")||e.has("confirmation")||e.has("board_instruction")?"high":e.has("clarification")?"medium":null}function fT(e,t){let r=[],i=t??void 0;return i&&r.push({kind:"same_issue",target:i}),e.has("resolution")?(r.push(i?{kind:"resolves",target:i}:{kind:"resolves"}),r):e.has("share_with_board")||e.has("confirmation")||e.has("board_instruction")?(r.push(i?{kind:"supersedes",target:i}:{kind:"supersedes"}),r):(e.has("clarification")&&r.push(i?{kind:"repeats",target:i}:{kind:"repeats"}),r)}function Pu(e){let{intents:t,matchedRuleIds:r}=dT(e.text);return{text:e.text,blockingTarget:pT(e.text,e.identifier),intents:t,matchedRuleIds:r,explicitBoardInstruction:mT(e.text),semanticConfidence:gT(t),relationHints:fT(t,e.issueTarget)}}function hT(e,t){if(!t||t.agentNames.length===0)return null;let r=e.match(/needed from\s+@([a-z0-9_-]+)/i)??e.match(/@([a-z0-9_-]+)/i);if(r?.[1]){let i=By(r[1]),s=t.agentNames.find(o=>By(o)===i);if(s)return s}return[...t.agentNames].sort((i,s)=>s.length-i.length).find(i=>new RegExp(`\\b${uT(i)}\\b`,"i").test(e))??null}function $y(e,t,r){let i=lT(e,t),s=Pu({text:i,identifier:e.identifier,issueTarget:us(e.id)}),o=hT(i,r),a=i.match(/needed from\s+@([a-z0-9_-]+)/i)??i.match(/@([a-z0-9_-]+)/i),c=o??(a?.[1]?aT(a[1]):/board should|board can/i.test(i)?"Board":/ceo agent|@ceo|\bceo\b/i.test(i)?"CEO":/requires human|waiting on human|human review/i.test(i)?"Human":/operator intervention|operator review/i.test(i)?"Operator":null);return{...s,owner:c,ownerKind:o?"agent":c?"human":null}}function re(e,t){return e.intents.has(t)}function gr(e,t){return t==="agent"?e:cT(e)}function yT(e){return e.length===0?null:[...e].sort((t,r)=>ls(r.updatedAt)-ls(t.updatedAt))[0]??null}function Vy(e,t,r){let i=yT(e),s=qy(i?.updatedAt),o=qy(i?.lockedAt),a=t?.updatedAt??null,c=e.filter(u=>!!u.lockedAt);return{hasDocuments:e.length>0,hasLockedDocuments:c.length>0,latestDocumentTitle:i?.title??null,latestDocumentUpdatedAt:s,latestDocumentLockedAt:o,latestDocumentLockOwnerKind:i?.lockedByAgentId?"agent":i?.lockedByUserId?"user":null,latestDocumentLockOwnerId:i?.lockedByAgentId??i?.lockedByUserId??null,resolvesArtifactRequest:re(r,"share_with_board")&&!!i&&(!a||ls(s)>=ls(a))}}function Ky(e,t,r){let i=t.text.replace(/\s+/g," ").trim();return r?.resolvesArtifactRequest?r.latestDocumentLockedAt?"Monitor the locked review snapshot now that the memo is attached.":"Monitor the review now that the memo is attached.":re(t,"resolution")?"Monitor execution and confirm the team resumes work.":re(t,"share_with_board")?"Share the memo with the board so review can continue.":t.explicitBoardInstruction?Fe(t.explicitBoardInstruction,140):re(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(i)?"Leave a comment with enough context for work to resume.":/complete [A-Z]+-\d+/i.test(i)?"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 Hy(e,t,r){if(r?.resolvesArtifactRequest)return r.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(re(t,"resolution"))return"Latest operator guidance appears to unblock this issue.";if(re(t,"share_with_board"))return"Board still needs the memo before review can continue.";if(re(t,"confirmation")&&t.blockingTarget)return`Waiting on confirmation before ${t.blockingTarget} can proceed.`;let i=re(t,"clarification"),s=t.owner;return e.status==="blocked"&&s?i?`Blocked on ${gr(s,t.ownerKind)} clarification before work can continue.`:`Blocked on ${gr(s,t.ownerKind)} action before work can continue.`:e.status==="blocked"?i?"Blocked issue waiting on clarification before work can continue.":"Blocked issue that may need operator intervention to move forward.":e.status==="in_review"?s?`Waiting on ${gr(s,t.ownerKind)} review before work can continue.`:"Issue is waiting on human review before work can continue.":e.description?Fe(e.description):"This issue has new operator-relevant activity."}function Wy(e,t,r){if(r?.resolvesArtifactRequest)return{whyNow:r.latestDocumentTitle?r.latestDocumentLockedAt?`${r.latestDocumentTitle} was attached and locked after the request, so the missing artifact appears preserved for review.`:`${r.latestDocumentTitle} was attached after the request, so the missing artifact appears resolved.`:r.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:r.latestDocumentLockedAt?["document attached","document locked","review can proceed"]:["document attached","review can proceed"]};if(re(t,"resolution"))return{whyNow:"The latest comment appears to resolve the blocker; monitor execution rather than intervening.",factors:["comment follow-up"]};if(re(t,"share_with_board"))return{whyNow:"The board still needs the memo before review can continue.",factors:["waiting on human","issue review"]};if(re(t,"confirmation")&&t.blockingTarget)return{whyNow:`${t.blockingTarget} is waiting on explicit confirmation before work can continue.`,factors:["waiting on human","issue review"]};let i=t.owner;if(e.status==="blocked"){let s=re(t,"clarification");return{whyNow:i?s?`This issue is blocked on clarification from ${gr(i,t.ownerKind)}.`:`This issue is blocked on action from ${gr(i,t.ownerKind)}.`:s?"This issue is blocked on clarification from a human.":"This issue is blocked and may need operator intervention.",factors:s?["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 Nu=6,ST=15e3,bT=15e3,IT=15e3,vT=15e3,kT=15e3;function ET(e,t){let r={...e?{confidence:e}:{},...t.length>0?{relationHints:t}:{}};return Object.keys(r).length>0?r:void 0}function ce(e){if(e)return typeof e=="string"?e:e.toISOString()}function ds(e){if(!e)return 0;if(e instanceof Date)return e.getTime();let t=Date.parse(e);return Number.isNaN(t)?0:t}function ct(e){return ce(e)??null}function te(e){return ke(e).toLowerCase()}function wn(e){return e?.status==="active"||e?.status==="escalated"}function lt(e){if(e?.status!=="active"||!e.lastTriggeredAt)return!1;let t=ds(e.lastTriggeredAt);if(t===0)return!1;let r=ds(e.lastCompletedAt);return r===0||t>r}function Yy(e){return e?e.identifier?`${e.identifier} ${e.title}`:e.title:null}function _T(e){let t=e.owner.label?.trim();return t||(e.owner.type==="unknown"?null:ke(e.owner.type))}function AT(e){return wn(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 wT(e){return e.action.label||e.action.detail}function TT(e){return wn(e)?e.nextAction||`Resolve the ${te(e.kind)} recovery action.`:null}function xT(e){return lt(e)?"Review the watchdog-triggered follow-up before resuming work.":null}function RT(e){if(e.action.detail)return Fe(e.action.detail);if(e.action.label)return Fe(e.action.label);let t=Yy(e.leafIssue??e.sourceIssue);return t?`${t} needs attention before this blocked issue can move.`:`Paperclip marked this blocked issue as ${te(e.state)}.`}function CT(e){let t=e.nextAction?`: ${Fe(e.nextAction,140)}`:".";return`Paperclip opened a ${te(e.kind)} recovery action${t}`}function OT(e){let t=e.instructions?.trim();return t?`Paperclip watchdog triggered follow-up: ${Fe(t,140)}`:"Paperclip watchdog triggered follow-up for this issue."}function PT(e){let t=e.action.detail||e.action.label;return{whyNow:t?`Paperclip Blocked Inbox marks this as ${te(e.severity)} urgency for ${te(e.reason)}: ${Fe(t,140)}`:`Paperclip Blocked Inbox marks this as ${te(e.severity)} urgency for ${te(e.reason)}.`,factors:["blocked inbox",te(e.reason),`${te(e.severity)} urgency`]}}function NT(e){return{whyNow:e.nextAction?`Paperclip has an ${te(e.status)} ${te(e.kind)} recovery action: ${Fe(e.nextAction,140)}`:`Paperclip has an ${te(e.status)} ${te(e.kind)} recovery action.`,factors:["recovery action",te(e.kind),te(e.status)]}}function MT(e){return{whyNow:e.lastTriggeredAt?`Paperclip watchdog triggered on ${ce(e.lastTriggeredAt)??"the latest issue state"} and has not completed review.`:"Paperclip watchdog has active review state for this issue.",factors:["watchdog","triggered review",te(e.status)]}}function LT(e){return e.severity==="critical"||e.severity==="high"?"high":e.severity==="medium"?"medium":"low"}function DT(e,t){return e.blockedInboxAttention?LT(e.blockedInboxAttention):e.activeRecoveryAction?.status==="escalated"||e.activeRecoveryAction?.status==="active"&&e.priority==="critical"?"high":lt(e.watchdog)||e.status==="blocked"?zy(e):t==="ambient"?"low":"medium"}function UT(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 jT(e){return Yy(e.leafIssue??e.sourceIssue)}function FT(e){return e.latestDocumentLockedAt?`Locked snapshot${e.latestDocumentLockOwnerKind?` by ${e.latestDocumentLockOwnerKind}`:""}`:null}function Mu(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 qT(e){return{state:e.state,reason:e.reason,severity:e.severity,stoppedSinceAt:e.stoppedSinceAt,owner:e.owner,action:e.action,sourceIssue:Mu(e.sourceIssue),leafIssue:Mu(e.leafIssue),recoveryIssue:Mu(e.recoveryIssue),approvalId:e.approvalId,interactionId:e.interactionId,sampleIssueIdentifier:e.sampleIssueIdentifier,redaction:e.redaction}}function BT(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:ct(e.timeoutAt),lastAttemptAt:ct(e.lastAttemptAt),outcome:e.outcome,resolvedAt:ct(e.resolvedAt),updatedAt:ct(e.updatedAt)}}function $T(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:ct(e.lastTriggeredAt),lastCompletedAt:ct(e.lastCompletedAt),triggerCount:e.triggerCount,createdAt:ct(e.createdAt),updatedAt:ct(e.updatedAt),pendingTrigger:lt(e)}}function VT(e){return e.status!=="active"?null:lt(e)?"Triggered":"Active"}function KT(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 Zy(){return{kind:"acknowledge",actions:[{id:"acknowledge",label:"Acknowledge",kind:"acknowledge",emphasis:"primary"}]}}function HT(e){return e.identifier?`${e.identifier} ${e.title}`:e.title}function WT(e){let t=e.filter(s=>!s.deletedAt);if(t.length===0)return null;let r=[...t].sort((s,o)=>ds(o.updatedAt)-ds(s.updatedAt))[0],i=ce(r.updatedAt)??ce(r.createdAt)??new Date(0).toISOString();return{body:Fe(r.body),updatedAt:i}}function zy(e){return e.priority==="critical"||e.priority==="high"?"high":"medium"}function zT(e,t,r){if(e.blockedInboxAttention){let i=e.blockedInboxAttention;return i.severity==="critical"||i.severity==="high"||i.state==="needs_attention"||i.state==="recovery_open"||i.state==="missing_disposition"?"now":"next"}return e.activeRecoveryAction?.status==="escalated"?"now":wn(e.activeRecoveryAction)||lt(e.watchdog)?e.priority==="critical"||e.priority==="high"?"now":"next":(e.status==="blocked"||e.status==="in_review")&&(re(r.analysis,"resolution")||r.documentSignal.resolvesArtifactRequest)?t||e.isUnreadForMe||r.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 GT(e){return e.status==="done"||e.status==="cancelled"}function Jy(e){return e?.blockedBy.filter(t=>!GT(t))??[]}function Xy(e){return Jy(e)[0]??null}function Du(e){return e.identifier?`${e.identifier} ${e.title}`:e.title}function YT(e){let t=Jy(e);if(t.length===0)return null;let[r,...i]=t,s=Du(r);return i.length>0?`${s} +${i.length} more`:s}function ZT(e){if(!e||e.blockedBy.length===0&&e.blocks.length===0)return;let t=r=>({id:r.id,identifier:r.identifier,title:r.title,status:r.status,priority:r.priority});return{blockedBy:e.blockedBy.map(t),blocks:e.blocks.map(t)}}function JT(e,t){if(e.blockedInboxAttention)return RT(e.blockedInboxAttention);if(wn(e.activeRecoveryAction))return CT(e.activeRecoveryAction);if(lt(e.watchdog))return OT(e.watchdog);let r=Xy(t.relations);return r?`${Du(r)} is a tracked blocker for this issue.`:Hy(e,t.analysis,t.documentSignal)}function XT(e,t){if(e.blockedInboxAttention)return PT(e.blockedInboxAttention);if(wn(e.activeRecoveryAction))return NT(e.activeRecoveryAction);if(lt(e.watchdog))return MT(e.watchdog);let r=Wy(e,t.analysis,t.documentSignal),i=Xy(t.relations);return i?{...r,whyNow:`${Du(i)} is linked as a blocker in Paperclip.`,factors:[...new Set([...r.factors??[],"blocked by issue relation"])]}:r}function QT(e,t,r){let i=[t?.updatedAt,ce(e.lastExternalCommentAt),r.latestDocumentUpdatedAt,r.latestDocumentLockedAt,e.blockedInboxAttention?.stoppedSinceAt,ce(e.activeRecoveryAction?.updatedAt),ce(e.watchdog?.lastTriggeredAt),ce(e.watchdog?.updatedAt)].filter(s=>!!s).sort();return i.length>0?i.at(-1):ce(e.updatedAt)??ce(e.createdAt)??new Date(0).toISOString()}function ex(e,t,r,i,s){let o=$y(e,t,s),a=Vy(r,t,o),c={analysis:o,documentSignal:a,relations:i},u=zT(e,t,c);if(!u)return null;let p=QT(e,t,a),m=XT(e,c),h=re(o,"resolution")||a.resolvesArtifactRequest?null:e.blockedInboxAttention?_T(e.blockedInboxAttention):AT(e.activeRecoveryAction)??o.owner,f=e.blockedInboxAttention?wT(e.blockedInboxAttention):TT(e.activeRecoveryAction)??xT(e.watchdog)??Ky(e,o,a),b=o.blockingTarget,v=ET(o.semanticConfidence,o.relationHints),M=Ue("issue",e.id),W=e.blockedInboxAttention?jT(e.blockedInboxAttention):YT(i),V=ZT(i),q=FT(a),D=KT(a),Te=e.watchdog?VT(e.watchdog):null;return{lane:u,frame:zt({id:`reconcile:issue:${e.id}:${p}`,taskId:M,interactionId:je(M,e.status),source:{id:"paperclip:issue",kind:"paperclip",label:"Paperclip issue"},version:1,mode:"status",tone:UT(e,u),consequence:DT(e,u),title:HT(e),summary:JT(e,c),context:{items:[...h?[gy(h)]:[],...W?[fy(W)]:[],...b?[hy(b)]:[],...f?[yy(f)]:[],...e.blockedInboxAttention?[vy(ke(e.blockedInboxAttention.reason)),ky(ke(e.blockedInboxAttention.severity))]:[],...wn(e.activeRecoveryAction)?[Ey(ke(e.activeRecoveryAction.kind))]:[],...Te?[_y(Te)]:[],...q?[Ay(q)]:[],Sy(e.status.replace(/_/g," ")),by(e.priority),Iy(ke(e.workMode)),...t?[wy(t.body)]:[]]},responseSpec:Zy(),provenance:m,timing:{createdAt:ce(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:qT(e.blockedInboxAttention)}:{},...e.activeRecoveryAction?{activeRecoveryAction:BT(e.activeRecoveryAction)}:{},...e.watchdog?{watchdog:$T(e.watchdog)}:{},...D?{issueDocuments:D}:{},...V?{issueRelations:V}:{},...v?{semantic:v}:{}}},{owner:"paperclip_reconciliation",lane:u,sourcePolicy:`issue.${e.status}.${e.priority}.${e.workMode}`,rationale:m.factors??[]})}}function tx(e){return e.status==="error"?"now":e.status==="pending_approval"||e.status==="paused"&&e.pauseReason==="budget"?"next":e.status==="paused"?"ambient":null}function nx(e){return Ny(e)}function rx(e){return My(e)}function ix(e){let t=tx(e);if(!t)return null;let r=ce(e.updatedAt)??ce(e.createdAt)??new Date(0).toISOString(),i=nx(e),s=Ue("agent",e.id);return{lane:t,frame:zt({id:`reconcile:agent:${e.id}:${r}`,taskId:s,interactionId:je(s,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:Ly(e),summary:rx(e),context:{items:[Ty(e.status.replace(/_/g," ")),...e.pauseReason?[xy(e.pauseReason)]:[],...e.title?[Ry(e.title)]:[]]},responseSpec:Zy(),provenance:i,timing:{createdAt:ce(e.createdAt)??r,updatedAt:r},metadata:{entityType:"agent",agentStatus:e.status,pauseReason:e.pauseReason,liveReconciled:!0,activityPath:e.status==="error"?"activity":void 0,attention:{rationale:i.factors??[]},semantic:{confidence:"high"}}},{owner:"paperclip_reconciliation",lane:t,sourcePolicy:`agent.${e.status}${e.pauseReason?`.${e.pauseReason}`:""}`,rationale:i.factors??[]})}}async function sx(e,t){try{let r=await e.issues.listComments(t.id,t.companyId);return WT(r)}catch(r){return e.logger.warn("Failed to load issue comments during Aperture reconciliation",{issueId:t.id,error:r instanceof Error?r.message:String(r)}),null}}async function fr(e,t,r,i,s,o){if(!s?.fresh){let c=e.getCachedHostValue(t,r);if(c!==null)return c}let a=await o();return e.setCachedHostValue(t,r,a,i)}async function ox(e,t){try{return await e.issues.documents.list(t.id,t.companyId)}catch(r){return e.logger.warn("Failed to load issue documents during Aperture reconciliation",{issueId:t.id,error:r instanceof Error?r.message:String(r)}),[]}}async function ax(e,t){let r=t.blockedBy??[],i=t.blocks??[];if(r.length>0||i.length>0)return{blockedBy:r,blocks:i};try{return await e.issues.relations.get(t.id,t.companyId)}catch(s){return e.logger.warn("Failed to load issue relations during Aperture reconciliation",{issueId:t.id,error:s instanceof Error?s.message:String(s)}),null}}async function Lu(e,t,r){if(e.length===0)return[];let i=new Array(e.length),s=0;async function o(){for(;s<e.length;){let c=s;s+=1,i[c]=await r(e[c],c)}}let a=Math.min(t,e.length);return await Promise.all(Array.from({length:a},()=>o())),i}async function Gy(e,t,r,i,s){return fr(t,r,`issues:${i}`,ST,{fresh:s?.freshHostData},async()=>await e.issues.list({companyId:r,status:i,includePluginOperations:!1,limit:25}))}async function cx(e,t,r,i){return fr(t,r,"agents:all",kT,{fresh:i?.freshHostData},async()=>await e.agents.list({companyId:r,limit:100}))}async function lx(e,t,r,i,s){let[o,a]=await Promise.all([Gy(e,t,r,"blocked",s),Gy(e,t,r,"in_review",s)]),c=[...o,...a],[u,p,m]=await Promise.all([Lu(c,Nu,f=>fr(t,r,`issue:${f.id}:comments`,bT,{fresh:s?.freshHostData},()=>sx(e,f))),Lu(c,Nu,f=>fr(t,r,`issue:${f.id}:documents`,IT,{fresh:s?.freshHostData},()=>ox(e,f))),Lu(c,Nu,f=>fr(t,r,`issue:${f.id}:relations`,vT,{fresh:s?.freshHostData},()=>ax(e,f)))]),h={agentNames:i.map(f=>f.name).filter(f=>typeof f=="string"&&f.trim().length>0)};return c.map((f,b)=>ex(f,u[b]??null,p[b]??[],m[b]??null,h)).filter(f=>f!==null)}function ux(e){return e.filter(t=>t.status==="pending_approval"||t.status==="error"||t.status==="paused").map(t=>ix(t)).filter(t=>t!==null)}async function Qy(e,t,r,i,s){let o=await cx(e,t,r,s),a=i.captureIssueLifecycle===!1?Promise.resolve([]):lx(e,t,r,o,s),c=Promise.resolve(ux(o)),[u,p]=await Promise.all([a,c]);return[...u,...p]}function Uu(e){let t=[];e.now&&t.push([e.now.taskId,{frame:e.now,lane:"now"}]);for(let r of e.next)t.push([r.taskId,{frame:r,lane:"next"}]);for(let r of e.ambient)t.push([r.taskId,{frame:r,lane:"ambient"}]);return new Map(t)}function eS(e,t,r){return t===r?null:t===null&&r!==null?{stage:e,kind:"introduced",fromLane:t,toLane:r}:t!==null&&r===null?{stage:e,kind:"removed",fromLane:t,toLane:r}:{stage:e,kind:"moved",fromLane:t,toLane:r}}function dx(e,t){return e?"core":t?"reconciled":"display_overlay"}function px(e,t){if(t==="display_overlay")return ar(e).entityType==="approval"?"approval_overlay":"display_overlay"}function ju(e){let t=Uu(e.snapshot),r=Uu(e.reconciledSnapshot),i=Uu(e.displaySnapshot),o=[...new Set([...t.keys(),...r.keys(),...i.keys()])].sort().map(c=>{let u=t.get(c),p=r.get(c),m=i.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=ar(h),b=[eS("reconciled",u?.lane??null,p?.lane??null),eS("display",p?.lane??null,m?.lane??null)].filter(M=>M!==null),v=dx(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:px(h,v),liveReconciled:f.liveReconciled,attentionRationale:f.attention?.rationale??[],matchedRuleIds:f.issueIntelligence?.matchedRuleIds??[],relationHintKinds:f.semantic?.relationHints?.map(M=>M.kind)??[],decision:f.decision,changes:b}}),a={coreFrames:t.size,reconciledFrames:r.size,displayFrames:i.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 tS=250,mx=50,nS=1e3,gx=200;function rS(e){return{eventCount:0,persistence:{state:"healthy"},surfaceCapabilities:zi,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 ps(e,t){return e?t?e.localeCompare(t)>=0?e:t:e:t}function Fu(e,t,r){if(typeof e!="number"||!Number.isFinite(e))return t;let i=Math.trunc(e);return i<=0?t:Math.min(i,r)}function qu(e,t){let r=e.length,i=Math.max(1,t);return r<=i?{items:[...e],total:r,hasMoreBefore:!1}:{items:e.slice(-i),total:r,hasMoreBefore:!0}}function fx(e,t,r){let i=r?{...r,frames:Object.fromEntries(Object.entries(r.frames).map(([s,o])=>[s,{...o}]))}:ee(e);for(let s of t){if(s.kind!=="response"&&s.kind!=="overlay-response")continue;let o=s.occurredAt,a=s.apertureResponse.taskId,c=s.apertureResponse.response.kind,u=i.frames[a]??{};i.frames[a]={...u,lastSeenAt:ps(u.lastSeenAt,o),...c==="acknowledged"||c==="dismissed"?{suppressedAt:ps(u.suppressedAt,o)}:{}},i.lastSeenAt=ps(i.lastSeenAt,o),i.updatedAt=ps(i.updatedAt,o)??o}return i}function iS(e,t){return{baseLedger:e.getLedger(t),snapshot:e.getSnapshot(t)??me(t),reviewState:e.getReview(t)??ee(t)}}async function ut(e,t,r){if(t.hasSession(r))return await ly(e,t,r),iS(t,r);try{let i=await ur(e,r);if(i){let{snapshot:h}=t.hydrate(r,{ledger:i.ledger,snapshot:i.snapshot,review:i.review});return{baseLedger:i.ledger,snapshot:h,reviewState:i.review}}let s=await e.state.get({scopeKind:"company",scopeId:r,stateKey:sy}),o=await e.state.get({scopeKind:"company",scopeId:r,stateKey:iy}),a=await e.state.get({scopeKind:"company",scopeId:r,stateKey:oy}),c=_n(s)?s:ot(),u=En(r,o),p=fx(r,c,lr(a,r)?a:null),{snapshot:m}=t.hydrate(r,{ledger:c,snapshot:u,review:p});return!_n(s)&&u&&e.logger.warn("Legacy snapshot found without replay ledger; rebuilt state may be partial until new events arrive.",{companyId:r}),{baseLedger:c,snapshot:m,reviewState:p}}catch(i){if(!ts(i))throw i;return e.logger.warn("Aperture persisted state unavailable in this host callback; using in-memory attention state.",{companyId:r,error:i instanceof Error?i.message:String(i)}),iS(t,r)}}function hx(e,t,r){return JSON.stringify({reconciliationRevision:e.getReconciledRevision(t),captureIssueLifecycle:r.captureIssueLifecycle!==!1,captureRunFailures:r.captureRunFailures!==!1})}async function Bu(e,t,r,i,s,o={}){let a=await e.config.get(),c=hx(t,r,a);if(o.preferCache&&!o.freshHostData){let m=t.getCachedReconciledCandidates(r,c);if(m)return An(i,r,m,s)}let u;try{u=await Qy(e,t,r,a,{freshHostData:o.freshHostData})}catch(m){if(!ts(m))throw m;return e.logger.warn("Aperture host reconciliation unavailable in this host callback; using current attention snapshot.",{companyId:r,error:m instanceof Error?m.message:String(m)}),i}let p=An(i,r,u,s);return o.preferCache&&!o.freshHostData&&t.setCachedReconciledCandidates(r,c,u),p}async function oS(e,t,r){let i=t.getApprovals(r);if(!t.approvalsDirty(r)&&i)return i;let s=await e.config.get();try{let o=await Zh(e,r,s);return t.setApprovals(r,o)}catch(o){let a=o instanceof Error?o.message:String(o);return t.markApprovalAdapterFailure(r,a),e.logger.warn("Failed to load pending approvals for Focus display",{companyId:r,error:a}),i||t.setApprovals(r,[])}}async function sS(e,t,r,i,s){let o=await Bu(e,t,r,i,s,{preferCache:!0}),a=await oS(e,t,r);return{reconciledSnapshot:o,displaySnapshot:Ou(o,r,a,s)}}function aS(e,t){e.data.register("health",async()=>{let r=t.getHealth();return{status:"ok",checkedAt:new Date().toISOString(),trackedCompanies:r.trackedCompanies,maxCompanySessions:r.maxCompanySessions,idleSessionTtlMs:r.idleSessionTtlMs,faultedCompanies:r.faultedCompanies,hostCacheEntries:r.hostCacheEntries,cachedReconciliations:r.cachedReconciliations}}),e.data.register("attention-diagnostics",async r=>{let i=Y(r);return await ut(e,t,i),t.getCoreDiagnostics(i)??rS(new Date().toISOString())}),e.data.register("attention-overlay-diagnostics",async r=>{let i=Y(r),{snapshot:s,reviewState:o}=await ut(e,t,i),{reconciledSnapshot:a,displaySnapshot:c}=await sS(e,t,i,s,o);return ju({snapshot:s,reconciledSnapshot:a,displaySnapshot:c})}),e.data.register("attention-summary",async r=>{let i=Y(r),{snapshot:s,reviewState:o}=await ut(e,t,i);return await Bu(e,t,i,s,o,{freshHostData:!0})??me(i)}),e.data.register("attention-display",async r=>{let i=Y(r),{snapshot:s,reviewState:o}=await ut(e,t,i),{displaySnapshot:a}=await sS(e,t,i,s,o);return{companyId:i,snapshot:a??me(i),reviewState:o}}),e.data.register("attention-export",async r=>{let i=Y(r),s=Fu(r.limit,tS,nS),o=Fu(r.traceLimit,mx,gx),a=new Date().toISOString(),{baseLedger:c,snapshot:u,reviewState:p}=await ut(e,t,i),m=await Bu(e,t,i,u,p,{freshHostData:!0}),h=await oS(e,t,i),f=Ou(m,i,h,p),b=qu(c,s),v=qu(t.getTraces(i),o);return{companyId:i,exportedAt:a,ledger:b.items,eventEntries:b.items.filter(M=>M.kind==="event"),responseEntries:b.items.filter(M=>M.kind==="response"),overlayResponseEntries:b.items.filter(M=>M.kind==="overlay-response"),signalEntries:b.items.filter(M=>M.kind==="signal"),traces:v.items,window:{entryLimit:s,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(i)??rS(a),overlayDiagnostics:ju({snapshot:u,reconciledSnapshot:m,displaySnapshot:f})}}),e.data.register("attention-traces",async r=>{let i=Y(r);return await ut(e,t,i),t.getTraces(i)}),e.data.register("attention-replay-scenario",async r=>{let i=Y(r),s=Fu(r.limit,tS,nS),{baseLedger:o,snapshot:a}=await ut(e,t,i),c=qu(o,s);return{id:`paperclip-attention-${i}`,title:`Paperclip attention replay for ${i}`,description:"Replay scenario exported from the Paperclip Aperture plugin ledger.",doctrineTags:["paperclip","aperture","replay-export"],window:{entryLimit:s,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 r=>{let i=Y(r),{reviewState:s}=await ut(e,t,i);return s})}var yx=["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"],pS=["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"],Sx=["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"],bx=["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"],Ix=["production","prod","force push","git push --force","rm -rf","drop table","delete database","delete prod","sudo","chmod 777","kill process","migrate"],vx=["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"],kx=["observation","contents of","showing first","showing top","found"],Ex=["path","type file","content"],_x=["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"],Ax=["tool-output","dmesg"],wx=["makefile","spdx-license-identifier","patchlevel","sublevel","extraversion"],Tx=/(?:^|\s)\/[a-z0-9._-]+(?:\/[a-z0-9._-]+)+(?:\s|$)/,xx=/\bfound\s+\d+\s+match(?:es)?\b|\bshowing\s+(?:first|top)\s+\d+\b|\bmatch(?:es)?\s+in\s+\d+\s+files?\b/,Rx=/\b(import|from|export|class|def|function|const|let|var|return)\b/,Cx=/\b\d+\s+(?:import|from|export|class|def|function|const|let|var|return)\b/,Ox=/\/[a-z0-9._/-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)(?:\b|\/)/,Px=/\b[a-z0-9.-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)\b/,Nx=/\b(static|struct|enum|typedef|void|int|char|bool|return)\b/,Mx=/\b\d+\s+(?:static|struct|enum|typedef|void|int|char|bool|return)\b/,Lx=/\b\d+\s+\[\s*\d+\.\d+\]\s+[a-z0-9_.:-]+/,Dx=/\b(?:version|patchlevel|sublevel|extraversion)\b/,Ux=["form is valid false","form without instance is valid false","form errors","errorlist","decompress result"],jx=["traceback","exception","permission denied","command not found","segmentation fault"],Fx=["still","again","back again","came back","continues","continuing","returned","returning","remains","persisting","retrying","recurred"],qx=["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"],Bx=["resolved","fixed","unblocked","no longer blocked"],cS=["not resolved","did not resolve","didn t resolve","not fixed","did not fix","didn t fix","not recovered","did not recover","didn t recover"],$x=["recovered","completed successfully","succeeded after"],lS=["instead","supersedes","superseded","replaced by","use this plan instead","follow this plan instead"],Vx=["worse","worsened","escalating","regression","regressed","spread","broader impact","degraded further","critical now","now failing"],Kx=["did not regress","didn t regress","no regression","not worsening","did not worsen","didn t worsen","not escalating","did not escalate","didn t escalate"],Hx=["fail","failed","failing","failure","error","broken","blocked","stalled","stall","incident","issue","outage","degraded","regression","retry","rollback"];function Ir(e){return e.toLowerCase().replace(/[^a-z0-9/._-]+/g," ").trim()}function Vu(e){return[...new Set(e)]}function mS(e){return $u(e.toolFamily)??$u(sR(e.metadata))??$u(oR(e.context))}function Wx(e){let t=mS(e);if(t)return t;let r=Ir(`${e.title} ${e.summary??""}`);return qe(r,"wants to read")||qe(r,"wants to inspect")||yr(r,"read")||yr(r,"inspect")?"read":qe(r,"wants to write")||yr(r,"write")?"write":qe(r,"wants to edit")||yr(r,"edit")?"edit":qe(r,"shell command")||qe(r,"wants to run")?"bash":qe(r,"search the web")?"web":qe(r,"search files")||qe(r,"search file contents")?"search":null}function zx(e){return j(e,pS)?!1:j(e,yx)}function Gx(e){return j(e,pS)?null:j(e,Sx)?"blocking":j(e,bx)?"waiting":null}function gS(e){let t=[],r=j(e,Fx)&&!j(e,qx),i=j(e,Bx)&&!j(e,cS),s=j(e,$x)&&!j(e,cS),o=j(e,Vx)&&!j(e,Kx),a=j(e,Hx)||j(e,lS)||o;return r&&a&&t.push({kind:"same_issue"},{kind:"repeats"}),(i||s&&a)&&t.push({kind:"same_issue"},{kind:"resolves"}),j(e,lS)&&t.push({kind:"same_issue"},{kind:"supersedes"}),o&&t.push({kind:"same_issue"},{kind:"escalates"}),cR(t)}function hr(e,t,r){return aR(e)||r==="read"||r==="search"?t:Xx(e,Ix)?"high":(r==="write"||r==="edit"||r==="bash")&&t==="low"?"medium":t}function Yx(e,t){return t!=="edit"&&t!=="read"?!1:j(e,vx)||yS(e)||hS(e)}function Zx(e,t){return t==="search"?uS(e):t==="read"?uS(e)?!0:!yS(e)&&!hS(e)||nR(e)?!1:rR(e)||iR(e):!1}function Jx(e,t){return t!=="bash"?!1:j(e,Ux)&&!j(e,jx)}function j(e,t){return t.some(r=>fS(e,r))}function Xx(e,t){return t.some(r=>Qx(e,r))}function fS(e,t){let r=Ir(t);return r?r.includes(" ")?qe(e,r):yr(e,r):!1}function Qx(e,t){return fS(e,t)}function hS(e){return Ku(e)?j(e,kx)||eR(e)||tR(e):!1}function yS(e){return j(e,Ex)&&Ku(e)}function uS(e){return xx.test(e)||Ku(e)&&/\bmatch(?:es)?\b/.test(e)}function Ku(e){return Tx.test(e)}function eR(e){return Rx.test(e)}function tR(e){return Cx.test(e)}function nR(e){return Ox.test(e)||Px.test(e)||Nx.test(e)||Mx.test(e)}function rR(e){return Lx.test(e)||j(e,Ax)}function iR(e){return Dx.test(e)||j(e,wx)}function sR(e){let t=e?.toolFamily;return typeof t=="string"?t:null}function oR(e){if(!e?.items)return null;for(let t of e.items){let r=t.id.toLowerCase(),i=t.label.toLowerCase();if(r==="toolfamily"||r==="tool_family"||r==="tool"||i==="tool family")return t.value??null}return null}function $u(e){if(!e)return null;let t=e.trim().toLowerCase();return t.length>0?t:null}function qe(e,t){let r=Ir(t);return r?new RegExp(`(?:^|[^a-z0-9_])${SS(r)}(?:$|[^a-z0-9_])`).test(e):!1}function yr(e,t){return new RegExp(`(?:^|[^a-z0-9_])${SS(t)}(?:$|[^a-z0-9_])`).test(e)}function SS(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function aR(e){return j(e,_x)}function cR(e){let t=new Set,r=[];for(let i of e){let s=`${i.kind}:${i.target??""}`;t.has(s)||(t.add(s),r.push(i))}return r}function lR(e){switch(e){case"approval":return"approval_request";case"choice":return"question_request";case"form":return"form_request"}}function uR(e){switch(e){case"approval":return"permission_request";case"choice":case"form":return"question_request"}}function dR(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 Sr(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 Tn(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 Hu(e){let t=pR(e);return fR(t,e.semanticHints)}function pR(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:le(["intentFrame","activityClass","consequence","confidence"])};case"task.updated":return mR(e);case"human.input.requested":return gR(e);case"task.completed":return{intentFrame:"completion",activityClass:"tool_completion",consequence:"low",factors:["task.completed"],relationHints:[],confidence:"high",reasons:dS("completion"),provenance:le(["intentFrame","activityClass","consequence","confidence"])};case"task.cancelled":return{intentFrame:"cancellation",activityClass:"status_update",consequence:"low",...e.reason?{whyNow:Sr("completed",{wasCancelled:!0})??"Work was cancelled and may need review."}:{},factors:["task.cancelled"],relationHints:[],confidence:"high",reasons:Tn("completed",{wasCancelled:!0}),provenance:{...le(["intentFrame","activityClass","consequence","confidence"]),...e.reason?le(["whyNow"]):{}}};default:return bR(e)}}function mR(e){let t=Ir(`${e.title} ${e.summary??""}`),r=zx(t),i=Gx(t),s=gS(t),o=kS(e.title,e.summary,e.toolFamily,e.context),{toolFamily:a,source:c}=vS(o,!0),u=s.length>0?le(["relationHints"]):{},p=e.status==="failed"&&Yx(t,a),m=e.status==="failed"&&Zx(t,a),h=e.status==="failed"&&Jx(t,a);switch(e.status){case"failed":return p?{intentFrame:"status_update",activityClass:"status_update",...a?{toolFamily:a}:{},consequence:hr(t,m?"low":"high",a),factors:["task.updated","failed","observational_failure"],relationHints:s,confidence:"high",reasons:["task status indicates failure but the update reads like observational output"],provenance:{...le(["intentFrame","activityClass","consequence","confidence"]),...br(c),...u}}:{intentFrame:"failure",activityClass:"tool_failure",...a?{toolFamily:a}:{},consequence:hr(t,m?"low":h?"medium":"high",a),whyNow:Sr("failed")??"Work has failed and should be reviewed.",factors:["task.updated","failed"],relationHints:s,confidence:r?"medium":"high",reasons:h?[...Tn("failed",{impliedAsk:r}),"failure content looks like expected diagnostic output from repro work"]:Tn("failed",{impliedAsk:r}),provenance:{...le(["intentFrame","activityClass","consequence","whyNow","confidence"]),...br(c),...u}};case"blocked":return{intentFrame:"blocked_work",activityClass:"status_update",...a?{toolFamily:a}:{},consequence:hr(t,"medium",a),whyNow:Sr("blocked")??"Work is blocked and may require operator attention.",factors:["task.updated","blocked"],relationHints:s,confidence:r?"medium":"high",reasons:Tn("blocked",{impliedAsk:r}),provenance:{...le(["intentFrame","activityClass","consequence","whyNow","confidence"]),...br(c),...u}};case"running":case"waiting":case"completed":return{intentFrame:i==="blocking"?"blocked_work":"status_update",activityClass:"status_update",...a?{toolFamily:a}:{},consequence:hr(t,"low",a),...(()=>{let f=i==="blocking"?Sr("blocked"):r?Sr(e.status,{impliedAsk:r}):void 0;return f!==void 0?{whyNow:f}:{}})(),factors:["task.updated",e.status,...i==="blocking"?["semantic blocking signal"]:[]],relationHints:s,confidence:i==="blocking"?"medium":r?"low":"high",reasons:i==="blocking"?[...Tn("blocked"),"status wording indicates work cannot continue yet"]:Tn(e.status,{impliedAsk:r}),provenance:{...le(["intentFrame","activityClass","consequence","confidence"]),...br(c),...i==="blocking"||r?le(["whyNow"]):{},...u}};default:return IR(e.status)}}function gR(e){let t=kS(e.title,e.summary,e.toolFamily,e.context),{toolFamily:r,source:i}=vS(t,e.request.kind==="approval"),s=Ir(`${e.title} ${e.summary}`),o=gS(s),a=e.riskHint??SR(e.request.kind,r),c=hr(s,a,r),u=o.length>0?le(["relationHints"]):{};return{intentFrame:lR(e.request.kind),activityClass:uR(e.request.kind),...r?{toolFamily:r}:{},consequence:c,whyNow:dR(e.request.kind,c),factors:["human.input.requested",e.request.kind],relationHints:o,confidence:e.riskHint?"high":e.request.kind==="approval"&&r?"medium":"low",reasons:[e.riskHint?"source provided an explicit risk hint":"request kind establishes an explicit operator decision point",...i==="explicit"?["tool family was supplied by the source or context"]:i==="inferred"?["tool family was inferred from approval wording"]:[]],provenance:{...le(["intentFrame","activityClass","whyNow"]),...br(i),...e.riskHint?bS(["consequence","confidence"]):le(["consequence","confidence"]),...u}}}function le(e){return IS(e,"inferred")}function bS(e){return IS(e,"source")}function IS(e,t){return Object.fromEntries(e.map(r=>[r,t]))}function br(e){switch(e){case"explicit":return bS(["toolFamily"]);case"inferred":return le(["toolFamily"]);case"none":return{};default:return kR(e)}}function vS(e,t){let r=mS(e);if(r)return{toolFamily:r,source:"explicit"};if(!t)return{source:"none"};let i=Wx(e);return i?{toolFamily:i,source:"inferred"}:{source:"none"}}function fR(e,t){return t?{...e,...yR(t),factors:Vu([...e.factors??[],...t.factors??[]]),relationHints:[...t.relationHints??e.relationHints],reasons:Vu([...e.reasons??[],...t.reasons??[]]),provenance:{...e.provenance??{},...hR(t)}}:e}function hR(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 yR(e){let t={};for(let[r,i]of Object.entries(e))i!==void 0&&r!=="factors"&&r!=="relationHints"&&r!=="reasons"&&(t[r]=i);return t}function SR(e,t){switch(e){case"approval":return t==="read"||t==="search"?"low":"medium";case"choice":case"form":return"medium";default:return vR(e)}}function kS(e,t,r,i){return{title:e,...t!==void 0?{summary:t}:{},...r!==void 0?{toolFamily:r}:{},...i?.items!==void 0?{context:{items:i.items}}:{}}}function bR(e){throw new Error(`Unhandled source event in semantic interpreter: ${JSON.stringify(e)}`)}function IR(e){throw new Error(`Unhandled task status in semantic interpreter: ${e}`)}function vR(e){throw new Error(`Unhandled human input request kind in semantic interpreter: ${e}`)}function kR(e){throw new Error(`Unhandled tool family provenance source in semantic interpreter: ${e}`)}function ER(e={}){let t=e.base,r=e.semantic,i=t?.whyNow??r?.whyNow??e.fallbackWhyNow,s=Vu([...t?.factors??[],...r?.factors??[],...e.extraFactors??[]]);if(!(t===void 0&&i===void 0&&s.length===0))return{...t??{},...i!==void 0?{whyNow:i}:{},...s.length>0?{factors:s}:{}}}function ES(e){let t=Hu(e),r=e.type==="human.input.requested"&&e.riskHint!==void 0?{riskHint:e.riskHint}:void 0;return AR(TR(e),t,r)}function _R(e){switch(e){case"high":return"critical";case"medium":case"low":return"focused";default:return CR(e)}}function AR(e,t,r={}){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 wR(e,t,r);default:return xR(e)}}function wR(e,t,r){let{toolFamily:i,...s}=e,o=e.consequence??t.consequence??r.riskHint??"medium",a=e.tone??_R(o),c=ER({base:e.provenance,semantic:t}),u=e.request.kind==="approval"?e.toolFamily??t.toolFamily:void 0;return{...s,...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 TR(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 RR(e)}}function xR(e){throw new Error(`Unhandled ApertureEvent in semantic normalizer: ${JSON.stringify(e)}`)}function RR(e){throw new Error(`Unhandled SourceEvent in semantic normalizer: ${JSON.stringify(e)}`)}function CR(e){throw new Error(`Unhandled consequence level in semantic normalizer: ${e}`)}function OR(e){return typeof e=="string"&&e.trim().length>0?e:void 0}function _S(e,t){if(!e||typeof e!="object")return;let r=e[t];return Array.isArray(r)&&r.every(i=>typeof i=="string")?r:void 0}function R(e,t){if(!(!e||typeof e!="object"))return OR(e[t])}function Gu(e){return e?ke(e):void 0}function PR(e){let t=e.entityType??"event",r=e.entityId??e.eventId;return Ue(t,r)}function NR(e){let t=R(e,"issueId")??R(e,"sourceIssueId")??R(e,"parentIssueId")??_S(e,"issueIds")?.[0];return t?Ue("issue",t):null}function MR(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 Wu(e){let t=R(e,"status")?.toLowerCase(),r=[R(e,"summary"),R(e,"description"),R(e,"bodySnippet"),R(e,"title"),R(e,"issueTitle")].filter(i=>!!i).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":r.includes("blocked")||r.includes("clarification")?"blocked":r.includes("waiting")?"waiting":"running"}function LR(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 DR(e){let t=R(e.payload,"title")??R(e.payload,"plan")??R(e.payload,"name");if(t)return t;let r=Gu(R(e.payload,"type"));return r?`${r} approval`:"Approval requested"}function AS(e){return R(e.payload,"type")}function UR(e){return AS(e)==="budget_override_required"}function zu(e,t){let r=R(e.payload,"identifier"),i=R(e.payload,"issueTitle")??R(e.payload,"title");return r&&i?`${r} ${i}`:r?`${r} ${t}`:i||t}function jR(e){if(!(!e||e.length===0))return{relationHints:e.map(t=>({kind:"same_issue",target:us(t)}))}}function FR(e){return[R(e,"bodySnippet"),R(e,"summary"),R(e,"description"),R(e,"title"),R(e,"issueTitle")].filter(t=>!!t).join(`
|
|
11
|
-
`)}function ms(e){if(e.entityType!=="issue"||!e.entityId)return;let t=Pu({text:FR(e.payload),identifier:R(e.payload,"identifier"),issueTarget:us(e.entityId)});return{...t.semanticConfidence?{confidence:t.semanticConfidence}:{},...t.relationHints.length>0?{relationHints:t.relationHints}:{}}}function qR(e,t){return{whyNow:mr(e),factors:e?["budget stop","approval","operator decision"]:["approval","operator decision"],...jR(t)??{}}}function BR(){return{whyNow:Ru(),factors:["pending approval"]}}function $R(){return{intentFrame:"failure",whyNow:Uy(),factors:["run failed","operator review"]}}function dt(e){return Hu(e)}function Yu(e){let t=e.eventType,r=PR(e),i=MR(e);switch(t){case"approval.created":{let s=AS(e),o=UR(e),a=R(e.payload,"requestedAmount"),c=R(e.payload,"reason"),u=R(e.payload,"decisionContext"),p=_S(e.payload,"issueIds"),m=DR(e),h=R(e.payload,"summary")??cs(o),f=dt({id:`${e.eventId}:approval`,type:"human.input.requested",taskId:r,interactionId:je(r,"approval"),timestamp:e.occurredAt,source:i,toolFamily:"paperclip",activityClass:"permission_request",title:m,summary:h,request:{kind:"approval"},riskHint:o?"high":"medium",semanticHints:qR(o,p)});return{id:`${e.eventId}:approval`,type:"human.input.requested",taskId:r,interactionId:je(r,"approval"),timestamp:e.occurredAt,source:i,toolFamily:"paperclip",activityClass:"permission_request",title:m,summary:h,consequence:o?"high":"medium",tone:"focused",request:{kind:"approval"},semantic:f,context:{items:[...Gu(s)?[is(Gu(s))]:[],...a?[ss(a)]:[],...c?[os(c)]:[],...u?[as(u)]:[],...p?.length?[my(String(p.length))]:[]]},provenance:{whyNow:mr(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:r,timestamp:e.occurredAt,source:i,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 s=zu(e,"Issue created"),o=R(e.payload,"description")??"A new issue entered Paperclip.",a=Wu(e.payload);return a==="running"?{id:`${e.eventId}:issue-created`,type:"task.started",taskId:r,timestamp:e.occurredAt,source:i,title:s,summary:o,semantic:dt({id:`${e.eventId}:issue-created`,type:"task.started",taskId:r,timestamp:e.occurredAt,source:i,title:s,summary:o,semanticHints:ms(e)})}:{id:`${e.eventId}:issue-created-status`,type:"task.updated",taskId:r,timestamp:e.occurredAt,source:i,title:s,summary:o,activityClass:"status_update",status:a,semantic:dt({id:`${e.eventId}:issue-created-status`,type:"task.updated",taskId:r,timestamp:e.occurredAt,source:i,title:s,summary:o,activityClass:"status_update",status:a,semanticHints:ms(e)})}}case"issue.updated":{let s=zu(e,"Issue updated"),o=R(e.payload,"summary")??R(e.payload,"description"),a=Wu(e.payload);return{id:`${e.eventId}:issue-updated`,type:"task.updated",taskId:r,timestamp:e.occurredAt,source:i,title:s,summary:o,activityClass:"status_update",status:a,semantic:dt({id:`${e.eventId}:issue-updated`,type:"task.updated",taskId:r,timestamp:e.occurredAt,source:i,title:s,...o!==void 0?{summary:o}:{},activityClass:"status_update",status:a,semanticHints:ms(e)})}}case"issue.comment.created":case"issue.comment_added":{let s=zu(e,"Issue comment"),o=R(e.payload,"bodySnippet")??"A comment added new context in Paperclip.",a=Wu(e.payload);return{id:`${e.eventId}:issue-comment`,type:"task.updated",taskId:r,timestamp:e.occurredAt,source:i,title:s,summary:o,activityClass:"follow_up",status:a,progress:void 0,semantic:dt({id:`${e.eventId}:issue-comment`,type:"task.updated",taskId:r,timestamp:e.occurredAt,source:i,title:s,summary:o,activityClass:"follow_up",status:a,semanticHints:ms(e)})}}case"agent.run.started":return{id:`${e.eventId}:run-started`,type:"task.started",taskId:r,timestamp:e.occurredAt,source:i,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 s=NR(e.payload)??r,o=R(e.payload,"title")??"Agent run failed",a=R(e.payload,"summary")??Dy();return{id:`${e.eventId}:run-failed`,type:"task.updated",taskId:s,timestamp:e.occurredAt,source:i,toolFamily:"paperclip",activityClass:"tool_failure",status:"failed",title:o,summary:a,semantic:dt({id:`${e.eventId}:run-failed`,type:"task.updated",taskId:s,timestamp:e.occurredAt,source:i,toolFamily:"paperclip",activityClass:"tool_failure",title:o,summary:a,status:"failed",semanticHints:$R()})}}case"agent.run.finished":return{id:`${e.eventId}:run-finished`,type:"task.completed",taskId:r,timestamp:e.occurredAt,source:i,summary:R(e.payload,"summary")??"Agent run finished"};case"agent.run.cancelled":return{id:`${e.eventId}:run-cancelled`,type:"task.cancelled",taskId:r,timestamp:e.occurredAt,source:i,reason:R(e.payload,"summary")??"Agent run cancelled"};case"agent.error_cleared":{let s=R(e.payload,"summary")??"The agent error state was cleared in Paperclip.";return{id:`${e.eventId}:error-cleared`,type:"task.completed",taskId:r,timestamp:e.occurredAt,source:i,summary:s}}case"agent.status_changed":{let s=R(e.payload,"status")?.toLowerCase();if(s==="pending_approval"){let u=jy(),p=Fy();return{id:`${e.eventId}:status-pending-approval`,type:"human.input.requested",taskId:r,interactionId:je(r,"pending-approval"),timestamp:e.occurredAt,source:i,toolFamily:"paperclip",activityClass:"permission_request",title:u,summary:p,consequence:"medium",tone:"focused",request:{kind:"approval"},semantic:dt({id:`${e.eventId}:status-pending-approval`,type:"human.input.requested",taskId:r,interactionId:je(r,"pending-approval"),timestamp:e.occurredAt,source:i,toolFamily:"paperclip",activityClass:"permission_request",title:u,summary:p,request:{kind:"approval"},riskHint:"medium",semanticHints:BR()}),provenance:{whyNow:Ru(),factors:["pending approval"]}}}let o=LR(e.payload),a="Agent status changed",c=s?`Agent status is now ${s}.`:"Agent status changed.";return{id:`${e.eventId}:status-updated`,type:"task.updated",taskId:r,timestamp:e.occurredAt,source:i,title:a,summary:c,activityClass:"session_status",status:o,semantic:dt({id:`${e.eventId}:status-updated`,type:"task.updated",taskId:r,timestamp:e.occurredAt,source:i,title:a,summary:c,activityClass:"session_status",status:o})}}default:return null}}function VR(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 wS(e){let t=Yu(e);if(!t)return null;let r={id:t.id,taskId:t.taskId,timestamp:t.timestamp,source:t.source,semanticHints:VR(t)};switch(t.type){case"task.started":return{...r,type:"task.started",title:t.title,...t.summary?{summary:t.summary}:{}};case"task.updated":return{...r,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{...r,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{...r,type:"task.completed",...t.summary?{summary:t.summary}:{}};case"task.cancelled":return{...r,type:"task.cancelled",...t.reason?{reason:t.reason}:{}};default:return null}}var KR=["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"],HR=new Set(["issue.document_created","issue.document_updated","issue.document_deleted"]);function WR(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 zR(e,t,r,i){if(!WR(i,r.eventType))return;if(r.eventType==="activity.logged"){let u=r.payload&&typeof r.payload=="object"?r.payload:{},p=typeof u.action=="string"?u.action:void 0,m=typeof u.entityType=="string"?u.entityType:r.entityType;m==="issue"&&p&&HR.has(p)&&(t.invalidateHostCache(r.companyId,{keys:r.entityId?[`issue:${r.entityId}:documents`,`issue:${r.entityId}:relations`]:[],prefixes:["issues:blocked","issues:in_review"]}),e.logger.info("Triggered Focus refresh from activity log event",{companyId:r.companyId,action:p,entityId:r.entityId,entityType:m}));return}r.entityType==="issue"&&r.entityId?t.invalidateHostCache(r.companyId,{keys:[`issue:${r.entityId}:detail`,`issue:${r.entityId}:comments`,`issue:${r.entityId}:relations`],prefixes:["issues:blocked","issues:in_review"]}):r.entityType==="agent"&&t.invalidateHostCache(r.companyId,{keys:["agents:all"]});let s=r,o=wS(s),a=o?ES(o):Yu(s);if(!a)return;s.entityType==="approval"&&t.invalidateApprovals(s.companyId);let c={kind:"event",id:`${s.eventId}:event`,occurredAt:s.occurredAt,source:{eventType:s.eventType,entityId:s.entityId,entityType:s.entityType},...o?{sourceEvent:o}:{},apertureEvent:a};t.applyEvent(s.companyId,c),t.markPersistencePending(s.companyId),e.logger.info("Captured Paperclip event for Aperture",{companyId:s.companyId,eventType:s.eventType,entityId:s.entityId,mappedType:a.type})}function TS(e,t,r=()=>({})){for(let i of KR)e.events.on(i,async s=>{await zR(e,t,s,r())})}function xS(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}var gs={},RS=ys({async setup(e){let t=new Yi;try{gs=xS(await e.config.get())}catch(r){gs={},e.logger.warn("Failed to load initial Focus config; event handlers will use defaults.",{error:r instanceof Error?r.message:String(r)})}aS(e,t),py(e,t),TS(e,t,()=>gs)},async onConfigChanged(e){gs=xS(e)},async onHealth(){return{status:"ok",message:"Paperclip Aperture worker is running"}}}),qj=RS;Fl(RS,import.meta.url);export{qj as default};
|
|
1
|
+
import{definePlugin as MN,runWorker as BN}from"@paperclipai/plugin-sdk";import{performance as _o}from"perf_hooks";import{join as ls,dirname as ef}from"path";import{randomBytes as tf}from"crypto";import{readFile as nf,mkdir as rf,open as sf,rename as of,unlink as af}from"fs/promises";function cf(e){return ma(e.priority)*100+ga(e.consequence)*10+ha(e.tone)+(e.blocking?1e3:0)+(e.attentionScoreOffset??0)}function pe(e,t={}){return ma(G(e))*100+ga(e.consequence)*10+ha(e.tone)+(it(e)?1e3:0)+fa(e)+uf(e,t.now)}function G(e){return e.mode==="status"?e.tone==="critical"||e.consequence==="high"?"high":e.tone==="focused"||e.consequence==="medium"?"normal":"background":"high"}function fa(e){let t=e.metadata?.attention;return t&&typeof t=="object"&&"scoreOffset"in t&&typeof t.scoreOffset=="number"?t.scoreOffset:0}function it(e){return e.mode!=="status"&&e.responseSpec?.kind!=="none"}function ma(e){switch(e){case"background":return 0;case"normal":return 1;case"high":return 2}}function ga(e){switch(e){case"low":return 0;case"medium":return 1;case"high":return 2}}function ha(e){switch(e){case"ambient":return 0;case"focused":return 1;case"critical":return 2}}function uf(e,t){let n=t??e.timing.updatedAt,r=Date.parse(e.timing.updatedAt),s=Date.parse(n);if(Number.isNaN(r)||Number.isNaN(s)||s<=r)return 0;let i=s-r,o=lf(e);if(i<=o.graceMs)return 0;let a=Math.floor((i-o.graceMs)/o.stepMs)+1;return-Math.min(o.maxPenalty,a*o.penaltyPerStep)}function lf(e){return it(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 df=250;function pf(e,t={}){let n=[],r=[];for(let o of e)o.now&&(ff(o.now)?r.push(o.now):n.push(o.now)),n.push(...o.next),r.push(...o.ambient);let s=t.now??gf([...n,...r]);if(mf([...n,...r])>=2){let o=[],a=[];for(let c of n)!ba(c)&&pe(c,{now:s})<200?a.push(c):o.push(c);n=o,r=[...r,...a]}if(n.sort((o,a)=>Eo(o,a,s)),r.sort((o,a)=>Eo(o,a,s)),t.operatorPresence==="absent")return{now:null,next:n,ambient:r};let i=hf(n,r,t.focusedInteractionId??null,s);if(i){let o=n.some(a=>a.interactionId===i.interactionId);return{now:i,next:o?n.filter(a=>a.interactionId!==i.interactionId):n,ambient:r.filter(a=>a.interactionId!==i.interactionId)}}if(n.length>0){let[o,...a]=n;return{now:o??null,next:a,ambient:r}}if(r.length>0){let[o,...a]=r;return o&&(pe(o,{now:s})<=0||t.globalAttentionState==="overloaded"&&pe(o,{now:s})<200)?{now:null,next:[],ambient:r}:{now:o??null,next:[],ambient:a}}return{now:null,next:[],ambient:[]}}function ff(e){return e.mode==="status"||e.tone==="ambient"}function ba(e){return e.mode!=="status"||e.tone==="critical"||e.consequence==="high"}function mf(e){return e.filter(ba).length}function Eo(e,t,n){let r=pe(t,{now:n})-pe(e,{now:n});return r!==0?r:e.timing.createdAt.localeCompare(t.timing.createdAt)}function gf(e){let t="1970-01-01T00:00:00.000Z";for(let n of e){let r=n.timing.updatedAt;r.localeCompare(t)>0&&(t=r)}return t}function hf(e,t,n,r){if(!n)return null;let s=e.find(o=>o.interactionId===n)??t.find(o=>o.interactionId===n)??null;if(!s)return null;let i=e[0]??t[0]??null;return!i||i.interactionId===s.interactionId?s:bf(s,i,r)?null:s}function bf(e,t,n){return t.tone==="critical"&&e.tone!=="critical"||t.mode!=="status"&&t.consequence==="high"&&e.consequence!=="high"?!0:pe(t,{now:n})-pe(e,{now:n})>=df}function Je(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 Sn(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 yf=class{apply(e,t,n=t){let r=this.scoreOffset(e,t,n),s=this.rationale(e,t,n,r);return{...e,...r!==0?{attentionScoreOffset:r}:{},...s.length>0?{attentionRationale:s}:{}}}scoreOffset(e,t,n){let r=0,s=Je(t),i=Je(n),o=Sn(t),a=Sn(n);if(e.mode==="status"){let c=e.consequence==="high"||e.tone==="critical";t.dismissalRate>=.5&&(r-=15),t.deferred.suppressed>=2&&(r-=10),c&&(r+=20),!c&&s==="overloaded"&&(r-=10),!c&&s==="avoiding"&&(r-=10),!c&&s!=="overloaded"&&i==="overloaded"&&(r-=5),!c&&a.includes("fragmented_attention")&&(r-=5)}return e.blocking&&t.counts.contextExpanded>=2&&(r+=10),e.blocking&&t.responseRate>=.75&&t.averageResponseLatencyMs!==null&&t.averageResponseLatencyMs<=1e4&&(r+=5),e.blocking&&s==="hesitating"&&(r+=5),e.blocking&&o.includes("defer_then_return")&&(r+=5),r}rationale(e,t,n,r){let s=[],i=Je(t),o=Je(n),a=Sn(t),c=Sn(n);return e.mode==="status"&&t.dismissalRate>=.5&&s.push("status updates for this task are often dismissed"),e.mode==="status"&&t.deferred.suppressed>=2&&s.push("similar task updates have repeatedly remained ambient"),e.mode==="status"&&(e.consequence==="high"||e.tone==="critical")&&s.push("high-consequence status should remain more visible"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&i==="overloaded"&&s.push("recent task activity suggests attention is already saturated"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&i==="avoiding"&&s.push("recent behavior suggests low-value updates should stay quiet"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&i!=="overloaded"&&o==="overloaded"&&s.push("overall operator activity suggests attention is already saturated"),e.mode==="status"&&e.consequence!=="high"&&e.tone!=="critical"&&c.includes("fragmented_attention")&&s.push("recent attention has already shifted repeatedly across work"),e.blocking&&t.counts.contextExpanded>=2&&s.push("this task often requires deeper context before action"),e.blocking&&t.responseRate>=.75&&t.averageResponseLatencyMs!==null&&t.averageResponseLatencyMs<=1e4&&s.push("similar blocking interactions usually receive quick responses"),e.blocking&&i==="hesitating"&&s.push("similar blocking interactions appear to require more deliberation"),e.blocking&&a.includes("defer_then_return")&&s.push("similar interactions are often deferred and resumed later"),r===0?[]:s}},vf={"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 ya(e){let t=Sa(e),n=ka(e),r=wf(e,t),s=Sf(e),i=Af(e);return{statusEvidence:r?"limited_failure":i?"visible_diagnostic_failure":s?"stable_observation":"weak_or_uncertain",statusConflictKind:kf(e),recoveryPosture:t,baselineConsequence:e.consequenceBaseline,outcomeOnlyFailureStatus:n,limitedFailureStatus:r,stableStatusEvidence:s,visibleDiagnosticFailure:i}}function kf(e){return va(e)}function va(e){return e.kind==="control"?Sa(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 ka(e){return wa(e)&&e.kind==="outcome"&&e.evidenceLoss==="none"}function wf(e,t){return ka(e)?!0:wa(e)?e.kind==="outcome"&&e.evidenceLoss==="absent"&&t==="evidence_required"||e.kind==="diagnostic"&&e.evidenceLoss==="partial"&&t==="evidence_scope_required":!1}function wa(e){return e.polarity==="failure"&&e.evidenceLoss!=="unknown"&&e.consequenceBaseline==="medium"&&e.semanticAgreement==="stable"}function Sf(e){return e.semanticAgreement==="stable"&&e.evidenceStrength!=="weak"}function Af(e){return e.kind==="diagnostic"&&e.diagnosticClass==="runtime"&&e.evidenceLoss==="none"&&e.polarity==="failure"}function Sa(e){let t=`${e.kind}:${e.polarity}:${e.evidenceLoss}:${e.diagnosticClass??""}:${e.recoveryHint??""}`;return vf[t]??"none"}function _f(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.capabilityFamily!==e.interpretation.toolFamily||e.interpretation.consequence!==t.consequenceBaseline||!Ef(e.interpretation)||e.abstained)return null;let n=va(t);return n===null?null:{kind:n,...t.ownership.capabilityFamily!==void 0?{toolFamily:t.ownership.capabilityFamily}:{},baselineConsequence:t.consequenceBaseline}}function Ef(e){return e.confidence==="high"}function Tf(e,t,n){return{ask:Rf(e,t),activity:Cf(e,t,n),...t.consequence!==void 0?{consequence:t.consequence}:{},blocking:xf(e,t),episode:If(e,t),confidence:t.confidence,source:Of(e,t,n)}}function Rf(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 Cs(e)}}function Cf(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 Cs(e)}}function xf(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 Cs(e)}}function If(e,t){let n=new Set(t.relationHints.map(r=>r.kind));return n.has("resolves")?"resolved":n.has("same_issue")&&Lf(t.relationHints)?"resurfaced":n.has("same_issue")?"same_issue":e.type==="human.input.requested"||e.type==="task.started"?"new":"unknown"}function Lf(e){return e.some(t=>t.kind==="repeats"||t.kind==="escalates"||t.kind==="supersedes")}function Of(e,t,n){let r=Object.values(t.provenance??{});return e.type==="task.updated"&&e.evidence!==void 0?"explicit":Ff(t)?"hinted":n!==null?"inferred":Pf(e,t)?e.type==="task.updated"&&t.intentFrame==="status_update"&&t.confidence==="low"&&t.provenance?.confidence==="inferred"?"inferred":"explicit":r.includes("source")?"explicit":r.includes("inferred")?"inferred":"explicit"}function Ff(e){let t=e.provenance??{};return t.intentFrame==="hint"||t.activityClass==="hint"||t.consequence==="hint"||t.confidence==="hint"}function Pf(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 Cs(e){throw new Error(`Unsupported event type: ${e.type??"unknown"}`)}function Nf(e){return Aa(e)?{activity:"task_progress",intentFrame:"status_update",activityClass:"status_update"}:{activity:"failure",intentFrame:"failure",activityClass:"tool_failure"}}function Aa(e){return e?.polarity==="neutral"||e?.polarity==="success"}var zf=["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"],Df=[/\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/],_a=["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"],$f=["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"],qf=["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"],Mf=["production","prod","force push","git push --force","rm -rf","drop table","delete database","delete prod","sudo","chmod 777","kill process","migrate"],xs=["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"],Bf=["observation","contents of","showing first","showing top","found"],Ea=["path","type file","content"],jf=["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"],Hf=["tool-output","dmesg"],Vf=["makefile","spdx-license-identifier","patchlevel","sublevel","extraversion"],Gt=/(?:^|\s)\/[a-z0-9._-]+(?:\/[a-z0-9._-]+)+(?:\s|$)/,Zf=/\bfound\s+\d+\s+match(?:es)?\b|\bshowing\s+(?:first|top)\s+\d+\b|\bmatch(?:es)?\s+in\s+\d+\s+files?\b/,Uf=/\b(import|from|export|class|def|function|const|let|var|return)\b/,Kf=/\b\d+\s+(?:import|from|export|class|def|function|const|let|var|return)\b/,Is=/\/[a-z0-9._/-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)(?:\b|\/)/,Ls=/\b[a-z0-9.-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)\b/,Wf=/\b(static|struct|enum|typedef|void|int|char|bool|return)\b/,Gf=/\b\d+\s+(?:static|struct|enum|typedef|void|int|char|bool|return)\b/,Yf=/\b\d+\s+\[\s*\d+\.\d+\]\s+[a-z0-9_.:-]+/,Xf=/\b(?:version|patchlevel|sublevel|extraversion)\b/,Jf=["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"],Qf=["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"],em=["still","again","back again","came back","continues","continuing","returned","returning","remains","persisting","retrying","recurred"],tm=["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"],nm=["resolved","fixed","unblocked","no longer blocked"],rm=["not resolved","did not resolve","didn t resolve","not fixed","did not fix","didn t fix","not recovered","did not recover","didn t recover"],sm=["recovered","completed successfully","succeeded after"],im=["supersedes","superseded","replaced by"],om=["worse","worsened","escalating","regression","regressed","spread","broader impact","degraded further","critical now","now failing"],am=["did not regress","didn t regress","no regression","not worsening","did not worsen","didn t worsen","not escalating","did not escalate","didn t escalate"],Ta=["fail","failed","failing","failure","error","broken","blocked","stalled","stall","incident","issue","outage","degraded","regression","retry","rollback"];function C(e){return e.toLowerCase().replace(/[^a-z0-9/._-]+/g," ").trim()}function cm(e){return e.toLowerCase().replace(/[^a-z0-9]+/g," ").trim()}function Y(e,t){return t.some(n=>Ra(e,n))}function Ra(e,t){let n=C(t);return n?n.includes(" ")?le(e,n):zt(e,n):!1}function le(e,t){let n=C(e),r=C(t);return r?new RegExp(`(?:^|[^a-z0-9_])${Ca(r)}(?:$|[^a-z0-9_])`).test(n):!1}function zt(e,t){let n=C(e),r=C(t);return!r||r.includes(" ")?!1:new RegExp(`(?:^|[^a-z0-9_])${Ca(r)}(?:$|[^a-z0-9_])`).test(n)}function Ca(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var um=new Set(["jq"]),lm=/(?:^|[\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 Zn(e){return lm.test(e)}function xa(e){return Zn(e)||dm(e)||pm(e)||fm(e)}function dm(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 pm(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&&um.has(n)}function fm(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 mm(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=>gm(n[1]??""))}function gm(e){let t=e.trim();return t.length>0&&!hm(t)}function hm(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 bm(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 ym(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 vm(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 km(e){return ym(e)||vm(e)}function wm(e){return new RegExp(`(?:^|[\\r\\n])\\s*(?:[a-z0-9_./-]+:\\s*)?${Am}\\b`,"i").test(e)}function Ia(e){return[new RegExp(`\\b${_m}:\\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=>Sm(e,t))}function Sm(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 Am="(?:assertionerror|importerror|modulenotfounderror|referenceerror|runtimeerror|syntaxerror|typeerror|valueerror)",_m="(?:assertionerror|filenotfounderror|importerror|indentationerror|keyerror|modulenotfounderror|nameerror|oserror|permissionerror|referenceerror|runtimeerror|syntaxerror|timeouterror|typeerror|valueerror)";function La(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 Em(e){let t=Cm(e);return Tm(t)||Rm(t)}function Tm(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 Rm(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 Cm(e){return e.replace(/\u001b\[[0-?]*[ -/]*[@-~]/g,"")}function yt(e,t=!1){return[jt(e),xa(e),t&&Ia(e)].some(Boolean)}function xm(e){if(!/\bweb search results for\b/i.test(e))return!1;let t=Lm(e),n=/\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.exec(t??e);return n!==null&&(t===null||t.slice(0,n.index).trim()==="")}function jt(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(?!\s+before\s+(?:tool\s+)?(?:invocation|execution))|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))||bm(e)||mm(e)||Im(e)||Om(e)||La(e)||km(e)||wm(e)}function Im(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 Lm(e){return/^\s*web search results for\s+(?:"[^"]+"|'[^']+'|`[^`]+`|[^:\r\n]{1,200})\s*:\s+([\s\S]+)$/i.exec(e)?.[1]??null}function Om(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 Fm(...e){for(let t of e){let n=Pm(t);if(n!==null){if(zm(n))return"failure";if(Dm(n))return"applied"}}return null}function Pm(e){let t=Nm(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 Nm(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 zm(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 Dm(e){let n=e.trim().toLowerCase(),r="successfully modified file:",s="successfully created and wrote to new file:",i="edit applied successfully. lsp errors detected";return n.startsWith(r)&&n.slice(r.length).trim().length>0||n.startsWith(s)&&n.slice(s.length).trim().length>0||n==="edit applied successfully"||n.startsWith(i)&&n.length<=i.length+200}function $m(e){let t=e.trim();if(t.length===0||Hm(t))return!1;let n=Mm(t),r=n.filter(s=>s.lineNumber!==void 0);return r.length>0?r.length>=3&&Km(r)&&Bm(r):jm(n)}function qm(e){let t=e.trim(),n=Fa(t);return Pa(t)||n?.hasOperandEvidence===!0}function Mm(e){let t=[];for(let n of e.split(/\r?\n/)){let r=Zm(n).trim();if(r.length===0||Wm(r))continue;let s=Um(n);t.push({body:r,...s!==void 0?{lineNumber:s}:{}})}return t}function Bm(e){let t=Oa(e);return t.statements>=3&&t.instructions>=1&&t.operandInstructions>=1}function jm(e){let t=Oa(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 Oa(e){let t=new Set,n=0,r=0,s=0,i=0;for(let o of e){let a=Fa(o.body);n+=Gm(o.body)?1:0,r+=Pa(o.body)?1:0,s+=a!==null?1:0,i+=a?.hasOperandEvidence===!0?1:0,a!==null&&t.add(a.mnemonic)}return{labels:n,directives:r,instructions:s,operandInstructions:i,distinctMnemonics:t.size,statements:n+r+s}}function Fa(e){let t=/^([a-z][a-z0-9_.]*)(?:\s+(.+))?$/i.exec(e.trim()),n=t?.[1]?.toLowerCase(),r=t?.[2]??"";return n===void 0||!Jm.test(n)?null:{mnemonic:n,hasOperandEvidence:r.length>0&&Qm.test(Ym(r))}}function Hm(e){return/^\s*(?:\{|\[|")/.test(e)||Vm(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 Vm(e){return/(?:^|[\r\n])\s*(?:\d{1,6}:\s*)?\[\s*\d+(?:\.\d+)?]\s+\S/.test(e)}function Zm(e){return e.replace(/^\s*\d{1,6}(?:[ \t]+|:\s*)/,"")}function Um(e){let t=/^\s*(\d{1,6})(?:[ \t]+|:\s*)/.exec(e);return t?Number.parseInt(t[1],10):void 0}function Km(e){return e.every((t,n)=>n===0||(t.lineNumber??0)>(e[n-1]?.lineNumber??0))}function Wm(e){return/^\s*(?:\/\/|#|;)(?:\s|$)/.test(e)}function Gm(e){return!/^(?:error|fatal|warning):$/i.test(e.trim())&&/^\.?[a-z_.$][\w.$]*:\s*$/i.test(e.trim())}function Pa(e){return Xm.test(e.trim())}function Ym(e){return e.replace(/\s*(?:(?:\/\/|#|;).*)$/,"")}var Xm=/^\.(?: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,Jm=/^(?:(?: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,Qm=/(?: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 kt(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}:eg(e)?{category:"declaration",strongAnchor:!0,nontrivialAnchor:/(?:\bstd::|->|::|[*&<>]|\b(?:size_t|uint\d+_t|int\d+_t)\b)/.test(e)}:tg(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)}:ng(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)}:rg(e)?{category:"call",strongAnchor:/(?:->|::|\.|\[[^\]]+]|\bsizeof\s*\()/i.test(e),nontrivialAnchor:/(?:->|::|\.|\[[^\]]+])/i.test(e)}:null}function Un(e){let t=e.replace(/\.\.\.\s*$/,"").trim();return og(t)?{category:"return",strongAnchor:!1,nontrivialAnchor:!1}:sg(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)}:ig(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 Yt(e){return/^(?:(?:\/\/|#|;)\s*|\/\*+|\*\/?)/.test(e)}function eg(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 tg(e){return/^[a-z_][a-z0-9_]*(?:(?:->|\.|::)[a-z_][a-z0-9_]*|\[[^\]]+])*\s*(?:=|\+=|-=|\*=|\/=|%=|&=|\|=|<<=|>>=).+;$/i.test(e)}function ng(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 rg(e){return/^(?=.*;\s*$)(?=.*(?:\)|]|\bsizeof\s*\())[\w\s.,:[\]()*&<>\-]+;\s*$/i.test(e)}function sg(e){return/^[a-z_][a-z0-9_]*(?:(?:->|\.|::)[a-z_][a-z0-9_]*|\[[^\]]+])*\s*(?:=|\+=|-=|\*=|\/=|%=|&=|\|=|<<=|>>=)\s*\S.+$/i.test(e)}function ig(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 og(e){return/^retu(?:r(?:n)?)?(?:\b|$)/i.test(e)}var ag=/^(?:bash|edit|read|search|tool)\s+failure\s+/i,cg=/(?:\.\.\.|…)\s*$/;function B(e){return e.trim().replace(ag,"")}function X(e){return cg.test(e.trim())}function ug(e){let t=e.trim();return t.length>0&&!gg(t)&&(lg(t)||dg(t))}function lg(e){return Na(e,{allowClippedFinalLine:!1,minLines:4})}function dg(e){return X(e)&&Na(e,{allowClippedFinalLine:!0,minLines:3})}function pg(e){if(!X(e))return!1;let t=e.split(/\r?\n/).map(n=>n.trim()).filter(n=>n.length>0&&!Yt(n));return t.length>=5&&t.filter(fg).length>=3&&t.filter(mg).length>=2&&t.some(n=>/^\)\s*;?\s*$/.test(n))&&t.some(n=>kt(n)!==null||Un(n)!==null)}function fg(e){return/^[a-z0-9_()[\].:&*>\s,-]+,\s*(?:(?:\/\/|\/\*)[^\r\n]*)?$/i.test(e)&&/(?:[_()[\].:]|->|::|\b\d+\b)/.test(e)}function mg(e){return/(?:->|::|\.|\[[^\]]+])/.test(e)}function Na(e,t){let n=e.split(/\r?\n/),r=kg(n),s=[];for(let[i,o]of n.entries()){let a=o.trim();if(a.length===0||Yt(a))continue;let c=kt(a)??(t.allowClippedFinalLine&&i===r?Un(a):null);if(c===null){if(To(s,t.minLines))return!0;s=[];continue}s.push(c)}return To(s,t.minLines)}function To(e,t){let n=new Set(e.map(s=>s.category)),r=e.filter(s=>s.strongAnchor).length;return e.length>=t&&n.size>=2&&r>=2&&e.some(s=>s.nontrivialAnchor)}function gg(e){return/^\s*(?:\{|\[|")/.test(e)||vg(e)||hg(e)||bg(e)||yg(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 hg(e){return/(?:^|[\r\n])\s*(?:\d{1,6}:\s*)?\[\s*\d+(?:\.\d+)?]\s+\S/.test(e)}function bg(e){return/(?:^|[\r\n])\s*(?:#{1,6}\s+\S|[-*]\s+\S|```|\|.+\|)/.test(e)}function yg(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 vg(e){return/(?:^|[\r\n])\s*\d{1,6}(?:[ \t]+|:\s*)\S/.test(e)}function kg(e){for(let t=e.length-1;t>=0;t-=1){let n=e[t]?.trim()??"";if(n.length>0&&!Yt(n))return t}return-1}function wg(e){if(Sg(e))return[];let t=[],n=/(?:^|[\r\n]|\s)(\d{1,6})\u2192([\s\S]*?)(?=(?:[\r\n]|\s)\d{1,6}\u2192|$)/g,r;for(;(r=n.exec(e))!==null;){let s=Number.parseInt(r[1]??"",10),i=(r[2]??"").trim();Number.isSafeInteger(s)&&i.length>0&&t.push({line:s,body:i.slice(0,160)})}return t}function Sg(e){return/(?:^|[\r\n]|\s)\d{1,6}(?:[ \t]+|:\s+)\S/.test(e)}function Os(e){return/^(?:[a-z0-9-]+\.)+[a-z]{2,}(?:$|[/:]\S*)/i.test(e)?!1:_g(e)||Eg(e)||Tg(e)||Og(e)||Ng(e)}function Ag(e){return Da(e)||za(e)||$a(e)||zg(e)}function _g(e){return[/^#!\/(?:usr\/bin\/env\s+)?[a-z0-9_.+-]+\b/,/^[{}]\s*;?$/,/^(?:case\s+.+|default):\s*$/,/^#include\s*(?:<[^>]+>|"[^"]+")/].some(t=>t.test(e))}function Eg(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 Tg(e){return za(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 za(e){return Rg(e)||xg(e)||Ig(e)||Lg(e)||/^export\s+\{[^}\r\n]+\}\s+from\s+["'][^"'\r\n]+["']\s*;?$/.test(e)}function Rg(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&&Cg(t[1]??"")}function Cg(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 xg(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&&qa(t[1]??"")}function Ig(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 Lg(e){return/^(?:export\s+)?type\s+[a-zA-Z_$][a-zA-Z0-9_$]*(?:<[^>\r\n]+>)?\s*=/.test(e)}function Og(e){return Da(e)||$a(e)}function Da(e){return Fg(e)||Pg(e)}function Fg(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 Pg(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 $a(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&&qa(t[1]??"")||/^class\s+[a-zA-Z_][a-zA-Z0-9_]*(?:\([^)]*\))?:\s*$/.test(e)}function qa(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 Ng(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 zg(e){if(/^(?:struct|enum)\s+[a-z_][a-z0-9_:<>]*\s*(?:[{:;])/.test(e))return!0;let t=kt(e);return t?.category==="declaration"&&(t.nontrivialAnchor||Dg(e))}function Dg(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 ds(e,t={minSourceStatements:2}){return e.length<3||!Mg(e)?!1:Bg(e,t,Os)>=t.minSourceStatements?!0:t.allowClippedSourceContext===!0&&jg(e)}function $g(e){let t=[],n=/(?:^|[\r\n]|\s)(\d{1,6})[ \t]+([\s\S]*?)(?=(?:[\r\n]|\s)\d{1,6}[ \t]+|$)/g,r;for(;(r=n.exec(e))!==null;){let s=Number.parseInt(r[1]??"",10),i=(r[2]??"").trim();Number.isSafeInteger(s)&&i.length>0&&t.push({line:s,body:i.slice(0,160)})}return t}function qg(e){let t=[];for(let n of e.split(/\r?\n/)){let r=/^\s*(\d{1,6})(?:[ \t]+|:\s*)(\S[\s\S]*)$/.exec(n);r&&t.push({line:Number.parseInt(r[1],10),body:r[2].trim().slice(0,160)})}return t}function Mg(e){return e.every((t,n)=>n===0||t.line>e[n-1].line)}function Bg(e,t,n){return e.filter((r,s)=>!(t.ignoreTruncatedFinalSpan===!0&&s===e.length-1)&&n(r.body)).length}function jg(e){if(e.length<4)return!1;let t=e.length-1,n=[],r=0,s=0,i=0;for(let[c,u]of e.entries()){if(Yt(u.body)){r+=1,i+=1;continue}let l=c===t?Un(u.body)??kt(u.body):kt(u.body);l!==null&&(r+=1,n.push(l),c!==t&&(s+=1))}let o=new Set(n.map(c=>c.category)),a=n.filter(c=>c.strongAnchor).length;return r>=4&&s>=2&&o.size>=2&&a>=2&&n.some(c=>c.nontrivialAnchor)||r>=4&&s>=2&&i>=2&&o.has("brace")&&o.has("declaration")&&a>=1}function Hg(e){return Ma(e)?ds(wg(e)):/^\s*\d+\.\s+\S/m.test(e)||/(?:^|\s)\d+:\s+\S/.test(e)||Zg(e)?!1:ds($g(e))}function Vg(e){if(Ma(e))return!1;let t=X(e);return!/^\s*(?:\{|\[|")/.test(e)&&ds(qg(e),{allowClippedSourceContext:t,ignoreTruncatedFinalSpan:t,minSourceStatements:t?3:2})}function Zg(e){return/[\r\n]\s*\d{1,6}[ \t]+\S/.test(e)}function Ma(e){return/(?:^|[\r\n]|\s)\d{1,6}\u2192/.test(e)}function Ug(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(s=>s[1]?.toLowerCase()),r=new Set(n.filter(s=>s!==void 0));return r.size>=5||r.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 Kg(e){let t=e.split(/\r?\n/).map(r=>r.trim());return t.filter(r=>/^\d{1,6}\s+(?:(?:(?:\/\/|\/\*|\*)\s*)|\/\/{5,})/i.test(r)).length>=2&&t.some(r=>/^\d{1,6}\s+(?:(?:\/\/\s*)?SPDX-License-Identifier:|(?:(?:\/\/|\/\*|\*)\s*)?(?:copyright|permission is hereby granted|open source license))/i.test(r))}function Wg(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&&Fs.test(n[1]??"")||Gg(t)||Yg(t)}function Gg(e){let t=e.split(/\r?\n/).slice(0,12);return t.filter(r=>/^\s*(?:\/\/+|#)\s*(?:\S|$)/.test(r)).length>=3&&Fs.test(t.join(`
|
|
2
|
+
`))}function Yg(e){return/^\s*(?:\/\/|#)\s+/.test(e)?[...e.slice(0,900).matchAll(/(?:^|\s)(?:\/\/|#)\s+/g)].length>=3&&Fs.test(e.slice(0,900)):!1}var Fs=/\b(?:SPDX-License-Identifier|copyright|permission is hereby granted|open source license)\b/i;function me(e){let t=B(e);return t.length===0?!1:Xg(t)||$m(t)||ug(t)||Vg(t)||Wg(t)||Kg(t)||th(t)||nh(t)||eh(t)||Ug(t)||rh(t)||Hg(t)||ih(t)>=2||uh(t)>=3}function Xg(e){let t=Jg(e);return Qg(t)||Ag(t)}function Jg(e){return e.split(/\r?\n/).find(t=>t.trim().length>0)?.trim()??""}function Qg(e){return/^(?:#!\/|diff\s+--git\b|---\s+\S|@@\s+|#ifndef\b|#pragma\s+once\b|cmake_minimum_required\s*\()/i.test(e)}function eh(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 th(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 nh(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 rh(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 sh(e){let t=Ba(e);return t.length===1&&X(e)&&ah(e)&&oh(t[0].body)}function ih(e){return Ba(e).length}function Ba(e){return[...e.matchAll(ch)].map(t=>({body:(t[1]??"").trim()}))}function oh(e){return Os(e)||qm(e)}function ah(e){return e.split(/\r?\n/).slice(1).some(t=>/^\s*(?:\/|\.\.?\/|[a-z0-9_.-]+\/)\S*\/\S*\.\.\.\s*$/i.test(t))}var ch=/(?:^|[\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 uh(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,r)=>n+(r.test(e)?1:0),0)}function lh(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 r=n[1]??"",s=n[2]?.trim()??"";return dh(r)&&(me(s)||[...s.matchAll(yh)].length>=2)}function dh(e){return ph.test(e)&&(fh.test(e)||mh.test(e)||gh.test(e))&&hh.test(e)&&bh.test(e)}var ph=/\b(?:file|source|content|output|document|payload|result|text|artifact|log)\b/i,fh=/\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,mh=/\btoo\s+(?:large|long)\s+to\s+(?:display|show|render|view|print|return|include)\s+(?:entirely|fully|in\s+full|completely)?\b/i,gh=/\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,hh=/\b(?:abbreviated|abridged|shortened|truncated|partial|compact|limited|excerpt|preview)\b/i,bh=/\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,yh=/(?:^|\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 Oe(e){return vh(e)||wh(e)||Sh(e)||kh(e)}function vh(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 kh(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 wh(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 Sh(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 Ah=[/(?:^|[\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],_h=/\b(?:no\s+errors?|0\s+errors?|no\s+failures?|0\s+failures?)\b/i;function ja(e){let t=Eh(e).trim();return t.length===0||Oe(t)||_h.test(t)?!1:Ah.some(n=>n.test(t))}function Eh(e){return e.replace(/\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])/g,"")}function Ps(e){let t=Th(e)??Rh(e),n=t?.[1]?.trim()??"",r=t?.[2]?.trim()??"";return r.length>0?{section:r,preamble:n}:null}function Th(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 Rh(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 Ns(e){let t=e.split(/\r?\n/).map(n=>n.trim()).filter(n=>n.length>0);return t.length>0&&t.every(n=>Va(n))}function Ha(e){return Ns(e)||Oe(e)||/^\s*expected(?:\s+[a-z][\w.-]{0,40})?\s*:/i.test(e)}function Ch(e){return!xh(e)&&Oe(e)&&!Oh(e)}function xh(e){return/:\s*\S/.test(e)&&!Va(e)}function Ih(e){let n=e.split(/\r?\n/).map(r=>r.trim()).filter(r=>r.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 Lh(e,t){let n=t+1;for(;n<e.length;){let r=e[n]?.trim()??"";if(r.length===0)return n;if(Fh(r))return n-1;n+=1}return e.length-1}function Va(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 Oh(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 Fh(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)||Ph(e)||Nh(e)||/^\s*E\s+AssertionError\b/i.test(e)}function Ph(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 Nh(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 zs(e){let t=[];Ro.lastIndex=0;let n;for(;(n=Ro.exec(e))!==null;){let r=Number.parseInt(n[1]??"",10);Number.isSafeInteger(r)&&t.push({line:r,body:(n[2]??"").trimEnd(),index:n.index})}return t}function zh(e){return/(?:^|[\r\n]|\s)\d{1,6}(?:[ \t]+|:\s+)\S/.test(e)}var Ro=/(?:^|[\r\n]|\s)(\d{1,6})\u2192([\s\S]*?)(?=(?:[\r\n]|\s)\d{1,6}\u2192|$)/g;function Za(e){let t=[];for(let n of e.split(/\r?\n/)){let r=/^\s*(\d{1,6})(?:[ \t]+|:\s+)(.*)$/.exec(n);r&&t.push({line:Number.parseInt(r[1],10),body:r[2].trimEnd()})}return t}function Ua(e){return zh(e)?[]:zs(e).map(({line:t,body:n})=>({line:t,body:n}))}function Ds(e){return e.every((t,n)=>n===0||t.line>e[n-1].line)}function $s(e){return/(?:^|[\r\n]|\s)\d{1,6}\u2192/.test(e)}function Dh(e){let t=B(e);return $s(t)?Ka(t):Wa(Za(t),t)}function Ka(e){let t=B(e);return Wa(Ua(t),t)}function Wa(e,t){return e.length<4||!Ds(e)?!1:$h(e.map(n=>n.body).join(`
|
|
3
|
+
`),{clipped:X(t)})}function $h(e,t){let n=[...e.matchAll(/(?:^|[\r\n])\s{0,3}#{1,6}\s+\S/g)].length,r=[...e.matchAll(/(?:^|[\r\n])\s*(?:[-*]\s+\S|\d+\.\s+\S)/g)].length,s=t.clipped?1:2;return n>=2&&(r>=s||/(?:^|[\r\n])\s*```/.test(e)||qh(e))}function qh(e){let t=e.split(/\r?\n/).map(n=>n.trim());return t.some((n,r)=>Jr(n)&&/^\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(t[r+1]??"")&&Jr(t[r+2]??"")&&Jr(t[r+3]??""))}function Jr(e){return/^\|.+\|\s*$/.test(e)}function Ga(e){let t=B(e),n=[...t.matchAll(/(?:^|[\r\n])\s{0,3}#{1,6}\s+\S/g)].length,r=[...t.matchAll(/(?:^|[\r\n])\s*(?:[-*]\s+\S|\d+\.\s+\S)/g)].length,s=/(?:^|[\r\n])\s*```/.test(t);return t.length>=160&&n>=2&&(r>=2||s)}function Mh(e){let t=B(e);return Bh(t)||Dh(t)||Ga(e)}function Bh(e){let t=e.split(/\r?\n/).map(n=>n.trim());return t.some((n,r)=>{let s=t[r+1]??"",i=t[r+2]??"",o=t[r+3]??"";if(!Qr(n)||!/^\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(s)||!Qr(i)||!Qr(o))return!1;let a=An(n);return a>=2&&An(s)===a&&An(i)===a&&An(o)===a})}function Qr(e){return/^\|.+\|\s*$/.test(e)}function An(e){return e.replace(/^\|/,"").replace(/\|$/,"").split("|").length}function jh(e){let t=B(e);if(!$s(t)||!X(t))return!1;let n=Ua(t);return n.length>=3&&(n[0]?.line??1)>1&&Ds(n)&&Hh(n)&&Vh(n)>=2}function Hh(e){return e.every((t,n)=>n===0||t.line===e[n-1].line+1)}function Vh(e){return e.filter(t=>t.body.trim().length>0).length}function qs(e){let t=e.trim().replace(/^(?:bash|edit|read|search|tool)\s+failure\s+/,""),n=Zh.exec(t);if(n===null)return!1;let r=Number.parseInt(n[1]??"",10),s=Number.parseInt(n[2]??"",10),i=Number.parseInt(n[3]??"",10);return Number.isSafeInteger(r)&&Number.isSafeInteger(s)&&Number.isSafeInteger(i)&&r>=1&&s>=r&&i>=s}var Zh=/^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 Uh(e){let t=e.trim();return Wh.test(t)?!1:Yh.some(n=>n.test(t))||Kh(t)}function Kh(e){return Gh.test(e)}var Wh=/^(?:[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,Gh=/(?:\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.-]*=)/,Yh=[/^\/[/*]/,/^#(?: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 Ms(e){let t=[];for(let n of e.split(/\r?\n/)){let r=n.trim(),s=Xh(r);s!==null&&t.push(s)}return Jh(t)}function Xh(e){if(Qh.test(e))return{kind:"source_location",line:e};if(eb.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?Uh(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 Jh(e){let t=new Set;return e.filter(n=>{let r=`${n.kind}:${n.line}`;return t.has(r)?!1:(t.add(r),!0)})}var Qh=/^[^\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,eb=/^(?!(?:[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 Ya(e){let t=B(e);if(t.length===0)return!1;let n=Ms(t);return Xa(n)||!Ja(n)?!1:n.length>=2||sb(t)&&n.length>=1}function tb(e){return Ya(e)}function nb(e){let t=B(e);if(!X(t))return!1;let n=Ms(t);return n.length>=3||rb(n)}function rb(e){if(Xa(e)||!Ja(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 Xa(e){return e.some(t=>t.kind==="kernel_log"&&Zn(t.line))}function Ja(e){let t=e.filter(n=>n.requiresMonotone===!0);return t.every((n,r)=>r===0||(n.lineNumber??0)>(t[r-1]?.lineNumber??0))}function sb(e){return/(?:^|[\r\n])\s*total output lines:\s*\d+\b/i.test(e)}function ib(e){let t=zs(e),n=new Set(t.map(s=>s.line)),r=t[0]?.index??-1;return r>0&&ob(e.slice(0,r))?!0:t.some((s,i)=>ab({body:s.body,currentLine:s.line,nextLine:t[i+1]?.line,arrowLines:n}))}function ob(e){let t=/(?:^|[\r\n]|\s)\d{1,6}(?:[ \t]+|:\s+)([#*/@|-]|\S+)/g;for(let n of e.matchAll(t))if(ps.test(n[1]??""))return!0;return!1}function ab(e){let t=/(?:^|[\r\n]|\s)(\d{1,6})(?:[ \t]+|:\s+)([#*/@|-]|\S+)/g;for(let n of e.body.matchAll(t)){let r=Number.parseInt(n[1]??"",10),s=n[2]??"";if(Number.isSafeInteger(r)&&!(e.arrowLines.has(r)&&!ps.test(s))&&(r>e.currentLine&&e.nextLine!==void 0&&r<e.nextLine||ps.test(s)))return!0}return!1}var ps=/^(?:[#*/@|-])/;function Kn(e){let t=B(e);return lb(t)||pb(t)||Ia(t)}function cb(e){let t=B(e);return t.length===0||Kn(t)?!1:ub(t)}function ub(e){if(!$s(e)||!X(e)||ib(e))return!1;let t=zs(e).map(({line:n,body:r})=>({line:n,body:r}));return t.length>=3&&Ds(t)&&db(t)&&t.filter(n=>n.body.trim().length>0).length>=2}function lb(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 db(e){return e.every((t,n)=>n===0||t.line===e[n-1].line+1)}function pb(e){return fb(e,/\b(?:read failed|failed to (?:read|open)|could not (?:read|open)|unable to (?:read|open))\b/gi)}function fb(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 mb(e){return me(e)||cb(e)}function gb(e){return me(e)||vb(e)||Fe(e)||qs(e)||Mh(e)||Ya(e)||Sb(e)||Ab(e)}function Bs(e){return me(e)||Fe(e)||qs(e)||Ka(e)||jh(e)||Ga(e)}function Fe(e){let t=B(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(r=>r.test(t)).length>=2||hb(t)>=2||bb(t)||yb(t)||wb(t)}function hb(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 bb(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 yb(e){return Zn(e)?!1:kb(e)>=2||/\btotal output lines:\s*\d+\b/i.test(e)&&Qa(e)>=2}function vb(e){return!Zn(e)&&Qa(e)>=2}function kb(e){return[...e.matchAll(/(?:^|[\r\n]|\s)\[\s*\d+(?:\.\d+)?]\s+\S/g)].length}function Qa(e){return[...e.matchAll(/(?:^|[\r\n]|\s)\d+:\s*\[\s*\d+(?:\.\d+)?]\s+\S/g)].length}function wb(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 Sb(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 Ab(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 _b(e){let t=Eb(e);return t!==null&&ec(t)}function ec(e){return!Tb(e)&&me(e)}function Eb(e){return/^\s*={2,}\s*Testing\b[^=\r\n]{1,180}={2,}\s*([\s\S]+)$/i.exec(e)?.[1]?.trim()??null}function Tb(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 tc(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 r=0;r<t.length;r+=1){let s=t[r],i=e.slice((s.index??0)+s[0].length,t[r+1]?.index).trim();if(i.length===0)return null;n.push(i)}return n}function Rb(e){let t=e.trim();if(t.length===0||sc(t))return null;let n=tc(t);if(n===null)return null;let r=!1;for(let s of n){let i=rc(s);if(i===null||i==="failure")return null;r||=i==="concrete"}return r?"concrete":"success"}function nc(e){let t=e.trim();if(t.length===0)return!1;let n=tc(t);return n!==null&&n.some(r=>rc(r)==="failure")}function rc(e){return Cb(e)?"failure":xb(e)?null:Ib(e)?"failure":Lb(e)?"concrete":Ob(e)?"success":null}function Cb(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 xb(e){return ec(e)||sc(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 Ib(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 Lb(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 Ob(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 sc(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 ic(e){let t=e.trim();if(oc(t))return null;let n=Rb(t);return n!==null?{consequenceBaseline:n==="success"?"low":"high"}:Fb(t)||Pb(t)||Nb(t)||zb(t)?{consequenceBaseline:"low"}:Em(t)?{consequenceBaseline:"medium"}:null}function oc(e){return La(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 Fb(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 Pb(e){return/(?:^|[\r\n]|\s)Ran\s+\d+\s+tests?\s+in\s+[\d.]+s\s+OK\s*$/i.test(e)}function Nb(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 zb(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)|(?:the\s+)?tests?\s+passed\s+with\s+(?:zero|0)\s+failures?[\s\S]{1,600}\b(?:intentionally|expectedly)\s+(?:emitted|produced|raised)\b[\s\S]{1,300}\b(?:verified|matched|asserted|confirmed)\b[\s\S]{0,160})[.!]?\s*$/i.test(e)}function js(e){return qb(e)||Ht(e,"subprocess failed",Vt)?!0:Qf.some(t=>Ht(e,t,Mb(t)))}function Db(e){return cc(e,t=>t===0)}function $b(e){let t=uc(Hb(e));return Ta.some(n=>Ht(t,n,Ub))}function qb(e){return cc(e,t=>t!==0)||Ht(e,"non-zero exit",Vt)||Ht(e,"nonzero exit",Vt)}function Mb(e){switch(e){case"exception":return Kb;case"traceback":return Wb;default:return Vt(e)}}var ac=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 cc(e,t){for(let n of e.matchAll(new RegExp(ac,"g"))){let r=Number.parseInt(n[1]??"",10);if(Number.isFinite(r)&&t(r))return!0}return!1}function uc(e){return e.replace(new RegExp(ac,"g")," ")}var Bb=(e,t,n)=>e.some((r,s)=>s>0&&t(r)&&e.slice(0,s).some(n)),jb=(e,t,n)=>e.findIndex(r=>t.test(r))>=0&&!e.slice(e.findIndex(r=>t.test(r))+1).some(r=>n.test(r));function Hb(e){return e.replace(/^(?:observation|bash failure|bash observation|tool failure|tool observation)\s+/,"")}function Ht(e,t,n){let r=typeof n=="function"?n(t):n;for(let s of Vb(e,t))if(!Zb(e,s.start,s.end,r))return!0;return!1}function Vb(e,t){let n=C(t);if(!n)return[];let r=new RegExp(`(^|[^a-z0-9_])(${Hs(n)})(?=$|[^a-z0-9_])`,"g"),s=[];for(let i of e.matchAll(r)){let o=(i.index??0)+(i[1]?.length??0);s.push({start:o,end:o+n.length})}return s}function Zb(e,t,n,r){for(let s of r)for(let i of e.matchAll(new RegExp(s.source,"g"))){let o=i.index??0,a=o+i[0].length;if(t>=o&&n<=a)return!0}return!1}function Vt(e){let t=Hs(C(e)),n=e==="permission denied"?String.raw`(?:no ${t}|${t} before (?:tool )?(?:invocation|execution))`:String.raw`no ${t}`;return[new RegExp(String.raw`\b${n}\b`),new RegExp(String.raw`\bwithout ${t}\b`)]}function Ub(e){let t=Hs(C(e));return[...Vt(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 Kb=[/\b(?:no exceptions?(?: occurred| raised| reported| found| seen| present)?|without (?:an? )?exceptions?|expected exceptions?(?: was| were)? (?:caught|handled|raised)|(?:caught|handled) (?:the )?expected exceptions?|exceptions?(?: was| were)? expected)\b/],Wb=[/\b(?:no tracebacks?(?: occurred| raised| reported| found| seen| present)?|without (?:a )?tracebacks?|expected tracebacks?(?: was| were)? (?:caught|handled|raised|produced)|tracebacks?(?: was| were)? expected)\b/];function Hs(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Vs(e){let t=Ps(e);if(t!==null){let n=lc(t.section);return n===null||Ih(t.preamble)||Ns(t.preamble)&&!jt(n)?null:n}return!e.includes(`
|
|
4
|
+
`)&&!Oe(e)&&Wn(e)?e:dc(e)}function lc(e){return dc(e)}function dc(e){let t=e.trim();if(t.length===0)return null;let n=t.split(/\r?\n/);for(let r=0;r<n.length;r+=1){let i=(n[r]??"").trim();if(Ha(i)){Ch(i)&&(r=Lh(n,r));continue}if(i.length>0&&!Oe(i)&&Wn(i))return i;let o=Gb(n,r);if(o!==null)return o}return null}function Gb(e,t){let n=e[t]?.trim()??"";if(!/^={2,}\s*[^=\n][^\n]*\s*={2,}$/.test(n))return null;let r=e.slice(t+1).find(i=>i.trim().length>0)?.trim();if(r===void 0||Ha(r))return null;let s=`${n}
|
|
5
|
+
${r}`;return Wn(s)?s:null}function Wn(e){return js(C(e))||jt(e)||oc(e)||nc(e)||ja(e)||xa(e)}function Zs(e){let t=Vs(e);return t!==null&&Wn(t)}function Pe(e){let n=/^\s*OBSERVATION:\s*([\s\S]+)$/i.exec(e)?.[1]?.trim()??"";return n.length>0&&n!=="{}"?n:null}function pc(e){return/^\s*(?:error|syntaxerror|typeerror|runtimeerror|valueerror|assertionerror):\s+\S/i.test(e)}function fc(e,t){return ty(t)||Yb(t)||Zf.test(e)||Gt.test(e)&&/\bmatch(?:es)?\b/.test(e)}function Yb(e){let t=Xb(e),n=t.filter(s=>s.path===void 0);return n.length>=3&&Co(n)&&Qb(n)?!0:[...Jb(t.filter(s=>s.path!==void 0)).values()].some(s=>s.length>=2&&Co(s))}function Xb(e){return[...e.matchAll(ey)].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 Co(e){return e.every((t,n)=>!Number.isSafeInteger(t.line)||t.body.length===0?!1:n===0||t.line>e[n-1].line)}function Jb(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 Qb(e){return e.some(t=>t.separator==="--"||t.separator.includes("|"))}var ey=/(?:^|\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 ty(e){return/^\s*(?:web search results for\s+(?:"[^"]+"|'[^']+'|`[^`]+`|[^:\r\n]{1,200})\s*:\s+\S|search\s+(?:returned|found)\s+(?:\d+|one|two|three|four|five|six|seven|eight|nine|ten|several|multiple)\s+(?:matches?|results?)\b[\s\S]{1,500}\b(?:at\s+lines?\s+\d{1,7}|(?:at|in)\s+(?:paths?|files?)\s+\S|(?:at|in)\s+\S+\.[a-z0-9]+(?::\d+)?))/i.test(e)}function ny(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 ry(e){let t=C(e);if(t.length<80||t.length>1800||sy(t))return!1;let n=xo(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/]),r=xo(t,[/\breproduction\s+(?:script|command)\b/,/\breproducer\b/,/\bverification\s+(?:script|command)\b/]);return n>=2&&r>=1}function xo(e,t){return t.reduce((n,r)=>n+(r.test(e)?1:0),0)}function sy(e){return[/\b(?:traceback|syntaxerror|typeerror|assertionerror|exceptiongroup|exception)\b/,/\b(?:segmentation fault|segfault|core dumped|crash(?:ed|es|ing)?|permission\s+denied)\b/,/\b(?:timed?\s+out|timeout|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/,/\b(?:exit\s+code\s+[1-9]\d*|(?:exited|returned)\s+(?:with\s+)?(?:code\s+)?[1-9]\d*|(?: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 iy(e){return Y(e,Ea)&&Gt.test(e)}function Gn(e){return oy.some(t=>t.test(e))}var oy=[/^(?: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 mc(e,t){let n=ay(e);return[...e.matchAll(t)].filter(r=>!cy(r.index,r.index+r[0].length,n)).length}function st(e,t){return mc(e,t)>0}function ay(e){let t=[],n=null,r=-1;for(let s=0;s<e.length;s+=1){let i=e[s],o=n===null?uy(e,s):null;o!==null?(n=o,r=s):n!==null&&i==="\\"?s+=1:n!==null&&i===n&&!dy(e,s,n)&&(t.push([r,s+1]),n=null,r=-1)}return n!==null&&t.push([r,e.length]),t}function cy(e,t,n){return n.some(([r,s])=>e<s&&t>r)}function uy(e,t){let n=e[t];return n==='"'||n==="`"||n==="'"&&!ly(e,t)?n:null}function ly(e,t){if(!$t(e[t-1]))return!1;let n=e[t+1];return $t(n)?!0:n!==void 0&&/\s/.test(n)?/s/i.test(e[t-1]??"")&&$t(py(e,t+1)):!1}function dy(e,t,n){return n==="'"&&$t(e[t-1])&&$t(e[t+1])}function $t(e){return e!==void 0&&/[A-Za-z0-9_]/.test(e)}function py(e,t){for(let n=t;n<e.length;n+=1)if(!/\s/.test(e[n]??""))return e[n]}function fy(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 my(e){let t=e.trim();if(t.length===0||hy(t)||Gn(t)||fy(t)||by(t))return!1;let n=gy(t);return n>=2||n>=1&&/\b(?:running|output|lint|linter|problems?\s+found)\b/i.test(t)}function gy(e){return mc(e,vy)}function hy(e){return/\b(?:please|should|must|expected output|final response|review your changes|follow the steps)\b/i.test(e)}function by(e){return gc(e)&&!/\bTest PASSED\b[\s\S]{0,240}\b(?:error|reported)\b/i.test(e)}function yy(e){return st(e,/(?:^|[\r\n]|\s)warning\b/gi)}function gc(e){return st(e,/(?:^|[\r\n]|\s)(?:error|fatal)\b/gi)||st(e,/\b(?:\[[^\]]*error[^\]]*]|level:\s*error)\b/gi)}var vy=/(?:^|[\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 Io(e){let t=B(e);return t.length===0?!1:ky(t)}function ky(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 hc(e){let t=e.trim();return bc(t)&&!Gn(t)&&!Ay(t)&&(wy(t)||Sy(t))}var bc=e=>e.length>0&&X(e)&&!yt(e),wy=e=>st(e,_y);function Sy(e){return st(e,Ey)||st(e,Ty)}var Ay=e=>st(e,Ry),_y=/(?:^|[\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,Ey=/(?:^|[\r\n])\s*(?:clang|gcc|g\+\+|cc|c\+\+|ld|nvcc|hipcc)\s*:\s*warning:\s+\S/gi,Ty=/(?:^|[\r\n])\s*CMake (?:Deprecation )?Warning at \S+:\d+\s+\(/gi,Ry=/(?:^|[\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 Yn(e,t={}){let n=B(e);if(n.length===0||Cy(n)||t.rejectCommandTextWrappers===!0&&xy(n))return null;let r=ic(n);if(r!==null&&!yt(n))return{shape:"test",consequenceBaseline:r.consequenceBaseline,source:!1};if(Fy(n)||t.allowNonWarningLinterFindings===!0&&yc(n))return{shape:"linter",consequenceBaseline:"high",source:!1};if(hc(n))return{shape:"readback",consequenceBaseline:"medium",source:!1};if(/^\s*diff --git\b/i.test(n)&&!Io(n))return null;if(Io(n))return{shape:"diff",consequenceBaseline:"high",source:!0};let s=t.allowReadOwnedFlattenedFilePayloads===!0?Ny(n):Py(n);return me(n)&&(t.allowReadOwnedFlattenedFilePayloads!==!0||jy(n))||s?{shape:"source",consequenceBaseline:"high",source:!0}:Bs(n)?{shape:"readback",consequenceBaseline:Fe(n)?"medium":"high",source:!1}:Dy(n)||t.allowReadOwnedFlattenedFilePayloads===!0&&zy(n)?{shape:"document",consequenceBaseline:"medium",source:!1}:null}function Cy(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 xy(e){return Gn(e)||Oy(e)||Iy(e)||Ly(e)}function Iy(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 Ly(e){return/^\s*(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=\s*["'`][\s\S]*\bdiff --git\b/i.test(e)}function Oy(e){return/^\s*---\s+expected\b[\s\S]*^\s*\+\+\+\s+actual\b/im.test(e)}function Fy(e){return yc(e)&&yy(e)}function yc(e){return my(e)&&!gc(e)}function Py(e){if(Xn(e)||!X(e)||Us(e))return!1;let t=L(e,Hy),n=L(e,Zy),r=L(e,vc),s=L(e,Uy),i=L(e,kc),o=L(e,Ky),a=L(e,wc),c=L(e,Sc),u=t+n*2+r+s+i+o+a+Math.min(c,3);return n>=1&&u>=4||t>=3&&u>=5||o>=3&&(i>=1||n>=1)}function Ny(e){if(Xn(e)||!X(e)||Us(e))return!1;let t=L(e,Vy),n=L(e,vc),r=L(e,kc),s=L(e,wc),i=L(e,Sc),o=t*2+r+s,a=n+r+s+Math.min(i,3);return By(e)&&t>=2&&o>=4||i>=3&&(n>=1||r>=1||s>=1)&&a>=6}function zy(e){if(Xn(e)||!X(e)||e.length<160||Us(e))return!1;let t=L(e,Wy),n=L(e,Gy),r=L(e,Yy),s=L(e,Xy);return/^\s{0,3}#{1,6}\s+\S/.test(e)&&t>=2&&(n>=2||r>=2||n>=1&&s>=2)}function Dy(e){if(!X(e)||yt(e))return!1;let t=$y(e);if(t.length<3||!My(t))return!1;let n=t.filter(a=>/^\|[\s\S]*\|/.test(a.body.trim())).length,r=t.filter(a=>Os(a.body.trim())).length,s=t.filter(a=>/^\d+(?:\.\d+){1,}\.?\s+\S/.test(a.body.trim())).length,i=t.filter(a=>/^\d+\s+of\s+\d+\s*$/.test(a.body.trim())).length,o=t.filter(a=>/\b[A-Z][A-Z0-9_]{2,}\b/.test(a.body)).length;return n>=2||r>=2||s>=1&&(i>=1||o>=1)||s>=2&&o>=1}function $y(e){let t=Za(e).filter(n=>n.body.trim().length>0);return t.length>=2?t:qy(e)}function qy(e){let t=[],n=/(?:^|\s)(\d{1,6})[:|-]\s*([\s\S]*?)(?=\s+\d{1,6}[:|-]\s*\S|$)/g,r;for(;(r=n.exec(e))!==null;){let s=Number.parseInt(r[1]??"",10),i=(r[2]??"").trim();Number.isSafeInteger(s)&&i.length>0&&t.push({line:s,body:i.slice(0,200)})}return t}function My(e){return e.every((t,n)=>n===0||t.line>e[n-1].line)}function L(e,t){return[...e.matchAll(t)].length}function Xn(e){return/[\r\n]/.test(e)}function Us(e){return/^\s*(?:please|should|must|expected output|final response|review your changes|follow the steps)\b/i.test(e)}function By(e){return/^\s*(?:\/\*|\/\/|#!\/|import\s+(?:type\s+)?(?:\{|\*|[A-Za-z_$]))/.test(e)}function jy(e){return Xn(e)||/(?:^|\s)\d{1,6}\u2192\S/.test(e)}var Hy=/(?:^|\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,Vy=/(?:^|\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,Zy=/(?:^|\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,vc=/(?:^|\s)(?:if|for|while|with)\s*\(|(?:^|\s)(?:yield|return)\s+[a-zA-Z_({][^\s;)]*|(?:^|\s)isinstance\s*\(/g,Uy=/(?:^|\s)[A-Za-z_][A-Za-z0-9_]*\s*=\s*(?:["'({[]|[A-Za-z_][A-Za-z0-9_.]*\()/g,kc=/(?:^|\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,Ky=/(?:^|\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,wc=/(?:^|\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,Sc=/(?:^|\s)[A-Za-z_$][A-Za-z0-9_$]*:\s*(?:null|true|false|["'[{(]|[A-Za-z_$][A-Za-z0-9_$]*(?:[,.}]|\s*=>))/g,Wy=/(?:^|\s)#{1,6}\s+\S/g,Gy=/(?:^|\s)(?:[-*]\s+\S|\d+\.\s+\S)/g,Yy=/`[^`]{1,120}`/g,Xy=/\b(?:api|cli|sdk|typescript|javascript|package|framework|rendering|configuration|options|interface|component|terminal|runtime|schema|server|client)\b/gi;function fs(e){let t=Pe(e);return t===null?null:Ac(t)}function Lo(e){let t=Pe(e);return t!==null&&Ac(t)===null&&Zs(t)}function Ac(e){let t=C(e),n=ic(e);if(n!==null)return Zs(e)?null:{shape:n.consequenceBaseline==="low"?"successful_test":"concrete_test_result",consequenceBaseline:n.consequenceBaseline};if(lh(e))return{shape:"abbreviated_file_view",consequenceBaseline:"low"};if(Y(t,xs)||ny(e))return{shape:"existing_observation",consequenceBaseline:"high"};if(nc(e)||ja(e)||pc(e))return null;if(ry(e))return{shape:"procedural_harness_observation",consequenceBaseline:"low"};let r=Yn(e,{allowNonWarningLinterFindings:!0});return r!==null?{shape:r.shape==="test"?"concrete_test_result":"existing_observation",consequenceBaseline:r.consequenceBaseline}:iy(t)||_b(e)||fc(t,e)?{shape:"existing_observation",consequenceBaseline:"high"}:null}function Jy(e){let t=Pe(e);return t===null||Zs(t)?null:fs(e)}function Qy(e){let t=Pe(e);if(t===null)return!1;let n=Ps(t);return n===null?(Oe(t)||Oo(t))&&Vs(t)===null:Ns(n.preamble)||lc(n.section)===null&&(Oe(t)||Oo(n.section))}function ev(e){let t=Pe(e);return t===null?!1:Ps(t)!==null&&Vs(t)!==null}function Oo(e){return e.split(/\r?\n/).some(t=>Oe(t.trim()))}function Xt(e){return tv(e.toolFamily)}function _c(e){let t=Xt(e);if(t)return t;let n=C(`${e.title} ${e.summary??""}`),r=[];return(le(n,"wants to read")||le(n,"wants to inspect")||zt(n,"read")||zt(n,"inspect"))&&r.push({toolFamily:"read",risk:1,order:0}),(le(n,"search files")||le(n,"search file contents"))&&r.push({toolFamily:"search",risk:1,order:1}),le(n,"search the web")&&r.push({toolFamily:"web",risk:2,order:2}),(le(n,"wants to write")||zt(n,"write"))&&r.push({toolFamily:"write",risk:3,order:3}),(le(n,"wants to edit")||zt(n,"edit"))&&r.push({toolFamily:"edit",risk:3,order:4}),(le(n,"shell command")||le(n,"wants to run"))&&r.push({toolFamily:"bash",risk:3,order:5}),r.sort((s,i)=>i.risk-s.risk||s.order-i.order)[0]?.toolFamily??null}function _e(e){return e==="bash"||e==="exec_command"||e==="run_shell_command"}function tv(e){let t=e?.trim().toLowerCase()??"";return t.length>0?t:null}function nv(e,t={}){if(e===void 0)return null;let n=Jt(e);if(n===null||typeof n.wall_time!="string"||typeof n.output!="string"||!Jn(n.wall_time)||iv(n)||n.output.trim().length===0)return null;let r=Ec(n,t);return r==="invalid"?null:{output:n.output,wallTime:n.wall_time,...r!==void 0?{exitCode:r}:{}}}function rv(e){if(e===void 0)return!1;if(/^\s*\{\s*(?:"exit_code"\s*:|"wall_time"\s*:|"output"\s*:)/.test(e))return!0;let t=Jt(e);return t?.truncated===!0?!0:t!==null&&Object.prototype.hasOwnProperty.call(t,"wall_time")&&Object.prototype.hasOwnProperty.call(t,"output")}function Jt(e){try{let t=JSON.parse(e);return t===null||typeof t!="object"||Array.isArray(t)?null:t}catch{return null}}function sv(e){if(e===void 0)return!1;let t=Jt(e);return t!==null&&Object.keys(t).length===0}function Jn(e){return/^\d+(?:\.\d+)?\s*(?:ms|s|sec|secs|second|seconds)$/i.test(e.trim())}function iv(e){let t=new Set(["exit_code","output","wall_time"]);return Object.keys(e).some(n=>!t.has(n))}function Ec(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 _n(e,t){if(t.invalid===!0||t.wallTime!==void 0&&!Jn(t.wallTime))return null;let n=lv(e);if(n.text.trim().length===0)return null;let r=ov(n.suffix);if(r===null||t.exitCode!==void 0&&r.exitCode!==void 0||t.wallTime!==void 0&&r.wallTime!==void 0)return null;let s=t.exitCode??r.exitCode,i=t.wallTime??r.wallTime;return{output:n.text,...i!==void 0?{wallTime:i}:{},...s!==void 0?{exitCode:s}:{}}}function ms(e){let t=e.replace(/^"|"$/g,"").trim();return/^-?\d+$/.test(t)?Number.parseInt(t,10):null}function ov(e){let t=e.trim(),n={};for(;t.length>0;){if(t==="}")return n;let r=/^,\s*"([a-z_]+)"\s*:\s*/.exec(t);if(!r)return null;switch(t=t.slice(r[0].length),r[1]){case"exit_code":{let s=av(t);if(s===null||n.exitCode!==void 0)return null;n.exitCode=s.exitCode,t=s.rest;break}case"wall_time":{let s=cv(t);if(s===null||n.wallTime!==void 0)return null;n.wallTime=s.wallTime,t=s.rest;break}case"truncated":{let s=uv(t);if(s===null)return null;t=s;break}default:return null}}return n}function av(e){let t=/^(?:"([+-]?\d+)"|([+-]?\d+))/.exec(e),n=t?ms(t[1]??t[2]??""):null;return t===null||n===null?null:{exitCode:n,rest:e.slice(t[0].length).trim()}}function cv(e){let t=/^"([^"]+)"/.exec(e),n=t?.[1]??"";return!t||!Jn(n)?null:{wallTime:n,rest:e.slice(t[0].length).trim()}}function uv(e){let t=/^true\b/.exec(e);return t?e.slice(t[0].length).trim():null}function lv(e){let t="";for(let n=0;n<e.length;n+=1){let r=e[n];if(r==='"')return{text:t,suffix:e.slice(n+1)};if(r!=="\\"){t+=r;continue}let s=e[n+1];if(s===void 0)break;switch(n+=1,s){case"n":t+=`
|
|
6
|
+
`;break;case"r":t+="\r";break;case"t":t+=" ";break;case"u":t+=dv(e,n),n+=pv(e,n)?4:0;break;default:t+=s;break}}return{text:t,suffix:""}}function dv(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 pv(e,t){return/^[0-9a-f]{4}$/i.test(e.slice(t+1,t+5))}function fv(e){if(e===void 0)return null;let t=gv(e);return t!==null?t:Jt(e)!==null?null:mv(e)}function mv(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 i=ms(t[1]??""),o=t[2]??"";return _n(e.slice(t[0].length),{...i!==null?{exitCode:i}:{invalid:!0},wallTime:o})}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 i=ms(n[2]??"");return _n(e.slice(n[0].length),{...i!==null?{exitCode:i}:{invalid:!0},wallTime:n[1]??""})}let r=/^\s*\{\s*"wall_time"\s*:\s*"([^"]+)"\s*,\s*"output"\s*:\s*"/.exec(e);if(r)return _n(e.slice(r[0].length),{wallTime:r[1]??""});let s=/^\s*\{\s*"output"\s*:\s*"/.exec(e);return s?_n(e.slice(s[0].length),{}):null}function gv(e){let t=Jt(e);if(t===null||t.truncated!==!0||typeof t.wall_time!="string"||typeof t.output!="string"||!Jn(t.wall_time)||hv(t)||t.output.trim().length===0)return null;let n=Ec(t);return n==="invalid"?null:{output:t.output,wallTime:t.wall_time,...n!==void 0?{exitCode:n}:{}}}var hv=e=>{let t=new Set(["exit_code","output","truncated","wall_time"]);return Object.keys(e).some(n=>!t.has(n))};function bv(e){return _e(e)||e==="edit"?"native":vv.has(e??"")?"unsupported":"exact"}function yv(e,t){let n=rv(e);if(t==="unsupported")return{kind:n?"unsupported":"raw"};let r=nv(e,{coerceStringExitCode:t==="native"});if(r!==null)return{kind:"valid",output:r};if(!n)return{kind:"raw"};if(t==="exact")return{kind:"invalid"};let s=fv(e);return s===null?{kind:"invalid"}:{kind:"recovered",output:s}}var vv=new Set(["read","search","web","write"]);function xn(e){let t=typeof e=="string"?[e]:e,n=t.map(o=>xe(o).map(a=>a.trim()).filter(a=>a&&!Qt(a))),r=t.length<2||!Sv.test(t[0]??""),s=n.map(o=>r?o.filter(a=>(!Tc.test(a)||Tv.test(a))&&!Ev.test(a)):[]),i=o=>o.flat().filter(Boolean).join(". ");return{authoritative:i(s),fields:s.map(o=>o.join(". ")),positive:i(s.map(o=>o.filter(a=>!_v.test(a))))}}function es(e,t){let n=!1,r=[];for(let s of xe(e)){/^(?:but|however|yet)\b/i.test(s.trim())&&(n=!1);let i=t(s);n||=i&&xn(s).authoritative.length===0,!n&&!i&&r.push(s),".!?,".includes(s.trimEnd().at(-1)??"")&&(n=!1)}return r.join(". ")}var kv=e=>Rv.test(e)||Nn.test(e)&&!Nn.test(e.replace(Cv," quoted-content "))||Tc.test(Fo(e))||Qt(Fo(e),!1),xe=e=>e.split(wv),Qt=(e,t=!0)=>(t||!e.trim().toLowerCase().startsWith("observation:"))&&Av.test(e.replace(/^(?:but|however|yet)\b[,:]?\s*/i,"")),Fo=e=>xe(e).reverse().find(Nn.test,Nn)??"",wv=/(?:(?<=[.!?])(?<!\beg\.)(?<!\be\.g\.)|;)\s+|(?<!\ball\s)(?<!\bnothing\s)(?<!\banything\s)(?=\b(?:but|however)\b[,:]?\s)|(?=\byet\b[,:]?\s+(?:the\s+)?(?:execution|command|process|operation|tool|result|no|not|never|without|neither)\b)|\b(?:and|while)\s+(?=(?:no|not|never|without|neither)\b)\s+/iu,Sv=/^\s*(?:hypothetical|counterfactual|conditional|simulated)\b/i,Av=/^(?:["'`]|observation:\s*|for reference\b|(?:(?:the|an?|this|that)\s+)?reference\s+(?:text|material|example|fixture|template)\s*:|(?:(?:the|an?|this|that)\s+)?(?:reference\s+(?:text|material|example|fixture|template)|documentation|document|source|log)\s+(?:says|states|contains|quotes|explains|describes|shows|includes|documents|mentions|notes)\b|(?:(?:the|an?|this|that)\s+)?(?:example|fixture|template)(?:\s+(?:fixture|template))?\s*(?::|(?:says|states|contains|quotes|explains|describes|shows|includes|documents|mentions|notes)\b)|(?:(?:the|an?|this|that)\s+)?(?:previous|prior)\s+(?:example|fixture|template)\b|expected\s+(?:result|text|output|diagnostic)\s*:|(?:hypothetical|quoted)\b|if\b|unless\b|when\b|suppose\b|one sentence says\b|(?:fatal|error|failure|exception|diagnostic)\b[^.!?;]*\b(?:was|is)\s+(?:an?\s+)?(?:previous|prior)\s+(?:example|fixture|template)\b)/i,Tc=/\b(?:hypothetical(?:ly)?|counterfactual(?:ly)?|possible|possibly|potential|potentially|would|could(?!\s+not\b)|might|may|cannot\s+be\s+(?:confirmed|ruled\s+out))\b/i,_v=/^(?![\s\S]*\bno\s+(?:output|diagnostic|evidence)(?:\s+or\s+(?:output|diagnostic|evidence))?\s+channels?\s+(?:is|are)\s+missing\b)[\s\S]*\b(?:no(?!\s+such\s+file\s+or\s+directory\b)|without|neither|nor|(?:not|never)\s+(?:been\s+)?(?:returned|delivered|produced|reported|observed|shown|contained|included|required|needed|pending|available|occur(?:red)?|exist(?:s|ed)?|start(?:ed)?|begin|begun|fail(?:ed)?|crash(?:ed)?|terminate[ds]?)|(?:is|are|was|were)\s+(?:not|never)\s+(?:an?\s+)?(?:failure|error|fault|crash)|(?:does?|did)\s+not\s+(?:represent|indicate|report|show|constitute)\s+(?:an?\s+)?(?:failure|error|fault|crash)|(?:record|diagnostic|report|source|document|text|example|fixture)\s+den(?:y|ies|ied)|den(?:y|ies)\s+that|lack(?:s|ed)?|(?:fails?|failed)\s+to\s+(?:report|show|contain|include|observe))\b/i,Ev=/\b(?:no\s+(?:runtime\s+)?failure\s+(?:occurred|was\s+(?:observed|reported))|(?:runtime\s+)?failure\s+(?:did\s+not|never)\s+occur|(?:command|process|execution|operation|result|outcome)\s+(?:is|are|was|were)\s+(?:not|never)\s+(?:an?\s+)?(?:failure|error|fault|crash)|(?:command|process|execution|operation|result|outcome)\s+(?:does?|did)\s+not\s+(?:represent|indicate|report|show|constitute)\s+(?:an?\s+)?(?:failure|error|fault|crash)|(?:(?:exit|return)\s+(?:code|status)\s+(?:0|zero)|runtimeerror|traceback|segmentation\s+fault)\b[^.!?;]*\b(?:was\s+|is\s+)?(?:expected|ruled\s+out|excluded|unconfirmed|not\s+(?:returned|reported|observed|confirmed))|(?:report|record|result|outcome|diagnostic)\s+(?:rules?\s+out|excludes?)\s+(?:(?:exit|return)\s+(?:code|status)\s+(?:0|zero)|runtimeerror|traceback|segmentation\s+fault)|no\s+(?:authorization|permission|approval|decision)\s+(?:is|was)?\s*(?:required|needed|pending)|(?:authorization|permission|approval|decision)\s+(?:is|was)\s+not\s+(?:required|needed|pending)|(?:would|could|cannot|can\s+not|might|may)\b[^.!?;]*\b(?:runtime\s+failure|authorization\s+required|exit\s+(?:code|status)))\b/i,Tv=/\b(?:type)?error:[\s\S]*(?:\b(?:cannot\s+read|undefined|null)\b[\s\S]*\bat\b|\bat\b[\s\S]*\b(?:cannot\s+read|undefined|null)\b)/i,Rv=/\b(?:incomplete|partial|truncated|abbreviated)\s+(?:runtime\s+)?diagnostic\b/i,Cv=/(["'`])(?:\\.|(?!\1)[^\\])*\1/gu,Nn=/\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault|fatal|(?:exit|return)\s+(?:code|status)\s+-?\d+|(?:failed|failure|error|exception|fault|crash(?:ed)?))\b/i;function xv(e){let t=Iv(e),n=!e.signals.textFallbackSuppressed&&Po(e,!1);if(!e.signals.structuredOutputExitFailure&&!n&&!t&&!Lv(e))return null;let r=t?"outcome_only":!e.signals.textFallbackSuppressed&&Po(e,!0)?"diagnostic":"indeterminate";return{failureDetail:r,consequenceBaseline:r==="outcome_only"?"medium":"high"}}function Iv(e){let t=e.signals.diagnosticStructuredToolOutput;return!e.signals.textFallbackSuppressed&&(Ov(e)||_e(e.toolFamily)&&No(e.summary??"")||e.signals.structuredOutputEnvelope.kind==="valid"&&t?.exitCode!==void 0&&t.exitCode!==0&&No(t.output))}function Po(e,t){let n=e.signals;return n.strongSourceRuntimeDiagnostic||n.structuredOutputFailureDiagnostic||n.editOutputOutcome==="failure"||n.searchFailureDiagnostic||n.readFailureDiagnostic||n.diagnosticObservationTranscript||n.commandActualDiagnosticObservationTranscript||!!(n.commandDiagnosticObservationTranscript&&!n.commandDiagnosticReferenceObservationTranscript)||!!(n.rawToolOutputFailureDiagnostic&&(t||!n.commandDiagnosticReferenceObservationTranscript))||n.structuredOutputEnvelope.kind==="raw"&&_e(e.toolFamily)&&js(C(e.summary??""))&&!Rc(e.summary??"")&&(t||!n.commandDiagnosticReferenceObservationTranscript)}function Lv(e){let t=e.signals.observationSyntax;return!e.signals.textFallbackSuppressed&&e.terminalFailureText&&!e.signals.commandDiagnosticReferenceObservationTranscript&&!(t?.origin==="transcript"&&t.toolFamily===void 0)&&!e.searchResultText&&(!(t?.kind==="payload"&&(t.origin==="read_output"||t.origin==="structured_output"))||e.signals.strongSourceRuntimeDiagnostic)}function Ov(e){return _e(e.toolFamily)&&Rc(e.summary??"")}function Rc(e){return Pv.test(e.toLowerCase().replace(/\W+/g," ").trim())}var Fv=e=>Nv.test(e.replace(/(?:[a-z]:)?[\\/]?[\w.-]+(?:[\\/][\w.-]+)+/gi," ").replaceAll("standard error",""));function No(e){let t=C(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)}var Pv=/^(?:(?:no output|without output|no stdout no stderr|no stderr no stdout|empty stdout empty stderr|stdout empty stderr empty)\s+(?:(?:command|process|tool|subprocess)\s+)?(?:(?:exit|return)(?:ed)?\s+(?:with\s+)?(?:code|status)\s*(?:is|was)?\s*-?[1-9]\d*|(?:failed\s+with\s+)?(?:a\s+)?non[- ]?zero\s+exit)|(?:the )?(?:command|process|tool|subprocess)\s+(?:exit|return)(?:ed)?\s+(?:with\s+)?(?:code|status)\s*(?:is|was)?\s*-?[1-9]\d*\s+(?:no|without)\s+(?:(?:standard|error) output|stdout|stderr|diagnostic (?:text|output))(?:\s*(?:and|or)?\s*(?:(?:standard|error) output|stdout|stderr|diagnostic (?:text|output))){1,3}\s+(?:(?:was|were)\s+)?(?:retained|captured|available|produced))$/i,Nv=/failed|failure|fatal|error|exception|crash|runtimeerror|traceback/i;function zv(e){let{text:t,authoritativeText:n,scopeText:r,diagnosticScopeText:s=r,documentPayload:i=!1,contradiction:o}=e,a=t.toLowerCase(),c=n.toLowerCase(),u=qv(t),l=xe(s),d=xe(a).filter(_=>!Qt(_)).join(". ");if(new Set(u).size>1)return null;let p=xe(a).some(zo)&&U(d,jv)&&!jb(l,Ic,xc),f=Lc.test(a)&&Vv.test(a),m=p&&(!i||f||!Qn.test(r)),g=!Ks.test(a)&&(xe(a).some(Dv)||Bb(l,zo,$v)),y=!U(`${a} ${c} ${r.toLowerCase()}`,["not a failure"])&&!U(a,Wv)&&(u.some(_=>_!==0)&&U(a,Uv)&&U(a,Kv)||U(c,Zv)),v=Yv.exec(t),S=v!==null&&(Number(v[1])<1||Number(v[1])>Number(v[2])||Number(v[2])>=Number(v[3])),b=!o&&(u.includes(0)||U(a,["return code zero","exit status zero"]))&&U(d,Mv)&&U(a,["complete","completed","finished","succeeded","successful"])&&U(a,["complete","terminal","result:"])&&!Fv(d)&&!a.includes("diagnostic channel is missing");return g&&(m||f)&&(u.length>0||f||m)?"runtime_diagnostic":y?"absent_failure":Jv.test(t)&&!S?U(a,Xv)?"source_diagnostic":"source_limit":b?"terminal_success":null}var U=(e,t)=>t instanceof RegExp?t.test(e):t.some(n=>e.includes(n)),zo=e=>!Hv.test(e)&&(xc.test(e)||Lc.test(e))&&U(e,[" at ","diagnostic","fatal:","error:","stderr","crashed","failed"])&&!Qn.test(e)&&!Ic.test(e)&&!Qt(e),Dv=e=>Cc.test(e)&&!Qn.test(e)&&!Ks.test(e),$v=e=>!Qt(e)&&(Cc.test(e)||Bv.test(e))&&!Ks.test(e);function qv(e){return[...e.matchAll(Gv)].flatMap(t=>{let n=e.slice(0,t.index).split(/[.!?;\n]/).at(-1)?.toLowerCase()??"";if(U(n,Qn))return[];let r=t[1]==="zero"?0:Number.parseInt(t[1]??"",10);return Number.isFinite(r)?[r]:[]})}var Mv="command|process|subprocess|worker|execution|invocation|operation".split("|"),Cc=/\b(?:execution|operation|invocation|command|process|subprocess|worker|tool)(?:\s+invocation)?\b[^.!?;]*\b(?:start(?:ed)?|run|ran|execute[ds]?|occurred|completed|finished|terminated|crashed|failed|exited|performed)\b/i,Bv=/\b(?:execution|operation|invocation|command|process|subprocess|worker|tool)(?:\s+invocation)?\b[^.!?;]*\b(?:expected\s+to|would(?:\s+have)?|could(?:\s+have)?|might|may)\s+(?:have\s+)?fail(?:ed)?\b/i,Ks=/\b(?:execution|operation|invocation|command|process|subprocess|worker|tool)(?:\s+invocation)?\b[^.!?;]*\b(?:did|was|has)\s+not\s+(?:start(?:ed)?|run|execute[ds]?|occurred|perform|produce|return)|\bnever\s+(?:started|ran|executed|occurred)|\bno\s+(?:tool\s+call|invocation|execution)\s+(?:occurred|started)\b/i,jv="exit|return|started|ran|executed|occurred|terminated|completed|finished|ended|failed|crashed".split("|"),xc=/\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault|invalid\s+memory\s+access|memory\s+allocation\s+failed|out\s+of\s+memory|assertion\s+failed|command\s+not\s+found|no\s+such\s+file\s+or\s+directory|symbol\s+lookup\s+error|library\s+load\s+error|uncaught\s+exception)\b|\b(?:fatal:|error:)\s+\S/i,Ic=/(?:\b(?:no|without|not)\s+(?:an?\s+)?(?:runtime\s+failure|failure|error|exception|fault|crash(?:ed)?|traceback|segmentation\s+fault)\b|\b(?:den(?:y|ies|ied)|ruled\s+out|excluded|unconfirmed|cannot\s+be\s+confirmed)\b[^.!?;]*\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault)\b|\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault|fatal:)\b[^.!?;]*\b(?:was\s+)?(?:(?:not|never)(?!\s+found\b)|ruled\s+out|excluded|unconfirmed|cannot\s+be\s+confirmed)\b|\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault|fatal:|error:)\b[^.!?;]*\b(?:prior|previous|example|fixture|template)\b|\b(?:if|unless|when|may|might|could(?!\s+not\b)|would|hypothetical|counterfactual|conditional|simulated)\b[^.!?;]*\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault|fatal:|error:)\b|\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault|fatal:|error:)\b[^.!?;]*\b(?:if|unless|when|may|might|could(?!\s+not\b)|would|hypothetical|counterfactual|conditional|simulated)\b|\b(?:hypothetical|counterfactual|conditional|simulated)\b)/i,Lc=/\bcomplete (?:stderr|terminal output|runtime diagnostic|diagnostic)\b/i,Hv=/\b(?:incomplete|partial|truncated|abbreviated)\s+(?:runtime\s+)?diagnostic\b/i,Vv=/(?=[\s\S]*\b(?:contains|shows|reports|emits|returned|produced|emitted)\b)(?=[\s\S]*\b(?:breach|violat|crash(?:ed)?|runtime invariant|runtimeerror|typeerror|traceback|failure|fault)\b)/i,Zv=/no diagnostic (?:payload|text|output|content)|failure (?:output|evidence) is explicitly empty/i,Uv=/stdout: empty|stdout empty|standard output field is present and empty/i,Kv=/stderr: empty|stderr empty|standard error field is present and empty/i,Wv=["outcome-only record","outcome-only result","outcome-only evidence"],Qn=/\b(?:did\s+not|never|not(?!\s+found\b)|without|if|unless|when|may|might|could|would|expected|hypothetical)\b/i,Gv=/\b(?:exit(?:ed)?(?:\s+with)?\s+(?:code|status)|exit[\s_-](?:code|status)|return(?:ed)?(?:\s+with)?[\s_-]?(?:code|status)|returned code)\s*(?::|is|was|reports?|returned)?\s*(-?\d+|zero)\b/gi,Yv=/\b(?:returned|showing|displaying)\s+lines?\s+(\d+)\s*(?:-|through|to)\s*(\d+)\s+of\s+(\d+)\b/i,Xv="permission denied|operation not permitted|no such file or directory|failed to read|could not read|unable to read|failed to open|could not open|unable to open".split("|"),Jv=/^(?=[\s\S]*\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)|(?:maximum|max|allowed|configured|read)(?:\s+(?:allowed|read|token))?\s+(?:size|tokens?|limit|window)\s+(?:is|was)?\s*(?:exceeded|reached)|(?:(?:source|file|document|read|log)\s+)?(?:content|output|payload|window|view|read)\s+(?:was\s+)?(?:truncated|abbreviated)|(?:additional\s+source|remainder|rest|remaining\s+lines?)\s+(?:are\s+|remain\s+|was\s+)?(?:intentionally\s+)?(?:omitted|truncated|clipped|outside\s+(?:the\s+)?returned\s+view)|(?:bounded|measured)\s+partial\s+(?:source\s+)?view)\b)(?=[\s\S]*(?:^|[.!?]\s+)(?:the\s+)?(?:(?:(?:file|source|document|read|log)\s+)?(?:content|output|payload|window|view|read)|(?:returned|showing|displaying)|read\b(?:(?![.!?]\s+)[\s\S])*\b(?:content|output|payload|window|view|lines?))\b(?:(?![.!?]\s+)[\s\S])*(?:\((?:\d+(?:\.\d+)?\s*(?:kb|mb|gb|b)|\d+\s*tokens?)\)|\blines?\s+\d+(?:\s+(?:through|to)\s+|\s*-\s*)\d+\s+of\s+(?:a\s+)?\d+(?:[- ]line\s+source)?\b|\b\d+\s+lines?\s+(?:beginning|starting)\s+at\s+offset\s+\d+\s+from\s+(?:a\s+)?(?:source\s+)?(?:totaling\s+)?\d+\s+(?:total\s+)?lines?\b))[\s\S]+$/i;function Do(e,t=!1){let n=typeof e=="string"?[e]:e,r=n.map(g=>g.replace(/^\s*OBSERVATION:\s*(?=the\s+user\b)/i,"")),s=n.length>1&&r.slice(1).some(g=>g.trim())?r.slice(1):r,i=s.join(". ").replace(En," quoted-content "),o=nk.test(i)&&xe(i).some(g=>Oc.test(g)&&!rk.test(g));if(xn(r).authoritative.length===0)return o?"document_payload":null;let c=xn(s.map(g=>es(g,ts))),u=xn(r.map(g=>es(g,ts))),l=c.authoritative.replace(En," quoted-content "),d=c.positive.replace(En," quoted-content "),p=u.positive.replace(En," quoted-content "),f=zv({text:d,authoritativeText:l,scopeText:r.join(". "),diagnosticScopeText:r.map(g=>es(g,ts)).join(". "),documentPayload:o,contradiction:t});if(f!==null)return f;let m=ek.find(g=>Qv[g].test(tk.includes(g)?d:l)&&(g!=="authorization_control"||!t&&!ik(p)));return m!==void 0?m:o?"document_payload":null}var Qv={expected_source_diagnostic:/^(?=[\s\S]*\b(?:(?:complete|completed|bounded)\s+(?:diagnostic|validation)\s+(?:check|result|record)|(?:diagnostic|validation)\s+(?:check|result|record)\s+(?:is\s+)?complete)\b)(?=[\s\S]*\b(?:(?:expected|requested)\s+(?:observation|diagnostic|result)|expectedly\s+(?:failed|reported|returned))\b)(?=[\s\S]*\b(?:(?:failed|failure|invalid|error)\s+(?:source|document|syntax|parse|validation)|(?:source|document|syntax|parse)(?:\s+validation)?\s+(?:failed|failure|invalid|error))\b)[\s\S]+$/i,authorization_control:/^(?!\s*(?:observation:\s*)?(?:log:|["'`]))(?![\s\S]*\btraceback\s+follows\b)(?=[\s\S]*\b(?:authorization|permission|approval|decision)\s+(?:(?:is|was|remains)\s+)?(?:required|needed|pending|declined|denied|rejected)\b)(?=[\s\S]*(?:\bbefore\b[\s\S]*\b(?:operation|invocation|execution|capability|tool|command)\b|\b(?:required|needed)\s+(?:first|before\s+execution)\b))(?=[\s\S]*\b(?:(?:the\s+)?(?:capability|tool|command|operation)\s+(?:has\s+not|was\s+not|did\s+not)\s+(?:been\s+)?(?:invoked|executed|run|started)|execution\s+(?:has\s+not|was\s+not|did\s+not)\s+(?:start(?:ed)?|begin|begun)|no\s+(?:tool\s+call|invocation|execution)\s+(?:occurred|started|was\s+(?:performed|run)))\b)(?=[\s\S]*\b(?:no\s+(?:execution\s+)?result\s+(?:exists|was\s+(?:produced|created|returned))|(?:an?\s+)?(?:execution\s+)?result\s+(?:is\s+absent|does\s+not\s+exist|was\s+not\s+(?:produced|created|returned)))\b)[\s\S]+$/i,outcome_failure:/^(?=[\s\S]*\b(?:(?:complete|terminal)\s+(?:command|process|terminal|execution|outcome|result|record)|(?:command|process|terminal|execution|outcome|result|record)\s+(?:(?:is|was)\s+)?(?:complete|terminal)|execution\s+(?:is\s+)?complete|execution\s+(?:completed|finished)|outcome-only\s+record)\b)(?=[\s\S]*(?:\b(?:exit|return)(?:ed)?\s+(?:with\s+)?(?:code|status)?\s*(?:is\s+|was\s+|reports?\s+|returned\s+)?-?[1-9]\d*\b|\bnon[- ]?zero\s+(?:exit|return)\b))(?=[\s\S]*(?:\boutcome-only\s+(?:record|result|evidence)\b|\b(?:output|diagnostic)(?:\s+and\s+(?:output|diagnostic))?\s+(?:payloads?\s+|content\s+|channels?\s+)?(?:are|were|is|was)\s+(?:not\s+part\s+of|excluded\s+from)\b))[\s\S]+$/i},ek=["outcome_failure","expected_source_diagnostic","authorization_control"],tk=["outcome_failure","expected_source_diagnostic"],Oc=/^(?:(?:it|(?:the|this|that)\s+(?:returned\s+)?(?:document|source|payload))\s+|its\s+(?:contents?|body|text)\s+|(?:within|inside)\s+(?:it|(?:the|this|that)\s+(?:document|source|payload))[,;:]?\s+(?:(?:the|its)\s+(?:contents?|body|text)\s+)?|(?:a|the)\s+(?:complete|full)\s+(?:document|source)\s+(?:read|payload)\b[^.!?;]*\b)(?:contains?|includes?|quotes?|explains?|says?|states?|reports?|describes?)\b/i,ts=e=>Oc.test(e),nk=/\b(?:a|the)\s+(?:complete|full)\s+(?:document|source)\s+(?:read|payload)\b\s+(?:(?:was\s+)?(?:returned|delivered|produced)(?:\s+in\s+full)?|(?:contains?|includes?|explains?|quotes?|says?|states?|reports?|describes?))\b/i,En=/(["'`])(?:\\.|(?!\1)[^\\])*\1/gu,rk=/\b(?:(?:does?|did|is|was)\s+not\s+(?:contain|include)\w*\s+(?:an?\s+|any\s+)?(?:content|payload|body|text|document|source)|(?:contain|include)\w*\s+(?:no|nothing|neither)\s*(?:content|payload|body|text|document|source)?)\b/i,sk=/\b(?:(?:execution|operation|invocation|command|process|tool)(?:\s+invocation)?\s+(?:(?:(?:did|was)\s+)?(?:(?:later|subsequently)\s+)?(?:start(?:ed)?|run|ran|execute[ds]?|occurred|completed|finished|terminated|crashed|failed|exited|performed)|(?:(?:later|subsequently)\s+)?returned\s+(?:output|a\s+result))|(?:an?\s+)?result\s+(?:was\s+)?(?:(?:later|subsequently)\s+)?(?:produced|returned))\b/i,ik=e=>sk.test(e);function ok(e){return Gn(e)||pc(e)||uk(e)||ak(e)||ck(e)}function ak(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 ck(e){return/^\s*(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=\s*["'`][\s\S]*\bdiff --git\b/i.test(e)}function uk(e){return/^\s*---\s+expected\b[\s\S]*^\s*\+\+\+\s+actual\b/im.test(e)}function lk(e){return sh(e)||pg(e)||dk(e)}function dk(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(r=>r.trim()).filter(r=>r.length>0&&!Yt(r)).map(r=>kt(r)??Un(r)).filter(r=>r!==null);return n.length>=3&&n.filter(r=>r.strongAnchor).length>=2&&n.some(r=>r.nontrivialAnchor)}function pk(e){if(!e.commandExecutionToolFamily||!e.recoveredEnvelope||e.output===void 0)return fk;let t=lk(e.output),n=mk(e.output);return{source:t,readback:n,any:t||n}}var fk={source:!1,readback:!1,any:!1};function mk(e){let t=e.trim(),n=$o(t,hk),r=$o(t,bk);return bc(t)&&(hc(t)||n>=2||r>=2||r>=1&&gk(t))}function $o(e,t){return[...e.matchAll(t)].length}function gk(e){return/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\|[a-z0-9_.-]+\/)\S*\.\.\.\s*$/i.test(e)}var hk=/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\)?[^\s:\r\n]+\.(?:md|markdown|rst|txt|adoc):\d+(?::\d+)?:\s*\S/gi,bk=/(?:^|[\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 yk(e){let t=B(e);if(t.length===0||vk(t)||kk(t))return null;let n=t.split(/\r?\n/).map(i=>i.trim()).filter(i=>i.length>0);if(n.length!==1)return null;let r=Ms(t);if(r.length!==1||r[0]?.line!==n[0])return null;let s=r[0];if(s===void 0)return null;switch(s.kind){case"source_location":return{consequenceBaseline:"high",source:!0};case"path_line":return{consequenceBaseline:"medium",source:!1};default:return null}}function vk(e){return/^\s*(?:see|refer to|open|read|check)\s+\S/i.test(e)}function kk(e){let t=wk(e);return/:\d+(?::\d+)?:\s*(?:(?:fatal\s+)?error|fatal|userwarning|warning):\s+\S/i.test(e)||t!==null&&Sk(t)}function wk(e){return/:\d+(?::\d+)?:\s*(\S[\s\S]*)$/.exec(e)?.[1]??null}function Sk(e){let t=e.trim();return Ak(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 Ak(e){return/^(?:tests?|build|command|process|subprocess)\s+failed\s+(?:is|are|was|were)\s+(?:documented|described|noted|mentioned)\b/i.test(e)}function Fc(e,t="all"){if(t!=="unbounded"){let o=_k(e);if(o!==null||t==="complete_bounded")return o}if(Kn(e))return null;if(qs(e))return re(!1,"low");let n=xk(e);if(n!==null)return n;if(qo(e)&&mb(e))return re(!0,"high");if(nb(e))return re(!1,"high");if(Bs(e))return re(me(e),Fe(e)?"low":"high");let r=Ok(e);if(r!==null)return r;let s=qo(e)?null:Yn(e,{allowReadOwnedFlattenedFilePayloads:!0});if(s===null)return null;let i=s.shape==="readback"&&Fe(e)?"low":s.consequenceBaseline;return re(s.source,i)}function _k(e){let t=e.replaceAll(`\r
|
|
7
|
+
`,`
|
|
8
|
+
`).split(`
|
|
9
|
+
`),n=t.flatMap((a,c)=>{let u=Ek.exec(a);return u===null?[]:[{index:c,edge:u[1]?.toLowerCase(),label:u[2]?.toLowerCase()}]}),[r,s]=n;if(n.length!==2||r?.edge!=="begin"||s?.edge!=="end"||r.label!==s.label||r.index+1>=s.index)return null;let i=t.slice(r.index+1,s.index).join(`
|
|
10
|
+
`).trim(),o=[...t.slice(0,r.index),...t.slice(s.index+1)].join(" ");return i.length>0&&Tk.test(o)&&!Kn(o)?{...re(!0,"low"),completeBoundary:!0}:null}var Ek=/^\s*(BEGIN|END)\s+(SOURCE(?:\s+VIEW)?|DOCUMENT(?:\s+(?:VIEW|PAYLOAD))?)\s*$/i,Tk=/^(?:(?:a|the)\s+)?(?:read|source)\s+(?:operation\s+)?(?:returned|produced|delivered)\b(?=[\s\S]*\bcomplete\b)(?=[\s\S]*\b(?:no\s+(?:content|source|text|data)\s+(?:lies|exists|remains)\s+outside\s+(?:the\s+)?declared\s+(?:view|boundary|payload)|no\s+(?:content|source|text|data)\s+(?:was|is)\s+omitted)\b)[\s\S]+$/i;function Rk(e){let t=Fk(e),n=t.length===0||ok(t)?null:Yn(t,{rejectCommandTextWrappers:!0});return n===null?null:re(n.source,n.consequenceBaseline)}function Ck(e){let t=pk({commandExecutionToolFamily:e.commandExecutionToolFamily,recoveredEnvelope:e.recoveredEnvelope,output:e.output}),n=Yn(e.output),r=e.commandExecutionToolFamily&&e.exitCode===0?yk(e.output):null,s=me(e.output)||t.source||n?.source===!0||r?.source===!0;return gb(e.output)||t.any||n!==null||r!==null||e.recoveredEnvelope&&tb(e.output)?re(s,s?"high":"medium"):null}function re(e,t){return{consequenceBaseline:t,source:e}}function xk(e){let t=Ik(e);return t===null?null:Lk(t.path,t.content)?re(!1,"low"):Pc(t.path)||me(t.content)?re(!0,"high"):re(!1,"high")}function Ik(e){let t=ns(e.trim(),"path",0);if(t===null)return null;let n=ns(e,"type",t.end),r=ns(e,"content",n?.end??t.end,{allowOpenEnded:!0});return n?.value.toLowerCase()==="file"&&r!==null?{content:r.value,path:t.value}:null}function ns(e,t,n,r={}){let s=e.toLowerCase(),i=`<${t}>`,o=`</${t}>`,a=s.indexOf(i,n);if(a<0)return null;let c=s.indexOf(o,a+i.length),u=c<0&&r.allowOpenEnded===!0?e.length:c,l=u<0?"":e.slice(a+i.length,u).trim(),d=c<0?e.length:c+o.length;return l.length>0?{end:d,value:l}:null}function Lk(e,t){let n=e.toLowerCase(),r=t.toLowerCase(),s="/makefile|/cmakelists.txt|.cmake".split("|").some(o=>n.endsWith(o)),i="spdx-license-identifier|version =|patchlevel =|sublevel =|project(".split("|").some(o=>r.includes(o));return n.endsWith(".log")||Fe(t)||s&&i}function Pc(e){let t=e.toLowerCase();return Is.test(t)||Ls.test(t)}function Ok(e){let t=Pe(e)??e,n=t.toLowerCase(),r=C(t),s=Pc(t)||me(t),i="contents of|content of|observation path|showing first|showing top".split("|").some(c=>n.includes(c))||n.includes("top")&&n.includes("lines"),o=xs.some(c=>r.includes(c));if(!s&&!Gt.test(n)||!i&&!o)return null;let a=n.includes(".log")||Fe(t);return re(s&&!a,s&&!a?"high":"low")}function Fk(e){let t=B(e);return Pe(t)??t}function qo(e){return e.includes(`
|
|
11
|
+
`)||e.includes("\r")||e.includes("\u2192")}function er(e,t,n,r,s,i,o={}){return{kind:e,polarity:t,origin:n,subject:r,evidenceLoss:"none",consequenceBaseline:s,...i!==void 0?{toolFamily:i}:{},...o}}function Pk(e,t){let n=er;if(e.kind==="authorization")return n("control","neutral","status_text","tool","low",t,{recoveryHint:"await_authorization"});let r=Nk(e.channel);if(e.kind==="payload"){let c=e.channel==="structured"||e.subject==="tool"?"high":"low";return n("payload","neutral",r,e.subject,c,t)}if(e.kind==="outcome"){let c=e.outcome==="success"?"low":"medium";return n("outcome",e.outcome,r,e.subject,c,t)}let s=e.diagnostic==="source_limit",i="subject"in e?e.subject:"source",o=e.diagnostic==="runtime"?"high":"medium",a={diagnosticClass:e.diagnostic,evidenceLoss:s?"partial":"none",recoveryHint:s?"narrow_evidence_scope":"inspect_diagnostic"};return n("diagnostic","failure",r,i,o,t,a)}function Nk(e){return e==="search"?"transcript":e==="transcript"?e:`${e}_output`}var zk={absent_evidence:"absent",source_window_limit:"partial",indeterminate:"unknown"},Dk={routine_bash_success_observation:ue("outcome","success"),structured_execution_success_observation:ue("outcome","success"),operation_success_observation:ue("outcome","success"),structured_tool_output_observation:ue("payload","neutral"),empty_failure_payload:ue("outcome","failure","absent_evidence"),observational_payload:ue("payload","neutral"),routine_search_output:ue("payload","neutral"),expected_diagnostic_failure:ue("diagnostic","failure"),terminal_failure:Mk,rejected_tool_use_observation:ue("control","neutral"),unclassified_failure:ue("unknown","failure","indeterminate")};function $k(e){let t="syntax"in e?e.syntax:e.observationSyntax!==void 0?e.observationSyntax:Dk[e.kind](e);return qk(t)}function qk(e){return{kind:e.kind,polarity:e.polarity,ownership:{owner:e.owner??(e.kind==="control"||e.toolFamily!==void 0?"tool":"source"),...e.toolFamily!==void 0?{capabilityFamily:e.toolFamily}:{}},subject:e.subject,evidenceLoss:e.evidenceLoss,provenance:{origin:e.origin},consequenceBaseline:e.consequenceBaseline,evidenceCertainty:e.evidenceCertainty??"determinate",...e.diagnosticClass===void 0?{}:{diagnosticClass:e.diagnosticClass},...e.recoveryHint===void 0?{}:{recoveryHint:e.recoveryHint}}}function Mk(e){return e.failureDetail==="source_window_limit"||e.failureDetail==="diagnostic"?In(e,"diagnostic","failure"):e.failureDetail==="outcome_only"?In(e,"outcome","failure"):In(e,"unknown","failure","indeterminate")}function ue(e,t,n){return r=>In(r,e,t,n)}function In(e,t,n,r){let s=r??e.failureDetail,i=zk[s??"outcome_only"]??"none",o;e.kind==="expected_diagnostic_failure"?o="expected":t==="diagnostic"&&(o=s==="source_window_limit"?"source_limit":"runtime");let a=e.kind==="rejected_tool_use_observation"?"await_authorization":jk(i,o);return{kind:t,polarity:n,origin:"semantic_evidence",owner:e.toolFamily!==void 0?"tool":e.readsAsObservation?"source":"engine",subject:Bk(e,s),evidenceLoss:i,consequenceBaseline:e.consequenceBaseline,evidenceCertainty:s==="indeterminate"?"indeterminate":"determinate",...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...o!==void 0?{diagnosticClass:o}:{},...a!==null?{recoveryHint:a}:{}}}function Bk(e,t){return e.kind==="routine_bash_success_observation"||e.kind==="structured_execution_success_observation"?"command":e.kind==="routine_search_output"?"search":t==="source_window_limit"?"source":e.toolFamily!==void 0?"tool":"unknown"}function jk(e,t){return e==="absent"?"request_evidence":e==="partial"?"narrow_evidence_scope":e==="unknown"?"inspect_original_evidence":t!==void 0?"inspect_diagnostic":null}function Hk(e){let{eventFact:t,summary:n,toolFamily:r}=e;if(t!==null&&t!=="source_limit")return Mo(t,r);let s=Ln(Fc(n,"complete_bounded"),"read_output","source",r);if(s!==null)return{...s,completeBoundary:!0};if(t!==null)return Mo(t,r);if(e.observationTranscript)return Zk(e.observationTranscript,r);if(e.editOutputOutcome==="applied")return Ws("semantic_evidence","tool","high",r);let i=Uk(e);return i!==null?i:e.structuredOutputZeroExitSuccess?er("outcome","success","structured_output",_e(r)?"command":"tool","low",r):null}function Mo(e,t){let n=["source_limit","source_diagnostic","expected_source_diagnostic"].includes(e),r=n||e==="runtime_diagnostic",s=e==="authorization_control",i=e==="document_payload";return er(s?"control":i?"payload":r?"diagnostic":"outcome",s||i?"neutral":e==="terminal_success"?"success":"failure",s?"status_text":i||n?"read_output":"command_output",s?"tool":i?"document":n?"source":"command",e==="runtime_diagnostic"||e==="source_diagnostic"?"high":n||e==="outcome_failure"||e==="absent_failure"?"medium":"low",t,Vk(e))}function Vk(e){return e==="authorization_control"?{completeBoundary:!0,recoveryHint:"await_authorization"}:e==="runtime_diagnostic"||e==="expected_source_diagnostic"?{completeBoundary:!0,diagnosticClass:e==="runtime_diagnostic"?"runtime":"expected",recoveryHint:"inspect_diagnostic"}:e==="source_diagnostic"?{completeBoundary:!0,diagnosticClass:"runtime",recoveryHint:"inspect_diagnostic"}:e==="source_limit"?{completeBoundary:!0,diagnosticClass:"source_limit",evidenceLoss:"partial",recoveryHint:"narrow_evidence_scope"}:e==="absent_failure"?{completeBoundary:!0,evidenceLoss:"absent",recoveryHint:"request_evidence"}:{completeBoundary:!0}}function Zk(e,t){let n=e.shape==="abbreviated_file_view",r=e.shape==="concrete_test_result"||e.shape==="successful_test";return Ws(n&&t==="read"?"read_output":"transcript",n?"source":r?"document":"tool",e.consequenceBaseline,t)}function Ws(e,t,n,r,s){return er("payload","neutral",e,t,n,r,s)}function Uk(e){let{structuredOutputEnvelope:t,summary:n,toolFamily:r}=e;if(r==="read"){let s=Ln(Fc(n,"unbounded"),"read_output","document","read");if(s!==null)return s}return _e(r)&&t.kind==="raw"?Ln(Rk(n),"command_output","document",r):t.kind!=="valid"&&t.kind!=="recovered"?null:Ln(Ck({commandExecutionToolFamily:_e(r),exitCode:t.output.exitCode,output:t.output.output,recoveredEnvelope:t.kind==="recovered"}),"structured_output","tool",r)}function Ln(e,t,n,r){return e===null?null:Ws(t,e.source?"source":n,e.consequenceBaseline,r,e.completeBoundary===!0?{completeBoundary:!0}:void 0)}function Kk(e){let{toolFamily:t}=e,n=e.summary??"",r=[e.title??"",n],s=_e(t),i=bv(t),o=yv(e.summary,i),a=o.kind==="valid"||o.kind==="recovered"?o.output:null,c=t!=="edit"||o.kind==="invalid"?null:Fm(o.kind==="raw"?n:void 0,a?.output),u=a!==null&&yt(a.output),l=t==="read"&&a===null?fs(n):null,d=a?.exitCode!==void 0&&a.exitCode!==0,p=a?.exitCode===0&&i==="exact",f=(l?.shape==="abbreviated_file_view"?l:null)??(s?Jy(n):null)??(t===void 0?fs(n):null),m=jt(uc(n)),g=yt(n,!0),y=Do(r,g),v=Do(r)==="authorization_control",S=y===null&&r.some(kv),b=Hk({editOutputOutcome:c,eventFact:y,observationTranscript:f,structuredOutputEnvelope:o,structuredOutputZeroExitSuccess:p,summary:n,toolFamily:t}),_=Bo(b,"read_output"),Pt=_&&b?.subject==="source",Ke=b?.completeBoundary===!0,Yr=Bo(b,"structured_output")&&b?.subject==="source",Xr=t==="read"&&!S&&!Ke&&(Kn(n)||m&&!Pt);return{structuredOutputEnvelope:o,unsafeStructuredToolOutputEnvelope:o.kind==="recovered"||o.kind==="invalid",diagnosticStructuredToolOutput:a,structuredOutputExitFailure:d,editOutputOutcome:c,searchFailureDiagnostic:t==="search"&&xm(n),readFailureDiagnostic:Xr,structuredOutputFailureDiagnostic:u,rawToolOutputFailureDiagnostic:t!==void 0&&i!=="unsupported"&&a===null&&o.kind==="raw"&&b?.kind!=="control"&&!S&&!Ke&&yt(n,v),strongSourceRuntimeDiagnostic:o.kind==="valid"&&Yr&&jt(o.output.output)||_&&m&&!Ke&&!S,diagnosticObservationTranscript:t===void 0&&Lo(n),commandDiagnosticObservationTranscript:s&&Lo(n),commandActualDiagnosticObservationTranscript:s&&ev(n),commandDiagnosticReferenceObservationTranscript:s&&Qy(n),observationSyntax:b,textFallbackSuppressed:o.kind==="valid"||o.kind==="recovered"?!1:S}}function Bo(e,t){return e?.kind==="payload"&&e.origin===t}function Wk(e){let t=Pe(e??"");return t===null?null:Gk(t)}function Gk(e){let t=e.trim();if(t.length===0||/[\r\n]/.test(t)||Yk(t))return null;let n=jo(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&&Ho(n))return{kind:"file_created",consequenceBaseline:"low"};let r=jo(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 r!==void 0&&Ho(r)?{kind:"file_edited",consequenceBaseline:"low"}:null}function jo(e,t){for(let n of t){let r=n.exec(e)?.[1];if(r!==void 0)return r}}function Ho(e){return/^(?:[A-Za-z]:[\\/]|\/|\.{1,2}\/|~\/)/.test(e)&&!/["'`<>[\]{}]/.test(e)&&!/(?:^|:)\/\//.test(e)&&!/(?:\.\.\.|…)$/.test(e)&&!/[.,;:]$/.test(e)}function Yk(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 gs(e,t){let n=C(e),r=js(n),s=cw(n),i=[];return(aw(n)||Db(s)&&!$b(s))&&!r&&i.push("routine_success"),r?i.push("terminal_failure"):Y(n,Jf)&&i.push("expected_diagnostic"),Y(n,xs)&&i.push("observational_readback"),sw(n)&&i.push("tagged_file"),(rw(n)||t==="read"&&Bs(e))&&i.push("read_payload"),fc(n,e)&&i.push("search_result"),iw(n)&&i.push("source_code"),ow(n,e)&&i.push("log"),(Xf.test(n)||Y(n,Vf))&&i.push("build_metadata"),{shapes:i}}function Xk(e,t){let n=gs(e,t).shapes;return r=>n.includes(r)}function Jk(e){if(e.type==="task.updated"&&e.status==="failed"&&e.title!==void 0&&e.evidence!==void 0){let t=Xt({title:e.title,...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{}})??void 0;return{syntax:Pk(e.evidence,t)}}return Qk(e)}function Qk(e){if(e.type!=="task.updated"||e.status!=="failed"||e.title===void 0)return null;let t=Xt({title:e.title,...e.summary!==void 0?{summary:e.summary}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{}})??void 0,n=e.summary!==void 0&&gs(e.title,t).shapes.includes("terminal_failure")?{shapes:["terminal_failure"]}:gs(e.summary??e.title,t),r=Kk({...e,toolFamily:t});return{...ew({summary:e.summary,signals:r,text:n,toolFamily:t}),text:n}}function ew(e){let{signals:t,summary:n,text:r,toolFamily:s}=e,i=r.shapes.includes.bind(r.shapes),o=t.observationSyntax;if(o?.completeBoundary&&o.kind!=="control")return Vo(o);let a=xv({summary:n,signals:t,toolFamily:s,searchResultText:i("search_result"),terminalFailureText:i("terminal_failure")});if(a!==null)return Se("terminal_failure",!1,a.consequenceBaseline,s,{failureDetail:a.failureDetail});if(s!==void 0&&sv(n))return Se("empty_failure_payload",!1,"medium",s,{failureDetail:"absent_evidence"});let c=s===void 0?Wk(n):null;return c?Se("operation_success_observation",!0,c.consequenceBaseline):o!==null?Vo(o):i("routine_success")&&t.structuredOutputEnvelope.kind!=="unsupported"&&(!t.unsafeStructuredToolOutputEnvelope||t.diagnosticStructuredToolOutput?.exitCode===0)?Se("routine_bash_success_observation",!0,"low",s):i("expected_diagnostic")?Se("expected_diagnostic_failure",!1,"medium",s):i("search_result")?Se("routine_search_output",!0,i("terminal_failure")?"high":"low",s):s==="edit"&&t.structuredOutputEnvelope.kind!=="invalid"&&(i("observational_readback")||i("tagged_file")||i("read_payload")||t.editOutputOutcome==="applied")?Se("observational_payload",!0,"high",s):Se("unclassified_failure",!1,"high",s,{failureDetail:"indeterminate"})}function Vo(e){return Se(nw(e),e.kind==="payload"||e.kind==="control"||e.polarity==="success",e.consequenceBaseline,e.toolFamily,{observationSyntax:e,...tw(e)})}function tw(e){return e.diagnosticClass==="source_limit"?{failureDetail:"source_window_limit"}:e.kind==="diagnostic"?{failureDetail:"diagnostic"}:e.kind!=="outcome"||e.polarity!=="failure"?{}:{failureDetail:e.evidenceLoss==="absent"?"absent_evidence":"outcome_only"}}function Se(e,t,n,r,s={}){return{kind:e,...s,...r!==void 0?{toolFamily:r}:{},readsAsObservation:t,consequenceBaseline:n}}function nw(e){return e.kind==="control"?"rejected_tool_use_observation":e.kind==="diagnostic"?e.diagnosticClass==="expected"?"expected_diagnostic_failure":"terminal_failure":e.kind==="outcome"?e.polarity==="failure"?"terminal_failure":"structured_execution_success_observation":e.origin==="structured_output"?"structured_tool_output_observation":"observational_payload"}function rw(e){return Gt.test(e)?Y(e,Bf)||(Is.test(e)||Ls.test(e))&&Uf.test(e)||Kf.test(e):!1}function sw(e){return Y(e,Ea)&&Gt.test(e)}function iw(e){return Is.test(e)||Ls.test(e)||Wf.test(e)||Gf.test(e)}function ow(e,t){return Yf.test(e)||Fe(t)||Y(e,Hf)}function aw(e){let t=e.replace(/\.+$/,""),n=t.indexOf(" observation "),r=n>0&&!t.slice(0,n).includes(" ")?t.slice(n+13):t,s=jf.map(i=>C(i));return Nc().some(i=>s.some(o=>{let a=i.length>0?`${i} ${o}`:o;return r===a}))}function cw(e){for(let t of Nc().filter(Boolean)){if(e===t)return"";if(e.startsWith(`${t} `))return e.slice(t.length+1)}return e}function Nc(){return["","observation","bash failure","tool failure"]}function uw(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:dw({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:lw(e.ontology.source)},consequenceBaseline:e.core.consequenceBaseline}}function lw(e){switch(e){case"explicit":case"hinted":case"inferred":return e;default:return"unknown"}}function dw(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 Gs(e){let t=Jk(e);return t!==null?$k(t):null}function pw(e){return uw({core:e.core,ontology:e.ontology,abstained:e.abstained,semanticAgreement:fw({event:e.event,observation:e.core,ontology:e.ontology,abstained:e.abstained,interpretation:e.interpretation??e.event.semantic})})}function fw(e){let t=e.interpretation;return t===void 0||e.abstained?"uncertain":e.event.evidence===void 0&&mw(t.provenance)?"overridden":gw(e.observation,t,e.ontology)?"stable":"uncertain"}function mw(e){return["intentFrame","activityClass","consequence"].some(t=>e?.[t]==="hint"||e?.[t]==="source")}function gw(e,t,n){let r=Nf(e);return n.ask==="status"&&n.activity===r.activity&&n.blocking==="non_blocking"&&t.intentFrame===r.intentFrame&&t.activityClass===r.activityClass&&t.consequence===e.consequenceBaseline&&n.consequence===e.consequenceBaseline}function Ys(e){if(!e.semantic)return{blockedLikeStatus:!1};let t=e.semantic.abstained===!0,n=e.type==="task.updated"&&e.status==="failed"?Gs(e):null,r=_f({event:e,core:n,interpretation:e.semantic,abstained:t}),s=Tf(e,e.semantic,r),i=e.type==="task.updated"&&s.blocking==="blocking"&&e.status!=="blocked",o=e.type==="task.updated"&&e.status==="failed"&&n!==null?pw({event:e,core:n,ontology:s,abstained:t,interpretation:e.semantic}):null;return{ontology:s,semanticEvidence:{confidence:s.confidence,source:s.source,strength:ww({ontology:s,observation:o,blockedLikeStatus:i,abstained:t}),abstained:t},...e.semantic.relationHints.length>0?{relationEvidence:{source:Vc(e.semantic),strength:Sw(e.semantic,t)}}:{},...o!==null?{observation:o}:{},blockedLikeStatus:i,...r!==null?{observationalStatusConflict:r}:{}}}function Xs(e){return Ne(e)?.strength??null}function Ne(e){return e.judgmentInput.semanticEvidence??null}function hw(e){return e.judgmentInput.relationEvidence??null}function zc(e){return e.judgmentInput.observation??null}function Js(e){return Hc(e.judgmentInput)}function bw(e){return e.judgmentInput.observationalStatusConflict??null}function Qs(e){return hw(e)?.strength??null}function Dc(e){return e.judgmentInput.ontology??null}function zn(e){return Ne(e)?.confidence??null}function Zt(e){return Ne(e)?.abstained===!0}function $c(e){return zn(e)==="low"}function yw(e){return Zt(e)||$c(e)||Xs(e)==="weak"}function vw(e){let t=Xs(e),n=Ne(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 ei(e){return e.judgmentInput.blockedLikeStatus}function tr(e){return qc(e.judgmentInput)}function qc(e){if(!e.blockedLikeStatus)return!1;let t=e.semanticEvidence;return t!==void 0&&t.confidence!=="low"&&!t.abstained}function wt(e){return Mc(e.judgmentInput)}function kw(e){return Hc(e)?.limitedFailureStatus===!0}function Mc(e){return e.observationalStatusConflict!==void 0}function Bc(e,t){return t==="ambient"&&ei(e)?"queue":t}function jc(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 ww(e){let t=e.observation!==null?ya(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":jc(e.ontology.confidence,e.ontology.source,e.abstained)}function Hc(e){return e.observation!==void 0?ya(e.observation):null}function Vc(e){switch(e.provenance?.relationHints){case"source":return"explicit";case"hint":return"hinted";case"inferred":return"inferred";default:return"inferred"}}function Sw(e,t){switch(Vc(e)){case"explicit":return"strong";case"hinted":return t?"weak":"qualified";case"inferred":return jc(e.confidence,"inferred",t)}}var ot=1,F={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 nr(e,t){return(e??[]).some(n=>n.kind===t)}function hs(e){let t=Zc(e);return t.length===1?t[0]??null:null}function Aw(e){return Zc(e).length>1}function Zc(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 Uc(e){let t=Qs(e);return!e.blocking&&e.responseSpec.kind==="none"&&nr(e.relationHints,"resolves")&&!Aw(e.relationHints)&&(t===null||t!=="weak")}function rr(e=Date.now){return{nowMs:()=>e(),nowIso:()=>At(e()),parse:St,add:_w,diff:ti}}function St(e){let t=Date.parse(e);return Number.isNaN(t)?null:t}function At(e){return new Date(e).toISOString()}function _w(e,t){let n=St(e);return n===null?null:At(n+t)}function ti(e,t){let n=St(e),r=St(t);return n===null||r===null?null:n-r}var ce=F.episodeEvidence,Ew=1440*6e4,Tw=1024,Rw=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??rr(),this.dormantRetentionMs=e.dormantRetentionMs??Ew,this.maxDormantEpisodes=e.maxDormantEpisodes??Tw}assign(e){let t=this.clock.parse(e.timestamp);t!==null&&(this.latestObservedAtMs===null||t>this.latestObservedAtMs)&&(this.latestObservedAtMs=t);let n=Cw(e),r=this.byInteractionId.get(e.interactionId),s=r?this.byId.get(r):void 0,i=s&&!this.shouldRollEpisode(s,e.timestamp)?s:void 0,o=i?null:this.byKey.get(n),a=i??this.resolveAssignableRecord(n,o,e),c=this.evolveRecord(a,e),u=qw(a,e,this.clock);return zw(c,this.byKey.get(c.key))&&this.byKey.set(c.key,c),this.byId.set(c.id,c),u||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],...u?{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 r of n.interactions)this.byInteractionId.delete(r)}}readFrameEpisode(e){if(!e)return null;let t=e.metadata?.episode;if(!t||typeof t!="object")return null;let n=bt(t,"id"),r=bt(t,"key"),s=Gc(t,"state"),i=Uo(t,"size"),o=Uo(t,"evidenceScore")??0,a=Bw(t,"evidenceReasons"),c=bt(t,"lastInteractionId"),u=bt(t,"updatedAt");return!n||!r||!s||i===null||!c||!u?null:{id:n,key:r,state:s,size:i,evidenceScore:o,evidenceReasons:a,lastInteractionId:c,updatedAt:u}}stats(){let e=0,t=0,n=null;for(let r of this.byId.values())this.isActiveRecord(r)?e+=1:t+=1,(n===null||r.updatedAt>n)&&(n=r.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 r=Zo(t),s=Kc(t)?(t.relationHints??[]).map(i=>i.kind):[];return{id:`episode:${e}:${n}`,key:e,state:r?"resolved":t.blocking?"actionable":"emerging",size:0,evidenceScore:r?0:t.blocking?ce.blockingBoost:0,evidenceReasons:r?["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(s)}}resolveAssignableRecord(e,t,n){if(!t)return this.createRecord(e,n);if(this.shouldRollEpisode(t,n.timestamp)){let r={...t,state:"stale"};return this.byId.set(r.id,r),this.createRecord(e,n)}return t}shouldRollEpisode(e,t){if(qt(e.state))return $w(t,e.updatedAt,this.clock);let n=this.clock.parse(e.updatedAt),r=this.clock.parse(t);return n===null||r===null?!1:r-n>=ce.staleAfterMs}evolveRecord(e,t){if(Wc(e,t,this.clock))return e;if(qt(e.state))return Mw(e,t);let n=new Set(e.interactions);n.add(t.interactionId);let r=new Set(e.modes);r.add(t.mode);let s=Pw(e.relationKinds,t),i={...e,lastInteractionId:t.interactionId,updatedAt:t.timestamp,size:n.size,interactions:n,modes:r,relationKinds:s,blockingSignals:e.blockingSignals+(t.blocking?1:0),highSignals:e.highSignals+(t.consequence==="high"||t.tone==="critical"?1:0)},o=Fw(i,t);return Zo(t)?{...i,evidenceScore:0,evidenceReasons:["semantic relation hints indicate this episode is resolved"],state:"resolved"}:{...i,evidenceScore:o.score,evidenceReasons:o.reasons,state:Ow(e.state,t,i,o.score)}}pruneDormantRecords(){let e=[...this.byId.values()].filter(r=>!this.isActiveRecord(r));if(this.latestObservedAtMs!==null)for(let r of e){let s=this.clock.parse(r.updatedAt);s!==null&&this.latestObservedAtMs-s>this.dormantRetentionMs&&this.deleteRecord(r)}let t=[...this.byId.values()].filter(r=>!this.isActiveRecord(r)).sort((r,s)=>r.updatedAt.localeCompare(s.updatedAt));if(t.length<=this.maxDormantEpisodes)return;let n=t.length-this.maxDormantEpisodes;for(let r of t.slice(0,n))this.deleteRecord(r)}isActiveRecord(e){return this.byKey.get(e.key)?.id===e.id&&!qt(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 Cw(e){let t=e.source?.kind??e.source?.id??"unknown",n=Lw(e),r=e.blocking?"interruptive":"status";return Nw([t,r,n].join(":"))}function xw(e){return e?bt(e.metadata?.episode,"id"):null}function Iw(e){return e?Gc(e.metadata?.episode,"state"):null}function qt(e){return e==="stale"||e==="resolved"}function sr(e){return e.episodeState==="actionable"}function ni(e,t,n){return e!=null&&e.interactionId!==n&&xw(e)===t&&!qt(Iw(e))}function fe(e,t,n={}){let r=n.lanes??["now","next","ambient"],s=[];return r.includes("now")&&s.push(e?.now),r.includes("next")&&s.push(...e?.next??[]),r.includes("ambient")&&s.push(...e?.ambient??[]),s.filter(i=>ni(i,t,n.excludedInteractionId))}function Lw(e){let t=hs(e.relationHints);if(t)return t;let r=(e.context?.items??[]).find(i=>{let o=i.id.toLowerCase(),a=i.label.toLowerCase();return o.includes("file")||o==="path"||o.includes("issue")||o==="command"||a.includes("file")||a.includes("path")||a.includes("issue")||a.includes("command")});if(r?.value)return r.value;let s=e.summary??e.title;return s.length>0?s:e.taskId}function Ow(e,t,n,r){return t.blocking||r>=ce.actionableThreshold?"actionable":e==="actionable"?"waiting":n.size>=2?"batched":"emerging"}function Fw(e,t){let n=0,r=[];return t.blocking&&(n+=ce.blockingBoost,r.push("operator-facing work makes this episode immediately actionable")),e.size>=2&&(n+=ce.recurringEpisodeBoost,r.push("multiple related interactions have accumulated in this episode")),e.size>=3&&(n+=ce.persistentEpisodeBoost,r.push("the same episode keeps recurring without resolution")),e.highSignals>=1&&(n+=ce.highSignalBoost,r.push("at least one related interaction carried high consequence or critical tone")),e.modes.size>=2&&(n+=ce.multiModeBoost,r.push("related work has spread across multiple interaction modes")),e.highSignals>=1&&e.size>=2&&(n+=ce.stackingBoost,r.push("high-signal evidence is stacking up across the episode")),e.relationKinds.has("repeats")&&(n+=ce.relationRepeatBoost,r.push("semantic relation hints indicate this issue is recurring")),e.relationKinds.has("escalates")&&(n+=ce.relationEscalationBoost,r.push("semantic relation hints indicate this issue is escalating")),{score:n,reasons:r}}function Pw(e,t){let n=new Set(e);if(!Kc(t))return n;for(let r of t.relationHints??[])n.add(r.kind);return n}function Nw(e){return e.toLowerCase().replace(/[^a-z0-9:/._-]+/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,"").slice(0,120)}function Kc(e){let t=Qs(e);return t===null||t!=="weak"}function Zo(e){return Uc(e)}function zw(e,t){return!t||t.id===e.id?!0:!qt(e.state)}function Wc(e,t,n){return Dw(t.timestamp,e.updatedAt,n)}function Dw(e,t,n){let r=n.parse(e),s=n.parse(t);return r!==null&&s!==null?r<s:e<t}function $w(e,t,n){let r=n.parse(e),s=n.parse(t);return r!==null&&s!==null?r>s:e>t}function qw(e,t,n){return Wc(e,t,n)}function Mw(e,t){let n=new Set(e.interactions);n.add(t.interactionId);let r=new Set(e.modes);return r.add(t.mode),{...e,size:n.size,interactions:n,modes:r}}function bt(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 Uo(e,t){if(!e||typeof e!="object"||!(t in e))return null;let n=e[t];return typeof n=="number"?n:null}function Gc(e,t){let n=bt(e,t);switch(n){case"emerging":case"actionable":case"batched":case"waiting":case"stale":case"resolved":return n;default:return null}}function Bw(e,t){if(!e||typeof e!="object"||!(t in e))return[];let n=e[t];return Array.isArray(n)?n.filter(r=>typeof r=="string"&&r.length>0):[]}function jw(e){switch(e){case"approval":return"approval_request";case"choice":return"question_request";case"form":return"form_request"}}function Hw(e){switch(e){case"approval":return"permission_request";case"choice":case"form":return"question_request"}}function Vw(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 Qe(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 Zw(e){switch(e){case"high":return"A failed status carried high-consequence observation output that should be reviewed.";case"medium":case"low":return}}function Uw(e){if(e.some(t=>t.kind==="resolves"))return"A related episode appears resolved and can update attention state."}function mt(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 Ko(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 Kw(){return["task update status explicitly indicates completed work"]}function Ww(e){if(e.isQuestion)return[];let t=e.tokens,n=[],r=Gw(t);if(r===null)return n;if(t[r]==="replace"){let s=t.indexOf("with",r+1);return s===-1?[]:[{start:r,end:s+1,kind:"supersedes",order:0,polarity:"asserted"}]}for(let s=0;s<t.length;s+=1)t[s]==="instead"&&t[s+1]!=="of"&&n.push({start:s,end:s+1,kind:"supersedes",order:0,polarity:Yw(t,s)?"negated":"asserted"});return n}function Gw(e){if(Xw(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 Yw(e,t){let n=e.slice(Math.max(0,t-4),t);return n.includes("not")||n.includes("never")||n.at(-1)==="no"||Tn(n,["do","not"])||Tn(n,["don","t"])||Tn(n,["did","not"])||Tn(n,["didn","t"])}function Xw(e,t){return t.some(n=>n.every((r,s)=>e[s]===r))}function Tn(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(t.every((r,s)=>e[n+s]===r))return!0;return!1}function Jw(e){let t=new Set,n=[];for(let r of e){let s=`${r.kind}:${r.target??""}`;t.has(s)||(t.add(s),n.push(r))}return n}var Qw=12,eS=new Set(["never","not"]),tS=new Set(["could","expected","hopefully","may","might","should","would"]),nS=new Set(["check","confirm","determine","ensure","see","validate","verify"]),rS=new Set(["can","could","need","needed","needs","please","rerun","retry","run","should","to","try","trying","will","would"]),Yc=new Set(["if","that","whether"]),sS=[["are","we"],["can","you"],["could","you"],["did","it"],["do","you"],["does","it"],["is","it"],["should","i"],["should","we"],["was","it"],["would","you"]];function Wo(e,t){let r=e.tokens.slice(Math.max(0,t-Qw),t),s=r.slice(-4);return iS(s)?"negated":e.isQuestion||aS(r)?"prospective":oS(s)?"modal":cS(r)?"prospective":"asserted"}function iS(e){return e.some(t=>eS.has(t))||bs(e,["did","n","t"])||bs(e,["did","not"])}function oS(e){return e.some(t=>tS.has(t))}function aS(e){return sS.some(t=>bs(e,t))}function cS(e){for(let t=0;t<e.length;t+=1){let n=e[t];if(!nS.has(n))continue;let r=e[t-1],s=e[t+1];if(r===void 0||lS(r)||rS.has(r)||s!==void 0&&Yc.has(s)||uS(e,t))return!0}return!1}function uS(e,t){return e.slice(t+1,t+5).some(n=>Yc.has(n))}function lS(e){return/^\d+$/.test(e)}function bs(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(t.every((r,s)=>e[n+s]===r))return!0;return!1}var Go=new Map([["repeats",0],["supersedes",1],["escalates",2]]);function Xc(e){let t=mS(e),n=pS(e,Ta,[])||t.some(u=>u.polarity==="asserted"&&(u.kind==="escalates"||u.kind==="supersedes")),r=gS(t),s=[...r.values()].sort((u,l)=>u.order-l.order).filter(u=>u.polarity==="asserted"&&(u.kind==="resolves"||n)&&(u.kind!=="resolves"||u.direct||n)),i=s.at(-1);if(i===void 0)return[];if(i.kind==="resolves")return[{kind:"same_issue"},{kind:"resolves"}];let o=r.get("resolves"),a=o?.polarity==="asserted"?o.order:void 0,c=s.filter(u=>u.kind!=="resolves"&&(a===void 0||u.order>a)).sort(dS).map(u=>({kind:u.kind}));return c.length===0?[]:Jw([{kind:"same_issue"},...c])}function dS(e,t){return(Go.get(e.kind)??Number.MAX_SAFE_INTEGER)-(Go.get(t.kind)??Number.MAX_SAFE_INTEGER)||e.order-t.order}function pS(e,t,n){for(let r of fS(e,t,n))if(r.polarity==="asserted")return!0;return!1}function fS(e,t,n){let r=[];for(let{tokens:s}of Jc(e)){let i=n.flatMap(a=>et(s,Le(a))),o=i.map(a=>({start:a.start,polarity:"negated"}));for(let a of t)for(let c of et(s,Le(a)))o.push({start:c.start,polarity:Dn(c,i)||Qc(s,c.start)?"negated":"asserted"});o.sort((a,c)=>a.start-c.start).forEach(a=>r.push({polarity:a.polarity}))}return r}function mS(e){let t=[],n=0;for(let r of Jc(e)){let s=[...rs(r,"repeats",em,tm),...hS(r),...rs(r,"supersedes",im,[]),...Ww(r),...rs(r,"escalates",om,am)].sort((i,o)=>i.start-o.start||i.end-o.end);for(let i of s)t.push({kind:i.kind,order:n,polarity:i.polarity,...i.direct!==void 0?{direct:i.direct}:{}}),n+=1}return t}function gS(e){let t=new Map;for(let n of e)t.set(n.kind,n);return t}function rs(e,t,n,r){let s=r.flatMap(o=>et(e.tokens,Le(o))),i=s.map(o=>({...o,kind:t,order:0,polarity:"negated"}));for(let o of n)for(let a of et(e.tokens,Le(o)))i.push({...a,kind:t,order:0,polarity:Dn(a,s)||Qc(e.tokens,a.start)?"negated":"asserted"});return i}function hS(e){let t=rm.flatMap(r=>et(e.tokens,Le(r))),n=t.map(r=>({...r,kind:"resolves",order:0,polarity:"negated"}));for(let r of nm)for(let s of et(e.tokens,Le(r)))n.push({...s,kind:"resolves",order:0,polarity:Dn(s,t)?"negated":Wo(e,s.start),direct:!0});for(let r of sm)for(let s of et(e.tokens,Le(r)))n.push({...s,kind:"resolves",order:0,polarity:Dn(s,t)?"negated":Wo(e,s.start),direct:!1});return n}function Jc(e){let t=[],n=0;for(let s of e.matchAll(/[!?;:]+|\.+(?=\s|$)|\b(?:but|however|yet)\b/gi)){let i=s.index,o=Yo(e.slice(n,i),s[0].includes("?"));o!==null&&t.push(o),n=i+s[0].length}let r=Yo(e.slice(n),!1);return r!==null&&t.push(r),t}function Yo(e,t){let n=Le(e);return n.length===0?null:{tokens:n,isQuestion:t}}function Le(e){return cm(e).match(/[a-z0-9]+/g)??[]}function et(e,t){if(t.length===0||t.length>e.length)return[];let n=[];for(let r=0;r<=e.length-t.length;r+=1)t.every((s,i)=>e[r+i]===s)&&n.push({start:r,end:r+t.length});return n}function Dn(e,t){return t.some(n=>e.start>=n.start&&e.end<=n.end)}function Qc(e,t){let n=e.slice(Math.max(0,t-4),t);return n.includes("not")||n.includes("never")||n.at(-1)==="no"||Xo(n,["did","not"])||Xo(n,["didn","t"])}function Xo(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(t.every((r,s)=>e[n+s]===r))return!0;return!1}function ys(e){return[...new Set(e)]}function bS(e){if(Y(e,_a))return!1;if(Y(e,zf))return!0;let t=C(e);return Df.some(n=>n.test(t))}function yS(e){return Y(e,_a)?null:Y(e,$f)?"blocking":Y(e,qf)?"waiting":null}function Dt(e,t,n){return Xk(e,n)("routine_success")||n==="read"||n==="search"?t:vS(e,Mf)?"high":(n==="write"||n==="edit"||_e(n))&&t==="low"?"medium":t}function vS(e,t){return t.some(n=>kS(e,n))}function kS(e,t){return Ra(e,t)}function ri(e={}){let t=e.base,n=e.semantic,r=t?.whyNow??n?.whyNow??e.fallbackWhyNow,s=ys([...t?.factors??[],...n?.factors??[],...e.extraFactors??[]]);if(!(t===void 0&&r===void 0&&s.length===0))return{...t??{},...r!==void 0?{whyNow:r}:{},...s.length>0?{factors:s}:{}}}var wS=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}:{},...Jo(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 RS(e)}}evaluateTaskUpdate(e){let t=Ys(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,...ES(e),...TS(e,n.includeFailureProvenance)}}evaluateHumanInput(e){let t=this.createActions(e),n=this.createResponseSpec(e,t),r=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}:{},...r!==void 0?{toolFamily:r}:{},...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,...Jo(e),...e.context!==void 0?{context:e.context}:{},...(()=>{let s=ri({base:e.provenance,semantic:e.semantic});return s!==void 0?{provenance:s}:{}})()}}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 Qo(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 Qo(e.request)}}statusDispositionForStatus(e,t){if(Mc(t))return _S(t.ontology?.consequence??"low",e.status);if(qc(t))return{priority:"normal",tone:"focused",consequence:"medium",responseSpec:tt(e.status),includeFailureProvenance:e.status==="failed"};switch(e.status){case"failed":return SS(e,t);case"blocked":return{priority:"normal",tone:"focused",consequence:"medium",responseSpec:tt(e.status),includeFailureProvenance:!1};case"running":case"waiting":case"completed":return{priority:"background",tone:"ambient",consequence:"low",responseSpec:tt(e.status),includeFailureProvenance:!1}}}};function SS(e,t){return AS(t)?{priority:"normal",tone:"focused",consequence:"medium",responseSpec:tt(e.status),includeFailureProvenance:!0}:{priority:"high",tone:"critical",consequence:"high",responseSpec:tt(e.status),includeFailureProvenance:!0}}function AS(e){return kw(e)}function _S(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:tt(t),includeFailureProvenance:!1};case"high":return{priority:"high",tone:"critical",consequence:"high",responseSpec:tt(t),includeFailureProvenance:!1};default:return xS(e)}}function ES(e){let t=e.context,n=t?.items,r=n!==void 0&&n.length>0;return e.progress===void 0&&t?.stage===void 0&&!r?{}:{context:{...t?.stage!==void 0?{stage:t.stage}:{},...e.progress!==void 0?{progress:e.progress}:{},...r?{items:n}:{}}}}function TS(e,t){let n=ri({semantic:e.semantic,fallbackWhyNow:e.status==="blocked"?Qe("blocked"):e.status==="failed"&&t?Qe("failed"):void 0,extraFactors:e.status==="blocked"||e.status==="failed"&&t?[e.status]:[]});return n===void 0?{}:{provenance:n}}function tt(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 CS(e)}}function Jo(e){return{judgmentInput:Ys(e)}}function RS(e){throw new Error(`Unhandled ApertureEvent in event evaluator: ${JSON.stringify(e)}`)}function Qo(e){throw new Error(`Unhandled human input request in event evaluator: ${JSON.stringify(e)}`)}function CS(e){throw new Error(`Unhandled task status in event evaluator: ${e}`)}function xS(e){throw new Error(`Unhandled consequence in event evaluator: ${e}`)}var IS=class{plan(e,t){let n=t?.interactionId===e.interactionId,r=t?.metadata?.attention,s={...r&&typeof r=="object"?r:{},score:cf(e),scoreOffset:e.attentionScoreOffset??0,rationale:e.attentionRationale??[]},i=t?.metadata?.episode,o=e.toolFamily??(typeof t?.metadata?.toolFamily=="string"?t.metadata.toolFamily:void 0),a=e.episodeId?{...i&&typeof i=="object"?i:{},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}:i,c=t?.metadata?.semantic,u=e.relationHints?.length?{...c&&typeof c=="object"?c:{},relationHints:e.relationHints}:c;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:s,...o!==void 0?{toolFamily:o}:{},...u?{semantic:u}:{},...a?{episode:a}:{}},...e.summary!==void 0?{summary:e.summary}:{},...e.context!==void 0?{context:e.context}:{},...e.provenance!==void 0?{provenance:e.provenance}:{}}}},LS=1800*1e3,ea=256,OS=1440*6e4,FS=1024,PS=class{byTaskId=new Map;clock;taskRetentionMs;maxTrackedTasks;latestObservedAtMs=null;prunedTasks=0;constructor(e={}){this.clock=e.clock??rr(),this.taskRetentionMs=e.taskRetentionMs??OS,this.maxTrackedTasks=e.maxTrackedTasks??FS}record(e){let n=[...this.byTaskId.get(e.taskId)??[],e];this.byTaskId.set(e.taskId,n.length>ea?n.slice(-ea):n);let r=this.clock.parse(e.timestamp);r!==null&&(this.latestObservedAtMs===null||r>this.latestObservedAtMs)&&(this.latestObservedAtMs=r),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 eu(this.list(e),this.clock)}stats(){let e=0,t=null,n=null;for(let r of this.byTaskId.values()){e+=r.length;let s=r[0]?.timestamp??null,i=r[r.length-1]?.timestamp??null;s&&(t===null||s<t)&&(t=s),i&&(n===null||i>n)&&(n=i)}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,r]of this.byTaskId.entries()){let s=r[r.length-1],i=s?this.clock.parse(s.timestamp):null;i!==null&&this.latestObservedAtMs-i>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,r])=>({taskId:n,latestAt:r[r.length-1]?.timestamp??""})).sort((n,r)=>n.latestAt.localeCompare(r.latestAt)).slice(0,e);for(let n of t)this.byTaskId.delete(n.taskId),this.prunedTasks+=1}};function eu(e,t=rr()){let n=NS(e,t),r={presented:0,viewed:0,responded:0,dismissed:0,deferred:0,contextExpanded:0,contextSkipped:0,timedOut:0,returned:0,attentionShifted:0},s={next:0,suppressed:0,manual:0},i=0,o=0,a=0,c=0;for(let u of n)switch(u.kind){case"presented":r.presented+=1;break;case"viewed":r.viewed+=1;break;case"responded":r.responded+=1,u.latencyMs!==void 0&&(i+=u.latencyMs,o+=1);break;case"dismissed":r.dismissed+=1,u.latencyMs!==void 0&&(a+=u.latencyMs,c+=1);break;case"deferred":r.deferred+=1,u.reason!==void 0&&(s[u.reason]+=1);break;case"context_expanded":r.contextExpanded+=1;break;case"context_skipped":r.contextSkipped+=1;break;case"timed_out":r.timedOut+=1;break;case"returned":r.returned+=1;break;case"attention_shifted":r.attentionShifted+=1;break}return{recentSignals:n.length,lifetimeSignals:e.length,counts:r,deferred:s,responseRate:r.presented>0?r.responded/r.presented:0,dismissalRate:r.presented>0?r.dismissed/r.presented:0,averageResponseLatencyMs:o>0?Math.round(i/o):null,averageDismissalLatencyMs:c>0?Math.round(a/c):null,lastSignalAt:e.length>0?e[e.length-1]?.timestamp??null:null}}function NS(e,t){let n=e.slice(-32),r=n[n.length-1]?.timestamp;if(r===void 0)return n;let s=t.parse(r);if(s===null)return n;let i=n.filter(o=>{let a=t.parse(o.timestamp);return a===null?!0:s-a<=LS});return i.length>0?i:n}function vs(e){return Xt(e)}function zS(e){return _c(e)}function si(e){return e.mode==="status"?vs(e):e.mode!=="approval"||e.activityClass!==void 0&&e.activityClass!=="permission_request"?null:zS(e)}function $n(e){return e?e.kind??e.id:null}function tu(e,t,n){let r=$S(e,t),s=qS(e,t),i=MS(e,t);return{...e,version:ot,updatedAt:n,sessionCount:e.sessionCount+1,...Object.keys(r).length>0?{toolFamilies:r}:{},...Object.keys(s).length>0?{sourceTrust:s}:{},...Object.keys(i).length>0?{consequenceProfiles:i}:{}}}function en(e){let t={consequence:e.consequence},n=nu(e);n&&(t.toolFamily=n);let r=$n(e.source);r&&(t.sourceKey=r);let s=e.metadata?.episode;return s&&typeof s=="object"&&!Array.isArray(s)&&(t.episode=s),t}function DS(e){let t={consequence:e.consequence},n=nu(e);n&&(t.toolFamily=n);let r=$n(e.source);return r&&(t.sourceKey=r),t}function nu(e){return si(e)}function $S(e,t){let n={...e.toolFamilies??{}},r=new Map,s=new Map;for(let i of t){let o=qn(i.metadata,"toolFamily");if(!o)continue;let a=`${o}::${i.interactionId}`,c=s.get(a)??{toolFamily:o,presented:!1,responded:!1,dismissed:!1,contextExpanded:!1,deferred:!1,returned:!1};switch(i.kind){case"presented":c.presented=!0;break;case"responded":c.responded=!0,c.dismissed=!1,i.latencyMs!==void 0&&(c.responseLatencyMs=i.latencyMs);break;case"dismissed":c.responded||(c.dismissed=!0,i.latencyMs!==void 0&&(c.dismissalLatencyMs=i.latencyMs));break;case"context_expanded":c.contextExpanded=!0;break;case"deferred":c.deferred=!0;break;case"returned":c.returned=!0;break}s.set(a,c)}for(let i of s.values()){let o=r.get(i.toolFamily)??{presentations:0,responses:0,dismissals:0,responseLatencyTotal:0,responseLatencyCount:0,dismissalLatencyTotal:0,dismissalLatencyCount:0,contextExpanded:0,deferrals:0,returns:0};(i.presented||i.responded||i.dismissed)&&(o.presentations+=1),i.responded?(o.responses+=1,i.responseLatencyMs!==void 0&&(o.responseLatencyTotal+=i.responseLatencyMs,o.responseLatencyCount+=1)):i.dismissed&&(o.dismissals+=1,i.dismissalLatencyMs!==void 0&&(o.dismissalLatencyTotal+=i.dismissalLatencyMs,o.dismissalLatencyCount+=1)),i.contextExpanded&&(o.contextExpanded+=1),i.deferred&&(o.deferrals+=1,i.returned&&(o.returns+=1)),r.set(i.toolFamily,o)}for(let[i,o]of r.entries()){let a=n[i]??{presentations:0,responses:0,dismissals:0},c=a.presentations+o.presentations,u=a.responses+o.responses,l=a.dismissals+o.dismissals,d=o.responseLatencyCount>0?o.responseLatencyTotal/o.responseLatencyCount:void 0,p=o.dismissalLatencyCount>0?o.dismissalLatencyTotal/o.dismissalLatencyCount:void 0,f=a.contextExpansionRate!==void 0?a.contextExpansionRate*a.presentations:0,m=o.contextExpanded;n[i]={presentations:c,responses:u,dismissals:l,...d!==void 0?{avgResponseLatencyMs:ta(a.avgResponseLatencyMs,a.responses,d,o.responseLatencyCount)}:a.avgResponseLatencyMs!==void 0?{avgResponseLatencyMs:a.avgResponseLatencyMs}:{},...p!==void 0?{avgDismissalLatencyMs:ta(a.avgDismissalLatencyMs,a.dismissals,p,o.dismissalLatencyCount)}:a.avgDismissalLatencyMs!==void 0?{avgDismissalLatencyMs:a.avgDismissalLatencyMs}:{},...c>0?{contextExpansionRate:ks((f+m)/c)}:a.contextExpansionRate!==void 0?{contextExpansionRate:a.contextExpansionRate}:{},...o.deferrals>0?{returnAfterDeferralRate:ks(o.returns/o.deferrals)}:a.returnAfterDeferralRate!==void 0?{returnAfterDeferralRate:a.returnAfterDeferralRate}:{}}}return n}function qS(e,t){let n=structuredClone(e.sourceTrust??{}),r=new Map;for(let s of t){let i=qn(s.metadata,"sourceKey"),o=qn(s.metadata,"consequence");if(!i||o!=="low"&&o!=="medium"&&o!=="high")continue;let a=`${i}::${o}::${s.interactionId}`,c=r.get(a)??{source:i,consequence:o,responded:!1,rejected:!1,dismissed:!1};s.kind==="responded"?(c.responded=!0,c.dismissed=!1,c.rejected=s.responseKind==="rejected"):s.kind==="dismissed"&&(c.responded||(c.dismissed=!0)),r.set(a,c)}for(let s of r.values()){let i=n[s.source]?.[s.consequence]??{confirmations:0,disagreements:0,trustAdjustment:0};s.responded?s.rejected?i.disagreements+=1:i.confirmations+=1:s.dismissed&&(i.disagreements+=1);let o=i.confirmations+i.disagreements;i.trustAdjustment=o>0?Math.round((i.confirmations-i.disagreements)/o*10*Math.min(o/5,1)):0,n[s.source]={...n[s.source]??{},[s.consequence]:i}}return n}function MS(e,t){let n={...e.consequenceProfiles??{}},r=new Map;for(let i of t){let o=qn(i.metadata,"consequence");o!=="low"&&o!=="medium"&&o!=="high"||i.kind==="responded"&&r.set(`${o}::${i.interactionId}`,{consequence:o,rejected:i.responseKind==="rejected"})}let s=new Map;for(let i of r.values()){let o=s.get(i.consequence)??{reviewed:0,rejected:0};o.reviewed+=1,i.rejected&&(o.rejected+=1),s.set(i.consequence,o)}for(let[i,o]of s.entries()){let a=n[i]??{rejectionRate:0,reviewedCount:0},c=(a.reviewedCount??0)+o.reviewed;n[i]={rejectionRate:c>0?ks(((a.reviewedCount??0)*a.rejectionRate+o.rejected)/c):0,reviewedCount:c}}return n}function qn(e,t){let n=e?.[t];return typeof n=="string"&&n.length>0?n:null}function ks(e){return Math.round(e*1e3)/1e3}function ta(e,t,n,r){let s=t+r;if(s<=0)return Math.round(n);let i=(e??0)*t,o=n*r;return Math.round((i+o)/s)}function BS(e,t,n,r="present",s){if(r==="absent")return ru();let i=F.attentionBudget,o=jS(e,s),a=o?(e?.counts.responded??0)+(e?.counts.dismissed??0)+(e?.counts.deferred??0)+(e?.counts.contextExpanded??0)+(e?.counts.contextSkipped??0):0,c=o?e?.counts.deferred??0:0,u=o?e?.averageResponseLatencyMs??null:null,l=t?.metrics.interruptiveVisible??0,d=n??"monitoring",p=t?.level??"steady",f=[],m=0;return p==="high"?(m+=2,f.push("current pressure is already high")):p==="elevated"&&(m+=1,f.push("current pressure is elevated")),d==="overloaded"?(m+=2,f.push("recent operator behavior indicates overload")):(d==="hesitating"||d==="avoiding")&&(m+=1,f.push("recent operator behavior suggests attention is already strained")),a>=i.recentDecisions.highCount?(m+=2,f.push("recent decision volume is high")):a>=i.recentDecisions.elevatedCount&&(m+=1,f.push("recent decision volume is climbing")),u!==null&&u>=i.responseLatencyMs.high?(m+=2,f.push("recent decision latency is slow")):u!==null&&u>=i.responseLatencyMs.elevated&&(m+=1,f.push("recent decision latency is rising")),c>=i.deferredCount.high?(m+=2,f.push("recent deferrals are accumulating")):c>=i.deferredCount.elevated&&(m+=1,f.push("recent deferrals suggest growing burden")),l>=i.interruptiveVisible.high?(m+=2,f.push("multiple interruptive frames are already visible")):l>=i.interruptiveVisible.elevated&&(m+=1,f.push("interruptive work is already visible")),{level:m>=i.scoreBands.highScore?"high":m>=i.scoreBands.elevatedScore?"elevated":"light",thresholdOffset:m>=i.scoreBands.highScore?i.thresholdOffset.high:m>=i.scoreBands.elevatedScore?i.thresholdOffset.elevated:0,metrics:{recentDecisions:a,deferredCount:c,averageResponseLatencyMs:u,interruptiveVisible:l,pressureLevel:p,attentionState:d},reasons:f}}function jS(e,t){let n=e?.lastSignalAt;if(!n||t===void 0)return!0;let r=Date.parse(n),s=HS(t);return Number.isNaN(r)||s===null?!0:s-r<=F.pressureForecast.freshness.residualMs}function HS(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 ru(){return{level:"light",thresholdOffset:0,metrics:{recentDecisions:0,deferredCount:0,averageResponseLatencyMs:null,interruptiveVisible:0,pressureLevel:"steady",attentionState:"monitoring"},reasons:[]}}function VS(e,t,n){let r=WS(t),s=[],i=0,o=F.pressureForecast,a=ZS(e,n),c=a===null||a<=o.freshness.demandMs,u=a===null||a<=o.freshness.residualMs,l=c?(e?.counts.presented??0)+(e?.counts.deferred??0)+(e?.counts.returned??0):0,d=u?e?.averageResponseLatencyMs??null:null,p=u?e?.counts.deferred??0:0,f=u?e?.deferred.suppressed??0:0,m=u?e?.responseRate??0:0,g=u?e?.counts.presented??0:0;return r>=o.visibleInterruptiveBoost.highCount?(i+=2,s.push("multiple interruptive frames are already visible")):r>=o.visibleInterruptiveBoost.elevatedCount&&(i+=1,s.push("interruptive work is already visible")),l>=o.recentDemand.highCount?(i+=2,s.push("incoming demand is arriving quickly")):l>=o.recentDemand.elevatedCount&&(i+=1,s.push("incoming demand is climbing")),d!==null&&d>=o.responseLatencyMs.high?(i+=2,s.push("recent response latency is slow")):d!==null&&d>=o.responseLatencyMs.elevated&&(i+=1,s.push("recent response latency is rising")),f>=o.deferredPressure.highSuppressedCount||p>=o.deferredPressure.highDeferredCount?(i+=2,s.push("recent deferrals suggest operator capacity is tightening")):(f>=o.deferredPressure.elevatedSuppressedCount||p>=o.deferredPressure.elevatedDeferredCount)&&(i+=1,s.push("recent deferrals suggest operator capacity is tightening")),g>=o.slowClearance.presentedCount&&m<=o.slowClearance.responseRate&&(i+=1,s.push("presented work is being cleared slowly")),{level:i>=o.scoreBands.highLevel?"high":i>=o.scoreBands.elevatedLevel?"elevated":"steady",overloadRisk:i>=o.scoreBands.highRisk?"high":i>=o.scoreBands.risingRisk?"rising":"low",score:i,metrics:{recentDemand:l,interruptiveVisible:r,averageResponseLatencyMs:d,deferredCount:p,suppressedCount:f},reasons:s}}function ZS(e,t){let n=e?.lastSignalAt;if(!n||t===void 0)return null;let r=Date.parse(n),s=US(t);return Number.isNaN(r)||s===null?null:Math.max(0,s-r)}function US(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 KS(){return{level:"steady",overloadRisk:"low",score:0,metrics:{recentDemand:0,interruptiveVisible:0,averageResponseLatencyMs:null,deferredCount:0,suppressedCount:0},reasons:[]}}function WS(e){return e?[e.now,...e.next].filter(t=>t!==null).filter(GS).length:0}function GS(e){return e.mode!=="status"||e.consequence==="high"||e.tone==="critical"}var Mn={topology:{supportsAmbient:!0},responses:{supportsSingleChoice:!0,supportsMultipleChoice:!1,supportsForm:!0,supportsTextResponse:!1}};function na(e={}){let t=e.taskSignalSummary??ws();return{currentFrame:e.currentFrame??null,currentTaskView:e.currentTaskView??XS(),currentEpisode:e.currentEpisode??null,attentionView:e.attentionView??JS(),taskSignalSummary:t,continuitySignalSummary:e.continuitySignalSummary??t,globalSignalSummary:e.globalSignalSummary??ws(),taskAttentionState:e.taskAttentionState??"monitoring",globalAttentionState:e.globalAttentionState??"monitoring",pressureForecast:e.pressureForecast??KS(),attentionBurden:e.attentionBurden??ru(),surfaceCapabilities:e.surfaceCapabilities?{topology:{...e.surfaceCapabilities.topology},responses:{...e.surfaceCapabilities.responses}}:{topology:{...Mn.topology},responses:{...Mn.responses}},operatorPresence:e.operatorPresence??"present"}}function ir(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 ii(e,t={},n){let r=ir(t);if(YS(r))return r.currentFrame===e?r:na({...r,currentFrame:e});let s=r.globalSignalSummary??ws(),i=r.pressureForecast??VS(s,r.attentionView,n),o=r.operatorPresence??"present";return na({...r,currentFrame:e,globalSignalSummary:s,pressureForecast:i,attentionBurden:r.attentionBurden??BS(s,i,r.globalAttentionState,o,n),operatorPresence:o})}function YS(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 XS(){return{now:null,next:[],ambient:[]}}function JS(){return{now:null,next:[],ambient:[]}}function ws(){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 k(e,t=[]){return{rule:e,kind:"noop",rationale:t}}function se(e,t,n,r,s){return{rule:e,kind:"override",decision:t,currentPriority:n,currentScore:r,rationale:s}}var QS=e=>{let{candidate:t,context:n,evidence:r}=e,s=r.attentionView.now??r.currentFrame;if(!s)return k("deferral_escalation");let i=s===r.currentFrame?n.currentScore:pe(s,{now:e.referenceTimestamp});return i===null||t.blocking||t.priority==="background"||it(s)||!Ut(r.continuitySignalSummary)||n.candidateScore<i-F.queuePlanner.escalationScoreSlack?k("deferral_escalation"):se("deferral_escalation",{kind:"activate",candidate:t},G(s),i,["repeated deferral or resurfacing makes this task more deserving of current focus"])};function Ut(e){return e.counts.deferred>=F.queuePlanner.deferredEscalationThreshold||e.counts.returned>=F.queuePlanner.returnedEscalationThreshold}var oi=F.queuePlanner;function eA(e,t,n,r){return n.currentFrame?sA(n.currentFrame,e,t,n,r):rA(e,t,n)}function nt(e,t,n){return{kind:ai(e,t,n),candidate:e}}function tA(e,t,n,r){return ou(e,n)?{kind:"queue",candidate:e}:nt(e,t,r)}function Ss(e,t,n,r){return(n.components.deferralAffinity>0||n.components.consequenceCalibration>0)&&t.minimumLane!=="now"?{kind:"queue",candidate:e}:nt(e,t,r)}function ai(e,t,n=Mn){return Bc(e,t.minimumLane==="ambient"?"ambient":"queue")==="ambient"&&nA(e,n)?"ambient":"queue"}function nA(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 rA(e,t,n){let r=[];return iu(e)?n.pressureForecast.overloadRisk==="high"?(r.push("the episode has become actionable, but predicted overload keeps it in next instead of surfacing it now"),R({kind:"queue",candidate:e},r)):t.policyVerdict.mayInterrupt?(r.push("the episode has accumulated enough evidence to deserve interruptive attention"),R({kind:"activate",candidate:e},r)):(r.push("the episode has become actionable, so it stays visible even though policy still prevents interrupting"),R({kind:"queue",candidate:e},r)):su(e,t.policyVerdict,n.pressureForecast)?(r.push("predicted overload keeps lower-value work peripheral before the queue spikes"),R(Ss(e,t.policyVerdict,t.utility,n.surfaceCapabilities),r)):!t.policyVerdict.mayInterrupt&&t.policyVerdict.minimumLane==="ambient"?ei(e)?(r.push("status routing stays non-blocking, but blocked-like semantics keep it visible in next"),R({kind:"queue",candidate:e},r)):(r.push("policy keeps this interaction ambient until stronger context arrives"),R(nt(e,t.policyVerdict,n.surfaceCapabilities),r)):(r.push("nothing is in now for this task"),R({kind:"activate",candidate:e},r))}function sA(e,t,n,r,s){let i=[],o=iu(t),a=it(e),c=G(e),u=n.currentScore;if(o)return a||r.pressureForecast.overloadRisk==="high"?(i.push(a?"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"),R({kind:"queue",candidate:t},i,c,u)):u!==null&&n.candidateScore<u-oi.actionableEpisodeScoreSlack?(i.push("actionable episode evidence keeps this work visible even though the current frame is still stronger"),R({kind:"queue",candidate:t},i,c,u)):n.policyVerdict.mayInterrupt?(i.push("the episode has accumulated enough evidence to compete for current focus"),R({kind:"activate",candidate:t},i,c,u)):(i.push("the episode has become actionable, so it stays in next even though policy still prevents interrupting"),R({kind:"queue",candidate:t},i,c,u));if(a&&!t.blocking)return Ut(r.continuitySignalSummary)?(i.push("blocking work keeps resurfacing backlog in next so it stays visible until focus can return"),R({kind:"queue",candidate:t},i,c,u)):(i.push("blocking work keeps non-blocking updates in the periphery"),R(nt(t,n.policyVerdict,r.surfaceCapabilities),i));if(!a&&t.blocking)return i.push("blocking work interrupts non-blocking activity"),R({kind:"activate",candidate:t},i);if(su(t,n.policyVerdict,r.pressureForecast))return i.push("predicted overload keeps lower-value work peripheral before the queue spikes"),R(Ss(t,n.policyVerdict,n.utility,r.surfaceCapabilities),i,c,u);if(iA(t,r.attentionView,n.referenceTimestamp??t.timestamp,s))return Ut(r.continuitySignalSummary)?(i.push("existing urgent backlog keeps resurfacing work in next so it remains visible"),R({kind:"queue",candidate:t},i,c,u)):(i.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"),R(Ss(t,n.policyVerdict,n.utility,r.surfaceCapabilities),i,c,u));if(u!==null&&n.candidateScore<u)return i.push("current work still outranks the new candidate"),R(nt(t,n.policyVerdict,r.surfaceCapabilities),i,c,u);if(u!==null&&n.candidateScore===u){let l=ti(t.timestamp,e.timing.updatedAt);if(l!==null&&l<0)return i.push("older work yields when scores tie"),R(nt(t,n.policyVerdict,r.surfaceCapabilities),i,c,u)}return i.push("new work outranks the current frame"),R({kind:"activate",candidate:t},i,c,u)}function R(e,t,n=null,r=null){return{decision:e,currentPriority:n,currentScore:r,reasons:t}}function iA(e,t,n,r){return r?.deferLowValueDuringPressure===!1||e.blocking||e.consequence==="high"||e.tone==="critical"||!t?!1:ou(e,t)?!0:[t.now,...t.next].filter(i=>i!==null).filter(i=>i.interactionId===e.interactionId?!1:it(i)||i.consequence==="high"||i.tone==="critical").filter(i=>{let o=ti(n,i.timing.updatedAt);return o===null?!0:o<=oi.urgentBacklogWindowMs}).length>=2}function su(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 iu(e){return nr(e.relationHints,"resolves")?!1:!e.blocking&&sr(e)&&(e.episodeEvidenceScore??0)>=oi.actionableEpisodeEvidenceThreshold}function ou(e,t){return e.episodeId!==void 0&&fe(t,e.episodeId,{lanes:["now","next"],excludedInteractionId:e.interactionId}).length>0}var oA=e=>{let t=e.evidence.currentFrame,{candidate:n,context:r,evidence:s,helpers:i,plannerDefaults:o,routed:a}=e;if(!t||a.decision.kind!=="activate"||o?.batchStatusBursts===!1||t.taskId!==n.taskId||t.mode!=="status"||n.mode!=="status"||n.blocking||n.consequence==="high"||n.tone==="critical")return k("burst_dampening");let c=Date.parse(t.timing.updatedAt),u=Date.parse(n.timestamp);return Number.isNaN(c)||Number.isNaN(u)||u-c>F.queuePlanner.statusBurstWindowMs?k("burst_dampening"):se("burst_dampening",i.peripheralDecision(n,r.policyVerdict,s.surfaceCapabilities),G(t),r.currentScore,[`rapid successive updates within ${u-c}ms stay bundled instead of stealing focus`])},de={STATUS_ONLY:0,NON_STATUS:1,CRITICAL_CONSEQUENCE:2,BLOCKING_OR_REQUIRED:3},aA=e=>{let t=e.evidence.currentFrame,{candidate:n,context:r,evidence:s,helpers:i,routed:o,plannerDefaults:a}=e;if(!t||o.decision.kind!=="activate"||r.currentScore===null)return k("conflicting_interrupt");let c=cA(t),u=uA(n,r.policyVerdict);if(c===de.STATUS_ONLY||u===de.STATUS_ONLY||u>c)return k("conflicting_interrupt");if(u<c)return se("conflicting_interrupt",i.peripheralDecision(n,r.policyVerdict,s.surfaceCapabilities),G(t),r.currentScore,["the current interrupt is more urgent, so the challenger waits instead of stealing focus"]);let l=a?.conflictingInterruptMargin??F.queuePlanner.conflictingInterruptMargin;return l<=0||r.candidateScore>=r.currentScore+l?k("conflicting_interrupt"):se("conflicting_interrupt",i.peripheralDecision(n,r.policyVerdict,s.surfaceCapabilities),G(t),r.currentScore,["equally interruptive work needs a clear advantage before it can replace the current interrupt"])};function cA(e){return e.mode!=="status"&&e.responseSpec?.kind!=="none"?de.BLOCKING_OR_REQUIRED:e.tone==="critical"||e.consequence==="high"?de.CRITICAL_CONSEQUENCE:e.mode!=="status"?de.NON_STATUS:de.STATUS_ONLY}function uA(e,t){return e.blocking||t.requiresOperatorResponse||t.minimumLane==="now"?de.BLOCKING_OR_REQUIRED:e.tone==="critical"||e.consequence==="high"?de.CRITICAL_CONSEQUENCE:e.mode!=="status"?de.NON_STATUS:de.STATUS_ONLY}var lA=e=>{let t=e.evidence.currentFrame,{candidate:n,context:r,evidence:s,helpers:i}=e;if(!t||r.currentScore===null||n.blocking||it(t)||n.consequence==="high"||n.tone==="critical"||r.candidateScore<=r.currentScore)return k("context_patience");let{contextCost:o}=r.utility.components,a=o<=-6?F.queuePlanner.highContextQueueMargin:o<=-3?F.queuePlanner.mediumContextQueueMargin:null;if(a===null||r.candidateScore>=r.currentScore+a)return k("context_patience");let c=r.candidateScore-r.currentScore;return se("context_patience",i.peripheralDecision(n,r.policyVerdict,s.surfaceCapabilities),G(t),r.currentScore,[`memory suggests this interaction usually needs context, so it stays peripheral until it clears the ${a}-point margin (gap: ${c})`])},dA=e=>{let t=e.evidence.currentFrame,{candidate:n,context:r,evidence:s,helpers:i,routed:o,plannerDefaults:a}=e;if(!t||o.decision.kind!=="activate"||r.currentScore===null||n.blocking||n.consequence==="high"||n.tone==="critical"||t.consequence==="high"||t.tone==="critical"||pA(t,n))return k("decision_stream_continuity");let c=a?.streamContinuityMargin??F.queuePlanner.streamContinuityMargin;if(c<=0||r.candidateScore>=r.currentScore+c)return k("decision_stream_continuity");let u=r.candidateScore-r.currentScore;return se("decision_stream_continuity",i.peripheralDecision(n,r.policyVerdict,s.surfaceCapabilities),G(t),r.currentScore,[`the current decision stream stays active until cross-stream work clears the ${c}-point margin (gap: ${u})`])};function pA(e,t){let n=$n(e.source),r=$n(t.source);if(n&&r&&n!==r)return!1;if(n&&r&&n===r)return!0;let s=vs(e),i=vs(t);return s&&i&&s!==i?!1:!!(s&&i&&s===i||e.taskId===t.taskId)}var fA=e=>{let t=e.evidence.currentFrame,{candidate:n,context:r,evidence:s,helpers:i,routed:o,plannerDefaults:a}=e;if(!t||o.decision.kind!=="activate"||n.blocking||n.consequence==="high"||n.tone==="critical")return k("minimum_dwell");let c=a?.minimumDwellMs??F.queuePlanner.minimumDwellMs;if(c<=0)return k("minimum_dwell");let u=Date.parse(t.timing.updatedAt),l=Date.parse(e.referenceTimestamp);if(Number.isNaN(u)||Number.isNaN(l)||l-u>=c)return k("minimum_dwell");let d=c-(l-u);return se("minimum_dwell",i.peripheralDecision(n,r.policyVerdict,s.surfaceCapabilities),G(t),r.currentScore,[`recently surfaced work keeps focus for another ${d}ms to avoid a premature switch`])},mA=e=>{let t=e.evidence.currentFrame,{candidate:n,context:r,evidence:s,helpers:i}=e;return!t||!n.episodeId||!ni(t,n.episodeId)?k("same_episode"):n.blocking&&!it(t)?se("same_episode",{kind:"activate",candidate:n},G(t),r.currentScore,["the current episode has progressed into an interruptive step that belongs in now"]):n.blocking&&nr(n.relationHints,"supersedes")&&Qs(n)!=="weak"?se("same_episode",{kind:"activate",candidate:n},G(t),r.currentScore,["the current episode has advanced to a superseding step that belongs in now"]):Ut(s.continuitySignalSummary)?k("same_episode"):se("same_episode",i.peripheralDecision(n,r.policyVerdict,s.surfaceCapabilities),G(t),r.currentScore,["related work stays bundled with the current episode already in now"])},gA=e=>{let t=e.evidence.currentFrame;return!t||t.interactionId!==e.candidate.interactionId?k("same_interaction"):se("same_interaction",{kind:"activate",candidate:e.candidate},null,null,["same interaction refreshes the existing frame"])},hA=e=>{let{candidate:t,context:n,evidence:r,helpers:s}=e;if(!t.episodeId||t.blocking||t.mode!=="status"&&(t.tone==="critical"||t.consequence==="high"))return k("visible_episode");let i=fe(r.attentionView,t.episodeId,{excludedInteractionId:t.interactionId}),o=r.attentionView.now!==null&&ni(r.attentionView.now,t.episodeId,t.interactionId);return t.mode==="status"&&(t.tone==="critical"||t.consequence==="high")&&!o||i.length===0||!(t.episodeState==="batched"||(t.episodeSize??1)>=2||i.length>=2)||Ut(r.continuitySignalSummary)?k("visible_episode"):se("visible_episode",s.batchedDecision(t,n.policyVerdict,r.attentionView,r.surfaceCapabilities),null,r.currentFrame?n.currentScore:null,[r.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"])},bA=[hA,mA,fA,oA,gA,QS,aA,dA,lA],ci=class{plannerDefaults;constructor(e={}){this.plannerDefaults=e.plannerDefaults}explain(e,t,n){let r=n.referenceTimestamp??t.timestamp,s=this.resolveEvidenceContext(e,n,r),i=eA(t,n,s,this.plannerDefaults);return this.applyContinuity(t,n,s,i,r)}clear(){return{kind:"clear"}}preferredPeripheralBucket(e,t,n){return ai(e,t,n)}applyContinuity(e,t,n,r,s){let i=new Set(this.plannerDefaults?.disabledContinuityRules??[]),o=bA.map(c=>{let u=c({candidate:e,context:t,evidence:n,routed:r,referenceTimestamp:s,plannerDefaults:this.plannerDefaults,helpers:{peripheralDecision:nt,batchedDecision:tA}});return i.has(u.rule)?k(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:[...r.reasons,...a.rationale],continuityEvaluations:o}:{...r,continuityEvaluations:o}}resolveEvidenceContext(e,t,n){return ii(e,ir(t),St(n)??0)}},yA=class{runtime;constructor(e){this.runtime=e}assemble(e,t){let n=this.runtime.signals.summarize(e),r=this.runtime.signals.summarize(),s=Je(n),i=Je(r),o=this.runtime.getTaskView(e),a=this.runtime.getAttentionView(),c=this.runtime.getOperatorPresence();return ii(t,ir({currentFrame:t,currentTaskView:o,currentEpisode:this.runtime.episodes.readFrameEpisode(t),attentionView:a,taskSignalSummary:n,continuitySignalSummary:n,globalSignalSummary:r,taskAttentionState:s,globalAttentionState:i,surfaceCapabilities:this.runtime.getSurfaceCapabilities(),operatorPresence:c}),this.runtime.clock.nowMs())}augmentContinuitySignalSummary(e,t,n){let r=this.resolveContinuitySignalSummary(e,t,n.taskSignalSummary);return r===n.taskSignalSummary?n:{...n,continuitySignalSummary:r}}resolveContinuitySignalSummary(e,t,n){if(!t.episodeId)return n;let r=this.runtime.signals.list(e),s=this.runtime.signals.list().filter(i=>i.taskId!==e&&vA(i)===t.episodeId);return s.length===0?n:eu([...r,...s].sort((i,o)=>i.timestamp.localeCompare(o.timestamp)))}};function vA(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 au=class extends Error{code;constructor(e,t){super(t),this.name=new.target.name,this.code=e}},$=class extends au{field;constructor(e,t={}){super(t.code??"validation_error",e),this.field=t.field}},kA=class extends au{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 wA(e,t,n){let r=EA(e,n),s={taskId:e.taskId,interactionId:e.interactionId,timestamp:n,frameId:e.id,...e.source!==void 0?{source:e.source}:{},metadata:en(e)};return t.response.kind==="dismissed"?{kind:"dismissed",...s,...r!==void 0?{latencyMs:r}:{}}:{kind:"responded",...s,responseKind:t.response.kind,...r!==void 0?{latencyMs:r}:{}}}function SA(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:{...DS(e),autoResolved:!0}}}function On(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:en(e)}}function cu(e,t,n){let r=e.now,s=t.now;return s?[...AA(r,s,n),..._A(e,s,n)]:[]}function Rn(e,t,n,r,s,i={}){return{kind:e,taskId:t,interactionId:n,timestamp:r,...s?.id!==void 0?{frameId:s.id}:{},...s?.source!==void 0?{source:s.source}:{},...s?{metadata:en(s)}:{},...i.surface!==void 0?{surface:i.surface}:{},...e==="context_expanded"&&i.section!==void 0?{section:i.section}:{},...e==="context_skipped"&&i.section!==void 0?{section:i.section}:{},...e==="timed_out"&&i.timeoutMs!==void 0?{timeoutMs:i.timeoutMs}:{}}}function AA(e,t,n){if(!e||As(e,t))return[];let r={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?[r]:[r,{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 _A(e,t,n){let r=e.next.some(s=>As(s,t))?"next":e.ambient.some(s=>As(s,t))?"ambient":null;return r?[{kind:"returned",taskId:t.taskId,interactionId:t.interactionId,timestamp:n,frameId:t.id,...t.source!==void 0?{source:t.source}:{},from:r,metadata:en(t)}]:[]}function EA(e,t){let n=Date.parse(e.timing.updatedAt),r=Date.parse(t);if(!(Number.isNaN(n)||Number.isNaN(r)))return Math.max(0,r-n)}function As(e,t){return e.id===t.id||e.taskId===t.taskId&&e.interactionId===t.interactionId}var TA=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),r=this.runtime.getAttentionView();this.retireVisibleFrames(n);let s=this.applyResponseExpiry(this.runtime.planner.plan(e,null)),i=this.runtime.taskViews.addAmbient(e.taskId,s),o=this.runtime.getAttentionView();return this.recordAttentionTransition(r,o,e.timestamp),this.runtime.recordSignal(On(s,"suppressed")),this.runtime.notifyTaskView(e.taskId,i),this.runtime.notifyAttentionView(),i.now??s}findResolvedEpisodeFrames(e,t){return CA(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 r=`${n.taskId}::${n.interactionId}`;if(t.has(r))continue;t.add(r);let s=this.runtime.taskViews.discard(n.taskId,n.interactionId);this.runtime.clearOperatorEngagement(n.taskId,n.interactionId),this.runtime.notifyFrame(n.taskId,s.now),this.runtime.notifyTaskView(n.taskId,s)}}recordAttentionTransition(e,t,n){for(let r of cu(e,t,n))this.runtime.recordSignal(r)}};function RA(e,t){return!e.episodeId||!nr(e.relationHints,"supersedes")?[]:fe(t,e.episodeId,{excludedInteractionId:e.interactionId})}function CA(e,t,n){if(!xA(e)||!e.episodeId)return[];let r=fe(t,e.episodeId,{excludedInteractionId:e.interactionId});return r.length===0?[]:r.some(s=>IA(e,s,n))?[]:LA(e,r)?r:[]}function xA(e){return Uc(e)}function IA(e,t,n){let r=n.parse(e.timestamp),s=n.parse(t.timing.updatedAt);return r!==null&&s!==null?r<s:e.timestamp<t.timing.updatedAt}function LA(e,t){if(t.every(r=>r.taskId===e.taskId))return!0;let n=hs(e.relationHints);return n?t.every(r=>hs(OA(r))===n):!1}function OA(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(FA):[]}function FA(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 PA=class{runtime;constructor(e){this.runtime=e}commitFrame(e,t=[]){let n=this.runtime.getAttentionView(),r=new Set;for(let o of t){let a=`${o.taskId}::${o.interactionId}`;if(r.has(a))continue;r.add(a);let c=this.runtime.taskViews.discard(o.taskId,o.interactionId);o.taskId!==e.taskId&&(this.runtime.notifyFrame(o.taskId,c.now),this.runtime.notifyTaskView(o.taskId,c))}let s=this.runtime.taskViews.setNow(e.taskId,e),i=this.runtime.getAttentionView();return this.recordAttentionTransition(n,i,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:en(e)}),this.runtime.notifyFrame(e.taskId,e),this.runtime.notifyTaskView(e.taskId,s),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 o of[n.now,...n.next,...n.ambient])o&&this.runtime.episodes.resolveInteraction(o.interactionId);this.runtime.clearOperatorEngagement(e);let s=this.runtime.taskViews.clear(e),i=this.runtime.getAttentionView();return this.recordAttentionTransition(t,i,this.runtime.clock.nowIso()),this.runtime.notifyFrame(e,null),this.runtime.notifyTaskView(e,s),this.runtime.notifyAttentionView(),null}queueFrame(e,t){this.clearEngagementIfDemotingNow(e,t.interactionId);let n=this.runtime.taskViews.addNext(e,t);return this.runtime.recordSignal(On(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(On(t,"suppressed")),this.runtime.notifyTaskView(e,n),this.runtime.notifyAttentionView(),n.now??t}materializePeripheralFrame(e,t,n){let r=e.episodeId?this.findPeripheralEpisodeFrame(e.episodeId,n):null;if(!r){let u=this.applyResponseExpiry(this.runtime.planner.plan(e,null));return t==="queue"?this.queueFrame(e.taskId,u):this.addAmbientFrame(e.taskId,u)}let s=r.bucket==="queue"||t==="queue"?"queue":"ambient",o={...this.applyResponseExpiry(this.runtime.planner.plan(e,r.frame)),id:r.frame.id},a=this.runtime.taskViews.discard(r.frame.taskId,r.frame.interactionId);this.runtime.notifyTaskView(r.frame.taskId,a);let c=s==="queue"?this.runtime.taskViews.addNext(o.taskId,o):this.runtime.taskViews.addAmbient(o.taskId,o);return this.runtime.recordSignal(On(o,s==="queue"?"next":"suppressed",e)),this.runtime.notifyTaskView(o.taskId,c),this.runtime.notifyAttentionView(),o}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 kA({taskId:e.taskId,interactionId:e.interactionId,expiredAt:n});let r=this.runtime.getAttentionView(),s=this.runtime.clock.nowIso();this.runtime.clearOperatorEngagement(e.taskId,e.interactionId),this.runtime.recordSignal(wA(t,e,s)),this.runtime.episodes.resolveInteraction(e.interactionId);let i=this.runtime.taskViews.resolve(e.taskId,e.interactionId),o=this.runtime.getAttentionView();this.recordAttentionTransition(r,o,s),this.runtime.notifyFrame(e.taskId,i.now??null),this.runtime.notifyTaskView(e.taskId,i),this.runtime.notifyAttentionView(),this.runtime.emitResponse(e)}applyAutoResponse(e,t){let n=this.runtime.clock.nowIso();return this.runtime.recordSignal(SA(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 RA(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 r=this.runtime.clock.parse(n),s=this.runtime.clock.parse(t);return r===null||s===null||s<=r?null:n}findPeripheralEpisodeFrame(e,t){let n=fe(t,e,{lanes:["next"]})[0];if(n)return{frame:n,bucket:"queue"};let r=fe(t,e,{lanes:["ambient"]})[0];return r?{frame:r,bucket:"ambient"}:null}findNowEpisodeFrame(e,t){return fe(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 r=n.next.find(s=>s.interactionId===t);return r||(n.ambient.find(s=>s.interactionId===t)??null)}recordAttentionTransition(e,t,n){for(let r of cu(e,t,n))this.runtime.recordSignal(r)}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)}},NA=12,zA=class{taskViews=new Map;get(e){return this.taskViews.get(e)??{now:null,next:[],ambient:[]}}setNow(e,t){let n=this.get(e),r=n.next.filter(o=>o.interactionId!==t.interactionId),s=n.now&&n.now.interactionId!==t.interactionId?n.now:null,i={now:t,next:s?[s,...r]:r,ambient:n.ambient.filter(o=>o.interactionId!==t.interactionId)};return this.persist(e,i)}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),r={now:n.now?.interactionId===t?null:n.now,next:n.next.filter(s=>s.interactionId!==t),ambient:n.ambient.filter(s=>s.interactionId!==t)};return this.persist(e,r)}resolve(e,t){let n=this.get(e),r=n.next.filter(a=>a.interactionId!==t),s=n.ambient.filter(a=>a.interactionId!==t),i=n.now;i?.interactionId===t&&(i=r.shift()??null);let o={now:i,next:r,ambient:s};return this.persist(e,o)}upsert(e,t,n){let r=this.get(e),s=r.next.filter(u=>u.interactionId!==n.interactionId),i=r.ambient.filter(u=>u.interactionId!==n.interactionId),c={now:r.now?.interactionId===n.interactionId?s.shift()??null:r.now,next:t==="next"?[n,...s]:s,ambient:t==="ambient"?[n,...i].slice(0,NA):i};return this.persist(e,c)}values(){return this.taskViews.values()}stats(){let e=0,t=0,n=0;for(let r of this.taskViews.values())r.now&&(e+=1),t+=r.next.length,n+=r.ambient.length;return{taskCount:this.taskViews.size,nowCount:e,nextCount:t,ambientCount:n,totalFrames:e+t+n}}persist(e,t){return DA(t)?this.taskViews.delete(e):this.taskViews.set(e,t),t}};function DA(e){return e.now===null&&e.next.length===0&&e.ambient.length===0}var _s=Symbol("aperture.internal.subscribeTrace");function ui(e,t){let n=[];return Fn("",e,t,n),n}function Fn(e,t,n,r){if(!Object.is(t,n)){if(t==null&&Cn(n)){for(let s of Object.keys(n).sort()){let i=e.length>0?`${e}.${s}`:s;Fn(i,void 0,n[s],r)}return}if(n==null&&Cn(t)){for(let s of Object.keys(t).sort()){let i=e.length>0?`${e}.${s}`:s;Fn(i,t[s],void 0,r)}return}if(t===void 0||n===void 0){r.push({path:e,before:t,after:n});return}if(Array.isArray(t)||Array.isArray(n)){r.push({path:e,before:t,after:n});return}if(Cn(t)&&Cn(n)){let s=new Set([...Object.keys(t),...Object.keys(n)]);for(let i of[...s].sort()){let o=e.length>0?`${e}.${i}`:i;Fn(o,t[i],n[i],r)}return}r.push({path:e,before:t,after:n})}}function Cn(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}var $A=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:r,explanation:s,result:i}=t,o=t.suppressed===!0,a=HA(e.event,r),c=s.record,u=qA(c,e,r,o);return{...e,evaluation:{kind:"candidate",original:n,adjusted:r},candidateTransition:MA(n,r),frameTransition:BA(e.current,o?e.current:i),heuristics:{scoreOffset:r.attentionScoreOffset??0,rationale:r.attentionRationale??[]},...a!==void 0?{semantic:a}:{},episode:jA(r),decisionRecord:c,policy:c.policy.verdict,policyRules:{gateEvaluations:c.policy.gateEvaluations,criterion:c.policy.criterion,criterionEvaluations:c.policy.criterionEvaluations},utility:{candidate:c.value.breakdown,currentScore:c.value.currentScore,currentPriority:c.value.currentPriority},planner:{kind:c.planning.route,reasons:c.planning.reasons,reasonCodes:c.planning.reasonCodes,continuityEvaluations:c.planning.continuityEvaluations},coordination:{kind:u.kind,resultLane:u.resultLane,candidateScore:c.value.claimScore,currentScore:c.value.currentScore,currentPriority:c.value.currentPriority,criterion:c.policy.criterion,ambiguity:c.planning.ambiguity,reasons:u.reasons,reasonCodes:u.reasonCodes,continuityEvaluations:u.continuityEvaluations},pressureForecast:c.evidenceSnapshot.pressureForecast,attentionBurden:c.evidenceSnapshot.attentionBurden,result:i}}};function qA(e,t,n,r){return r?{kind:"suppressed",resultLane:"none",reasons:["stale event-time candidate was suppressed by episode lifecycle"],reasonCodes:[],continuityEvaluations:[]}:{kind:e.planning.route,resultLane:WA(t.attentionView,n.taskId,n.interactionId,e.planning.route),reasons:e.planning.reasons,reasonCodes:e.planning.reasonCodes,continuityEvaluations:e.planning.continuityEvaluations}}function MA(e,t){return{changedFields:ui(e,t)}}function BA(e,t){return{changedFields:ui(e,t)}}function jA(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 HA(e,t){let n=e.semantic;if(!n)return;let r=Dc(t)??uu(e),s=zc(t),i=Ne(t),o=bw(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}:{},...s!==null?{observation:VA(s)}:{},...o!==null?{observationalStatusConflict:o}:{},ontology:r,...n.whyNow!==void 0?{whyNow:n.whyNow}:{},relationHints:n.relationHints,factors:n.factors,reasons:n.reasons,influence:ZA(e,t),impact:UA(e,t),...n.provenance!==void 0?{provenance:n.provenance}:{}}}function VA(e){return{kind:e.kind,polarity:e.polarity,owner:e.ownership.owner,...e.ownership.capabilityFamily!==void 0?{toolFamily:e.ownership.capabilityFamily}:{},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 ZA(e,t){let n=e.semantic;if(!n)return[];let r=Dc(t)??uu(e),s=[];return e.type==="task.updated"?(wt(t)?s.push("engine-owned observational evidence resolved noisy failed-status routing as status handling"):s.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&&s.push("activity class enriched canonical status facts"),e.toolFamily===n.toolFamily&&n.toolFamily!==void 0&&s.push(wt(t)?"tool family helped identify the observational status conflict":"tool family enriched canonical status facts without changing the route"),n.relationHints.length>0&&s.push("relation hints informed continuity handling"),r.blocking!=="non_blocking"&&!t.blocking&&s.push(r.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"),Zt(t)?s.push("semantic abstention can keep non-blocking status work peripheral until clearer evidence arrives"):zn(t)==="low"&&s.push("low semantic confidence can keep non-blocking status work peripheral until the signal is clearer"),s):e.type==="human.input.requested"?("activityClass"in e&&e.activityClass===n.activityClass&&n.activityClass!==void 0&&s.push("activity class was projected into the canonical request"),e.consequence===n.consequence&&n.consequence!==void 0&&s.push("semantic consequence set the canonical human-input consequence"),n.toolFamily!==void 0&&(e.request.kind==="approval"?s.push("tool family remained decision-bearing on the approval path"):s.push("tool family stayed semantic-only on the question/form path")),n.relationHints.length>0&&s.push("relation hints informed continuity handling"),Zt(t)?s.push(t.blocking?"semantic abstention stayed visible but did not downgrade blocking work":"semantic abstention constrained non-blocking routing"):zn(t)==="low"&&s.push(t.blocking?"semantic low confidence stayed visible but did not downgrade blocking work":"low semantic confidence constrained non-blocking routing"),s.length===0&&s.push("semantic interpretation stayed explanatory beyond the explicit request"),s):(s.push("semantic interpretation was recorded for explanation only"),s)}function uu(e){let t=Ys(e).ontology;if(!t)throw new Error("Trace semantic summary requires compiled attention ontology.");return t}function UA(e,t){let n=e.semantic,r=new Set,s=new Set,i=new Set,o=new Set,a=new Set,c=zc(t),u=Ne(t),l=KA(e);if(!n)return{routingAuthority:l,decisionBearing:[],explanatory:[],canonical:[],routing:[],continuity:[],ambiguity:[],contextOnly:[]};switch(a.add("intent"),n.activityClass!==void 0&&a.add("activity"),n.toolFamily!==void 0&&a.add("tool"),n.consequence!==void 0&&a.add("consequence"),n.whyNow!==void 0&&a.add("why now"),n.relationHints.length>0&&a.add("relations"),u?.confidence!==void 0&&a.add("confidence"),u?.abstained===!0&&a.add("abstention"),c!==null&&a.add("observation"),e.type){case"task.updated":"activityClass"in e&&e.activityClass===n.activityClass&&n.activityClass!==void 0&&I(a,r,"activity","activity (canonical)"),n.toolFamily!==void 0&&e.toolFamily===n.toolFamily&&I(a,r,"tool","tool (bounded)"),n.relationHints.length>0&&I(a,i,"relations","relations (continuity)"),ei(t)&&I(a,s,"intent","blocking (judgment routing)"),wt(t)&&(I(a,s,"observation","observation (judgment contract)"),I(a,s,"consequence","observational status conflict (judgment routing)"),I(a,s,"intent","intent (status-conflict routing)"),I(a,s,"activity","activity (status-conflict routing)"),I(a,s,"tool","tool (status-conflict routing)"),I(a,s,"confidence","confidence (status-conflict routing)"));break;case"human.input.requested":"activityClass"in e&&e.activityClass===n.activityClass&&n.activityClass!==void 0&&I(a,r,"activity","activity (canonical)"),n.consequence!==void 0&&e.consequence===n.consequence&&I(a,r,"consequence","consequence (canonical)"),n.toolFamily!==void 0&&e.request.kind==="approval"&&I(a,r,"tool","tool (approval path)"),n.relationHints.length>0&&I(a,i,"relations","relations (continuity)");break;default:n.relationHints.length>0&&I(a,i,"relations","relations (continuity)");break}return!t.blocking&&$c(t)&&I(a,o,"confidence","confidence (ambiguity)"),!t.blocking&&Zt(t)&&I(a,o,"abstention","abstention (ambiguity)"),{routingAuthority:l,decisionBearing:[...r,...s,...i,...o],explanatory:[...a],canonical:[...r],routing:[...s],continuity:[...i],ambiguity:[...o],contextOnly:[...a]}}function KA(e){switch(e.type){case"task.updated":return"status";case"human.input.requested":return"request";default:return"event"}}function I(e,t,n,r){e.delete(n),t.add(r)}function WA(e,t,n,r){return r==="auto_approve"?"none":e.now&&e.now.taskId===t&&e.now.interactionId===n?"now":e.next.some(s=>s.taskId===t&&s.interactionId===n)?"next":e.ambient.some(s=>s.taskId===t&&s.interactionId===n)?"ambient":"none"}function GA(e,t,n){return{kind:e,original:t,finalized:n,changedFields:ui(t,n)}}var YA=class{constructor(e){this.timeSource=e}engagement=null;timer=null;engage(e,t,n={},r){let s=XA(n.durationMs);this.engagement={taskId:e,interactionId:t,expiresAtMs:this.timeSource()+s},this.scheduleExpiry(s,e,t,r)}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,r){this.clearTimer(),this.timer=setTimeout(()=>{if(!(this.engagement?.taskId!==t||this.engagement?.interactionId!==n)){if(r){r();return}this.clear()}},e),this.timer.unref?.()}clearTimer(){this.timer&&(clearTimeout(this.timer),this.timer=null)}};function ra(e,t){return e.now?.interactionId===t.now?.interactionId&&sa(e.next,t.next)&&sa(e.ambient,t.ambient)}function XA(e){return e===void 0?12e3:Math.max(25,Math.floor(e))}function sa(e,t){return e.length===t.length&&e.every((n,r)=>n.interactionId===t[r]?.interactionId)}function JA(e){return e.evaluation.kind==="candidate"}function QA(e){return JA(e)}function e_(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(!QA(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 t_=3,n_=25,r_=class{frameListeners=new Map;taskViewListeners=new Map;attentionViewListeners=new Set;responseListeners=new Set;signalListeners=new Set;traceListeners=new Set;internalTraceListeners=new Set;frameHealth=Ge();taskViewHealth=Ge();attentionViewHealth=Ge();responseHealth=Ge();signalHealth=Ge();traceHealth=Ge();internalTraceHealth=Ge();subscribeFrame(e,t,n){let r=this.frameListeners.get(e)??new Set,s=We(t);r.add(s),this.frameListeners.set(e,r);let i=()=>{r.delete(s),r.size===0&&this.frameListeners.delete(e)};try{t(n)}catch(o){throw i(),o}return i}subscribeTaskView(e,t,n){let r=this.taskViewListeners.get(e)??new Set,s=We(t);r.add(s),this.taskViewListeners.set(e,r);let i=()=>{r.delete(s),r.size===0&&this.taskViewListeners.delete(e)};try{t(n)}catch(o){throw i(),o}return i}subscribeAttentionView(e,t){let n=We(e);this.attentionViewListeners.add(n);try{e(t)}catch(r){throw this.attentionViewListeners.delete(n),r}return()=>{this.attentionViewListeners.delete(n)}}onResponse(e){let t=We(e);return this.responseListeners.add(t),()=>{this.responseListeners.delete(t)}}onSignal(e){let t=We(e);return this.signalListeners.add(t),()=>{this.signalListeners.delete(t)}}onTrace(e){let t=We(e);return this.traceListeners.add(t),()=>{this.traceListeners.delete(t)}}[_s](e){let t=We(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,r=>r(t)),n.size===0&&this.frameListeners.delete(e))}emitTaskView(e,t){let n=this.taskViewListeners.get(e);n&&(this.emitRegistrations(n,this.taskViewHealth,r=>r(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=e_(e);this.emitRegistrations(this.traceListeners,this.traceHealth,n=>n(t))}getHealthSnapshot(){let e=Ye(this.frameHealth,ia(this.frameListeners)),t=Ye(this.taskViewHealth,ia(this.taskViewListeners)),n=Ye(this.attentionViewHealth,this.attentionViewListeners.size),r=Ye(this.responseHealth,this.responseListeners.size),s=Ye(this.signalHealth,this.signalListeners.size),i=Ye(this.traceHealth,this.traceListeners.size),o=Ye(this.internalTraceHealth,this.internalTraceListeners.size);return{totalActive:e.active+t.active+n.active+r.active+s.active+i.active+o.active,frame:e,taskView:t,attentionView:n,response:r,signal:s,trace:i,internalTrace:o}}emitRegistrations(e,t,n){for(let r of[...e]){let s=_o.now();try{n(r.listener),r.consecutiveFailures=0}catch(i){r.consecutiveFailures+=1,t.failures+=1,t.lastErrorAt=new Date().toISOString(),t.lastErrorMessage=i instanceof Error?i.message:String(i),r.consecutiveFailures>=t_&&(e.delete(r),t.detached+=1)}finally{let i=_o.now()-s;t.emissions+=1,i>t.maxDeliveryMs&&(t.maxDeliveryMs=i),i>=n_&&(t.slowDeliveries+=1)}}}};function We(e){return{listener:e,consecutiveFailures:0}}function Ge(){return{emissions:0,failures:0,detached:0,slowDeliveries:0,maxDeliveryMs:0,lastErrorAt:null,lastErrorMessage:null}}function Ye(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 ia(e){let t=0;for(let n of e.values())t+=n.size;return t}var oa="source evidence truncated";function lu(e){return c_(i_(e),s_(e))}function s_(e){let t=e.semanticHints;if(e.type!=="task.updated"||e.status!=="failed"||t===void 0)return t;let n=t.relationHints&&{relationHints:t.relationHints},r=Gs(e);return e.evidence===void 0&&r!==null&&r.evidenceLoss==="partial"&&t.confidence==="low"&&t.factors?.includes(oa)===!0?{...n,confidence:"low",factors:[oa],...t.reasons===void 0?{}:{reasons:t.reasons}}:n}function i_(e){switch(e.type){case"task.started":return{intentFrame:"task_started",activityClass:"session_status",consequence:"low",factors:["task.started"],relationHints:[],confidence:"high",reasons:Ko("task_started"),provenance:O(["intentFrame","activityClass","consequence","confidence"])};case"task.updated":return o_(e);case"human.input.requested":return a_(e);case"task.completed":return{intentFrame:"completion",activityClass:"tool_completion",consequence:"low",factors:["task.completed"],relationHints:[],confidence:"high",reasons:Ko("completion"),provenance:O(["intentFrame","activityClass","consequence","confidence"])};case"task.cancelled":return{intentFrame:"cancellation",activityClass:"status_update",consequence:"low",...e.reason?{whyNow:Qe("completed",{wasCancelled:!0})??"Work was cancelled and may need review."}:{},factors:["task.cancelled"],relationHints:[],confidence:"high",reasons:mt("completed",{wasCancelled:!0}),provenance:{...O(["intentFrame","activityClass","consequence","confidence"]),...e.reason?O(["whyNow"]):{}}};default:return g_(e)}}function o_(e){let t=pu(e.title,e.summary),n=C(`${e.title} ${e.summary??""}`),r=bS(n),s=yS(n),i=Xc(t),o=e.status==="failed"&&e.evidence!==void 0,a=mu(e.title,e.summary,e.toolFamily),c=e.status==="failed"?Gs(e):null,u=c?.recoveryHint==="await_authorization",{toolFamily:l,source:d}=fu(a,!u&&!o&&c===null),p=i.length>0?O(["relationHints"]):{},f=Uw(i),m=Aa(c),g=c?.diagnosticClass==="expected";switch(e.status){case"failed":if(m){let y=c?.consequenceBaseline??"high",v=Zw(y)??f;return{intentFrame:"status_update",activityClass:"status_update",...l?{toolFamily:l}:{},consequence:y,...v!==void 0?{whyNow:v}:{},factors:["task.updated","failed",o?"source_evidence":"observational_failure"],relationHints:i,confidence:"high",reasons:[o?"typed source evidence determines the failed update meaning":"task status indicates failure but the update reads like observational output"],provenance:{...(o?vt:O)(["intentFrame","activityClass","consequence",...v!==void 0?["whyNow"]:[],"confidence"]),...gt(d),...p}}}return{intentFrame:"failure",activityClass:"tool_failure",...l?{toolFamily:l}:{},consequence:o?c?.consequenceBaseline??"high":Dt(n,c?.consequenceBaseline??"high",l),whyNow:Qe("failed")??"Work has failed and should be reviewed.",factors:["task.updated","failed",...o?["source_evidence"]:[]],relationHints:i,confidence:o?"high":r?"medium":"high",reasons:o?["typed source evidence determines the failed update meaning"]:g?[...mt("failed",{impliedAsk:r}),"failure content looks like expected diagnostic output from repro work"]:mt("failed",{impliedAsk:r}),provenance:{...(o?vt:O)(["intentFrame","activityClass","consequence","whyNow","confidence"]),...gt(d),...p}};case"blocked":return{intentFrame:"blocked_work",activityClass:"status_update",...l?{toolFamily:l}:{},consequence:Dt(n,"medium",l),whyNow:Qe("blocked")??"Work is blocked and may require operator attention.",factors:["task.updated","blocked"],relationHints:i,confidence:r?"medium":"high",reasons:mt("blocked",{impliedAsk:r}),provenance:{...O(["intentFrame","activityClass","consequence","whyNow","confidence"]),...gt(d),...p}};case"running":case"waiting":case"completed":return e.status==="completed"&&s===null&&!r?{intentFrame:"completion",activityClass:e.activityClass??"tool_completion",...l?{toolFamily:l}:{},consequence:Dt(n,"low",l),...f!==void 0?{whyNow:f}:{},factors:["task.updated","completed"],relationHints:i,confidence:"high",reasons:Kw(),provenance:{...O(["intentFrame","consequence",...f!==void 0?["whyNow"]:[],"confidence"]),...e.activityClass===void 0?O(["activityClass"]):vt(["activityClass"]),...gt(d),...p}}:{intentFrame:s==="blocking"?"blocked_work":"status_update",activityClass:"status_update",...l?{toolFamily:l}:{},consequence:Dt(n,s==="blocking"?"medium":"low",l),...(()=>{let y=s==="blocking"?Qe("blocked"):r?Qe(e.status,{impliedAsk:r}):f;return y!==void 0?{whyNow:y}:{}})(),factors:["task.updated",e.status,...s==="blocking"?["semantic blocking signal"]:[]],relationHints:i,confidence:s==="blocking"?"medium":r?"low":"high",reasons:s==="blocking"?[...mt("blocked"),"status wording indicates work cannot continue yet"]:mt(e.status,{impliedAsk:r}),provenance:{...O(["intentFrame","activityClass","consequence","confidence"]),...gt(d),...s==="blocking"||r||f!==void 0?O(["whyNow"]):{},...p}}}}function a_(e){let t=mu(e.title,e.summary,e.toolFamily),{toolFamily:n,source:r}=fu(t,e.request.kind==="approval"),s=pu(e.title,e.summary),i=C(s),o=Xc(s),a=e.riskHint??m_(e.request.kind,n),c=Dt(i,a,n),u=o.length>0?O(["relationHints"]):{},l=e.riskHint==="high",d=l?"high":e.request.kind==="approval"&&n?"medium":"low";return{intentFrame:jw(e.request.kind),activityClass:Hw(e.request.kind),...n?{toolFamily:n}:{},consequence:c,whyNow:Vw(e.request.kind,c),factors:["human.input.requested",e.request.kind],relationHints:o,confidence:d,reasons:[e.riskHint?"source provided an explicit risk hint":"request kind establishes an explicit operator decision point",...r==="explicit"?["tool family was supplied by the source event"]:r==="inferred"?["tool family was inferred from approval wording"]:[]],provenance:{...O(["intentFrame","activityClass","whyNow"]),...gt(r),...e.riskHint?{...vt(["consequence"]),...l?vt(["confidence"]):O(["confidence"])}:O(["consequence","confidence"]),...u}}}function O(e){return du(e,"inferred")}function vt(e){return du(e,"source")}function du(e,t){return Object.fromEntries(e.map(n=>[n,t]))}function gt(e){switch(e){case"explicit":return vt(["toolFamily"]);case"inferred":return O(["toolFamily"]);case"none":return{};default:return b_(e)}}function pu(e,t){return t?`${e}. ${t}`:e}function fu(e,t){let n=Xt(e);if(n)return{toolFamily:n,source:"explicit"};if(!t)return{source:"none"};let r=_c(e);return r?{toolFamily:r,source:"inferred"}:{source:"none"}}function c_(e,t){if(!t)return e;let n=l_(t),r=d_(e.confidence,t.confidence),s=p_(e.relationHints,t.relationHints);return{...e,...n,confidence:r,factors:ys([...e.factors??[],...t.factors??[]]),relationHints:s,reasons:ys([...e.reasons??[],...t.reasons??[]]),provenance:{...e.provenance??{},...u_(e,{...n,confidence:r,relationHints:s},t)}}}function u_(e,t,n){return{...Xe("intentFrame",e,t),...Xe("activityClass",e,t),...Xe("toolFamily",e,t),...Xe("consequence",e,t),...Xe("whyNow",e,t),...f_(e.relationHints,n.relationHints),...Xe("confidence",e,t),...Xe("abstained",e,t)}}function l_(e){let t={};for(let[n,r]of Object.entries(e))r!==void 0&&n!=="confidence"&&n!=="factors"&&n!=="relationHints"&&n!=="reasons"&&(t[n]=r);return t}function d_(e,t){return t===void 0?e:aa[t]<aa[e]?t:e}var aa={high:3,low:1,medium:2};function p_(e,t){if(!t||t.length===0)return e;let n=new Set,r=[];for(let s of[...e,...t]){let i=Bn(s);if(n.has(i))continue;let o=r.findIndex(a=>a.kind===s.kind&&a.target===void 0);if(s.target!==void 0&&o>=0){n.delete(Bn(r[o])),r[o]=s,n.add(i);continue}s.target===void 0&&r.some(a=>a.kind===s.kind&&a.target!==void 0)||(n.add(i),r.push(s))}return r}function Xe(e,t,n){return!(e in n)||n[e]===t[e]?{}:{[e]:"hint"}}function f_(e,t){if(!t||t.length===0)return{};let n=new Set(e.map(Bn));return t.some(s=>!n.has(Bn(s)))?{relationHints:"hint"}:{}}function Bn(e){return`${e.kind}:${e.target??""}`}function m_(e,t){switch(e){case"approval":return t==="read"||t==="search"?"low":"medium";case"choice":case"form":return"medium";default:return h_(e)}}function mu(e,t,n){return{title:e,...t!==void 0?{summary:t}:{},...n!==void 0?{toolFamily:n}:{}}}function g_(e){throw new Error(`Unhandled source event in semantic interpreter: ${JSON.stringify(e)}`)}function h_(e){throw new Error(`Unhandled human input request kind in semantic interpreter: ${e}`)}function b_(e){throw new Error(`Unhandled tool family provenance source in semantic interpreter: ${e}`)}function y_(e){let t=lu(e),n=e.type==="human.input.requested"&&e.riskHint!==void 0?{riskHint:e.riskHint}:void 0;return gu(w_(e),t,n)}function ca(e,t={}){let n=e.type==="task.updated"&&e.status==="failed"&&e.evidence!==void 0;if(t.skipSemanticDefaults&&!n)return e;let r=n||e.semantic===void 0?lu(S_(e)):e.semantic;return gu(e,r)}function v_(e){switch(e){case"high":return"critical";case"medium":case"low":return"focused";default:return __(e)}}function gu(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 k_(e,t,n);default:return hu(e)}}function k_(e,t,n){let{toolFamily:r,...s}=e,i=e.consequence??t.consequence??n.riskHint??"medium",o=e.tone??v_(i),a=ri({base:e.provenance,semantic:t}),c=e.request.kind==="approval"?e.toolFamily??t.toolFamily:void 0;return{...s,...c!==void 0?{toolFamily:c}:{},...e.activityClass===void 0&&t.activityClass!==void 0?{activityClass:t.activityClass}:{},semantic:t,tone:o,consequence:i,...a!==void 0?{provenance:a}:{}}}function w_(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":{let t={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}:{},...e.progress!==void 0?{progress:e.progress}:{},...e.context!==void 0?{context:e.context}:{}};return e.status==="failed"?{...t,status:"failed",...e.evidence!==void 0?{evidence:e.evidence}:{}}:{...t,status:e.status}}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 A_(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}:{},...e.metadata!==void 0?{metadata:e.metadata}:{},title:e.title,...e.summary!==void 0?{summary:e.summary}:{}};case"task.updated":{let t={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}:{},...e.progress!==void 0?{progress:e.progress}:{},...e.context!==void 0?{context:e.context}:{}};return e.status==="failed"?{...t,status:"failed",...e.evidence!==void 0?{evidence:e.evidence}:{}}:{...t,status:e.status}}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 hu(e)}}function hu(e){throw new Error(`Unhandled ApertureEvent in semantic normalizer: ${JSON.stringify(e)}`)}function A_(e){throw new Error(`Unhandled SourceEvent in semantic normalizer: ${JSON.stringify(e)}`)}function __(e){throw new Error(`Unhandled consequence level in semantic normalizer: ${e}`)}function E_(e){return{originalEvent:e,finalizedEvent:y_(e),transitionKind:"source_normalized"}}function T_(e,t={}){let n=t.applySemanticDefaults!==!1;return{originalEvent:e,finalizedEvent:n?ca(e):ca(e,{skipSemanticDefaults:!0}),transitionKind:n?"direct_enriched":"direct_passthrough"}}async function Es(e,t,n){try{let r=await nf(e,"utf8"),s=n(r);return s===null?(ua(e,"Failed to parse markdown state. Falling back to the in-memory default."),t):s}catch(r){return x_(r)||ua(e,"Failed to read markdown state. Falling back to the in-memory default.",r),t}}async function R_(e,t){await rf(ef(e),{recursive:!0});let n=`${e}.${process.pid}.${tf(6).toString("hex")}.tmp`,r=await sf(n,"w",384),s=!1;try{await r.writeFile(t,"utf8"),await r.sync(),await r.close(),s=!0,await of(n,e)}catch(i){throw s||await r.close().catch(()=>{}),await af(n).catch(()=>{}),i}}function li(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 r=n.length;if(r<1||r>3)return null;let s=t[2]?.trim();return s?{level:r,text:s}:null}function di(e){let t=e.trim();if(!t.startsWith("- "))return null;let n=t.slice(2).trim(),r=n.indexOf(":");if(r===-1)return n.length>0?{text:n}:null;let s=n.slice(0,r).trim(),i=n.slice(r+1).trim();return s.length===0?null:{key:s,value:i}}function rt(e){return e==="true"?!0:e==="false"?!1:/^-?\d+(?:\.\d+)?$/.test(e)?Number(e):e}function D(e,t){return`- ${e}: ${String(t)}`}function C_(e){return`- ${e}`}function x_(e){return typeof e=="object"&&e!==null&&"code"in e&&e.code==="ENOENT"}function ua(e,t,n){let r=n===void 0?"":` ${n instanceof Error?n.message:String(n)}`;console.warn(`[aperture] ${t} (${e})${r}`)}function jn(e){switch(e){case"ambient":return"ambient";case"next":case"queue":return"next";case"now":case"active":return"now";default:return}}async function bu(e,t){return Es(ls(e,"APERTURE.md"),t,I_)}function I_(e){let t=new Map,n=new Map,r=new Map,s=new Map,i=null,o=null;for(let u of e.split(`
|
|
12
|
+
`)){let l=li(u);if(l){l.level===2?(i=l.text,o=null):l.level===3&&i==="Policy"&&(o=l.text,n.has(o)||n.set(o,{}));continue}let d=di(u);if(!(!d||!("key"in d))){if(i==="Meta"){t.set(d.key,d.value);continue}if(i==="Policy"&&o){let p=rt(d.value),f=L_(ss(d.key));n.set(o,{...n.get(o)??{},...f==="minimumLane"?(()=>{let m=jn(p);return m===void 0?{}:{minimumLane:m}})():{[f]:p}});continue}if(i==="Planner Defaults"){let p=ss(d.key);if(p==="disabledContinuityRules"){let m=z_(d.value);m.length>0&&s.set(p,m);continue}let f=rt(d.value);(typeof f=="boolean"||typeof f=="number")&&s.set(p,f);continue}if(i==="Ambiguity Defaults"){let p=rt(d.value);typeof p=="number"&&r.set(ss(d.key),p)}}}let a=F_(t.get("version")),c=t.get("updated at");return a===null||!c?null:{version:a,updatedAt:c,...n.size>0?{policy:Object.fromEntries(n.entries())}:{},...r.size>0?{ambiguityDefaults:Object.fromEntries(r.entries())}:{},...s.size>0?{plannerDefaults:Object.fromEntries(s.entries())}:{}}}function L_(e){return e==="minimumPresentation"?"minimumLane":e}function O_(e){return e!==void 0&&/^-?\d+(?:\.\d+)?$/.test(e)?Number(e):null}function F_(e){let t=O_(e);return t===ot?t:null}function ss(e){return e.replace(/\s+([a-z])/g,(t,n)=>n.toUpperCase())}var P_={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},N_=Object.keys(P_);function z_(e){let t=new Set;for(let n of e.split(",")){let r=n.trim();D_(r)&&t.add(r)}return[...t]}function D_(e){return N_.includes(e)}var $_=class{rootDir;constructor(e){this.rootDir=e}loadApertureProfile(e){return Es(this.aperturePath(),e,q_)}loadMemoryProfile(e){return Es(this.memoryPath(),e,B_)}saveMemoryProfile(e){return R_(this.memoryPath(),j_(e))}aperturePath(){return ls(this.rootDir,"APERTURE.md")}memoryPath(){return ls(this.rootDir,"MEMORY.md")}};function q_(e){let t=new Map,n=new Map,r=new Map,s=null,i=null;for(let l of e.split(`
|
|
13
|
+
`)){let d=li(l);if(d){d.level===2?(s=d.text,i=null):d.level===3&&s==="Tool Overrides"&&(i=d.text,r.has(i)||r.set(i,{}));continue}let p=di(l);if(!(!p||!("key"in p))){if(s==="Meta"){Ts(t,p.key,p.value);continue}if(s==="Preferences"){Ts(n,p.key,p.value);continue}if(s==="Tool Overrides"&&i){let f=rt(p.value),m=M_(Pn(p.key));r.set(i,{...r.get(i)??{},...m==="minimumLane"?(()=>{let g=jn(f);return g===void 0?{}:{minimumLane:g}})():{[m]:f}})}}}let o=Ie(t,"profile id"),a=Ie(t,"updated at"),c=vu(Ie(t,"version"));if(!o||!a||c===null)return null;let u=V_(Ie(n,"control mode"));return{version:c,operatorId:o,updatedAt:a,...n.size>0?{preferences:{...u!==null?{controlMode:u}:{},...Re(n,"quiet hours").length>0?{quietHours:Re(n,"quiet hours")}:{},...Re(n,"prefer batching for").length>0?{preferBatchingFor:Re(n,"prefer batching for")}:{},...Re(n,"always expand context for").length>0?{alwaysExpandContextFor:Re(n,"always expand context for")}:{},...Re(n,"never auto approve").length>0?{neverAutoApprove:Re(n,"never auto approve")}:{}}}:{},...r.size>0?{overrides:{tools:Object.fromEntries(r.entries())}}:{}}}function M_(e){switch(e){case"defaultPresentation":case"minimumPresentation":return"minimumLane";default:return e}}function B_(e){let t=new Map,n=new Map,r=new Map,s=new Map,i=[],o=null,a=null;for(let p of e.split(`
|
|
14
|
+
`)){let f=li(p);if(f){f.level===2?(o=f.text,a=null):f.level===3&&(a=f.text);continue}let m=di(p);if(m){if(o==="Meta"&&"key"in m){Ts(t,m.key,m.value);continue}if(o==="Tool Families"&&a&&"key"in m){n.set(a,{...n.get(a)??H_(),[Pn(m.key)]:rt(m.value)});continue}if(o==="Source Trust"&&a&&"key"in m){let[g,y]=a.split("/").map(S=>S.trim());if(!g||!y)continue;let v=r.get(g)??{};v[y]={...v[y]??{confirmations:0,disagreements:0,trustAdjustment:0},[Pn(m.key)]:rt(m.value)},r.set(g,v);continue}if(o==="Consequence Profiles"&&a&&"key"in m){s.set(a,{...s.get(a)??{rejectionRate:0},[Pn(m.key)]:rt(m.value)});continue}o==="Lessons"&&"text"in m&&i.push(m.text)}}let c=Ie(t,"profile id"),u=Ie(t,"updated at"),l=vu(Ie(t,"version")),d=yu(Ie(t,"session count"));return!c||!u||l===null||d===null?null:{version:l,operatorId:c,updatedAt:u,sessionCount:d,...n.size>0?{toolFamilies:Object.fromEntries(n.entries())}:{},...r.size>0?{sourceTrust:Object.fromEntries(r.entries())}:{},...s.size>0?{consequenceProfiles:Object.fromEntries(s.entries())}:{},...i.length>0?{lessons:i}:{}}}function j_(e){let t=["# Memory","","## Meta",D("version",e.version),D("profile id",e.operatorId),D("updated at",e.updatedAt),D("session count",e.sessionCount)];if(e.toolFamilies&&Object.keys(e.toolFamilies).length>0){t.push("","## Tool Families");for(let[n,r]of Object.entries(e.toolFamilies))t.push("",`### ${n}`),t.push(D("presentations",r.presentations)),t.push(D("responses",r.responses)),t.push(D("dismissals",r.dismissals)),r.avgResponseLatencyMs!==void 0&&t.push(D("avg response latency ms",r.avgResponseLatencyMs)),r.avgDismissalLatencyMs!==void 0&&t.push(D("avg dismissal latency ms",r.avgDismissalLatencyMs)),r.contextExpansionRate!==void 0&&t.push(D("context expansion rate",r.contextExpansionRate)),r.returnAfterDeferralRate!==void 0&&t.push(D("return after deferral rate",r.returnAfterDeferralRate))}if(e.sourceTrust&&Object.keys(e.sourceTrust).length>0){t.push("","## Source Trust");for(let[n,r]of Object.entries(e.sourceTrust))for(let[s,i]of Object.entries(r))t.push("",`### ${n} / ${s}`),t.push(D("confirmations",i.confirmations)),t.push(D("disagreements",i.disagreements)),t.push(D("trust adjustment",i.trustAdjustment))}if(e.consequenceProfiles&&Object.keys(e.consequenceProfiles).length>0){t.push("","## Consequence Profiles");for(let[n,r]of Object.entries(e.consequenceProfiles))t.push("",`### ${n}`),t.push(D("rejection rate",r.rejectionRate)),r.reviewedCount!==void 0&&t.push(D("reviewed count",r.reviewedCount))}if(e.lessons&&e.lessons.length>0){t.push("","## Lessons");for(let n of e.lessons)t.push(C_(n))}return t.push(""),t.join(`
|
|
15
|
+
`)}function H_(){return{presentations:0,responses:0,dismissals:0}}function Ts(e,t,n){let r=e.get(t)??[];r.push(n),e.set(t,r)}function Ie(e,t){return e.get(t)?.[0]??null}function Re(e,t){return e.get(t)??[]}function yu(e){return e!==null&&/^-?\d+(?:\.\d+)?$/.test(e)?Number(e):null}function vu(e){let t=yu(e);return t===ot?t:null}function V_(e){switch(e){case"hands-on":case"standard":case"focus":return e;default:return null}}function Pn(e){return e.replace(/\s+([a-z])/g,(t,n)=>n.toUpperCase())}async function Z_(e){let t=new $_(e),[n,r,s]=await Promise.all([t.loadApertureProfile(ku()),t.loadMemoryProfile(W_()),bu(e,wu())]);return{profileStore:t,markdownRootDir:e,apertureProfile:n,memoryProfile:r,policyConfig:s}}async function U_(e){let[t,n,r]=await Promise.all([e.profileStore.loadApertureProfile(e.apertureProfile??ku()),e.profileStore.loadMemoryProfile(e.memoryProfile),bu(e.markdownRootDir,e.policyConfig??wu())]);return{apertureProfile:t,memoryProfile:n,policyConfig:r}}async function K_(e){if(!e.profileStore)return null;let t=tu(e.memoryProfile,e.signals,e.now);return await e.profileStore.saveMemoryProfile(t),t}function ku(){return{version:ot,operatorId:"default",updatedAt:At(0)}}function W_(){return{version:ot,operatorId:"default",updatedAt:At(0),sessionCount:0}}function wu(){return{version:ot,updatedAt:At(0)}}function is(e){let{timestamp:t,event:n,eventTransition:r,evidence:s,taskView:i,attentionView:o}=e;return{timestamp:t,event:n,eventTransition:r,taskSummary:s.taskSignalSummary,globalSummary:s.globalSignalSummary,taskAttentionState:s.taskAttentionState,globalAttentionState:s.globalAttentionState,pressureForecast:s.pressureForecast,attentionBurden:s.attentionBurden,current:s.currentFrame,taskView:i,attentionView:o}}var G_=1;function Y_(e){let t=X_(e),n=J_(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 X_(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 J_(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 Ce(e,t,n=new WeakSet){if(e===null)return e;let r=typeof e;if(r==="string"||r==="boolean")return e;if(r==="number"){if(!Number.isFinite(e))throw new RangeError(`Attention decision record cannot contain non-finite number at ${t}.`);return e}if(r==="undefined")throw new TypeError(`Attention decision record cannot contain undefined at ${t}.`);if(r==="bigint"||r==="function"||r==="symbol")throw new TypeError(`Attention decision record cannot contain ${r} at ${t}.`);if(Array.isArray(e))return Q_(e,t,n);if(typeof e=="object")return e0(e,t,n);throw new TypeError(`Attention decision record cannot contain unsupported value at ${t}.`)}function Q_(e,t,n){Su(e,t,n);let r=e.map((s,i)=>{if(s===void 0)throw new TypeError(`Attention decision record cannot contain undefined at ${t}[${i}].`);return Ce(s,`${t}[${i}]`,n)});return n.delete(e),r}function e0(e,t,n){let r=Object.getPrototypeOf(e);if(r!==Object.prototype&&r!==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}.`);Su(e,t,n);let s={};for(let[i,o]of Object.entries(e).sort(t0))o!==void 0&&(s[i]=Ce(o,`${t}.${i}`,n));return n.delete(e),s}function Su(e,t,n){if(n.has(e))throw new TypeError(`Attention decision record cannot contain circular reference at ${t}.`);n.add(e)}function t0([e],[t]){return e<t?-1:e>t?1:0}function n0(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 r of e.policyGateEvaluations)n.add(`policy_gate:${r.rule}:${r.kind}`);for(let r of e.policyCriterionEvaluations)n.add(`policy_criterion:${r.rule}:${r.kind}`);for(let r of e.continuityEvaluations)r.kind==="override"&&n.add(`continuity:${r.rule}:override`);return[...n].sort()}function r0(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 Au(e)}}function s0(e){return r0(e)}function i0(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 Au(e)}}function o0(e){return e.map(t=>t.kind==="noop"?{rule:t.rule,kind:"noop",rationale:t.rationale}:{rule:t.rule,kind:"override",decision:{kind:a0(t.decision.kind)},currentPriority:t.currentPriority,currentScore:t.currentScore,rationale:t.rationale})}function a0(e){if(e==="clear")throw new Error("Attention decision record continuity cannot project a clear transition.");return e}function Au(e){throw new Error(`Unhandled attention decision in decision record: ${JSON.stringify(e)}`)}function os(e){let t=c0(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 c0(e){let t=s0(e.decision),n=n0(e,t);return{schemaVersion:G_,evaluatedAt:e.evaluatedAt,decision:Ce(i0(e.decision),"decision"),claim:Ce(e.recordClaim??Y_(e.candidate),"claim"),evidenceSnapshot:Ce({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:Ce({verdict:e.policy,gateEvaluations:e.policyGateEvaluations,criterion:e.criterion,criterionEvaluations:e.policyCriterionEvaluations},"policy"),value:Ce({breakdown:e.utility,claimScore:e.candidateScore,currentScore:e.currentScore,currentPriority:e.currentPriority},"value"),planning:Ce({route:e.decision.kind,plannedLane:t,ambiguity:e.ambiguity,reasons:e.reasons,reasonCodes:n,continuityEvaluations:o0(e.continuityEvaluations)},"planning")}}function Kt(e,t=[]){return{rule:e,kind:"noop",rationale:t}}function Ae(e,t,n=t.rationale){return{rule:e,kind:"verdict",verdict:t,rationale:n}}var u0=e=>e.candidate.priority!=="background"?Kt("background"):tr(e.candidate)?Kt("background",["blocked-like status semantics are concrete enough to compete with ordinary attention rules"]):Ae("background",{autoApprove:!1,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!0,rationale:["background work should remain peripheral by default"]}),l0=e=>e.candidate.blocking?Ae("blocking",{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!0,minimumLane:"now",minimumLaneIsSticky:!1,rationale:["blocking interactions require explicit operator attention"]}):Kt("blocking");function d0(e,t){let n=e?.policy;if(!n)return;let r=p0(t);for(let s of r){let i=n[s];if(i)return i}}function _u(e){return Eu(e)?si(e):null}function p0(e){let t=[];if(!Eu(e))return t;let n=_u(e),r=[e.title,e.summary??"",...e.context?.items?.flatMap(s=>[s.label,s.value??""])??[]].join(" ").toLowerCase();return e.consequence==="low"&&n==="read"&&t.push("lowRiskRead"),e.consequence==="low"&&n==="web"&&t.push("lowRiskWeb"),r.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 Eu(e){return e.activityClass!==void 0?f0(e.activityClass):e.mode==="approval"}function f0(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 m0=e=>{let{candidate:t,policyConfig:n,apertureProfile:r}=e,s=r?.preferences?.controlMode??"standard",i=_u(t),o=i?r?.overrides?.tools?.[i]:void 0,a=d0(n,t),c=o?.requireContextExpansion===!0||a?.requireContextExpansion===!0,u=a?.autoApprove===!0&&t.mode==="approval"&&t.responseSpec.kind==="approval"&&!c,l=u&&s==="hands-on",d=u&&!l,p=jn(o?.minimumLane??o?.defaultPresentation)??jn(a?.minimumLane)??(l?"now":void 0)??(c?"now":void 0),f=a?.mayInterrupt,m=!d&&(t.blocking||p==="now"||c);if(p===void 0&&f===void 0&&!o&&!d)return Kt("configured_policy");let g=[];return i&&o&&g.push(`user override applies for ${i} interactions`),a&&g.push("configured judgment policy applies to this interaction"),l&&g.push("hands-on control mode keeps configured auto-approval in the attention surface"),d?(g.push("configured judgment policy auto-approves this bounded approval"),Ae("configured_policy",{autoApprove:!0,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!0,rationale:g})):m?(g.push("operator-response work cannot remain passive without auto-resolution"),Ae("configured_policy",{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!0,minimumLane:"now",minimumLaneIsSticky:!1,rationale:g})):Ae("configured_policy",{autoApprove:!1,mayInterrupt:f??!1,requiresOperatorResponse:m,minimumLane:p??(t.blocking?"now":"next"),minimumLaneIsSticky:p!==void 0||f===!1,rationale:g})},g0=()=>Ae("interruptive_default",{autoApprove:!1,mayInterrupt:!0,requiresOperatorResponse:!1,minimumLane:"next",minimumLaneIsSticky:!1,rationale:["urgent non-blocking work may compete for interruptive attention"]});function K(e,t=[]){return{rule:e,kind:"noop",rationale:t}}function W(e,t,n=t.rationale){return{rule:e,kind:"verdict",verdict:t,rationale:n}}function Tu(e,t,n){return{rule:e,kind:"adjust",criterion:t,rationale:n}}function Wt(e,t=[]){return{criterion:e,peripheralResolution:null,ambiguity:null,rationale:t}}function Ru(e,t,n=[]){return{criterion:e,peripheralResolution:t,ambiguity:null,rationale:n}}function Mt(e,t,n,r){return{criterion:e,peripheralResolution:t,ambiguity:n,rationale:r}}var h0=e=>{let{evidence:t,criterion:n}=e,r=t.attentionBurden.thresholdOffset;return r<=0?K("attention_budget"):Tu("attention_budget",{activationThreshold:n.activationThreshold+r,promotionMargin:n.promotionMargin+r},["sustained attention burden raises the interrupt bar until the operator load eases"])},b0=e=>{let{candidate:t,policyVerdict:n,criterion:r,peripheralResolution:s,evidence:i}=e;return!n.mayInterrupt&&n.minimumLaneIsSticky?W("interrupt_eligibility",Ru(r,v0(t,s,i.surfaceCapabilities))):t.blocking||sr(t)&&!yw(t)&&!y0(t,i.attentionView)||n.autoApprove||n.requiresOperatorResponse||n.minimumLane==="now"?W("interrupt_eligibility",Wt(r)):K("interrupt_eligibility")};function y0(e,t){return e.episodeId!==void 0&&fe(t,e.episodeId,{excludedInteractionId:e.interactionId}).length>0}function v0(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 Cu(e){return e.mode==="status"&&e.responseSpec.kind==="acknowledge"&&Js(e)?.limitedFailureStatus===!0}function k0(e,t){return e.mode==="status"&&!t.mayInterrupt&&(t.minimumLane==="ambient"?w0(e):t.minimumLane==="next"&&Cu(e))}function w0(e){if(wt(e))return!0;let t=Js(e);if(t!==null)return t.stableStatusEvidence;let n=Ne(e);return n!==null&&n.strength!=="weak"&&!n.abstained}var S0=e=>{let{candidate:t,evidence:n,candidateScore:r,criterion:s,peripheralResolution:i}=e;return n.currentFrame||sr(t)||t.episodeId!==void 0&&fe(n.attentionView,t.episodeId,{excludedInteractionId:t.interactionId}).length>0?K("no_active_frame"):tr(t)?W("no_active_frame",Wt(s,["blocked-like status semantics are concrete enough to fill an empty attention slot"])):r>=s.activationThreshold?W("no_active_frame",Wt(s)):k0(t,e.policyVerdict)?W("no_active_frame",Ru(s,i,["policy-peripheral status work stays peripheral without ambiguity"])):W("no_active_frame",Mt(s,i,{kind:"interrupt",reason:"low_signal",resolution:i},["uncertain interruptive work stays peripheral until its signal is stronger"]))},A0=e=>{let{evidence:t,criterion:n,peripheralResolution:r}=e;return t.operatorPresence!=="absent"?K("operator_absence"):W("operator_absence",{criterion:n,peripheralResolution:r,ambiguity:null,rationale:["operator absence keeps interruptive work peripheral until foreground attention returns"]})},_0=e=>{let{candidate:t}=e;return t.mode!=="status"||t.consequence==="high"||t.tone==="critical"||tr(t)?Kt("peripheral_status"):t.responseSpec.kind!=="none"?Cu(t)?Ae("peripheral_status",{autoApprove:!1,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"next",minimumLaneIsSticky:!1,rationale:["non-critical status work that requires acknowledgement should stay visible"]}):Ae("peripheral_status",{autoApprove:!1,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!1,rationale:wt(t)?["observational status-conflict work should preserve peripheral routing"]:["non-critical status work should start in the periphery"]}):Ae("peripheral_status",{autoApprove:!1,mayInterrupt:!1,requiresOperatorResponse:!1,minimumLane:"ambient",minimumLaneIsSticky:!1,rationale:["non-critical status work should start in the periphery"]})},E0=e=>{let{candidate:t,criterion:n,evidence:r,peripheralResolution:s}=e,i=R0(t,r.attentionView,s);return t.blocking?K("semantic_uncertainty"):tr(t)?K("semantic_uncertainty",["blocked-like status semantics are concrete enough to remain eligible for ordinary interrupt rules"]):wt(t)?K("semantic_uncertainty",["observational status-conflict evidence already owns peripheral status routing"]):T0(t)?K("semantic_uncertainty",["visible diagnostic failure evidence is concrete enough for ordinary interrupt rules"]):Zt(t)?W("semantic_uncertainty",Mt(n,i,{kind:"interrupt",reason:"low_signal",resolution:i},["semantic interpretation abstained, so non-blocking work stays peripheral until stronger explicit evidence arrives"])):zn(t)==="low"?W("semantic_uncertainty",Mt(n,i,{kind:"interrupt",reason:"low_signal",resolution:i},["low-confidence semantic interpretation keeps non-blocking work peripheral until the signal is clearer"])):Xs(t)==="weak"?W("semantic_uncertainty",Mt(n,i,{kind:"interrupt",reason:"low_signal",resolution:i},["weak semantic evidence stays peripheral until stronger source-backed context arrives"])):K("semantic_uncertainty",Ne(t)!==null?["semantic evidence is strong enough to keep ordinary interrupt rules in play"]:[])};function T0(e){return Js(e)?.visibleDiagnosticFailure===!0}function R0(e,t,n){return n==="queue"&&e.mode==="status"&&e.episodeId!==void 0&&C0(e.episodeId,e.interactionId,t)?"ambient":n}function C0(e,t,n){return fe(n,e,{lanes:["now"],excludedInteractionId:t}).length>0}var x0=e=>{let{candidate:t,candidateScore:n,currentScore:r,criterion:s,peripheralResolution:i}=e;return sr(t)?K("small_score_gap"):r===null||n<=r||n>=r+s.promotionMargin?W("small_score_gap",Wt(s)):W("small_score_gap",Mt(s,i,{kind:"interrupt",reason:"small_score_gap",resolution:i},["small score gaps resolve to the periphery instead of stealing focus immediately"]))},I0=2,Hn=6,L0=e=>{let{candidate:t,criterion:n,sourceTrustAdjustment:r}=e,s=O0(r),i=vw(t),o=Math.max(-Hn,Math.min(Hn,s+i));if(o===0)return K("source_trust");let a={activationThreshold:Math.max(0,n.activationThreshold-o),promotionMargin:Math.max(0,n.promotionMargin-o)},c=[...s>0?["durable source trust lowers the interrupt bar for this source"]:s<0?["low-trust source signals need a clearer margin before interrupting"]:[],...i>0?["explicit semantic evidence lowers the interrupt bar slightly"]:i<0?["inferred semantic evidence needs a clearer margin before interrupting"]:[]];return Tu("source_trust",a,c)};function O0(e){return e===0?0:Math.max(-Hn,Math.min(Hn,Math.trunc(e/I0)))}var F0=[m0,l0,u0,_0,g0],P0=[A0,b0,L0,h0,E0,S0,x0],pi=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 s of F0){let i=s(t);if(n.push(i),i.kind==="verdict")return{verdict:i.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,r,s,i={}){return this.explainInterruptCriterion(e,t,n,r,s,i).verdict}explainInterruptCriterion(e,t,n,r,s,i={}){let o=this.readInterruptCriterion(i.ambiguityDefaults),a=o.criterion,c=this.readPeripheralResolution(e,t),u=this.readSourceTrustAdjustment(e),l=[...o.rationale],d=[];for(let p of P0){let f=p(this.buildPolicyCriterionInput(e,t,n,r,s,a,u,c));if(d.push(f),f.kind==="adjust"){a=f.criterion,l.push(...f.rationale);continue}if(f.kind==="verdict")return{verdict:{...f.verdict,rationale:[...l,...f.verdict.rationale]},evaluations:d}}return{verdict:{criterion:a,peripheralResolution:null,ambiguity:null,rationale:l},evaluations:d}}readInterruptCriterion(e){let t={activationThreshold:e?.nonBlockingActivationThreshold??this.policyConfig?.ambiguityDefaults?.nonBlockingActivationThreshold??F.ambiguity.nonBlockingActivationThreshold,promotionMargin:e?.promotionMargin??this.policyConfig?.ambiguityDefaults?.promotionMargin??F.ambiguity.promotionMargin};return N0(t,this.controlMode)}readPeripheralResolution(e,t){return Bc(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,r,s,i,o,a){return{candidate:e,policyVerdict:t,evidence:n,candidateScore:r,currentScore:s,criterion:i,sourceTrustAdjustment:o,peripheralResolution:a}}};function N0(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 w=F.attentionValue,fi=class{memoryProfile;constructor(e={}){this.memoryProfile=e.memoryProfile}scoreCandidate(e){let t=this.sourceTrustAdjustment(e),n=this.consequenceCalibrationAdjustment(e),r=this.responseAffinityAdjustment(e),s=this.contextCostAdjustment(e),i=this.deferralAffinityAdjustment(e),o={priority:z0(e.priority)*100,consequence:D0(e.consequence)*10,tone:$0(e.tone),blocking:e.blocking?1e3:0,heuristics:e.attentionScoreOffset??0,sourceTrust:t,consequenceCalibration:n,responseAffinity:r,contextCost:s,deferralAffinity:i},a=e.attentionRationale?[...e.attentionRationale]:[];return t!==0&&a.push("durable source trust adjusts this interaction's utility"),n>0&&a.push("memory suggests this consequence band is often understated and deserves more attention"),n<0&&a.push("memory suggests this consequence band is often overstated and should be tempered"),r>0&&a.push("memory suggests this kind of interaction usually resolves quickly"),s<0&&a.push("memory suggests this interaction usually needs extra context before action"),i>0&&a.push("memory suggests deferred interactions of this kind are usually resumed"),{total:o.priority+o.consequence+o.tone+o.blocking+o.heuristics+o.sourceTrust+o.consequenceCalibration+o.responseAffinity+o.contextCost+o.deferralAffinity,components:o,rationale:a}}scoreAttentionFrame(e,t={}){return{total:pe(e,t),components:{attentionAdjustment:fa(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=as(e);if(!t)return 0;let n=this.memoryProfile?.toolFamilies?.[t];return!n||n.avgResponseLatencyMs===void 0||n.presentations<w.memorySufficiency.toolFamilyPresentations||n.responses<w.memorySufficiency.toolFamilyResponses?0:n.avgResponseLatencyMs<=w.responseAffinity.fastLatencyMs?w.responseAffinity.fastBoost:n.avgResponseLatencyMs<=w.responseAffinity.mediumLatencyMs?w.responseAffinity.mediumBoost:0}consequenceCalibrationAdjustment(e){let t=this.memoryProfile?.consequenceProfiles?.[e.consequence],n=t?.rejectionRate;if(n===void 0||(t?.reviewedCount??0)<w.memorySufficiency.consequenceReviewedCount)return 0;switch(e.consequence){case"low":return n>=w.consequenceCalibration.highRejectionRate?w.consequenceCalibration.adjustments.low.highRate:n>=w.consequenceCalibration.mediumRejectionRate?w.consequenceCalibration.adjustments.low.mediumRate:0;case"medium":return n>=w.consequenceCalibration.highRejectionRate?w.consequenceCalibration.adjustments.medium.highRate:n>=w.consequenceCalibration.mediumRejectionRate?w.consequenceCalibration.adjustments.medium.mediumRate:0;case"high":return n>=w.consequenceCalibration.highRejectionRate?w.consequenceCalibration.adjustments.high.highRate:n>=w.consequenceCalibration.mediumRejectionRate?w.consequenceCalibration.adjustments.high.mediumRate:0}}contextCostAdjustment(e){let t=as(e);if(!t)return 0;let n=this.memoryProfile?.toolFamilies?.[t]?.contextExpansionRate;return n===void 0||(this.memoryProfile?.toolFamilies?.[t]?.presentations??0)<w.memorySufficiency.toolFamilyPresentations?0:n>=w.contextCost.highRate?w.contextCost.highPenalty:n>=w.contextCost.mediumRate?w.contextCost.mediumPenalty:0}deferralAffinityAdjustment(e){let t=as(e);if(!t)return 0;let n=this.memoryProfile?.toolFamilies?.[t]?.returnAfterDeferralRate;return n===void 0||(this.memoryProfile?.toolFamilies?.[t]?.presentations??0)<w.memorySufficiency.toolFamilyPresentations?0:n>=w.deferralAffinity.highRate?w.deferralAffinity.highBoost:n>=w.deferralAffinity.mediumRate?w.deferralAffinity.mediumBoost:0}};function as(e){return si(e)}function z0(e){switch(e){case"background":return 0;case"normal":return 1;case"high":return 2}}function D0(e){switch(e){case"low":return 0;case"medium":return 1;case"high":return 2}}function $0(e){switch(e){case"ambient":return 0;case"focused":return 1;case"critical":return 2}}var q0=class{policyGates;utilityScore;queuePlanner;ambiguityDefaults;constructor(e=new pi,t=new fi,n=new ci,r={}){this.policyGates=e,this.utilityScore=t,this.queuePlanner=n,this.ambiguityDefaults=r.ambiguityDefaults}evaluate(e){return this.explain(e).record}explain(e){let t=e.current??null,n=e.candidate,r=this.resolveEvidenceContext(t,e.context??{},e.evaluatedAt),s=this.policyGates.explainGates(n),i=s.verdict,o=this.utilityScore.scoreCandidate(n),a=r.currentFrame?pe(r.currentFrame,{now:e.evaluatedAt}):null,c=r.pressureForecast;if(i.autoApprove)return this.explainAutoApproval(n,r,s,o,a,e.evaluatedAt,e.recordClaim);let u=this.policyGates.explainInterruptCriterion(n,i,r,o.total,a,this.ambiguityDefaults!==void 0?{ambiguityDefaults:this.ambiguityDefaults}:{}),l=u.verdict;if(l.peripheralResolution)return os({decision:{kind:l.peripheralResolution,candidate:n},candidate:n,evidence:r,policy:i,policyGateEvaluations:s.evaluations,utility:o,criterion:l,policyCriterionEvaluations:u.evaluations,candidateScore:o.total,currentScore:a,currentPriority:r.currentFrame?G(r.currentFrame):null,ambiguity:l.ambiguity,reasons:[...i.rationale,...l.rationale],continuityEvaluations:[],evaluatedAt:e.evaluatedAt,...e.recordClaim!==void 0?{recordClaim:e.recordClaim}:{}});let d=this.queuePlanner.explain(r.currentFrame,n,{...r,policyVerdict:i,utility:o,pressureForecast:c,candidateScore:o.total,currentScore:a,referenceTimestamp:e.evaluatedAt});return this.explainPlanning(n,r,s,u,o,d,e.evaluatedAt,e.recordClaim)}clear(){return this.queuePlanner.clear()}explainAutoApproval(e,t,n,r,s,i,o){let a=n.verdict;return os({decision:{kind:"auto_approve",candidate:e,response:{taskId:e.taskId,interactionId:e.interactionId,response:{kind:"approved"}}},candidate:e,evidence:t,policy:a,policyGateEvaluations:n.evaluations,utility:r,criterion:null,policyCriterionEvaluations:[],candidateScore:r.total,currentScore:s,currentPriority:null,ambiguity:null,reasons:[...a.rationale,"bounded approval work is auto-resolved instead of entering the attention surface"],continuityEvaluations:[],evaluatedAt:i,...o!==void 0?{recordClaim:o}:{}})}explainPlanning(e,t,n,r,s,i,o,a){return os({decision:M0(i.decision),candidate:e,evidence:t,policy:n.verdict,policyGateEvaluations:n.evaluations,utility:s,criterion:r.verdict,policyCriterionEvaluations:r.evaluations,candidateScore:s.total,currentScore:i.currentScore,currentPriority:i.currentPriority,ambiguity:null,reasons:i.reasons,continuityEvaluations:i.continuityEvaluations??[],evaluatedAt:o,...a!==void 0?{recordClaim:a}:{}})}resolveEvidenceContext(e,t,n){return ii(e,ir(t),St(n)??0)}};function M0(e){if(e.kind==="clear")throw new Error("Attention claim evaluation cannot produce a clear transition.");return e}var B0=class{evaluator;constructor(e=new pi,t=new fi,n=new ci,r={}){this.evaluator=new q0(e,t,n,r)}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 j0(e={}){return{apertureProfile:e.apertureProfile,baseMemoryProfile:e.memoryProfile??H0(),policyConfig:e.policyConfig,surfaceCapabilities:Rs(e.surfaceCapabilities),operatorPresence:e.operatorPresence??"present",responseExpiryMs:e.responseExpiryMs,timeSource:e.timeSource??Date.now}}function cs(e){return new B0(new pi({...e.apertureProfile!==void 0?{apertureProfile:e.apertureProfile}:{},...e.policyConfig!==void 0?{policyConfig:e.policyConfig}:{},memoryProfile:e.baseMemoryProfile}),new fi({memoryProfile:e.baseMemoryProfile}),new ci({...e.policyConfig?.plannerDefaults!==void 0?{plannerDefaults:e.policyConfig.plannerDefaults}:{}}))}function Rs(e){let t=e??Mn;return{topology:{...t.topology},responses:{...t.responses}}}function H0(){return{version:ot,operatorId:"default",updatedAt:At(0),sessionCount:0}}function V0(e){switch(A("event.id",e.id),A("event.taskId",e.taskId),mi("event.timestamp",e.timestamp),e.source!==void 0&&A("event.source.id",e.source.id),e.metadata!==void 0&&xu("event.metadata",e.metadata),e.type){case"task.started":A("event.title",e.title);break;case"task.updated":if(A("event.title",e.title),e.evidence!==void 0){if(e.status!=="failed")throw ne("event.evidence");Iu("event.evidence",e.evidence)}break;case"human.input.requested":A("event.interactionId",e.interactionId),A("event.title",e.title),A("event.summary",e.summary);break;case"task.completed":case"task.cancelled":break;default:return Q0(e)}}function Z0(e){switch(A("event.id",e.id),A("event.taskId",e.taskId),mi("event.timestamp",e.timestamp),e.source&&A("event.source.id",e.source.id),e.metadata!==void 0&&xu("event.metadata",e.metadata),e.type){case"task.started":A("event.title",e.title);return;case"task.updated":if(A("event.title",e.title),G0("event.status",e.status),e.evidence!==void 0){if(e.status!=="failed")throw ne("event.evidence");Iu("event.evidence",e.evidence)}return;case"task.completed":return;case"task.cancelled":e.reason!==void 0&&A("event.reason",e.reason);return;case"human.input.requested":A("event.interactionId",e.interactionId),A("event.title",e.title),A("event.summary",e.summary),J0("event.request",e.request),e.riskHint!==void 0&&X0("event.riskHint",e.riskHint);return;default:return eE(e)}}function U0(e){if(!Vn(e))throw Bt("response must be an object");if(Nt("response",e,["taskId","interactionId","response"]),A("response.taskId",e.taskId),A("response.interactionId",e.interactionId),!Vn(e.response)||typeof e.response.kind!="string")throw Bt("response.response must have a supported kind");switch(e.response.kind){case"dismissed":case"acknowledged":Nt("response.response",e.response,["kind"]);return;case"approved":case"rejected":if(W0("response.response",e.response,[["kind"],["kind","reason"]]),e.response.reason!==void 0&&typeof e.response.reason!="string")throw new $("response.reason must be a string",{field:"response.reason"});return;case"option_selected":if(Nt("response.response",e.response,["kind","optionIds"]),!Array.isArray(e.response.optionIds)||e.response.optionIds.length===0)throw new $("response.optionIds must contain at least one option id",{field:"response.optionIds"});for(let t of e.response.optionIds)A("response.optionIds[]",t);return;case"text_submitted":Nt("response.response",e.response,["kind","text"]),A("response.text",e.response.text);return;case"form_submitted":if(Nt("response.response",e.response,["kind","values"]),e.response.values===null||typeof e.response.values!="object"||Array.isArray(e.response.values))throw new $("response.values must be an object",{field:"response.values"});return;default:throw Bt("response.response must have a supported kind")}}function K0(e){A("signal.taskId",e.taskId),A("signal.interactionId",e.interactionId),mi("signal.timestamp",e.timestamp),e.source!==void 0&&A("signal.source.id",e.source.id)}function A(e,t){if(typeof t!="string"||t.trim().length===0)throw new $(`${e} must be a non-empty string`,{field:e})}function Nt(e,t,n){if(Object.keys(t).sort().join("\0")!==[...n].sort().join("\0"))throw Bt(`${e} contains undeclared fields`)}function W0(e,t,n){let r=Object.keys(t).sort().join("\0");if(!n.some(s=>s.slice().sort().join("\0")===r))throw Bt(`${e} contains undeclared fields`)}function Bt(e){return new $(e,{field:"response",code:"invalid_response_variant"})}function xu(e,t){if(t===null||typeof t!="object"||Array.isArray(t))throw new $(`${e} must be an object`,{field:e})}function mi(e,t){if(A(e,t),Number.isNaN(Date.parse(t)))throw new $(`${e} must be a valid ISO timestamp`,{field:e})}function G0(e,t){if(!["running","blocked","waiting","completed","failed"].includes(t))throw new $(`${e} must be a valid task status`,{field:e})}function Iu(e,t){if(!Vn(t)||typeof t.kind!="string")throw ne(e);switch(t.kind){case"outcome":if(ht(e,t,["kind","outcome","subject","channel","complete"]),!["success","failure"].includes(t.outcome)||!la(t.subject)||!us(t.channel)||t.complete!==!0)throw ne(e);return;case"diagnostic":if(t.diagnostic==="source_limit"){if(ht(e,t,["kind","diagnostic","channel","window"]),t.channel!=="read")throw ne(e);Y0(`${e}.window`,t.window);return}if(ht(e,t,["kind","diagnostic","subject","channel","complete"]),!["runtime","expected"].includes(t.diagnostic)||!la(t.subject)||!us(t.channel)||t.complete!==!0)throw ne(e);return;case"payload":if(ht(e,t,["kind","subject","channel","complete"]),!["document","search","source","tool"].includes(t.subject)||!us(t.channel)||t.complete!==!0)throw ne(e);return;case"authorization":if(ht(e,t,["kind","state","execution","result"]),t.state!=="required"||t.execution!=="not_started"||t.result!=="absent")throw ne(e);return;default:throw ne(e)}}function Y0(e,t){if(!Vn(t)||(ht(e,t,["unit","offset","length","total"]),!["bytes","lines"].includes(t.unit)||!Number.isSafeInteger(t.offset)||t.offset<0||!Number.isSafeInteger(t.length)||t.length<=0||!Number.isSafeInteger(t.total)||t.total<=0||t.offset+t.length>=t.total))throw ne(e)}function ht(e,t,n){if(Object.keys(t).sort().join("\0")!==[...n].sort().join("\0"))throw ne(e)}function la(e){return["command","document","search","source","tool"].includes(String(e))}function us(e){return["command","read","search","structured","transcript"].includes(String(e))}function ne(e){return new $(`${e} must be valid bounded source evidence`,{field:e})}function Vn(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function X0(e,t){if(!["low","medium","high"].includes(t))throw new $(`${e} must be a valid consequence level`,{field:e})}function J0(e,t){if(!t||typeof t!="object"||!("kind"in t))throw new $(`${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 $(`${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 $(`${e}.fields must contain at least one field`,{field:`${e}.fields`});return;default:throw new $(`${e} must have a supported request kind`,{field:e})}}function Q0(e){throw new $(`Unhandled ApertureEvent in validation: ${JSON.stringify(e)}`,{field:"event.type",code:"unsupported_event_variant"})}function eE(e){throw new $(`Unhandled SourceEvent in validation: ${JSON.stringify(e)}`,{field:"event.type",code:"unsupported_event_variant"})}var tE=Symbol("aperture.internal.readHealth"),Lu=class Ou{listeners=new r_;taskViews=new zA;heuristics=new yf;evaluation=new wS;traceRecorder=new $A;coordinator;planner=new IS;attentionEvidence;frameLifecycle;relationLifecycle;profileStore;markdownRootDir;baseMemoryProfile;apertureProfile;policyConfig;surfaceCapabilities;operatorPresence;responseExpiryMs;clock;signals;episodes;operatorEngagement;reloadInFlight=null;constructor(t={}){let n=j0(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=rr(n.timeSource),this.signals=new PS({clock:this.clock}),this.episodes=new Rw({clock:this.clock}),this.operatorEngagement=new YA(n.timeSource),this.baseMemoryProfile=n.baseMemoryProfile,this.coordinator=cs(n),this.attentionEvidence=new yA({signals:this.signals,episodes:this.episodes,clock:this.clock,getTaskView:s=>this.getTaskView(s),getAttentionView:()=>this.getAttentionView(),getOperatorPresence:()=>this.getOperatorPresence(),getSurfaceCapabilities:()=>this.getSurfaceCapabilities()});let r={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)};this.frameLifecycle=new PA(r),this.relationLifecycle=new TA(r)}static async fromMarkdown(t){let{profileStore:n,markdownRootDir:r,apertureProfile:s,memoryProfile:i,policyConfig:o}=await Z_(t);return new Ou({apertureProfile:s,memoryProfile:i,policyConfig:o,profileStore:n,markdownRootDir:r})}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 Z0(t),this.publishPreparedEvent(E_(t))}publish(t,n={}){return V0(t),this.publishPreparedEvent(T_(t,n))}publishPreparedEvent(t){let{finalizedEvent:n,originalEvent:r,transitionKind:s}=t,i=GA(s,r,n),o=this.getFrame(n.taskId),a=this.attentionEvidence.assemble(n.taskId,o),c=a.taskSignalSummary,u=a.globalSignalSummary,l=a.attentionView,d=this.evaluation.evaluate(n);switch(d.kind){case"noop":return this.notifyTrace(this.traceRecorder.recordNoop(is({timestamp:this.nowIso(),event:n,eventTransition:i,evidence:a,taskView:a.currentTaskView,attentionView:l}))),null;case"clear":{let p=this.frameLifecycle.applyClear(n.taskId),f=this.getAttentionView();return this.notifyTrace(this.traceRecorder.recordClear(is({timestamp:this.nowIso(),event:n,eventTransition:i,evidence:a,taskView:this.getTaskView(n.taskId),attentionView:f}),n.taskId)),p}case"candidate":{let p=this.prepareCandidateForJudgment(d.candidate,c,u),f=this.explainCandidateDecision(n.taskId,p,a),m=da(f.decision.candidate),g=this.applyCandidateDecision(f,a,l),y=this.getAttentionView();return this.notifyTrace(this.traceRecorder.recordCandidate(is({timestamp:this.nowIso(),event:n,eventTransition:i,evidence:a,taskView:this.getTaskView(n.taskId),attentionView:y}),{original:d.candidate,adjusted:p,explanation:f,result:g,suppressed:m})),g}}}prepareCandidateForJudgment(t,n,r){return this.episodes.assign(this.heuristics.apply(t,n,r))}explainCandidateDecision(t,n,r){let s=this.attentionEvidence.augmentContinuitySignalSummary(t,n,r);return this.coordinator.explain(r.currentFrame,n,s)}applyCandidateDecision(t,n,r){if(da(t.decision.candidate))return null;if(t.decision.kind!=="auto_approve"&&this.relationLifecycle.shouldRetireResolvedEpisodeFrames(t.decision.candidate,r))return this.relationLifecycle.materializeResolvedEpisodeFrame(t.decision.candidate,r);switch(t.decision.kind){case"auto_approve":return this.frameLifecycle.applyAutoResponse(t.decision.candidate,t.decision.response);case"ambient":return this.applyPeripheralDecision(t,"ambient",r);case"queue":return this.applyPeripheralDecision(t,"queue",r);case"activate":return this.applyActivationDecision(t,n,r)}}applyPeripheralDecision(t,n,r){let s=t.decision.candidate,i=s.episodeId?this.frameLifecycle.findNowEpisodeFrame(s.episodeId,r):null;return n==="queue"&&i&&t.ambiguity===null&&rE(t)&&nE(s,i)?this.frameLifecycle.refreshVisibleEpisodeFrame(s,i):this.frameLifecycle.materializePeripheralFrame(s,n,r)}applyActivationDecision(t,n,r){if(t.decision.kind!=="activate")return null;let s=t.decision.candidate;if(this.frameLifecycle.shouldRetireSupersededEpisodeFrames(s,r))return this.frameLifecycle.commitFrame(this.frameLifecycle.applyResponseExpiry(this.planner.plan(s,n.currentFrame)),this.frameLifecycle.findSupersededEpisodeFrames(s,r));let i=s.episodeId?this.frameLifecycle.findPeripheralEpisodeFrame(s.episodeId,r):null;return i&&this.frameLifecycle.shouldPromotePeripheralEpisodeFrame(t)?this.frameLifecycle.promotePeripheralEpisodeFrame(s,i.frame):i?this.frameLifecycle.materializePeripheralFrame(s,ai(s,t.policy,n.surfaceCapabilities),r):this.frameLifecycle.commitFrame(this.frameLifecycle.applyResponseExpiry(this.planner.plan(s,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)}[_s](t){return this.listeners[_s](t)}submit(t){U0(t),this.frameLifecycle.submit(t)}getTaskView(t){return this.taskViews.get(t)}getAttentionView(){return pf(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 Je(this.signals.summarize(t))}[tE](){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 Rs(this.surfaceCapabilities)}getOperatorPresence(){return this.operatorPresence}setOperatorPresence(t){this.operatorPresence=t}engage(t,n,r={}){if(!this.frameLifecycle.findFrameByInteractionId(t,n))return;let s=this.getAttentionView();this.operatorEngagement.engage(t,n,r,()=>{let o=this.getAttentionView();this.operatorEngagement.clear(t,n);let a=this.getAttentionView();ra(o,a)||this.notifyAttentionView()});let i=this.getAttentionView();ra(s,i)||this.notifyAttentionView()}setSurfaceCapabilities(t){this.surfaceCapabilities=Rs(t)}snapshotMemoryProfile(t=this.nowIso()){return tu(this.baseMemoryProfile,this.signals.list(),t)}async checkpointMemory(t=this.nowIso()){let n=await K_({profileStore:this.profileStore,memoryProfile:this.baseMemoryProfile,signals:this.signals.list(),now:t});return n?(this.baseMemoryProfile=n,this.coordinator=cs({apertureProfile:this.apertureProfile,baseMemoryProfile:this.baseMemoryProfile,policyConfig:this.policyConfig}),n):null}markViewed(t,n,r={}){let s=this.frameLifecycle.findFrame(t,n);this.recordSignal(Rn("viewed",t,n,this.nowIso(),s,r))}markTimedOut(t,n,r={}){let s=this.frameLifecycle.findFrame(t,n);this.recordSignal(Rn("timed_out",t,n,this.nowIso(),s,r))}markContextExpanded(t,n,r={}){let s=this.frameLifecycle.findFrame(t,n);this.recordSignal(Rn("context_expanded",t,n,this.nowIso(),s,r))}markContextSkipped(t,n,r={}){let s=this.frameLifecycle.findFrame(t,n);this.recordSignal(Rn("context_skipped",t,n,this.nowIso(),s,r))}recordSignal(t){K0(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:r}=await U_({profileStore:this.profileStore,markdownRootDir:this.markdownRootDir,apertureProfile:this.apertureProfile,memoryProfile:this.baseMemoryProfile,policyConfig:this.policyConfig}),s=cs({apertureProfile:t,baseMemoryProfile:n,policyConfig:r});return this.apertureProfile=t,this.baseMemoryProfile=n,this.policyConfig=r,this.coordinator=s,!0}};function da(e){return e.episodeObsolete===!0}function nE(e,t){return e.mode==="status"&&t.mode==="status"&&pa(e.responseSpec.kind)&&pa(t.responseSpec?.kind)}function pa(e){return e==="none"||e==="acknowledge"}function rE(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 gi(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 J(e){return{companyId:e,updatedAt:new Date().toISOString(),now:null,next:[],ambient:[],counts:{now:0,next:0,ambient:0,total:0}}}function ze(){return[]}function q(e){return{companyId:e,updatedAt:new Date().toISOString(),frames:{}}}function ie(e,t,n,r){let s=t,i=gi("now"in t?t.now:s.active??null),o=("next"in t?t.next:s.queued??[]).map(c=>gi(c)).filter(c=>c!==null),a=t.ambient.map(c=>gi(c)).filter(c=>c!==null);return{companyId:e,updatedAt:r??new Date().toISOString(),now:i,next:o,ambient:a,counts:{now:i?1:0,next:o.length,ambient:a.length,total:(i?1:0)+o.length+a.length},...n?{lastEvent:n}:{}}}function _t(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function Pu(e){let t=_t(e);return t&&typeof t.taskId=="string"&&typeof t.interactionId=="string"?t:null}function Fu(e){return Array.isArray(e)?e.map(Pu).filter(t=>t!==null):[]}function Et(e,t){let n=_t(t);if(!n||n.companyId!==e||typeof n.updatedAt!="string")return null;let r=_t(n.counts),s=_t(n.review),i=_t(s?.unread),o=Pu(n.now??n.active??null),a=Fu(n.next??n.queued??[]),c=Fu(n.ambient);return{companyId:e,updatedAt:n.updatedAt,now:o,next:a,ambient:c,counts:{now:typeof r?.now=="number"?r.now:typeof r?.active=="number"?r.active:o?1:0,next:typeof r?.next=="number"?r.next:typeof r?.queued=="number"?r.queued:a.length,ambient:typeof r?.ambient=="number"?r.ambient:c.length,total:typeof r?.total=="number"?r.total:(o?1:0)+a.length+c.length},...s?{review:{...typeof s.lastSeenAt=="string"?{lastSeenAt:s.lastSeenAt}:{},unread:{now:typeof i?.now=="number"?i.now:typeof i?.active=="number"?i.active:0,next:typeof i?.next=="number"?i.next:typeof i?.queued=="number"?i.queued:0,ambient:typeof i?.ambient=="number"?i.ambient:0,total:typeof i?.total=="number"?i.total:0}}}:{},..._t(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 or={topology:{supportsAmbient:!0},responses:{supportsSingleChoice:!0,supportsMultipleChoice:!1,supportsForm:!1,supportsTextResponse:!0}};var sE=100,hi=100,Nu=1800*1e3,iE=15e3,cr=class{sessions=new Map;getHealth(){return{trackedCompanies:this.sessions.size,maxCompanySessions:hi,idleSessionTtlMs:Nu,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 r=this.syncSnapshotFromCore(t,n),s=r.now?{taskId:r.now.taskId,interactionId:r.now.interactionId,signalSummary:n.core.getSignalSummary(r.now.taskId),attentionState:n.core.getAttentionState(r.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(r.updatedAt),ledger:aE(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:s}}hasSession(t){return this.sessions.has(t)}hydrate(t,n){let r=this.sessions.get(t);if(r)return this.touchSession(r),{snapshot:r.snapshot??ie(t,r.core.getAttentionView()),review:r.review};let s=this.buildSession(t,n);return this.sessions.set(t,s),this.pruneSessions(),{snapshot:s.snapshot??ie(t,s.core.getAttentionView()),review:s.review}}ingest(t,n,r){let s=this.ensureSession(t),i=s.core.publish(n);return s.eventCount+=1,s.snapshot=ie(t,s.core.getAttentionView(),r),{frame:i,snapshot:s.snapshot}}submit(t,n,r){let s=this.ensureSession(t);return s.core.submit(n),s.snapshot=ie(t,s.core.getAttentionView(),r),s.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 r=this.ensureSession(t);return r.review=n,this.invalidateReconciled(t),r.review}getTraces(t){let n=this.sessions.get(t);return n&&this.touchSession(n),[...n?.traces??[]]}getCachedReconciledCandidates(t,n){let r=this.sessions.get(t);r&&this.touchSession(r);let s=r?.reconciledCandidates;return!s||s.key!==n?null:s.expiresAt<=Date.now()?(r&&(r.reconciledCandidates=null,r.hostDataRevision+=1),null):[...s.candidates]}setCachedReconciledCandidates(t,n,r){let s=this.ensureSession(t);return s.reconciledCandidates={key:n,candidates:[...r],expiresAt:Date.now()+iE},[...r]}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 r=this.sessions.get(t);if(!r)return null;this.touchSession(r);let s=r.hostCache.get(n);return s?s.expiresAt<=Date.now()?(r.hostCache.delete(n),null):s.value:null}setCachedHostValue(t,n,r,s){return this.ensureSession(t).hostCache.set(n,{value:r,expiresAt:Date.now()+Math.max(1,s)}),r}invalidateHostCache(t,n={}){let r=this.sessions.get(t);if(!r)return;let{keys:s=[],prefixes:i=[],bumpRevision:o=!0}=n;for(let a of s)r.hostCache.delete(a);if(i.length>0)for(let a of[...r.hostCache.keys()])i.some(c=>a.startsWith(c))&&r.hostCache.delete(a);o&&this.invalidateReconciled(t)}getApprovals(t){return this.sessions.get(t)?.approvals.records??null}setApprovals(t,n){let r=this.ensureSession(t);return r.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 r=this.ensureSession(t);r.approvals={records:r.approvals.records,dirty:!0,lastLoadedAt:r.approvals.lastLoadedAt,lastError:n}}restore(t,n){let r=this.buildSession(t,n,this.sessions.get(t));return this.sessions.set(t,r),{snapshot:r.snapshot??ie(t,r.core.getAttentionView()),review:r.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 r=this.ensureSession(t);r.persistence={state:"faulted",updatedAt:new Date().toISOString(),lastError:n}}appendLedgerEntry(t,n){let r=this.ensureSession(t);return r.ledger=[...r.ledger,n],this.getLedger(t)}applyEvent(t,n){let r=this.ensureSession(t),s=r.ledger,i=r.snapshot,o=r.eventCount;r.ledger=[...r.ledger,n];try{let a=n.sourceEvent?r.core.publishSourceEvent(n.sourceEvent):r.core.publish(n.apertureEvent);return r.eventCount+=1,r.snapshot=ie(t,r.core.getAttentionView(),n.source,n.occurredAt),r.reconciledCandidates=null,{frame:a,ledger:this.getLedger(t),snapshot:r.snapshot}}catch(a){throw r.ledger=s,r.snapshot=i,r.eventCount=o,a}}applyResponse(t,n){let r=this.ensureSession(t),s=r.ledger,i=r.snapshot,o=r.eventCount;r.ledger=[...r.ledger,n];try{return r.core.submit(n.apertureResponse),r.snapshot=ie(t,r.core.getAttentionView(),n.source,n.occurredAt),r.reconciledCandidates=null,{ledger:this.getLedger(t),snapshot:r.snapshot}}catch(a){throw r.ledger=s,r.snapshot=i,r.eventCount=o,a}}applyOverlayResponse(t,n){let r=this.ensureSession(t);return r.ledger=[...r.ledger,n],r.reconciledCandidates=null,{ledger:this.getLedger(t),snapshot:this.syncSnapshotFromCore(t,r)}}applySignal(t,n){let r=this.ensureSession(t),s=this.syncSnapshotFromCore(t,r);r.ledger=[...r.ledger,n],r.core.recordSignal(n.apertureSignal);let i=this.syncSnapshotFromCore(t,r);return{ledger:this.getLedger(t),snapshot:i,changed:!ar(s,i)}}replaceLedger(t,n){let r=this.ensureSession(t);return r.ledger=[...n],r.reconciledCandidates=null,this.getLedger(t)}rebuildFromLedger(t,n){let r=this.sessions.get(t)?.review??q(t),s=this.buildSession(t,{ledger:n,review:r},this.sessions.get(t));return this.sessions.set(t,s),s.snapshot??ie(t,s.core.getAttentionView())}getCompanyCount(){return this.sessions.size}engage(t,n,r,s={}){let i=this.ensureSession(t),o=this.syncSnapshotFromCore(t,i);i.core.engage(n,r,s);let a=this.syncSnapshotFromCore(t,i);return{snapshot:a,changed:!ar(o,a)}}markViewed(t,n,r,s={}){let i=this.ensureSession(t),o=this.syncSnapshotFromCore(t,i);i.core.markViewed(n,r,s);let a=this.syncSnapshotFromCore(t,i);return{snapshot:a,changed:!ar(o,a)}}markContextExpanded(t,n,r,s={}){let i=this.ensureSession(t),o=this.syncSnapshotFromCore(t,i);i.core.markContextExpanded(n,r,s);let a=this.syncSnapshotFromCore(t,i);return{snapshot:a,changed:!ar(o,a)}}setOperatorPresence(t,n){let r=this.ensureSession(t);return r.core.setOperatorPresence(n),this.touchSession(r),r.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,r){let s=this.createSession(t);if(s.ledger=[...n.ledger],s.review=n.review??q(t),s.approvals={records:r?.approvals.records?[...r.approvals.records]:null,dirty:r?.approvals.dirty??!0,lastLoadedAt:r?.approvals.lastLoadedAt,lastError:r?.approvals.lastError},s.hostCache=r?new Map(r.hostCache):new Map,s.hostDataRevision=r?.hostDataRevision??0,s.persistence=r?.persistence??bi(),s.traces=r?[...r.traces]:[],n.ledger.length>0){let i,o;for(let a of n.ledger)i=a.source,o=a.occurredAt,a.kind==="event"?(a.sourceEvent?s.core.publishSourceEvent(a.sourceEvent):s.core.publish(a.apertureEvent),s.eventCount+=1):a.kind==="response"?s.core.submit(a.apertureResponse):a.kind==="signal"&&s.core.recordSignal(a.apertureSignal);s.snapshot=ie(t,s.core.getAttentionView(),i,o)}else s.snapshot=n.snapshot??ie(t,s.core.getAttentionView());return s.persistence=r?.persistence?.state==="faulted"?r.persistence:bi(),s}createSession(t){let n=new Lu({surfaceCapabilities:or}),r=Date.now(),s={core:n,snapshot:null,ledger:ze(),review:q(t),pendingPersistence:!1,eventCount:0,traces:[],reconciledCandidates:null,approvals:{records:null,dirty:!0},hostCache:new Map,hostDataRevision:0,persistence:bi(),lastTouchedAt:r};return n.onTrace(i=>{s.traces=[...s.traces.slice(-(sE-1)),i]}),s}touchSession(t){t.lastTouchedAt=Date.now()}pruneSessions(){let t=Date.now();for(let[r,s]of this.sessions.entries())t-s.lastTouchedAt>Nu&&this.sessions.delete(r);if(this.sessions.size<=hi)return;let n=[...this.sessions.entries()].sort((r,s)=>r[1].lastTouchedAt-s[1].lastTouchedAt);for(;this.sessions.size>hi&&n.length>0;){let[r]=n.shift();this.sessions.delete(r)}}syncSnapshotFromCore(t,n){let r=n.core.getAttentionView(),s=n.snapshot;if(s&&oE(s,r))return s;let i=ie(t,r,s?.lastEvent);return n.snapshot=i,i}};function ar(e,t){return!e||!t?e===t:e.now?.interactionId===t.now?.interactionId&&ur(e.next,t.next)&&ur(e.ambient,t.ambient)}function oE(e,t){return e.now?.interactionId===t.now?.interactionId&&ur(e.next,t.next)&&ur(e.ambient,t.ambient)}function ur(e,t){return e.length===t.length&&e.every((n,r)=>n.interactionId===t[r]?.interactionId)}function aE(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 bi(){return{state:"healthy",updatedAt:new Date().toISOString()}}function De(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function ge(e){return typeof e=="string"&&e.trim().length>0?e:void 0}function yi(e){return e===null?null:ge(e)}function lr(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 cE(e){if(!Array.isArray(e))return;let t=e.filter(n=>{if(typeof n!="object"||n===null)return!1;let r=n;return r.kind==="same_issue"||r.kind==="resolves"||r.kind==="supersedes"||r.kind==="repeats"||r.kind==="escalates"});return t.length>0?t:void 0}function tn(e){let t=De(e.metadata),n=De(t?.attention),r=De(t?.semantic),s=De(t?.episode),i=De(t?.issueIntelligence),o=De(t?.decision);return{entityType:ge(t?.entityType),issueStatus:ge(t?.issueStatus),issuePriority:ge(t?.issuePriority),approvalStatus:ge(t?.approvalStatus),approvalType:ge(t?.approvalType),agentStatus:ge(t?.agentStatus),pauseReason:yi(t?.pauseReason),liveReconciled:typeof t?.liveReconciled=="boolean"?t.liveReconciled:void 0,activityPath:ge(t?.activityPath),attention:n?{rationale:lr(n.rationale)}:void 0,semantic:r?{confidence:r.confidence==="low"||r.confidence==="medium"||r.confidence==="high"?r.confidence:void 0,relationHints:cE(r.relationHints)}:void 0,episode:s?{size:typeof s.size=="number"?s.size:void 0,state:ge(s.state)}:void 0,issueIntelligence:i?{matchedRuleIds:lr(i.matchedRuleIds),owner:yi(i.owner),ownerKind:i.ownerKind==="agent"||i.ownerKind==="human"?i.ownerKind:i.ownerKind===null?null:void 0,blockingTarget:yi(i.blockingTarget)}:void 0,decision:o?{owner:o.owner==="aperture_core"||o.owner==="paperclip_reconciliation"||o.owner==="approval_overlay"||o.owner==="display_merge"?o.owner:void 0,lane:o.lane==="now"||o.lane==="next"||o.lane==="ambient"?o.lane:void 0,sourcePolicy:ge(o.sourcePolicy),rationale:lr(o.rationale),promotedFromLane:o.promotedFromLane==="next"||o.promotedFromLane==="ambient"?o.promotedFromLane:void 0}:void 0}}function at(e,t){let n=De(e.metadata)??{},r=De(n.decision)??{},s=[...lr(r.rationale)??[],...t.rationale??[]].filter((i,o,a)=>a.indexOf(i)===o);return{...e,metadata:{...n,decision:{...r,...t,...s.length>0?{rationale:s}:{}}}}}function vi(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 ki(e,t){let n=e.trim();if(!n)throw new Error(`${t} is required.`);return n}function zu(e){try{let t=decodeURIComponent(e);return t.trim().length>0?t:null}catch{return null}}function he(e,t){let n=ki(e,"task kind"),r=ki(t,"task id");return`${encodeURIComponent(n)}:${encodeURIComponent(r)}`}function nn(e){if(typeof e!="string")return null;let t=e.indexOf(":");if(t<=0||t>=e.length-1)return null;let n=zu(e.slice(0,t)),r=zu(e.slice(t+1));return!n||!r?null:{kind:n,id:r}}function Du(e){return nn(e)?.kind??null}function $u(e,t){return nn(e)?.kind===t}function be(e,t){let n=ki(t,"interaction step");return`${e}:${encodeURIComponent(n)}`}function uE(e){return e instanceof Error?e.message.toLowerCase().includes("private/reserved ranges"):!1}function qu(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 Mu(e,t,n,r={}){let{expectJson:s=!0,retries:i=0,headers:o,...a}=r,c=qu(t);if(!c)throw new Error("Paperclip approval API base is not configured.");let u=new URL(n,c).toString(),l=null;for(let d=0;d<=i;d+=1)try{let p=await e.http.fetch(u,{...a,headers:{Accept:"application/json","X-Requested-With":"XMLHttpRequest",...o??{}}});if(!p.ok){let f=await p.text().catch(()=>"");throw new Error(`Request failed (${p.status})${f?`: ${f.trim()}`:""}`)}return s?await p.json():void 0}catch(p){if(l=p instanceof Error?p:new Error(String(p)),d>=i)break;await new Promise(f=>setTimeout(f,250*(d+1)))}throw l??new Error("Request failed.")}async function Bu(e,t,n){if(!qu(n))return[];try{return await Mu(e,n,`/api/companies/${t}/approvals?status=pending`,{method:"GET",retries:2})}catch(r){if(uE(r))return[];throw r}}async function ju(e,t,n,r){let s=n==="request-revision"?`/api/approvals/${t}/request-revision`:`/api/approvals/${t}/${n}`;await Mu(e,r,s,{method:"POST",expectJson:!1,headers:{"Content-Type":"application/json"},body:JSON.stringify({})})}var lE=1,dE=2,Vu=3;function dr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:null}function pE(e){return!e||typeof e!="object"?!1:typeof e.eventType=="string"}function fE(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"||!pE(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 Tt(e){return Array.isArray(e)&&e.every(fE)}function rn(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(r=>{if(!r||typeof r!="object")return!1;let s=r;return(s.lastSeenAt===void 0||typeof s.lastSeenAt=="string")&&(s.suppressedAt===void 0||typeof s.suppressedAt=="string")})}function Zu(e,t){let n=t.snapshot??J(e),r=t.review??q(e);return{schemaVersion:Vu,payload:{companyId:e,ledger:[...t.ledger],snapshot:n,review:r,meta:pr(t.ledger)}}}function Uu(e,t){let n=dr(t);if(!n)return null;let r=n.schemaVersion;return r===Vu||r===dE?Hu(e,n):r===lE?mE(e,n):r===void 0?gE(e,n):null}function pr(e,t=new Date().toISOString()){let n=e.length;return{persistedAt:t,ledgerEntries:n,eventEntries:e.filter(r=>r.kind==="event").length,responseEntries:e.filter(r=>r.kind==="response").length,overlayResponseEntries:e.filter(r=>r.kind==="overlay-response").length,signalEntries:e.filter(r=>r.kind==="signal").length,replayStrategy:"full-ledger",compactionRecommended:n>2e3}}function Hu(e,t){let n=dr(t.payload);if(!n||n.companyId!==e)return null;let r=Tt(n.ledger)?n.ledger:ze(),s=Et(e,n.snapshot),i=rn(n.review,e)?n.review:q(e);return s?{companyId:e,ledger:r,snapshot:s,review:i,meta:hE(n.meta,r)}:null}function mE(e,t){let n=dr(t.payload);if(!n||n.companyId!==e)return null;let r=Tt(n.ledger)?n.ledger:ze(),s=Et(e,n.snapshot),i=rn(n.review,e)?n.review:q(e);return s?{companyId:e,ledger:r,snapshot:s,review:i,meta:pr(r)}:null}function gE(e,t){if(t.companyId!==e)return null;let n=Tt(t.ledger)?t.ledger:ze(),r=Et(e,t.snapshot),s=rn(t.review,e)?t.review:q(e);return r?{companyId:e,ledger:n,snapshot:r,review:s,meta:pr(n)}:null}function hE(e,t){let n=dr(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(r=>r.kind==="overlay-response").length,signalEntries:typeof n.signalEntries=="number"?n.signalEntries:t.filter(r=>r.kind==="signal").length,replayStrategy:"full-ledger",compactionRecommended:typeof n.compactionRecommended=="boolean"?n.compactionRecommended:t.length>2e3}:pr(t)}var Wu="attention-state",Gu="attention-snapshot",Yu="attention-ledger",Xu="attention-review",Ku="attention-updates",fr=new Map,wi=[10,30];function j(e,t){let n=e[t];if(typeof n=="string"&&n.trim().length>0)return n;throw new Error(`${t} is required`)}function P(e){return j(e,"companyId")}function mr(e){let t=e instanceof Error?e.message:String(e);return t.includes("invocation scope")||t.includes("not allowed to perform")}async function Ju(e,t){let n=fr.get(e)??Promise.resolve(),r,s=new Promise(o=>{r=o}),i=n.catch(()=>{}).then(()=>s);fr.set(e,i),await n.catch(()=>{});try{return await t()}finally{r(),fr.get(e)===i&&fr.delete(e)}}async function sn(e,t){let n=await e.state.get({scopeKind:"company",scopeId:t,stateKey:Wu});return Uu(t,n)}async function Qu(e,t,n){await e.state.set({scopeKind:"company",scopeId:t,stateKey:Wu},Zu(t,n))}function ct(e,t){e.streams.open(Ku,t.companyId),e.streams.emit(Ku,t)}async function el(e,t,n){return Ju(n,async()=>{if(!t.hasPendingPersistence(n))return!1;let r=t.getPersistableState(n);if(!r)return!1;try{return await Qu(e,n,r),t.markPersistenceHealthy(n),!0}catch(s){let i=s instanceof Error?s.message:String(s);return mr(s)?e.logger.warn("Aperture pending state could not be persisted in this host callback; will retry from the next scoped invocation.",{companyId:n,error:i}):(t.markPersistenceFault(n,i),e.logger.warn("Failed to persist pending Aperture event state.",{companyId:n,error:i})),!1}})}async function tl(e,t){for(let n=0;n<=wi.length;n+=1)try{await e();return}catch(r){let s=n===wi.length;if(t(r,n+1,s),s)return;await new Promise(i=>{setTimeout(i,wi[n])})}}async function ut(e,t,n){await tl(async()=>{await e.telemetry.track(t,{surface:"focus",...n??{}})},(r,s,i)=>{e.logger.warn(i?"Failed to emit Focus telemetry after retries":"Retrying Focus telemetry after failure",{eventName:t,attempt:s,error:r instanceof Error?r.message:String(r)})})}async function Si(e,t){await tl(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,r,s)=>{e.logger.warn(s?"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:r,error:n instanceof Error?n.message:String(n)})})}async function lt(e,t,n,r){return Ju(n,async()=>{let s=await sn(e,n),i=t.getLedger(n),o=t.getSnapshot(n)??J(n),a=t.getReview(n)??s?.review??q(n),c=s??{companyId:n,ledger:i,snapshot:o,review:a};try{let u=await r();try{return u.review&&t.setReview(n,u.review),await Qu(e,n,{ledger:u.ledger,snapshot:u.snapshot,review:u.review??t.getReview(n)??a}),t.markPersistenceHealthy(n),u}catch(l){throw t.restore(n,c),t.markPersistenceFault(n,l instanceof Error?l.message:String(l)),l}}catch(u){throw t.restore(n,c),u}})}async function gr(e,t,n){let r=t.getReview(n);if(r)return r;let s=await sn(e,n);return s?.review?s.review:q(n)}function hr(e,t,n,r=!1){let s=new Date().toISOString(),i={...e,updatedAt:s,lastSeenAt:s,frames:{...e.frames}};for(let o of n){let a=i.frames[o]??{};i.frames[o]={...a,lastSeenAt:s,...r?{suppressedAt:s}:{}}}return i}function bE(e,t){return e?[...e.now?[e.now]:[],...e.next,...e.ambient].some(r=>r.taskId===t):!1}function nl(e){return Du(e)??"unknown"}function yE(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 Ai(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:nl(e.taskId)},apertureSignal:{...e.signal,taskId:e.taskId,interactionId:e.interactionId,timestamp:t}}}function on(e,t){let n=yE(e,t),r=nl(t),s=n==="ui_only"?null:n==="now"?e?.now??null:n==="next"?e?.next.find(o=>o.taskId===t)??null:e?.ambient.find(o=>o.taskId===t)??null,i={entityType:r,lane:n};if(s?.mode&&(i.mode=s.mode),s?.source?.kind&&(i.sourceKind=s.source.kind),s){let o=tn(s);typeof o.liveReconciled=="boolean"&&(i.liveReconciled=o.liveReconciled)}return i}function vE(e){let t=nn(e);return t?.kind==="approval"?t.id:null}function rl(e,t){e.actions.register("set-focus-presence",async n=>{let r=P(n),i=j(n,"presence")==="absent"?"absent":"present";return{ok:!0,operatorPresence:t.setOperatorPresence(r,i)}}),e.actions.register("mark-attention-viewed",async n=>{let r=P(n),s=j(n,"taskId"),i=j(n,"interactionId"),o=typeof n.surface=="string"&&n.surface.trim().length>0?n.surface.trim():"focus",a=t.getSnapshot(r),c=Ai({taskId:s,interactionId:i,sourceEventType:"plugin.local.viewed",signal:{kind:"viewed",surface:o}}),{snapshot:u,changed:l}=await lt(e,t,r,()=>{let{ledger:d,snapshot:p,changed:f}=t.applySignal(r,c);return{ledger:d,snapshot:p,changed:f}});return l&&ct(e,{companyId:r,reason:"action",eventType:"plugin.local.viewed",updatedAt:u.updatedAt,counts:u.counts}),await ut(e,"frame_viewed",{...on(a,s),surface:o}),{ok:!0,snapshot:u,changed:l}}),e.actions.register("engage-focus",async n=>{let r=P(n),s=j(n,"taskId"),i=j(n,"interactionId"),o=typeof n.durationMs=="number"&&Number.isFinite(n.durationMs)?Math.max(25,Math.floor(n.durationMs)):void 0,a=typeof n.reason=="string"&&n.reason.trim().length>0?n.reason.trim():"operator_interaction",c=t.getSnapshot(r),u=new Date().toISOString(),l=[Ai({taskId:s,interactionId:i,occurredAt:u,sourceEventType:"plugin.local.engage.viewed",signal:{kind:"viewed",surface:"focus"}}),...a==="show_context"||a==="comment_compose"?[Ai({taskId:s,interactionId:i,occurredAt:u,sourceEventType:"plugin.local.engage.context_expanded",signal:{kind:"context_expanded",surface:"focus",section:a==="show_context"?"now_context":"comment_compose"}})]:[]],{snapshot:d,changed:p}=await lt(e,t,r,()=>{let f=t.engage(r,s,i,{durationMs:o}),m=t.getLedger(r),g=f.snapshot,y=!1;for(let v of l){let S=t.applySignal(r,v);m=S.ledger,g=S.snapshot,y||=S.changed}return{ledger:m,snapshot:g,changed:f.changed||y}});return p&&ct(e,{companyId:r,reason:"action",eventType:"plugin.local.engage",updatedAt:d.updatedAt,counts:d.counts}),await ut(e,"focus_engaged",{...on(c,s),actionKind:"engage",reason:a,...o?{durationMs:o}:{}}),{ok:!0,snapshot:d,changed:p}}),e.actions.register("acknowledge-frame",async n=>{let r=P(n),s=j(n,"taskId"),i=j(n,"interactionId"),o=vi({taskId:s,interactionId:i,action:"acknowledge"}),a={kind:"response",id:`${s}:acknowledge:${Date.now()}`,occurredAt:new Date().toISOString(),source:{eventType:"plugin.local.acknowledge",entityId:s},apertureResponse:o},c=t.getSnapshot(r),u=await gr(e,t,r),l=hr(u,r,[s],!0),{snapshot:d}=await lt(e,t,r,()=>{let{ledger:p,snapshot:f}=t.applyResponse(r,a);return{ledger:p,snapshot:f,review:l}});return ct(e,{companyId:r,reason:"action",eventType:"plugin.local.acknowledge",updatedAt:d.updatedAt,counts:d.counts}),await ut(e,"frame_acknowledged",{...on(c,s)}),{ok:!0,snapshot:d}}),e.actions.register("comment-on-issue",async n=>{let r=P(n),s=j(n,"taskId"),i=j(n,"issueId"),o=j(n,"body").trim(),a=nn(s);if(!a||a.kind!=="issue")throw new Error("Comments can only be posted on issue-backed frames.");if(a.id!==i)throw new Error("Issue comment target does not match the selected frame.");let c=await e.issues.createComment(i,o,r),u=t.getSnapshot(r),l=await gr(e,t,r),d=hr(l,r,[s],!1),{snapshot:p}=await lt(e,t,r,()=>(t.invalidateHostCache(r,{keys:[`issue:${i}:detail`,`issue:${i}:comments`],prefixes:["issues:blocked","issues:in_review"]}),t.setReview(r,d),{ledger:t.getLedger(r),snapshot:t.getSnapshot(r)??J(r),review:d}));return ct(e,{companyId:r,reason:"action",eventType:"plugin.local.comment",updatedAt:p.updatedAt,counts:p.counts}),await ut(e,"issue_comment_submitted",{...on(u,s),actionKind:"comment"}),await Si(e,{companyId:r,message:"Posted an issue comment from Focus.",entityType:"issue",entityId:i,metadata:{source:"focus",taskId:s}}),{ok:!0,comment:c,review:d}}),e.actions.register("record-approval-response",async n=>{let r=P(n),s=j(n,"taskId"),i=j(n,"interactionId"),o=j(n,"decision");if(!$u(s,"approval"))throw new Error("Approval responses can only be recorded for approval-backed frames.");if(!["approve","reject","request-revision"].includes(o))throw new Error("decision must be approve, reject, or request-revision.");let a=vi({taskId:s,interactionId:i,action:o}),c={kind:"response",id:`${s}:${o}:${Date.now()}`,occurredAt:new Date().toISOString(),source:{eventType:`plugin.local.approval.${o}`,entityId:s},apertureResponse:a},u=vE(s);if(!u)throw new Error("Approval responses require a durable approval id.");let l=await e.config.get(r);await ju(e,u,o,l),t.invalidateApprovals(r);let d=await gr(e,t,r),p=hr(d,r,[s],!0),f=t.getSnapshot(r),m=bE(f,s),{snapshot:g}=await lt(e,t,r,()=>{if(m){let{ledger:b,snapshot:_}=t.applyResponse(r,c);return{ledger:b,snapshot:_,review:p}}let y={kind:"overlay-response",id:c.id,occurredAt:c.occurredAt,source:c.source,apertureResponse:c.apertureResponse,overlay:{kind:"approval_overlay",reason:"Approval frame came from the Paperclip approvals display adapter, not the replayed Core snapshot."}},{ledger:v,snapshot:S}=t.applyOverlayResponse(r,y);return{ledger:v,snapshot:S,review:p}});return ct(e,{companyId:r,reason:"action",eventType:`plugin.local.approval.${o}`,updatedAt:g.updatedAt,counts:g.counts}),await ut(e,"approval_response_recorded",{...on(f,s),decision:o==="request-revision"?"request_revision":o}),await Si(e,{companyId:r,message:o==="approve"?"Approved a Focus approval.":o==="reject"?"Rejected a Focus approval.":"Requested revision on a Focus approval.",entityType:"approval",entityId:u,metadata:{source:"focus",decision:o,taskId:s}}),{ok:!0,snapshot:g,review:p}}),e.actions.register("mark-attention-seen",async n=>{let r=P(n),s=Array.isArray(n.taskIds)?n.taskIds.filter(c=>typeof c=="string"&&c.trim().length>0):[];if(s.length===0)throw new Error("taskIds must include at least one frame task id.");let i=await gr(e,t,r),o=hr(i,r,s),{snapshot:a}=await lt(e,t,r,()=>(t.setReview(r,o),{ledger:t.getLedger(r),snapshot:t.getSnapshot(r)??J(r),review:o}));return ct(e,{companyId:r,reason:"action",eventType:"plugin.local.seen",updatedAt:a.updatedAt,counts:a.counts}),await ut(e,"attention_seen_marked",{frameCount:s.length}),{ok:!0,review:o,snapshot:a}})}var E={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 T(e,t,n){return{id:e,label:t,value:n}}function oe(e){return e.split(/[_\-.]/g).filter(Boolean).map(t=>t.slice(0,1).toUpperCase()+t.slice(1)).join(" ")}function br(e){return T(E.approvalType,"Type",e)}function yr(e){return T(E.requestedAmount,"Requested amount",e)}function vr(e){return T(E.budgetReason,"Reason",e)}function kr(e){return T(E.decisionContext,"Decision context",e)}function sl(e){return T(E.linkedIssues,"Linked issues",e)}function il(e){return T(E.needsActionFrom,"Needs action from",e)}function ol(e){return T(E.blockedBy,"Blocked by",e)}function al(e){return T(E.blocksTarget,"Blocks",e)}function cl(e){return T(E.recommendedMove,"Recommended move",e)}function ul(e){return T(E.issueStatus,"Status",e)}function ll(e){return T(E.issuePriority,"Priority",e)}function dl(e){return T(E.issueWorkMode,"Mode",e)}function pl(e){return T(E.blockedReason,"Blocked reason",e)}function fl(e){return T(E.blockedSeverity,"Severity",e)}function ml(e){return T(E.recoveryAction,"Recovery",e)}function gl(e){return T(E.watchdog,"Watchdog",e)}function hl(e){return T(E.documentLock,"Document lock",e)}function bl(e){return T(E.latestComment,"Latest comment",e)}function yl(e){return T(E.agentStatus,"Status",e)}function vl(e){return T(E.pauseReason,"Pause reason",e)}function kl(e){return T(E.agentTitle,"Role",e)}var kE=300*1e3;function an(e,t){return e.timing.updatedAt||t}function wl(e){if(!e)return null;let t=Date.parse(e);return Number.isFinite(t)?t:null}function wE(e,t,n){let r=wl(an(e,t)),s=wl(n);return r===null||s===null?!1:s-r>kE}function Sl(){return{now:0,next:0,ambient:0,total:0}}function Al(e,t){return e?.frames[t]}function SE(e,t,n){let r=Al(n,e.taskId)?.suppressedAt;return r?an(e,t).localeCompare(r)<=0:!1}function _i(e,t,n){let r=an(e,t),s=Al(n,e.taskId)?.lastSeenAt??n?.lastSeenAt;return s?r.localeCompare(s)>0:!0}function AE(e,t){let n=Sl();return e.now&&_i(e.now,e.updatedAt,t)&&(n.now+=1),n.next=e.next.filter(r=>_i(r,e.updatedAt,t)).length,n.ambient=e.ambient.filter(r=>_i(r,e.updatedAt,t)).length,n.total=n.now+n.next+n.ambient,n}function _E(e,t){return{...e,review:{lastSeenAt:t?.lastSeenAt,unread:AE(e,t)}}}function Rt(e,t,n,r,s=new Date().toISOString()){let i=e??{companyId:t,updatedAt:new Date().toISOString(),now:null,next:[],ambient:[],counts:Sl()},o=new Set(n.map(b=>b.frame.taskId)),c=[...[...i.now?[{frame:i.now,lane:"now"}]:[],...i.next.map(b=>({frame:b,lane:"next"})),...i.ambient.map(b=>({frame:b,lane:"ambient"}))].filter(b=>!o.has(b.frame.taskId)),...n].filter(b=>!SE(b.frame,i.updatedAt,r)),u=b=>c.filter(_=>_.lane===b).sort((_,Pt)=>an(Pt.frame,i.updatedAt).localeCompare(an(_.frame,i.updatedAt))),l=u("now"),d=u("next"),p=u("ambient").filter(b=>!wE(b.frame,i.updatedAt,s)),f=l.shift()??null,m=f?null:d.shift()??null,g=f??m,y=[...l,...d].map(b=>b.frame),v=p.map(b=>b.frame),S=m?at(m.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."]}):g?.frame??null;return _E({...i,now:S,next:y,ambient:v,counts:{now:S?1:0,next:y.length,ambient:v.length,total:(S?1:0)+y.length+v.length}},r)}function wr(e){return e?"Budget controls are blocking work until a board decision lands.":"A board decision is blocking work in Paperclip."}function cn(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 _l(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 El(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 Tl(e){return e.status==="error"?`${e.name} needs attention`:e.status==="pending_approval"?`${e.name} is waiting for approval`:`${e.name} is paused`}function Rl(){return"An agent run failed and may need operator attention."}function Cl(){return"A Paperclip-managed run failed and is now competing for operator attention."}function xl(){return"Agent waiting for approval"}function Il(){return"A Paperclip-managed agent cannot continue until a pending approval is resolved."}function Ei(){return"The agent is paused behind a Paperclip approval gate."}function EE(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||`${oe(e.type)} approval`}function Ti(e){return e.type==="budget_override_required"}function TE(e){return e?e.filter(t=>t.status==="pending"||t.status==="revision_requested").sort((t,n)=>{let r=Ti(t)?1:0,s=Ti(n)?1:0;return r!==s?s-r:(n.updatedAt??n.createdAt).localeCompare(t.updatedAt??t.createdAt)}):[]}function RE(e){let t=he("approval",e.id),n=e.payload??{},r=Ti(e),s=typeof n.requestedAmount=="string"?n.requestedAmount:void 0,i=typeof n.reason=="string"?n.reason:void 0,o=typeof n.decisionContext=="string"?n.decisionContext:void 0,a=typeof n.summary=="string"?n.summary:wr(r),c=e.updatedAt??e.createdAt,u={whyNow:cn(r),factors:r?["budget stop","approval","operator decision"]:["approval","operator decision"]};return at({id:`approval-bootstrap:${e.id}`,taskId:t,interactionId:be(t,"approval"),source:{id:"paperclip:approval",kind:"paperclip",label:"Paperclip approval"},version:1,mode:"approval",tone:"focused",consequence:r?"high":"medium",title:EE(e),summary:a,context:{items:[{...br(oe(e.type))},...s?[yr(s)]:[],...i?[vr(i)]:[],...o?[kr(o)]:[]]},responseSpec:{kind:"approval",actions:[{id:"approve",label:"Approve",kind:"approve",emphasis:"primary"},{id:"reject",label:"Reject",kind:"reject",emphasis:"danger"},...r?[{id:"request-revision",label:"Request revision",kind:"cancel",emphasis:"secondary"}]:[]]},provenance:u,timing:{createdAt:e.createdAt,updatedAt:c},metadata:{entityType:"approval",approvalStatus:e.status,approvalType:e.type,attention:{rationale:u.factors},semantic:{confidence:"high"}}},{owner:"approval_overlay",lane:"next",sourcePolicy:"pendingApprovals.displayOverlay",rationale:["Pending approval fetched from Paperclip approvals adapter."]})}function Ri(e,t,n,r){let s=TE(n).map(RE),i=e??J(t);return Rt(i,t,[...s.map(a=>({frame:a,lane:"next"}))],r)}var CE=[{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 IE(e){return e.toUpperCase()===e?e:e.toLowerCase()}function ye(e,t=180){let n=e.replace(/\s+/g," ").trim();return n.length<=t?n:`${n.slice(0,t-1).trimEnd()}\u2026`}function LE(e,t){return[t?.body,e.description].filter(n=>!!n).join(`
|
|
16
|
+
`)}function Sr(e){if(!e)return 0;if(e instanceof Date)return e.getTime();let t=Date.parse(e);return Number.isNaN(t)?0:t}function Ll(e){return e?typeof e=="string"?e:e.toISOString():null}function Ol(e){return e.toLowerCase().replace(/[^a-z0-9]/g,"")}function OE(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ar(e){return he("issue",e)}function FE(e){let t=new Set,n=[];for(let r of CE)r.pattern.test(e)&&(t.add(r.key),n.push(r.id));return{intents:t,matchedRuleIds:n}}function PE(e,t){let n=t?.toUpperCase();return(e.match(/\b[A-Z]+-\d+\b/g)??[]).find(s=>s.toUpperCase()!==n)??null}function NE(e){return e.replace(/\s+/g," ").trim().match(/(board should either .*?)(?:[.!?]|$)/i)?.[1]??null}function zE(e){return e.has("resolution")||e.has("share_with_board")||e.has("confirmation")||e.has("board_instruction")?"high":e.has("clarification")?"medium":null}function DE(e,t){let n=[],r=t??void 0;return r&&n.push({kind:"same_issue",target:r}),e.has("resolution")?(n.push(r?{kind:"resolves",target:r}:{kind:"resolves"}),n):e.has("share_with_board")||e.has("confirmation")||e.has("board_instruction")?(n.push(r?{kind:"supersedes",target:r}:{kind:"supersedes"}),n):(e.has("clarification")&&n.push(r?{kind:"repeats",target:r}:{kind:"repeats"}),n)}function Ci(e){let{intents:t,matchedRuleIds:n}=FE(e.text);return{text:e.text,blockingTarget:PE(e.text,e.identifier),intents:t,matchedRuleIds:n,explicitBoardInstruction:NE(e.text),semanticConfidence:zE(t),relationHints:DE(t,e.issueTarget)}}function $E(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 r=Ol(n[1]),s=t.agentNames.find(i=>Ol(i)===r);if(s)return s}return[...t.agentNames].sort((r,s)=>s.length-r.length).find(r=>new RegExp(`\\b${OE(r)}\\b`,"i").test(e))??null}function Fl(e,t,n){let r=LE(e,t),s=Ci({text:r,identifier:e.identifier,issueTarget:Ar(e.id)}),i=$E(r,n),o=r.match(/needed from\s+@([a-z0-9_-]+)/i)??r.match(/@([a-z0-9_-]+)/i),a=i??(o?.[1]?xE(o[1]):/board should|board can/i.test(r)?"Board":/ceo agent|@ceo|\bceo\b/i.test(r)?"CEO":/requires human|waiting on human|human review/i.test(r)?"Human":/operator intervention|operator review/i.test(r)?"Operator":null);return{...s,owner:a,ownerKind:i?"agent":a?"human":null}}function H(e,t){return e.intents.has(t)}function un(e,t){return t==="agent"?e:IE(e)}function qE(e){return e.length===0?null:[...e].sort((t,n)=>Sr(n.updatedAt)-Sr(t.updatedAt))[0]??null}function Pl(e,t,n){let r=qE(e),s=Ll(r?.updatedAt),i=Ll(r?.lockedAt),o=t?.updatedAt??null,a=e.filter(c=>!!c.lockedAt);return{hasDocuments:e.length>0,hasLockedDocuments:a.length>0,latestDocumentTitle:r?.title??null,latestDocumentUpdatedAt:s,latestDocumentLockedAt:i,latestDocumentLockOwnerKind:r?.lockedByAgentId?"agent":r?.lockedByUserId?"user":null,latestDocumentLockOwnerId:r?.lockedByAgentId??r?.lockedByUserId??null,resolvesArtifactRequest:H(n,"share_with_board")&&!!r&&(!o||Sr(s)>=Sr(o))}}function Nl(e,t,n){let r=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.":H(t,"resolution")?"Monitor execution and confirm the team resumes work.":H(t,"share_with_board")?"Share the memo with the board so review can continue.":t.explicitBoardInstruction?ye(t.explicitBoardInstruction,140):H(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(r)?"Leave a comment with enough context for work to resume.":/complete [A-Z]+-\d+/i.test(r)?"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 zl(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(H(t,"resolution"))return"Latest operator guidance appears to unblock this issue.";if(H(t,"share_with_board"))return"Board still needs the memo before review can continue.";if(H(t,"confirmation")&&t.blockingTarget)return`Waiting on confirmation before ${t.blockingTarget} can proceed.`;let r=H(t,"clarification"),s=t.owner;return e.status==="blocked"&&s?r?`Blocked on ${un(s,t.ownerKind)} clarification before work can continue.`:`Blocked on ${un(s,t.ownerKind)} action before work can continue.`:e.status==="blocked"?r?"Blocked issue waiting on clarification before work can continue.":"Blocked issue that may need operator intervention to move forward.":e.status==="in_review"?s?`Waiting on ${un(s,t.ownerKind)} review before work can continue.`:"Issue is waiting on human review before work can continue.":e.description?ye(e.description):"This issue has new operator-relevant activity."}function Dl(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(H(t,"resolution"))return{whyNow:"The latest comment appears to resolve the blocker; monitor execution rather than intervening.",factors:["comment follow-up"]};if(H(t,"share_with_board"))return{whyNow:"The board still needs the memo before review can continue.",factors:["waiting on human","issue review"]};if(H(t,"confirmation")&&t.blockingTarget)return{whyNow:`${t.blockingTarget} is waiting on explicit confirmation before work can continue.`,factors:["waiting on human","issue review"]};let r=t.owner;if(e.status==="blocked"){let s=H(t,"clarification");return{whyNow:r?s?`This issue is blocked on clarification from ${un(r,t.ownerKind)}.`:`This issue is blocked on action from ${un(r,t.ownerKind)}.`:s?"This issue is blocked on clarification from a human.":"This issue is blocked and may need operator intervention.",factors:s?["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 xi=6,ME=15e3,BE=15e3,jE=15e3,HE=15e3,VE=15e3;function ZE(e,t){let n={...e?{confidence:e}:{},...t.length>0?{relationHints:t}:{}};return Object.keys(n).length>0?n:void 0}function Z(e){if(e)return typeof e=="string"?e:e.toISOString()}function _r(e){if(!e)return 0;if(e instanceof Date)return e.getTime();let t=Date.parse(e);return Number.isNaN(t)?0:t}function $e(e){return Z(e)??null}function M(e){return oe(e).toLowerCase()}function Ct(e){return e?.status==="active"||e?.status==="escalated"}function qe(e){if(e?.status!=="active"||!e.lastTriggeredAt)return!1;let t=_r(e.lastTriggeredAt);if(t===0)return!1;let n=_r(e.lastCompletedAt);return n===0||t>n}function Ml(e){return e?e.identifier?`${e.identifier} ${e.title}`:e.title:null}function UE(e){let t=e.owner.label?.trim();return t||(e.owner.type==="unknown"?null:oe(e.owner.type))}function KE(e){return Ct(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 WE(e){return e.action.label||e.action.detail}function GE(e){return Ct(e)?e.nextAction||`Resolve the ${M(e.kind)} recovery action.`:null}function YE(e){return qe(e)?"Review the watchdog-triggered follow-up before resuming work.":null}function XE(e){if(e.action.detail)return ye(e.action.detail);if(e.action.label)return ye(e.action.label);let t=Ml(e.leafIssue??e.sourceIssue);return t?`${t} needs attention before this blocked issue can move.`:`Paperclip marked this blocked issue as ${M(e.state)}.`}function JE(e){let t=e.nextAction?`: ${ye(e.nextAction,140)}`:".";return`Paperclip opened a ${M(e.kind)} recovery action${t}`}function QE(e){let t=e.instructions?.trim();return t?`Paperclip watchdog triggered follow-up: ${ye(t,140)}`:"Paperclip watchdog triggered follow-up for this issue."}function eT(e){let t=e.action.detail||e.action.label;return{whyNow:t?`Paperclip Blocked Inbox marks this as ${M(e.severity)} urgency for ${M(e.reason)}: ${ye(t,140)}`:`Paperclip Blocked Inbox marks this as ${M(e.severity)} urgency for ${M(e.reason)}.`,factors:["blocked inbox",M(e.reason),`${M(e.severity)} urgency`]}}function tT(e){return{whyNow:e.nextAction?`Paperclip has an ${M(e.status)} ${M(e.kind)} recovery action: ${ye(e.nextAction,140)}`:`Paperclip has an ${M(e.status)} ${M(e.kind)} recovery action.`,factors:["recovery action",M(e.kind),M(e.status)]}}function nT(e){return{whyNow:e.lastTriggeredAt?`Paperclip watchdog triggered on ${Z(e.lastTriggeredAt)??"the latest issue state"} and has not completed review.`:"Paperclip watchdog has active review state for this issue.",factors:["watchdog","triggered review",M(e.status)]}}function rT(e){return e.severity==="critical"||e.severity==="high"?"high":e.severity==="medium"?"medium":"low"}function sT(e,t){return e.blockedInboxAttention?rT(e.blockedInboxAttention):e.activeRecoveryAction?.status==="escalated"||e.activeRecoveryAction?.status==="active"&&e.priority==="critical"?"high":qe(e.watchdog)||e.status==="blocked"?$l(e):t==="ambient"?"low":"medium"}function iT(e,t){return e.blockedInboxAttention?.severity==="critical"||e.activeRecoveryAction?.status==="escalated"?"critical":qe(e.watchdog)?e.priority==="critical"?"critical":"focused":e.status==="blocked"?"focused":t==="ambient"?"ambient":"focused"}function oT(e){return Ml(e.leafIssue??e.sourceIssue)}function aT(e){return e.latestDocumentLockedAt?`Locked snapshot${e.latestDocumentLockOwnerKind?` by ${e.latestDocumentLockOwnerKind}`:""}`:null}function Ii(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 cT(e){return{state:e.state,reason:e.reason,severity:e.severity,stoppedSinceAt:e.stoppedSinceAt,owner:e.owner,action:e.action,sourceIssue:Ii(e.sourceIssue),leafIssue:Ii(e.leafIssue),recoveryIssue:Ii(e.recoveryIssue),approvalId:e.approvalId,interactionId:e.interactionId,sampleIssueIdentifier:e.sampleIssueIdentifier,redaction:e.redaction}}function uT(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:$e(e.timeoutAt),lastAttemptAt:$e(e.lastAttemptAt),outcome:e.outcome,resolvedAt:$e(e.resolvedAt),updatedAt:$e(e.updatedAt)}}function lT(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:$e(e.lastTriggeredAt),lastCompletedAt:$e(e.lastCompletedAt),triggerCount:e.triggerCount,createdAt:$e(e.createdAt),updatedAt:$e(e.updatedAt),pendingTrigger:qe(e)}}function dT(e){return e.status!=="active"?null:qe(e)?"Triggered":"Active"}function pT(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 Bl(){return{kind:"acknowledge",actions:[{id:"acknowledge",label:"Acknowledge",kind:"acknowledge",emphasis:"primary"}]}}function fT(e){return e.identifier?`${e.identifier} ${e.title}`:e.title}function mT(e){let t=e.filter(s=>!s.deletedAt);if(t.length===0)return null;let n=[...t].sort((s,i)=>_r(i.updatedAt)-_r(s.updatedAt))[0],r=Z(n.updatedAt)??Z(n.createdAt)??new Date(0).toISOString();return{body:ye(n.body),updatedAt:r}}function $l(e){return e.priority==="critical"||e.priority==="high"?"high":"medium"}function gT(e,t,n){if(e.blockedInboxAttention){let r=e.blockedInboxAttention;return r.severity==="critical"||r.severity==="high"||r.state==="needs_attention"||r.state==="recovery_open"||r.state==="missing_disposition"?"now":"next"}return e.activeRecoveryAction?.status==="escalated"?"now":Ct(e.activeRecoveryAction)||qe(e.watchdog)?e.priority==="critical"||e.priority==="high"?"now":"next":(e.status==="blocked"||e.status==="in_review")&&(H(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 hT(e){return e.status==="done"||e.status==="cancelled"}function jl(e){return e?.blockedBy.filter(t=>!hT(t))??[]}function Hl(e){return jl(e)[0]??null}function Oi(e){return e.identifier?`${e.identifier} ${e.title}`:e.title}function bT(e){let t=jl(e);if(t.length===0)return null;let[n,...r]=t,s=Oi(n);return r.length>0?`${s} +${r.length} more`:s}function yT(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 vT(e,t){if(e.blockedInboxAttention)return XE(e.blockedInboxAttention);if(Ct(e.activeRecoveryAction))return JE(e.activeRecoveryAction);if(qe(e.watchdog))return QE(e.watchdog);let n=Hl(t.relations);return n?`${Oi(n)} is a tracked blocker for this issue.`:zl(e,t.analysis,t.documentSignal)}function kT(e,t){if(e.blockedInboxAttention)return eT(e.blockedInboxAttention);if(Ct(e.activeRecoveryAction))return tT(e.activeRecoveryAction);if(qe(e.watchdog))return nT(e.watchdog);let n=Dl(e,t.analysis,t.documentSignal),r=Hl(t.relations);return r?{...n,whyNow:`${Oi(r)} is linked as a blocker in Paperclip.`,factors:[...new Set([...n.factors??[],"blocked by issue relation"])]}:n}function wT(e,t,n){let r=[t?.updatedAt,Z(e.lastExternalCommentAt),n.latestDocumentUpdatedAt,n.latestDocumentLockedAt,e.blockedInboxAttention?.stoppedSinceAt,Z(e.activeRecoveryAction?.updatedAt),Z(e.watchdog?.lastTriggeredAt),Z(e.watchdog?.updatedAt)].filter(s=>!!s).sort();return r.length>0?r.at(-1):Z(e.updatedAt)??Z(e.createdAt)??new Date(0).toISOString()}function ST(e,t,n,r,s){let i=Fl(e,t,s),o=Pl(n,t,i),a={analysis:i,documentSignal:o,relations:r},c=gT(e,t,a);if(!c)return null;let u=wT(e,t,o),l=kT(e,a),d=H(i,"resolution")||o.resolvesArtifactRequest?null:e.blockedInboxAttention?UE(e.blockedInboxAttention):KE(e.activeRecoveryAction)??i.owner,p=e.blockedInboxAttention?WE(e.blockedInboxAttention):GE(e.activeRecoveryAction)??YE(e.watchdog)??Nl(e,i,o),f=i.blockingTarget,m=ZE(i.semanticConfidence,i.relationHints),g=he("issue",e.id),y=e.blockedInboxAttention?oT(e.blockedInboxAttention):bT(r),v=yT(r),S=aT(o),b=pT(o),_=e.watchdog?dT(e.watchdog):null;return{lane:c,frame:at({id:`reconcile:issue:${e.id}:${u}`,taskId:g,interactionId:be(g,e.status),source:{id:"paperclip:issue",kind:"paperclip",label:"Paperclip issue"},version:1,mode:"status",tone:iT(e,c),consequence:sT(e,c),title:fT(e),summary:vT(e,a),context:{items:[...d?[il(d)]:[],...y?[ol(y)]:[],...f?[al(f)]:[],...p?[cl(p)]:[],...e.blockedInboxAttention?[pl(oe(e.blockedInboxAttention.reason)),fl(oe(e.blockedInboxAttention.severity))]:[],...Ct(e.activeRecoveryAction)?[ml(oe(e.activeRecoveryAction.kind))]:[],..._?[gl(_)]:[],...S?[hl(S)]:[],ul(e.status.replace(/_/g," ")),ll(e.priority),dl(oe(e.workMode)),...t?[bl(t.body)]:[]]},responseSpec:Bl(),provenance:l,timing:{createdAt:Z(e.createdAt)??u,updatedAt:u},metadata:{entityType:"issue",issueStatus:e.status,issuePriority:e.priority,issueWorkMode:e.workMode,liveReconciled:!0,activityPath:t?"activity":void 0,attention:{rationale:l.factors??[]},issueIntelligence:{matchedRuleIds:i.matchedRuleIds,owner:i.owner,ownerKind:i.ownerKind,blockingTarget:i.blockingTarget},...e.blockedInboxAttention?{blockedInboxAttention:cT(e.blockedInboxAttention)}:{},...e.activeRecoveryAction?{activeRecoveryAction:uT(e.activeRecoveryAction)}:{},...e.watchdog?{watchdog:lT(e.watchdog)}:{},...b?{issueDocuments:b}:{},...v?{issueRelations:v}:{},...m?{semantic:m}:{}}},{owner:"paperclip_reconciliation",lane:c,sourcePolicy:`issue.${e.status}.${e.priority}.${e.workMode}`,rationale:l.factors??[]})}}function AT(e){return e.status==="error"?"now":e.status==="pending_approval"||e.status==="paused"&&e.pauseReason==="budget"?"next":e.status==="paused"?"ambient":null}function _T(e){return _l(e)}function ET(e){return El(e)}function TT(e){let t=AT(e);if(!t)return null;let n=Z(e.updatedAt)??Z(e.createdAt)??new Date(0).toISOString(),r=_T(e),s=he("agent",e.id);return{lane:t,frame:at({id:`reconcile:agent:${e.id}:${n}`,taskId:s,interactionId:be(s,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:Tl(e),summary:ET(e),context:{items:[yl(e.status.replace(/_/g," ")),...e.pauseReason?[vl(e.pauseReason)]:[],...e.title?[kl(e.title)]:[]]},responseSpec:Bl(),provenance:r,timing:{createdAt:Z(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:r.factors??[]},semantic:{confidence:"high"}}},{owner:"paperclip_reconciliation",lane:t,sourcePolicy:`agent.${e.status}${e.pauseReason?`.${e.pauseReason}`:""}`,rationale:r.factors??[]})}}async function RT(e,t){try{let n=await e.issues.listComments(t.id,t.companyId);return mT(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 ln(e,t,n,r,s,i){if(!s?.fresh){let a=e.getCachedHostValue(t,n);if(a!==null)return a}let o=await i();return e.setCachedHostValue(t,n,o,r)}async function CT(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 xT(e,t){let n=t.blockedBy??[],r=t.blocks??[];if(n.length>0||r.length>0)return{blockedBy:n,blocks:r};try{return await e.issues.relations.get(t.id,t.companyId)}catch(s){return e.logger.warn("Failed to load issue relations during Aperture reconciliation",{issueId:t.id,error:s instanceof Error?s.message:String(s)}),null}}async function Li(e,t,n){if(e.length===0)return[];let r=new Array(e.length),s=0;async function i(){for(;s<e.length;){let a=s;s+=1,r[a]=await n(e[a],a)}}let o=Math.min(t,e.length);return await Promise.all(Array.from({length:o},()=>i())),r}async function ql(e,t,n,r,s){return ln(t,n,`issues:${r}`,ME,{fresh:s?.freshHostData},async()=>await e.issues.list({companyId:n,status:r,includePluginOperations:!1,limit:25}))}async function IT(e,t,n,r){return ln(t,n,"agents:all",VE,{fresh:r?.freshHostData},async()=>await e.agents.list({companyId:n,limit:100}))}async function LT(e,t,n,r,s){let[i,o]=await Promise.all([ql(e,t,n,"blocked",s),ql(e,t,n,"in_review",s)]),a=[...i,...o],[c,u,l]=await Promise.all([Li(a,xi,p=>ln(t,n,`issue:${p.id}:comments`,BE,{fresh:s?.freshHostData},()=>RT(e,p))),Li(a,xi,p=>ln(t,n,`issue:${p.id}:documents`,jE,{fresh:s?.freshHostData},()=>CT(e,p))),Li(a,xi,p=>ln(t,n,`issue:${p.id}:relations`,HE,{fresh:s?.freshHostData},()=>xT(e,p)))]),d={agentNames:r.map(p=>p.name).filter(p=>typeof p=="string"&&p.trim().length>0)};return a.map((p,f)=>ST(p,c[f]??null,u[f]??[],l[f]??null,d)).filter(p=>p!==null)}function OT(e){return e.filter(t=>t.status==="pending_approval"||t.status==="error"||t.status==="paused").map(t=>TT(t)).filter(t=>t!==null)}async function Vl(e,t,n,r,s){let i=await IT(e,t,n,s),o=r.captureIssueLifecycle===!1?Promise.resolve([]):LT(e,t,n,i,s),a=Promise.resolve(OT(i)),[c,u]=await Promise.all([o,a]);return[...c,...u]}function Fi(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 Zl(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 FT(e,t){return e?"core":t?"reconciled":"display_overlay"}function PT(e,t){if(t==="display_overlay")return tn(e).entityType==="approval"?"approval_overlay":"display_overlay"}function Pi(e){let t=Fi(e.snapshot),n=Fi(e.reconciledSnapshot),r=Fi(e.displaySnapshot),i=[...new Set([...t.keys(),...n.keys(),...r.keys()])].sort().map(a=>{let c=t.get(a),u=n.get(a),l=r.get(a),d=l?.frame??u?.frame??c?.frame;if(!d)throw new Error(`Overlay diagnostics could not resolve representative frame for ${a}.`);let p=tn(d),f=[Zl("reconciled",c?.lane??null,u?.lane??null),Zl("display",u?.lane??null,l?.lane??null)].filter(g=>g!==null),m=FT(c,u);return{taskId:a,title:d.title,entityType:p.entityType,interactionIds:{...c?{core:c.frame.interactionId}:{},...u?{reconciled:u.frame.interactionId}:{},...l?{display:l.frame.interactionId}:{}},lanePath:{core:c?.lane??null,reconciled:u?.lane??null,display:l?.lane??null},canonicalSource:m,overlayKind:PT(d,m),liveReconciled:p.liveReconciled,attentionRationale:p.attention?.rationale??[],matchedRuleIds:p.issueIntelligence?.matchedRuleIds??[],relationHintKinds:p.semantic?.relationHints?.map(g=>g.kind)??[],decision:p.decision,changes:f}}),o={coreFrames:t.size,reconciledFrames:n.size,displayFrames:r.size,introducedByReconciliation:i.filter(a=>a.changes.some(c=>c.stage==="reconciled"&&c.kind==="introduced")).length,removedByReconciliation:i.filter(a=>a.changes.some(c=>c.stage==="reconciled"&&c.kind==="removed")).length,movedByReconciliation:i.filter(a=>a.changes.some(c=>c.stage==="reconciled"&&c.kind==="moved")).length,introducedByDisplayOverlay:i.filter(a=>a.changes.some(c=>c.stage==="display"&&c.kind==="introduced")).length,removedByDisplayOverlay:i.filter(a=>a.changes.some(c=>c.stage==="display"&&c.kind==="removed")).length,movedByDisplayOverlay:i.filter(a=>a.changes.some(c=>c.stage==="display"&&c.kind==="moved")).length,approvalOverlayFrames:i.filter(a=>a.overlayKind==="approval_overlay").length};return{generatedAt:e.displaySnapshot.updatedAt,summary:o,frames:i}}var Ul=250,NT=50,Kl=1e3,zT=200;function Wl(e){return{eventCount:0,persistence:{state:"healthy"},surfaceCapabilities:or,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 Er(e,t){return e?t?e.localeCompare(t)>=0?e:t:e:t}function Ni(e,t,n){if(typeof e!="number"||!Number.isFinite(e))return t;let r=Math.trunc(e);return r<=0?t:Math.min(r,n)}function zi(e,t){let n=e.length,r=Math.max(1,t);return n<=r?{items:[...e],total:n,hasMoreBefore:!1}:{items:e.slice(-r),total:n,hasMoreBefore:!0}}function DT(e,t,n){let r=n?{...n,frames:Object.fromEntries(Object.entries(n.frames).map(([s,i])=>[s,{...i}]))}:q(e);for(let s of t){if(s.kind!=="response"&&s.kind!=="overlay-response")continue;let i=s.occurredAt,o=s.apertureResponse.taskId,a=s.apertureResponse.response.kind,c=r.frames[o]??{};r.frames[o]={...c,lastSeenAt:Er(c.lastSeenAt,i),...a==="acknowledged"||a==="dismissed"?{suppressedAt:Er(c.suppressedAt,i)}:{}},r.lastSeenAt=Er(r.lastSeenAt,i),r.updatedAt=Er(r.updatedAt,i)??i}return r}function Gl(e,t){return{baseLedger:e.getLedger(t),snapshot:e.getSnapshot(t)??J(t),reviewState:e.getReview(t)??q(t)}}async function Me(e,t,n){if(t.hasSession(n))return await el(e,t,n),Gl(t,n);try{let r=await sn(e,n);if(r){let{snapshot:d}=t.hydrate(n,{ledger:r.ledger,snapshot:r.snapshot,review:r.review});return{baseLedger:r.ledger,snapshot:d,reviewState:r.review}}let s=await e.state.get({scopeKind:"company",scopeId:n,stateKey:Yu}),i=await e.state.get({scopeKind:"company",scopeId:n,stateKey:Gu}),o=await e.state.get({scopeKind:"company",scopeId:n,stateKey:Xu}),a=Tt(s)?s:ze(),c=Et(n,i),u=DT(n,a,rn(o,n)?o:null),{snapshot:l}=t.hydrate(n,{ledger:a,snapshot:c,review:u});return!Tt(s)&&c&&e.logger.warn("Legacy snapshot found without replay ledger; rebuilt state may be partial until new events arrive.",{companyId:n}),{baseLedger:a,snapshot:l,reviewState:u}}catch(r){if(!mr(r))throw r;return e.logger.warn("Aperture persisted state unavailable in this host callback; using in-memory attention state.",{companyId:n,error:r instanceof Error?r.message:String(r)}),Gl(t,n)}}function $T(e,t,n){return JSON.stringify({reconciliationRevision:e.getReconciledRevision(t),captureIssueLifecycle:n.captureIssueLifecycle!==!1,captureRunFailures:n.captureRunFailures!==!1})}async function Di(e,t,n,r,s,i={}){let o=await e.config.get(n),a=$T(t,n,o);if(i.preferCache&&!i.freshHostData){let l=t.getCachedReconciledCandidates(n,a);if(l)return Rt(r,n,l,s)}let c;try{c=await Vl(e,t,n,o,{freshHostData:i.freshHostData})}catch(l){if(!mr(l))throw l;return e.logger.warn("Aperture host reconciliation unavailable in this host callback; using current attention snapshot.",{companyId:n,error:l instanceof Error?l.message:String(l)}),r}let u=Rt(r,n,c,s);return i.preferCache&&!i.freshHostData&&t.setCachedReconciledCandidates(n,a,c),u}async function Xl(e,t,n){let r=t.getApprovals(n);if(!t.approvalsDirty(n)&&r)return r;let s=await e.config.get(n);try{let i=await Bu(e,n,s);return t.setApprovals(n,i)}catch(i){let o=i instanceof Error?i.message:String(i);return t.markApprovalAdapterFailure(n,o),e.logger.warn("Failed to load pending approvals for Focus display",{companyId:n,error:o}),r||t.setApprovals(n,[])}}async function Yl(e,t,n,r,s){let i=await Di(e,t,n,r,s,{preferCache:!0}),o=await Xl(e,t,n);return{reconciledSnapshot:i,displaySnapshot:Ri(i,n,o,s)}}function Jl(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 r=P(n);return await Me(e,t,r),t.getCoreDiagnostics(r)??Wl(new Date().toISOString())}),e.data.register("attention-overlay-diagnostics",async n=>{let r=P(n),{snapshot:s,reviewState:i}=await Me(e,t,r),{reconciledSnapshot:o,displaySnapshot:a}=await Yl(e,t,r,s,i);return Pi({snapshot:s,reconciledSnapshot:o,displaySnapshot:a})}),e.data.register("attention-summary",async n=>{let r=P(n),{snapshot:s,reviewState:i}=await Me(e,t,r);return await Di(e,t,r,s,i,{freshHostData:!0})??J(r)}),e.data.register("attention-display",async n=>{let r=P(n),{snapshot:s,reviewState:i}=await Me(e,t,r),{displaySnapshot:o}=await Yl(e,t,r,s,i);return{companyId:r,snapshot:o??J(r),reviewState:i}}),e.data.register("attention-export",async n=>{let r=P(n),s=Ni(n.limit,Ul,Kl),i=Ni(n.traceLimit,NT,zT),o=new Date().toISOString(),{baseLedger:a,snapshot:c,reviewState:u}=await Me(e,t,r),l=await Di(e,t,r,c,u,{freshHostData:!0}),d=await Xl(e,t,r),p=Ri(l,r,d,u),f=zi(a,s),m=zi(t.getTraces(r),i);return{companyId:r,exportedAt:o,ledger:f.items,eventEntries:f.items.filter(g=>g.kind==="event"),responseEntries:f.items.filter(g=>g.kind==="response"),overlayResponseEntries:f.items.filter(g=>g.kind==="overlay-response"),signalEntries:f.items.filter(g=>g.kind==="signal"),traces:m.items,window:{entryLimit:s,traceLimit:i,totalLedgerEntries:f.total,returnedLedgerEntries:f.items.length,totalTraces:m.total,returnedTraces:m.items.length,hasMoreBefore:f.hasMoreBefore||m.hasMoreBefore},snapshot:c,reconciledSnapshot:l,displaySnapshot:p,review:u,coreDiagnostics:t.getCoreDiagnostics(r)??Wl(o),overlayDiagnostics:Pi({snapshot:c,reconciledSnapshot:l,displaySnapshot:p})}}),e.data.register("attention-traces",async n=>{let r=P(n);return await Me(e,t,r),t.getTraces(r)}),e.data.register("attention-replay-scenario",async n=>{let r=P(n),s=Ni(n.limit,Ul,Kl),{baseLedger:i,snapshot:o}=await Me(e,t,r),a=zi(i,s);return{id:`paperclip-attention-${r}`,title:`Paperclip attention replay for ${r}`,description:"Replay scenario exported from the Paperclip Aperture plugin ledger.",doctrineTags:["paperclip","aperture","replay-export"],window:{entryLimit:s,totalLedgerEntries:a.total,returnedSteps:a.items.length,hasMoreBefore:a.hasMoreBefore},expectations:{finalNowInteractionId:o.now?.interactionId??null,nextInteractionIds:o.next.map(c=>c.interactionId),ambientInteractionIds:o.ambient.map(c=>c.interactionId),resultLaneCounts:{now:o.counts.now,next:o.counts.next,ambient:o.counts.ambient}},steps:a.items.map(c=>c.kind==="event"?{kind:"publish",event:c.apertureEvent,label:`${c.source.eventType} @ ${c.occurredAt}`}:c.kind==="response"?{kind:"submit",response:c.apertureResponse,label:`${c.source.eventType} @ ${c.occurredAt}`}:c.kind==="signal"?{kind:"signal",signal:c.apertureSignal,label:`${c.source.eventType} @ ${c.occurredAt}`}:{kind:"overlay-response",response:c.apertureResponse,overlay:c.overlay,label:`${c.source.eventType} @ ${c.occurredAt}`})}}),e.data.register("attention-review",async n=>{let r=P(n),{reviewState:s}=await Me(e,t,r);return s})}var Vi="source evidence truncated",qT=["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"],MT=[/\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/],_d=["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"],BT=["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"],jT=["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"],HT=["production","prod","force push","git push --force","rm -rf","drop table","delete database","delete prod","sudo","chmod 777","kill process","migrate"],Ji=["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"],VT=["observation","contents of","showing first","showing top","found"],Ed=["path","type file","content"],ZT=["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"],UT=["tool-output","dmesg"],KT=["makefile","spdx-license-identifier","patchlevel","sublevel","extraversion"],yn=/(?:^|\s)\/[a-z0-9._-]+(?:\/[a-z0-9._-]+)+(?:\s|$)/,WT=/\bfound\s+\d+\s+match(?:es)?\b|\bshowing\s+(?:first|top)\s+\d+\b|\bmatch(?:es)?\s+in\s+\d+\s+files?\b/,GT=/\b(import|from|export|class|def|function|const|let|var|return)\b/,YT=/\b\d+\s+(?:import|from|export|class|def|function|const|let|var|return)\b/,Qi=/\/[a-z0-9._/-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)(?:\b|\/)/,eo=/\b[a-z0-9.-]+\.(?:c|cc|cpp|cxx|h|hpp|ts|tsx|js|jsx|py|rb|go|rs|java|kt|swift)\b/,XT=/\b(static|struct|enum|typedef|void|int|char|bool|return)\b/,JT=/\b\d+\s+(?:static|struct|enum|typedef|void|int|char|bool|return)\b/,QT=/\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"],uR=["worse","worsened","escalating","regression","regressed","spread","broader impact","degraded further","critical now","now failing"],lR=["did not regress","didn t regress","no regression","not worsening","did not worsen","didn t worsen","not escalating","did not escalate","didn t escalate"],Td=["fail","failed","failing","failure","error","broken","blocked","stalled","stall","incident","issue","outage","degraded","regression","retry","rollback"];function x(e){return e.toLowerCase().replace(/[^a-z0-9/._-]+/g," ").trim()}function dR(e){return e.toLowerCase().replace(/[^a-z0-9]+/g," ").trim()}function ee(e,t){return t.some(n=>Rd(e,n))}function Rd(e,t){let n=x(t);return n?n.includes(" ")?ke(e,n):dn(e,n):!1}function ke(e,t){let n=x(e),r=x(t);return r?new RegExp(`(?:^|[^a-z0-9_])${Cd(r)}(?:$|[^a-z0-9_])`).test(n):!1}function dn(e,t){let n=x(e),r=x(t);return!r||r.includes(" ")?!1:new RegExp(`(?:^|[^a-z0-9_])${Cd(r)}(?:$|[^a-z0-9_])`).test(n)}function Cd(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var pR=new Set(["jq"]),fR=/(?:^|[\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 zr(e){return fR.test(e)}function xd(e){return zr(e)||mR(e)||gR(e)||hR(e)}function mR(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 bR(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=>yR(n[1]??""))}function yR(e){let t=e.trim();return t.length>0&&!vR(t)}function vR(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 kR(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 wR(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 SR(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 AR(e){return wR(e)||SR(e)}function _R(e){return new RegExp(`(?:^|[\\r\\n])\\s*(?:[a-z0-9_./-]+:\\s*)?${TR}\\b`,"i").test(e)}function Id(e){return[new RegExp(`\\b${RR}:\\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=>ER(e,t))}function ER(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)",RR="(?:assertionerror|filenotfounderror|importerror|indentationerror|keyerror|modulenotfounderror|nameerror|oserror|permissionerror|referenceerror|runtimeerror|syntaxerror|timeouterror|typeerror|valueerror)";function Ld(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 CR(e){let t=LR(e);return xR(t)||IR(t)}function xR(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 IR(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 Lt(e,t=!1){return[gn(e),xd(e),t&&Id(e)].some(Boolean)}function OR(e){if(!/\bweb search results for\b/i.test(e))return!1;let t=PR(e),n=/\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.exec(t??e);return n!==null&&(t===null||t.slice(0,n.index).trim()==="")}function gn(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(?!\s+before\s+(?:tool\s+)?(?:invocation|execution))|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))||kR(e)||bR(e)||FR(e)||NR(e)||Ld(e)||AR(e)||_R(e)}function FR(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 PR(e){return/^\s*web search results for\s+(?:"[^"]+"|'[^']+'|`[^`]+`|[^:\r\n]{1,200})\s*:\s+([\s\S]+)$/i.exec(e)?.[1]??null}function NR(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 zR(...e){for(let t of e){let n=DR(t);if(n!==null){if(qR(n))return"failure";if(MR(n))return"applied"}}return null}function DR(e){let t=$R(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 $R(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 MR(e){let n=e.trim().toLowerCase(),r="successfully modified file:",s="successfully created and wrote to new file:",i="edit applied successfully. lsp errors detected";return n.startsWith(r)&&n.slice(r.length).trim().length>0||n.startsWith(s)&&n.slice(s.length).trim().length>0||n==="edit applied successfully"||n.startsWith(i)&&n.length<=i.length+200}function BR(e){let t=e.trim();if(t.length===0||UR(t))return!1;let n=HR(t),r=n.filter(s=>s.lineNumber!==void 0);return r.length>0?r.length>=3&&YR(r)&&VR(r):ZR(n)}function jR(e){let t=e.trim(),n=Fd(t);return Pd(t)||n?.hasOperandEvidence===!0}function HR(e){let t=[];for(let n of e.split(/\r?\n/)){let r=WR(n).trim();if(r.length===0||XR(r))continue;let s=GR(n);t.push({body:r,...s!==void 0?{lineNumber:s}:{}})}return t}function VR(e){let t=Od(e);return t.statements>=3&&t.instructions>=1&&t.operandInstructions>=1}function ZR(e){let t=Od(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 Od(e){let t=new Set,n=0,r=0,s=0,i=0;for(let o of e){let a=Fd(o.body);n+=JR(o.body)?1:0,r+=Pd(o.body)?1:0,s+=a!==null?1:0,i+=a?.hasOperandEvidence===!0?1:0,a!==null&&t.add(a.mnemonic)}return{labels:n,directives:r,instructions:s,operandInstructions:i,distinctMnemonics:t.size,statements:n+r+s}}function Fd(e){let t=/^([a-z][a-z0-9_.]*)(?:\s+(.+))?$/i.exec(e.trim()),n=t?.[1]?.toLowerCase(),r=t?.[2]??"";return n===void 0||!tC.test(n)?null:{mnemonic:n,hasOperandEvidence:r.length>0&&nC.test(QR(r))}}function UR(e){return/^\s*(?:\{|\[|")/.test(e)||KR(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 KR(e){return/(?:^|[\r\n])\s*(?:\d{1,6}:\s*)?\[\s*\d+(?:\.\d+)?]\s+\S/.test(e)}function WR(e){return e.replace(/^\s*\d{1,6}(?:[ \t]+|:\s*)/,"")}function GR(e){let t=/^\s*(\d{1,6})(?:[ \t]+|:\s*)/.exec(e);return t?Number.parseInt(t[1],10):void 0}function YR(e){return e.every((t,n)=>n===0||(t.lineNumber??0)>(e[n-1]?.lineNumber??0))}function XR(e){return/^\s*(?:\/\/|#|;)(?:\s|$)/.test(e)}function JR(e){return!/^(?:error|fatal|warning):$/i.test(e.trim())&&/^\.?[a-z_.$][\w.$]*:\s*$/i.test(e.trim())}function Pd(e){return eC.test(e.trim())}function QR(e){return e.replace(/\s*(?:(?:\/\/|#|;).*)$/,"")}var eC=/^\.(?: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,tC=/^(?:(?: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,nC=/(?: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 Ft(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}:rC(e)?{category:"declaration",strongAnchor:!0,nontrivialAnchor:/(?:\bstd::|->|::|[*&<>]|\b(?:size_t|uint\d+_t|int\d+_t)\b)/.test(e)}:sC(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)}:iC(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)}:oC(e)?{category:"call",strongAnchor:/(?:->|::|\.|\[[^\]]+]|\bsizeof\s*\()/i.test(e),nontrivialAnchor:/(?:->|::|\.|\[[^\]]+])/i.test(e)}:null}function Dr(e){let t=e.replace(/\.\.\.\s*$/,"").trim();return uC(t)?{category:"return",strongAnchor:!1,nontrivialAnchor:!1}:aC(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)}:cC(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 vn(e){return/^(?:(?:\/\/|#|;)\s*|\/\*+|\*\/?)/.test(e)}function rC(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 sC(e){return/^[a-z_][a-z0-9_]*(?:(?:->|\.|::)[a-z_][a-z0-9_]*|\[[^\]]+])*\s*(?:=|\+=|-=|\*=|\/=|%=|&=|\|=|<<=|>>=).+;$/i.test(e)}function iC(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 oC(e){return/^(?=.*;\s*$)(?=.*(?:\)|]|\bsizeof\s*\())[\w\s.,:[\]()*&<>\-]+;\s*$/i.test(e)}function aC(e){return/^[a-z_][a-z0-9_]*(?:(?:->|\.|::)[a-z_][a-z0-9_]*|\[[^\]]+])*\s*(?:=|\+=|-=|\*=|\/=|%=|&=|\|=|<<=|>>=)\s*\S.+$/i.test(e)}function cC(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 uC(e){return/^retu(?:r(?:n)?)?(?:\b|$)/i.test(e)}var lC=/^(?:bash|edit|read|search|tool)\s+failure\s+/i,dC=/(?:\.\.\.|…)\s*$/;function V(e){return e.trim().replace(lC,"")}function te(e){return dC.test(e.trim())}function pC(e){let t=e.trim();return t.length>0&&!yC(t)&&(fC(t)||mC(t))}function fC(e){return Nd(e,{allowClippedFinalLine:!1,minLines:4})}function mC(e){return te(e)&&Nd(e,{allowClippedFinalLine:!0,minLines:3})}function gC(e){if(!te(e))return!1;let t=e.split(/\r?\n/).map(n=>n.trim()).filter(n=>n.length>0&&!vn(n));return t.length>=5&&t.filter(hC).length>=3&&t.filter(bC).length>=2&&t.some(n=>/^\)\s*;?\s*$/.test(n))&&t.some(n=>Ft(n)!==null||Dr(n)!==null)}function hC(e){return/^[a-z0-9_()[\].:&*>\s,-]+,\s*(?:(?:\/\/|\/\*)[^\r\n]*)?$/i.test(e)&&/(?:[_()[\].:]|->|::|\b\d+\b)/.test(e)}function bC(e){return/(?:->|::|\.|\[[^\]]+])/.test(e)}function Nd(e,t){let n=e.split(/\r?\n/),r=AC(n),s=[];for(let[i,o]of n.entries()){let a=o.trim();if(a.length===0||vn(a))continue;let c=Ft(a)??(t.allowClippedFinalLine&&i===r?Dr(a):null);if(c===null){if(Ql(s,t.minLines))return!0;s=[];continue}s.push(c)}return Ql(s,t.minLines)}function Ql(e,t){let n=new Set(e.map(s=>s.category)),r=e.filter(s=>s.strongAnchor).length;return e.length>=t&&n.size>=2&&r>=2&&e.some(s=>s.nontrivialAnchor)}function yC(e){return/^\s*(?:\{|\[|")/.test(e)||SC(e)||vC(e)||kC(e)||wC(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 vC(e){return/(?:^|[\r\n])\s*(?:\d{1,6}:\s*)?\[\s*\d+(?:\.\d+)?]\s+\S/.test(e)}function kC(e){return/(?:^|[\r\n])\s*(?:#{1,6}\s+\S|[-*]\s+\S|```|\|.+\|)/.test(e)}function wC(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 SC(e){return/(?:^|[\r\n])\s*\d{1,6}(?:[ \t]+|:\s*)\S/.test(e)}function AC(e){for(let t=e.length-1;t>=0;t-=1){let n=e[t]?.trim()??"";if(n.length>0&&!vn(n))return t}return-1}function _C(e){if(EC(e))return[];let t=[],n=/(?:^|[\r\n]|\s)(\d{1,6})\u2192([\s\S]*?)(?=(?:[\r\n]|\s)\d{1,6}\u2192|$)/g,r;for(;(r=n.exec(e))!==null;){let s=Number.parseInt(r[1]??"",10),i=(r[2]??"").trim();Number.isSafeInteger(s)&&i.length>0&&t.push({line:s,body:i.slice(0,160)})}return t}function EC(e){return/(?:^|[\r\n]|\s)\d{1,6}(?:[ \t]+|:\s+)\S/.test(e)}function to(e){return/^(?:[a-z0-9-]+\.)+[a-z]{2,}(?:$|[/:]\S*)/i.test(e)?!1:RC(e)||CC(e)||xC(e)||NC(e)||$C(e)}function TC(e){return Dd(e)||zd(e)||$d(e)||qC(e)}function RC(e){return[/^#!\/(?:usr\/bin\/env\s+)?[a-z0-9_.+-]+\b/,/^[{}]\s*;?$/,/^(?:case\s+.+|default):\s*$/,/^#include\s*(?:<[^>]+>|"[^"]+")/].some(t=>t.test(e))}function CC(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 xC(e){return zd(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 zd(e){return IC(e)||OC(e)||FC(e)||PC(e)||/^export\s+\{[^}\r\n]+\}\s+from\s+["'][^"'\r\n]+["']\s*;?$/.test(e)}function IC(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&&LC(t[1]??"")}function LC(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 OC(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&&qd(t[1]??"")}function FC(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 PC(e){return/^(?:export\s+)?type\s+[a-zA-Z_$][a-zA-Z0-9_$]*(?:<[^>\r\n]+>)?\s*=/.test(e)}function NC(e){return Dd(e)||$d(e)}function Dd(e){return zC(e)||DC(e)}function zC(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 DC(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 $d(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&&qd(t[1]??"")||/^class\s+[a-zA-Z_][a-zA-Z0-9_]*(?:\([^)]*\))?:\s*$/.test(e)}function qd(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 $C(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 qC(e){if(/^(?:struct|enum)\s+[a-z_][a-z0-9_:<>]*\s*(?:[{:;])/.test(e))return!0;let t=Ft(e);return t?.category==="declaration"&&(t.nontrivialAnchor||MC(e))}function MC(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 Zi(e,t={minSourceStatements:2}){return e.length<3||!HC(e)?!1:VC(e,t,to)>=t.minSourceStatements?!0:t.allowClippedSourceContext===!0&&ZC(e)}function BC(e){let t=[],n=/(?:^|[\r\n]|\s)(\d{1,6})[ \t]+([\s\S]*?)(?=(?:[\r\n]|\s)\d{1,6}[ \t]+|$)/g,r;for(;(r=n.exec(e))!==null;){let s=Number.parseInt(r[1]??"",10),i=(r[2]??"").trim();Number.isSafeInteger(s)&&i.length>0&&t.push({line:s,body:i.slice(0,160)})}return t}function jC(e){let t=[];for(let n of e.split(/\r?\n/)){let r=/^\s*(\d{1,6})(?:[ \t]+|:\s*)(\S[\s\S]*)$/.exec(n);r&&t.push({line:Number.parseInt(r[1],10),body:r[2].trim().slice(0,160)})}return t}function HC(e){return e.every((t,n)=>n===0||t.line>e[n-1].line)}function VC(e,t,n){return e.filter((r,s)=>!(t.ignoreTruncatedFinalSpan===!0&&s===e.length-1)&&n(r.body)).length}function ZC(e){if(e.length<4)return!1;let t=e.length-1,n=[],r=0,s=0,i=0;for(let[c,u]of e.entries()){if(vn(u.body)){r+=1,i+=1;continue}let l=c===t?Dr(u.body)??Ft(u.body):Ft(u.body);l!==null&&(r+=1,n.push(l),c!==t&&(s+=1))}let o=new Set(n.map(c=>c.category)),a=n.filter(c=>c.strongAnchor).length;return r>=4&&s>=2&&o.size>=2&&a>=2&&n.some(c=>c.nontrivialAnchor)||r>=4&&s>=2&&i>=2&&o.has("brace")&&o.has("declaration")&&a>=1}function UC(e){return Md(e)?Zi(_C(e)):/^\s*\d+\.\s+\S/m.test(e)||/(?:^|\s)\d+:\s+\S/.test(e)||WC(e)?!1:Zi(BC(e))}function KC(e){if(Md(e))return!1;let t=te(e);return!/^\s*(?:\{|\[|")/.test(e)&&Zi(jC(e),{allowClippedSourceContext:t,ignoreTruncatedFinalSpan:t,minSourceStatements:t?3:2})}function WC(e){return/[\r\n]\s*\d{1,6}[ \t]+\S/.test(e)}function Md(e){return/(?:^|[\r\n]|\s)\d{1,6}\u2192/.test(e)}function GC(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(s=>s[1]?.toLowerCase()),r=new Set(n.filter(s=>s!==void 0));return r.size>=5||r.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 YC(e){let t=e.split(/\r?\n/).map(r=>r.trim());return t.filter(r=>/^\d{1,6}\s+(?:(?:(?:\/\/|\/\*|\*)\s*)|\/\/{5,})/i.test(r)).length>=2&&t.some(r=>/^\d{1,6}\s+(?:(?:\/\/\s*)?SPDX-License-Identifier:|(?:(?:\/\/|\/\*|\*)\s*)?(?:copyright|permission is hereby granted|open source license))/i.test(r))}function XC(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&&no.test(n[1]??"")||JC(t)||QC(t)}function JC(e){let t=e.split(/\r?\n/).slice(0,12);return t.filter(r=>/^\s*(?:\/\/+|#)\s*(?:\S|$)/.test(r)).length>=3&&no.test(t.join(`
|
|
17
|
+
`))}function QC(e){return/^\s*(?:\/\/|#)\s+/.test(e)?[...e.slice(0,900).matchAll(/(?:^|\s)(?:\/\/|#)\s+/g)].length>=3&&no.test(e.slice(0,900)):!1}var no=/\b(?:SPDX-License-Identifier|copyright|permission is hereby granted|open source license)\b/i;function we(e){let t=V(e);return t.length===0?!1:ex(t)||BR(t)||pC(t)||KC(t)||XC(t)||YC(t)||sx(t)||ix(t)||rx(t)||GC(t)||ox(t)||UC(t)||cx(t)>=2||px(t)>=3}function ex(e){let t=tx(e);return nx(t)||TC(t)}function tx(e){return e.split(/\r?\n/).find(t=>t.trim().length>0)?.trim()??""}function nx(e){return/^(?:#!\/|diff\s+--git\b|---\s+\S|@@\s+|#ifndef\b|#pragma\s+once\b|cmake_minimum_required\s*\()/i.test(e)}function rx(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 sx(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 ix(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 ox(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 ax(e){let t=Bd(e);return t.length===1&&te(e)&&lx(e)&&ux(t[0].body)}function cx(e){return Bd(e).length}function Bd(e){return[...e.matchAll(dx)].map(t=>({body:(t[1]??"").trim()}))}function ux(e){return to(e)||jR(e)}function lx(e){return e.split(/\r?\n/).slice(1).some(t=>/^\s*(?:\/|\.\.?\/|[a-z0-9_.-]+\/)\S*\/\S*\.\.\.\s*$/i.test(t))}var dx=/(?:^|[\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 px(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,r)=>n+(r.test(e)?1:0),0)}function fx(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 r=n[1]??"",s=n[2]?.trim()??"";return mx(r)&&(we(s)||[...s.matchAll(wx)].length>=2)}function mx(e){return gx.test(e)&&(hx.test(e)||bx.test(e)||yx.test(e))&&vx.test(e)&&kx.test(e)}var gx=/\b(?:file|source|content|output|document|payload|result|text|artifact|log)\b/i,hx=/\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,bx=/\btoo\s+(?:large|long)\s+to\s+(?:display|show|render|view|print|return|include)\s+(?:entirely|fully|in\s+full|completely)?\b/i,yx=/\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,vx=/\b(?:abbreviated|abridged|shortened|truncated|partial|compact|limited|excerpt|preview)\b/i,kx=/\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,wx=/(?:^|\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 He(e){return Sx(e)||_x(e)||Ex(e)||Ax(e)}function Sx(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 Ax(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 _x(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 Ex(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 Tx=[/(?:^|[\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],Rx=/\b(?:no\s+errors?|0\s+errors?|no\s+failures?|0\s+failures?)\b/i;function jd(e){let t=Cx(e).trim();return t.length===0||He(t)||Rx.test(t)?!1:Tx.some(n=>n.test(t))}function Cx(e){return e.replace(/\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])/g,"")}function ro(e){let t=xx(e)??Ix(e),n=t?.[1]?.trim()??"",r=t?.[2]?.trim()??"";return r.length>0?{section:r,preamble:n}:null}function xx(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 Ix(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 so(e){let t=e.split(/\r?\n/).map(n=>n.trim()).filter(n=>n.length>0);return t.length>0&&t.every(n=>Vd(n))}function Hd(e){return so(e)||He(e)||/^\s*expected(?:\s+[a-z][\w.-]{0,40})?\s*:/i.test(e)}function Lx(e){return!Ox(e)&&He(e)&&!Nx(e)}function Ox(e){return/:\s*\S/.test(e)&&!Vd(e)}function Fx(e){let n=e.split(/\r?\n/).map(r=>r.trim()).filter(r=>r.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 Px(e,t){let n=t+1;for(;n<e.length;){let r=e[n]?.trim()??"";if(r.length===0)return n;if(zx(r))return n-1;n+=1}return e.length-1}function Vd(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 Nx(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 zx(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)||Dx(e)||$x(e)||/^\s*E\s+AssertionError\b/i.test(e)}function Dx(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 $x(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 io(e){let t=[];ed.lastIndex=0;let n;for(;(n=ed.exec(e))!==null;){let r=Number.parseInt(n[1]??"",10);Number.isSafeInteger(r)&&t.push({line:r,body:(n[2]??"").trimEnd(),index:n.index})}return t}function qx(e){return/(?:^|[\r\n]|\s)\d{1,6}(?:[ \t]+|:\s+)\S/.test(e)}var ed=/(?:^|[\r\n]|\s)(\d{1,6})\u2192([\s\S]*?)(?=(?:[\r\n]|\s)\d{1,6}\u2192|$)/g;function Zd(e){let t=[];for(let n of e.split(/\r?\n/)){let r=/^\s*(\d{1,6})(?:[ \t]+|:\s+)(.*)$/.exec(n);r&&t.push({line:Number.parseInt(r[1],10),body:r[2].trimEnd()})}return t}function Ud(e){return qx(e)?[]:io(e).map(({line:t,body:n})=>({line:t,body:n}))}function oo(e){return e.every((t,n)=>n===0||t.line>e[n-1].line)}function ao(e){return/(?:^|[\r\n]|\s)\d{1,6}\u2192/.test(e)}function Mx(e){let t=V(e);return ao(t)?Kd(t):Wd(Zd(t),t)}function Kd(e){let t=V(e);return Wd(Ud(t),t)}function Wd(e,t){return e.length<4||!oo(e)?!1:Bx(e.map(n=>n.body).join(`
|
|
18
|
+
`),{clipped:te(t)})}function Bx(e,t){let n=[...e.matchAll(/(?:^|[\r\n])\s{0,3}#{1,6}\s+\S/g)].length,r=[...e.matchAll(/(?:^|[\r\n])\s*(?:[-*]\s+\S|\d+\.\s+\S)/g)].length,s=t.clipped?1:2;return n>=2&&(r>=s||/(?:^|[\r\n])\s*```/.test(e)||jx(e))}function jx(e){let t=e.split(/\r?\n/).map(n=>n.trim());return t.some((n,r)=>$i(n)&&/^\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(t[r+1]??"")&&$i(t[r+2]??"")&&$i(t[r+3]??""))}function $i(e){return/^\|.+\|\s*$/.test(e)}function Gd(e){let t=V(e),n=[...t.matchAll(/(?:^|[\r\n])\s{0,3}#{1,6}\s+\S/g)].length,r=[...t.matchAll(/(?:^|[\r\n])\s*(?:[-*]\s+\S|\d+\.\s+\S)/g)].length,s=/(?:^|[\r\n])\s*```/.test(t);return t.length>=160&&n>=2&&(r>=2||s)}function Hx(e){let t=V(e);return Vx(t)||Mx(t)||Gd(e)}function Vx(e){let t=e.split(/\r?\n/).map(n=>n.trim());return t.some((n,r)=>{let s=t[r+1]??"",i=t[r+2]??"",o=t[r+3]??"";if(!qi(n)||!/^\|?\s*:?-{3,}:?\s*(?:\|\s*:?-{3,}:?\s*)+\|?\s*$/.test(s)||!qi(i)||!qi(o))return!1;let a=Tr(n);return a>=2&&Tr(s)===a&&Tr(i)===a&&Tr(o)===a})}function qi(e){return/^\|.+\|\s*$/.test(e)}function Tr(e){return e.replace(/^\|/,"").replace(/\|$/,"").split("|").length}function Zx(e){let t=V(e);if(!ao(t)||!te(t))return!1;let n=Ud(t);return n.length>=3&&(n[0]?.line??1)>1&&oo(n)&&Ux(n)&&Kx(n)>=2}function Ux(e){return e.every((t,n)=>n===0||t.line===e[n-1].line+1)}function Kx(e){return e.filter(t=>t.body.trim().length>0).length}function co(e){let t=e.trim().replace(/^(?:bash|edit|read|search|tool)\s+failure\s+/,""),n=Wx.exec(t);if(n===null)return!1;let r=Number.parseInt(n[1]??"",10),s=Number.parseInt(n[2]??"",10),i=Number.parseInt(n[3]??"",10);return Number.isSafeInteger(r)&&Number.isSafeInteger(s)&&Number.isSafeInteger(i)&&r>=1&&s>=r&&i>=s}var Wx=/^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 Gx(e){let t=e.trim();return Xx.test(t)?!1:Qx.some(n=>n.test(t))||Yx(t)}function Yx(e){return Jx.test(e)}var Xx=/^(?:[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,Jx=/(?:\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.-]*=)/,Qx=[/^\/[/*]/,/^#(?: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 uo(e){let t=[];for(let n of e.split(/\r?\n/)){let r=n.trim(),s=eI(r);s!==null&&t.push(s)}return tI(t)}function eI(e){if(nI.test(e))return{kind:"source_location",line:e};if(rI.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?Gx(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 tI(e){let t=new Set;return e.filter(n=>{let r=`${n.kind}:${n.line}`;return t.has(r)?!1:(t.add(r),!0)})}var nI=/^[^\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,rI=/^(?!(?:[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 Yd(e){let t=V(e);if(t.length===0)return!1;let n=uo(t);return Xd(n)||!Jd(n)?!1:n.length>=2||aI(t)&&n.length>=1}function sI(e){return Yd(e)}function iI(e){let t=V(e);if(!te(t))return!1;let n=uo(t);return n.length>=3||oI(n)}function oI(e){if(Xd(e)||!Jd(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 Xd(e){return e.some(t=>t.kind==="kernel_log"&&zr(t.line))}function Jd(e){let t=e.filter(n=>n.requiresMonotone===!0);return t.every((n,r)=>r===0||(n.lineNumber??0)>(t[r-1]?.lineNumber??0))}function aI(e){return/(?:^|[\r\n])\s*total output lines:\s*\d+\b/i.test(e)}function cI(e){let t=io(e),n=new Set(t.map(s=>s.line)),r=t[0]?.index??-1;return r>0&&uI(e.slice(0,r))?!0:t.some((s,i)=>lI({body:s.body,currentLine:s.line,nextLine:t[i+1]?.line,arrowLines:n}))}function uI(e){let t=/(?:^|[\r\n]|\s)\d{1,6}(?:[ \t]+|:\s+)([#*/@|-]|\S+)/g;for(let n of e.matchAll(t))if(Ui.test(n[1]??""))return!0;return!1}function lI(e){let t=/(?:^|[\r\n]|\s)(\d{1,6})(?:[ \t]+|:\s+)([#*/@|-]|\S+)/g;for(let n of e.body.matchAll(t)){let r=Number.parseInt(n[1]??"",10),s=n[2]??"";if(Number.isSafeInteger(r)&&!(e.arrowLines.has(r)&&!Ui.test(s))&&(r>e.currentLine&&e.nextLine!==void 0&&r<e.nextLine||Ui.test(s)))return!0}return!1}var Ui=/^(?:[#*/@|-])/;function $r(e){let t=V(e);return fI(t)||gI(t)||Id(t)}function dI(e){let t=V(e);return t.length===0||$r(t)?!1:pI(t)}function pI(e){if(!ao(e)||!te(e)||cI(e))return!1;let t=io(e).map(({line:n,body:r})=>({line:n,body:r}));return t.length>=3&&oo(t)&&mI(t)&&t.filter(n=>n.body.trim().length>0).length>=2}function fI(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 mI(e){return e.every((t,n)=>n===0||t.line===e[n-1].line+1)}function gI(e){return hI(e,/\b(?:read failed|failed to (?:read|open)|could not (?:read|open)|unable to (?:read|open))\b/gi)}function hI(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 bI(e){return we(e)||dI(e)}function yI(e){return we(e)||SI(e)||Ve(e)||co(e)||Hx(e)||Yd(e)||EI(e)||TI(e)}function lo(e){return we(e)||Ve(e)||co(e)||Kd(e)||Zx(e)||Gd(e)}function Ve(e){let t=V(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(r=>r.test(t)).length>=2||vI(t)>=2||kI(t)||wI(t)||_I(t)}function vI(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 kI(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 wI(e){return zr(e)?!1:AI(e)>=2||/\btotal output lines:\s*\d+\b/i.test(e)&&Qd(e)>=2}function SI(e){return!zr(e)&&Qd(e)>=2}function AI(e){return[...e.matchAll(/(?:^|[\r\n]|\s)\[\s*\d+(?:\.\d+)?]\s+\S/g)].length}function Qd(e){return[...e.matchAll(/(?:^|[\r\n]|\s)\d+:\s*\[\s*\d+(?:\.\d+)?]\s+\S/g)].length}function _I(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 EI(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 TI(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 RI(e){let t=CI(e);return t!==null&&ep(t)}function ep(e){return!xI(e)&&we(e)}function CI(e){return/^\s*={2,}\s*Testing\b[^=\r\n]{1,180}={2,}\s*([\s\S]+)$/i.exec(e)?.[1]?.trim()??null}function xI(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 tp(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 r=0;r<t.length;r+=1){let s=t[r],i=e.slice((s.index??0)+s[0].length,t[r+1]?.index).trim();if(i.length===0)return null;n.push(i)}return n}function II(e){let t=e.trim();if(t.length===0||sp(t))return null;let n=tp(t);if(n===null)return null;let r=!1;for(let s of n){let i=rp(s);if(i===null||i==="failure")return null;r||=i==="concrete"}return r?"concrete":"success"}function np(e){let t=e.trim();if(t.length===0)return!1;let n=tp(t);return n!==null&&n.some(r=>rp(r)==="failure")}function rp(e){return LI(e)?"failure":OI(e)?null:FI(e)?"failure":PI(e)?"concrete":NI(e)?"success":null}function LI(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 OI(e){return ep(e)||sp(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 FI(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 PI(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 NI(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 sp(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 ip(e){let t=e.trim();if(op(t))return null;let n=II(t);return n!==null?{consequenceBaseline:n==="success"?"low":"high"}:zI(t)||DI(t)||$I(t)||qI(t)?{consequenceBaseline:"low"}:CR(t)?{consequenceBaseline:"medium"}:null}function op(e){return Ld(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 zI(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 DI(e){return/(?:^|[\r\n]|\s)Ran\s+\d+\s+tests?\s+in\s+[\d.]+s\s+OK\s*$/i.test(e)}function $I(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 qI(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)|(?:the\s+)?tests?\s+passed\s+with\s+(?:zero|0)\s+failures?[\s\S]{1,600}\b(?:intentionally|expectedly)\s+(?:emitted|produced|raised)\b[\s\S]{1,300}\b(?:verified|matched|asserted|confirmed)\b[\s\S]{0,160})[.!]?\s*$/i.test(e)}function po(e){return jI(e)||hn(e,"subprocess failed",bn)?!0:nR.some(t=>hn(e,t,HI(t)))}function MI(e){return cp(e,t=>t===0)}function BI(e){let t=up(UI(e));return Td.some(n=>hn(t,n,GI))}function jI(e){return cp(e,t=>t!==0)||hn(e,"non-zero exit",bn)||hn(e,"nonzero exit",bn)}function HI(e){switch(e){case"exception":return YI;case"traceback":return XI;default:return bn(e)}}var ap=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 cp(e,t){for(let n of e.matchAll(new RegExp(ap,"g"))){let r=Number.parseInt(n[1]??"",10);if(Number.isFinite(r)&&t(r))return!0}return!1}function up(e){return e.replace(new RegExp(ap,"g")," ")}var VI=(e,t,n)=>e.some((r,s)=>s>0&&t(r)&&e.slice(0,s).some(n)),ZI=(e,t,n)=>e.findIndex(r=>t.test(r))>=0&&!e.slice(e.findIndex(r=>t.test(r))+1).some(r=>n.test(r));function UI(e){return e.replace(/^(?:observation|bash failure|bash observation|tool failure|tool observation)\s+/,"")}function hn(e,t,n){let r=typeof n=="function"?n(t):n;for(let s of KI(e,t))if(!WI(e,s.start,s.end,r))return!0;return!1}function KI(e,t){let n=x(t);if(!n)return[];let r=new RegExp(`(^|[^a-z0-9_])(${fo(n)})(?=$|[^a-z0-9_])`,"g"),s=[];for(let i of e.matchAll(r)){let o=(i.index??0)+(i[1]?.length??0);s.push({start:o,end:o+n.length})}return s}function WI(e,t,n,r){for(let s of r)for(let i of e.matchAll(new RegExp(s.source,"g"))){let o=i.index??0,a=o+i[0].length;if(t>=o&&n<=a)return!0}return!1}function bn(e){let t=fo(x(e)),n=e==="permission denied"?String.raw`(?:no ${t}|${t} before (?:tool )?(?:invocation|execution))`:String.raw`no ${t}`;return[new RegExp(String.raw`\b${n}\b`),new RegExp(String.raw`\bwithout ${t}\b`)]}function GI(e){let t=fo(x(e));return[...bn(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 YI=[/\b(?:no exceptions?(?: occurred| raised| reported| found| seen| present)?|without (?:an? )?exceptions?|expected exceptions?(?: was| were)? (?:caught|handled|raised)|(?:caught|handled) (?:the )?expected exceptions?|exceptions?(?: was| were)? expected)\b/],XI=[/\b(?:no tracebacks?(?: occurred| raised| reported| found| seen| present)?|without (?:a )?tracebacks?|expected tracebacks?(?: was| were)? (?:caught|handled|raised|produced)|tracebacks?(?: was| were)? expected)\b/];function fo(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function mo(e){let t=ro(e);if(t!==null){let n=lp(t.section);return n===null||Fx(t.preamble)||so(t.preamble)&&!gn(n)?null:n}return!e.includes(`
|
|
19
|
+
`)&&!He(e)&&qr(e)?e:dp(e)}function lp(e){return dp(e)}function dp(e){let t=e.trim();if(t.length===0)return null;let n=t.split(/\r?\n/);for(let r=0;r<n.length;r+=1){let i=(n[r]??"").trim();if(Hd(i)){Lx(i)&&(r=Px(n,r));continue}if(i.length>0&&!He(i)&&qr(i))return i;let o=JI(n,r);if(o!==null)return o}return null}function JI(e,t){let n=e[t]?.trim()??"";if(!/^={2,}\s*[^=\n][^\n]*\s*={2,}$/.test(n))return null;let r=e.slice(t+1).find(i=>i.trim().length>0)?.trim();if(r===void 0||Hd(r))return null;let s=`${n}
|
|
20
|
+
${r}`;return qr(s)?s:null}function qr(e){return po(x(e))||gn(e)||op(e)||np(e)||jd(e)||xd(e)}function go(e){let t=mo(e);return t!==null&&qr(t)}function Ze(e){let n=/^\s*OBSERVATION:\s*([\s\S]+)$/i.exec(e)?.[1]?.trim()??"";return n.length>0&&n!=="{}"?n:null}function pp(e){return/^\s*(?:error|syntaxerror|typeerror|runtimeerror|valueerror|assertionerror):\s+\S/i.test(e)}function fp(e,t){return sL(t)||QI(t)||WT.test(e)||yn.test(e)&&/\bmatch(?:es)?\b/.test(e)}function QI(e){let t=eL(e),n=t.filter(s=>s.path===void 0);return n.length>=3&&td(n)&&nL(n)?!0:[...tL(t.filter(s=>s.path!==void 0)).values()].some(s=>s.length>=2&&td(s))}function eL(e){return[...e.matchAll(rL)].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 td(e){return e.every((t,n)=>!Number.isSafeInteger(t.line)||t.body.length===0?!1:n===0||t.line>e[n-1].line)}function tL(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 nL(e){return e.some(t=>t.separator==="--"||t.separator.includes("|"))}var rL=/(?:^|\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 sL(e){return/^\s*(?:web search results for\s+(?:"[^"]+"|'[^']+'|`[^`]+`|[^:\r\n]{1,200})\s*:\s+\S|search\s+(?:returned|found)\s+(?:\d+|one|two|three|four|five|six|seven|eight|nine|ten|several|multiple)\s+(?:matches?|results?)\b[\s\S]{1,500}\b(?:at\s+lines?\s+\d{1,7}|(?:at|in)\s+(?:paths?|files?)\s+\S|(?:at|in)\s+\S+\.[a-z0-9]+(?::\d+)?))/i.test(e)}function iL(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 oL(e){let t=x(e);if(t.length<80||t.length>1800||aL(t))return!1;let n=nd(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/]),r=nd(t,[/\breproduction\s+(?:script|command)\b/,/\breproducer\b/,/\bverification\s+(?:script|command)\b/]);return n>=2&&r>=1}function nd(e,t){return t.reduce((n,r)=>n+(r.test(e)?1:0),0)}function aL(e){return[/\b(?:traceback|syntaxerror|typeerror|assertionerror|exceptiongroup|exception)\b/,/\b(?:segmentation fault|segfault|core dumped|crash(?:ed|es|ing)?|permission\s+denied)\b/,/\b(?:timed?\s+out|timeout|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/,/\b(?:exit\s+code\s+[1-9]\d*|(?:exited|returned)\s+(?:with\s+)?(?:code\s+)?[1-9]\d*|(?: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 cL(e){return ee(e,Ed)&&yn.test(e)}function Mr(e){return uL.some(t=>t.test(e))}var uL=[/^(?: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 mp(e,t){let n=lL(e);return[...e.matchAll(t)].filter(r=>!dL(r.index,r.index+r[0].length,n)).length}function ft(e,t){return mp(e,t)>0}function lL(e){let t=[],n=null,r=-1;for(let s=0;s<e.length;s+=1){let i=e[s],o=n===null?pL(e,s):null;o!==null?(n=o,r=s):n!==null&&i==="\\"?s+=1:n!==null&&i===n&&!mL(e,s,n)&&(t.push([r,s+1]),n=null,r=-1)}return n!==null&&t.push([r,e.length]),t}function dL(e,t,n){return n.some(([r,s])=>e<s&&t>r)}function pL(e,t){let n=e[t];return n==='"'||n==="`"||n==="'"&&!fL(e,t)?n:null}function fL(e,t){if(!mn(e[t-1]))return!1;let n=e[t+1];return mn(n)?!0:n!==void 0&&/\s/.test(n)?/s/i.test(e[t-1]??"")&&mn(gL(e,t+1)):!1}function mL(e,t,n){return n==="'"&&mn(e[t-1])&&mn(e[t+1])}function mn(e){return e!==void 0&&/[A-Za-z0-9_]/.test(e)}function gL(e,t){for(let n=t;n<e.length;n+=1)if(!/\s/.test(e[n]??""))return e[n]}function hL(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 bL(e){let t=e.trim();if(t.length===0||vL(t)||Mr(t)||hL(t)||kL(t))return!1;let n=yL(t);return n>=2||n>=1&&/\b(?:running|output|lint|linter|problems?\s+found)\b/i.test(t)}function yL(e){return mp(e,SL)}function vL(e){return/\b(?:please|should|must|expected output|final response|review your changes|follow the steps)\b/i.test(e)}function kL(e){return gp(e)&&!/\bTest PASSED\b[\s\S]{0,240}\b(?:error|reported)\b/i.test(e)}function wL(e){return ft(e,/(?:^|[\r\n]|\s)warning\b/gi)}function gp(e){return ft(e,/(?:^|[\r\n]|\s)(?:error|fatal)\b/gi)||ft(e,/\b(?:\[[^\]]*error[^\]]*]|level:\s*error)\b/gi)}var SL=/(?:^|[\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 rd(e){let t=V(e);return t.length===0?!1:AL(t)}function AL(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 hp(e){let t=e.trim();return bp(t)&&!Mr(t)&&!TL(t)&&(_L(t)||EL(t))}var bp=e=>e.length>0&&te(e)&&!Lt(e),_L=e=>ft(e,RL);function EL(e){return ft(e,CL)||ft(e,xL)}var TL=e=>ft(e,IL),RL=/(?:^|[\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,CL=/(?:^|[\r\n])\s*(?:clang|gcc|g\+\+|cc|c\+\+|ld|nvcc|hipcc)\s*:\s*warning:\s+\S/gi,xL=/(?:^|[\r\n])\s*CMake (?:Deprecation )?Warning at \S+:\d+\s+\(/gi,IL=/(?:^|[\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 Br(e,t={}){let n=V(e);if(n.length===0||LL(n)||t.rejectCommandTextWrappers===!0&&OL(n))return null;let r=ip(n);if(r!==null&&!Lt(n))return{shape:"test",consequenceBaseline:r.consequenceBaseline,source:!1};if(zL(n)||t.allowNonWarningLinterFindings===!0&&yp(n))return{shape:"linter",consequenceBaseline:"high",source:!1};if(hp(n))return{shape:"readback",consequenceBaseline:"medium",source:!1};if(/^\s*diff --git\b/i.test(n)&&!rd(n))return null;if(rd(n))return{shape:"diff",consequenceBaseline:"high",source:!0};let s=t.allowReadOwnedFlattenedFilePayloads===!0?$L(n):DL(n);return we(n)&&(t.allowReadOwnedFlattenedFilePayloads!==!0||ZL(n))||s?{shape:"source",consequenceBaseline:"high",source:!0}:lo(n)?{shape:"readback",consequenceBaseline:Ve(n)?"medium":"high",source:!1}:ML(n)||t.allowReadOwnedFlattenedFilePayloads===!0&&qL(n)?{shape:"document",consequenceBaseline:"medium",source:!1}:null}function LL(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 OL(e){return Mr(e)||NL(e)||FL(e)||PL(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 PL(e){return/^\s*(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=\s*["'`][\s\S]*\bdiff --git\b/i.test(e)}function NL(e){return/^\s*---\s+expected\b[\s\S]*^\s*\+\+\+\s+actual\b/im.test(e)}function zL(e){return yp(e)&&wL(e)}function yp(e){return bL(e)&&!gp(e)}function DL(e){if(jr(e)||!te(e)||ho(e))return!1;let t=N(e,UL),n=N(e,WL),r=N(e,vp),s=N(e,GL),i=N(e,kp),o=N(e,YL),a=N(e,wp),c=N(e,Sp),u=t+n*2+r+s+i+o+a+Math.min(c,3);return n>=1&&u>=4||t>=3&&u>=5||o>=3&&(i>=1||n>=1)}function $L(e){if(jr(e)||!te(e)||ho(e))return!1;let t=N(e,KL),n=N(e,vp),r=N(e,kp),s=N(e,wp),i=N(e,Sp),o=t*2+r+s,a=n+r+s+Math.min(i,3);return VL(e)&&t>=2&&o>=4||i>=3&&(n>=1||r>=1||s>=1)&&a>=6}function qL(e){if(jr(e)||!te(e)||e.length<160||ho(e))return!1;let t=N(e,XL),n=N(e,JL),r=N(e,QL),s=N(e,eO);return/^\s{0,3}#{1,6}\s+\S/.test(e)&&t>=2&&(n>=2||r>=2||n>=1&&s>=2)}function ML(e){if(!te(e)||Lt(e))return!1;let t=BL(e);if(t.length<3||!HL(t))return!1;let n=t.filter(a=>/^\|[\s\S]*\|/.test(a.body.trim())).length,r=t.filter(a=>to(a.body.trim())).length,s=t.filter(a=>/^\d+(?:\.\d+){1,}\.?\s+\S/.test(a.body.trim())).length,i=t.filter(a=>/^\d+\s+of\s+\d+\s*$/.test(a.body.trim())).length,o=t.filter(a=>/\b[A-Z][A-Z0-9_]{2,}\b/.test(a.body)).length;return n>=2||r>=2||s>=1&&(i>=1||o>=1)||s>=2&&o>=1}function BL(e){let t=Zd(e).filter(n=>n.body.trim().length>0);return t.length>=2?t:jL(e)}function jL(e){let t=[],n=/(?:^|\s)(\d{1,6})[:|-]\s*([\s\S]*?)(?=\s+\d{1,6}[:|-]\s*\S|$)/g,r;for(;(r=n.exec(e))!==null;){let s=Number.parseInt(r[1]??"",10),i=(r[2]??"").trim();Number.isSafeInteger(s)&&i.length>0&&t.push({line:s,body:i.slice(0,200)})}return t}function HL(e){return e.every((t,n)=>n===0||t.line>e[n-1].line)}function N(e,t){return[...e.matchAll(t)].length}function jr(e){return/[\r\n]/.test(e)}function ho(e){return/^\s*(?:please|should|must|expected output|final response|review your changes|follow the steps)\b/i.test(e)}function VL(e){return/^\s*(?:\/\*|\/\/|#!\/|import\s+(?:type\s+)?(?:\{|\*|[A-Za-z_$]))/.test(e)}function ZL(e){return jr(e)||/(?:^|\s)\d{1,6}\u2192\S/.test(e)}var UL=/(?:^|\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,KL=/(?:^|\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,WL=/(?:^|\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,vp=/(?:^|\s)(?:if|for|while|with)\s*\(|(?:^|\s)(?:yield|return)\s+[a-zA-Z_({][^\s;)]*|(?:^|\s)isinstance\s*\(/g,GL=/(?:^|\s)[A-Za-z_][A-Za-z0-9_]*\s*=\s*(?:["'({[]|[A-Za-z_][A-Za-z0-9_.]*\()/g,kp=/(?:^|\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,YL=/(?:^|\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,wp=/(?:^|\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,Sp=/(?:^|\s)[A-Za-z_$][A-Za-z0-9_$]*:\s*(?:null|true|false|["'[{(]|[A-Za-z_$][A-Za-z0-9_$]*(?:[,.}]|\s*=>))/g,XL=/(?:^|\s)#{1,6}\s+\S/g,JL=/(?:^|\s)(?:[-*]\s+\S|\d+\.\s+\S)/g,QL=/`[^`]{1,120}`/g,eO=/\b(?:api|cli|sdk|typescript|javascript|package|framework|rendering|configuration|options|interface|component|terminal|runtime|schema|server|client)\b/gi;function Ki(e){let t=Ze(e);return t===null?null:Ap(t)}function sd(e){let t=Ze(e);return t!==null&&Ap(t)===null&&go(t)}function Ap(e){let t=x(e),n=ip(e);if(n!==null)return go(e)?null:{shape:n.consequenceBaseline==="low"?"successful_test":"concrete_test_result",consequenceBaseline:n.consequenceBaseline};if(fx(e))return{shape:"abbreviated_file_view",consequenceBaseline:"low"};if(ee(t,Ji)||iL(e))return{shape:"existing_observation",consequenceBaseline:"high"};if(np(e)||jd(e)||pp(e))return null;if(oL(e))return{shape:"procedural_harness_observation",consequenceBaseline:"low"};let r=Br(e,{allowNonWarningLinterFindings:!0});return r!==null?{shape:r.shape==="test"?"concrete_test_result":"existing_observation",consequenceBaseline:r.consequenceBaseline}:cL(t)||RI(e)||fp(t,e)?{shape:"existing_observation",consequenceBaseline:"high"}:null}function tO(e){let t=Ze(e);return t===null||go(t)?null:Ki(e)}function nO(e){let t=Ze(e);if(t===null)return!1;let n=ro(t);return n===null?(He(t)||id(t))&&mo(t)===null:so(n.preamble)||lp(n.section)===null&&(He(t)||id(n.section))}function rO(e){let t=Ze(e);return t===null?!1:ro(t)!==null&&mo(t)!==null}function id(e){return e.split(/\r?\n/).some(t=>He(t.trim()))}function Hr(e){return iO(e.toolFamily)}function sO(e){let t=Hr(e);if(t)return t;let n=x(`${e.title} ${e.summary??""}`),r=[];return(ke(n,"wants to read")||ke(n,"wants to inspect")||dn(n,"read")||dn(n,"inspect"))&&r.push({toolFamily:"read",risk:1,order:0}),(ke(n,"search files")||ke(n,"search file contents"))&&r.push({toolFamily:"search",risk:1,order:1}),ke(n,"search the web")&&r.push({toolFamily:"web",risk:2,order:2}),(ke(n,"wants to write")||dn(n,"write"))&&r.push({toolFamily:"write",risk:3,order:3}),(ke(n,"wants to edit")||dn(n,"edit"))&&r.push({toolFamily:"edit",risk:3,order:4}),(ke(n,"shell command")||ke(n,"wants to run"))&&r.push({toolFamily:"bash",risk:3,order:5}),r.sort((s,i)=>i.risk-s.risk||s.order-i.order)[0]?.toolFamily??null}function Te(e){return e==="bash"||e==="exec_command"||e==="run_shell_command"}function iO(e){let t=e?.trim().toLowerCase()??"";return t.length>0?t:null}function oO(e,t={}){if(e===void 0)return null;let n=kn(e);if(n===null||typeof n.wall_time!="string"||typeof n.output!="string"||!Vr(n.wall_time)||uO(n)||n.output.trim().length===0)return null;let r=_p(n,t);return r==="invalid"?null:{output:n.output,wallTime:n.wall_time,...r!==void 0?{exitCode:r}:{}}}function aO(e){if(e===void 0)return!1;if(/^\s*\{\s*(?:"exit_code"\s*:|"wall_time"\s*:|"output"\s*:)/.test(e))return!0;let t=kn(e);return t?.truncated===!0?!0:t!==null&&Object.prototype.hasOwnProperty.call(t,"wall_time")&&Object.prototype.hasOwnProperty.call(t,"output")}function kn(e){try{let t=JSON.parse(e);return t===null||typeof t!="object"||Array.isArray(t)?null:t}catch{return null}}function cO(e){if(e===void 0)return!1;let t=kn(e);return t!==null&&Object.keys(t).length===0}function Vr(e){return/^\d+(?:\.\d+)?\s*(?:ms|s|sec|secs|second|seconds)$/i.test(e.trim())}function uO(e){let t=new Set(["exit_code","output","wall_time"]);return Object.keys(e).some(n=>!t.has(n))}function _p(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 Rr(e,t){if(t.invalid===!0||t.wallTime!==void 0&&!Vr(t.wallTime))return null;let n=mO(e);if(n.text.trim().length===0)return null;let r=lO(n.suffix);if(r===null||t.exitCode!==void 0&&r.exitCode!==void 0||t.wallTime!==void 0&&r.wallTime!==void 0)return null;let s=t.exitCode??r.exitCode,i=t.wallTime??r.wallTime;return{output:n.text,...i!==void 0?{wallTime:i}:{},...s!==void 0?{exitCode:s}:{}}}function Wi(e){let t=e.replace(/^"|"$/g,"").trim();return/^-?\d+$/.test(t)?Number.parseInt(t,10):null}function lO(e){let t=e.trim(),n={};for(;t.length>0;){if(t==="}")return n;let r=/^,\s*"([a-z_]+)"\s*:\s*/.exec(t);if(!r)return null;switch(t=t.slice(r[0].length),r[1]){case"exit_code":{let s=dO(t);if(s===null||n.exitCode!==void 0)return null;n.exitCode=s.exitCode,t=s.rest;break}case"wall_time":{let s=pO(t);if(s===null||n.wallTime!==void 0)return null;n.wallTime=s.wallTime,t=s.rest;break}case"truncated":{let s=fO(t);if(s===null)return null;t=s;break}default:return null}}return n}function dO(e){let t=/^(?:"([+-]?\d+)"|([+-]?\d+))/.exec(e),n=t?Wi(t[1]??t[2]??""):null;return t===null||n===null?null:{exitCode:n,rest:e.slice(t[0].length).trim()}}function pO(e){let t=/^"([^"]+)"/.exec(e),n=t?.[1]??"";return!t||!Vr(n)?null:{wallTime:n,rest:e.slice(t[0].length).trim()}}function fO(e){let t=/^true\b/.exec(e);return t?e.slice(t[0].length).trim():null}function mO(e){let t="";for(let n=0;n<e.length;n+=1){let r=e[n];if(r==='"')return{text:t,suffix:e.slice(n+1)};if(r!=="\\"){t+=r;continue}let s=e[n+1];if(s===void 0)break;switch(n+=1,s){case"n":t+=`
|
|
21
|
+
`;break;case"r":t+="\r";break;case"t":t+=" ";break;case"u":t+=gO(e,n),n+=hO(e,n)?4:0;break;default:t+=s;break}}return{text:t,suffix:""}}function gO(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 hO(e,t){return/^[0-9a-f]{4}$/i.test(e.slice(t+1,t+5))}function bO(e){if(e===void 0)return null;let t=vO(e);return t!==null?t:kn(e)!==null?null:yO(e)}function yO(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 i=Wi(t[1]??""),o=t[2]??"";return Rr(e.slice(t[0].length),{...i!==null?{exitCode:i}:{invalid:!0},wallTime:o})}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 i=Wi(n[2]??"");return Rr(e.slice(n[0].length),{...i!==null?{exitCode:i}:{invalid:!0},wallTime:n[1]??""})}let r=/^\s*\{\s*"wall_time"\s*:\s*"([^"]+)"\s*,\s*"output"\s*:\s*"/.exec(e);if(r)return Rr(e.slice(r[0].length),{wallTime:r[1]??""});let s=/^\s*\{\s*"output"\s*:\s*"/.exec(e);return s?Rr(e.slice(s[0].length),{}):null}function vO(e){let t=kn(e);if(t===null||t.truncated!==!0||typeof t.wall_time!="string"||typeof t.output!="string"||!Vr(t.wall_time)||kO(t)||t.output.trim().length===0)return null;let n=_p(t);return n==="invalid"?null:{output:t.output,wallTime:t.wall_time,...n!==void 0?{exitCode:n}:{}}}var kO=e=>{let t=new Set(["exit_code","output","truncated","wall_time"]);return Object.keys(e).some(n=>!t.has(n))};function wO(e){return Te(e)||e==="edit"?"native":AO.has(e??"")?"unsupported":"exact"}function SO(e,t){let n=aO(e);if(t==="unsupported")return{kind:n?"unsupported":"raw"};let r=oO(e,{coerceStringExitCode:t==="native"});if(r!==null)return{kind:"valid",output:r};if(!n)return{kind:"raw"};if(t==="exact")return{kind:"invalid"};let s=bO(e);return s===null?{kind:"invalid"}:{kind:"recovered",output:s}}var AO=new Set(["read","search","web","write"]);function Ir(e){let t=typeof e=="string"?[e]:e,n=t.map(o=>Be(o).map(a=>a.trim()).filter(a=>a&&!wn(a))),r=t.length<2||!TO.test(t[0]??""),s=n.map(o=>r?o.filter(a=>(!Ep.test(a)||IO.test(a))&&!xO.test(a)):[]),i=o=>o.flat().filter(Boolean).join(". ");return{authoritative:i(s),fields:s.map(o=>o.join(". ")),positive:i(s.map(o=>o.filter(a=>!CO.test(a))))}}function Mi(e,t){let n=!1,r=[];for(let s of Be(e)){/^(?:but|however|yet)\b/i.test(s.trim())&&(n=!1);let i=t(s);n||=i&&Ir(s).authoritative.length===0,!n&&!i&&r.push(s),".!?,".includes(s.trimEnd().at(-1)??"")&&(n=!1)}return r.join(". ")}var _O=e=>LO.test(e)||Fr.test(e)&&!Fr.test(e.replace(OO," quoted-content "))||Ep.test(od(e))||wn(od(e),!1),Be=e=>e.split(EO),wn=(e,t=!0)=>(t||!e.trim().toLowerCase().startsWith("observation:"))&&RO.test(e.replace(/^(?:but|however|yet)\b[,:]?\s*/i,"")),od=e=>Be(e).reverse().find(Fr.test,Fr)??"",EO=/(?:(?<=[.!?])(?<!\beg\.)(?<!\be\.g\.)|;)\s+|(?<!\ball\s)(?<!\bnothing\s)(?<!\banything\s)(?=\b(?:but|however)\b[,:]?\s)|(?=\byet\b[,:]?\s+(?:the\s+)?(?:execution|command|process|operation|tool|result|no|not|never|without|neither)\b)|\b(?:and|while)\s+(?=(?:no|not|never|without|neither)\b)\s+/iu,TO=/^\s*(?:hypothetical|counterfactual|conditional|simulated)\b/i,RO=/^(?:["'`]|observation:\s*|for reference\b|(?:(?:the|an?|this|that)\s+)?reference\s+(?:text|material|example|fixture|template)\s*:|(?:(?:the|an?|this|that)\s+)?(?:reference\s+(?:text|material|example|fixture|template)|documentation|document|source|log)\s+(?:says|states|contains|quotes|explains|describes|shows|includes|documents|mentions|notes)\b|(?:(?:the|an?|this|that)\s+)?(?:example|fixture|template)(?:\s+(?:fixture|template))?\s*(?::|(?:says|states|contains|quotes|explains|describes|shows|includes|documents|mentions|notes)\b)|(?:(?:the|an?|this|that)\s+)?(?:previous|prior)\s+(?:example|fixture|template)\b|expected\s+(?:result|text|output|diagnostic)\s*:|(?:hypothetical|quoted)\b|if\b|unless\b|when\b|suppose\b|one sentence says\b|(?:fatal|error|failure|exception|diagnostic)\b[^.!?;]*\b(?:was|is)\s+(?:an?\s+)?(?:previous|prior)\s+(?:example|fixture|template)\b)/i,Ep=/\b(?:hypothetical(?:ly)?|counterfactual(?:ly)?|possible|possibly|potential|potentially|would|could(?!\s+not\b)|might|may|cannot\s+be\s+(?:confirmed|ruled\s+out))\b/i,CO=/^(?![\s\S]*\bno\s+(?:output|diagnostic|evidence)(?:\s+or\s+(?:output|diagnostic|evidence))?\s+channels?\s+(?:is|are)\s+missing\b)[\s\S]*\b(?:no(?!\s+such\s+file\s+or\s+directory\b)|without|neither|nor|(?:not|never)\s+(?:been\s+)?(?:returned|delivered|produced|reported|observed|shown|contained|included|required|needed|pending|available|occur(?:red)?|exist(?:s|ed)?|start(?:ed)?|begin|begun|fail(?:ed)?|crash(?:ed)?|terminate[ds]?)|(?:is|are|was|were)\s+(?:not|never)\s+(?:an?\s+)?(?:failure|error|fault|crash)|(?:does?|did)\s+not\s+(?:represent|indicate|report|show|constitute)\s+(?:an?\s+)?(?:failure|error|fault|crash)|(?:record|diagnostic|report|source|document|text|example|fixture)\s+den(?:y|ies|ied)|den(?:y|ies)\s+that|lack(?:s|ed)?|(?:fails?|failed)\s+to\s+(?:report|show|contain|include|observe))\b/i,xO=/\b(?:no\s+(?:runtime\s+)?failure\s+(?:occurred|was\s+(?:observed|reported))|(?:runtime\s+)?failure\s+(?:did\s+not|never)\s+occur|(?:command|process|execution|operation|result|outcome)\s+(?:is|are|was|were)\s+(?:not|never)\s+(?:an?\s+)?(?:failure|error|fault|crash)|(?:command|process|execution|operation|result|outcome)\s+(?:does?|did)\s+not\s+(?:represent|indicate|report|show|constitute)\s+(?:an?\s+)?(?:failure|error|fault|crash)|(?:(?:exit|return)\s+(?:code|status)\s+(?:0|zero)|runtimeerror|traceback|segmentation\s+fault)\b[^.!?;]*\b(?:was\s+|is\s+)?(?:expected|ruled\s+out|excluded|unconfirmed|not\s+(?:returned|reported|observed|confirmed))|(?:report|record|result|outcome|diagnostic)\s+(?:rules?\s+out|excludes?)\s+(?:(?:exit|return)\s+(?:code|status)\s+(?:0|zero)|runtimeerror|traceback|segmentation\s+fault)|no\s+(?:authorization|permission|approval|decision)\s+(?:is|was)?\s*(?:required|needed|pending)|(?:authorization|permission|approval|decision)\s+(?:is|was)\s+not\s+(?:required|needed|pending)|(?:would|could|cannot|can\s+not|might|may)\b[^.!?;]*\b(?:runtime\s+failure|authorization\s+required|exit\s+(?:code|status)))\b/i,IO=/\b(?:type)?error:[\s\S]*(?:\b(?:cannot\s+read|undefined|null)\b[\s\S]*\bat\b|\bat\b[\s\S]*\b(?:cannot\s+read|undefined|null)\b)/i,LO=/\b(?:incomplete|partial|truncated|abbreviated)\s+(?:runtime\s+)?diagnostic\b/i,OO=/(["'`])(?:\\.|(?!\1)[^\\])*\1/gu,Fr=/\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault|fatal|(?:exit|return)\s+(?:code|status)\s+-?\d+|(?:failed|failure|error|exception|fault|crash(?:ed)?))\b/i;function FO(e){let t=PO(e),n=!e.signals.textFallbackSuppressed&&ad(e,!1);if(!e.signals.structuredOutputExitFailure&&!n&&!t&&!NO(e))return null;let r=t?"outcome_only":!e.signals.textFallbackSuppressed&&ad(e,!0)?"diagnostic":"indeterminate";return{failureDetail:r,consequenceBaseline:r==="outcome_only"?"medium":"high"}}function PO(e){let t=e.signals.diagnosticStructuredToolOutput;return!e.signals.textFallbackSuppressed&&(zO(e)||Te(e.toolFamily)&&cd(e.summary??"")||e.signals.structuredOutputEnvelope.kind==="valid"&&t?.exitCode!==void 0&&t.exitCode!==0&&cd(t.output))}function ad(e,t){let n=e.signals;return n.strongSourceRuntimeDiagnostic||n.structuredOutputFailureDiagnostic||n.editOutputOutcome==="failure"||n.searchFailureDiagnostic||n.readFailureDiagnostic||n.diagnosticObservationTranscript||n.commandActualDiagnosticObservationTranscript||!!(n.commandDiagnosticObservationTranscript&&!n.commandDiagnosticReferenceObservationTranscript)||!!(n.rawToolOutputFailureDiagnostic&&(t||!n.commandDiagnosticReferenceObservationTranscript))||n.structuredOutputEnvelope.kind==="raw"&&Te(e.toolFamily)&&po(x(e.summary??""))&&!Tp(e.summary??"")&&(t||!n.commandDiagnosticReferenceObservationTranscript)}function NO(e){let t=e.signals.observationSyntax;return!e.signals.textFallbackSuppressed&&e.terminalFailureText&&!e.signals.commandDiagnosticReferenceObservationTranscript&&!(t?.origin==="transcript"&&t.toolFamily===void 0)&&!e.searchResultText&&(!(t?.kind==="payload"&&(t.origin==="read_output"||t.origin==="structured_output"))||e.signals.strongSourceRuntimeDiagnostic)}function zO(e){return Te(e.toolFamily)&&Tp(e.summary??"")}function Tp(e){return $O.test(e.toLowerCase().replace(/\W+/g," ").trim())}var DO=e=>qO.test(e.replace(/(?:[a-z]:)?[\\/]?[\w.-]+(?:[\\/][\w.-]+)+/gi," ").replaceAll("standard error",""));function cd(e){let t=x(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)}var $O=/^(?:(?:no output|without output|no stdout no stderr|no stderr no stdout|empty stdout empty stderr|stdout empty stderr empty)\s+(?:(?:command|process|tool|subprocess)\s+)?(?:(?:exit|return)(?:ed)?\s+(?:with\s+)?(?:code|status)\s*(?:is|was)?\s*-?[1-9]\d*|(?:failed\s+with\s+)?(?:a\s+)?non[- ]?zero\s+exit)|(?:the )?(?:command|process|tool|subprocess)\s+(?:exit|return)(?:ed)?\s+(?:with\s+)?(?:code|status)\s*(?:is|was)?\s*-?[1-9]\d*\s+(?:no|without)\s+(?:(?:standard|error) output|stdout|stderr|diagnostic (?:text|output))(?:\s*(?:and|or)?\s*(?:(?:standard|error) output|stdout|stderr|diagnostic (?:text|output))){1,3}\s+(?:(?:was|were)\s+)?(?:retained|captured|available|produced))$/i,qO=/failed|failure|fatal|error|exception|crash|runtimeerror|traceback/i;function MO(e){let{text:t,authoritativeText:n,scopeText:r,diagnosticScopeText:s=r,documentPayload:i=!1,contradiction:o}=e,a=t.toLowerCase(),c=n.toLowerCase(),u=HO(t),l=Be(s),d=Be(a).filter(_=>!wn(_)).join(". ");if(new Set(u).size>1)return null;let p=Be(a).some(ud)&&Q(d,UO)&&!ZI(l,xp,Cp),f=Ip.test(a)&&WO.test(a),m=p&&(!i||f||!Zr.test(r)),g=!bo.test(a)&&(Be(a).some(BO)||VI(l,ud,jO)),y=!Q(`${a} ${c} ${r.toLowerCase()}`,["not a failure"])&&!Q(a,JO)&&(u.some(_=>_!==0)&&Q(a,YO)&&Q(a,XO)||Q(c,GO)),v=eF.exec(t),S=v!==null&&(Number(v[1])<1||Number(v[1])>Number(v[2])||Number(v[2])>=Number(v[3])),b=!o&&(u.includes(0)||Q(a,["return code zero","exit status zero"]))&&Q(d,VO)&&Q(a,["complete","completed","finished","succeeded","successful"])&&Q(a,["complete","terminal","result:"])&&!DO(d)&&!a.includes("diagnostic channel is missing");return g&&(m||f)&&(u.length>0||f||m)?"runtime_diagnostic":y?"absent_failure":nF.test(t)&&!S?Q(a,tF)?"source_diagnostic":"source_limit":b?"terminal_success":null}var Q=(e,t)=>t instanceof RegExp?t.test(e):t.some(n=>e.includes(n)),ud=e=>!KO.test(e)&&(Cp.test(e)||Ip.test(e))&&Q(e,[" at ","diagnostic","fatal:","error:","stderr","crashed","failed"])&&!Zr.test(e)&&!xp.test(e)&&!wn(e),BO=e=>Rp.test(e)&&!Zr.test(e)&&!bo.test(e),jO=e=>!wn(e)&&(Rp.test(e)||ZO.test(e))&&!bo.test(e);function HO(e){return[...e.matchAll(QO)].flatMap(t=>{let n=e.slice(0,t.index).split(/[.!?;\n]/).at(-1)?.toLowerCase()??"";if(Q(n,Zr))return[];let r=t[1]==="zero"?0:Number.parseInt(t[1]??"",10);return Number.isFinite(r)?[r]:[]})}var VO="command|process|subprocess|worker|execution|invocation|operation".split("|"),Rp=/\b(?:execution|operation|invocation|command|process|subprocess|worker|tool)(?:\s+invocation)?\b[^.!?;]*\b(?:start(?:ed)?|run|ran|execute[ds]?|occurred|completed|finished|terminated|crashed|failed|exited|performed)\b/i,ZO=/\b(?:execution|operation|invocation|command|process|subprocess|worker|tool)(?:\s+invocation)?\b[^.!?;]*\b(?:expected\s+to|would(?:\s+have)?|could(?:\s+have)?|might|may)\s+(?:have\s+)?fail(?:ed)?\b/i,bo=/\b(?:execution|operation|invocation|command|process|subprocess|worker|tool)(?:\s+invocation)?\b[^.!?;]*\b(?:did|was|has)\s+not\s+(?:start(?:ed)?|run|execute[ds]?|occurred|perform|produce|return)|\bnever\s+(?:started|ran|executed|occurred)|\bno\s+(?:tool\s+call|invocation|execution)\s+(?:occurred|started)\b/i,UO="exit|return|started|ran|executed|occurred|terminated|completed|finished|ended|failed|crashed".split("|"),Cp=/\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault|invalid\s+memory\s+access|memory\s+allocation\s+failed|out\s+of\s+memory|assertion\s+failed|command\s+not\s+found|no\s+such\s+file\s+or\s+directory|symbol\s+lookup\s+error|library\s+load\s+error|uncaught\s+exception)\b|\b(?:fatal:|error:)\s+\S/i,xp=/(?:\b(?:no|without|not)\s+(?:an?\s+)?(?:runtime\s+failure|failure|error|exception|fault|crash(?:ed)?|traceback|segmentation\s+fault)\b|\b(?:den(?:y|ies|ied)|ruled\s+out|excluded|unconfirmed|cannot\s+be\s+confirmed)\b[^.!?;]*\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault)\b|\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault|fatal:)\b[^.!?;]*\b(?:was\s+)?(?:(?:not|never)(?!\s+found\b)|ruled\s+out|excluded|unconfirmed|cannot\s+be\s+confirmed)\b|\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault|fatal:|error:)\b[^.!?;]*\b(?:prior|previous|example|fixture|template)\b|\b(?:if|unless|when|may|might|could(?!\s+not\b)|would|hypothetical|counterfactual|conditional|simulated)\b[^.!?;]*\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault|fatal:|error:)\b|\b(?:runtime\s+failure|runtimeerror|typeerror|referenceerror|syntaxerror|assertionerror|traceback|segmentation\s+fault|fatal:|error:)\b[^.!?;]*\b(?:if|unless|when|may|might|could(?!\s+not\b)|would|hypothetical|counterfactual|conditional|simulated)\b|\b(?:hypothetical|counterfactual|conditional|simulated)\b)/i,Ip=/\bcomplete (?:stderr|terminal output|runtime diagnostic|diagnostic)\b/i,KO=/\b(?:incomplete|partial|truncated|abbreviated)\s+(?:runtime\s+)?diagnostic\b/i,WO=/(?=[\s\S]*\b(?:contains|shows|reports|emits|returned|produced|emitted)\b)(?=[\s\S]*\b(?:breach|violat|crash(?:ed)?|runtime invariant|runtimeerror|typeerror|traceback|failure|fault)\b)/i,GO=/no diagnostic (?:payload|text|output|content)|failure (?:output|evidence) is explicitly empty/i,YO=/stdout: empty|stdout empty|standard output field is present and empty/i,XO=/stderr: empty|stderr empty|standard error field is present and empty/i,JO=["outcome-only record","outcome-only result","outcome-only evidence"],Zr=/\b(?:did\s+not|never|not(?!\s+found\b)|without|if|unless|when|may|might|could|would|expected|hypothetical)\b/i,QO=/\b(?:exit(?:ed)?(?:\s+with)?\s+(?:code|status)|exit[\s_-](?:code|status)|return(?:ed)?(?:\s+with)?[\s_-]?(?:code|status)|returned code)\s*(?::|is|was|reports?|returned)?\s*(-?\d+|zero)\b/gi,eF=/\b(?:returned|showing|displaying)\s+lines?\s+(\d+)\s*(?:-|through|to)\s*(\d+)\s+of\s+(\d+)\b/i,tF="permission denied|operation not permitted|no such file or directory|failed to read|could not read|unable to read|failed to open|could not open|unable to open".split("|"),nF=/^(?=[\s\S]*\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)|(?:maximum|max|allowed|configured|read)(?:\s+(?:allowed|read|token))?\s+(?:size|tokens?|limit|window)\s+(?:is|was)?\s*(?:exceeded|reached)|(?:(?:source|file|document|read|log)\s+)?(?:content|output|payload|window|view|read)\s+(?:was\s+)?(?:truncated|abbreviated)|(?:additional\s+source|remainder|rest|remaining\s+lines?)\s+(?:are\s+|remain\s+|was\s+)?(?:intentionally\s+)?(?:omitted|truncated|clipped|outside\s+(?:the\s+)?returned\s+view)|(?:bounded|measured)\s+partial\s+(?:source\s+)?view)\b)(?=[\s\S]*(?:^|[.!?]\s+)(?:the\s+)?(?:(?:(?:file|source|document|read|log)\s+)?(?:content|output|payload|window|view|read)|(?:returned|showing|displaying)|read\b(?:(?![.!?]\s+)[\s\S])*\b(?:content|output|payload|window|view|lines?))\b(?:(?![.!?]\s+)[\s\S])*(?:\((?:\d+(?:\.\d+)?\s*(?:kb|mb|gb|b)|\d+\s*tokens?)\)|\blines?\s+\d+(?:\s+(?:through|to)\s+|\s*-\s*)\d+\s+of\s+(?:a\s+)?\d+(?:[- ]line\s+source)?\b|\b\d+\s+lines?\s+(?:beginning|starting)\s+at\s+offset\s+\d+\s+from\s+(?:a\s+)?(?:source\s+)?(?:totaling\s+)?\d+\s+(?:total\s+)?lines?\b))[\s\S]+$/i;function ld(e,t=!1){let n=typeof e=="string"?[e]:e,r=n.map(g=>g.replace(/^\s*OBSERVATION:\s*(?=the\s+user\b)/i,"")),s=n.length>1&&r.slice(1).some(g=>g.trim())?r.slice(1):r,i=s.join(". ").replace(Cr," quoted-content "),o=oF.test(i)&&Be(i).some(g=>Lp.test(g)&&!aF.test(g));if(Ir(r).authoritative.length===0)return o?"document_payload":null;let c=Ir(s.map(g=>Mi(g,Bi))),u=Ir(r.map(g=>Mi(g,Bi))),l=c.authoritative.replace(Cr," quoted-content "),d=c.positive.replace(Cr," quoted-content "),p=u.positive.replace(Cr," quoted-content "),f=MO({text:d,authoritativeText:l,scopeText:r.join(". "),diagnosticScopeText:r.map(g=>Mi(g,Bi)).join(". "),documentPayload:o,contradiction:t});if(f!==null)return f;let m=sF.find(g=>rF[g].test(iF.includes(g)?d:l)&&(g!=="authorization_control"||!t&&!uF(p)));return m!==void 0?m:o?"document_payload":null}var rF={expected_source_diagnostic:/^(?=[\s\S]*\b(?:(?:complete|completed|bounded)\s+(?:diagnostic|validation)\s+(?:check|result|record)|(?:diagnostic|validation)\s+(?:check|result|record)\s+(?:is\s+)?complete)\b)(?=[\s\S]*\b(?:(?:expected|requested)\s+(?:observation|diagnostic|result)|expectedly\s+(?:failed|reported|returned))\b)(?=[\s\S]*\b(?:(?:failed|failure|invalid|error)\s+(?:source|document|syntax|parse|validation)|(?:source|document|syntax|parse)(?:\s+validation)?\s+(?:failed|failure|invalid|error))\b)[\s\S]+$/i,authorization_control:/^(?!\s*(?:observation:\s*)?(?:log:|["'`]))(?![\s\S]*\btraceback\s+follows\b)(?=[\s\S]*\b(?:authorization|permission|approval|decision)\s+(?:(?:is|was|remains)\s+)?(?:required|needed|pending|declined|denied|rejected)\b)(?=[\s\S]*(?:\bbefore\b[\s\S]*\b(?:operation|invocation|execution|capability|tool|command)\b|\b(?:required|needed)\s+(?:first|before\s+execution)\b))(?=[\s\S]*\b(?:(?:the\s+)?(?:capability|tool|command|operation)\s+(?:has\s+not|was\s+not|did\s+not)\s+(?:been\s+)?(?:invoked|executed|run|started)|execution\s+(?:has\s+not|was\s+not|did\s+not)\s+(?:start(?:ed)?|begin|begun)|no\s+(?:tool\s+call|invocation|execution)\s+(?:occurred|started|was\s+(?:performed|run)))\b)(?=[\s\S]*\b(?:no\s+(?:execution\s+)?result\s+(?:exists|was\s+(?:produced|created|returned))|(?:an?\s+)?(?:execution\s+)?result\s+(?:is\s+absent|does\s+not\s+exist|was\s+not\s+(?:produced|created|returned)))\b)[\s\S]+$/i,outcome_failure:/^(?=[\s\S]*\b(?:(?:complete|terminal)\s+(?:command|process|terminal|execution|outcome|result|record)|(?:command|process|terminal|execution|outcome|result|record)\s+(?:(?:is|was)\s+)?(?:complete|terminal)|execution\s+(?:is\s+)?complete|execution\s+(?:completed|finished)|outcome-only\s+record)\b)(?=[\s\S]*(?:\b(?:exit|return)(?:ed)?\s+(?:with\s+)?(?:code|status)?\s*(?:is\s+|was\s+|reports?\s+|returned\s+)?-?[1-9]\d*\b|\bnon[- ]?zero\s+(?:exit|return)\b))(?=[\s\S]*(?:\boutcome-only\s+(?:record|result|evidence)\b|\b(?:output|diagnostic)(?:\s+and\s+(?:output|diagnostic))?\s+(?:payloads?\s+|content\s+|channels?\s+)?(?:are|were|is|was)\s+(?:not\s+part\s+of|excluded\s+from)\b))[\s\S]+$/i},sF=["outcome_failure","expected_source_diagnostic","authorization_control"],iF=["outcome_failure","expected_source_diagnostic"],Lp=/^(?:(?:it|(?:the|this|that)\s+(?:returned\s+)?(?:document|source|payload))\s+|its\s+(?:contents?|body|text)\s+|(?:within|inside)\s+(?:it|(?:the|this|that)\s+(?:document|source|payload))[,;:]?\s+(?:(?:the|its)\s+(?:contents?|body|text)\s+)?|(?:a|the)\s+(?:complete|full)\s+(?:document|source)\s+(?:read|payload)\b[^.!?;]*\b)(?:contains?|includes?|quotes?|explains?|says?|states?|reports?|describes?)\b/i,Bi=e=>Lp.test(e),oF=/\b(?:a|the)\s+(?:complete|full)\s+(?:document|source)\s+(?:read|payload)\b\s+(?:(?:was\s+)?(?:returned|delivered|produced)(?:\s+in\s+full)?|(?:contains?|includes?|explains?|quotes?|says?|states?|reports?|describes?))\b/i,Cr=/(["'`])(?:\\.|(?!\1)[^\\])*\1/gu,aF=/\b(?:(?:does?|did|is|was)\s+not\s+(?:contain|include)\w*\s+(?:an?\s+|any\s+)?(?:content|payload|body|text|document|source)|(?:contain|include)\w*\s+(?:no|nothing|neither)\s*(?:content|payload|body|text|document|source)?)\b/i,cF=/\b(?:(?:execution|operation|invocation|command|process|tool)(?:\s+invocation)?\s+(?:(?:(?:did|was)\s+)?(?:(?:later|subsequently)\s+)?(?:start(?:ed)?|run|ran|execute[ds]?|occurred|completed|finished|terminated|crashed|failed|exited|performed)|(?:(?:later|subsequently)\s+)?returned\s+(?:output|a\s+result))|(?:an?\s+)?result\s+(?:was\s+)?(?:(?:later|subsequently)\s+)?(?:produced|returned))\b/i,uF=e=>cF.test(e);function lF(e){return Mr(e)||pp(e)||fF(e)||dF(e)||pF(e)}function dF(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 pF(e){return/^\s*(?:const|let|var)\s+[a-z_$][a-z0-9_$]*\s*=\s*["'`][\s\S]*\bdiff --git\b/i.test(e)}function fF(e){return/^\s*---\s+expected\b[\s\S]*^\s*\+\+\+\s+actual\b/im.test(e)}function mF(e){return ax(e)||gC(e)||gF(e)}function gF(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(r=>r.trim()).filter(r=>r.length>0&&!vn(r)).map(r=>Ft(r)??Dr(r)).filter(r=>r!==null);return n.length>=3&&n.filter(r=>r.strongAnchor).length>=2&&n.some(r=>r.nontrivialAnchor)}function hF(e){if(!e.commandExecutionToolFamily||!e.recoveredEnvelope||e.output===void 0)return bF;let t=mF(e.output),n=yF(e.output);return{source:t,readback:n,any:t||n}}var bF={source:!1,readback:!1,any:!1};function yF(e){let t=e.trim(),n=dd(t,kF),r=dd(t,wF);return bp(t)&&(hp(t)||n>=2||r>=2||r>=1&&vF(t))}function dd(e,t){return[...e.matchAll(t)].length}function vF(e){return/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\|[a-z0-9_.-]+\/)\S*\.\.\.\s*$/i.test(e)}var kF=/(?:^|[\r\n])\s*(?:\/|\.{1,2}\/|~\/|[a-zA-Z]:\\)?[^\s:\r\n]+\.(?:md|markdown|rst|txt|adoc):\d+(?::\d+)?:\s*\S/gi,wF=/(?:^|[\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 SF(e){let t=V(e);if(t.length===0||AF(t)||_F(t))return null;let n=t.split(/\r?\n/).map(i=>i.trim()).filter(i=>i.length>0);if(n.length!==1)return null;let r=uo(t);if(r.length!==1||r[0]?.line!==n[0])return null;let s=r[0];if(s===void 0)return null;switch(s.kind){case"source_location":return{consequenceBaseline:"high",source:!0};case"path_line":return{consequenceBaseline:"medium",source:!1};default:return null}}function AF(e){return/^\s*(?:see|refer to|open|read|check)\s+\S/i.test(e)}function _F(e){let t=EF(e);return/:\d+(?::\d+)?:\s*(?:(?:fatal\s+)?error|fatal|userwarning|warning):\s+\S/i.test(e)||t!==null&&TF(t)}function EF(e){return/:\d+(?::\d+)?:\s*(\S[\s\S]*)$/.exec(e)?.[1]??null}function TF(e){let t=e.trim();return RF(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 RF(e){return/^(?:tests?|build|command|process|subprocess)\s+failed\s+(?:is|are|was|were)\s+(?:documented|described|noted|mentioned)\b/i.test(e)}function Op(e,t="all"){if(t!=="unbounded"){let o=CF(e);if(o!==null||t==="complete_bounded")return o}if($r(e))return null;if(co(e))return ae(!1,"low");let n=FF(e);if(n!==null)return n;if(pd(e)&&bI(e))return ae(!0,"high");if(iI(e))return ae(!1,"high");if(lo(e))return ae(we(e),Ve(e)?"low":"high");let r=zF(e);if(r!==null)return r;let s=pd(e)?null:Br(e,{allowReadOwnedFlattenedFilePayloads:!0});if(s===null)return null;let i=s.shape==="readback"&&Ve(e)?"low":s.consequenceBaseline;return ae(s.source,i)}function CF(e){let t=e.replaceAll(`\r
|
|
22
|
+
`,`
|
|
23
|
+
`).split(`
|
|
24
|
+
`),n=t.flatMap((a,c)=>{let u=xF.exec(a);return u===null?[]:[{index:c,edge:u[1]?.toLowerCase(),label:u[2]?.toLowerCase()}]}),[r,s]=n;if(n.length!==2||r?.edge!=="begin"||s?.edge!=="end"||r.label!==s.label||r.index+1>=s.index)return null;let i=t.slice(r.index+1,s.index).join(`
|
|
25
|
+
`).trim(),o=[...t.slice(0,r.index),...t.slice(s.index+1)].join(" ");return i.length>0&&IF.test(o)&&!$r(o)?{...ae(!0,"low"),completeBoundary:!0}:null}var xF=/^\s*(BEGIN|END)\s+(SOURCE(?:\s+VIEW)?|DOCUMENT(?:\s+(?:VIEW|PAYLOAD))?)\s*$/i,IF=/^(?:(?:a|the)\s+)?(?:read|source)\s+(?:operation\s+)?(?:returned|produced|delivered)\b(?=[\s\S]*\bcomplete\b)(?=[\s\S]*\b(?:no\s+(?:content|source|text|data)\s+(?:lies|exists|remains)\s+outside\s+(?:the\s+)?declared\s+(?:view|boundary|payload)|no\s+(?:content|source|text|data)\s+(?:was|is)\s+omitted)\b)[\s\S]+$/i;function LF(e){let t=DF(e),n=t.length===0||lF(t)?null:Br(t,{rejectCommandTextWrappers:!0});return n===null?null:ae(n.source,n.consequenceBaseline)}function OF(e){let t=hF({commandExecutionToolFamily:e.commandExecutionToolFamily,recoveredEnvelope:e.recoveredEnvelope,output:e.output}),n=Br(e.output),r=e.commandExecutionToolFamily&&e.exitCode===0?SF(e.output):null,s=we(e.output)||t.source||n?.source===!0||r?.source===!0;return yI(e.output)||t.any||n!==null||r!==null||e.recoveredEnvelope&&sI(e.output)?ae(s,s?"high":"medium"):null}function ae(e,t){return{consequenceBaseline:t,source:e}}function FF(e){let t=PF(e);return t===null?null:NF(t.path,t.content)?ae(!1,"low"):Fp(t.path)||we(t.content)?ae(!0,"high"):ae(!1,"high")}function PF(e){let t=ji(e.trim(),"path",0);if(t===null)return null;let n=ji(e,"type",t.end),r=ji(e,"content",n?.end??t.end,{allowOpenEnded:!0});return n?.value.toLowerCase()==="file"&&r!==null?{content:r.value,path:t.value}:null}function ji(e,t,n,r={}){let s=e.toLowerCase(),i=`<${t}>`,o=`</${t}>`,a=s.indexOf(i,n);if(a<0)return null;let c=s.indexOf(o,a+i.length),u=c<0&&r.allowOpenEnded===!0?e.length:c,l=u<0?"":e.slice(a+i.length,u).trim(),d=c<0?e.length:c+o.length;return l.length>0?{end:d,value:l}:null}function NF(e,t){let n=e.toLowerCase(),r=t.toLowerCase(),s="/makefile|/cmakelists.txt|.cmake".split("|").some(o=>n.endsWith(o)),i="spdx-license-identifier|version =|patchlevel =|sublevel =|project(".split("|").some(o=>r.includes(o));return n.endsWith(".log")||Ve(t)||s&&i}function Fp(e){let t=e.toLowerCase();return Qi.test(t)||eo.test(t)}function zF(e){let t=Ze(e)??e,n=t.toLowerCase(),r=x(t),s=Fp(t)||we(t),i="contents of|content of|observation path|showing first|showing top".split("|").some(c=>n.includes(c))||n.includes("top")&&n.includes("lines"),o=Ji.some(c=>r.includes(c));if(!s&&!yn.test(n)||!i&&!o)return null;let a=n.includes(".log")||Ve(t);return ae(s&&!a,s&&!a?"high":"low")}function DF(e){let t=V(e);return Ze(t)??t}function pd(e){return e.includes(`
|
|
26
|
+
`)||e.includes("\r")||e.includes("\u2192")}function Ur(e,t,n,r,s,i,o={}){return{kind:e,polarity:t,origin:n,subject:r,evidenceLoss:"none",consequenceBaseline:s,...i!==void 0?{toolFamily:i}:{},...o}}function $F(e,t){let n=Ur;if(e.kind==="authorization")return n("control","neutral","status_text","tool","low",t,{recoveryHint:"await_authorization"});let r=qF(e.channel);if(e.kind==="payload"){let c=e.channel==="structured"||e.subject==="tool"?"high":"low";return n("payload","neutral",r,e.subject,c,t)}if(e.kind==="outcome"){let c=e.outcome==="success"?"low":"medium";return n("outcome",e.outcome,r,e.subject,c,t)}let s=e.diagnostic==="source_limit",i="subject"in e?e.subject:"source",o=e.diagnostic==="runtime"?"high":"medium",a={diagnosticClass:e.diagnostic,evidenceLoss:s?"partial":"none",recoveryHint:s?"narrow_evidence_scope":"inspect_diagnostic"};return n("diagnostic","failure",r,i,o,t,a)}function qF(e){return e==="search"?"transcript":e==="transcript"?e:`${e}_output`}var MF={absent_evidence:"absent",source_window_limit:"partial",indeterminate:"unknown"},BF={routine_bash_success_observation:ve("outcome","success"),structured_execution_success_observation:ve("outcome","success"),operation_success_observation:ve("outcome","success"),structured_tool_output_observation:ve("payload","neutral"),empty_failure_payload:ve("outcome","failure","absent_evidence"),observational_payload:ve("payload","neutral"),routine_search_output:ve("payload","neutral"),expected_diagnostic_failure:ve("diagnostic","failure"),terminal_failure:VF,rejected_tool_use_observation:ve("control","neutral"),unclassified_failure:ve("unknown","failure","indeterminate")};function jF(e){let t="syntax"in e?e.syntax:e.observationSyntax!==void 0?e.observationSyntax:BF[e.kind](e);return HF(t)}function HF(e){return{kind:e.kind,polarity:e.polarity,ownership:{owner:e.owner??(e.kind==="control"||e.toolFamily!==void 0?"tool":"source"),...e.toolFamily!==void 0?{capabilityFamily:e.toolFamily}:{}},subject:e.subject,evidenceLoss:e.evidenceLoss,provenance:{origin:e.origin},consequenceBaseline:e.consequenceBaseline,evidenceCertainty:e.evidenceCertainty??"determinate",...e.diagnosticClass===void 0?{}:{diagnosticClass:e.diagnosticClass},...e.recoveryHint===void 0?{}:{recoveryHint:e.recoveryHint}}}function VF(e){return e.failureDetail==="source_window_limit"||e.failureDetail==="diagnostic"?Lr(e,"diagnostic","failure"):e.failureDetail==="outcome_only"?Lr(e,"outcome","failure"):Lr(e,"unknown","failure","indeterminate")}function ve(e,t,n){return r=>Lr(r,e,t,n)}function Lr(e,t,n,r){let s=r??e.failureDetail,i=MF[s??"outcome_only"]??"none",o;e.kind==="expected_diagnostic_failure"?o="expected":t==="diagnostic"&&(o=s==="source_window_limit"?"source_limit":"runtime");let a=e.kind==="rejected_tool_use_observation"?"await_authorization":UF(i,o);return{kind:t,polarity:n,origin:"semantic_evidence",owner:e.toolFamily!==void 0?"tool":e.readsAsObservation?"source":"engine",subject:ZF(e,s),evidenceLoss:i,consequenceBaseline:e.consequenceBaseline,evidenceCertainty:s==="indeterminate"?"indeterminate":"determinate",...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{},...o!==void 0?{diagnosticClass:o}:{},...a!==null?{recoveryHint:a}:{}}}function ZF(e,t){return e.kind==="routine_bash_success_observation"||e.kind==="structured_execution_success_observation"?"command":e.kind==="routine_search_output"?"search":t==="source_window_limit"?"source":e.toolFamily!==void 0?"tool":"unknown"}function UF(e,t){return e==="absent"?"request_evidence":e==="partial"?"narrow_evidence_scope":e==="unknown"?"inspect_original_evidence":t!==void 0?"inspect_diagnostic":null}function KF(e){let{eventFact:t,summary:n,toolFamily:r}=e;if(t!==null&&t!=="source_limit")return fd(t,r);let s=Or(Op(n,"complete_bounded"),"read_output","source",r);if(s!==null)return{...s,completeBoundary:!0};if(t!==null)return fd(t,r);if(e.observationTranscript)return GF(e.observationTranscript,r);if(e.editOutputOutcome==="applied")return yo("semantic_evidence","tool","high",r);let i=YF(e);return i!==null?i:e.structuredOutputZeroExitSuccess?Ur("outcome","success","structured_output",Te(r)?"command":"tool","low",r):null}function fd(e,t){let n=["source_limit","source_diagnostic","expected_source_diagnostic"].includes(e),r=n||e==="runtime_diagnostic",s=e==="authorization_control",i=e==="document_payload";return Ur(s?"control":i?"payload":r?"diagnostic":"outcome",s||i?"neutral":e==="terminal_success"?"success":"failure",s?"status_text":i||n?"read_output":"command_output",s?"tool":i?"document":n?"source":"command",e==="runtime_diagnostic"||e==="source_diagnostic"?"high":n||e==="outcome_failure"||e==="absent_failure"?"medium":"low",t,WF(e))}function WF(e){return e==="authorization_control"?{completeBoundary:!0,recoveryHint:"await_authorization"}:e==="runtime_diagnostic"||e==="expected_source_diagnostic"?{completeBoundary:!0,diagnosticClass:e==="runtime_diagnostic"?"runtime":"expected",recoveryHint:"inspect_diagnostic"}:e==="source_diagnostic"?{completeBoundary:!0,diagnosticClass:"runtime",recoveryHint:"inspect_diagnostic"}:e==="source_limit"?{completeBoundary:!0,diagnosticClass:"source_limit",evidenceLoss:"partial",recoveryHint:"narrow_evidence_scope"}:e==="absent_failure"?{completeBoundary:!0,evidenceLoss:"absent",recoveryHint:"request_evidence"}:{completeBoundary:!0}}function GF(e,t){let n=e.shape==="abbreviated_file_view",r=e.shape==="concrete_test_result"||e.shape==="successful_test";return yo(n&&t==="read"?"read_output":"transcript",n?"source":r?"document":"tool",e.consequenceBaseline,t)}function yo(e,t,n,r,s){return Ur("payload","neutral",e,t,n,r,s)}function YF(e){let{structuredOutputEnvelope:t,summary:n,toolFamily:r}=e;if(r==="read"){let s=Or(Op(n,"unbounded"),"read_output","document","read");if(s!==null)return s}return Te(r)&&t.kind==="raw"?Or(LF(n),"command_output","document",r):t.kind!=="valid"&&t.kind!=="recovered"?null:Or(OF({commandExecutionToolFamily:Te(r),exitCode:t.output.exitCode,output:t.output.output,recoveredEnvelope:t.kind==="recovered"}),"structured_output","tool",r)}function Or(e,t,n,r){return e===null?null:yo(t,e.source?"source":n,e.consequenceBaseline,r,e.completeBoundary===!0?{completeBoundary:!0}:void 0)}function XF(e){let{toolFamily:t}=e,n=e.summary??"",r=[e.title??"",n],s=Te(t),i=wO(t),o=SO(e.summary,i),a=o.kind==="valid"||o.kind==="recovered"?o.output:null,c=t!=="edit"||o.kind==="invalid"?null:zR(o.kind==="raw"?n:void 0,a?.output),u=a!==null&&Lt(a.output),l=t==="read"&&a===null?Ki(n):null,d=a?.exitCode!==void 0&&a.exitCode!==0,p=a?.exitCode===0&&i==="exact",f=(l?.shape==="abbreviated_file_view"?l:null)??(s?tO(n):null)??(t===void 0?Ki(n):null),m=gn(up(n)),g=Lt(n,!0),y=ld(r,g),v=ld(r)==="authorization_control",S=y===null&&r.some(_O),b=KF({editOutputOutcome:c,eventFact:y,observationTranscript:f,structuredOutputEnvelope:o,structuredOutputZeroExitSuccess:p,summary:n,toolFamily:t}),_=md(b,"read_output"),Pt=_&&b?.subject==="source",Ke=b?.completeBoundary===!0,Yr=md(b,"structured_output")&&b?.subject==="source",Xr=t==="read"&&!S&&!Ke&&($r(n)||m&&!Pt);return{structuredOutputEnvelope:o,unsafeStructuredToolOutputEnvelope:o.kind==="recovered"||o.kind==="invalid",diagnosticStructuredToolOutput:a,structuredOutputExitFailure:d,editOutputOutcome:c,searchFailureDiagnostic:t==="search"&&OR(n),readFailureDiagnostic:Xr,structuredOutputFailureDiagnostic:u,rawToolOutputFailureDiagnostic:t!==void 0&&i!=="unsupported"&&a===null&&o.kind==="raw"&&b?.kind!=="control"&&!S&&!Ke&&Lt(n,v),strongSourceRuntimeDiagnostic:o.kind==="valid"&&Yr&&gn(o.output.output)||_&&m&&!Ke&&!S,diagnosticObservationTranscript:t===void 0&&sd(n),commandDiagnosticObservationTranscript:s&&sd(n),commandActualDiagnosticObservationTranscript:s&&rO(n),commandDiagnosticReferenceObservationTranscript:s&&nO(n),observationSyntax:b,textFallbackSuppressed:o.kind==="valid"||o.kind==="recovered"?!1:S}}function md(e,t){return e?.kind==="payload"&&e.origin===t}function JF(e){let t=Ze(e??"");return t===null?null:QF(t)}function QF(e){let t=e.trim();if(t.length===0||/[\r\n]/.test(t)||eP(t))return null;let n=gd(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&&hd(n))return{kind:"file_created",consequenceBaseline:"low"};let r=gd(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 r!==void 0&&hd(r)?{kind:"file_edited",consequenceBaseline:"low"}:null}function gd(e,t){for(let n of t){let r=n.exec(e)?.[1];if(r!==void 0)return r}}function hd(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 Gi(e,t){let n=x(e),r=po(n),s=pP(n),i=[];return(dP(n)||MI(s)&&!BI(s))&&!r&&i.push("routine_success"),r?i.push("terminal_failure"):ee(n,tR)&&i.push("expected_diagnostic"),ee(n,Ji)&&i.push("observational_readback"),cP(n)&&i.push("tagged_file"),(aP(n)||t==="read"&&lo(e))&&i.push("read_payload"),fp(n,e)&&i.push("search_result"),uP(n)&&i.push("source_code"),lP(n,e)&&i.push("log"),(eR.test(n)||ee(n,KT))&&i.push("build_metadata"),{shapes:i}}function tP(e,t){let n=Gi(e,t).shapes;return r=>n.includes(r)}function nP(e){if(e.type==="task.updated"&&e.status==="failed"&&e.title!==void 0&&e.evidence!==void 0){let t=Hr({title:e.title,...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{}})??void 0;return{syntax:$F(e.evidence,t)}}return rP(e)}function rP(e){if(e.type!=="task.updated"||e.status!=="failed"||e.title===void 0)return null;let t=Hr({title:e.title,...e.summary!==void 0?{summary:e.summary}:{},...e.toolFamily!==void 0?{toolFamily:e.toolFamily}:{}})??void 0,n=e.summary!==void 0&&Gi(e.title,t).shapes.includes("terminal_failure")?{shapes:["terminal_failure"]}:Gi(e.summary??e.title,t),r=XF({...e,toolFamily:t});return{...sP({summary:e.summary,signals:r,text:n,toolFamily:t}),text:n}}function sP(e){let{signals:t,summary:n,text:r,toolFamily:s}=e,i=r.shapes.includes.bind(r.shapes),o=t.observationSyntax;if(o?.completeBoundary&&o.kind!=="control")return bd(o);let a=FO({summary:n,signals:t,toolFamily:s,searchResultText:i("search_result"),terminalFailureText:i("terminal_failure")});if(a!==null)return Ee("terminal_failure",!1,a.consequenceBaseline,s,{failureDetail:a.failureDetail});if(s!==void 0&&cO(n))return Ee("empty_failure_payload",!1,"medium",s,{failureDetail:"absent_evidence"});let c=s===void 0?JF(n):null;return c?Ee("operation_success_observation",!0,c.consequenceBaseline):o!==null?bd(o):i("routine_success")&&t.structuredOutputEnvelope.kind!=="unsupported"&&(!t.unsafeStructuredToolOutputEnvelope||t.diagnosticStructuredToolOutput?.exitCode===0)?Ee("routine_bash_success_observation",!0,"low",s):i("expected_diagnostic")?Ee("expected_diagnostic_failure",!1,"medium",s):i("search_result")?Ee("routine_search_output",!0,i("terminal_failure")?"high":"low",s):s==="edit"&&t.structuredOutputEnvelope.kind!=="invalid"&&(i("observational_readback")||i("tagged_file")||i("read_payload")||t.editOutputOutcome==="applied")?Ee("observational_payload",!0,"high",s):Ee("unclassified_failure",!1,"high",s,{failureDetail:"indeterminate"})}function bd(e){return Ee(oP(e),e.kind==="payload"||e.kind==="control"||e.polarity==="success",e.consequenceBaseline,e.toolFamily,{observationSyntax:e,...iP(e)})}function iP(e){return e.diagnosticClass==="source_limit"?{failureDetail:"source_window_limit"}:e.kind==="diagnostic"?{failureDetail:"diagnostic"}:e.kind!=="outcome"||e.polarity!=="failure"?{}:{failureDetail:e.evidenceLoss==="absent"?"absent_evidence":"outcome_only"}}function Ee(e,t,n,r,s={}){return{kind:e,...s,...r!==void 0?{toolFamily:r}:{},readsAsObservation:t,consequenceBaseline:n}}function oP(e){return e.kind==="control"?"rejected_tool_use_observation":e.kind==="diagnostic"?e.diagnosticClass==="expected"?"expected_diagnostic_failure":"terminal_failure":e.kind==="outcome"?e.polarity==="failure"?"terminal_failure":"structured_execution_success_observation":e.origin==="structured_output"?"structured_tool_output_observation":"observational_payload"}function aP(e){return yn.test(e)?ee(e,VT)||(Qi.test(e)||eo.test(e))&>.test(e)||YT.test(e):!1}function cP(e){return ee(e,Ed)&&yn.test(e)}function uP(e){return Qi.test(e)||eo.test(e)||XT.test(e)||JT.test(e)}function lP(e,t){return QT.test(e)||Ve(t)||ee(e,UT)}function dP(e){let t=e.replace(/\.+$/,""),n=t.indexOf(" observation "),r=n>0&&!t.slice(0,n).includes(" ")?t.slice(n+13):t,s=ZT.map(i=>x(i));return Pp().some(i=>s.some(o=>{let a=i.length>0?`${i} ${o}`:o;return r===a}))}function pP(e){for(let t of Pp().filter(Boolean)){if(e===t)return"";if(e.startsWith(`${t} `))return e.slice(t.length+1)}return e}function Pp(){return["","observation","bash failure","tool failure"]}function fP(e){if(e.isQuestion)return[];let t=e.tokens,n=[],r=mP(t);if(r===null)return n;if(t[r]==="replace"){let s=t.indexOf("with",r+1);return s===-1?[]:[{start:r,end:s+1,kind:"supersedes",order:0,polarity:"asserted"}]}for(let s=0;s<t.length;s+=1)t[s]==="instead"&&t[s+1]!=="of"&&n.push({start:s,end:s+1,kind:"supersedes",order:0,polarity:gP(t,s)?"negated":"asserted"});return n}function mP(e){if(hP(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 gP(e,t){let n=e.slice(Math.max(0,t-4),t);return n.includes("not")||n.includes("never")||n.at(-1)==="no"||xr(n,["do","not"])||xr(n,["don","t"])||xr(n,["did","not"])||xr(n,["didn","t"])}function hP(e,t){return t.some(n=>n.every((r,s)=>e[s]===r))}function xr(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(t.every((r,s)=>e[n+s]===r))return!0;return!1}function bP(e){let t=new Set,n=[];for(let r of e){let s=`${r.kind}:${r.target??""}`;t.has(s)||(t.add(s),n.push(r))}return n}var yP=12,vP=new Set(["never","not"]),kP=new Set(["could","expected","hopefully","may","might","should","would"]),wP=new Set(["check","confirm","determine","ensure","see","validate","verify"]),SP=new Set(["can","could","need","needed","needs","please","rerun","retry","run","should","to","try","trying","will","would"]),Np=new Set(["if","that","whether"]),AP=[["are","we"],["can","you"],["could","you"],["did","it"],["do","you"],["does","it"],["is","it"],["should","i"],["should","we"],["was","it"],["would","you"]];function yd(e,t){let r=e.tokens.slice(Math.max(0,t-yP),t),s=r.slice(-4);return _P(s)?"negated":e.isQuestion||TP(r)?"prospective":EP(s)?"modal":RP(r)?"prospective":"asserted"}function _P(e){return e.some(t=>vP.has(t))||Yi(e,["did","n","t"])||Yi(e,["did","not"])}function EP(e){return e.some(t=>kP.has(t))}function TP(e){return AP.some(t=>Yi(e,t))}function RP(e){for(let t=0;t<e.length;t+=1){let n=e[t];if(!wP.has(n))continue;let r=e[t-1],s=e[t+1];if(r===void 0||xP(r)||SP.has(r)||s!==void 0&&Np.has(s)||CP(e,t))return!0}return!1}function CP(e,t){return e.slice(t+1,t+5).some(n=>Np.has(n))}function xP(e){return/^\d+$/.test(e)}function Yi(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(t.every((r,s)=>e[n+s]===r))return!0;return!1}var vd=new Map([["repeats",0],["supersedes",1],["escalates",2]]);function zp(e){let t=FP(e),n=LP(e,Td,[])||t.some(u=>u.polarity==="asserted"&&(u.kind==="escalates"||u.kind==="supersedes")),r=PP(t),s=[...r.values()].sort((u,l)=>u.order-l.order).filter(u=>u.polarity==="asserted"&&(u.kind==="resolves"||n)&&(u.kind!=="resolves"||u.direct||n)),i=s.at(-1);if(i===void 0)return[];if(i.kind==="resolves")return[{kind:"same_issue"},{kind:"resolves"}];let o=r.get("resolves"),a=o?.polarity==="asserted"?o.order:void 0,c=s.filter(u=>u.kind!=="resolves"&&(a===void 0||u.order>a)).sort(IP).map(u=>({kind:u.kind}));return c.length===0?[]:bP([{kind:"same_issue"},...c])}function IP(e,t){return(vd.get(e.kind)??Number.MAX_SAFE_INTEGER)-(vd.get(t.kind)??Number.MAX_SAFE_INTEGER)||e.order-t.order}function LP(e,t,n){for(let r of OP(e,t,n))if(r.polarity==="asserted")return!0;return!1}function OP(e,t,n){let r=[];for(let{tokens:s}of Dp(e)){let i=n.flatMap(a=>pt(s,je(a))),o=i.map(a=>({start:a.start,polarity:"negated"}));for(let a of t)for(let c of pt(s,je(a)))o.push({start:c.start,polarity:Pr(c,i)||$p(s,c.start)?"negated":"asserted"});o.sort((a,c)=>a.start-c.start).forEach(a=>r.push({polarity:a.polarity}))}return r}function FP(e){let t=[],n=0;for(let r of Dp(e)){let s=[...Hi(r,"repeats",rR,sR),...NP(r),...Hi(r,"supersedes",cR,[]),...fP(r),...Hi(r,"escalates",uR,lR)].sort((i,o)=>i.start-o.start||i.end-o.end);for(let i of s)t.push({kind:i.kind,order:n,polarity:i.polarity,...i.direct!==void 0?{direct:i.direct}:{}}),n+=1}return t}function PP(e){let t=new Map;for(let n of e)t.set(n.kind,n);return t}function Hi(e,t,n,r){let s=r.flatMap(o=>pt(e.tokens,je(o))),i=s.map(o=>({...o,kind:t,order:0,polarity:"negated"}));for(let o of n)for(let a of pt(e.tokens,je(o)))i.push({...a,kind:t,order:0,polarity:Pr(a,s)||$p(e.tokens,a.start)?"negated":"asserted"});return i}function NP(e){let t=oR.flatMap(r=>pt(e.tokens,je(r))),n=t.map(r=>({...r,kind:"resolves",order:0,polarity:"negated"}));for(let r of iR)for(let s of pt(e.tokens,je(r)))n.push({...s,kind:"resolves",order:0,polarity:Pr(s,t)?"negated":yd(e,s.start),direct:!0});for(let r of aR)for(let s of pt(e.tokens,je(r)))n.push({...s,kind:"resolves",order:0,polarity:Pr(s,t)?"negated":yd(e,s.start),direct:!1});return n}function Dp(e){let t=[],n=0;for(let s of e.matchAll(/[!?;:]+|\.+(?=\s|$)|\b(?:but|however|yet)\b/gi)){let i=s.index,o=kd(e.slice(n,i),s[0].includes("?"));o!==null&&t.push(o),n=i+s[0].length}let r=kd(e.slice(n),!1);return r!==null&&t.push(r),t}function kd(e,t){let n=je(e);return n.length===0?null:{tokens:n,isQuestion:t}}function je(e){return dR(e).match(/[a-z0-9]+/g)??[]}function pt(e,t){if(t.length===0||t.length>e.length)return[];let n=[];for(let r=0;r<=e.length-t.length;r+=1)t.every((s,i)=>e[r+i]===s)&&n.push({start:r,end:r+t.length});return n}function Pr(e,t){return t.some(n=>e.start>=n.start&&e.end<=n.end)}function $p(e,t){let n=e.slice(Math.max(0,t-4),t);return n.includes("not")||n.includes("never")||n.at(-1)==="no"||wd(n,["did","not"])||wd(n,["didn","t"])}function wd(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(t.every((r,s)=>e[n+s]===r))return!0;return!1}function Xi(e){return[...new Set(e)]}function zP(e){if(ee(e,_d))return!1;if(ee(e,qT))return!0;let t=x(e);return MT.some(n=>n.test(t))}function DP(e){return ee(e,_d)?null:ee(e,BT)?"blocking":ee(e,jT)?"waiting":null}function pn(e,t,n){return tP(e,n)("routine_success")||n==="read"||n==="search"?t:$P(e,HT)?"high":(n==="write"||n==="edit"||Te(n))&&t==="low"?"medium":t}function $P(e,t){return t.some(n=>qP(e,n))}function qP(e,t){return Rd(e,t)}function MP(e){switch(e){case"approval":return"approval_request";case"choice":return"question_request";case"form":return"form_request"}}function BP(e){switch(e){case"approval":return"permission_request";case"choice":case"form":return"question_request"}}function jP(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 fn(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 HP(e){switch(e){case"high":return"A failed status carried high-consequence observation output that should be reviewed.";case"medium":case"low":return}}function VP(e){if(e.some(t=>t.kind==="resolves"))return"A related episode appears resolved and can update attention state."}function xt(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 Sd(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 ZP(){return["task update status explicitly indicates completed work"]}function UP(e){return e?.polarity==="neutral"||e?.polarity==="success"}function qp(e){let t=nP(e);return t!==null?jF(t):null}function vo(e){return XP(WP(e),KP(e))}function KP(e){let t=e.semanticHints;if(e.type!=="task.updated"||e.status!=="failed"||t===void 0)return t;let n=t.relationHints&&{relationHints:t.relationHints},r=qp(e);return e.evidence===void 0&&r!==null&&r.evidenceLoss==="partial"&&t.confidence==="low"&&t.factors?.includes(Vi)===!0?{...n,confidence:"low",factors:[Vi],...t.reasons===void 0?{}:{reasons:t.reasons}}:n}function WP(e){switch(e.type){case"task.started":return{intentFrame:"task_started",activityClass:"session_status",consequence:"low",factors:["task.started"],relationHints:[],confidence:"high",reasons:Sd("task_started"),provenance:z(["intentFrame","activityClass","consequence","confidence"])};case"task.updated":return GP(e);case"human.input.requested":return YP(e);case"task.completed":return{intentFrame:"completion",activityClass:"tool_completion",consequence:"low",factors:["task.completed"],relationHints:[],confidence:"high",reasons:Sd("completion"),provenance:z(["intentFrame","activityClass","consequence","confidence"])};case"task.cancelled":return{intentFrame:"cancellation",activityClass:"status_update",consequence:"low",...e.reason?{whyNow:fn("completed",{wasCancelled:!0})??"Work was cancelled and may need review."}:{},factors:["task.cancelled"],relationHints:[],confidence:"high",reasons:xt("completed",{wasCancelled:!0}),provenance:{...z(["intentFrame","activityClass","consequence","confidence"]),...e.reason?z(["whyNow"]):{}}};default:return sN(e)}}function GP(e){let t=Bp(e.title,e.summary),n=x(`${e.title} ${e.summary??""}`),r=zP(n),s=DP(n),i=zp(t),o=e.status==="failed"&&e.evidence!==void 0,a=Hp(e.title,e.summary,e.toolFamily),c=e.status==="failed"?qp(e):null,u=c?.recoveryHint==="await_authorization",{toolFamily:l,source:d}=jp(a,!u&&!o&&c===null),p=i.length>0?z(["relationHints"]):{},f=VP(i),m=UP(c),g=c?.diagnosticClass==="expected";switch(e.status){case"failed":if(m){let y=c?.consequenceBaseline??"high",v=HP(y)??f;return{intentFrame:"status_update",activityClass:"status_update",...l?{toolFamily:l}:{},consequence:y,...v!==void 0?{whyNow:v}:{},factors:["task.updated","failed",o?"source_evidence":"observational_failure"],relationHints:i,confidence:"high",reasons:[o?"typed source evidence determines the failed update meaning":"task status indicates failure but the update reads like observational output"],provenance:{...(o?Ot:z)(["intentFrame","activityClass","consequence",...v!==void 0?["whyNow"]:[],"confidence"]),...It(d),...p}}}return{intentFrame:"failure",activityClass:"tool_failure",...l?{toolFamily:l}:{},consequence:o?c?.consequenceBaseline??"high":pn(n,c?.consequenceBaseline??"high",l),whyNow:fn("failed")??"Work has failed and should be reviewed.",factors:["task.updated","failed",...o?["source_evidence"]:[]],relationHints:i,confidence:o?"high":r?"medium":"high",reasons:o?["typed source evidence determines the failed update meaning"]:g?[...xt("failed",{impliedAsk:r}),"failure content looks like expected diagnostic output from repro work"]:xt("failed",{impliedAsk:r}),provenance:{...(o?Ot:z)(["intentFrame","activityClass","consequence","whyNow","confidence"]),...It(d),...p}};case"blocked":return{intentFrame:"blocked_work",activityClass:"status_update",...l?{toolFamily:l}:{},consequence:pn(n,"medium",l),whyNow:fn("blocked")??"Work is blocked and may require operator attention.",factors:["task.updated","blocked"],relationHints:i,confidence:r?"medium":"high",reasons:xt("blocked",{impliedAsk:r}),provenance:{...z(["intentFrame","activityClass","consequence","whyNow","confidence"]),...It(d),...p}};case"running":case"waiting":case"completed":return e.status==="completed"&&s===null&&!r?{intentFrame:"completion",activityClass:e.activityClass??"tool_completion",...l?{toolFamily:l}:{},consequence:pn(n,"low",l),...f!==void 0?{whyNow:f}:{},factors:["task.updated","completed"],relationHints:i,confidence:"high",reasons:ZP(),provenance:{...z(["intentFrame","consequence",...f!==void 0?["whyNow"]:[],"confidence"]),...e.activityClass===void 0?z(["activityClass"]):Ot(["activityClass"]),...It(d),...p}}:{intentFrame:s==="blocking"?"blocked_work":"status_update",activityClass:"status_update",...l?{toolFamily:l}:{},consequence:pn(n,s==="blocking"?"medium":"low",l),...(()=>{let y=s==="blocking"?fn("blocked"):r?fn(e.status,{impliedAsk:r}):f;return y!==void 0?{whyNow:y}:{}})(),factors:["task.updated",e.status,...s==="blocking"?["semantic blocking signal"]:[]],relationHints:i,confidence:s==="blocking"?"medium":r?"low":"high",reasons:s==="blocking"?[...xt("blocked"),"status wording indicates work cannot continue yet"]:xt(e.status,{impliedAsk:r}),provenance:{...z(["intentFrame","activityClass","consequence","confidence"]),...It(d),...s==="blocking"||r||f!==void 0?z(["whyNow"]):{},...p}}}}function YP(e){let t=Hp(e.title,e.summary,e.toolFamily),{toolFamily:n,source:r}=jp(t,e.request.kind==="approval"),s=Bp(e.title,e.summary),i=x(s),o=zp(s),a=e.riskHint??rN(e.request.kind,n),c=pn(i,a,n),u=o.length>0?z(["relationHints"]):{},l=e.riskHint==="high",d=l?"high":e.request.kind==="approval"&&n?"medium":"low";return{intentFrame:MP(e.request.kind),activityClass:BP(e.request.kind),...n?{toolFamily:n}:{},consequence:c,whyNow:jP(e.request.kind,c),factors:["human.input.requested",e.request.kind],relationHints:o,confidence:d,reasons:[e.riskHint?"source provided an explicit risk hint":"request kind establishes an explicit operator decision point",...r==="explicit"?["tool family was supplied by the source event"]:r==="inferred"?["tool family was inferred from approval wording"]:[]],provenance:{...z(["intentFrame","activityClass","whyNow"]),...It(r),...e.riskHint?{...Ot(["consequence"]),...l?Ot(["confidence"]):z(["confidence"])}:z(["consequence","confidence"]),...u}}}function z(e){return Mp(e,"inferred")}function Ot(e){return Mp(e,"source")}function Mp(e,t){return Object.fromEntries(e.map(n=>[n,t]))}function It(e){switch(e){case"explicit":return Ot(["toolFamily"]);case"inferred":return z(["toolFamily"]);case"none":return{};default:return oN(e)}}function Bp(e,t){return t?`${e}. ${t}`:e}function jp(e,t){let n=Hr(e);if(n)return{toolFamily:n,source:"explicit"};if(!t)return{source:"none"};let r=sO(e);return r?{toolFamily:r,source:"inferred"}:{source:"none"}}function XP(e,t){if(!t)return e;let n=QP(t),r=eN(e.confidence,t.confidence),s=tN(e.relationHints,t.relationHints);return{...e,...n,confidence:r,factors:Xi([...e.factors??[],...t.factors??[]]),relationHints:s,reasons:Xi([...e.reasons??[],...t.reasons??[]]),provenance:{...e.provenance??{},...JP(e,{...n,confidence:r,relationHints:s},t)}}}function JP(e,t,n){return{...dt("intentFrame",e,t),...dt("activityClass",e,t),...dt("toolFamily",e,t),...dt("consequence",e,t),...dt("whyNow",e,t),...nN(e.relationHints,n.relationHints),...dt("confidence",e,t),...dt("abstained",e,t)}}function QP(e){let t={};for(let[n,r]of Object.entries(e))r!==void 0&&n!=="confidence"&&n!=="factors"&&n!=="relationHints"&&n!=="reasons"&&(t[n]=r);return t}function eN(e,t){return t===void 0?e:Ad[t]<Ad[e]?t:e}var Ad={high:3,low:1,medium:2};function tN(e,t){if(!t||t.length===0)return e;let n=new Set,r=[];for(let s of[...e,...t]){let i=Nr(s);if(n.has(i))continue;let o=r.findIndex(a=>a.kind===s.kind&&a.target===void 0);if(s.target!==void 0&&o>=0){n.delete(Nr(r[o])),r[o]=s,n.add(i);continue}s.target===void 0&&r.some(a=>a.kind===s.kind&&a.target!==void 0)||(n.add(i),r.push(s))}return r}function dt(e,t,n){return!(e in n)||n[e]===t[e]?{}:{[e]:"hint"}}function nN(e,t){if(!t||t.length===0)return{};let n=new Set(e.map(Nr));return t.some(s=>!n.has(Nr(s)))?{relationHints:"hint"}:{}}function Nr(e){return`${e.kind}:${e.target??""}`}function rN(e,t){switch(e){case"approval":return t==="read"||t==="search"?"low":"medium";case"choice":case"form":return"medium";default:return iN(e)}}function Hp(e,t,n){return{title:e,...t!==void 0?{summary:t}:{},...n!==void 0?{toolFamily:n}:{}}}function sN(e){throw new Error(`Unhandled source event in semantic interpreter: ${JSON.stringify(e)}`)}function iN(e){throw new Error(`Unhandled human input request kind in semantic interpreter: ${e}`)}function oN(e){throw new Error(`Unhandled tool family provenance source in semantic interpreter: ${e}`)}function Vp(e={}){return{confidence:"low",factors:[Vi],reasons:[e.reason??`source ${e.status==="failed"?"failure ":""}evidence was truncated before Aperture saw the full output`]}}function aN(e={}){let t=e.base,n=e.semantic,r=t?.whyNow??n?.whyNow??e.fallbackWhyNow,s=Xi([...t?.factors??[],...n?.factors??[],...e.extraFactors??[]]);if(!(t===void 0&&r===void 0&&s.length===0))return{...t??{},...r!==void 0?{whyNow:r}:{},...s.length>0?{factors:s}:{}}}function Zp(e){let t=vo(e),n=e.type==="human.input.requested"&&e.riskHint!==void 0?{riskHint:e.riskHint}:void 0;return uN(dN(e),t,n)}function cN(e){switch(e){case"high":return"critical";case"medium":case"low":return"focused";default:return mN(e)}}function uN(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 lN(e,t,n);default:return pN(e)}}function lN(e,t,n){let{toolFamily:r,...s}=e,i=e.consequence??t.consequence??n.riskHint??"medium",o=e.tone??cN(i),a=aN({base:e.provenance,semantic:t}),c=e.request.kind==="approval"?e.toolFamily??t.toolFamily:void 0;return{...s,...c!==void 0?{toolFamily:c}:{},...e.activityClass===void 0&&t.activityClass!==void 0?{activityClass:t.activityClass}:{},semantic:t,tone:o,consequence:i,...a!==void 0?{provenance:a}:{}}}function dN(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":{let t={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}:{},...e.progress!==void 0?{progress:e.progress}:{},...e.context!==void 0?{context:e.context}:{}};return e.status==="failed"?{...t,status:"failed",...e.evidence!==void 0?{evidence:e.evidence}:{}}:{...t,status:e.status}}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 fN(e)}}function pN(e){throw new Error(`Unhandled ApertureEvent in semantic normalizer: ${JSON.stringify(e)}`)}function fN(e){throw new Error(`Unhandled SourceEvent in semantic normalizer: ${JSON.stringify(e)}`)}function mN(e){throw new Error(`Unhandled consequence level in semantic normalizer: ${e}`)}function gN(e){return typeof e=="string"&&e.trim().length>0?e:void 0}function Up(e,t){if(!e||typeof e!="object")return;let n=e[t];return Array.isArray(n)&&n.every(r=>typeof r=="string")?n:void 0}function h(e,t){if(!(!e||typeof e!="object"))return gN(e[t])}function Wr(e,t){if(!e||typeof e!="object")return;let n=e[t];return typeof n=="boolean"?n:void 0}function hN(e,t){if(!e||typeof e!="object")return;let n=e[t];return typeof n=="number"&&Number.isFinite(n)?n:void 0}function bN(e,t){if(!e||typeof e!="object")return;let n=e[t];return n&&typeof n=="object"&&!Array.isArray(n)?n:void 0}function yN(e){let t=bN(e,"evidence");if(!t||typeof t.kind!="string")return;let n=["command","document","search","source","tool"],r=["command","read","search","structured","transcript"];if((t.kind==="outcome"||t.kind==="diagnostic")&&(t.kind==="outcome"?t.outcome==="success"||t.outcome==="failure":t.diagnostic==="runtime"||t.diagnostic==="expected")&&n.includes(String(t.subject))&&r.includes(String(t.channel))&&t.complete===!0)return t;if(t.kind==="diagnostic"&&t.diagnostic==="source_limit"&&t.channel==="read"){let s=t.window;if(s&&typeof s=="object"){let i=s,o=["offset","length","total"].every(a=>{let c=i[a];return typeof c=="number"&&Number.isInteger(c)&&c>=0});if((i.unit==="bytes"||i.unit==="lines")&&o)return t}}if(t.kind==="payload"&&["document","search","source","tool"].includes(String(t.subject))&&r.includes(String(t.channel))&&t.complete===!0||t.kind==="authorization"&&t.state==="required"&&t.execution==="not_started"&&t.result==="absent")return t}function Gr(e){return Wr(e,"logsTruncated")===!0||Wr(e,"outputTruncated")===!0||Wr(e,"sourceTruncated")===!0}function Kp(e){let t=yN(e);if(t)return Gr(e)&&!(t.kind==="diagnostic"&&t.diagnostic==="source_limit")?void 0:t;if(Gr(e))return;let n=h(e,"stderr"),r=hN(e,"exitCode"),s=h(e,"command");if(!(!n||s===void 0&&r===void 0))return{kind:"diagnostic",diagnostic:"runtime",subject:"command",channel:"command",complete:!0}}function vN(e){let t=h(e,"summary")??h(e,"stderr")??h(e,"failureReason")??Rl();return Gr(e)?`${t} Paperclip reports that the diagnostic output was truncated.`:t}function Wp(e){return h(e,"documentId")!==void 0||h(e,"documentKey")!==void 0||h(e,"scope")?.toLowerCase()==="document"||Wr(e,"documentScoped")===!0}function kN(e){let t={paperclipEventType:e.eventType,...e.actorId?{actorId:e.actorId}:{},...e.actorType?{actorType:e.actorType}:{}};(e.eventType==="issue.comment.created"||e.eventType==="issue.comment_added")&&Wp(e.payload)&&(t.paperclipCommentScope="document");let n=Kp(e.payload);return e.eventType==="agent.run.failed"&&n&&(t.sourceEvidenceKind=n.kind),t}function So(e){return e?oe(e):void 0}function wN(e){let t=e.entityType??"event",n=e.entityId??e.eventId;return he(t,n)}function SN(e){let t=h(e,"issueId")??h(e,"sourceIssueId")??h(e,"parentIssueId")??Up(e,"issueIds")?.[0];return t?he("issue",t):null}function AN(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 ko(e){let t=h(e,"status")?.toLowerCase(),n=[h(e,"summary"),h(e,"description"),h(e,"bodySnippet"),h(e,"title"),h(e,"issueTitle")].filter(r=>!!r).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 _N(e){let t=h(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 EN(e){let t=h(e.payload,"title")??h(e.payload,"plan")??h(e.payload,"name");if(t)return t;let n=So(h(e.payload,"type"));return n?`${n} approval`:"Approval requested"}function Gp(e){return h(e.payload,"type")}function TN(e){return Gp(e)==="budget_override_required"}function wo(e,t){let n=h(e.payload,"identifier"),r=h(e.payload,"issueTitle")??h(e.payload,"title");return n&&r?`${n} ${r}`:n?`${n} ${t}`:r||t}function RN(e){if(!(!e||e.length===0))return{relationHints:e.map(t=>({kind:"same_issue",target:Ar(t)}))}}function CN(e){return[h(e,"bodySnippet"),h(e,"summary"),h(e,"description"),h(e,"title"),h(e,"issueTitle")].filter(t=>!!t).join(`
|
|
27
|
+
`)}function Kr(e){if(e.entityType!=="issue"||!e.entityId)return;let t=Ci({text:CN(e.payload),identifier:h(e.payload,"identifier"),issueTarget:Ar(e.entityId)});return{...t.semanticConfidence?{confidence:t.semanticConfidence}:{},...t.relationHints.length>0?{relationHints:t.relationHints}:{}}}function xN(e,t){return{whyNow:cn(e),factors:e?["budget stop","approval","operator decision"]:["approval","operator decision"],...RN(t)??{}}}function IN(){return{whyNow:Ei(),factors:["pending approval"]}}function Yp(e){let t=Gr(e);return{intentFrame:"failure",whyNow:Cl(),factors:["run failed","operator review",...t?["source evidence truncated"]:[]],...t?Vp({status:"failed"}):{}}}function Ue(e){return vo(e)}function Ao(e){let t=e.eventType,n=wN(e),r=AN(e);switch(t){case"approval.created":{let s=Gp(e),i=TN(e),o=h(e.payload,"requestedAmount"),a=h(e.payload,"reason"),c=h(e.payload,"decisionContext"),u=Up(e.payload,"issueIds"),l=EN(e),d=h(e.payload,"summary")??wr(i),p=Ue({id:`${e.eventId}:approval`,type:"human.input.requested",taskId:n,interactionId:be(n,"approval"),timestamp:e.occurredAt,source:r,toolFamily:"paperclip",activityClass:"permission_request",title:l,summary:d,request:{kind:"approval"},riskHint:i?"high":"medium",semanticHints:xN(i,u)});return{id:`${e.eventId}:approval`,type:"human.input.requested",taskId:n,interactionId:be(n,"approval"),timestamp:e.occurredAt,source:r,toolFamily:"paperclip",activityClass:"permission_request",title:l,summary:d,consequence:i?"high":"medium",tone:"focused",request:{kind:"approval"},semantic:p,context:{items:[...So(s)?[br(So(s))]:[],...o?[yr(o)]:[],...a?[vr(a)]:[],...c?[kr(c)]:[],...u?.length?[sl(String(u.length))]:[]]},provenance:{whyNow:cn(i),factors:i?["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:r,summary:h(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 s=wo(e,"Issue created"),i=h(e.payload,"description")??"A new issue entered Paperclip.",o=ko(e.payload);return o==="running"?{id:`${e.eventId}:issue-created`,type:"task.started",taskId:n,timestamp:e.occurredAt,source:r,title:s,summary:i,semantic:Ue({id:`${e.eventId}:issue-created`,type:"task.started",taskId:n,timestamp:e.occurredAt,source:r,title:s,summary:i,semanticHints:Kr(e)})}:{id:`${e.eventId}:issue-created-status`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:r,title:s,summary:i,activityClass:"status_update",status:o,semantic:Ue({id:`${e.eventId}:issue-created-status`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:r,title:s,summary:i,activityClass:"status_update",status:o,semanticHints:Kr(e)})}}case"issue.updated":{let s=wo(e,"Issue updated"),i=h(e.payload,"summary")??h(e.payload,"description"),o=ko(e.payload);return{id:`${e.eventId}:issue-updated`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:r,title:s,summary:i,activityClass:"status_update",status:o,semantic:Ue({id:`${e.eventId}:issue-updated`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:r,title:s,...i!==void 0?{summary:i}:{},activityClass:"status_update",status:o,semanticHints:Kr(e)})}}case"issue.comment.created":case"issue.comment_added":{let s=Wp(e.payload),i=wo(e,"Issue comment"),o=h(e.payload,"bodySnippet")??"A comment added new context in Paperclip.",a=ko(e.payload);return{id:`${e.eventId}:issue-comment`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:r,title:i,summary:o,activityClass:s?"status_update":"follow_up",status:a,progress:void 0,semantic:Ue({id:`${e.eventId}:issue-comment`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:r,title:i,summary:o,activityClass:s?"status_update":"follow_up",status:a,semanticHints:Kr(e)})}}case"agent.run.started":return{id:`${e.eventId}:run-started`,type:"task.started",taskId:n,timestamp:e.occurredAt,source:r,title:h(e.payload,"title")??"Agent run started",summary:h(e.payload,"summary")??"A Paperclip agent began a new run."};case"agent.run.failed":{let s=SN(e.payload)??n,i=h(e.payload,"title")??"Agent run failed",o=vN(e.payload),a=Kp(e.payload);return{id:`${e.eventId}:run-failed`,type:"task.updated",taskId:s,timestamp:e.occurredAt,source:r,toolFamily:"paperclip",activityClass:"tool_failure",status:"failed",title:i,summary:o,...a?{evidence:a}:{},semantic:Ue({id:`${e.eventId}:run-failed`,type:"task.updated",taskId:s,timestamp:e.occurredAt,source:r,toolFamily:"paperclip",activityClass:"tool_failure",title:i,summary:o,status:"failed",...a?{evidence:a}:{},semanticHints:Yp(e.payload)})}}case"agent.run.finished":return{id:`${e.eventId}:run-finished`,type:"task.completed",taskId:n,timestamp:e.occurredAt,source:r,summary:h(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:r,reason:h(e.payload,"summary")??"Agent run cancelled"};case"agent.error_cleared":{let s=h(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:r,summary:s}}case"agent.status_changed":{let s=h(e.payload,"status")?.toLowerCase();if(s==="pending_approval"){let c=xl(),u=Il();return{id:`${e.eventId}:status-pending-approval`,type:"human.input.requested",taskId:n,interactionId:be(n,"pending-approval"),timestamp:e.occurredAt,source:r,toolFamily:"paperclip",activityClass:"permission_request",title:c,summary:u,consequence:"medium",tone:"focused",request:{kind:"approval"},semantic:Ue({id:`${e.eventId}:status-pending-approval`,type:"human.input.requested",taskId:n,interactionId:be(n,"pending-approval"),timestamp:e.occurredAt,source:r,toolFamily:"paperclip",activityClass:"permission_request",title:c,summary:u,request:{kind:"approval"},riskHint:"medium",semanticHints:IN()}),provenance:{whyNow:Ei(),factors:["pending approval"]}}}let i=_N(e.payload),o="Agent status changed",a=s?`Agent status is now ${s}.`:"Agent status changed.";return{id:`${e.eventId}:status-updated`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:r,title:o,summary:a,activityClass:"session_status",status:i,semantic:Ue({id:`${e.eventId}:status-updated`,type:"task.updated",taskId:n,timestamp:e.occurredAt,source:r,title:o,summary:a,activityClass:"session_status",status:i})}}default:return null}}function LN(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 Xp(e){let t=Ao(e);if(!t)return null;let n=e.eventType==="agent.run.failed"?Yp(e.payload):LN(t),r={id:t.id,taskId:t.taskId,timestamp:t.timestamp,source:t.source,metadata:kN(e),semanticHints:n};switch(t.type){case"task.started":return{...r,type:"task.started",title:t.title,...t.summary?{summary:t.summary}:{}};case"task.updated":return{...r,type:"task.updated",title:t.title,...t.summary?{summary:t.summary}:{},...t.toolFamily?{toolFamily:t.toolFamily}:{},...t.activityClass?{activityClass:t.activityClass}:{},status:t.status,...t.evidence?{evidence:t.evidence}:{},...typeof t.progress=="number"?{progress:t.progress}:{},...t.context?{context:t.context}:{}};case"human.input.requested":return{...r,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{...r,type:"task.completed",...t.summary?{summary:t.summary}:{}};case"task.cancelled":return{...r,type:"task.cancelled",...t.reason?{reason:t.reason}:{}};default:return null}}var ON=["activity.logged","approval.created","approval.decided","approval.approved","approval.rejected","approval.revision_requested","issue.created","issue.updated","issue.comment.created","issue.comment_added","issue.document.created","issue.document.updated","issue.document.deleted","issue.relations.updated","agent.run.started","agent.run.failed","agent.run.finished","agent.run.cancelled","agent.status_changed","agent.error_cleared"],FN=new Set(["issue.document_created","issue.document_updated","issue.document_deleted"]),PN=new Set(["issue.document.created","issue.document.updated","issue.document.deleted","issue.relations.updated"]);function NN(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)}function zN(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}function DN(e){if(e.entityType==="issue"&&e.entityId)return e.entityId;let t=zN(e.payload).issueId;return typeof t=="string"&&t.trim().length>0?t:void 0}function $N(e,t,n){let r=DN(n);t.invalidateHostCache(n.companyId,{keys:r?[`issue:${r}:detail`,`issue:${r}:comments`,`issue:${r}:documents`,`issue:${r}:relations`]:[],prefixes:["issues:blocked","issues:in_review"]}),e.logger.info("Triggered Focus refresh from Paperclip host event",{companyId:n.companyId,eventType:n.eventType,issueId:r})}async function qN(e,t,n,r){if(!NN(r,n.eventType))return;if(n.eventType==="activity.logged"){let c=n.payload&&typeof n.payload=="object"?n.payload:{},u=typeof c.action=="string"?c.action:void 0,l=typeof c.entityType=="string"?c.entityType:n.entityType;l==="issue"&&u&&FN.has(u)&&(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:u,entityId:n.entityId,entityType:l}));return}if(PN.has(n.eventType)){$N(e,t,n);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 s=n,i=Xp(s),o=i?Zp(i):Ao(s);if(!o)return;s.entityType==="approval"&&t.invalidateApprovals(s.companyId);let a={kind:"event",id:`${s.eventId}:event`,occurredAt:s.occurredAt,source:{eventType:s.eventType,entityId:s.entityId,entityType:s.entityType},...i?{sourceEvent:i}:{},apertureEvent:o};t.applyEvent(s.companyId,a),t.markPersistencePending(s.companyId),e.logger.info("Captured Paperclip event for Aperture",{companyId:s.companyId,eventType:s.eventType,entityId:s.entityId,mappedType:o.type})}function Jp(e,t,n=()=>({})){for(let r of ON)e.events.on(r,async s=>{let i=s;await qN(e,t,i,await n(i.companyId))})}function jN(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}var Qp=MN({async setup(e){let t=new cr;Jl(e,t),rl(e,t),Jp(e,t,async n=>{try{return jN(await e.config.get(n))}catch(r){return e.logger.warn("Failed to load Focus config for company; event handlers will use defaults.",{companyId:n,error:r instanceof Error?r.message:String(r)}),{}}})},async onHealth(){return{status:"ok",message:"Paperclip Aperture worker is running"}}}),OD=Qp;BN(Qp,import.meta.url);export{OD as default};
|